diff options
author | Jens Axboe <jaxboe@fusionio.com> | 2011-04-15 15:49:07 +0200 |
---|---|---|
committer | Jens Axboe <jaxboe@fusionio.com> | 2011-04-15 15:49:07 +0200 |
commit | f6603783f9f099bf7a83b3f6c689bbbf74f0e96e (patch) | |
tree | 450065f77e95b6cd0eee13c9d8f721016be79839 /include | |
parent | 88b996cd0652280cc9b9fc70008fda15f14175e1 (diff) | |
download | linux-3.10-f6603783f9f099bf7a83b3f6c689bbbf74f0e96e.tar.gz linux-3.10-f6603783f9f099bf7a83b3f6c689bbbf74f0e96e.tar.bz2 linux-3.10-f6603783f9f099bf7a83b3f6c689bbbf74f0e96e.zip |
block: only force kblockd unplugging from the schedule() path
For the explicit unplugging, we'd prefer to kick things off
immediately and not pay the penalty of the latency to switch
to kblockd. So let blk_finish_plug() do the run inline, while
the implicit-on-schedule-out unplug will punt to kblockd.
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/blkdev.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index ffe48ff318f..1c76506fcf1 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -865,14 +865,14 @@ struct blk_plug { extern void blk_start_plug(struct blk_plug *); extern void blk_finish_plug(struct blk_plug *); -extern void blk_flush_plug_list(struct blk_plug *); +extern void blk_flush_plug_list(struct blk_plug *, bool); static inline void blk_flush_plug(struct task_struct *tsk) { struct blk_plug *plug = tsk->plug; if (plug) - blk_flush_plug_list(plug); + blk_flush_plug_list(plug, true); } static inline bool blk_needs_flush_plug(struct task_struct *tsk) |