qemu-e2k/include/block
Lukasz Maniak 99f48ae7ae hw/nvme: Add support for Secondary Controller List
Introduce handling for Secondary Controller List (Identify command with
CNS value of 15h).

Secondary controller ids are unique in the subsystem, hence they are
reserved by it upon initialization of the primary controller to the
number of sriov_max_vfs.

ID reservation requires the addition of an intermediate controller slot
state, so the reserved controller has the address 0xFFFF.
A secondary controller is in the reserved state when it has no virtual
function assigned, but its primary controller is realized.
Secondary controller reservations are released to NULL when its primary
controller is unregistered.

Signed-off-by: Lukasz Maniak <lukasz.maniak@linux.intel.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Klaus Jensen <k.jensen@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
2022-06-23 23:24:28 +02:00
..
accounting.h
aio-wait.h qemu/atomic.h: rename atomic_ to qatomic_ 2020-09-23 16:07:44 +01:00
aio.h util/event-loop-base: Introduce options to set the thread pool size 2022-05-09 10:43:23 +01:00
aio_task.h
block-common.h block: fix preallocate filter: don't do unaligned preallocate requests 2022-03-07 09:19:20 +01:00
block-copy.h block/block-copy: add block_copy_reset() 2022-03-07 09:33:30 +01:00
block-global-state.h block: Classify bdrv_get_flags() as I/O function 2022-05-04 15:55:23 +02:00
block-hmp-cmds.h Clean up header guards that don't match their file name 2022-05-11 16:49:06 +02:00
block-io.h block: Classify bdrv_get_flags() as I/O function 2022-05-04 15:55:23 +02:00
block.h include/block/block: split header into I/O and global state API 2022-03-04 18:18:25 +01:00
block_backup.h
block_int-common.h block: introduce snapshot-access block driver 2022-03-07 09:33:31 +01:00
block_int-global-state.h Clean up decorations and whitespace around header guards 2022-05-11 16:50:32 +02:00
block_int-io.h block/io: introduce block driver snapshot-access API 2022-03-07 09:33:31 +01:00
block_int.h include/block/block_int: split header into I/O and global state API 2022-03-04 18:18:25 +01:00
blockjob.h include/block/blockjob.h: global state API 2022-03-04 18:18:25 +01:00
blockjob_int.h include/block/blockjob_int.h: split header into I/O and GS API 2022-03-04 18:18:25 +01:00
dirty-bitmap.h block/dirty-bitmap: introduce bdrv_dirty_bitmap_status() 2022-03-07 09:33:30 +01:00
export.h block/export: Move blk to BlockExport 2020-10-02 15:46:40 +02:00
fuse.h fuse: Allow exporting BDSs via FUSE 2020-12-11 17:52:39 +01:00
nbd.h nbd/server: Allow MULTI_CONN for shared writable exports 2022-05-12 13:10:52 +02:00
nvme.h hw/nvme: Add support for Secondary Controller List 2022-06-23 23:24:28 +02:00
qapi.h qapi: Allow getting flat output from 'query-named-block-nodes' 2020-02-20 16:43:42 +01:00
qdict.h include: move qdict_{crumple,flatten} declarations 2022-04-21 17:03:51 +04:00
raw-aio.h linux-aio: add `dev_max_batch` parameter to laio_io_unplug() 2021-11-02 13:03:35 +01:00
replication.h replication: move include out of root directory 2021-05-26 14:49:46 +02:00
reqlist.h block/reqlist: add reqlist_wait_all() 2022-03-07 09:33:30 +01:00
snapshot.h include/block/snapshot: global state API + assertions 2022-03-04 18:18:25 +01:00
thread-pool.h util/event-loop-base: Introduce options to set the thread pool size 2022-05-09 10:43:23 +01:00
throttle-groups.h block/throttle-groups: throttle_group_co_io_limits_intercept(): 64bit bytes 2021-02-03 08:14:00 -06:00
write-threshold.h write-threshold: deal with includes 2021-05-14 16:14:10 +02:00