Linux stopped hibernating and suspending after BIOS update

Questions about hardware, drivers and peripherals
Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
Locked
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Linux stopped hibernating and suspending after BIOS update

Post by BrunoMiranda »

Hi all,

I have updated the BIOS for my Acer Aspire E1-570, doing the download from the official Acer web page.

Now the computer has BIOS version 2.06 from 2013/11/11.

After this, Linux Mint stopped suspending and hibernating. The screen goes blank and the system freezes.

I have 2 installations (Mint 17 Cinnamon 64 bits and Mint 13 Mate 32 bits) both were hibernating and suspending well and now they don't.
I've restored my old known to work backups (even back from the Mint 17 RC), but none of them is working. I've installed several kernel versions, some of them I knew that were able to suspend and hibernate. I've installed a fresh installation of Mint 17 Cinnamon and it is not working. NADA!!! :twisted:

So I know it is not a software but a hardware issue, most certainly caused by the BIOS upgrade.

So I can only see 2 options:

- Solve the problem on the Linux side

or

- Downgrade the BIOS version to the previous one installed.
The Acer website only has one BIOS update, the one I am running now. No old one and I don't have a backup of it (you could do it on the floppy age! :oops: )

I have no idea of the BIOS version it previously had, this laptop is 3 months old.


Does anyone have a clue on how to fix this?
Should I wait for a newer kernel?
Should I wait for a new BIOS update?
Should I.... .... .... ?

Thanks,
Bruno
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 1 time in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
Bye for now,
Bruno


(Always backup before you screw up :)
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Re: Linux stopped hibernating and suspending after BIOS upda

Post by BrunoMiranda »

I've been checking the logs, if you need to check them, they are here:



https://db.tt/V8Hn7kF9


Thanks for any help!

Bruno







Here are the contents from pm-suspend.log
: Any hint from this?



Initial commandline parameters:
Sex Jul 25 14:02:04 WEST 2014: Running hooks for hibernate.
Running hook /usr/lib/pm-utils/sleep.d/000kernel-change hibernate hibernate:
/usr/lib/pm-utils/sleep.d/000kernel-change hibernate hibernate: success.

