Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b2cad26c authored by Steven Whitehouse's avatar Steven Whitehouse
Browse files

[GFS2] Remove obsolete conversion deadlock avoidance code



This is only used by GFS1 so can be removed.

Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
parent 1bdad606
Loading
Loading
Loading
Loading
+1 −22
Original line number Diff line number Diff line
@@ -80,7 +80,6 @@ static void process_complete(struct gdlm_lock *lp)
{
	struct gdlm_ls *ls = lp->ls;
	struct lm_async_cb acb;
	s16 prev_mode = lp->cur;

	memset(&acb, 0, sizeof(acb));

@@ -160,14 +159,6 @@ static void process_complete(struct gdlm_lock *lp)
			 lp->lksb.sb_status, lp->lockname.ln_type,
			 (unsigned long long)lp->lockname.ln_number,
			 lp->flags);
		if (lp->lksb.sb_status == -EDEADLOCK &&
		    lp->ls->fsflags & LM_MFLAG_CONV_NODROP) {
			lp->req = lp->cur;
			acb.lc_ret |= LM_OUT_CONV_DEADLK;
			if (lp->cur == DLM_LOCK_IV)
				lp->lksb.sb_lkid = 0;
			goto out;
		} else
		return;
	}

@@ -268,10 +259,6 @@ static void process_complete(struct gdlm_lock *lp)
	acb.lc_name = lp->lockname;
	acb.lc_ret |= gdlm_make_lmstate(lp->cur);

	if (!test_and_clear_bit(LFL_NOCACHE, &lp->flags) &&
	    (lp->cur > DLM_LOCK_NL) && (prev_mode > DLM_LOCK_NL))
		acb.lc_ret |= LM_OUT_CACHEABLE;

	ls->fscb(ls->sdp, LM_CB_ASYNC, &acb);
}

@@ -376,14 +363,6 @@ static inline unsigned int make_flags(struct gdlm_lock *lp,

	if (lp->lksb.sb_lkid != 0) {
		lkf |= DLM_LKF_CONVERT;

		/* Conversion deadlock avoidance by DLM */

		if (!(lp->ls->fsflags & LM_MFLAG_CONV_NODROP) &&
		    !test_bit(LFL_FORCE_PROMOTE, &lp->flags) &&
		    !(lkf & DLM_LKF_NOQUEUE) &&
		    cur > DLM_LOCK_NL && req > DLM_LOCK_NL && cur != req)
			lkf |= DLM_LKF_CONVDEADLK;
	}

	if (lp->lvb)
+0 −2
Original line number Diff line number Diff line
@@ -122,11 +122,9 @@ typedef void (*lm_callback_t) (void *ptr, unsigned int type, void *data);
 */

#define LM_OUT_ST_MASK		0x00000003
#define LM_OUT_CACHEABLE	0x00000004
#define LM_OUT_CANCELED		0x00000008
#define LM_OUT_ASYNC		0x00000080
#define LM_OUT_ERROR		0x00000100
#define LM_OUT_CONV_DEADLK	0x00000200

/*
 * lm_callback_t types