diff options
Diffstat (limited to 'Documentation/block')
-rw-r--r-- | Documentation/block/biodoc.txt | 11 | ||||
-rw-r--r-- | Documentation/block/queue-sysfs.txt | 63 |
2 files changed, 69 insertions, 5 deletions
diff --git a/Documentation/block/biodoc.txt b/Documentation/block/biodoc.txt index 3c5434c83daf..ecad6ee75705 100644 --- a/Documentation/block/biodoc.txt +++ b/Documentation/block/biodoc.txt | |||
@@ -186,8 +186,9 @@ a virtual address mapping (unlike the earlier scheme of virtual address | |||
186 | do not have a corresponding kernel virtual address space mapping) and | 186 | do not have a corresponding kernel virtual address space mapping) and |
187 | low-memory pages. | 187 | low-memory pages. |
188 | 188 | ||
189 | Note: Please refer to DMA-mapping.txt for a discussion on PCI high mem DMA | 189 | Note: Please refer to Documentation/PCI/PCI-DMA-mapping.txt for a discussion |
190 | aspects and mapping of scatter gather lists, and support for 64 bit PCI. | 190 | on PCI high mem DMA aspects and mapping of scatter gather lists, and support |
191 | for 64 bit PCI. | ||
191 | 192 | ||
192 | Special handling is required only for cases where i/o needs to happen on | 193 | Special handling is required only for cases where i/o needs to happen on |
193 | pages at physical memory addresses beyond what the device can support. In these | 194 | pages at physical memory addresses beyond what the device can support. In these |
@@ -953,14 +954,14 @@ elevator_allow_merge_fn called whenever the block layer determines | |||
953 | results in some sort of conflict internally, | 954 | results in some sort of conflict internally, |
954 | this hook allows it to do that. | 955 | this hook allows it to do that. |
955 | 956 | ||
956 | elevator_dispatch_fn fills the dispatch queue with ready requests. | 957 | elevator_dispatch_fn* fills the dispatch queue with ready requests. |
957 | I/O schedulers are free to postpone requests by | 958 | I/O schedulers are free to postpone requests by |
958 | not filling the dispatch queue unless @force | 959 | not filling the dispatch queue unless @force |
959 | is non-zero. Once dispatched, I/O schedulers | 960 | is non-zero. Once dispatched, I/O schedulers |
960 | are not allowed to manipulate the requests - | 961 | are not allowed to manipulate the requests - |
961 | they belong to generic dispatch queue. | 962 | they belong to generic dispatch queue. |
962 | 963 | ||
963 | elevator_add_req_fn called to add a new request into the scheduler | 964 | elevator_add_req_fn* called to add a new request into the scheduler |
964 | 965 | ||
965 | elevator_queue_empty_fn returns true if the merge queue is empty. | 966 | elevator_queue_empty_fn returns true if the merge queue is empty. |
966 | Drivers shouldn't use this, but rather check | 967 | Drivers shouldn't use this, but rather check |
@@ -990,7 +991,7 @@ elevator_activate_req_fn Called when device driver first sees a request. | |||
990 | elevator_deactivate_req_fn Called when device driver decides to delay | 991 | elevator_deactivate_req_fn Called when device driver decides to delay |
991 | a request by requeueing it. | 992 | a request by requeueing it. |
992 | 993 | ||
993 | elevator_init_fn | 994 | elevator_init_fn* |
994 | elevator_exit_fn Allocate and free any elevator specific storage | 995 | elevator_exit_fn Allocate and free any elevator specific storage |
995 | for a queue. | 996 | for a queue. |
996 | 997 | ||
diff --git a/Documentation/block/queue-sysfs.txt b/Documentation/block/queue-sysfs.txt new file mode 100644 index 000000000000..e164403f60e1 --- /dev/null +++ b/Documentation/block/queue-sysfs.txt | |||
@@ -0,0 +1,63 @@ | |||
1 | Queue sysfs files | ||
2 | ================= | ||
3 | |||
4 | This text file will detail the queue files that are located in the sysfs tree | ||
5 | for each block device. Note that stacked devices typically do not export | ||
6 | any settings, since their queue merely functions are a remapping target. | ||
7 | These files are the ones found in the /sys/block/xxx/queue/ directory. | ||
8 | |||
9 | Files denoted with a RO postfix are readonly and the RW postfix means | ||
10 | read-write. | ||
11 | |||
12 | hw_sector_size (RO) | ||
13 | ------------------- | ||
14 | This is the hardware sector size of the device, in bytes. | ||
15 | |||
16 | max_hw_sectors_kb (RO) | ||
17 | ---------------------- | ||
18 | This is the maximum number of kilobytes supported in a single data transfer. | ||
19 | |||
20 | max_sectors_kb (RW) | ||
21 | ------------------- | ||
22 | This is the maximum number of kilobytes that the block layer will allow | ||
23 | for a filesystem request. Must be smaller than or equal to the maximum | ||
24 | size allowed by the hardware. | ||
25 | |||
26 | nomerges (RW) | ||
27 | ------------- | ||
28 | This enables the user to disable the lookup logic involved with IO merging | ||
29 | requests in the block layer. Merging may still occur through a direct | ||
30 | 1-hit cache, since that comes for (almost) free. The IO scheduler will not | ||
31 | waste cycles doing tree/hash lookups for merges if nomerges is 1. Defaults | ||
32 | to 0, enabling all merges. | ||
33 | |||
34 | nr_requests (RW) | ||
35 | ---------------- | ||
36 | This controls how many requests may be allocated in the block layer for | ||
37 | read or write requests. Note that the total allocated number may be twice | ||
38 | this amount, since it applies only to reads or writes (not the accumulated | ||
39 | sum). | ||
40 | |||
41 | read_ahead_kb (RW) | ||
42 | ------------------ | ||
43 | Maximum number of kilobytes to read-ahead for filesystems on this block | ||
44 | device. | ||
45 | |||
46 | rq_affinity (RW) | ||
47 | ---------------- | ||
48 | If this option is enabled, the block layer will migrate request completions | ||
49 | to the CPU that originally submitted the request. For some workloads | ||
50 | this provides a significant reduction in CPU cycles due to caching effects. | ||
51 | |||
52 | scheduler (RW) | ||
53 | -------------- | ||
54 | When read, this file will display the current and available IO schedulers | ||
55 | for this block device. The currently active IO scheduler will be enclosed | ||
56 | in [] brackets. Writing an IO scheduler name to this file will switch | ||
57 | control of this block device to that new IO scheduler. Note that writing | ||
58 | an IO scheduler name to this file will attempt to load that IO scheduler | ||
59 | module, if it isn't already present in the system. | ||
60 | |||
61 | |||
62 | |||
63 | Jens Axboe <jens.axboe@oracle.com>, February 2009 | ||