FS#47665 - [cpupower] started at boot before the required kernel module is loaded

Attached to Project: Community Packages
Opened by Vincent Van Houtte (zenlord) - Friday, 08 January 2016, 08:02 GMT
Last edited by Sébastien Luttringer (seblu) - Sunday, 17 April 2016, 10:05 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Sébastien Luttringer (seblu)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
My laptop always boots into 'powersave'-mode, although I have specifically installed and enabled laptop-mode and cupower and have configured both to use the 'performance'-governor, whatever the powersource this 5y-old laptop is running on.
It fails every time: I always have to wait for my scaled-to-798Mhz processor to be able to load a terminal and then manually run a command like
# systemctl restart cpupower, or
# cupower frequency-set -g performance
... which works every time.

My logs tell me this:
# journalctl --boot | grep cpu
jan 08 08:49:00 mbp-vvh kernel: Initializing cgroup subsys cpuset
jan 08 08:49:00 mbp-vvh kernel: Initializing cgroup subsys cpu
jan 08 08:49:00 mbp-vvh kernel: Initializing cgroup subsys cpuacct
jan 08 08:49:00 mbp-vvh kernel: setup_percpu: NR_CPUS:128 nr_cpumask_bits:128 nr_cpu_ids:2 nr_node_ids:1
jan 08 08:49:00 mbp-vvh kernel: PERCPU: Embedded 32 pages/cpu @ffff88013fc00000 s92824 r8192 d30056 u1048576
jan 08 08:49:00 mbp-vvh kernel: pcpu-alloc: s92824 r8192 d30056 u1048576 alloc=1*2097152
jan 08 08:49:00 mbp-vvh kernel: pcpu-alloc: [0] 0 1
jan 08 08:49:00 mbp-vvh kernel: RCU restricting CPUs from NR_CPUS=128 to nr_cpu_ids=2.
jan 08 08:49:00 mbp-vvh kernel: RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=2
jan 08 08:49:00 mbp-vvh kernel: cpuidle: using governor ladder
jan 08 08:49:00 mbp-vvh kernel: cpuidle: using governor menu
jan 08 08:49:00 mbp-vvh kernel: HPET: 4 timers in total, 0 timers will be used for per-cpu timer
jan 08 08:49:00 mbp-vvh kernel: ledtrig-cpu: registered to indicate activity on CPUs
jan 08 08:49:01 mbp-vvh kernel: ACPI: acpi_idle registered with cpuidle
jan 08 08:49:01 mbp-vvh systemd[1]: Starting Apply cpupower configuration...
jan 08 08:49:01 mbp-vvh cpupower[431]: Setting cpu: 0
jan 08 08:49:01 mbp-vvh cpupower[431]: Setting cpu: 1
jan 08 08:49:01 mbp-vvh systemd[1]: Started Apply cpupower configuration.
jan 08 08:49:03 mbp-vvh kernel: nvidia_bl(O+) nvidia(PO) input_leds joydev mousedev hid_apple bcm5974 hid_appleir bnep usbhid hid msr mac_hid evdev uvcvideo nls_iso8859_1 snd_hda_codec_cirrus snd_hda_codec_generic videobuf2_vmalloc nls_cp437 videobuf2_memops vfat fat videobuf2_core v4l2_common applesmc led_class input_polldev videodev nls_utf8 media coretemp kvm_intel kvm wl(PO) snd_hda_intel cfg80211 pcspkr snd_hda_codec snd_hda_core snd_hwdep shpchp drm snd_pcm uas snd_timer snd forcedeth soundcore nv_tco usb_storage i2c_nforce2 acpi_als kfifo_buf industrialio sbs battery sbshc fjes acpi_cpufreq button processor ac sch_fq_codel vboxdrv(O) btusb btrtl btbcm btintel bluetooth rfkill ip_tables x_tables firewire_ohci firewire_core crc_itu_t ohci_pci ohci_hcd ehci_pci ehci_hcd usbcore usb_common sr_mod pata_acpi cdrom

... which leads me to suspect that the acpi_cpufreq-module (which is the driver used by my laptop) is not loaded at the time cpupower is setting the governor. Whatever is causing this, it is not causing it when I manually restart cpupower or manually set the governor from the Gnome terminal. This looks like a race condition to me?

Additional info:
* package version(s)
Arch 64bit fully up to date
* config and/or log files etc.

I have tried to disable laptop-mode.service. I have now also disabled intel_pstate (which I think is irrelevant). I also manually edited the cpupower-script and added the following lines at the bottom:
modprobe acpi_cpufreq
cpupower frequency-set -g performance

The second line is executed (this clearly follows from the above logs at 8:38:21). The first one, I do not know.

Steps to reproduce:
Boot.
This task depends upon

Closed by  Sébastien Luttringer (seblu)
Sunday, 17 April 2016, 10:05 GMT
Reason for closing:  Not a bug
Comment by Sébastien Luttringer (seblu) - Sunday, 17 April 2016, 10:05 GMT
if the problem is the acpi_cpufreq driver is loaded too late, force early load of your acpi driver with systemd-module-load (8) or load it on the initramfs (not by editing cpupower systemd script).

This is something you should ask on BBS first, there is no bug to fix in cpupower, but adapt your config to your hardware.

Loading...