aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ntb
diff options
context:
space:
mode:
authorDave Jiang <dave.jiang@intel.com>2016-03-18 16:39:41 -0700
committerJon Mason <jdmason@kudzu.us>2016-03-21 19:28:25 -0400
commitddc8f6feec76b5deea8090db015920a283006044 (patch)
tree09ab6f3e481b9e84f9bebc4693d7c74250835c31 /drivers/ntb
parentntb: fix possible NULL dereference (diff)
downloadlinux-dev-ddc8f6feec76b5deea8090db015920a283006044.tar.xz
linux-dev-ddc8f6feec76b5deea8090db015920a283006044.zip
NTB: Fix incorrect return check in ntb_perf
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>
Diffstat (limited to 'drivers/ntb')
-rw-r--r--drivers/ntb/test/ntb_perf.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/ntb/test/ntb_perf.c b/drivers/ntb/test/ntb_perf.c
index cf19ff07680d..d82d10791e7d 100644
--- a/drivers/ntb/test/ntb_perf.c
+++ b/drivers/ntb/test/ntb_perf.c
@@ -615,9 +615,7 @@ static ssize_t debugfs_run_write(struct file *filp, const char __user *ubuf,
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) {
@@ -625,7 +623,8 @@ static ssize_t debugfs_run_write(struct file *filp, const char __user *ubuf,
pctx->thread = NULL;
}
}
- }
+ } else
+ wake_up_process(pctx->thread);
if (perf->run == false)
return -ENXIO;