• Jens Axboe's avatar
    block: move queue run on unplug to kblockd · f4af3c3d
    Jens Axboe authored
    There are worries that we are now consuming a lot more stack in
    some cases, since we potentially call into IO dispatch from
    schedule() or io_schedule(). We can reduce this problem by moving
    the running of the queue to kblockd, like the old plugging scheme
    did as well.
    
    This may or may not be a good idea from a performance perspective,
    depending on how many tasks have queue plugs running at the same
    time. For even the slightly contended case, doing just a single
    queue run from kblockd instead of multiple runs directly from the
    unpluggers will be faster.
    Signed-off-by: default avatarJens Axboe <jaxboe@fusionio.com>
    f4af3c3d
blk-core.c 72.8 KB