Skip to contentSkip to conversation

linux-next: manual merge of the vfs-brauner tree with the gfs2 tree

PATCH Mark Brown 1 participant 1 message Aug 13

Subsystems (2)
lore
Share & tools
lore

Mark Brown

author maintainer
#0 lore raw

Hi all,

Today's linux-next merge of the vfs-brauner tree got a conflict in:

fs/gfs2/lock_dlm.c

between commit:

657e5af4fe0b9 ("gfs2: harden gfs2_glock_hold")

from the gfs2 tree and commit:

91e27ed8a387c ("lockref: tidy up dead count handling")

from the vfs-brauner tree.

I fixed it up (see below) and can carry the fix as necessary. This is now fixed as far as linux-next is concerned, but any non trivial conflicts should be mentioned to your upstream maintainer when your tree is submitted for merging. You may also want to consider cooperating with the maintainer of the conflicting tree to minimise any particularly complex conflicts.

fs/gfs2/lock_dlm.c +0 -0
diff --combined fs/gfs2/lock_dlm.c
index babce07b84f19,cc901fb97da0c..0000000000000
@@@ -126,7 -126,7 +126,7 @@@ static void gdlm_ast(void *arg
  	clear_bit(GLF_BLOCKING, &gl->gl_flags);
  
  	/* If the glock is dead, we only react to a dlm_unlock() reply. */
- 	if (__lockref_is_dead(&gl->gl_lockref) &&
+ 	if (lockref_is_dead(&gl->gl_lockref) &&
  	    gl->gl_lksb.sb_status != -DLM_EUNLOCK)
  		return;
  
@@@ -182,6 -182,9 +182,6 @@@ static void gdlm_bast(void *arg, int mo
  {
  	struct gfs2_glock *gl = arg;
  
 -	if (lockref_is_dead(&gl->gl_lockref))
 -		return;
 -
  	switch (mode) {
  	case DLM_LOCK_EX:
  		gfs2_glock_cb(gl, LM_ST_UNLOCKED);
@@@ -326,7 -329,7 +326,7 @@@ static void gdlm_put_lock(struct gfs2_g
  	uint32_t flags = 0;
  	int error;
  
- 	BUG_ON(!__lockref_is_dead(&gl->gl_lockref));
+ 	BUG_ON(!lockref_is_dead(&gl->gl_lockref));
  
  	if (test_bit(GLF_INITIAL, &gl->gl_flags)) {
  		gfs2_glock_free(gl);
@@@ -344,7 -347,7 +344,7 @@@
  	 * DLM_LOCK_PW mode, the lock value block (LVB) would be lost.
  	 */
  
 -	if (test_bit(SDF_SKIP_DLM_UNLOCK, &sdp->sd_flags) &&
 +	if (test_bit(SDF_KILL, &sdp->sd_flags) &&
  	    (!gl->gl_lksb.sb_lvbptr || gl->gl_state != LM_ST_EXCLUSIVE)) {
  		gfs2_glock_free_later(gl);
  		return;