Yang Yang ffa772cfe9 kyber: introduce kyber_depth_updated()
Hang occurs when user changes the scheduler queue depth, by writing to
the 'nr_requests' sysfs file of that device.

The details of the environment that we found the problem are as follows:
  an eMMC block device
  total driver tags: 16
  default queue_depth: 32
  kqd->async_depth initialized in kyber_init_sched() with queue_depth=32

Then we change queue_depth to 256, by writing to the 'nr_requests' sysfs
file. But kqd->async_depth don't be updated after queue_depth changes.
Now the value of async depth is too small for queue_depth=256, this may
cause hang.

This patch introduces kyber_depth_updated(), so that kyber can update
async depth when queue depth changes.

Signed-off-by: Yang Yang <yang.yang@vivo.com>
Reviewed-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2021-02-22 12:37:57 -07:00
..
2021-02-21 11:02:48 -08:00
2020-08-18 07:48:08 -07:00
2021-02-21 11:02:48 -08:00
2021-02-21 11:02:48 -08:00
2021-01-10 12:53:08 -08:00
2020-09-03 15:20:47 -06:00
2020-03-17 20:55:21 +01:00
2020-05-29 16:30:39 -06:00
2020-09-23 09:18:13 -06:00
2021-02-21 11:02:48 -08:00
2020-01-06 20:59:04 -07:00