feat(asusd): add PPD conflict detection warning - #217
Conversation
a51193c to
c7ee38e
Compare
|
Reporter of #205 here. Thanks for the quick turnaround on this @scardracs, and thanks @Ghoul4500 for weighing in on scope. One note on testing first:
|
c7ee38e to
7fac256
Compare
b243050 to
3175cc1
Compare
|
Thanks for splitting it @scardracs — this is now exactly what I was asking for in #205, and I'd be happy to see it merged as-is. I'm building the branch now and will report the warning output. Two things the split left behind, both in the docs rather than the code: 1. Unterminated code fence in
|
|
Tested as promised. Built
Detection works, fires first thing, correctly identifies the name owner. Nothing was mutated by either run (config file md5 unchanged, One observation from the test, which ties into my previous comment. My machine is deliberately configured the other way round — PPD owns the hardware and asusd is configured not to write EPP: In that configuration there is no contention — asusd never writes EPP, so nothing races — yet the warning fires anyway, on every single Cheap fix if you think it's worth it: gate the warning on asusd actually being configured to write, i.e. only warn when PPD is present and ( Not a blocker either way — I'd still merge this as-is. |
3175cc1 to
e27a541
Compare
|
Warning Review limit reached
Next review available in: 44 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Repository UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
Comment |
Summary
This Pull Request resolves power profile contention between
power-profiles-daemon(PPD) andasusdwhile providing seamless native compatibility for KDE Plasma and GNOME desktop power widgets.Problem
When
power-profiles-daemonandasusdrun concurrently, PPD reacts toplatform_profilechanges made byasusdand silently resets CPU EPP to driver defaults (balance_performance), overriding configured EPP settings (profile_balanced_epp).Solution
PPD Conflict Warning:
asusd,rog-control-center, andasusctlcheck at startup ifnet.hadess.PowerProfilesis already owned on system D-Bus. If active, a prominent warning is logged instructing the user to disablepower-profiles-daemon.service.Detailed Changes
rog-control-center/src/main.rs&asusctl/src/main.rs: Added startup PPD conflict warning checks.MANUAL.md&distro-packaging/asusctl.install: Updated manual documentation and installation scripts.Verification & Testing
cargo check --all-targets: Clean compilation across workspace crates.cargo test --all: All unit tests passing (100% pass rate).cargo clippy --all -- -D warnings: 0 warnings.cargo cranky: 0 warnings.cargo fmt --all -- --check: Formatting verified.Closes #205