ugen: question about receiving USBD_INTERRUPTED from
	usbd_bulk_transfer
    Raaf 
    freebsd at luna.afraid.org
       
    Mon Jan 23 14:40:47 PST 2006
    
    
  
Lonnie Mendez wrote:
> 
>    Hello list.  I've been working on/off on a usb host backend for qemu
> and have run into a snag with ugen.  So far it is working well with
> devices that have interrupt endpoints like hid keypads/keyboards and a
> gps device.  I'm seeing no problems with control endpoint trasfers
> either.  The problem I'm encountering happens when attempting bulk IN
> transfers on two different mass storage devices.  The device is sent the
> first mass storage command which succeeds and is then followed by a bulk
> IN request.  Sometimes the first bulk IN request will return data, but
> then the second bulk IN request fails with EINTR.  I've tried this with
> FreeBSD 6.0 release and recently with 7.0 current.  I think the error
> returned is coming from the below code:
> 
> 
> http://fxr.watson.org/fxr/source//dev/usb/usbdi_util.c#L459
> 
>    The patch for qemu I'm using is located here: (patch-bsdusb.patch)
> http://gnome.dnsalias.net/patches/
> 
>    Both the qemu message output (transfer data log) and kernel messages
> with hw.usb.debug and hw.usb.ugen.debug enabled are here:
> http://gnome.dnsalias.net/kernlog-659
> http://gnome.dnsalias.net/qemulog-659
> 
>    Can someone more familiar with the kernel please take a look?  Or can
> someone explain what receiving USBD_INTERRUPTED from this function would
> imply?  Thanks.
> 
Hi, looks like it's getting interrupted by a signal, see tsleep(9).
Maybe some alarm going off in the qemu code?
    
    
More information about the freebsd-usb
mailing list