diff options
author | Jesper Juhl <jj@chaosbits.net> | 2011-07-10 22:54:31 +0200 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2011-07-11 08:39:42 -0500 |
commit | 5d70828a7703b1f68e2fd4ce4b42b28d9623f52b (patch) | |
tree | 8ec65e9895776d568a475e3e8796fe9ababe8d2e /fs/dlm | |
parent | bcaadf5c1ac4ff84b52174a84adb86a1e3e806dd (diff) | |
download | lwn-5d70828a7703b1f68e2fd4ce4b42b28d9623f52b.tar.gz lwn-5d70828a7703b1f68e2fd4ce4b42b28d9623f52b.zip |
dlm: don't do pointless NULL check, use kzalloc and fix order of arguments
In fs/dlm/lock.c in the dlm_scan_waiters() function there are 3 small
issues:
1) There's no need to test the return value of the allocation and do a
memset if is succeedes. Just use kzalloc() to obtain zeroed memory.
2) Since kfree() handles NULL pointers gracefully, the test of
'warned' against NULL before the kfree() after the loop is completely
pointless. Remove it.
3) The arguments to kmalloc() (now kzalloc()) were swapped. Thanks to
Dr. David Alan Gilbert for pointing this out.
Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: David Teigland <teigland@redhat.com>
Diffstat (limited to 'fs/dlm')
-rw-r--r-- | fs/dlm/lock.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/fs/dlm/lock.c b/fs/dlm/lock.c index f71d0b5abd95..84c52e6b8810 100644 --- a/fs/dlm/lock.c +++ b/fs/dlm/lock.c @@ -849,9 +849,7 @@ void dlm_scan_waiters(struct dlm_ls *ls) if (!num_nodes) { num_nodes = ls->ls_num_nodes; - warned = kmalloc(GFP_KERNEL, num_nodes * sizeof(int)); - if (warned) - memset(warned, 0, num_nodes * sizeof(int)); + warned = kzalloc(num_nodes * sizeof(int), GFP_KERNEL); } if (!warned) continue; @@ -863,9 +861,7 @@ void dlm_scan_waiters(struct dlm_ls *ls) dlm_config.ci_waitwarn_us, lkb->lkb_wait_nodeid); } mutex_unlock(&ls->ls_waiters_mutex); - - if (warned) - kfree(warned); + kfree(warned); if (debug_expired) log_debug(ls, "scan_waiters %u warn %u over %d us max %lld us", |