Re: [PATCH][next] habanalabs: fix incorrect check on failed workqueue create
From: Greg Kroah-Hartman
Date: Sun Aug 09 2020 - 08:03:00 EST
On Sun, Aug 09, 2020 at 02:02:18PM +0300, Oded Gabbay wrote:
> On Fri, Jul 31, 2020 at 9:21 AM Greg Kroah-Hartman
> <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > 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 :)
>
> Hi Greg,
> I can't find this patch in char-misc-next.
> Can you please check if you applied it ?
Oops, you are right, I did not take it, my fault, sorry.
> If not, I'll apply it to my fixes tree and send it to you for -rc2
That would be great, thanks for following up on this.
greg k-h