Hot answers tagged

173

Edit /etc/systemd/logind.conf and make sure you have HandleLidSwitch=ignore which will make it ignore the lid being closed. (You may need to also undo the other changes you've made.) Then, you'll want to reload logind.conf to make your changes go into effect (thanks to Ehtesh Choudhury for pointing this out in the comments): systemctl restart systemd-...


38

The kernel parameters are documented at kernel.org. To understand what acpi_osi does, you roughly need to know how ACPI works. ACPI consists of so-called tables that the BIOS loads into RAM before the operating system starts. Some of them simply contain information about essential devices on the mainboard in a fixed format, but some like the DSDT table ...


33

A modern computer contains hundreds of parts that can be turned on and off or clocked faster or slower independently. The granularity is smaller than visible chips, smaller even than cores. A large part of power saving consists on turning parts on and off at the best time. Each part should be turned off when not in use, but only if it's going to remain ...


33

The codes come from the DSDT (Differentiated System Description Table) of your BIOS. This "table" describes the integrated devices on your mainboard, their dependencies and power-management functions. Devices in the DSDT are arranged in a tree and each path component is limited to 4 characters. The codes in /proc/acpi/wakeup are the last path components (...


32

You can use this to temporarily disable lid-switch events: systemd-inhibit --what=handle-lid-switch sleep 1d


26

This message is about some driver being denied access to devices controlled by the ACPI. By and large, my experience is that it can be safely ignored. If however you really insist on removing the warnings, I suggest you do not try booting with the option acpi=off, or maybe you try just once to see what happens. But I am afraid you might find you have ...


18

The watchdog did not stop! line is normal behavior. systemd sets a "hardware watchdog" timer as a failsafe, to ensure that if the normal shutdown process freezes/fails that the computer will still shutdown after the specified period of time. This time period is defined in the variable ShutdownWatchdogSec= in the file /etc/systemd/system.conf. Here is the ...


15

NOTE: This was tested on a laptop with a i915 driven graphics card. Background NOTE: When a new screen is plugged in, no event is sent to the host, this stayed true even after my last edit. So the only way is to use polling. Trying to make them as effiicient as possible... EDIT #3 Finally there's one better solution (through ACPI): There's still no ...


12

In archlinux, this will make it work: systemctl start acpid.service


10

I have the same issue, I needed to disable gpe16 and gpe17 for kworker to stop hogging the CPU. I followed the recipe found here: http://sudoremember.blogspot.com.au/2013/05/high-cpu-usage-due-to-kworker.html An abbreviated (and corrected, at least for my instance) version is here: $ sudo -s # echo "disable" > /sys/firmware/acpi/interrupts/gpe16 # echo "...


9

While the solution proposed by Mirzhan will probably work, there is a much more elegant way using the services.logind.lidSwitch and services.logind.lidSwitchDocked options. Now, you can just write services.logind.lidSwitch = "ignore"; These options also have types provided so an invalid configuration would be detected at build time.


9

When I checked ACPI interrupts, I noticed that gpe6F had a very high trigger count: root@HOST:~# grep . -r /sys/firmware/acpi/interrupts/ /sys/firmware/acpi/interrupts/ff_gbl_lock: 0 EN enabled unmasked /sys/firmware/acpi/interrupts/gpe15: 0 invalid unmasked /sys/firmware/acpi/interrupts/gpe4F: 0 invalid ...


9

Your hardware is too new sort of speak. The bugs you are seeing are harmless and may persist for some time. You could try upgrading your BIOS, that is utmost priority. Then, you could try installing intel-microcode non-free package. See if these two options work for you first. Today, I have assembled a computer with the very same CPU and seeing the same ...


8

It's probably not bad if they're "Bad", when you run on the AC power. When running on battery, the "Good/Bad" settings may or may not help. You can toggle them and observe the effects, but should you toggle them if you want to achieve the highest power-saving? I agree with mavit's answer that the powertop is primarily a diagnostic tool. There are other ...


8

Is there something inherent to Linux operating systems that makes them poor managers of battery power by default? No [but see my first comment below]. Note it is used on a wide range of low power devices where it is not even possible to run Windows. The battery can't be magically drained, so if it is happening at an unusual rate, it could be that you have ...


7

I don't know why you're looking for corroborating evidence from the system, when you have solid empirical evidence. The battery won't hold a charge. Period, end of story. I'd be happier if I saw a high charge cycle count. Lithium ion isn't good for more than about 500 charge cycles. Another datum, which won't appear in the places you've been looking, is ...


7

There is a configuration option services.logind.extraConfig. Open your NixOS configuration file (/etc/nixos/configuration.nix). Assign a string "HandleLidSwitch=ignore" (or whatever you would usually put into /etc/systemd/logind.conf) to that option: services.logind.extraConfig = "HandleLidSwitch=ignore";


6

ACPI is a low-level interface for mainboard vendors to provide information about built-in devices that cannot be (reliably) autodetected to the operating system. It also provides methods for power management and hardware monitoring to the kernel. One interesting thing ACPI provides are so called ACPI events. To create these, the hardware emits a special ...


6

I found this guide. I was able to boot turning off ACPI by adding the acpi=off flag in grub. Then I followed the guide above and was able to boot without acpi=off: If using sysdemd with rc.local disabled: systemctl enable rc-local.service Edit sudo systemctl edit --full rc-local Add to rc.local echo "disable" > /sys/firmware/acpi/interrupts/gpe6F ...


5

grep `ls /dev/input/by-path/*-mouse |\ head -1 |\ cut -d- -f 3` /proc/acpi/wakeup |\ gawk '{print $1}' This finds the input device for your mouse, then looks up the PCI ID in /proc/acpi/wakeup to give you the name. In fact, you could just redirect the output of that command back to /proc/acpi/wakeup in order to enable wakeups from that device.


5

I'm pretty sure that your lid callback is going to be called every time the lid is closed as well as opened. The sleep.sh file here states: # if launched through a lid event and lid is open, do nothing echo "$1" | grep "button/lid" && grep -q open /proc/acpi/button/lid/LID/state && exit 0 the "lid open" scenario is one your script is not ...


5

The command run when your computer is running low on battery should be configurable through your desktop environment's GUI. Just open the settings app of whatever you use and look at the power options, you should have something like (this is on Cinnamon): To make your user able to run these commands without entering a password, run sudo visudo to edit /etc....


5

Try disabling DPMS and Screen saver: xset -dpms xset s off


5

Well, first of all, the kernel chooses the best one automatically, it is usually TSC if it's available, because it's kept by the cpu and it's very fast (RDTSC and reading EDX:EAX). But that wasn't always the case, in the early days when the SMP systems were mostly built with several discrete cpus it was very important that the cpus where as "equal" as it ...


5

I dug around a bit, and the reason behind your "LCD cooler" turned out to be incredibly interesting, in my opinion: First off all, apparently LCD devices being listed as coolers under acpi are a thing, and not just a strange feature of your laptop - there are some more examples of those floating around online. If you do acpi -c yourself, you can list your ...


5

I don't know if you ever got this problem resolved, but I had the same thing happening on Debian buster/sid on a ThinkPad T460. The output of my dmesg wasn't identical to yours, but importantly, it had the same ACPI: EC: event blocked line. Per this thread on AskUbuntu, I disabled XHCI as a wakeup trigger in /proc/acpi/wakeup: $ grep enabled /proc/acpi/...


5

Please see: http://wiki.osdev.org/RSDP The first step in retrieving the ACPI tables is finding the Root System Description Pointer, or RSDP. On UEFI systems, it is conveniently given within the EFI_SYSTEM_TABLE. On traditional BIOS systems, two memory areas need to be searched. First, in 16-bit real mode address 0x40E there will be a 2-byte segment ...


5

ACPI is the subsystem that uses information from the BIOS to control hardware, mostly for power management, temperature sensing, and related issues. SMBus is a simple two-wire communications protocol, used as side channel to access temperature sensors and other hardware. So your BIOS contains sloppy ACPI data that specifies the wrong buffer size for a write ...


4

The thermal zones temperatures for each core are available from /sys/class/thermal/thermal_zone?/temp on kernel versions > 3.x. Your desire to seed mt_rand() using your CPU temperature makes no sense. According to the mt_rand() documentation, seeding the PRNG is done automatically in PHP versions 4.2.0+. Even if you want to seed it manually using mt_srand(),...


4

I think you're running into this: excerpt from thinkwiki - How to control fan speed Fan control operations are disabled by default for safety reasons. To enable fan control, the module parameter fan_control=1 must be given to thinkpad-acpi. You should be able to create the following file /etc/modprobe.d/thinkpad_acpi.conf with: options thinkpad_acpi ...


Only top voted, non community-wiki answers of a minimum length are eligible