[PATCH] nvme-multipath: fix double initialization of ANA state

Martin Wilck mwilck at suse.com
Mon May 17 09:49:00 PDT 2021


On Mon, 2021-05-17 at 18:47 +0200, Martin Wilck wrote:
> On Mon, 2021-05-17 at 14:48 +0200, Christoph Hellwig wrote:
> > On Fri, May 14, 2021 at 11:08:25PM +0200, Martin Wilck wrote:
> > > Hello Christoph,
> > > 
> > > On Wed, 2021-05-12 at 16:53 +0200, Martin Wilck wrote:
> > > > On Thu, 2021-05-06 at 15:48 +0200, Christoph Hellwig wrote:
> > > > > nvme_init_identify and thus nvme_mpath_init can be called
> > > > > multiple
> > > > > times and thus must not overwrite potentially initialized or
> > > > > in-use
> > > > > fields.  Split out a helper for the basic initialization when
> > > > > the
> > > > > controller is initialized and make sure the init_identify
> > > > > path
> > > > > does
> > > > > not blindly change in-use data structures.
> > > > > 
> > > > > Fixes: 0d0b660f214d ("nvme: add ANA support")
> > > > > Reported-by: Martin Wilck <mwilck at suse.com>
> > > > > Signed-off-by: Christoph Hellwig <hch at lst.de>
> > > > 
> > > > Thank you. I'll prepare another test kernel for our partner.
> > > 
> > > Our partner reported a crash during NVMe controller
> > > initialization
> > > with
> > > the kernel I built with this patch applied. I'm still looking at
> > > the
> > > dump, and it's not impossible that I made a mistake backporting
> > > your
> > > patch. But I thought I should inform you anyway.
> > 
> > It does look weird for sure.  Did you backport
> > "nvmet: use new ana_log_size instead the old one" as well?  If not
> > please
> > pick it up.
> 
> I missed that one indeed, and it's the culprit.

I wrote nonsense, sorry. 

Applying "nvmet: use new ana_log_size instead the old one" fixed the
issue for me.

Martin





More information about the Linux-nvme mailing list