diff options
| author | Paulo Alcantara <pc@manguebit.org> | 2026-10-11 17:08:52 -0300 |
|---|---|---|
| committer | Paulo Alcantara <pc@manguebit.org> | 2026-10-13 00:52:20 -0300 |
| commit | 54a53dd9b6d987d887aa29e2aaf7e89860bb496b (patch) | |
| tree | 76c142ab3ee4dc5066292be1e0daef432f3fc5aa /tools/perf/scripts/python/stackcollapse.py | |
| parent | 689ab4c8d1597360064cddc0299089ab19ff7e3d (diff) | |
| download | linux-54a53dd9b6d987d887aa29e2aaf7e89860bb496b.tar.gz linux-54a53dd9b6d987d887aa29e2aaf7e89860bb496b.zip | |
smb: client: set lease_granted before revalidating inode in cifs_nt_open()
cifs_new_fileinfo() -> set_fid() sets CIFS_I(inode)->lease_granted only
after cifs_get_inode_info() has run. Opens that cifs_get_inode_info()
issues for the inode -- such as the Minshall+French symlink probe or an
open compounded in smb2_compound_op() -- therefore find lease_granted
clear, go out leaseless, and make the server break the lease just granted
to the file.
Set lease_granted right after the open succeeds, before
cifs_get_inode_info(), so those opens reuse the inode's lease key. Only
raise it: lease_granted is kept set for the inode's lifetime, so lowering
it here could clobber a lease still held through another open.
Signed-off-by: Paulo Alcantara <pc@manguebit.org>
Reviewed-by: David Howells <dhowells@redhat.com>
Cc: Namjae Jeon <linkinjeon@kernel.org>
Cc: Ronnie Sahlberg <ronniesahlberg@gmail.com>
Cc: Shyam Prasad N <sprasad@microsoft.com>
Cc: Tom Talpey <tom@talpey.com>
Cc: Bharath SM <bharathsm@microsoft.com>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions
