mirror of https://gitee.com/openkylin/linux.git
[PATCH] CONFIG_BLOCK: blk_congestion_wait() fix
Don't just do nothing: it'll cause busywaits all over writeback and page reclaim. For now, take a fixed-length nap. Will improve when NFS starts waking up throttled processes. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
5e6d12b2c8
commit
bcfd8d3615
|
@ -1,6 +1,7 @@
|
|||
#ifndef _LINUX_BLKDEV_H
|
||||
#define _LINUX_BLKDEV_H
|
||||
|
||||
#include <linux/sched.h>
|
||||
#include <linux/major.h>
|
||||
#include <linux/genhd.h>
|
||||
#include <linux/list.h>
|
||||
|
@ -848,7 +849,7 @@ void kblockd_flush(void);
|
|||
|
||||
static inline long blk_congestion_wait(int rw, long timeout)
|
||||
{
|
||||
return timeout;
|
||||
return io_schedule_timeout(timeout);
|
||||
}
|
||||
|
||||
static inline long nr_blockdev_pages(void)
|
||||
|
@ -856,7 +857,9 @@ static inline long nr_blockdev_pages(void)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static inline void exit_io_context(void) {}
|
||||
static inline void exit_io_context(void)
|
||||
{
|
||||
}
|
||||
|
||||
#endif /* CONFIG_BLOCK */
|
||||
|
||||
|
|
Loading…
Reference in New Issue