You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
[PATCH] kfree cleanup: fs
This is the fs/ part of the big kfree cleanup patch. Remove pointless checks for NULL prior to calling kfree() in fs/. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
6044ec8882
commit
f99d49adf5
+1
-2
@@ -269,8 +269,7 @@ static void v9fs_sock_close(struct v9fs_transport *trans)
|
||||
dprintk(DEBUG_TRANS, "socket closed\n");
|
||||
}
|
||||
|
||||
if (ts)
|
||||
kfree(ts);
|
||||
kfree(ts);
|
||||
|
||||
trans->priv = NULL;
|
||||
}
|
||||
|
||||
+6
-10
@@ -35,8 +35,7 @@ affs_put_super(struct super_block *sb)
|
||||
mark_buffer_dirty(sbi->s_root_bh);
|
||||
}
|
||||
|
||||
if (sbi->s_prefix)
|
||||
kfree(sbi->s_prefix);
|
||||
kfree(sbi->s_prefix);
|
||||
affs_free_bitmap(sb);
|
||||
affs_brelse(sbi->s_root_bh);
|
||||
kfree(sbi);
|
||||
@@ -198,10 +197,9 @@ parse_options(char *options, uid_t *uid, gid_t *gid, int *mode, int *reserved, s
|
||||
*mount_opts |= SF_MUFS;
|
||||
break;
|
||||
case Opt_prefix:
|
||||
if (*prefix) { /* Free any previous prefix */
|
||||
kfree(*prefix);
|
||||
*prefix = NULL;
|
||||
}
|
||||
/* Free any previous prefix */
|
||||
kfree(*prefix);
|
||||
*prefix = NULL;
|
||||
*prefix = match_strdup(&args[0]);
|
||||
if (!*prefix)
|
||||
return 0;
|
||||
@@ -462,11 +460,9 @@ got_root:
|
||||
out_error:
|
||||
if (root_inode)
|
||||
iput(root_inode);
|
||||
if (sbi->s_bitmap)
|
||||
kfree(sbi->s_bitmap);
|
||||
kfree(sbi->s_bitmap);
|
||||
affs_brelse(root_bh);
|
||||
if (sbi->s_prefix)
|
||||
kfree(sbi->s_prefix);
|
||||
kfree(sbi->s_prefix);
|
||||
kfree(sbi);
|
||||
sb->s_fs_info = NULL;
|
||||
return -EINVAL;
|
||||
|
||||
+1
-2
@@ -265,8 +265,7 @@ static int afs_file_releasepage(struct page *page, gfp_t gfp_flags)
|
||||
set_page_private(page, 0);
|
||||
ClearPagePrivate(page);
|
||||
|
||||
if (pageio)
|
||||
kfree(pageio);
|
||||
kfree(pageio);
|
||||
}
|
||||
|
||||
_leave(" = 0");
|
||||
|
||||
+2
-4
@@ -150,10 +150,8 @@ int autofs_wait(struct autofs_sb_info *sbi, struct qstr *name)
|
||||
if ( sbi->catatonic ) {
|
||||
/* We might have slept, so check again for catatonic mode */
|
||||
wq->status = -ENOENT;
|
||||
if ( wq->name ) {
|
||||
kfree(wq->name);
|
||||
wq->name = NULL;
|
||||
}
|
||||
kfree(wq->name);
|
||||
wq->name = NULL;
|
||||
}
|
||||
|
||||
if ( wq->name ) {
|
||||
|
||||
+2
-4
@@ -22,10 +22,8 @@
|
||||
|
||||
static void ino_lnkfree(struct autofs_info *ino)
|
||||
{
|
||||
if (ino->u.symlink) {
|
||||
kfree(ino->u.symlink);
|
||||
ino->u.symlink = NULL;
|
||||
}
|
||||
kfree(ino->u.symlink);
|
||||
ino->u.symlink = NULL;
|
||||
}
|
||||
|
||||
struct autofs_info *autofs4_init_ino(struct autofs_info *ino,
|
||||
|
||||
+2
-4
@@ -243,10 +243,8 @@ int autofs4_wait(struct autofs_sb_info *sbi, struct dentry *dentry,
|
||||
if ( sbi->catatonic ) {
|
||||
/* We might have slept, so check again for catatonic mode */
|
||||
wq->status = -ENOENT;
|
||||
if ( wq->name ) {
|
||||
kfree(wq->name);
|
||||
wq->name = NULL;
|
||||
}
|
||||
kfree(wq->name);
|
||||
wq->name = NULL;
|
||||
}
|
||||
|
||||
if ( wq->name ) {
|
||||
|
||||
+4
-8
@@ -725,20 +725,16 @@ parse_options(char *options, befs_mount_options * opts)
|
||||
static void
|
||||
befs_put_super(struct super_block *sb)
|
||||
{
|
||||
if (BEFS_SB(sb)->mount_opts.iocharset) {
|
||||
kfree(BEFS_SB(sb)->mount_opts.iocharset);
|
||||
BEFS_SB(sb)->mount_opts.iocharset = NULL;
|
||||
}
|
||||
kfree(BEFS_SB(sb)->mount_opts.iocharset);
|
||||
BEFS_SB(sb)->mount_opts.iocharset = NULL;
|
||||
|
||||
if (BEFS_SB(sb)->nls) {
|
||||
unload_nls(BEFS_SB(sb)->nls);
|
||||
BEFS_SB(sb)->nls = NULL;
|
||||
}
|
||||
|
||||
if (sb->s_fs_info) {
|
||||
kfree(sb->s_fs_info);
|
||||
sb->s_fs_info = NULL;
|
||||
}
|
||||
kfree(sb->s_fs_info);
|
||||
sb->s_fs_info = NULL;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
+1
-2
@@ -1006,8 +1006,7 @@ out_free_dentry:
|
||||
if (interpreter)
|
||||
fput(interpreter);
|
||||
out_free_interp:
|
||||
if (elf_interpreter)
|
||||
kfree(elf_interpreter);
|
||||
kfree(elf_interpreter);
|
||||
out_free_file:
|
||||
sys_close(elf_exec_fileno);
|
||||
out_free_fh:
|
||||
|
||||
+5
-10
@@ -411,16 +411,11 @@ error:
|
||||
allow_write_access(interpreter);
|
||||
fput(interpreter);
|
||||
}
|
||||
if (interpreter_name)
|
||||
kfree(interpreter_name);
|
||||
if (exec_params.phdrs)
|
||||
kfree(exec_params.phdrs);
|
||||
if (exec_params.loadmap)
|
||||
kfree(exec_params.loadmap);
|
||||
if (interp_params.phdrs)
|
||||
kfree(interp_params.phdrs);
|
||||
if (interp_params.loadmap)
|
||||
kfree(interp_params.loadmap);
|
||||
kfree(interpreter_name);
|
||||
kfree(exec_params.phdrs);
|
||||
kfree(exec_params.loadmap);
|
||||
kfree(interp_params.phdrs);
|
||||
kfree(interp_params.loadmap);
|
||||
return retval;
|
||||
|
||||
/* unrecoverable error - kill the process */
|
||||
|
||||
+1
-2
@@ -553,8 +553,7 @@ decode_negTokenInit(unsigned char *security_blob, int length,
|
||||
*(oid + 3)));
|
||||
rc = compare_oid(oid, oidlen, NTLMSSP_OID,
|
||||
NTLMSSP_OID_LEN);
|
||||
if(oid)
|
||||
kfree(oid);
|
||||
kfree(oid);
|
||||
if (rc)
|
||||
use_ntlmssp = TRUE;
|
||||
}
|
||||
|
||||
+27
-54
@@ -1265,8 +1265,7 @@ connect_to_dfs_path(int xid, struct cifsSesInfo *pSesInfo,
|
||||
the helper that resolves tcp names, mount to it, try to
|
||||
tcon to it unmount it if fail */
|
||||
|
||||
if(referrals)
|
||||
kfree(referrals);
|
||||
kfree(referrals);
|
||||
|
||||
return rc;
|
||||
}
|
||||
@@ -1535,10 +1534,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
|
||||
memset(&volume_info,0,sizeof(struct smb_vol));
|
||||
if (cifs_parse_mount_options(mount_data, devname, &volume_info)) {
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1551,10 +1548,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
cifserror("No username specified ");
|
||||
/* In userspace mount helper we can get user name from alternate
|
||||
locations such as env variables and files on disk */
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1573,10 +1568,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
|
||||
if(rc <= 0) {
|
||||
/* we failed translating address */
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1587,19 +1580,15 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
} else if (volume_info.UNCip){
|
||||
/* BB using ip addr as server name connect to the DFS root below */
|
||||
cERROR(1,("Connecting to DFS root not implemented yet"));
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return -EINVAL;
|
||||
} else /* which servers DFS root would we conect to */ {
|
||||
cERROR(1,
|
||||
("CIFS mount error: No UNC path (e.g. -o unc=//192.168.1.100/public) specified "));
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1612,10 +1601,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
cifs_sb->local_nls = load_nls(volume_info.iocharset);
|
||||
if(cifs_sb->local_nls == NULL) {
|
||||
cERROR(1,("CIFS mount error: iocharset %s not found",volume_info.iocharset));
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return -ELIBACC;
|
||||
}
|
||||
@@ -1630,10 +1617,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
&sin_server6.sin6_addr,
|
||||
volume_info.username, &srvTcp);
|
||||
else {
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1654,10 +1639,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
("Error connecting to IPv4 socket. Aborting operation"));
|
||||
if(csocket != NULL)
|
||||
sock_release(csocket);
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return rc;
|
||||
}
|
||||
@@ -1666,10 +1649,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
if (srvTcp == NULL) {
|
||||
rc = -ENOMEM;
|
||||
sock_release(csocket);
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return rc;
|
||||
} else {
|
||||
@@ -1692,10 +1673,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
if(rc < 0) {
|
||||
rc = -ENOMEM;
|
||||
sock_release(csocket);
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.password);
|
||||
FreeXid(xid);
|
||||
return rc;
|
||||
}
|
||||
@@ -1710,8 +1689,7 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
if (existingCifsSes) {
|
||||
pSesInfo = existingCifsSes;
|
||||
cFYI(1, ("Existing smb sess found "));
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.password);
|
||||
/* volume_info.UNC freed at end of function */
|
||||
} else if (!rc) {
|
||||
cFYI(1, ("Existing smb sess not found "));
|
||||
@@ -1741,8 +1719,7 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
if(!rc)
|
||||
atomic_inc(&srvTcp->socketUseCount);
|
||||
} else
|
||||
if(volume_info.password)
|
||||
kfree(volume_info.password);
|
||||
kfree(volume_info.password);
|
||||
}
|
||||
|
||||
/* search for existing tcon to this server share */
|
||||
@@ -1821,8 +1798,7 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
"", cifs_sb->local_nls,
|
||||
cifs_sb->mnt_cifs_flags &
|
||||
CIFS_MOUNT_MAP_SPECIAL_CHR);
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.UNC);
|
||||
FreeXid(xid);
|
||||
return -ENODEV;
|
||||
} else {
|
||||
@@ -1925,8 +1901,7 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
|
||||
(in which case it is not needed anymore) but when new sesion is created
|
||||
the password ptr is put in the new session structure (in which case the
|
||||
password will be freed at unmount time) */
|
||||
if(volume_info.UNC)
|
||||
kfree(volume_info.UNC);
|
||||
kfree(volume_info.UNC);
|
||||
FreeXid(xid);
|
||||
return rc;
|
||||
}
|
||||
@@ -3283,8 +3258,7 @@ CIFSTCon(unsigned int xid, struct cifsSesInfo *ses,
|
||||
if ((bcc_ptr + (2 * length)) -
|
||||
pByteArea(smb_buffer_response) <=
|
||||
BCC(smb_buffer_response)) {
|
||||
if(tcon->nativeFileSystem)
|
||||
kfree(tcon->nativeFileSystem);
|
||||
kfree(tcon->nativeFileSystem);
|
||||
tcon->nativeFileSystem =
|
||||
kzalloc(length + 2, GFP_KERNEL);
|
||||
cifs_strfromUCS_le(tcon->nativeFileSystem,
|
||||
@@ -3301,8 +3275,7 @@ CIFSTCon(unsigned int xid, struct cifsSesInfo *ses,
|
||||
if ((bcc_ptr + length) -
|
||||
pByteArea(smb_buffer_response) <=
|
||||
BCC(smb_buffer_response)) {
|
||||
if(tcon->nativeFileSystem)
|
||||
kfree(tcon->nativeFileSystem);
|
||||
kfree(tcon->nativeFileSystem);
|
||||
tcon->nativeFileSystem =
|
||||
kzalloc(length + 1, GFP_KERNEL);
|
||||
strncpy(tcon->nativeFileSystem, bcc_ptr,
|
||||
|
||||
+7
-16
@@ -84,10 +84,8 @@ cifs_hardlink(struct dentry *old_file, struct inode *inode,
|
||||
cifsInode->time = 0; /* will force revalidate to go get info when needed */
|
||||
|
||||
cifs_hl_exit:
|
||||
if (fromName)
|
||||
kfree(fromName);
|
||||
if (toName)
|
||||
kfree(toName);
|
||||
kfree(fromName);
|
||||
kfree(toName);
|
||||
FreeXid(xid);
|
||||
return rc;
|
||||
}
|
||||
@@ -206,8 +204,7 @@ cifs_symlink(struct inode *inode, struct dentry *direntry, const char *symname)
|
||||
}
|
||||
}
|
||||
|
||||
if (full_path)
|
||||
kfree(full_path);
|
||||
kfree(full_path);
|
||||
FreeXid(xid);
|
||||
return rc;
|
||||
}
|
||||
@@ -253,8 +250,7 @@ cifs_readlink(struct dentry *direntry, char __user *pBuffer, int buflen)
|
||||
len = buflen;
|
||||
tmpbuffer = kmalloc(len,GFP_KERNEL);
|
||||
if(tmpbuffer == NULL) {
|
||||
if (full_path)
|
||||
kfree(full_path);
|
||||
kfree(full_path);
|
||||
FreeXid(xid);
|
||||
return -ENOMEM;
|
||||
}
|
||||
@@ -303,8 +299,7 @@ cifs_readlink(struct dentry *direntry, char __user *pBuffer, int buflen)
|
||||
strncpy(tmpbuffer, referrals, len-1);
|
||||
}
|
||||
}
|
||||
if(referrals)
|
||||
kfree(referrals);
|
||||
kfree(referrals);
|
||||
kfree(tmp_path);
|
||||
}
|
||||
/* BB add code like else decode referrals then memcpy to
|
||||
@@ -323,12 +318,8 @@ cifs_readlink(struct dentry *direntry, char __user *pBuffer, int buflen)
|
||||
rc));
|
||||
}
|
||||
|
||||
if (tmpbuffer) {
|
||||
kfree(tmpbuffer);
|
||||
}
|
||||
if (full_path) {
|
||||
kfree(full_path);
|
||||
}
|
||||
kfree(tmpbuffer);
|
||||
kfree(full_path);
|
||||
FreeXid(xid);
|
||||
return rc;
|
||||
}
|
||||
|
||||
+5
-10
@@ -98,14 +98,10 @@ sesInfoFree(struct cifsSesInfo *buf_to_free)
|
||||
atomic_dec(&sesInfoAllocCount);
|
||||
list_del(&buf_to_free->cifsSessionList);
|
||||
write_unlock(&GlobalSMBSeslock);
|
||||
if (buf_to_free->serverOS)
|
||||
kfree(buf_to_free->serverOS);
|
||||
if (buf_to_free->serverDomain)
|
||||
kfree(buf_to_free->serverDomain);
|
||||
if (buf_to_free->serverNOS)
|
||||
kfree(buf_to_free->serverNOS);
|
||||
if (buf_to_free->password)
|
||||
kfree(buf_to_free->password);
|
||||
kfree(buf_to_free->serverOS);
|
||||
kfree(buf_to_free->serverDomain);
|
||||
kfree(buf_to_free->serverNOS);
|
||||
kfree(buf_to_free->password);
|
||||
kfree(buf_to_free);
|
||||
}
|
||||
|
||||
@@ -144,8 +140,7 @@ tconInfoFree(struct cifsTconInfo *buf_to_free)
|
||||
atomic_dec(&tconInfoAllocCount);
|
||||
list_del(&buf_to_free->cifsConnectionList);
|
||||
write_unlock(&GlobalSMBSeslock);
|
||||
if (buf_to_free->nativeFileSystem)
|
||||
kfree(buf_to_free->nativeFileSystem);
|
||||
kfree(buf_to_free->nativeFileSystem);
|
||||
kfree(buf_to_free);
|
||||
}
|
||||
|
||||
|
||||
+5
-10
@@ -87,8 +87,7 @@ int cifs_removexattr(struct dentry * direntry, const char * ea_name)
|
||||
cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MAP_SPECIAL_CHR);
|
||||
}
|
||||
remove_ea_exit:
|
||||
if (full_path)
|
||||
kfree(full_path);
|
||||
kfree(full_path);
|
||||
FreeXid(xid);
|
||||
#endif
|
||||
return rc;
|
||||
@@ -132,8 +131,7 @@ int cifs_setxattr(struct dentry * direntry, const char * ea_name,
|
||||
returns as xattrs */
|
||||
if(value_size > MAX_EA_VALUE_SIZE) {
|
||||
cFYI(1,("size of EA value too large"));
|
||||
if(full_path)
|
||||
kfree(full_path);
|
||||
kfree(full_path);
|
||||
FreeXid(xid);
|
||||
return -EOPNOTSUPP;
|
||||
}
|
||||
@@ -195,8 +193,7 @@ int cifs_setxattr(struct dentry * direntry, const char * ea_name,
|
||||
}
|
||||
|
||||
set_ea_exit:
|
||||
if (full_path)
|
||||
kfree(full_path);
|
||||
kfree(full_path);
|
||||
FreeXid(xid);
|
||||
#endif
|
||||
return rc;
|
||||
@@ -298,8 +295,7 @@ ssize_t cifs_getxattr(struct dentry * direntry, const char * ea_name,
|
||||
rc = -EOPNOTSUPP;
|
||||
|
||||
get_ea_exit:
|
||||
if (full_path)
|
||||
kfree(full_path);
|
||||
kfree(full_path);
|
||||
FreeXid(xid);
|
||||
#endif
|
||||
return rc;
|
||||
@@ -345,8 +341,7 @@ ssize_t cifs_listxattr(struct dentry * direntry, char * data, size_t buf_size)
|
||||
cifs_sb->mnt_cifs_flags &
|
||||
CIFS_MOUNT_MAP_SPECIAL_CHR);
|
||||
|
||||
if (full_path)
|
||||
kfree(full_path);
|
||||
kfree(full_path);
|
||||
FreeXid(xid);
|
||||
#endif
|
||||
return rc;
|
||||
|
||||
+2
-1
@@ -2235,7 +2235,8 @@ static int fd_ioctl_trans(unsigned int fd, unsigned int cmd, unsigned long arg)
|
||||
if (err)
|
||||
err = -EFAULT;
|
||||
|
||||
out: if (karg) kfree(karg);
|
||||
out:
|
||||
kfree(karg);
|
||||
return err;
|
||||
}
|
||||
|
||||
|
||||
+2
-4
@@ -2738,10 +2738,8 @@ static int devfsd_close(struct inode *inode, struct file *file)
|
||||
entry = fs_info->devfsd_first_event;
|
||||
fs_info->devfsd_first_event = NULL;
|
||||
fs_info->devfsd_last_event = NULL;
|
||||
if (fs_info->devfsd_info) {
|
||||
kfree(fs_info->devfsd_info);
|
||||
fs_info->devfsd_info = NULL;
|
||||
}
|
||||
kfree(fs_info->devfsd_info);
|
||||
fs_info->devfsd_info = NULL;
|
||||
spin_unlock(&fs_info->devfsd_buffer_lock);
|
||||
fs_info->devfsd_pgrp = 0;
|
||||
fs_info->devfsd_task = NULL;
|
||||
|
||||
+2
-4
@@ -194,8 +194,7 @@ ext2_get_acl(struct inode *inode, int type)
|
||||
acl = NULL;
|
||||
else
|
||||
acl = ERR_PTR(retval);
|
||||
if (value)
|
||||
kfree(value);
|
||||
kfree(value);
|
||||
|
||||
if (!IS_ERR(acl)) {
|
||||
switch(type) {
|
||||
@@ -262,8 +261,7 @@ ext2_set_acl(struct inode *inode, int type, struct posix_acl *acl)
|
||||
|
||||
error = ext2_xattr_set(inode, name_index, "", value, size, 0);
|
||||
|
||||
if (value)
|
||||
kfree(value);
|
||||
kfree(value);
|
||||
if (!error) {
|
||||
switch(type) {
|
||||
case ACL_TYPE_ACCESS:
|
||||
|
||||
@@ -294,8 +294,7 @@ static void hostfs_delete_inode(struct inode *inode)
|
||||
|
||||
static void hostfs_destroy_inode(struct inode *inode)
|
||||
{
|
||||
if(HOSTFS_I(inode)->host_filename)
|
||||
kfree(HOSTFS_I(inode)->host_filename);
|
||||
kfree(HOSTFS_I(inode)->host_filename);
|
||||
|
||||
/*XXX: This should not happen, probably. The check is here for
|
||||
* additional safety.*/
|
||||
|
||||
+4
-4
@@ -244,12 +244,12 @@ static int hpfs_add_to_dnode(struct inode *i, dnode_secno dno,
|
||||
go_up:
|
||||
if (namelen >= 256) {
|
||||
hpfs_error(i->i_sb, "hpfs_add_to_dnode: namelen == %d", namelen);
|
||||
if (nd) kfree(nd);
|
||||
kfree(nd);
|
||||
kfree(nname);
|
||||
return 1;
|
||||
}
|
||||
if (!(d = hpfs_map_dnode(i->i_sb, dno, &qbh))) {
|
||||
if (nd) kfree(nd);
|
||||
kfree(nd);
|
||||
kfree(nname);
|
||||
return 1;
|
||||
}
|
||||
@@ -257,7 +257,7 @@ static int hpfs_add_to_dnode(struct inode *i, dnode_secno dno,
|
||||
if (hpfs_sb(i->i_sb)->sb_chk)
|
||||
if (hpfs_stop_cycles(i->i_sb, dno, &c1, &c2, "hpfs_add_to_dnode")) {
|
||||
hpfs_brelse4(&qbh);
|
||||
if (nd) kfree(nd);
|
||||
kfree(nd);
|
||||
kfree(nname);
|
||||
return 1;
|
||||
}
|
||||
@@ -270,7 +270,7 @@ static int hpfs_add_to_dnode(struct inode *i, dnode_secno dno,
|
||||
for_all_poss(i, hpfs_pos_subst, 5, t + 1);
|
||||
hpfs_mark_4buffers_dirty(&qbh);
|
||||
hpfs_brelse4(&qbh);
|
||||
if (nd) kfree(nd);
|
||||
kfree(nd);
|
||||
kfree(nname);
|
||||
return 0;
|
||||
}
|
||||
|
||||
+5
-5
@@ -75,7 +75,7 @@ void hpfs_error(struct super_block *s, char *m,...)
|
||||
} else if (s->s_flags & MS_RDONLY) printk("; going on - but anything won't be destroyed because it's read-only\n");
|
||||
else printk("; corrupted filesystem mounted read/write - your computer will explode within 20 seconds ... but you wanted it so!\n");
|
||||
} else printk("\n");
|
||||
if (buf) kfree(buf);
|
||||
kfree(buf);
|
||||
hpfs_sb(s)->sb_was_error = 1;
|
||||
}
|
||||
|
||||
@@ -102,8 +102,8 @@ int hpfs_stop_cycles(struct super_block *s, int key, int *c1, int *c2,
|
||||
static void hpfs_put_super(struct super_block *s)
|
||||
{
|
||||
struct hpfs_sb_info *sbi = hpfs_sb(s);
|
||||
if (sbi->sb_cp_table) kfree(sbi->sb_cp_table);
|
||||
if (sbi->sb_bmp_dir) kfree(sbi->sb_bmp_dir);
|
||||
kfree(sbi->sb_cp_table);
|
||||
kfree(sbi->sb_bmp_dir);
|
||||
unmark_dirty(s);
|
||||
s->s_fs_info = NULL;
|
||||
kfree(sbi);
|
||||
@@ -654,8 +654,8 @@ bail3: brelse(bh1);
|
||||
bail2: brelse(bh0);
|
||||
bail1:
|
||||
bail0:
|
||||
if (sbi->sb_bmp_dir) kfree(sbi->sb_bmp_dir);
|
||||
if (sbi->sb_cp_table) kfree(sbi->sb_cp_table);
|
||||
kfree(sbi->sb_bmp_dir);
|
||||
kfree(sbi->sb_cp_table);
|
||||
s->s_fs_info = NULL;
|
||||
kfree(sbi);
|
||||
return -EINVAL;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user