如何在块设备驱动程序中禁用此功能? 我的意思是:正如在下面的文档中提到的,我想将该“标志”的值设置为2.我该怎么做?最好在块设备驱动程序代码中。如何禁用块设备驱动程序中的请求合并?
What: /sys/block/<disk>/queue/nomerges
Date: January 2010
Contact:
Description:
Standard I/O elevator operations include attempts to
merge contiguous I/Os. For known random I/O loads these
attempts will always fail and result in extra cycles
being spent in the kernel. This allows one to turn off
this behavior on one of two ways: When set to 1, complex
merge checks are disabled, but the simple one-shot merges
with the previous I/O request are enabled. When set to 2,
all merge tries are disabled. The default value is 0 -
which enables all types of merge tries.
搜索内核树QUEUE_FLAG_NOMERGES。当它设置为2时,sysfs将在请求队列中设置此标志。 –
为什么要禁用它?如果您的驱动程序在合并的请求中无法正常工作,则它已损坏。 –
是的,我知道它已经坏了。我正在修复它。这就是为什么我想禁用请求合并。我怀疑网络延迟与它有关。 – hebbo