Problems with logout in qlt_free_session_done

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

There seem to be a few issues when trying to do a logout
qla_target.c:qlt_free_session_done in 4.19.41

1. When the logout timesout qla2x00_sp_timeout is called. This
function assumes sp->qpair is valid, but this isn't the case if mq is
not enabled

2. qla2x00_async_iocb_timeout also assumes that sp->qpair is valid.
Also only if qla24xx_async_abort_cmd() fails is sp->done() called,
sp->done in this case is qlt_logo_completion_handler() which will
never be called if qla24xx_async_abort_cmd() succeeds

3. qla24xx_async_abort_cmd() can lead to "scheduling while atomic" if
called from qla2x00_async_iocb_timeout. The wait parameter can be used
to alloc with GFP_ATOMIC

Please see diff https://www.quadstor.com/patches/srb-logout.diff
generated against 4.9.41

Regards,
Shivaram

-- 
Virtual Tape Library https://www.quadstor.com/virtual-tape-library.html
Storage Virtualization with VAAI
https://www.quadstor.com/storage-virtualization.html



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux