On Friday 12 May 2006 12:55, Stefan Seyfried wrote: > On Fri, May 12, 2006 at 05:01:34AM -0300, [EMAIL PROTECTED] wrote: > > In recent weeks (I'm not sure when exactly), suspending via the system > > tray applet has started to work improperly. The running session is not > > resumed when the system is powered back up. The only relevant data I see > > in syslog is: > > > > kernel: [4338250.896000] Restarting tasks...<6> Strange, kacpid-work-1 > > not stopped > > kernel: [4338250.897000] Strange, kacpid-work-2 not stopped > > these two are probably the culprit => it is a kernel problem. What kernel > are you using?
The problem has existed for the last few kernels - this particular one was 2.6.15-20 (2.6.5-19 and 2.6.5-21 both had other hibernation problems, making it impossible to resume properly at all. I'm currently running .15-22 but I haven't attempted to hibernate via kpowersave from it, so I'll do that shortly). If it was a kernel problem, how is it that hibernation via /etc/acpi/hibernate.sh still works? > > kernel: [4338250.901000] done > > kernel: [4338250.901000] Thawing cpus ... > > kdm[5721]: X server for display :0 terminated unexpectedly > > > > Clearly, the kdm message is the immediate cause of the problem. > > No, it looks more like a "collateral damage" to me. It really smells like a > kernel problem. Well, kdm crashing is the cause of me having to log in again :-) That's what I meant by 'immediate'. Obviously there's something deeper. > > > I would suspect this to be more a bug in kdm than powersave, except that > > hibernating via /etc/acpi/hibernate.sh works flawlessly. > > Well, then we would need to find out the difference between hibernate.sh > and what the powersave scripts do, but to find this out, we would need to > know your hibernate.sh :-) Actually, what _I_ would like is any kind of documentation about what kpowersave is doing when it hibernates. acpi-support provides more useful (flexible - ability to configure specific devices/modules/services to be stopped before hibernation and resume afterwards) hibernation except for one thing - it's not integrated to KDE. acpi-support's hibernate.sh (and the scripts it calls) is attached -- derek -- derek
hibernate.sh
Description: application/shellscript
# a micro library of helper functions for the power scripts umask 022; PATH="$PATH:/usr/bin/X11" POWERSTATE="/var/lib/acpi-support/powerstate" getXuser() { user=`finger| grep -m1 ":$displaynum " | awk '{print $1}'` if [ x"$user" = x"" ]; then user=`finger| grep -m1 ":$displaynum" | awk '{print $1}'` fi if [ x"$user" != x"" ]; then userhome=`getent passwd $user | cut -d: -f6` export XAUTHORITY=$userhome/.Xauthority else export XAUTHORITY="" fi } getXconsole() { console=`fgconsole`; displaynum=`ps ax | grep -e 'X .* vt'$console | grep -v grep | sed -re 's!.*/X .*:([0-9]+).*!\1!'` if [ x"$displaynum" != x"" ]; then export DISPLAY=":$displaynum" getXuser fi } getState() { /usr/bin/on_ac_power; if [ "$?" -eq 0 ]; then STATE="AC"; elif [ "$?" -eq 1 ]; then STATE="BATTERY"; fi } #check our state has actually changed checkStateChanged() { # do we have our state stashed? if [ -f "$POWERSTATE" ]; then OLDSTATE=$(<$POWERSTATE) if [ "$STATE" = "$OLDSTATE" ]; then exit 0 else #stash the new state echo "$STATE" > $POWERSTATE fi else #we need to stash the new state echo "$STATE" > $POWERSTATE fi } LAPTOP_MODE='/usr/sbin/laptop_mode' HDPARM='/sbin/hdparm -q' LIDSTATE='/var/lib/acpi-support/lidstate'
CheckPolicy() { if [ "`pidof gnome-power-manager`" -o "`pidof kpowersave`" -o "x$(if [ -x /usr/bin/dcop ]; then dcop kded | grep klaptopdaemon; fi)" != x ]; then echo 0; else echo 1; fi }
prepare.sh
Description: application/shellscript
# Uncomment the next line to enable ACPI suspend to RAM #ACPI_SLEEP=true # Comment the next line to disable suspend to disk ACPI_HIBERNATE=true # Change the following to "standby" to use ACPI S1 sleep, rather than S3. # This will save less power, but may work on more machines ACPI_SLEEP_MODE=mem # Add modules to this list to have them removed before suspend and reloaded # on resume. An example would be MODULES="em8300 yenta_socket" # # Note that network cards and USB controllers will automatically be unloaded # unless they're listed in MODULES_WHITELIST MODULES="" # Add modules to this list to leave them in the kernel over suspend/resume MODULES_WHITELIST="" # Should we save and restore state using the VESA BIOS Extensions? SAVE_VBE_STATE=true # The file that we use to save the vbestate VBESTATE=/var/lib/acpi-support/vbestate # Should we attempt to warm-boot the video hardware on resume? POST_VIDEO=true # Save and restore video state? # SAVE_VIDEO_PCI_STATE=true # Should we switch the screen off with DPMS on suspend? USE_DPMS=true # Use Radeontool to switch the screen off? Seems to be needed on some machines # RADEON_LIGHT=true # Uncomment the next line to switch away from X and back again after resume. # This is needed for some hardware, but should be unnecessary on most. # DOUBLE_CONSOLE_SWITCH=true # Set the following to "platform" if you want to use ACPI to shut down # your machine on hibernation HIBERNATE_MODE=shutdown # Comment this out to disable screen locking on resume LOCK_SCREEN=true # Uncomment this line to have DMA disabled before suspend and reenabled # afterwards # DISABLE_DMA=true # Uncomment this line to attempt to reset the drive on resume. This seems # to be needed for some Sonys # RESET_DRIVE=true # Add services to this list to stop them before suspend and restart them in # the resume process. STOP_SERVICES="mysql " # Restart Infra Red services on resume - off by default as it crashes some # machines RESTART_IRDA=false # Switch to laptop-mode on battery power - off by default as it causes odd # hangs on some machines ENABLE_LAPTOP_MODE=false
90-framebuffer-stop.sh
Description: application/shellscript
85-alsa-state.sh
Description: application/shellscript
70-modules-unload.sh
Description: application/shellscript
75-console-switch.sh
Description: application/shellscript
60-generate-modules-list.sh
Description: application/shellscript
65-services-stop.sh
Description: application/shellscript
55-down-interfaces.sh
Description: application/shellscript
50-irda-stop.sh
Description: application/shellscript
10-thinkpad-standby-led.sh
Description: application/shellscript
05-acpi-lock.sh
Description: application/shellscript
80-video-vesa-state.sh
Description: application/shellscript
80-video-pci-state.sh
Description: application/shellscript
_______________________________________________ powersave-devel mailing list powersave-devel@forge.novell.com http://forge.novell.com/mailman/listinfo/powersave-devel