1234567891011121314151617181920212223242526272829303132 |
- From cb1d41b99e4afa062f904339666fae2578559718 Mon Sep 17 00:00:00 2001
- From: Namjae Jeon <[email protected]>
- Date: Mon, 15 Jan 2024 10:24:54 +0900
- Subject: [PATCH] ksmbd: only v2 leases handle the directory
- When smb2 leases is disable, ksmbd can send oplock break notification
- and cause wait oplock break ack timeout. It may appear like hang when
- accessing a directory. This patch make only v2 leases handle the
- directory.
- Cc: [email protected]
- Signed-off-by: Namjae Jeon <[email protected]>
- Signed-off-by: Steve French <[email protected]>
- ---
- fs/ksmbd/oplock.c | 6 ++++++
- 1 file changed, 6 insertions(+)
- --- a/fs/ksmbd/oplock.c
- +++ b/fs/ksmbd/oplock.c
- @@ -1191,6 +1191,12 @@ int smb_grant_oplock(struct ksmbd_work *
- bool prev_op_has_lease;
- __le32 prev_op_state = 0;
-
- + /* Only v2 leases handle the directory */
- + if (S_ISDIR(file_inode(fp->filp)->i_mode)) {
- + if (!lctx || lctx->version != 2)
- + return 0;
- + }
- +
- opinfo = alloc_opinfo(work, pid, tid);
- if (!opinfo)
- return -ENOMEM;
|