• Jens Axboe's avatar
    blk-mq: implement hybrid poll mode for sync O_DIRECT · 06426adf
    Jens Axboe authored
    This patch enables a hybrid polling mode. Instead of polling after IO
    submission, we can induce an artificial delay, and then poll after that.
    For example, if the IO is presumed to complete in 8 usecs from now, we
    can sleep for 4 usecs, wake up, and then do our polling. This still puts
    a sleep/wakeup cycle in the IO path, but instead of the wakeup happening
    after the IO has completed, it'll happen before. With this hybrid
    scheme, we can achieve big latency reductions while still using the same
    (or less) amount of CPU.
    Signed-off-by: default avatarJens Axboe <axboe@fb.com>
    Tested-By: default avatarStephen Bates <sbates@raithlin.com>
    Reviewed-By: default avatarStephen Bates <sbates@raithlin.com>
blk-sysfs.c 21.8 KB