On Thu, Jul 30, 2020 at 01:51:48PM +0300, Oded Gabbay wrote: > On Thu, Jul 30, 2020 at 11:20 AM Colin King <colin.king@xxxxxxxxxxxxx> wrote: > > > > From: Colin Ian King <colin.king@xxxxxxxxxxxxx> > > > > The null check on a failed workqueue create is currently null checking > > hdev->cq_wq rather than the pointer hdev->cq_wq[i] and so the test > > will never be true on a failed workqueue create. Fix this by checking > > hdev->cq_wq[i]. > > > > Addresses-Coverity: ("Dereference before null check") > > Fixes: 5574cb2194b1 ("habanalabs: Assign each CQ with its own work queue") > > Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx> > > --- > > drivers/misc/habanalabs/common/device.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/misc/habanalabs/common/device.c b/drivers/misc/habanalabs/common/device.c > > index be16b75bdfdb..35214a186913 100644 > > --- a/drivers/misc/habanalabs/common/device.c > > +++ b/drivers/misc/habanalabs/common/device.c > > @@ -288,7 +288,7 @@ static int device_early_init(struct hl_device *hdev) > > for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) { > > snprintf(workq_name, 32, "hl-free-jobs-%u", i); > > hdev->cq_wq[i] = create_singlethread_workqueue(workq_name); > > - if (hdev->cq_wq == NULL) { > > + if (hdev->cq_wq[i] == NULL) { > > dev_err(hdev->dev, "Failed to allocate CQ workqueue\n"); > > rc = -ENOMEM; > > goto free_cq_wq; > > -- > > 2.27.0 > > > > This patch is: > Reviewed-by: Oded Gabbay <oded.gabbay@xxxxxxxxx> > > Greg, can you please apply it directly to the char-misc-next branch ? > I don't want to send a pull request for 1 patch. Already merged :)