public inbox for linux-pm@vger.kernel.org
 help / color / mirror / Atom feed
From: David Brownell <david-b@pacbell.net>
To: linux-usb-devel@lists.sourceforge.net
Cc: deepti.chotai@wipro.com, rasmit.ranjan@wipro.com,
	linux-pm@lists.osdl.org, pavel@ucw.cz
Subject: Re: [linux-pm] Suspend to disk with PCMCIA card plugged in with kernel 2.6.16.28
Date: Thu, 19 Oct 2006 14:10:31 -0700	[thread overview]
Message-ID: <200610191410.31802.david-b@pacbell.net> (raw)
In-Reply-To: <380D9721A8E2114485644D71E87C6AB202902D60@PNE-HJN-MBX01.wipro.com>

On Monday 02 October 2006 10:50 pm, rasmit.ranjan@wipro.com wrote:
> 

> > > 4. Now again going a step ahead. I plugged in my PCMCIA 
> > > card, then I 
> > > connected a USB speaker to the USB port of the card and started 
> > > playing a song. Now I suspended the system to disk while 
> > > the transfer 
> > > was in progress( song was being played). But this time my system 
> > > hangs. This happens with other isochronous devices like webcam and 
> > > bulk device like USB key as well. So suspend to disk fails 
> > > if any USB 
> > > transfer is in progress ( through the USB port of my PCMCIA card).

Sounds like those drivers need to learn how to handle USB suspend
operations ... there are quite a few drivers which don't even have
basic suspend() and resume() calls.

ISTR a while back the kernel would refuse to suspend when faced with
such devices, which meant users would be forced to Do The Right Thing
and disconnect them before suspending ... but that behavior was then
changed, producing this dangerous behavior (hanging).

Me, I prefer nice clean failures like "can't suspend, you have to
unplug the devices with broken drivers" rather than nasty ones like
the hang you referenced.

I'd suggest that you look at providing patches for those drivers
which don't provide suspend() and resume() methods ...


> > > I tried debugging the problem and used kdb to find out the 
> > reason. For 
> > > all the devices I found out the following thing :
> > > 
> > > The system hangs in following path: usb_disconnect --> 
> > > usb_disable_device --> put_device.
> > > After put_device the system hangs. As I was in kdb mode I could not 
> > > save the stack trace.

You need to learn about "serial consoles" then.  ;)


 
> > > Is it a known kernel problem with 2.6.16.28 ? Please suggest.
> > 
> > Reproduce it with 2.6.18, then it is bugzilla time, or post 
> > to linux-usb mailing list.
> 
> Thanks Pavel. I tried with kernel 2.6.18. It worked fine with bulk
> device ( USB key). But does not work with isochronous device and system
> hangs. This time I did not have kdb so could not figure out where did it
> hang.
> Is it that for 2.6.16.28, this path is still broken for some cases like
> suspend to disk when transfer is in progress??

If any driver does not stop its I/O when suspend-to-disk starts, that's
a bug in that driver.

- Dave



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

      parent reply	other threads:[~2006-10-19 21:10 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-03  5:50 Suspend to disk with PCMCIA card plugged in with kernel 2.6.16.28 rasmit.ranjan
2006-10-03 22:02 ` Pavel Machek
2006-10-19 21:10 ` David Brownell [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200610191410.31802.david-b@pacbell.net \
    --to=david-b@pacbell.net \
    --cc=deepti.chotai@wipro.com \
    --cc=linux-pm@lists.osdl.org \
    --cc=linux-usb-devel@lists.sourceforge.net \
    --cc=pavel@ucw.cz \
    --cc=rasmit.ranjan@wipro.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox