diff options
author | Jens Axboe <jens.axboe@oracle.com> | 2009-06-30 09:34:12 +0200 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2009-07-01 10:56:25 +0200 |
commit | 6118b70b3a0b4c583439bb77600194c82f220ce3 (patch) | |
tree | 6966f1b059f1bdadc0d679067796d9b4bf9a22c3 /block/blk-core.c | |
parent | cfq-iosched: move cfqq initialization out of cfq_find_alloc_queue() (diff) | |
download | linux-6118b70b3a0b4c583439bb77600194c82f220ce3.tar.xz linux-6118b70b3a0b4c583439bb77600194c82f220ce3.zip |
cfq-iosched: get rid of the need for __GFP_NOFAIL in cfq_find_alloc_queue()
Setup an emergency fallback cfqq that we allocate at IO scheduler init
time. If the slab allocation fails in cfq_find_alloc_queue(), we'll just
punt IO to that cfqq instead. This ensures that cfq_find_alloc_queue()
never fails without having to ensure free memory.
On cfqq lookup, always try to allocate a new cfqq if the given cfq io
context has the oom_cfqq assigned. This ensures that we only temporarily
punt to this shared queue.
Reviewed-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'block/blk-core.c')
0 files changed, 0 insertions, 0 deletions