mbox

[PULL,v2,1.0] usb patch queue

Message ID 1321892148-16835-1-git-send-email-kraxel@redhat.com
State New
Headers show

Pull-request

git://git.kraxel.org/qemu usb.31

Message

Gerd Hoffmann Nov. 21, 2011, 4:15 p.m. UTC
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(-)

Comments

Anthony Liguori Nov. 22, 2011, 12:20 a.m. UTC | #1
On 11/21/2011 10:15 AM, Gerd Hoffmann wrote:
>    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.

Pulled.  Thanks.

Regards,

Anthony Liguori

>
> 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(-)
>
>