summaryrefslogtreecommitdiff
path: root/fs/smb/client/fs_context.c
diff options
context:
space:
mode:
authorSteve French <stfrench@microsoft.com>2024-07-26 16:30:23 -0500
committerSteve French <stfrench@microsoft.com>2024-07-28 17:16:00 -0500
commit40a2fd6fc1dff7786b70a397e96c094407f1ea1a (patch)
tree14e74e4ef673047ef7f92eb8f69b435d4cb68206 /fs/smb/client/fs_context.c
parent8400291e289ee6b2bf9779ff1c83a291501f017b (diff)
downloadlinux-40a2fd6fc1dff7786b70a397e96c094407f1ea1a.tar.gz
linux-40a2fd6fc1dff7786b70a397e96c094407f1ea1a.tar.bz2
linux-40a2fd6fc1dff7786b70a397e96c094407f1ea1a.zip
smb3: mark compression as CONFIG_EXPERIMENTAL and fix missing compression operation
Move SMB3.1.1 compression code into experimental config option, and fix the compress mount option. Implement unchained LZ77 "plain" compression algorithm as per MS-XCA specification section "2.3 Plain LZ77 Compression Algorithm Details". Signed-off-by: Enzo Matsumiya <ematsumiya@suse.de> Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/smb/client/fs_context.c')
-rw-r--r--fs/smb/client/fs_context.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/smb/client/fs_context.c b/fs/smb/client/fs_context.c
index bc926ab2555b..20dc31a07a56 100644
--- a/fs/smb/client/fs_context.c
+++ b/fs/smb/client/fs_context.c
@@ -978,9 +978,12 @@ static int smb3_fs_context_parse_param(struct fs_context *fc,
switch (opt) {
case Opt_compress:
+ if (!IS_ENABLED(CONFIG_CIFS_COMPRESSION)) {
+ cifs_errorf(fc, "CONFIG_CIFS_COMPRESSION kernel config option is unset\n");
+ goto cifs_parse_mount_err;
+ }
ctx->compress = true;
- cifs_dbg(VFS,
- "SMB3 compression support is experimental\n");
+ cifs_dbg(VFS, "SMB3 compression support is experimental\n");
break;
case Opt_nodfs:
ctx->nodfs = 1;