SCSISoftUSB
Colin (478) 2433 posts |
In glue.c glue_DeviceReset at line 250 and glue_DoCommand at line 321 both return with irqs disabled regardless of the irq state when calling the functions. I can’t see that the SCSI specs require these functions to disable irqs so it looks like a bug to me. |
Rick Murray (539) 13850 posts |
Surely it would be the OS rather than the SCSI spec that dictates how IRQs are handled. |
Colin (478) 2433 posts |
The function is called in the SCSI driver interface. The actual command issued in the function is called and doesn’t finish before the function returns – the USB stuff happens in the background so its pointless for the function to return with a changed irq state for the USB stuff. It also seems odd to go to the effort of reading the entry state when it doesn’t matter. You could just switch irqs off on entry |
Sprow (202) 1158 posts |
Looks like a copy and paste fumble. I guess most of the time interrupts are disabled on entry anyway so nobody ever noticed (and I think CMHG preserves the CPSR on entry to the module, so they’d be restored on exit). If nobody complains in the next week or so, might as well change it. |