WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Re: [linux-usb-devel] Error recovery in Xen's paravirtualizi

To: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] Re: [linux-usb-devel] Error recovery in Xen's paravirtualizing USB driver for Linux
From: Harry Butterworth <harry@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 08 Dec 2005 15:59:50 +0000
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, linux-usb-devel@xxxxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 08 Dec 2005 16:00:45 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <Pine.LNX.4.44L0.0512081011030.4934-100000@xxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <Pine.LNX.4.44L0.0512081011030.4934-100000@xxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On Thu, 2005-12-08 at 10:20 -0500, Alan Stern wrote:
> On Wed, 7 Dec 2005, Harry Butterworth wrote:
> 
> > > Suspend/resume is liable to cause trouble.  For instance, what happens to 
> > > the various front-ends if the back-end decides to suspend a USB device?
> > 
> > I don't know.  Could you explain this scenario in more detail (imagine
> > that none of the 800 page USB spec sunk in when I read it :-).  What
> > should happen in this case?
> 
> Suspend and reset are both troublemakers, because they act not on a device 
> but on the device's parent hub.  However resets are pretty self-contained, 
> so provided you recognize them and handle them properly you should be 
> okay.  The back-end won't reset a device all by itself.
> 
> The problems with USB suspend are just a small subset of the problems with 
> suspend in general.  What happens to a front-end if a back-end goes to 
> sleep, for example?

In the current implementation, the virtual hub in the front-end ignores
or fakes up anything to do with power management and doesn't pass it to
the back-end.

I was assuming that the back-end would do it's own power management and
that if it put anything to sleep it would wake it up again for me when
my driver submitted an URB.  This is probably totally naive.

Are the individual USB drivers actually involved in power management or
is it managed by the hub driver transparently to the usb drivers?  If
it's managed transparently then I ought to be able to leave it all to
the back-end, right?

> 
> Your best approach is to make sure that a back-end never tries to suspend
> an exported device.  Then the front-end will be completely responsible for 
> device power management, and no confusion will arise.

I'm not actually giving the front-end access to the back-end hub, only
to a device plugged into the hub.  The front-end gets its own virtual
hub.  So, if I have to have the front-end do the power management then
I'll have to handle the power management requests to the front-end
virtual hub and forward them to the backend and translate them into
requests to the back-end hub.

I'd prefer to let the back-end do it if at all possible.

Thoughts?

> 
> Alan Stern
> 
> 
> 
> -------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
> for problems?  Stop!  Download the new AJAX search engine that makes
> searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
> http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
> _______________________________________________
> linux-usb-devel@xxxxxxxxxxxxxxxxxxxxx
> To unsubscribe, use the last form field at:
> https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
> 


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>