GFS2: fix error propagation in init_threads()

If kthread_run() fails, init_threads() returns
IS_ERR(p) instead of PTR_ERR(p).

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
This commit is contained in:
Alexey Khoroshilov 2013-06-06 01:29:04 +04:00 committed by Steven Whitehouse
parent edd2e9acc0
commit a9aefd707c

View File

@ -916,16 +916,16 @@ static int init_threads(struct gfs2_sbd *sdp, int undo)
goto fail_quotad; goto fail_quotad;
p = kthread_run(gfs2_logd, sdp, "gfs2_logd"); p = kthread_run(gfs2_logd, sdp, "gfs2_logd");
error = IS_ERR(p); if (IS_ERR(p)) {
if (error) { error = PTR_ERR(p);
fs_err(sdp, "can't start logd thread: %d\n", error); fs_err(sdp, "can't start logd thread: %d\n", error);
return error; return error;
} }
sdp->sd_logd_process = p; sdp->sd_logd_process = p;
p = kthread_run(gfs2_quotad, sdp, "gfs2_quotad"); p = kthread_run(gfs2_quotad, sdp, "gfs2_quotad");
error = IS_ERR(p); if (IS_ERR(p)) {
if (error) { error = PTR_ERR(p);
fs_err(sdp, "can't start quotad thread: %d\n", error); fs_err(sdp, "can't start quotad thread: %d\n", error);
goto fail; goto fail;
} }