Skip to content
Snippets Groups Projects
  • Jeffle Xu's avatar
    block: fix potential IO hang when turning off io_poll · 6b09b4d3
    Jeffle Xu authored
    
    QUEUE_FLAG_POLL flag will be cleared when turning off 'io_poll', while
    at that moment there may be IOs stuck in hw queue uncompleted. The
    following polling routine won't help reap these IOs, since blk_poll()
    will return immediately because of cleared QUEUE_FLAG_POLL flag. Thus
    these IOs will hang until they finnaly time out. The hang out can be
    observed by 'fio --engine=io_uring iodepth=1', while turning off
    'io_poll' at the same time.
    
    To fix this, freeze and flush the request queue first when turning off
    'io_poll'.
    
    Signed-off-by: default avatarJeffle Xu <jefflexu@linux.alibaba.com>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    6b09b4d3
Code owners
Assign users and groups as approvers for specific file changes. Learn more.