提交 f2e18982 编写于 作者: F Fengguang Wu 提交者: Linus Torvalds

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: NFengguang Wu <wfg@mail.ustc.edu.cn>
Acked-by: NJens Axboe <jens.axboe@oracle.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 535443f5
......@@ -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);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册