readahead: remove the limit max_sectors_kb imposed on max_readahead_kb
Remove the size limit max_sectors_kb imposed on max_readahead_kb. The size restriction is unreasonable. Especially when max_sectors_kb cannot grow larger than max_hw_sectors_kb, which can be rather small for some disk drives. Cc: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: Fengguang Wu <wfg@mail.ustc.edu.cn> Acked-by: Jens Axboe <jens.axboe@oracle.com> Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
535443f515
Коммит
f2e189827a
|
@ -3928,7 +3928,6 @@ queue_max_sectors_store(struct request_queue *q, const char *page, size_t count)
|
|||
max_hw_sectors_kb = q->max_hw_sectors >> 1,
|
||||
page_kb = 1 << (PAGE_CACHE_SHIFT - 10);
|
||||
ssize_t ret = queue_var_store(&max_sectors_kb, page, count);
|
||||
int ra_kb;
|
||||
|
||||
if (max_sectors_kb > max_hw_sectors_kb || max_sectors_kb < page_kb)
|
||||
return -EINVAL;
|
||||
|
@ -3937,14 +3936,6 @@ queue_max_sectors_store(struct request_queue *q, const char *page, size_t count)
|
|||
* values synchronously:
|
||||
*/
|
||||
spin_lock_irq(q->queue_lock);
|
||||
/*
|
||||
* Trim readahead window as well, if necessary:
|
||||
*/
|
||||
ra_kb = q->backing_dev_info.ra_pages << (PAGE_CACHE_SHIFT - 10);
|
||||
if (ra_kb > max_sectors_kb)
|
||||
q->backing_dev_info.ra_pages =
|
||||
max_sectors_kb >> (PAGE_CACHE_SHIFT - 10);
|
||||
|
||||
q->max_sectors = max_sectors_kb << 1;
|
||||
spin_unlock_irq(q->queue_lock);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче