Hi,
This pull fixes SYNCRONIZE_CACHE handling in usb-storage code.
The SYNCRONIZE_CACHE scsi command is different from all other ones:
It doesn't transfer any data, but still doesn't complete instantly.
usb-storage failes to handle this case correctly, resulting in all sorts
of funky assert failures and segfaults when the guest writes to a
virtual usb stick and flushes stuff.
Patches 1-4 are minor cleanups for usb-storage (slighly improved scsi
request tracking). Patch 5 is the actual bugfix, which depends on the
cleanups.
Patches 6+7 are bonus fixes for Coverity-spotted issues which are
sitting in the usb patch queue for a while already.
The following changes since commit bc4268998d154b9b3cc86a7b6bd932cc974591c9:
x86: fix pcmpestrm and pcmpistrm (2011-11-19 13:51:27 +0000)
are available in the git repository at:
git://git.kraxel.org/qemu usb.31
Gerd Hoffmann (7):
usb-storage: move status debug message to usb_msd_send_status.
usb-storage: fill status in complete callback.
usb-storage: drop tag from device state.
usb-storage: drop result from device state.
usb-storage: don't try to send the status early.
ehci: add assert
usb-linux: fix /proc/bus/usb/devices scan
hw/usb-ehci.c | 1 +
hw/usb-msd.c | 65 ++++++++++++++++++++++++++++++--------------------------
usb-linux.c | 7 +++++-
3 files changed, 42 insertions(+), 31 deletions(-)