Re: [Qemu-devel] [PATCH] usb: queue can have async packets too

2012-03-06 Thread Erik Rull



On March 5, 2012 at 11:22 AM Erik Rull erik.r...@rdsoftware.de wrote:




 On March 2, 2012 at 3:15 PM Gerd Hoffmann kra...@redhat.com wrote:

   But: This + the latest GIT master causes again my problems with the
 
  With or without this one:
 
  commit 5ca2358ac895139e624881c5b3bf3095d3cc4515
  Date:   Wed Feb 29 09:11:00 2012 -0600
 
  Merge remote-tracking branch 'kraxel/usb.39' into staging
 
  ?
 
  cheers,
Gerd
 
 


 Hi Gerd,

 I'm really sorry, but after rechecking my versions that worked (doing git
 checkouts there) I don't get it working again :-(
 I have no idea what's wrong now...

 The startup issue is existing now again on all versions I tested - maybe
 this was just a side effect during the bisect?

 So finally - with the current master + your patch the assertion failed is
 fixed but the startup issue seems to remain.

 Any ideas how I could help you debugging this issue?
 I tested it on Windows XP and a plain vanilla kernel 2.6.29.12 linux
system
 - both show the same behavior.

 Attached the usb-filtered-dmesg from my guest linux booting up.
 If you need further information, please let me know!
 The usb 1-1 is my USB msd that gets not detected properly...

 Thanks a lot!

 Best regards,

 Erik

It's getting pretty ugly. Today I wanted to test the executable with
enabled tracing - and it worked. I reconfigured to nop-tracing and it
still works - but only on Linux guest side, the Windows guest still has
some issues - with or without tracing enabled.

Would the usb-tracing output help you to find a possible source of the
problem? The logfiles are pretty large (0.5 and 1.1 MB gzip! / uncompressed
~ 70 / 140 MB).

Best regards,

Erik








Re: [Qemu-devel] [PATCH] usb: queue can have async packets too

2012-03-05 Thread Erik Rull



On March 2, 2012 at 3:15 PM Gerd Hoffmann kra...@redhat.com wrote:

  But: This + the latest GIT master causes again my problems with the

 With or without this one:

 commit 5ca2358ac895139e624881c5b3bf3095d3cc4515
 Date:   Wed Feb 29 09:11:00 2012 -0600

 Merge remote-tracking branch 'kraxel/usb.39' into staging

 ?

 cheers,
   Gerd




Hi Gerd,

I'm really sorry, but after rechecking my versions that worked (doing git
checkouts there) I don't get it working again :-(
I have no idea what's wrong now...

The startup issue is existing now again on all versions I tested - maybe
this was just a side effect during the bisect?

So finally - with the current master + your patch the assertion failed is
fixed but the startup issue seems to remain.

Any ideas how I could help you debugging this issue?
I tested it on Windows XP and a plain vanilla kernel 2.6.29.12 linux system
- both show the same behavior.

Attached the usb-filtered-dmesg from my guest linux booting up.
If you need further information, please let me know!
The usb 1-1 is my USB msd that gets not detected properly...

Thanks a lot!

Best regards,

Erik

