From: Jitendra Bhivare <jitendra.bhivare at broadcom.com>
To: spdk@lists.01.org
Subject: Re: [SPDK] PCIe hotplug support using VFIO for NVMf
Date: Wed, 09 May 2018 17:02:57 +0530 [thread overview]
Message-ID: <684183f82edb1d47f09079b6fb57a3d7@mail.gmail.com> (raw)
In-Reply-To: 9EDDCD9E-CE95-4E0D-8DB5-9DFD6B64C22C@intel.com
[-- Attachment #1: Type: text/plain, Size: 3276 bytes --]
Thanks a lot Jim.
Missed that. In our platform CSTS read value is 0 after surprise hotunplug.
Adding !csts.bits.rdy check makes hotplug working fine.
I think we would still need KOBJ event for controlled hotunplug done by
echo'ing in remove sysfs entry.
For that we will have to send something like KOBJ_CHANGE/KOBJ_UNBIND to SPDK
and parse it.
Regards,
JB
> -----Original Message-----
> From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Harris, James R
> Sent: Tuesday, May 8, 2018 7:06 PM
> To: Storage Performance Development Kit <spdk(a)lists.01.org>
> Subject: Re: [SPDK] PCIe hotplug support using VFIO for NVMf
>
> Hi Jitendra,
>
> There’s a loop at the end of _nvme_pcie_hotplug_monitor that is supposed
> to work around this circular dependency. It periodically reads a register
> on
> the device to check if it’s been removed. This loop was adding prior to
> the
> v18.01 release. Can you instrument that loop to see if it is triggering?
>
> Thanks,
>
> -Jim
>
>
> On 5/8/18, 3:42 AM, "SPDK on behalf of Jitendra Bhivare" <spdk-
> bounces(a)lists.01.org on behalf of jitendra.bhivare(a)broadcom.com> wrote:
>
> > For this to work I think we need an eventfd mechanism to notify SPDK
> of
> device removal from VFIO.
> Or a better approach, to generate KOBJ_CHANGE for vfio-pci driver
> kobject.
>
> From: Jitendra Bhivare [mailto:jitendra.bhivare(a)broadcom.com]
> Sent: Tuesday, May 8, 2018 12:11 PM
> To: 'spdk(a)lists.01.org' <spdk(a)lists.01.org>
> Subject: PCIe hotplug support using VFIO for NVMf
>
> Hi All,
>
> I am trying to use PCIe hotplug feature in SPDK v18.01 (with DPDK
> v17.11)
> for NVMf by setting in conf file HotplugEnable to Yes. It is not
> working.
> All the IOs get stuck on initiator side and nvmf_tgt does not even
> respond
> to nvme discovery query after that.
>
> nvmf_tgt opens a netlink socket to listen on KOBJ events. Using VFIO
> claimed NVMe PCIe devices, when a PCIe device is removed
> vfio_pci_remove
> waits for all references to the device added in IOMMU group to be
> dropped
> in vfio_del_group_dev.
>
> This reference will only be dropped after SPDK unloads the NVME PCIe
> driver. For that to happen it is waiting for the KOBJ events. KOBJ
> events
> won't happen till vfio_pci_remove releases the device.
>
> So we kinda reached a deadlock with circular dependency on release of
> the
> device.
>
> Can someone please explain how this feature is working?
>
> For this to work I think we need an eventfd mechanism to notify SPDK
> of
> device removal from VFIO.
> I am trying to integrate such a thing bit of a redundant approach made
> specifically for VFIO devices.
>
> Please do let me know if we have better option or working on better
> approach to make this work.
>
> Thanks,
>
> JB
> _______________________________________________
> SPDK mailing list
> SPDK(a)lists.01.org
> https://lists.01.org/mailman/listinfo/spdk
>
>
> _______________________________________________
> SPDK mailing list
> SPDK(a)lists.01.org
> https://lists.01.org/mailman/listinfo/spdk
next reply other threads:[~2018-05-09 11:32 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-09 11:32 Jitendra Bhivare [this message]
-- strict thread matches above, loose matches on Subject: below --
2018-05-11 5:05 [SPDK] PCIe hotplug support using VFIO for NVMf Jitendra Bhivare
2018-05-08 13:36 Harris, James R
2018-05-08 10:42 Jitendra Bhivare
2018-05-08 6:41 Jitendra Bhivare
2018-05-08 6:18 Jitendra Bhivare
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=684183f82edb1d47f09079b6fb57a3d7@mail.gmail.com \
--to=spdk@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox