From 24117e62964f6b8f8f4ee8d8e19dc0ffd36db0b8 Mon Sep 17 00:00:00 2001 From: dfr Date: Mon, 14 Apr 2008 09:22:48 +0000 Subject: When calling lf_advlock to unlock a record, make sure that ap->a_fl->l_type is F_UNLCK otherwise we trigger a LOCKF_DEBUG panic. MFC after: 3 days --- sys/fs/smbfs/smbfs_vnops.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'sys/fs/smbfs') diff --git a/sys/fs/smbfs/smbfs_vnops.c b/sys/fs/smbfs/smbfs_vnops.c index d17b1d1..4d5f454 100644 --- a/sys/fs/smbfs/smbfs_vnops.c +++ b/sys/fs/smbfs/smbfs_vnops.c @@ -1014,8 +1014,11 @@ smbfs_advlock(ap) lkop = SMB_LOCK_EXCL; error = smbfs_smb_lock(np, lkop, id, start, end, &scred); if (error) { + int oldtype = fl->l_type; + fl->l_type = F_UNLCK; ap->a_op = F_UNLCK; lf_advlock(ap, &np->n_lockf, size); + fl->l_type = oldtype; } break; case F_UNLCK: -- cgit v1.1