Running hook /usr/lib/pm-utils/sleep.d/00logging hibernate hibernate:
Linux acer 3.13.0-32-lowlatency #57-Ubuntu SMP PREEMPT Tue Jul 15 04:08:59 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Module Size Used by
pci_stub 12622 1
vboxpci 23194 0
vboxnetadp 25670 0
vboxnetflt 27613 0
vboxdrv 335310 3 vboxnetadp,vboxnetflt,vboxpci
ctr 13049 2
ccm 17773 2
rfcomm 69160 8
bnep 19624 2
binfmt_misc 17468 1
uvcvideo 80885 0
videobuf2_vmalloc 13216 1 uvcvideo
videobuf2_memops 13362 1 videobuf2_vmalloc
videobuf2_core 40664 1 uvcvideo
videodev 134688 2 uvcvideo,videobuf2_core
acer_wmi 32522 0
sparse_keymap 13948 1 acer_wmi
ip6t_REJECT 12939 1
xt_hl 12521 6
ip6t_rt 13537 3
nf_conntrack_ipv6 18894 8
nf_defrag_ipv6 34768 1 nf_conntrack_ipv6
ipt_REJECT 12541 1
xt_LOG 17717 10
xt_limit 12711 13
xt_tcpudp 12884 18
xt_addrtype 12635 4
nf_conntrack_ipv4 15012 8
nf_defrag_ipv4 12758 1 nf_conntrack_ipv4
xt_conntrack 12760 16
ip6table_filter 12815 1
ip6_tables 27025 1 ip6table_filter
nf_conntrack_netbios_ns 12665 0
nf_conntrack_broadcast 12589 1 nf_conntrack_netbios_ns
nf_nat_ftp 12770 0
nf_nat 21841 1 nf_nat_ftp
nf_conntrack_ftp 18638 1 nf_nat_ftp
nf_conntrack 96976 8 nf_nat_ftp,nf_conntrack_netbios_ns,nf_nat,xt_conntrack,nf_conntrack_broadcast,nf_conntrack_ftp,nf_conntrack_ipv4,nf_conntrack_ipv6
iptable_filter 12810 1
ip_tables 27239 1 iptable_filter
x_tables 34059 13 ip6table_filter,xt_hl,ip_tables,xt_tcpudp,xt_limit,xt_conntrack,xt_LOG,iptable_filter,ip6t_rt,ipt_REJECT,ip6_tables,xt_addrtype,ip6t_REJECT
snd_hda_codec_hdmi 46254 1
snd_hda_codec_realtek 61438 1
btusb 28267 0
snd_hda_intel 52306 3
bluetooth 395385 22 bnep,btusb,rfcomm
snd_hda_codec 192906 3 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel
snd_hwdep 13602 1 snd_hda_codec
snd_pcm 102040 3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
snd_page_alloc 18710 2 snd_pcm,snd_hda_intel
snd_seq_midi 13324 0
snd_seq_midi_event 14899 1 snd_seq_midi
intel_rapl 18773 0
x86_pkg_temp_thermal 14205 0
arc4 12608 2
snd_rawmidi 30095 1 snd_seq_midi
intel_powerclamp 14705 0
coretemp 13435 0
ath9k 164164 0
ath9k_common 13551 1 ath9k
kvm_intel 143104 0
ath9k_hw 453856 2 ath9k_common,ath9k
kvm 451444 1 kvm_intel
ath 28698 3 ath9k_common,ath9k,ath9k_hw
crct10dif_pclmul 14250 0
crc32_pclmul 13113 0
ghash_clmulni_intel 13216 0
cryptd 20359 1 ghash_clmulni_intel
mac80211 638933 1 ath9k
dm_multipath 22873 0
scsi_dh 14882 1 dm_multipath
snd_seq 61560 2 snd_seq_midi_event,snd_seq_midi
joydev 17332 0
serio_raw 13413 0
cfg80211 496328 3 ath,ath9k,mac80211
snd_seq_device 14497 3 snd_seq,snd_rawmidi,snd_seq_midi
snd_timer 29433 2 snd_pcm,snd_seq
mei_me 18627 0
mei 82276 1 mei_me
lpc_ich 21080 0
snd 69189 17 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device,snd_seq_midi
soundcore 12680 1 snd
mac_hid 13205 0
lp 17759 0
parport 42299 1 lp
dm_mirror 22040 0
dm_region_hash 20813 1 dm_mirror
dm_log 18411 2 dm_region_hash,dm_mirror
hid_generic 12548 0
usbhid 48425 0
hid 106148 2 hid_generic,usbhid
i915 787802 3
i2c_algo_bit 13413 1 i915
drm_kms_helper 53081 1 i915
psmouse 102533 0
ahci 25819 3
tg3 166442 0
drm 303102 4 i915,drm_kms_helper
libahci 32560 1 ahci
ptp 18933 1 tg3
sdhci_pci 23172 0
pps_core 19333 1 ptp
sdhci 43015 1 sdhci_pci
wmi 19177 1 acer_wmi
video 19476 2 i915,acer_wmi
total used free shared buffers cached
Mem: 8066536 891660 7174876 86640 60284 347180
-/+ buffers/cache: 484196 7582340
Swap: 8161276 0 8161276
/usr/lib/pm-utils/sleep.d/00logging hibernate hibernate: success.

Running hook /usr/lib/pm-utils/sleep.d/00powersave hibernate hibernate:
/usr/lib/pm-utils/sleep.d/00powersave hibernate hibernate: success.

Running hook /etc/pm/sleep.d/10_grub-common hibernate hibernate:
/etc/pm/sleep.d/10_grub-common hibernate hibernate: success.

Running hook /etc/pm/sleep.d/10_unattended-upgrades-hibernate hibernate hibernate:
/etc/pm/sleep.d/10_unattended-upgrades-hibernate hibernate hibernate: success.

Running hook /usr/lib/pm-utils/sleep.d/50unload_alx hibernate hibernate:
/usr/lib/pm-utils/sleep.d/50unload_alx hibernate hibernate: success.

Running hook /usr/lib/pm-utils/sleep.d/60_wpa_supplicant hibernate hibernate:
Selected interface 'wlan0'
OK
/usr/lib/pm-utils/sleep.d/60_wpa_supplicant hibernate hibernate: success.

Running hook /usr/lib/pm-utils/sleep.d/75modules hibernate hibernate:
/usr/lib/pm-utils/sleep.d/75modules hibernate hibernate: not applicable.

