diff --git a/sys/netsmb/smb_conn.c b/sys/netsmb/smb_conn.c index 82f6382da1f8..3480181502d3 100644 --- a/sys/netsmb/smb_conn.c +++ b/sys/netsmb/smb_conn.c @@ -218,8 +218,10 @@ smb_sm_lookup(struct smb_vcspec *vcspec, struct smb_sharespec *shspec, smb_sm_unlockvclist(td); if (error == 0) *vcpp = vcp; - else if (vcp) + else if (vcp) { + smb_vc_lock(vcp, LK_EXCLUSIVE, scred->scr_td); smb_vc_put(vcp, scred); + } return error; }