--- src/device.c 12 Sep 2007 08:40:09 -0000 1.24.2.10 +++ src/device.c 26 Sep 2007 13:53:20 -0000 1.24.2.11 @@ -1069,15 +1069,16 @@ static int do_user_unlock(struct file_in } li->li_user_lksb = kparams->lksb; - li->li_castparam = kparams->castparam; li->li_cmd = cmd; /* dlm_unlock() passes a 0 for castaddr which means don't overwrite the existing li_castaddr as that's the completion routine for unlocks. dlm_unlock_wait() specifies a new AST routine to be executed when the unlock completes. */ - if (kparams->castaddr) + if (kparams->castaddr) { li->li_castaddr = kparams->castaddr; + li->li_castparam = kparams->castparam; + } /* Have to do it here cos the lkb may not exist after * dlm_unlock() */