Skip to content
  • Warner Losh's avatar
    mps(4): Fix unmatched devq release. · a10253cf
    Warner Losh authored
    Port 9781c28c and a8837c77 to the mps driver.  Before this
    change devq was frozen only if some command was sent to the target after
    reset started, but release was called always.  This change freezes the
    devq immediately, leaving mprsas_action_scsiio() check only to cover
    race condition due to different lock devq use.
    
    This should also avoid unnecessary requeue of the commands, creating
    additional log noise and confusing some broken apps. It also avoids a
    'busy' requeue of I/Os failing when we're doing recovery that takes
    longer than the normal busy timeout. These I/Os failing can lead to
    filesystems being unmounted in the force unmount case for I/O errors.
    
    Sponsored by:		Netflix
    Reviewed by:		mav
    Differential Revision:	https://reviews.freebsd.org/D33228
    a10253cf