Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's ACPI - most laptops ship with half-broken ACPI tables, and provide support for tunables through windows drivers. It's convenient for laptop manufacturers, because Microsoft makes it very easy to update drivers via windows update, and small issues with sleep, performance, etc. can be mostly patched through a driver update.

Linux OTOH can only use the information it has from ACPI to accomplish things like CPU power states, etc. So you end up with issues like "the fans stop working after my laptop wakes from sleep" because of a broken ACPI implementation.

There are a couple of laptops with excellent battery life under linux though, and if you can find a lunar lake laptop with iGPU and IPS screen, you can idle around 3-4W and easily get 12+ hours of battery.



Don't just leave us hanging, what model number laptops have that great of a battery life?


LG Gram laptops have excellent battery life. E.g. https://www.notebookcheck.net/Lightweight-with-power-and-20-...

I have an LG Gram 15 from 2021 and it gets 15+ hours under light usage in Linux.


LG Gram user here with Debian as a daily driver. Can confirm, maybe not 15h, but I don't think about charging. Plus, it's super stable, not a single crash or hang-up over years. It just works. I hope LG will keep this up and not mess up next iterations of the hardware.


I had an LG gram before the battery in it gave out and now it won't boot with the battery plugged in. The battery life was amazing, it always slept properly, etc.

Now I have a Framework. It randomly reboots when I close the lid, the battery life is terrible, etc. I live with it since I like the idea of a repairable laptop.


Which Framework? Let us know what to avoid


Lunar Lake Lenovo Carbon X1. If you get the IPS screen, you'll get even better than 12 hours.


What's standing in the way of doing something like NDISwrapper but for ACPI? Just that nobody with ghe required skills has spent the effort? Or something technical?


ACPI has been a problem for Linux for so long now…


Its not a problem with Linux, it's a problem with laptop manufacturers not caring about designing their ACPI tables and firmware correctly.


If the observable behavior is bad Linux performance, it's a Linux problem.

There's a saying in motorcycling: it's better to be alive than right. There's no upside in being correct if it leaves you worse off.

There are ways to make things better leveraging the Linux way. Make more usable tools for fixing ACPI deficiencies with hotloadable patches, ways of validating or verifying the patches for safety, ways of sharing and downloading them, and building a community around it.

Moaning that manufacturers only pay attention to where their profits come from is not a strategy at all.


Decompile your ACPI tables and then do a grep for "Linux". You are likely to find it, meaning the vendor took time to think about Linux on their hardware. Some vendors take the time to write good settings and code for the Linux ACPI paths, some dump you into no-man's land on purpose if your OSI vendor string is "Linux".

It's quite literally a vendor problem created by vendors leading anyone that doesn't run Windows astray in some cases.

If you run Linux, then dare to change your OSI vendor string to "Windows", you've entered into bespoke code land that follows different non-standard implementations for every SKU, where it's coded to work with a unique set of hardware and bespoke drivers/firmware on Windows. You also forgo any Linux forethought and optimizations that went into the "Linux" code paths.


You seem to have totally ignored his point...


My point is that from the Linux side, you're damned if you and damned if you don't no matter how you tackle the issue. If the layer above Linux is going to deliberately malfunction and lie on the Linux happy path, or speak some non-standard per-device driver protocol if you lie to use the Windows path, there's not much that can be done.

It's only a "Linux problem" if you're trying to run Linux on hardware that is actively hostile to it. There are plenty of vendors who supply good Linux happy paths in their firmware, using their hardware is the solution to that self-imposed problem.


I think the correct strategy in this case is to return your laptop to the store if it has linux compatibility issues, and keep trying until you find one that works.

i.e. don't support vendors whose laptops don't work in Linux.


That sounds like a problem with linux.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: