diff --git a/doc/bdev_module.md b/doc/bdev_module.md index f6c5392cc..191a1cf53 100644 --- a/doc/bdev_module.md +++ b/doc/bdev_module.md @@ -18,7 +18,7 @@ how to write a module. ## Creating A New Module -Block device modules are located in subdirectories under lib/bdev today. It is not +Block device modules are located in subdirectories under module/bdev today. It is not currently possible to place the code for a bdev module elsewhere, but updates to the build system could be made to enable this in the future. To create a module, add a new directory with a single C file and a Makefile. A great @@ -137,6 +137,15 @@ block device. Once the I/O request is completed, the module must call spdk_bdev_io_complete(). The I/O does not have to finish within the calling context of `submit_request`. +Integrating a new bdev module into the build system requires updates to various +files in the /mk directory. + +## Creating Bdevs in an External Repository + +A User can build their own bdev module and application on top of existing SPDK libraries. The example in +test/external_code serves as a template for creating, building and linking an external +bdev module. Refer to test/external_code/README.md and @ref so_linking for further information. + ## Creating Virtual Bdevs Block devices are considered virtual if they handle I/O requests by routing