172.17.17.183 ~ # dmesg | grep usb -i
[0.151096] usbcore: registered new interface driver usbfs
[0.151591] usbcore: registered new interface driver hub
[0.152031] usbcore: registered new device driver usb
[0.841074] usbmon: debugfs is not available
[0.841506] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[0.843518] ehci_hcd :00:1d.7: new USB bus registered, assigned bus
number 1
[1.170948] ehci_hcd :00:1d.7: USB 2.0 started, EHCI 1.00
[1.171532] usb usb1: configuration #1 chosen from 1 choice
[1.172080] hub 1-0:1.0: USB hub found
[1.173100] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[1.173602] uhci_hcd: USB Universal Host Controller Interface driver
[1.175625] uhci_hcd :00:1d.0: new USB bus registered, assigned bus
number 2
[1.177092] usb usb2: configuration #1 chosen from 1 choice
[1.177599] hub 2-0:1.0: USB hub found
[1.180072] uhci_hcd :00:1d.1: new USB bus registered, assigned bus
number 3
[1.181477] usb usb3: configuration #1 chosen from 1 choice
[1.182025] hub 3-0:1.0: USB hub found
[1.184472] uhci_hcd :00:1d.2: new USB bus registered, assigned bus
number 4
[1.185872] usb usb4: configuration #1 chosen from 1 choice
[1.186419] hub 4-0:1.0: USB hub found
[1.187396] Initializing USB Mass Storage driver...
[1.187876] usbcore: registered new interface driver usb-storage
[1.188392] USB Mass Storage support registered.
[1.188852] usbcore: registered new interface driver ums-datafab
[1.189394] usbcore: registered new interface driver ums-freecom
[1.189882] usbcore: registered new interface driver ums-isd200
[1.190415] usbcore: registered new interface driver ums-jumpshot
[1.190961] usbcore: registered new interface driver ums-sddr09
[1.191447] usbcore: registered new interface driver ums-sddr55
[1.192015] usbcore: registered new interface driver usbserial
[1.192506] USB Serial support registered for generic
[1.193031] usbcore: registered new interface driver usbserial_generic
[1.193510] usbserial: USB Serial Driver core
[1.194013] USB Serial support registered for cp210x
[1.194482] usbcore: registered new interface driver cp210x
[1.197268] USB Serial support registered for pl2303
[1.197741] usbcore: registered new interface driver pl2303
[1.198255] pl2303: Prolific PL2303 USB to serial adaptor driver
[1.206945] usbcore: registered new interface driver usbhid
[1.206945] usbhid: v2.6:USB HID core driver
[1.808963] usb 1-1: new high speed USB device using ehci_hcd and
address 2
[2.182204] usb 1-1: configuration #1 chosen from 1 choice
[2.183150] scsi2 : SCSI emulation for USB Mass Storage devices
[2.184084] usb-storage: device found at 2
[2.184085] usb-storage: waiting for device to settle before scanning
[2.545015] usb 2-2: new full speed USB device using uhci_hcd and
address 2
[2.895181] usb 2-2: configuration #1 chosen from 1 choice
[2.911124] input: QEMU 1.0.50 QEMU USB Tablet as
/devices/pci:00/:00:1d.0/usb2/2-2/2-2:1.0/input/input3
[2.912007] generic-usb 0003:0627:0001.0001: input: USB HID v0.01
Pointer [QEMU 1.0.50 QEMU USB Tablet] on usb-:00:1d.0-2/input0
[7.296026] usb 1-1: reset high speed USB device using ehci_hcd and
address 2
[7.531025] usb 1-1: reset high speed USB device using ehci_hcd and
address 2
[7.767025] usb 1-1: reset high speed USB device using ehci_hcd and
address 2
[8.003025] usb 1-1: reset high speed USB device using ehci_hcd and
address 2
[8.129208] usb-storage: device scan complete
172.17.17.183 ~ #



Re: [Qemu-devel] [PATCH] usb: queue can have async packets too

2012-03-02 Thread Erik Rull



On February 28, 2012 at 3:36 PM Gerd Hoffmann kra...@redhat.com wrote:

 Signed-off-by: Gerd Hoffmann kra...@redhat.com
 ---
  hw/usb.c |3 +++
  1 files changed, 3 insertions(+), 0 deletions(-)

 diff --git a/hw/usb.c b/hw/usb.c
 index 57fc5e3..fc41d62 100644
 --- a/hw/usb.c
 +++ b/hw/usb.c
 @@ -356,6 +356,9 @@ void usb_packet_complete(USBDevice *dev, USBPacket
*p)
 
  while (!QTAILQ_EMPTY(ep-queue)) {
  p = QTAILQ_FIRST(ep-queue);
 +if (p-state == USB_PACKET_ASYNC) {
 +break;
 +}
  assert(p-state == USB_PACKET_QUEUED);
  ret = usb_process_one(p);
  if (ret == USB_RET_ASYNC) {
 --
 1.7.1




Hi Gerd,

this fixes my issue.

But: This + the latest GIT master causes again my problems with the
incomplete routing of host devices if the devices are plugged in before
starting up the guest. They are marked with a yellow exclamation mark in
the XP device manager. If I plug them in later, they are working fine.

This was working before the commit that cause the assertion and is now not
working again.

Please have a look at that!

Best regards,

Erik



Re: [Qemu-devel] [PATCH] usb: queue can have async packets too

2012-03-02 Thread Gerd Hoffmann
 But: This + the latest GIT master causes again my problems with the

With or without this one:

commit 5ca2358ac895139e624881c5b3bf3095d3cc4515
Date:   Wed Feb 29 09:11:00 2012 -0600

Merge remote-tracking branch 'kraxel/usb.39' into staging

?

cheers,
  Gerd




[Qemu-devel] [PATCH] usb: queue can have async packets too

2012-02-28 Thread Gerd Hoffmann
Signed-off-by: Gerd Hoffmann kra...@redhat.com
---
 hw/usb.c |3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/hw/usb.c b/hw/usb.c
index 57fc5e3..fc41d62 100644
--- a/hw/usb.c
+++ b/hw/usb.c
@@ -356,6 +356,9 @@ void usb_packet_complete(USBDevice *dev, USBPacket *p)
 
 while (!QTAILQ_EMPTY(ep-queue)) {
 p = QTAILQ_FIRST(ep-queue);
+if (p-state == USB_PACKET_ASYNC) {
+break;
+}
 assert(p-state == USB_PACKET_QUEUED);
 ret = usb_process_one(p);
 if (ret == USB_RET_ASYNC) {
-- 
1.7.1