From 296838b182ebad919074bf324e1667d28a04b936 Mon Sep 17 00:00:00 2001 From: Jeff Layton Date: Wed, 16 May 2012 07:53:01 -0400 Subject: [PATCH] cifs: add warning about change in default cache semantics in 3.7 Add a warning that will be displayed when there is no cache= option specified. We want to ensure that users are aware of the change in defaults coming in 3.7. Reviewed-by: Pavel Shilovsky Signed-off-by: Jeff Layton --- fs/cifs/connect.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index 34186805e639..c49d49438c52 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c @@ -1244,6 +1244,8 @@ cifs_parse_mount_options(const char *mountdata, const char *devname, char *string = NULL; char *tmp_end, *value; char delim; + bool cache_specified = false; + static bool cache_warned = false; separator[0] = ','; separator[1] = 0; @@ -1455,6 +1457,7 @@ cifs_parse_mount_options(const char *mountdata, const char *devname, vol->seal = 1; break; case Opt_direct: + cache_specified = true; vol->direct_io = true; vol->strict_io = false; cERROR(1, "The \"directio\" option will be removed in " @@ -1462,6 +1465,7 @@ cifs_parse_mount_options(const char *mountdata, const char *devname, "option."); break; case Opt_strictcache: + cache_specified = true; vol->direct_io = false; vol->strict_io = true; cERROR(1, "The \"strictcache\" option will be removed " @@ -1888,6 +1892,7 @@ cifs_parse_mount_options(const char *mountdata, const char *devname, goto cifs_parse_mount_err; break; case Opt_cache: + cache_specified = true; string = match_strdup(args); if (string == NULL) goto out_nomem; @@ -1938,6 +1943,14 @@ cifs_parse_mount_options(const char *mountdata, const char *devname, printk(KERN_NOTICE "CIFS: ignoring forcegid mount option " "specified with no gid= option.\n"); + /* FIXME: remove this block in 3.7 */ + if (!cache_specified && !cache_warned) { + cache_warned = true; + printk(KERN_NOTICE "CIFS: no cache= option specified, using " + "\"cache=loose\". This default will change " + "to \"cache=strict\" in 3.7.\n"); + } + kfree(mountdata_copy); return 0; -- GitLab