[PATCH 4/4] nvme: remove existing namespace on ID mismatch

Hannes Reinecke hare at suse.de
Tue Sep 3 05:30:31 PDT 2024


On 9/2/24 19:01, Sagi Grimberg wrote:
> Again, patch title should describe what it is fixing.
> 
> 
> On 02/09/2024 14:15, Hannes Reinecke wrote:
>> When the namespace IDs mismatch during rescan we clearly ran out of
>> sync with the target,
> 
> Not clear at all. When can this happen and how?
> 
>>   but we really can't know whether our local copy
>> of the NSID is correct, and that one found by scanning is not.
>> But clearly something is wrong with the namespaces, so we should remove
>> the existing one, too, to avoid accidental data corruption.
> 
> Umm. So you see a bogus ns and conflicting with another ns which is
> seemingly fine and you remove it?
> 
> I feel like you are describing something "generically useful/correct" 
> while you address
> a very specific problem but you don't describe it to us...
> 
Turns out that this patch was actually pointless, as the code in 
question can only be reached from the 'nvme_alloc_ns()' flow, which
means that no namespace for this nsid on that controller is present
(and hence nothing to remove).

But I seem to have found the root cause now (I/O stall as we don't
kick the requeue list in all cases), will be sending a new patchset.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke                  Kernel Storage Architect
hare at suse.de                                +49 911 74053 688
SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg
HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich




More information about the Linux-nvme mailing list