Spdk/lib/nvmf
John Levon 0a153e8af4 nvmf/vfio-user: only process SQs in VFIO_USER_CTRLR_RUNNING state
While we are quiesced, we're not allowed to access guest memory via the
SGL APIs. Refuse to process any commands unless we're in RUNNING state.

We need to synchronize with each poll group via a message before we can
call vfu_device_quiesced(), otherwise we could still be processing
commands via nvmf_vfio_user_sq_poll().

For interrupt mode, we then might miss processing commands in a
corresponding interrupt callback, so make sure we process them when we
return to RUNNING state.

Signed-off-by: John Levon <john.levon@nutanix.com>
Change-Id: Ieae5a9ae8d9de722e0bdf4bb8d61e7e678159f1f
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12912
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
2022-06-24 07:22:01 +00:00
..
ctrlr_bdev.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
ctrlr_discovery.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
ctrlr.c nvmf: Make nvmf transport advertise compare 2022-06-10 07:54:33 +00:00
fc_ls.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
fc.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
Makefile libvfio-user: compile shared library based on CONFIG_SHARED flag 2022-06-23 07:43:26 +00:00
nvmf_fc.h Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
nvmf_internal.h Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
nvmf_rpc.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
nvmf.c nvmf: Make spdk_nvmf_subsystem_pause accept the broadcast NSID 2022-06-24 07:22:01 +00:00
rdma.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
spdk_nvmf.map lib/nvmf : Added support for ZCOPY 2021-07-23 08:34:43 +00:00
subsystem.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
tcp.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
transport.c Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
transport.h Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
vfio_user.c nvmf/vfio-user: only process SQs in VFIO_USER_CTRLR_RUNNING state 2022-06-24 07:22:01 +00:00