• Jens Axboe's avatar
    ide: ensure atapi sense request aren't preempted · 9a6d5488
    Jens Axboe authored
    There's an issue with how sense requests are handled in IDE. If ide-cd
    encounters an error, it queues a sense request. With how IDE request
    handling is done, this is the next request we need to handle. But it's
    impossible to guarantee this, as another request could come in between
    the sense being queued, and ->queue_rq() being run and handling it. If
    that request ALSO fails, then we attempt to doubly queue the single
    sense request we have.
    
    Since we only support one active request at the time, defer request
    processing when a sense request is queued.
    
    Fixes: 60033520 "ide: convert to blk-mq"
    Reported-by: default avatarHe Zhe <zhe.he@windriver.com>
    Tested-by: default avatarHe Zhe <zhe.he@windriver.com>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    9a6d5488
ide.h 46.5 KB