diff --git a/[refs] b/[refs] index a436022f1062..74ecc5f80fea 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: da49f36f4f64feb281d7663be99e779b2aecc607 +refs/heads/master: 8d07fd509e9c82a59e37b8b18a2fd0e8ef8fc837 diff --git a/trunk/fs/dlm/lock.c b/trunk/fs/dlm/lock.c index cdf2cb9297fd..d8e919bad41a 100644 --- a/trunk/fs/dlm/lock.c +++ b/trunk/fs/dlm/lock.c @@ -2430,8 +2430,12 @@ static int receive_request_args(struct dlm_ls *ls, struct dlm_lkb *lkb, DLM_ASSERT(is_master_copy(lkb), dlm_print_lkb(lkb);); - if (receive_lvb(ls, lkb, ms)) - return -ENOMEM; + if (lkb->lkb_exflags & DLM_LKF_VALBLK) { + /* lkb was just created so there won't be an lvb yet */ + lkb->lkb_lvbptr = allocate_lvb(ls); + if (!lkb->lkb_lvbptr) + return -ENOMEM; + } return 0; }