On 2022-10-07 06:55:15 -0400, Paolo Bonzini wrote: > Il gio 6 ott 2022, 15:25 Venu Busireddy <venu.busire...@oracle.com> ha > scritto: > > > I do see that the Solaris driver does send the 0x1a command during > > the initialization, perhaps (?) seeking the value of UA_INTLCK_CTRL. > > Since QEMU currently does not support it, QEMU sends back a > > key/asc/ascq=0x05/0x24/0x00 response, indicating that 0x1a is an Illegal > > Request. > > > What is your QEMU command line and what is the full CDB (apart from 0x1a)? > > I am assuming that the Solaris driver does not handle that > > response well (I still don't have access to the source code to verify > > that), confuses itself about the value of UA_INTLCK_CTRL, and hence does > > not handle the response to the REPORT_LUNS command correctly. > > > No this has nothing to do with what's happening. The most likely reason for > the bug IMO is simple: the event is causing the driver to send the REPORT > LUNS command, but it does so in a way that does not handle the unit > attention when it is reported.
I had a developer with access to the Solaris code review how the response to REPORT_LUNS is being handled. And they do see that the response to REPORT_LUNS is mishandled. With the fix proposed in v4, and fixing the handling of REPORT_LUNS on the Solaris side, we believe we will have a complete working solution. Therefore, I believe we can conclude this thread on v3. Do you agree? Venu > > Maybe the > > Solaris driver assumes that QEMU will retain the unit attention condition > > (UA_INTLCK_CTRL = 10b?), and will respond with a REPORTED_LUNS_CHANGED > > for a subsequent command? > > > > Based on your confirmation that we want to handle the REPORT_LUNS command > > as if UA_INTLCK_CTRL is set to 0, I will proceed with the assumption > > that the Solaris driver is at fault, and will work with the Solaris > > driver folks. > > > > In the meantime, as you suggested, I will post v4 with the bus unit > > attention mechanism implemented. We still need that. > > > > Venu > > > >