kthread_create_no_node() returns error pointers, never NULL. Fix check so
it handles error correctly.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Jon Mason <jdmason@kudzu.us>
                                kthread_create_on_node(ntb_perf_thread,
                                                       (void *)pctx,
                                                       node, "ntb_perf %d", i);
-                       if (pctx->thread)
-                               wake_up_process(pctx->thread);
-                       else {
+                       if (IS_ERR(pctx->thread)) {
                                perf->run = false;
                                for (i = 0; i < MAX_THREADS; i++) {
                                        if (pctx->thread) {
                                                pctx->thread = NULL;
                                        }
                                }
-                       }
+                       } else
+                               wake_up_process(pctx->thread);
 
                        if (perf->run == false)
                                return -ENXIO;