From: Dan Carpenter Date: Thu, 15 Aug 2013 05:58:59 +0000 (+0300) Subject: libceph: create_singlethread_workqueue() doesn't return ERR_PTRs X-Git-Url: http://git.mmlx.us/?a=commitdiff_plain;h=3834fb30d260b8fa6401fff271c65cd29ba94424;p=linux-edison.git libceph: create_singlethread_workqueue() doesn't return ERR_PTRs commit dbcae088fa660086bde6e10d63bb3c9264832d85 upstream. create_singlethread_workqueue() returns NULL on error, and it doesn't return ERR_PTRs. I tweaked the error handling a little to be consistent with earlier in the function. Signed-off-by: Dan Carpenter Reviewed-by: Sage Weil Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/ceph/osd_client.c b/net/ceph/osd_client.c index 311161eac5c..ac34cb5120e 100644 --- a/net/ceph/osd_client.c +++ b/net/ceph/osd_client.c @@ -2257,12 +2257,10 @@ int ceph_osdc_init(struct ceph_osd_client *osdc, struct ceph_client *client) if (err < 0) goto out_msgpool; + err = -ENOMEM; osdc->notify_wq = create_singlethread_workqueue("ceph-watch-notify"); - if (IS_ERR(osdc->notify_wq)) { - err = PTR_ERR(osdc->notify_wq); - osdc->notify_wq = NULL; + if (!osdc->notify_wq) goto out_msgpool; - } return 0; out_msgpool: