[SPDK] Multiple start/stop of reactor and add/remove of bdev

Shahar Salzman shahar.salzman at kaminario.com
Mon Oct 8 01:07:33 PDT 2018


Hi,


I am now working with my passthrough bdev directly from my application, and require adding/removing them dynamically. In addition, I also require starting/stopping the reactor on demand without tearing down the entire system (e.g. dpdk stays initialized). This mostly works out of the box, but there are a few globals and bdev internal fields which require re-init or tear down.

In addition, the copy engine did not io_unregister itself, so I also added this in the patchset, allowing me the following application life span:


- env init (init config, spdk_env_init)

- reactors init

- while (application is alive)

  subsystem_init + reactor start

  ...

  Do some NVMeF stuff

  ...

  subsysem_fini + reactors stop

- reactors_fini

- rpc_finish



I submitted the following patches for review:

https://review.gerrithub.io/c/spdk/spdk/+/428305

https://review.gerrithub.io/c/spdk/spdk/+/428304

https://review.gerrithub.io/c/spdk/spdk/+/428303

https://review.gerrithub.io/c/spdk/spdk/+/428302


WDYT?


Shahar


More information about the SPDK mailing list