On 10/31/25 5:39 AM, Nilay Shroff wrote:
On 10/30/25 10:54 PM, Bart Van Assche wrote:
Fix this by removing the blk_mq_freeze_queue() / blk_mq_unfreeze_queue() calls from the store callbacks that do not strictly need these callbacks. This patch may cause a small delay in applying the new settings.
This patch affects the following sysfs attributes:
- io_poll_delay
- io_timeout
- nomerges
- read_ahead_kb
- rq_affinity
I see that io_timeout, nomerges and rq_affinity are all accessed during I/O hotpath. So IMO for these attributes we still need to freeze the queue before updating those parameters. The io_timeout and nomerges are accessed during I/O submission and rq_affinity is accessed during I/O completion.
Yes, several of the parameters affected by my patch are used in the hot path. But changing these parameters while I/O is in progress can't cause an I/O error. That's why I don't think that the queue needs to be frozen while these parameters are modified.
Bart.