* Case-sensitive host NQN
@ 2020-02-12 12:58 Hannes Reinecke
2020-02-12 17:35 ` Christoph Hellwig
0 siblings, 1 reply; 7+ messages in thread
From: Hannes Reinecke @ 2020-02-12 12:58 UTC (permalink / raw)
To: Keith Busch; +Cc: Christoph Hellwig, linux-nvme, Sagi Grimberg
Hi all,
I've stumbled across a slight weirdness for our handling of host NQNs.
We do format them like
# cat /etc/nvme/hostnqn
nqn.2014-08.org.nvmexpress:uuid:36343050-3834-584D-5138-33313030344E
as this is a UUID, one would expect that it's identical to
# cat /etc/nvme/hostnqn
nqn.2014-08.org.nvmexpress:uuid:36343050-3834-584d-5138-33313030344e
(Note the lowercase letters).
As it turns out, this is _not_ the case, causing the connection not to
be established.
Which is slightly weird, and not what one would expect.
The NVMe spec only has this vague statement
"Upon entry NVM host software may process an NVMe qualified name..."
so we would be spec-compatible when setting the fields to lowercase
when reading the nqn.
Thoughts?
Cheers,
Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare@suse.de +49 911 74053 688
SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), GF: Felix Imendörffer
_______________________________________________
linux-nvme mailing list
linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Case-sensitive host NQN
2020-02-12 12:58 Case-sensitive host NQN Hannes Reinecke
@ 2020-02-12 17:35 ` Christoph Hellwig
2020-02-12 17:51 ` Hannes Reinecke
0 siblings, 1 reply; 7+ messages in thread
From: Christoph Hellwig @ 2020-02-12 17:35 UTC (permalink / raw)
To: Hannes Reinecke; +Cc: Sagi Grimberg, linux-nvme, Keith Busch, Christoph Hellwig
On Wed, Feb 12, 2020 at 01:58:26PM +0100, Hannes Reinecke wrote:
> Hi all,
>
> I've stumbled across a slight weirdness for our handling of host NQNs.
> We do format them like
>
> # cat /etc/nvme/hostnqn
> nqn.2014-08.org.nvmexpress:uuid:36343050-3834-584D-5138-33313030344E
>
> as this is a UUID, one would expect that it's identical to
>
> # cat /etc/nvme/hostnqn
> nqn.2014-08.org.nvmexpress:uuid:36343050-3834-584d-5138-33313030344e
>
> (Note the lowercase letters).
> As it turns out, this is _not_ the case, causing the connection not to
> be established.
>
> Which is slightly weird, and not what one would expect.
> The NVMe spec only has this vague statement
> "Upon entry NVM host software may process an NVMe qualified name..."
> so we would be spec-compatible when setting the fields to lowercase
> when reading the nqn.
Check section 7.9 of NVMe 1.4:
"NVMe hosts, controllers and NVM subsystems compare (e.g., for equality)
NVMe Qualified Names used by NVMe as binary strings without any text
processing or text comparison logic that is specific to the Unicode
character set or locale (e.g., case folding or conversion to lower case,
Unicode normalization)."
so no, they are case sensitive and the above is by design.
_______________________________________________
linux-nvme mailing list
linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Case-sensitive host NQN
2020-02-12 17:35 ` Christoph Hellwig
@ 2020-02-12 17:51 ` Hannes Reinecke
2020-02-12 17:55 ` Christoph Hellwig
0 siblings, 1 reply; 7+ messages in thread
From: Hannes Reinecke @ 2020-02-12 17:51 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-nvme, Keith Busch, Sagi Grimberg
On 2/12/20 6:35 PM, Christoph Hellwig wrote:
> On Wed, Feb 12, 2020 at 01:58:26PM +0100, Hannes Reinecke wrote:
>> Hi all,
>>
>> I've stumbled across a slight weirdness for our handling of host NQNs.
>> We do format them like
>>
>> # cat /etc/nvme/hostnqn
>> nqn.2014-08.org.nvmexpress:uuid:36343050-3834-584D-5138-33313030344E
>>
>> as this is a UUID, one would expect that it's identical to
>>
>> # cat /etc/nvme/hostnqn
>> nqn.2014-08.org.nvmexpress:uuid:36343050-3834-584d-5138-33313030344e
>>
>> (Note the lowercase letters).
>> As it turns out, this is _not_ the case, causing the connection not to
>> be established.
>>
>> Which is slightly weird, and not what one would expect.
>> The NVMe spec only has this vague statement
>> "Upon entry NVM host software may process an NVMe qualified name..."
>> so we would be spec-compatible when setting the fields to lowercase
>> when reading the nqn.
>
> Check section 7.9 of NVMe 1.4:
>
> "NVMe hosts, controllers and NVM subsystems compare (e.g., for equality)
> NVMe Qualified Names used by NVMe as binary strings without any text
> processing or text comparison logic that is specific to the Unicode
> character set or locale (e.g., case folding or conversion to lower case,
> Unicode normalization)."
>
> so no, they are case sensitive and the above is by design.
>
(I knew I would be getting this answer :-)
But if you read the very next sentence it says:
Any such text processing:
a) may occur as part of entry of NVMe Qualified Names into NVMe hosts
and NVM subsystems; and
b) should not occur as part of receiving NVMe Qualified Names via an
NVMe connection, as shown in Figure 436.
IE we would be perfectly within the spec to convert the nqn to eg
lowercase when reading it from /etc/nvme/hostnqn.
Cheers,
Hannes
--
Dr. Hannes Reinecke Teamlead Storage & Networking
hare@suse.de +49 911 74053 688
SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), Geschäftsführer: Felix Imendörffer
_______________________________________________
linux-nvme mailing list
linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Case-sensitive host NQN
2020-02-12 17:51 ` Hannes Reinecke
@ 2020-02-12 17:55 ` Christoph Hellwig
2020-02-12 19:20 ` Sagi Grimberg
2020-02-13 15:38 ` Hannes Reinecke
0 siblings, 2 replies; 7+ messages in thread
From: Christoph Hellwig @ 2020-02-12 17:55 UTC (permalink / raw)
To: Hannes Reinecke; +Cc: linux-nvme, Christoph Hellwig, Keith Busch, Sagi Grimberg
On Wed, Feb 12, 2020 at 06:51:54PM +0100, Hannes Reinecke wrote:
> IE we would be perfectly within the spec to convert the nqn to eg lowercase
> when reading it from /etc/nvme/hostnqn.
We could, but why would we? Case sensitivity is a complete pain and
avoiding it wherever we can is a good thing.
_______________________________________________
linux-nvme mailing list
linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Case-sensitive host NQN
2020-02-12 17:55 ` Christoph Hellwig
@ 2020-02-12 19:20 ` Sagi Grimberg
2020-02-13 15:38 ` Hannes Reinecke
1 sibling, 0 replies; 7+ messages in thread
From: Sagi Grimberg @ 2020-02-12 19:20 UTC (permalink / raw)
To: Christoph Hellwig, Hannes Reinecke; +Cc: linux-nvme, Keith Busch
> On Wed, Feb 12, 2020 at 06:51:54PM +0100, Hannes Reinecke wrote:
>> IE we would be perfectly within the spec to convert the nqn to eg lowercase
>> when reading it from /etc/nvme/hostnqn.
>
> We could, but why would we? Case sensitivity is a complete pain and
> avoiding it wherever we can is a good thing.
I agree here, why should we make that effort? what is the benefit?
_______________________________________________
linux-nvme mailing list
linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Case-sensitive host NQN
2020-02-12 17:55 ` Christoph Hellwig
2020-02-12 19:20 ` Sagi Grimberg
@ 2020-02-13 15:38 ` Hannes Reinecke
2020-02-13 23:33 ` Sagi Grimberg
1 sibling, 1 reply; 7+ messages in thread
From: Hannes Reinecke @ 2020-02-13 15:38 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: linux-nvme, Keith Busch, Sagi Grimberg
On 2/12/20 6:55 PM, Christoph Hellwig wrote:
> On Wed, Feb 12, 2020 at 06:51:54PM +0100, Hannes Reinecke wrote:
>> IE we would be perfectly within the spec to convert the nqn to eg lowercase
>> when reading it from /etc/nvme/hostnqn.
>
> We could, but why would we? Case sensitivity is a complete pain and
> avoiding it wherever we can is a good thing.
>
Because the UUID really is a number, and hence one would assume that it
wouldn't be affected from case sensitivty.
But if the consensus is that we do not twiddle with it we should be
documenting it somewhere (maybe in a comment in the auto-generated
/etc/nvme/hostnqn) so as to avoid surprises or support calls later on.
Cheers,
Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare@suse.de +49 911 74053 688
SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), GF: Felix Imendörffer
_______________________________________________
linux-nvme mailing list
linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Case-sensitive host NQN
2020-02-13 15:38 ` Hannes Reinecke
@ 2020-02-13 23:33 ` Sagi Grimberg
0 siblings, 0 replies; 7+ messages in thread
From: Sagi Grimberg @ 2020-02-13 23:33 UTC (permalink / raw)
To: Hannes Reinecke, Christoph Hellwig; +Cc: linux-nvme, Keith Busch
>> On Wed, Feb 12, 2020 at 06:51:54PM +0100, Hannes Reinecke wrote:
>>> IE we would be perfectly within the spec to convert the nqn to eg lowercase
>>> when reading it from /etc/nvme/hostnqn.
>>
>> We could, but why would we? Case sensitivity is a complete pain and
>> avoiding it wherever we can is a good thing.
>>
> Because the UUID really is a number, and hence one would assume that it
> wouldn't be affected from case sensitivty.
>
> But if the consensus is that we do not twiddle with it we should be
> documenting it somewhere (maybe in a comment in the auto-generated
> /etc/nvme/hostnqn) so as to avoid surprises or support calls later on.
We can comment. But given that I do see people leverage non-standard
hostnqns for their own comfortable use, I don't think it would be
a good idea to take any permutations of it (that may also generate
support calls).
_______________________________________________
linux-nvme mailing list
linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2020-02-13 23:34 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-12 12:58 Case-sensitive host NQN Hannes Reinecke
2020-02-12 17:35 ` Christoph Hellwig
2020-02-12 17:51 ` Hannes Reinecke
2020-02-12 17:55 ` Christoph Hellwig
2020-02-12 19:20 ` Sagi Grimberg
2020-02-13 15:38 ` Hannes Reinecke
2020-02-13 23:33 ` Sagi Grimberg
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).