TLP doesn't seem to work with latest upower 0.9.21 #36

adamdagan7 opened this Issue Aug 4, 2013 · 7 comments

2 participants


After upgrading upower to 0.9.21 (via arch [testing]), it seems that TLP no longer works.
If I understand correctly, 0.9.21 relies on systemd functionality by default and not pm-utils, and since TLP relies on pm-utils it ends up with TLP not working.

@linrunner linrunner was assigned Aug 4, 2013


can you give me a hint which systemd targets are called by upower 0.9.21 when the power source changes between ac and bat (and vice versa)?

EDIT: and please add the full output of


for ac and bat power.


I think the relevant commit is the following. I'm not much of a developer myself, but hopefully you can find something useful in it:

AC -


Found some more info:

It deals with suspend/resume, but from what I understand it's the same idea.


OK, i think we should go with udev. Please add the following lines at the end of the file /usr/lib/udev/rules.d/40-tlp.rules:

# handle change of power source ac/bat
ACTION=="add|change", SUBSYSTEM=="power_supply", RUN+="/usr/bin/tlp start"

Works great.
Thanks for the quick solution, linrunner.

@adamdagan7 adamdagan7 closed this Aug 15, 2013
@adamdagan7 adamdagan7 reopened this Aug 15, 2013
@linrunner linrunner pushed a commit that referenced this issue Aug 17, 2013
Thomas Koch Architecture changes:
- Issue #36: detect change of power source via udev instead of being called by pm-powersave
- Handle suspend/resume w/o pm-utils in systemd environments:
  - Encapsulate suspend/resume tasks as a tlp subcommand
  - Add tlp-sleep.service to call tlp suspend/resume
  - Remove 48tlp-rdw.lock because it doesn't work as expected

Arch packaging for (testing) version 0.3.10 is in the works.


Released with

@linrunner linrunner closed this Aug 18, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment