When talking about suspend, traditionally there was only one "state" that the computer could be in, and it is called S3. S3 is when the computer powers down all components, except the RAM. Microsoft has decided that this is not good enough, they need to improve this, by introducing something called "modern standby" (also known as InstantGo, hybrid sleep and S0ix).

This makes suspend behave like what your phone does, when you press the lock button, everything stays on, but it uses as little amount of power as it can. It gives software developers the ability to have what Microsoft calls "activators" wake the PC up from suspend. Some examples of what Microsoft considers really really essential for waking your laptop up, and having it cook in your backpack is 1 2:

  • Windows updates
  • Cortana
  • Background tasks for Microsoft store apps
  • And many other things, see the footnotes

Of course Dell and Lenovo, being the idiots they are, have started removing S3 altogether from their laptops, so now everyone will be stuck with this modern sleep bullshit. This is yet another move at taking away control from the consumers, if the manufacturer now decides that the software update for their bundled malware is essential, it will wake up your laptop, and drain the battery. Given how crappy and buggy most of these software are, I'm not expecting anything good to come out of this.

Dell even released a statement, saying that you are not actually supposed to put your laptop in your backpack while it's in suspend, and they will consider your warranty void, if you do that 3:

Under no circumstances should you leave a laptop powered on and in any sleep/hibernate/standby mode when placed in a bag, backpack, or in an overhead bin. The PC will overheat as a result of that action. Any resulting damage will not be covered by the Dell warranty.

This a really big fuck you to everyone who purchases one of these laptops. It's not enough that Microsoft has decided to prioritize their own spyware stuff over the safety of your laptop, but manufacturers have decided to play along.

Solutions, workarounds

Check your firmware settings, there might be an option to force it to use S3. Sometimes laptop manufacturers call this "Windows sleep" (modern standby) and "Linux sleep" (S3). If you don't have this, you can still try and force it to use S3 in Linux, by using echo deep > /sys/power/mem_sleep as root. You can make this permanent by creating a file in /etc/tmpfiles.d/disable-hybrid-sleep.conf:

/etc/tmpfiles.d/disable-hybrid-sleep.conf
w /sys/power/mem_sleep - - - - deep

Add this to the list of things to check, when you are looking for a new laptop. Do not buy junk that has no S3 support, or you will not have reliable suspend. Best case, your laptop's battery will be empty by the time you need it, worst case, it will melt in your backpack, and Dell will tell you that it's your problem.

  1. https://docs.microsoft.com/en-us/windows-hardware/design/device-experiences/activators

  2. https://docs.microsoft.com/en-us/windows-hardware/design/device-experiences/modern-standby

  3. https://www.dell.com/community/Laptops-Wiki/FAQ-Laptop-battery-articles/ta-p/7867172