lkml.org 
[lkml]   [2008]   [Dec]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Regression from 2.6.26: Hibernation (possibly suspend) broken on Toshiba R500 (bisected)


On Sat, 6 Dec 2008, Rafael J. Wysocki wrote:
>
> It only affects the legacy handling, but the non-legacy handling was left
> untouched. IOW, the old "default" functions are still there and are being
> called by the "non-legacy" code (it's only used by USB at the moment, AFAICS).

Ok.

> Anyway, I did the test doing it only to the devices which don't have any
> non-default suspend-resume handling at all and _that_ apparently fixed the
> problem on my box. :-)

Which makes sense, btw. Because if you do the pci_save_state() on a device
that _does_ have a suspend function, you'll be saving the post-suspend
state - ie the device turned off.

So yeah, we really can only do the default suspend if the device has no
pre-existing suspend function - or we'd need to make sure that all PCI
drivers that do have suspend functions would only do the higher-level
functionality.

Anyway, what I'm most interested in hearing is whether this actually
improves your situation. I can _easily_ see that your resume problem could
be due to interrupt timing. That's especially true if there are shared
interrupts, but even in the absense of that, I'm not at all sure that the
e1000e resume code is interrupt-safe, for example.

Linus


\
 
 \ /
  Last update: 2008-12-06 02:59    [W:0.141 / U:0.184 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site