docs: block: null_blk: enhance document style

Use proper ReST syntax for chapters. Add more information to enhance
standardization in the file and to make the rendering more homogeneous.
Add a SPDX identifier. Mark single-queue mode as deprecated.

Signed-off-by: André Almeida <andrealmeid@collabora.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
André Almeida 2019-09-11 11:46:34 -03:00 committed by Jens Axboe
parent 7c1ee704a1
commit 04c56957eb
1 changed files with 18 additions and 15 deletions

View File

@ -1,19 +1,16 @@
.. SPDX-License-Identifier: GPL-2.0
======================== ========================
Null block device driver Null block device driver
======================== ========================
1. Overview Overview
=========== ========
The null block device (/dev/nullb*) is used for benchmarking the various The null block device (``/dev/nullb*``) is used for benchmarking the various
block-layer implementations. It emulates a block device of X gigabytes in size. block-layer implementations. It emulates a block device of X gigabytes in size.
The following instances are possible: It does not execute any read/write operation, just mark them as complete in
the request queue. The following instances are possible:
Single-queue block-layer
- Request-based.
- Single submission queue per device.
- Implements IO scheduling algorithms (CFQ, Deadline, noop).
Multi-queue block-layer Multi-queue block-layer
@ -27,15 +24,15 @@ The following instances are possible:
All of them have a completion queue for each core in the system. All of them have a completion queue for each core in the system.
2. Module parameters applicable for all instances Module parameters
================================================= =================
queue_mode=[0-2]: Default: 2-Multi-queue queue_mode=[0-2]: Default: 2-Multi-queue
Selects which block-layer the module should instantiate with. Selects which block-layer the module should instantiate with.
= ============ = ============
0 Bio-based 0 Bio-based
1 Single-queue 1 Single-queue (deprecated)
2 Multi-queue 2 Multi-queue
= ============ = ============
@ -67,7 +64,7 @@ irqmode=[0-2]: Default: 1-Soft-irq
completion_nsec=[ns]: Default: 10,000ns completion_nsec=[ns]: Default: 10,000ns
Combined with irqmode=2 (timer). The time each completion event must wait. Combined with irqmode=2 (timer). The time each completion event must wait.
submit_queues=[1..nr_cpus]: submit_queues=[1..nr_cpus]: Default: 1
The number of submission queues attached to the device driver. If unset, it The number of submission queues attached to the device driver. If unset, it
defaults to 1. For multi-queue, it is ignored when use_per_node_hctx module defaults to 1. For multi-queue, it is ignored when use_per_node_hctx module
parameter is 1. parameter is 1.
@ -75,9 +72,11 @@ submit_queues=[1..nr_cpus]:
hw_queue_depth=[0..qdepth]: Default: 64 hw_queue_depth=[0..qdepth]: Default: 64
The hardware queue depth of the device. The hardware queue depth of the device.
III: Multi-queue specific parameters Multi-queue specific parameters
-------------------------------
use_per_node_hctx=[0/1]: Default: 0 use_per_node_hctx=[0/1]: Default: 0
Number of hardware context queues.
= ===================================================================== = =====================================================================
0 The number of submit queues are set to the value of the submit_queues 0 The number of submit queues are set to the value of the submit_queues
@ -87,6 +86,7 @@ use_per_node_hctx=[0/1]: Default: 0
= ===================================================================== = =====================================================================
no_sched=[0/1]: Default: 0 no_sched=[0/1]: Default: 0
Enable/disable the io scheduler.
= ====================================== = ======================================
0 nullb* use default blk-mq io scheduler 0 nullb* use default blk-mq io scheduler
@ -94,6 +94,7 @@ no_sched=[0/1]: Default: 0
= ====================================== = ======================================
blocking=[0/1]: Default: 0 blocking=[0/1]: Default: 0
Blocking behavior of the request queue.
= =============================================================== = ===============================================================
0 Register as a non-blocking blk-mq driver device. 0 Register as a non-blocking blk-mq driver device.
@ -103,6 +104,7 @@ blocking=[0/1]: Default: 0
= =============================================================== = ===============================================================
shared_tags=[0/1]: Default: 0 shared_tags=[0/1]: Default: 0
Sharing tags between devices.
= ================================================================ = ================================================================
0 Tag set is not shared. 0 Tag set is not shared.
@ -111,6 +113,7 @@ shared_tags=[0/1]: Default: 0
= ================================================================ = ================================================================
zoned=[0/1]: Default: 0 zoned=[0/1]: Default: 0
Device is a random-access or a zoned block device.
= ====================================================================== = ======================================================================
0 Block device is exposed as a random-access block device. 0 Block device is exposed as a random-access block device.