Running hook /usr/lib/pm-utils/sleep.d/90clock hibernate hibernate:
/usr/lib/pm-utils/sleep.d/90clock hibernate hibernate: not applicable.

Running hook /usr/lib/pm-utils/sleep.d/94cpufreq hibernate hibernate:
/usr/lib/pm-utils/sleep.d/94cpufreq hibernate hibernate: success.

Running hook /usr/lib/pm-utils/sleep.d/95anacron hibernate hibernate:
stop: Unknown instance:
/usr/lib/pm-utils/sleep.d/95anacron hibernate hibernate: success.

Running hook /usr/lib/pm-utils/sleep.d/95hdparm-apm hibernate hibernate:
/usr/lib/pm-utils/sleep.d/95hdparm-apm hibernate hibernate: not applicable.

Running hook /usr/lib/pm-utils/sleep.d/95led hibernate hibernate:
/usr/lib/pm-utils/sleep.d/95led hibernate hibernate: not applicable.

Running hook /usr/lib/pm-utils/sleep.d/98video-quirk-db-handler hibernate hibernate:
Kernel modesetting video driver detected, not using quirks.
/usr/lib/pm-utils/sleep.d/98video-quirk-db-handler hibernate hibernate: success.

Running hook /usr/lib/pm-utils/sleep.d/99video hibernate hibernate:
/usr/lib/pm-utils/sleep.d/99video hibernate hibernate: success.

Running hook /etc/pm/sleep.d/novatel_3g_suspend hibernate hibernate:
/etc/pm/sleep.d/novatel_3g_suspend hibernate hibernate: success.

Sex Jul 25 14:02:06 WEST 2014: performing hibernate
Bye for now,
Bruno


(Always backup before you screw up :)
eanfrid

Re: Linux stopped hibernating and suspending after BIOS upda

Post by eanfrid »

Did you force reset the BIOS parameters to default, restart and then manually set you own BIOS preferences ?
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Re: Linux stopped hibernating and suspending after BIOS upda

Post by BrunoMiranda »

Did you force reset the BIOS parameters to default, restart and then manually set you own BIOS preferences ?
Yes I have, eanfrid. I've done it now and it didn't solve the problem. Can't recall if I've done that when I've updated the BIOS, but thanks for the hint anyway!
Bye for now,
Bruno


(Always backup before you screw up :)
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Re: Linux stopped hibernating and suspending after BIOS upda

Post by BrunoMiranda »

I've managed to fix hibernation, but not suspension.

According to

https://help.ubuntu.com/community/Power ... /Hibernate

if you have a broken BIOS (like I seem to have), if you reconfigure swsusp or uswsusp you can change the default hibernation method from platform to shutdown, it can work, and in my case it does, although resuming takes a lot of time because a lot is moved into swap and the hard disk thrashes a lot... But it solved me the issue until Acer hopefully fixes the BIOS.

I'm unable to use the Acer tool to downgrade my BIOS and Portugal Acer's support wants to charge me to replace my original BIOS version because they don't support Linux... So consider yourself warned if you buy Acer to use Linux, don't upgrade your BIOS because they will not accept the responsibility for their coding errors!


So to sort of fix hibernation (suspension will not still work), you need to

Code: Select all

sudo apt install uswsusp
and then change the hibernation method to shutdown by:

Code: Select all

sudo dpkg-reconfigure uswsusp


Here's my /etc/uswsusp.conf:

Code: Select all

# /etc/uswsusp.conf(5) -- Configuration file for s2disk/s2both 
resume device = /dev/disk/by-uuid/8a7631c8-3e43-4d0c-99c1-39e202cb4907
compress = y
RSA key file = /etc/uswsusp.key
shutdown method = shutdown
image size = 0
Bye for now,
Bruno


(Always backup before you screw up :)
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Re: Linux stopped hibernating and suspending after BIOS upda

Post by BrunoMiranda »

By the way, resuming can take me a couple of minutes before I have an operational system again because of thrashing ~500MB or more on swap :oops: when by the time of hibernating I had zero swapped (I have 8 gigs of ram).

This happens on Mint 17 Cinnamon but not on Mint 13 MATE.

:?: Does anyone know a way to resume from hibernation that copies the system state to ram without copying it to swap?
Bye for now,
Bruno


