Commit d787ab09 authored by Tim Gardner's avatar Tim Gardner Committed by Linus Torvalds

ocfs2: remove kfree() redundant null checks

smatch analysis indicates a number of redundant NULL checks before
calling kfree(), eg:

  fs/ocfs2/alloc.c:6138 ocfs2_begin_truncate_log_recovery() info:
   redundant null check on *tl_copy calling kfree()

  fs/ocfs2/alloc.c:6755 ocfs2_zero_range_for_truncate() info:
   redundant null check on pages calling kfree()

etc....

[akpm@linux-foundation.org: revert dubious change in ocfs2_begin_truncate_log_recovery()]
Signed-off-by: default avatarTim Gardner <tim.gardner@canonical.com>
Cc: Mark Fasheh <mfasheh@suse.com>
Acked-by: default avatarJoel Becker <jlbec@evilplan.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 49deb4bc
...@@ -6751,7 +6751,6 @@ int ocfs2_zero_range_for_truncate(struct inode *inode, handle_t *handle, ...@@ -6751,7 +6751,6 @@ int ocfs2_zero_range_for_truncate(struct inode *inode, handle_t *handle,
mlog_errno(ret); mlog_errno(ret);
out: out:
if (pages)
kfree(pages); kfree(pages);
return ret; return ret;
......
...@@ -1471,7 +1471,6 @@ static void o2hb_region_release(struct config_item *item) ...@@ -1471,7 +1471,6 @@ static void o2hb_region_release(struct config_item *item)
mlog(ML_HEARTBEAT, "hb region release (%s)\n", reg->hr_dev_name); mlog(ML_HEARTBEAT, "hb region release (%s)\n", reg->hr_dev_name);
if (reg->hr_tmp_block)
kfree(reg->hr_tmp_block); kfree(reg->hr_tmp_block);
if (reg->hr_slot_data) { if (reg->hr_slot_data) {
...@@ -1486,7 +1485,6 @@ static void o2hb_region_release(struct config_item *item) ...@@ -1486,7 +1485,6 @@ static void o2hb_region_release(struct config_item *item)
if (reg->hr_bdev) if (reg->hr_bdev)
blkdev_put(reg->hr_bdev, FMODE_READ|FMODE_WRITE); blkdev_put(reg->hr_bdev, FMODE_READ|FMODE_WRITE);
if (reg->hr_slots)
kfree(reg->hr_slots); kfree(reg->hr_slots);
kfree(reg->hr_db_regnum); kfree(reg->hr_db_regnum);
......
...@@ -1165,9 +1165,7 @@ int o2net_send_message_vec(u32 msg_type, u32 key, struct kvec *caller_vec, ...@@ -1165,9 +1165,7 @@ int o2net_send_message_vec(u32 msg_type, u32 key, struct kvec *caller_vec,
o2net_debug_del_nst(&nst); /* must be before dropping sc and node */ o2net_debug_del_nst(&nst); /* must be before dropping sc and node */
if (sc) if (sc)
sc_put(sc); sc_put(sc);
if (vec)
kfree(vec); kfree(vec);
if (msg)
kfree(msg); kfree(msg);
o2net_complete_nsw(nn, &nsw, 0, 0, 0); o2net_complete_nsw(nn, &nsw, 0, 0, 0);
return ret; return ret;
......
...@@ -319,9 +319,7 @@ static void dlm_free_ctxt_mem(struct dlm_ctxt *dlm) ...@@ -319,9 +319,7 @@ static void dlm_free_ctxt_mem(struct dlm_ctxt *dlm)
if (dlm->master_hash) if (dlm->master_hash)
dlm_free_pagevec((void **)dlm->master_hash, DLM_HASH_PAGES); dlm_free_pagevec((void **)dlm->master_hash, DLM_HASH_PAGES);
if (dlm->name)
kfree(dlm->name); kfree(dlm->name);
kfree(dlm); kfree(dlm);
} }
......
...@@ -282,7 +282,6 @@ void ocfs2_extent_map_insert_rec(struct inode *inode, ...@@ -282,7 +282,6 @@ void ocfs2_extent_map_insert_rec(struct inode *inode,
spin_unlock(&oi->ip_lock); spin_unlock(&oi->ip_lock);
out: out:
if (new_emi)
kfree(new_emi); kfree(new_emi);
} }
......
...@@ -1234,10 +1234,7 @@ static void ocfs2_queue_recovery_completion(struct ocfs2_journal *journal, ...@@ -1234,10 +1234,7 @@ static void ocfs2_queue_recovery_completion(struct ocfs2_journal *journal,
/* Though we wish to avoid it, we are in fact safe in /* Though we wish to avoid it, we are in fact safe in
* skipping local alloc cleanup as fsck.ocfs2 is more * skipping local alloc cleanup as fsck.ocfs2 is more
* than capable of reclaiming unused space. */ * than capable of reclaiming unused space. */
if (la_dinode)
kfree(la_dinode); kfree(la_dinode);
if (tl_dinode)
kfree(tl_dinode); kfree(tl_dinode);
if (qrec) if (qrec)
...@@ -1408,7 +1405,6 @@ static int __ocfs2_recovery_thread(void *arg) ...@@ -1408,7 +1405,6 @@ static int __ocfs2_recovery_thread(void *arg)
mutex_unlock(&osb->recovery_lock); mutex_unlock(&osb->recovery_lock);
if (rm_quota)
kfree(rm_quota); kfree(rm_quota);
/* no one is callint kthread_stop() for us so the kthread() api /* no one is callint kthread_stop() for us so the kthread() api
......
...@@ -476,7 +476,6 @@ void ocfs2_shutdown_local_alloc(struct ocfs2_super *osb) ...@@ -476,7 +476,6 @@ void ocfs2_shutdown_local_alloc(struct ocfs2_super *osb)
if (local_alloc_inode) if (local_alloc_inode)
iput(local_alloc_inode); iput(local_alloc_inode);
if (alloc_copy)
kfree(alloc_copy); kfree(alloc_copy);
} }
...@@ -534,7 +533,7 @@ int ocfs2_begin_local_alloc_recovery(struct ocfs2_super *osb, ...@@ -534,7 +533,7 @@ int ocfs2_begin_local_alloc_recovery(struct ocfs2_super *osb,
mlog_errno(status); mlog_errno(status);
bail: bail:
if ((status < 0) && (*alloc_copy)) { if (status < 0) {
kfree(*alloc_copy); kfree(*alloc_copy);
*alloc_copy = NULL; *alloc_copy = NULL;
} }
...@@ -1290,7 +1289,6 @@ static int ocfs2_local_alloc_slide_window(struct ocfs2_super *osb, ...@@ -1290,7 +1289,6 @@ static int ocfs2_local_alloc_slide_window(struct ocfs2_super *osb,
if (main_bm_inode) if (main_bm_inode)
iput(main_bm_inode); iput(main_bm_inode);
if (alloc_copy)
kfree(alloc_copy); kfree(alloc_copy);
if (ac) if (ac)
......
...@@ -376,7 +376,7 @@ static int o2cb_cluster_connect(struct ocfs2_cluster_connection *conn) ...@@ -376,7 +376,7 @@ static int o2cb_cluster_connect(struct ocfs2_cluster_connection *conn)
dlm_register_eviction_cb(dlm, &priv->op_eviction_cb); dlm_register_eviction_cb(dlm, &priv->op_eviction_cb);
out_free: out_free:
if (rc && conn->cc_private) if (rc)
kfree(conn->cc_private); kfree(conn->cc_private);
out: out:
......
...@@ -2525,7 +2525,6 @@ static int ocfs2_check_volume(struct ocfs2_super *osb) ...@@ -2525,7 +2525,6 @@ static int ocfs2_check_volume(struct ocfs2_super *osb)
mlog_errno(status); mlog_errno(status);
finally: finally:
if (local_alloc)
kfree(local_alloc); kfree(local_alloc);
if (status) if (status)
...@@ -2553,7 +2552,6 @@ static void ocfs2_delete_osb(struct ocfs2_super *osb) ...@@ -2553,7 +2552,6 @@ static void ocfs2_delete_osb(struct ocfs2_super *osb)
* we free it here. * we free it here.
*/ */
kfree(osb->journal); kfree(osb->journal);
if (osb->local_alloc_copy)
kfree(osb->local_alloc_copy); kfree(osb->local_alloc_copy);
kfree(osb->uuid_str); kfree(osb->uuid_str);
ocfs2_put_dlm_debug(osb->osb_dlm_debug); ocfs2_put_dlm_debug(osb->osb_dlm_debug);
......
...@@ -91,7 +91,6 @@ static struct inode **get_local_system_inode(struct ocfs2_super *osb, ...@@ -91,7 +91,6 @@ static struct inode **get_local_system_inode(struct ocfs2_super *osb,
} else } else
osb->local_system_inodes = local_system_inodes; osb->local_system_inodes = local_system_inodes;
spin_unlock(&osb->osb_lock); spin_unlock(&osb->osb_lock);
if (unlikely(free))
kfree(free); kfree(free);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment