]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
ocfs2/cluster: dereferencing before checking in nst_seq_show()
authorDan Carpenter <error27@gmail.com>
Mon, 3 Jan 2011 06:00:20 +0000 (09:00 +0300)
committerJoel Becker <joel.becker@oracle.com>
Sat, 8 Jan 2011 02:02:03 +0000 (18:02 -0800)
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>
fs/ocfs2/cluster/netdebug.c

index 61df89cedded17c551b2d8bb97ed474ad7c1ad82..3a5835904b3db4d522c561908171f528bb74f6bd 100644 (file)
@@ -133,36 +133,37 @@ static int nst_seq_show(struct seq_file *seq, void *v)
 
        spin_lock(&o2net_debug_lock);
        nst = next_nst(dummy_nst);
+       if (!nst)
+               goto out;
 
        now = ktime_get();
        sock = ktime_to_us(ktime_sub(now, nst->st_sock_time));
        send = ktime_to_us(ktime_sub(now, nst->st_send_time));
        status = ktime_to_us(ktime_sub(now, nst->st_status_time));
 
-       if (nst != NULL) {
-               /* get_task_comm isn't exported.  oh well. */
-               seq_printf(seq, "%p:\n"
-                          "  pid:          %lu\n"
-                          "  tgid:         %lu\n"
-                          "  process name: %s\n"
-                          "  node:         %u\n"
-                          "  sc:           %p\n"
-                          "  message id:   %d\n"
-                          "  message type: %u\n"
-                          "  message key:  0x%08x\n"
-                          "  sock acquiry: %lld usecs ago\n"
-                          "  send start:   %lld usecs ago\n"
-                          "  wait start:   %lld usecs ago\n",
-                          nst, (unsigned long)task_pid_nr(nst->st_task),
-                          (unsigned long)nst->st_task->tgid,
-                          nst->st_task->comm, nst->st_node,
-                          nst->st_sc, nst->st_id, nst->st_msg_type,
-                          nst->st_msg_key,
-                          (long long)sock,
-                          (long long)send,
-                          (long long)status);
-       }
+       /* get_task_comm isn't exported.  oh well. */
+       seq_printf(seq, "%p:\n"
+                  "  pid:          %lu\n"
+                  "  tgid:         %lu\n"
+                  "  process name: %s\n"
+                  "  node:         %u\n"
+                  "  sc:           %p\n"
+                  "  message id:   %d\n"
+                  "  message type: %u\n"
+                  "  message key:  0x%08x\n"
+                  "  sock acquiry: %lld usecs ago\n"
+                  "  send start:   %lld usecs ago\n"
+                  "  wait start:   %lld usecs ago\n",
+                  nst, (unsigned long)task_pid_nr(nst->st_task),
+                  (unsigned long)nst->st_task->tgid,
+                  nst->st_task->comm, nst->st_node,
+                  nst->st_sc, nst->st_id, nst->st_msg_type,
+                  nst->st_msg_key,
+                  (long long)sock,
+                  (long long)send,
+                  (long long)status);
 
+out:
        spin_unlock(&o2net_debug_lock);
 
        return 0;