Skip to content

Commit

Permalink
[PATCH] kfree cleanup: arch
Browse files Browse the repository at this point in the history
This is the arch/ part of the big kfree cleanup patch.

Remove pointless checks for NULL prior to calling kfree() in arch/.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Acked-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Jesper Juhl authored and Linus Torvalds committed Nov 7, 2005
1 parent f99d49a commit b2325fe
Show file tree
Hide file tree
Showing 12 changed files with 25 additions and 40 deletions.
3 changes: 1 addition & 2 deletions arch/arm/mach-integrator/impd1.c
Original file line number Diff line number Diff line change
Expand Up @@ -420,8 +420,7 @@ static int impd1_probe(struct lm_device *dev)
free_impd1:
if (impd1 && impd1->base)
iounmap(impd1->base);
if (impd1)
kfree(impd1);
kfree(impd1);
release_lm:
release_mem_region(dev->resource.start, SZ_4K);
return ret;
Expand Down
14 changes: 7 additions & 7 deletions arch/cris/arch-v32/drivers/cryptocop.c
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ struct file_operations cryptocop_fops = {
static void free_cdesc(struct cryptocop_dma_desc *cdesc)
{
DEBUG(printk("free_cdesc: cdesc 0x%p, from_pool=%d\n", cdesc, cdesc->from_pool));
if (cdesc->free_buf) kfree(cdesc->free_buf);
kfree(cdesc->free_buf);

if (cdesc->from_pool) {
unsigned long int flags;
Expand Down Expand Up @@ -2950,15 +2950,15 @@ static int cryptocop_ioctl_process(struct inode *inode, struct file *filp, unsig
put_page(outpages[i]);
}

if (digest_result) kfree(digest_result);
if (inpages) kfree(inpages);
if (outpages) kfree(outpages);
kfree(digest_result);
kfree(inpages);
kfree(outpages);
if (cop){
if (cop->tfrm_op.indata) kfree(cop->tfrm_op.indata);
if (cop->tfrm_op.outdata) kfree(cop->tfrm_op.outdata);
kfree(cop->tfrm_op.indata);
kfree(cop->tfrm_op.outdata);
kfree(cop);
}
if (jc) kfree(jc);
kfree(jc);

DEBUG(print_lock_status());

Expand Down
2 changes: 1 addition & 1 deletion arch/ia64/kernel/perfmon.c
Original file line number Diff line number Diff line change
Expand Up @@ -4940,7 +4940,7 @@ sys_perfmonctl (int fd, int cmd, void __user *arg, int count)
if (call_made && PFM_CMD_RW_ARG(cmd) && copy_to_user(arg, args_k, base_sz*count)) ret = -EFAULT;

error_args:
if (args_k) kfree(args_k);
kfree(args_k);

DPRINT(("cmd=%s ret=%ld\n", PFM_CMD_NAME(cmd), ret));

Expand Down
6 changes: 2 additions & 4 deletions arch/powerpc/platforms/pseries/reconfig.c
Original file line number Diff line number Diff line change
Expand Up @@ -286,10 +286,8 @@ static struct property *new_property(const char *name, const int length,
return new;

cleanup:
if (new->name)
kfree(new->name);
if (new->value)
kfree(new->value);
kfree(new->name);
kfree(new->value);
kfree(new);
return NULL;
}
Expand Down
3 changes: 1 addition & 2 deletions arch/ppc/8xx_io/cs4218_tdm.c
Original file line number Diff line number Diff line change
Expand Up @@ -1013,8 +1013,7 @@ static void CS_IrqCleanup(void)
*/
cpm_free_handler(CPMVEC_SMC2);

if (beep_buf)
kfree(beep_buf);
kfree(beep_buf);
kd_mksound = orig_mksound;
}
#endif /* MODULE */
Expand Down
6 changes: 2 additions & 4 deletions arch/ppc/syslib/prom.c
Original file line number Diff line number Diff line change
Expand Up @@ -1335,10 +1335,8 @@ release_OF_resource(struct device_node* node, int index)
if (!res)
return -ENODEV;

if (res->name) {
kfree(res->name);
res->name = NULL;
}
kfree(res->name);
res->name = NULL;
release_resource(res);
kfree(res);

Expand Down
4 changes: 1 addition & 3 deletions arch/ppc64/kernel/lparcfg.c
Original file line number Diff line number Diff line change
Expand Up @@ -599,9 +599,7 @@ int __init lparcfg_init(void)
void __exit lparcfg_cleanup(void)
{
if (proc_ppc64_lparcfg) {
if (proc_ppc64_lparcfg->data) {
kfree(proc_ppc64_lparcfg->data);
}
kfree(proc_ppc64_lparcfg->data);
remove_proc_entry("lparcfg", proc_ppc64_lparcfg->parent);
}
}
Expand Down
3 changes: 1 addition & 2 deletions arch/ppc64/kernel/scanlog.c
Original file line number Diff line number Diff line change
Expand Up @@ -225,8 +225,7 @@ int __init scanlog_init(void)
void __exit scanlog_cleanup(void)
{
if (proc_ppc64_scan_log_dump) {
if (proc_ppc64_scan_log_dump->data)
kfree(proc_ppc64_scan_log_dump->data);
kfree(proc_ppc64_scan_log_dump->data);
remove_proc_entry("scan-log-dump", proc_ppc64_scan_log_dump->parent);
}
}
Expand Down
8 changes: 4 additions & 4 deletions arch/s390/mm/extmem.c
Original file line number Diff line number Diff line change
Expand Up @@ -234,8 +234,8 @@ query_segment_type (struct dcss_segment *seg)
rc = 0;

out_free:
if (qin) kfree(qin);
if (qout) kfree(qout);
kfree(qin);
kfree(qout);
return rc;
}

Expand Down Expand Up @@ -394,7 +394,7 @@ __segment_load (char *name, int do_nonshared, unsigned long *addr, unsigned long
segtype_string[seg->vm_segtype]);
goto out;
out_free:
kfree (seg);
kfree(seg);
out:
return rc;
}
Expand Down Expand Up @@ -505,7 +505,7 @@ segment_modify_shared (char *name, int do_nonshared)
list_del(&seg->list);
dcss_diag(DCSS_PURGESEG, seg->dcss_name,
&dummy, &dummy);
kfree (seg);
kfree(seg);
out_unlock:
spin_unlock(&dcss_lock);
return rc;
Expand Down
7 changes: 2 additions & 5 deletions arch/sparc64/kernel/us2e_cpufreq.c
Original file line number Diff line number Diff line change
Expand Up @@ -388,10 +388,8 @@ static int __init us2e_freq_init(void)
kfree(driver);
cpufreq_us2e_driver = NULL;
}
if (us2e_freq_table) {
kfree(us2e_freq_table);
us2e_freq_table = NULL;
}
kfree(us2e_freq_table);
us2e_freq_table = NULL;
return ret;
}

