From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:53544) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RSU6X-000395-5u for qemu-devel@nongnu.org; Mon, 21 Nov 2011 08:40:17 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RSU6R-0000ie-8P for qemu-devel@nongnu.org; Mon, 21 Nov 2011 08:40:13 -0500 Received: from mx1.redhat.com ([209.132.183.28]:59123) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RSU6Q-0000ft-S9 for qemu-devel@nongnu.org; Mon, 21 Nov 2011 08:40:07 -0500 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id pALDe5X6006707 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Mon, 21 Nov 2011 08:40:05 -0500 From: Gerd Hoffmann Date: Mon, 21 Nov 2011 14:39:54 +0100 Message-Id: <1321882802-3337-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PULL 1.0] usb patch queue (with scsi bits). List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: pbonzini@redhat.com, Gerd Hoffmann Hi, This pull fixes SYNCRONIZE_CACHE handling in both scsi and usb code. The SYNCRONIZE_CACHE scsi command is different from all other ones: It doesn't transfer any data, but still doesn't complete instantly. Both scsi-disk and usb-storage failed 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). Also Patch 6 depends on these. Patch 5 is the actual bugfix for scsi-disk. Patch 6 is the actual bugfix for usb-storage. Patches 7+8 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.30 Gerd Hoffmann (8): 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. scsi-disk: don't call scsi_req_complete twice. usb-storage: don't try to send the status early. ehci: add assert usb-linux: fix /proc/bus/usb/devices scan hw/scsi-disk.c | 5 ++- hw/usb-ehci.c | 1 + hw/usb-msd.c | 65 ++++++++++++++++++++++++++++++------------------------- usb-linux.c | 7 +++++- 4 files changed, 45 insertions(+), 33 deletions(-)