ocfs2/cluster: dereferencing before checking in nst_seq_show()
In the original code, we dereferenced "nst" before checking that it was non-NULL. I moved the check forward and pulled the code in an indent level. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Joel Becker <joel.becker@oracle.com>
This commit is contained in:
committed by
Joel Becker
parent
e70d84501b
commit
cc548166b2
@@ -133,36 +133,37 @@ static int nst_seq_show(struct seq_file *seq, void *v)
|
|||||||
|
|
||||||
spin_lock(&o2net_debug_lock);
|
spin_lock(&o2net_debug_lock);
|
||||||
nst = next_nst(dummy_nst);
|
nst = next_nst(dummy_nst);
|
||||||
|
if (!nst)
|
||||||
|
goto out;
|
||||||
|
|
||||||
now = ktime_get();
|
now = ktime_get();
|
||||||
sock = ktime_to_us(ktime_sub(now, nst->st_sock_time));
|
sock = ktime_to_us(ktime_sub(now, nst->st_sock_time));
|
||||||
send = ktime_to_us(ktime_sub(now, nst->st_send_time));
|
send = ktime_to_us(ktime_sub(now, nst->st_send_time));
|
||||||
status = ktime_to_us(ktime_sub(now, nst->st_status_time));
|
status = ktime_to_us(ktime_sub(now, nst->st_status_time));
|
||||||
|
|
||||||
if (nst != NULL) {
|
/* get_task_comm isn't exported. oh well. */
|
||||||
/* get_task_comm isn't exported. oh well. */
|
seq_printf(seq, "%p:\n"
|
||||||
seq_printf(seq, "%p:\n"
|
" pid: %lu\n"
|
||||||
" pid: %lu\n"
|
" tgid: %lu\n"
|
||||||
" tgid: %lu\n"
|
" process name: %s\n"
|
||||||
" process name: %s\n"
|
" node: %u\n"
|
||||||
" node: %u\n"
|
" sc: %p\n"
|
||||||
" sc: %p\n"
|
" message id: %d\n"
|
||||||
" message id: %d\n"
|
" message type: %u\n"
|
||||||
" message type: %u\n"
|
" message key: 0x%08x\n"
|
||||||
" message key: 0x%08x\n"
|
" sock acquiry: %lld usecs ago\n"
|
||||||
" sock acquiry: %lld usecs ago\n"
|
" send start: %lld usecs ago\n"
|
||||||
" send start: %lld usecs ago\n"
|
" wait start: %lld usecs ago\n",
|
||||||
" wait start: %lld usecs ago\n",
|
nst, (unsigned long)task_pid_nr(nst->st_task),
|
||||||
nst, (unsigned long)task_pid_nr(nst->st_task),
|
(unsigned long)nst->st_task->tgid,
|
||||||
(unsigned long)nst->st_task->tgid,
|
nst->st_task->comm, nst->st_node,
|
||||||
nst->st_task->comm, nst->st_node,
|
nst->st_sc, nst->st_id, nst->st_msg_type,
|
||||||
nst->st_sc, nst->st_id, nst->st_msg_type,
|
nst->st_msg_key,
|
||||||
nst->st_msg_key,
|
(long long)sock,
|
||||||
(long long)sock,
|
(long long)send,
|
||||||
(long long)send,
|
(long long)status);
|
||||||
(long long)status);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
out:
|
||||||
spin_unlock(&o2net_debug_lock);
|
spin_unlock(&o2net_debug_lock);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user