[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180613163007.GD5574@localhost.localdomain>
Date: Wed, 13 Jun 2018 10:30:07 -0600
From: Keith Busch <keith.busch@...el.com>
To: Ben Hutchings <ben.hutchings@...ethink.co.uk>
Cc: Jianchao Wang <jianchao.w.wang@...cle.com>, stable@...r.kernel.org,
Sasha Levin <alexander.levin@...rosoft.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 4.4 110/268] nvme-pci: Fix nvme queue cleanup if IRQ
setup fails
On Wed, Jun 13, 2018 at 05:14:34PM +0100, Ben Hutchings wrote:
> On Mon, 2018-05-28 at 12:01 +0200, Greg Kroah-Hartman wrote:
> > result = adapter_alloc_sq(dev, qid, nvmeq);
> > if (result < 0)
> > @@ -1597,9 +1597,12 @@ static int nvme_create_queue(struct nvme
> > return result;
> >
> > release_sq:
> > + dev->online_queues--;
>
> This addition looks wrong. dev->online_queues is incremented by
> nvme_init_queue(), but this function only calls that at a point where
> it is sure to succeed. So why would a failure path need to decrement
> it?
Thank you very much the catching that. This particular patch is indeed
not correct without the following:
161b8be2bd6ab ("nvme-pci: initialize queue memory before interrupts")
Powered by blists - more mailing lists