aboutsummaryrefslogtreecommitdiff
path: root/fs/cifs/smb2pdu.c
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2018-09-20 08:32:20 -0700
committerMark Brown <broonie@kernel.org>2018-09-20 08:32:20 -0700
commitd7b33ebae7c1419ebdfd94eb64bf74a7ec760031 (patch)
tree67dbc2149bb00e2eaf89c31a515e1f8bfc0dc8cb /fs/cifs/smb2pdu.c
parente1d176680ed4f6970582086191eb7377a80a2d4e (diff)
parent1244bbb3e92135d247e2dddfa6fe5e3e171a9635 (diff)
Merge tag 'v4.14.71' into linux-linaro-lsk-v4.14
This is the 4.14.71 stable release
Diffstat (limited to 'fs/cifs/smb2pdu.c')
-rw-r--r--fs/cifs/smb2pdu.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c
index 58842b36481d..078ec705a5cc 100644
--- a/fs/cifs/smb2pdu.c
+++ b/fs/cifs/smb2pdu.c
@@ -1816,6 +1816,9 @@ SMB2_open(const unsigned int xid, struct cifs_open_parms *oparms, __le16 *path,
if (!(server->capabilities & SMB2_GLOBAL_CAP_LEASING) ||
*oplock == SMB2_OPLOCK_LEVEL_NONE)
req->RequestedOplockLevel = *oplock;
+ else if (!(server->capabilities & SMB2_GLOBAL_CAP_DIRECTORY_LEASING) &&
+ (oparms->create_options & CREATE_NOT_FILE))
+ req->RequestedOplockLevel = *oplock; /* no srv lease support */
else {
rc = add_lease_context(server, iov, &n_iov, oplock);
if (rc) {