]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
disabling oplocks/leases via module parm enable_oplocks broken for SMB3
authorSteve French <smfrench@gmail.com>
Tue, 22 Sep 2015 14:29:38 +0000 (09:29 -0500)
committerLuis Henriques <luis.henriques@canonical.com>
Mon, 19 Oct 2015 09:54:30 +0000 (10:54 +0100)
commit e0ddde9d44e37fbc21ce893553094ecf1a633ab5 upstream.

leases (oplocks) were always requested for SMB2/SMB3 even when oplocks
disabled in the cifs.ko module.

Signed-off-by: Steve French <steve.french@primarydata.com>
Reviewed-by: Chandrika Srinivasan <chandrika.srinivasan@citrix.com>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
fs/cifs/smb2ops.c

index 772ee0ecf32aa2758679f83c310f014458021a1f..b241a2a7683bed25cb260297ad55ba3d5a2880f3 100644 (file)
@@ -49,9 +49,13 @@ change_conf(struct TCP_Server_Info *server)
                break;
        default:
                server->echoes = true;
-               server->oplocks = true;
+               if (enable_oplocks) {
+                       server->oplocks = true;
+                       server->oplock_credits = 1;
+               } else
+                       server->oplocks = false;
+
                server->echo_credits = 1;
-               server->oplock_credits = 1;
        }
        server->credits -= server->echo_credits + server->oplock_credits;
        return 0;