Page MenuHomeFreeBSD

acpi_cpu: Make disabling idle during suspend sysctl
Needs ReviewPublic

Authored by obiwac on Mon, Oct 12, 2:44 PM.
Tags
None
Referenced Files
F175793305: D60649.id189605.diff
Tue, Oct 13, 9:57 AM
F175793163: D60649.id189602.diff
Tue, Oct 13, 9:56 AM
F175769170: D60649.diff
Tue, Oct 13, 5:06 AM
F175765540: D60649.id189602.diff
Tue, Oct 13, 4:21 AM
F175744934: D60649.id189602.diff
Mon, Oct 12, 11:49 PM
F175739905: D60649.id.diff
Mon, Oct 12, 10:46 PM
F175731716: D60649.id.diff
Mon, Oct 12, 9:07 PM
F175729305: D60649.diff
Mon, Oct 12, 8:39 PM
Subscribers

Details

Reviewers
emaste
olce
Summary

This is a workaround for some old chipsets, but breaks suspend-to-idle.
Disable by default for now, but if this causes issues then we can make
this enabled by default and just only apply the workaround when doing
suspend-to-memory.

The commit that introduced this workaround was 3331373ce733 ("Disable
CPU idle states during suspend and reenable them during resume.").

Sponsored by: The FreeBSD Foundation

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 78067
Build 74950: arc lint + arc unit

Event Timeline

share/man/man4/acpi.4
120–121

I kinda wanna refer to the commit that introduced this here, but there doesn't seem to be any precedent for doing this in manpages

sys/dev/acpica/acpi_cpu.c
576–578

this might be a little excessive... we could just always call enable_idle() regardless of whether or not the workaround is being applied, and then we wouldn't need SYSCTL_ADD_PROC() and acpi_cpu_disable_idle_on_suspend_sysctl(), but I don't know what the implications of setting ACPI_BITREG_BUS_MASTER_RLD for each resume is and I'd rather not do it needlessly.

share/man/man4/acpi.4
120–121

I'm not sure how useful a src commit reference would be to readers of the man page, but referencing the date or year of the commit and/or the FreeBSD version in which it first appeared could give some useful context IMO.

CTLTYPE_BOOL doesn't exist