Spdk/lib/bdev
Paul Luse cbb8f46575 bdev: fix timing of init_complete callback
Recently added a new call to bdev modules to inform them of when
bdev subsystem init is complete. The intention is for modules like
RAID or crypto that need to take some action after the initial bdev
subsystem init such as 'build whatever RAID volumes you can, all
initial examine callbacks are done' or in the case of crypto 'OK,
construct all of your crypto structures for HW and SW PMDs and
associate each to configured vbdevs.'

Now that I've implemented the crypto case I see that the call was
misplaced and will execute following any examine_done call including
subsequent bdev registrations.  Those cases, for both RAID and crypto,
need to follow a different path (examine) since all of the activities
associated with the new init_complete() callback are intended just for
the very first initialization of SPDK.

So, long story short, moving this call so that it's only executed once
when subsystem init is done and not on subsequent bdev registrations.

Change-Id: I952b90e33fc67d48d86c0a7de2ad47c74a98e839
Signed-off-by: Paul Luse <paul.e.luse@intel.com>
Reviewed-on: https://review.gerrithub.io/408209
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
2018-04-20 15:16:09 -04:00
..
aio bdev/aio: remove deprecated "fname" RPC parameter 2018-03-23 03:57:44 -04:00
error bdev: Wait for io device to unregister in bdev_part 2018-04-17 11:47:09 -04:00
gpt bdev: Wait for io device to unregister in bdev_part 2018-04-17 11:47:09 -04:00
iscsi bdev/iSCSI: Make the connection connect in async mode. 2018-04-18 12:31:31 -04:00
lvol lvol: Make snapshot_lvol_bdev RPC's arguments required 2018-04-19 15:48:36 -04:00
malloc bdev/malloc: num_blocks parameter should be uint64_t 2018-04-06 18:22:22 -04:00
null bdev/null: fix RPC string memory leak 2018-04-06 18:22:22 -04:00
nvme bdev/nvme: Fix descriptor leak in apply firmware RPC 2018-04-10 12:58:34 -04:00
passthru vbdev/passthru: add the construct_passthru_bdev RPC method 2018-04-20 14:58:13 -04:00
pmem bdev/pmem: add conf support to test in blockdev.sh 2018-04-03 14:14:29 -04:00
rbd bdev/rbd: add missing block_size in RPC config dump 2018-04-05 14:57:43 -04:00
rpc bdev/qos: add the QoS information on RPC get_bdevs interface 2018-04-20 13:34:44 -04:00
split bdev: Wait for io device to unregister in bdev_part 2018-04-17 11:47:09 -04:00
virtio bdev/virito: add JSON config dump and generic create RPC 2018-04-17 17:16:06 -04:00
bdev.c bdev: fix timing of init_complete callback 2018-04-20 15:16:09 -04:00
Makefile bdev/pmem: change all NVML strings to PMDK 2018-04-07 00:07:57 -04:00
part.c bdev: Wait for io device to unregister in bdev_part 2018-04-17 11:47:09 -04:00
scsi_nvme.c nvme_spec: remove SGL Sub Type Invalid status code 2017-09-22 17:11:53 -04:00
vtune.c bdev: disable new GCC 7 warning in VTune code 2018-03-19 15:58:15 -04:00