|
@@ -97,9 +97,6 @@ cifs_read_super(struct super_block *sb, void *data,
|
|
|
{
|
|
|
struct inode *inode;
|
|
|
struct cifs_sb_info *cifs_sb;
|
|
|
-#ifdef CONFIG_CIFS_DFS_UPCALL
|
|
|
- int len;
|
|
|
-#endif
|
|
|
int rc = 0;
|
|
|
|
|
|
/* BB should we make this contingent on mount parm? */
|
|
@@ -117,15 +114,17 @@ cifs_read_super(struct super_block *sb, void *data,
|
|
|
* complex operation (mount), and in case of fail
|
|
|
* just exit instead of doing mount and attempting
|
|
|
* undo it if this copy fails?*/
|
|
|
- len = strlen(data);
|
|
|
- cifs_sb->mountdata = kzalloc(len + 1, GFP_KERNEL);
|
|
|
- if (cifs_sb->mountdata == NULL) {
|
|
|
- kfree(sb->s_fs_info);
|
|
|
- sb->s_fs_info = NULL;
|
|
|
- return -ENOMEM;
|
|
|
+ if (data) {
|
|
|
+ int len = strlen(data);
|
|
|
+ cifs_sb->mountdata = kzalloc(len + 1, GFP_KERNEL);
|
|
|
+ if (cifs_sb->mountdata == NULL) {
|
|
|
+ kfree(sb->s_fs_info);
|
|
|
+ sb->s_fs_info = NULL;
|
|
|
+ return -ENOMEM;
|
|
|
+ }
|
|
|
+ strncpy(cifs_sb->mountdata, data, len + 1);
|
|
|
+ cifs_sb->mountdata[len] = '\0';
|
|
|
}
|
|
|
- strncpy(cifs_sb->mountdata, data, len + 1);
|
|
|
- cifs_sb->mountdata[len] = '\0';
|
|
|
#endif
|
|
|
|
|
|
rc = cifs_mount(sb, cifs_sb, data, devname);
|