[Pm-utils] [gpm] gnome-power-manger-2.26.0 suspend and hibernate

Victor Lowther victor.lowther at gmail.com
Tue Mar 24 19:35:11 PDT 2009


Chris Vine wrote:
> On Mon, 23 Mar 2009 21:07:33 -0500
> Victor Lowther <victor.lowther at gmail.com> wrote:
>> Hi, pm-utils maintainer here.  What version of pm-utils are you using?
> 
> Hi there.
> 
> I am using pm-utils-1.2.3.  It happens to come with my distribution
> although I have no particular objection to upgrading it to a later
> version if you think it might help.  (However I have now moved
> pm-hibernate and pm-suspend and substituted my own scripts which fixes
> the problem for me.)

Would you mind emailing the scripts to me so that I can see why they are 
doing that pm-utils is not?

>> If you need to unload modules across a suspend/resume or
>> hibernate/thaw, you can have pm-utils unload them using the
>> SUSPEND_MODULES parameter -- just drop a file in /etc/pm/config.d
>> with the line SUSPEND_MODULES="problematic modules", and pm-utils
>> will unload and reload them across suspend/hibernate.  Which modules
>> are you having to unload to make things work?
> 
> rt73usb and some related rt2x00/mac80211 modules.
> 
> Automatic module reloading is a useful feature but slightly problematic
> in this case.  There is a trickiness about reinstalling the wireless
> modules automatically as this triggers a new udev insert event which
> will cause the wireless interface to come back up, whilst wicd (my
> wireless management client) also has its own pm-utils resume handler. I
> therefore do it by hand in a way which doesn't worry wicd too much.

Hmmm... that sounds like udev is being overzealous on your distro.  What 
distro are you using?

Also, module unloading was broken until pm-utils 1.2.4 for modules that 
had dependencies.

>> Also, what is the HIBERNATE_MODE environment variable?
> 
> It is unset, so the raw kernel interface should be invoked.  The raw
> kernel interface works fine with my laptop, provided I unload the
> wireless modules first.

The reason I asked is that pm-utils does not know about HIBERNATE_MODE, 
and will always fall back to native kernel support if nothing else 
(uswsusp, tuxonice) is installed.

>> Hmmm... among other things, pm-utils is intended to be an abstraction 
>> layer that higher-level code can call without having to worry about 
>> whatever bizzare workarounds any given machine requires to sleep and 
>> wake back up.
> 
> 99% coverage (or whatever you have) is great, but unfortunately I seem
> to fall within the residual 1%.
> 
> As it happens, pm-suspend does work correctly, and the problem is with
> pm-hibernate.  Nothing gets logged but what I think happens is that
> pm-utils thinks that thawing hasn't completed so it blocks any further
> attempts at hibernation.

That is very interesting -- usually it is the other way around. :)

If you try PM_DEBUG=true pm-hibernate, does it log anything that way?

> Chris



More information about the Pm-utils mailing list