at v3.6-rc3 74 lines 2.9 kB view raw
1Queue sysfs files 2================= 3 4This text file will detail the queue files that are located in the sysfs tree 5for each block device. Note that stacked devices typically do not export 6any settings, since their queue merely functions are a remapping target. 7These files are the ones found in the /sys/block/xxx/queue/ directory. 8 9Files denoted with a RO postfix are readonly and the RW postfix means 10read-write. 11 12hw_sector_size (RO) 13------------------- 14This is the hardware sector size of the device, in bytes. 15 16max_hw_sectors_kb (RO) 17---------------------- 18This is the maximum number of kilobytes supported in a single data transfer. 19 20max_sectors_kb (RW) 21------------------- 22This is the maximum number of kilobytes that the block layer will allow 23for a filesystem request. Must be smaller than or equal to the maximum 24size allowed by the hardware. 25 26nomerges (RW) 27------------- 28This enables the user to disable the lookup logic involved with IO 29merging requests in the block layer. By default (0) all merges are 30enabled. When set to 1 only simple one-hit merges will be tried. When 31set to 2 no merge algorithms will be tried (including one-hit or more 32complex tree/hash lookups). 33 34nr_requests (RW) 35---------------- 36This controls how many requests may be allocated in the block layer for 37read or write requests. Note that the total allocated number may be twice 38this amount, since it applies only to reads or writes (not the accumulated 39sum). 40 41To avoid priority inversion through request starvation, a request 42queue maintains a separate request pool per each cgroup when 43CONFIG_BLK_CGROUP is enabled, and this parameter applies to each such 44per-block-cgroup request pool. IOW, if there are N block cgroups, 45each request queue may have upto N request pools, each independently 46regulated by nr_requests. 47 48read_ahead_kb (RW) 49------------------ 50Maximum number of kilobytes to read-ahead for filesystems on this block 51device. 52 53rq_affinity (RW) 54---------------- 55If this option is '1', the block layer will migrate request completions to the 56cpu "group" that originally submitted the request. For some workloads this 57provides a significant reduction in CPU cycles due to caching effects. 58 59For storage configurations that need to maximize distribution of completion 60processing setting this option to '2' forces the completion to run on the 61requesting cpu (bypassing the "group" aggregation logic). 62 63scheduler (RW) 64-------------- 65When read, this file will display the current and available IO schedulers 66for this block device. The currently active IO scheduler will be enclosed 67in [] brackets. Writing an IO scheduler name to this file will switch 68control of this block device to that new IO scheduler. Note that writing 69an IO scheduler name to this file will attempt to load that IO scheduler 70module, if it isn't already present in the system. 71 72 73 74Jens Axboe <jens.axboe@oracle.com>, February 2009