[SPDK] Re: Error creating block device based on NVMe device

Liu, Changpeng <changpeng.liu at intel.com>
Newsgroups dev.linux.lists.spdk
Message-ID <BN7PR11MB27396C319BE86797D3AD7495EEA50@BN7PR11MB2739.namprd11.prod.outlook.com>
I see, if your drive can's support OPAL, bdev_nvme_dump_info_json() will check the drive based on Security Send/Receive feature, could you submit a fix for that ?

> -----Original Message-----
> From: Michael Haeuptle <michaelhaeuptle(a)gmail.com>
> Sent: Thursday, May 7, 2020 7:56 AM
> To: Storage Performance Development Kit <spdk(a)lists.01.org>
> Subject: [SPDK] Re: Error creating block device based on NVMe device
> 
> I think I ran into the same issue today with 20.04. My workaround was to do a
> NULL check in spdk_opal_supported:
> https://github.com/spdk/spdk/blob/55fe098f9d0c51bc2a02e85e6b256dcb7cb03
> 636/lib/nvme/nvme_opal.c#L2567
> <https://github.com/spdk/spdk/blob/55fe098f9d0c51bc2a02e85e6b256dcb7cb0
> 3636/lib/nvme/nvme_opal.c#L2567>
> 
> bool
> spdk_opal_supported(struct spdk_opal_dev *dev)
> {
> 	return dev ? dev->supported : false;
> 	// return dev->supported;
> }
> 
> 
> > On May 6, 2020, at 5:32 PM, Liu, Changpeng <changpeng.liu(a)intel.com> wrote:
> >
> > Hi Ye,
> >
> > The OPAL error message showed that your drive can support Security
> send/receive commands but can't support OPAL, it doesn't affect anything, so
> the block device was created successfully.
> >
> > Could you submit a github issue for the Segment Fault, it's better to include
> the calltrace, I can take a look. Thanks.
> >
> >> -----Original Message-----
> >> From: yehur.cheong(a)akirakan.com <yehur.cheong(a)akirakan.com>
> >> Sent: Wednesday, May 6, 2020 6:48 PM
> >> To: spdk(a)lists.01.org
> >> Subject: [SPDK] Error creating block device based on NVMe device
> >>
> >> Hi all,
> >>
> >> I'm facing an error when using the command rpc.py
> >> bdev_nvme_attach_controller when creating block device based on NVMe
> >> device. But i have no problem running the examples/nvme/hello_world and
> >> examples/bdev/hello_world/hello_bdev.
> >>
> >> Here are the output (all commands ran in the spdk root directory),
> >>
> >> 1. First, i started the spdk_tgt (I'm using a local nvme drive)
> >> ./app/spdk_tgt/spdk_tgt &
> >>
> >> Starting SPDK v20.04-pre git sha1 2d097539d / DPDK 19.11.0 initialization...
> >> [ DPDK EAL parameters: spdk_tgt --no-shconf -c 0x1 --log-level=lib.eal:6 --log-
> >> level=lib.cryptodev:5 --log-level=user1:6 --iova-mode=pa --base-
> >> virtaddr=0x200000000000 --match-allocations --file-prefix=spdk_pid8592 ]
> >> EAL: No available hugepages reported in hugepages-1048576kB
> >> app.c: 646:spdk_app_start: *NOTICE*: Total cores available: 1
> >> reactor.c: 371:_spdk_reactor_run: *NOTICE*: Reactor started on core 0
> >> accel_engine.c: 227:spdk_accel_engine_initialize: *NOTICE*: Accel engine
> >> initialized to use software engine.
> >>
> >> 2. Try to create a block device using the rpc.py command
> >> ./scripts/rpc.py bdev_nvme_attach_controller -b NVMe01 -t PCIe -a
> 0000:04:00.0
> >>
> >> nvme_qpair.c: 118:nvme_admin_qpair_print_command: *NOTICE*: SECURITY
> >> RECEIVE (82) sqid:0 cid:23 nsid:0 cdw10:01000100 cdw11:00000800
> >> nvme_qpair.c: 306:spdk_nvme_qpair_print_completion: *NOTICE*: INVALID
> >> FIELD (00/02) sqid:0 cid:23 cdw0:0 sqhd:000f p:1 m:0 dnr:1
> >> nvme_ctrlr.c:3443:spdk_nvme_ctrlr_security_receive: *ERROR*:
> >> spdk_nvme_ctrlr_cmd_security_receive failed!
> >> bdev_nvme.c:1426:create_ctrlr: *ERROR*: Failed to initialize Opal
> >> NVMe01n1
> >>
> >> Here it shows error in spdk_nvme_ctrlr_cmd_security_receive and failed to
> >> initialize Opal.
> >>
> >> 3. Then when i try checking list of currently available block devices by the
> rpc.py
> >> command,
> >> ./scripts/rpc.py bdev_get_bdevs
> >>
> >> Connection closed with partial response:
> >>
> >>
> >> [3]+  Segmentation fault      (core dumped) ./app/spdk_tgt/spdk_tgt
> >>
> >> it got a segmentation fault.
> >>
> >> I'm not sure what's the problem here, I'll appreciate any comment at all.
> Thank
> >> you very much.
> >>
> >> Best,
> >> Ye Hur
> >> _______________________________________________
> >> SPDK mailing list -- spdk(a)lists.01.org
> >> To unsubscribe send an email to spdk-leave(a)lists.01.org
> > _______________________________________________
> > SPDK mailing list -- spdk(a)lists.01.org
> > To unsubscribe send an email to spdk-leave(a)lists.01.org
> 
> _______________________________________________
> SPDK mailing list -- spdk(a)lists.01.org
> To unsubscribe send an email to spdk-leave(a)lists.01.org
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.