]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/gfs2/locking/dlm/lock.c
[GFS2] Remove obsolete conversion deadlock avoidance code
[linux-2.6-omap-h63xx.git] / fs / gfs2 / locking / dlm / lock.c
index 871ffc9578f2a8549954ed802e05ae4a3e6a8d7c..894df4567a030adafb5bc43cadbcb73c82d7f5da 100644 (file)
@@ -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,15 +159,7 @@ 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;
+               return;
        }
 
        /*
@@ -268,10 +259,6 @@ out:
        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)