On Wed, 2016-10-26 at 08:52 -0700, James Bottomley wrote: > On Wed, 2016-10-26 at 08:42 -0700, Bart Van Assche wrote: > > Can you elaborate on this? Since the sense buffer is available in > > scsi_io_completion() and since that function already calls > > scsi_command_normalize_sense() this function seems like a good > > candidate to me to add retry logic for REQ_TYPE_BLOCK_PC requests. > > UAs are used to signal AENs to userspace control processes that use > BLOCK_PC, like CD changers, burners and scanners. If we eat UAs > inside scsi_io_completion(), we could potentially break any userspace > control system that relies on AENs. Ignoring the SCSI error handler, the call sequence for reporting UAs to user space is as follows: scsi_softirq_done() -> scsi_decide_disposition() -> scsi_check_sense() -> scsi_report_sense(). This means that scsi_report_sense() is called before scsi_io_completion() is called. I think this means that what scsi_io_completion() decides cannot affect UA reporting to user space? Bart.��.n��������+%������w��{.n�����{������ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f