This series ultimately permits relaxed ordering of USB mass-storage packets from the host, as allowed by the usbmassbulk 1.0 spec, but not usually seen in drivers. AIX drivers do require this ordering.
Since v1: https://lore.kernel.org/qemu-devel/20241212091323.1442995-1-npig...@gmail.com/ - Rebased on upstream with one patch from the series merged. - Fixed a few build warnings on 32-bit hosts. Thanks, Nick Nicholas Piggin (10): usb/msd: Split in and out packet handling usb/msd: Ensure packet structure layout is correct usb/msd: Improved handling of mass storage reset usb/msd: Improve packet validation error logging usb/msd: Allow CBW packet size greater than 31 usb/msd: Split async packet tracking into data and csw usb/msd: Add some additional assertions usb/msd: Rename mode to cbw_state, and tweak names usb/msd: Permit a DATA-IN or CSW packet before CBW packet usb/msd: Add more tracing include/hw/usb/msd.h | 18 +- hw/usb/dev-storage.c | 510 ++++++++++++++++++++++++++++--------------- hw/usb/trace-events | 9 +- 3 files changed, 357 insertions(+), 180 deletions(-) -- 2.47.1