(Always backup before you screw up :)
eanfrid

Re: Linux stopped hibernating and suspending after BIOS upda

Post by eanfrid »

Hibernation is copying RAM data to disk in order to be able to switch power off. If you do otherwise then it is not hibernation and switching power off will lose the RAM data... almost like a normal shutdown. If your hibernation process is slow it is probably because you encrypted something, either your home and/or the swap space.
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Re: Linux stopped hibernating and suspending after BIOS upda

Post by BrunoMiranda »

Hi eanfrid,

Yes, I know that hibernation is copying the volatile RAM to the disk.

The thing is that since using the shutdown method (instead of platform), when I hibernate on Mint 17 Cinnamon, occupying ~500MB of RAM and nothing in swap, when the system resumes the data seems to be copied back to RAM (of course) but also to the swap, clogging the hard disk for a couple of minutes; while on Mint 13 MATE instead of ~500 megs, it takes just around 7, making it "spontaneous".

No, I have no encrypted partitions or swap, neither is the hibernation data encrypted. Nothing to hide here. :D


Maybe this difference happens because Cinnamon is heavier than MATE. Or should there be any other significant differences between Mint 13 and 17 that can affect this?
Bye for now,
Bruno


(Always backup before you screw up :)
eanfrid

Re: Linux stopped hibernating and suspending after BIOS upda

Post by eanfrid »

What is the swappiness value ?

Code: Select all

cat /proc/sys/vm/swappiness
A standard Linux installation sets it to 60.

With 8GB of RAM, you can probably set this close to zero, hence preventing unnecessary swap as long as you do not actually run out of RAM. To do so, insert this line at the end of /etc/rc.local (before the "exit" command):

Code: Select all

echo "10" > /proc/sys/vm/swappiness
(or less than "10"... even "0" does not indeed prevent swapping in case of emergency regarding RAM)
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Re: Linux stopped hibernating and suspending after BIOS upda

Post by BrunoMiranda »

In /proc/sys/vm/swappiness, the value is already set to 10, I remember having set this value you recommend some time ago. So this seems not to be causing this issue...
Bye for now,
Bruno


(Always backup before you screw up :)
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Re: Linux stopped hibernating and suspending after BIOS upda

Post by BrunoMiranda »

OK, I've figured out why the hard disk was trashing so much when resuming from hibernation.
When I have reconfigured uswsusp, I told it to make the smallest possible hibernation image. The hibernation process is faster, but when it resumes it swaps a lot and comatoses my machine for a good while.

Reconfiguring uswsusp back again to use the default 45% RAM value for the hibernation image solves this issue. Although it takes more time to hibernate (it compresses used RAM + cached memory, and I have 8GB of RAM), resuming back is fast enough, there's no swapping and I have zero swap.

This one is done... :) A few more bugs related to this post still have to go....
Bye for now,
Bruno


(Always backup before you screw up :)
BrunoMiranda
Level 4
Level 4
Posts: 359
Joined: Thu Jun 24, 2010 2:22 pm

Re: Linux stopped hibernating and suspending after BIOS upda

Post by BrunoMiranda »

I've got this thing working now, with a couple of workarounds...

HIBERNATION: If I configure uswsusp to use Shutdown instead of Platform, it will hibernate and resume fine.



SUSPENSION:

Workaround 1: If I run:

Code: Select all

sudo -i
echo freeze > /sys/power/state
the system will freeze and wake up really quickly.
Freezing is not as power-saving as suspending, but in my case will work just fine. But it is a bit of a hassle to enter all this everytime I want to suspend the computer...

Workaround 2: Add noapic to the kernel line in boot.cfg. Note: Do not mistake noapic with noacpi. Not good for dyslexics... :|
This will suspend and hibernate fine even with uswsusp using Platform.

Workaround 3: How to make it all work properly, remember one IT teacher of mine that used to say
IT is not an exact science
, and decide this is a bad week to quit drugs...

- Add noapic into boot.cfg
- Reboot
- Reconfigure uswsusp to use platform
- Reboot again
- Remove noapic from bootcfg

Now both suspension and hibernation are working the way it should... I've replicated this and it worked both times. :?: Coincidence? :?:


I'm going to kill myself, be right back... :mrgreen:
Bye for now,
Bruno


(Always backup before you screw up :)
Locked

Return to “Hardware Support”