Expand All @@ -402,7 +400,6 @@ static void __exit us2e_freq_exit(void)
{
if (cpufreq_us2e_driver) {
cpufreq_unregister_driver(cpufreq_us2e_driver);

kfree(cpufreq_us2e_driver);
cpufreq_us2e_driver = NULL;
kfree(us2e_freq_table);
Expand Down
7 changes: 2 additions & 5 deletions arch/sparc64/kernel/us3_cpufreq.c
Original file line number Diff line number Diff line change
Expand Up @@ -249,10 +249,8 @@ static int __init us3_freq_init(void)
kfree(driver);
cpufreq_us3_driver = NULL;
}
if (us3_freq_table) {
kfree(us3_freq_table);
us3_freq_table = NULL;
}
kfree(us3_freq_table);
us3_freq_table = NULL;
return ret;
}

Expand All @@ -263,7 +261,6 @@ static void __exit us3_freq_exit(void)
{
if (cpufreq_us3_driver) {
cpufreq_unregister_driver(cpufreq_us3_driver);

kfree(cpufreq_us3_driver);
cpufreq_us3_driver = NULL;
kfree(us3_freq_table);
Expand Down
2 changes: 1 addition & 1 deletion arch/um/kernel/sigio_user.c
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ static int need_poll(int n)
next_poll.used = n;
return(0);
}
if(next_poll.poll != NULL) kfree(next_poll.poll);
kfree(next_poll.poll);
next_poll.poll = um_kmalloc_atomic(n * sizeof(struct pollfd));
if(next_poll.poll == NULL){
printk("need_poll : failed to allocate new pollfds\n");
Expand Down

0 comments on commit b2325fe

Please sign in to comment.