Lines Matching defs:control_lock
341 * 10. gfs2_control updates control_lock lvb with new generation and jid bits
345 * 14. gfs2_control updates control_lock lvb jid bits for recovered journals
368 * 10. gfs2_control sets control_lock lvb = new gen + bits for failed jids
370 * 14. gfs2_control clears control_lock lvb bits for recovered jids
377 * All nodes attempt to update the control_lock lvb with the new generation
378 * number and jid bits, but only the first to get the control_lock EX will
383 * . All nodes attempt to set control_lock lvb gen + bits for the new gen
384 * . One node gets control_lock first and writes the lvb, others see it's done
385 * . All nodes attempt to recover jids for which they see control_lock bits set
424 * 2. The control_lock blocks others in control_mount() while the first
426 * A mounting node needs to acquire control_lock in EX mode before
427 * it can proceed. The first mounter holds control_lock in EX while doing
429 * control_lock to NL when it's done (others_may_mount/first_done),
433 * control_lock EX/NOQUEUE success
438 * control_lock EX->NL, write lvb generation
441 * control_lock EX/NOQUEUE success (if fail -EAGAIN, retry)
445 * control_lock EX->NL
459 * - control_lock lvb format
570 return sync_unlock(sdp, &ls->ls_control_lksb, "control_lock");
573 static int control_lock(struct gfs2_sbd *sdp, int mode, uint32_t flags)
577 &ls->ls_control_lksb, "control_lock");
660 error = control_lock(sdp, DLM_LOCK_EX, DLM_LKF_CONVERT|DLM_LKF_VALBLK);
674 control_lock(sdp, DLM_LOCK_NL, DLM_LKF_CONVERT);
743 error = control_lock(sdp, DLM_LOCK_NL, flags);
803 error = control_lock(sdp, DLM_LOCK_NL, DLM_LKF_VALBLK);
805 fs_err(sdp, "control_mount control_lock NL error %d\n", error);
824 * We always start with both locks in NL. control_lock is
837 * before the recover_done and control_lock will be ready for us below.
844 * Acquire control_lock in EX and mounted_lock in either EX or PR.
845 * control_lock lvb keeps track of any pending journal recoveries.
849 error = control_lock(sdp, DLM_LOCK_EX, DLM_LKF_CONVERT|DLM_LKF_NOQUEUE|DLM_LKF_VALBLK);
853 fs_err(sdp, "control_mount control_lock EX error %d\n", error);
886 * If not, then we need to wait for the control_lock lvb to be
899 fs_err(sdp, "control_mount control_lock disabled\n");
915 error = control_lock(sdp, DLM_LOCK_NL, DLM_LKF_CONVERT);
920 * We are not first mounter, now we need to wait for the control_lock
937 /* wait for mounted nodes to update control_lock lvb to our
954 /* wait for mounted nodes to update control_lock lvb to the
1036 error = control_lock(sdp, DLM_LOCK_NL, DLM_LKF_CONVERT|DLM_LKF_VALBLK);
1321 * control_mount() uses control_lock to determine first mounter,
1372 /* mounted_lock and control_lock will be purged in dlm recovery */