linux/drivers/nvme/host
James Smart 9c5358e15c nvme-fc: revise TRADDR parsing
The FC-NVME spec hasn't locked down on the format string for TRADDR.
Currently the spec is lobbying for "nn-<16hexdigits>:pn-<16hexdigits>"
where the wwn's are hex values but not prefixed by 0x.

Most implementations so far expect a string format of
"nn-0x<16hexdigits>:pn-0x<16hexdigits>" to be used. The transport
uses the match_u64 parser which requires a leading 0x prefix to set
the base properly. If it's not there, a match will either fail or return
a base 10 value.

The resolution in T11 is pushing out. Therefore, to fix things now and
to cover any eventuality and any implementations already in the field,
this patch adds support for both formats.

The change consists of replacing the token matching routine with a
routine that validates the fixed string format, and then builds
a local copy of the hex name with a 0x prefix before calling
the system parser.

Note: the same parser routine exists in both the initiator and target
transports. Given this is about the only "shared" item, we chose to
replicate rather than create an interdendency on some shared code.

Signed-off-by: James Smart <james.smart@broadcom.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2017-07-25 18:05:25 +02:00
..
core.c nvme: also provide a UUID in the WWID sysfs attribute 2017-07-25 17:58:22 +02:00
fabrics.c nvme-fabrics: verify that a controller returns the correct NQN 2017-06-28 08:14:13 -06:00
fabrics.h nvme: read the subsystem NQN from Identify Controller 2017-06-28 08:14:13 -06:00
fc.c nvme-fc: revise TRADDR parsing 2017-07-25 18:05:25 +02:00
Kconfig nvme: Remove SCSI translations 2017-06-28 08:14:13 -06:00
lightnvm.c lightnvm: propagate right error code to target 2017-06-26 16:24:53 -06:00
Makefile nvme: Makefile: remove dead build rule 2017-06-29 09:43:23 -06:00
nvme.h nvme: split nvme_uninit_ctrl into stop and uninit 2017-07-06 09:49:42 +03:00
pci.c nvme-pci: Fix an error handling path in 'nvme_probe()' 2017-07-20 08:41:56 -06:00
rdma.c nvme-rdma: unconditionally recycle the request mr 2017-07-06 09:49:43 +03:00