Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f9e59bcb authored by Jeff Layton's avatar Jeff Layton Committed by Steve French
Browse files

cifs: have cifs_cleanup_volume_info not take a double pointer



...as that makes for a cumbersome interface. Make it take a regular
smb_vol pointer and rely on the caller to zero it out if needed.

Signed-off-by: default avatarJeff Layton <jlayton@redhat.com>
Reviewed-by: default avatarPavel Shilovsky <piastryyy@gmail.com>
Signed-off-by: default avatarSteve French <sfrench@us.ibm.com>
parent b2a0fa15
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -713,7 +713,7 @@ cifs_do_mount(struct file_system_type *fs_type,
out_super:
	deactivate_locked_super(sb);
out:
	cifs_cleanup_volume_info(&volume_info);
	cifs_cleanup_volume_info(volume_info);
	return root;

out_mountdata:
+1 −1
Original line number Diff line number Diff line
@@ -154,7 +154,7 @@ extern int set_cifs_acl(struct cifs_ntsd *, __u32, struct inode *,
extern void cifs_setup_cifs_sb(struct smb_vol *pvolume_info,
			       struct cifs_sb_info *cifs_sb);
extern int cifs_match_super(struct super_block *, void *);
extern void cifs_cleanup_volume_info(struct smb_vol **pvolume_info);
extern void cifs_cleanup_volume_info(struct smb_vol *pvolume_info);
extern int cifs_setup_volume_info(struct smb_vol **pvolume_info,
				  char *mount_data, const char *devname);
extern int cifs_mount(struct cifs_sb_info *, struct smb_vol *);
+3 −7
Original line number Diff line number Diff line
@@ -2831,14 +2831,11 @@ is_path_accessible(int xid, struct cifs_tcon *tcon,
}

void
cifs_cleanup_volume_info(struct smb_vol **pvolume_info)
cifs_cleanup_volume_info(struct smb_vol *volume_info)
{
	struct smb_vol *volume_info;

	if (!pvolume_info || !*pvolume_info)
	if (!volume_info)
		return;

	volume_info = *pvolume_info;
	kfree(volume_info->username);
	kzfree(volume_info->password);
	kfree(volume_info->UNC);
@@ -2847,7 +2844,6 @@ cifs_cleanup_volume_info(struct smb_vol **pvolume_info)
	kfree(volume_info->iocharset);
	kfree(volume_info->prepath);
	kfree(volume_info);
	*pvolume_info = NULL;
	return;
}

@@ -2990,7 +2986,7 @@ int cifs_setup_volume_info(struct smb_vol **pvolume_info, char *mount_data,
	*pvolume_info = volume_info;
	return rc;
out:
	cifs_cleanup_volume_info(&volume_info);
	cifs_cleanup_volume_info(volume_info);
	return rc;
}