doc: bdev module path and external bdev info update

Signed-off-by: Monica Kenguva <monica.kenguva@intel.com>
Change-Id: I78ec57d7c0105f5c16261342ddce1294c1a9a2d8
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/3468
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
Monica Kenguva 2020-07-21 20:08:24 +00:00 committed by Tomasz Zawadzki
parent 7fade028eb
commit 7a660b30a4

View File

@ -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