diff options
Diffstat (limited to 'fs/cifs/connect.c')
-rw-r--r-- | fs/cifs/connect.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index 6e1fe3a7f27d..399b60129b74 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c | |||
@@ -98,6 +98,7 @@ struct smb_vol { | |||
98 | bool noblocksnd:1; | 98 | bool noblocksnd:1; |
99 | bool noautotune:1; | 99 | bool noautotune:1; |
100 | bool nostrictsync:1; /* do not force expensive SMBflush on every sync */ | 100 | bool nostrictsync:1; /* do not force expensive SMBflush on every sync */ |
101 | bool fsc:1; /* enable fscache */ | ||
101 | unsigned int rsize; | 102 | unsigned int rsize; |
102 | unsigned int wsize; | 103 | unsigned int wsize; |
103 | bool sockopt_tcp_nodelay:1; | 104 | bool sockopt_tcp_nodelay:1; |
@@ -843,6 +844,9 @@ cifs_parse_mount_options(char *options, const char *devname, | |||
843 | /* default to using server inode numbers where available */ | 844 | /* default to using server inode numbers where available */ |
844 | vol->server_ino = 1; | 845 | vol->server_ino = 1; |
845 | 846 | ||
847 | /* XXX: default to fsc for testing until mount.cifs pieces are done */ | ||
848 | vol->fsc = 1; | ||
849 | |||
846 | if (!options) | 850 | if (!options) |
847 | return 1; | 851 | return 1; |
848 | 852 | ||
@@ -1332,6 +1336,8 @@ cifs_parse_mount_options(char *options, const char *devname, | |||
1332 | printk(KERN_WARNING "CIFS: Mount option noac not " | 1336 | printk(KERN_WARNING "CIFS: Mount option noac not " |
1333 | "supported. Instead set " | 1337 | "supported. Instead set " |
1334 | "/proc/fs/cifs/LookupCacheEnabled to 0\n"); | 1338 | "/proc/fs/cifs/LookupCacheEnabled to 0\n"); |
1339 | } else if (strnicmp(data, "fsc", 3) == 0) { | ||
1340 | vol->fsc = true; | ||
1335 | } else | 1341 | } else |
1336 | printk(KERN_WARNING "CIFS: Unknown mount option %s\n", | 1342 | printk(KERN_WARNING "CIFS: Unknown mount option %s\n", |
1337 | data); | 1343 | data); |
@@ -2463,6 +2469,8 @@ static void setup_cifs_sb(struct smb_vol *pvolume_info, | |||
2463 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_OVERR_GID; | 2469 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_OVERR_GID; |
2464 | if (pvolume_info->dynperm) | 2470 | if (pvolume_info->dynperm) |
2465 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_DYNPERM; | 2471 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_DYNPERM; |
2472 | if (pvolume_info->fsc) | ||
2473 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_FSCACHE; | ||
2466 | if (pvolume_info->direct_io) { | 2474 | if (pvolume_info->direct_io) { |
2467 | cFYI(1, "mounting share using direct i/o"); | 2475 | cFYI(1, "mounting share using direct i/o"); |
2468 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_DIRECT_IO; | 2476 | cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_DIRECT_IO; |