|Summary:||After resuming from suspend, discrete GPU is powered on and can't be turned off|
|Product:||xorg||Reporter:||Domenico Iezzi <domenico.iezzi.201>|
|Component:||Driver/nouveau||Assignee:||Nouveau Project <nouveau>|
|Status:||RESOLVED MOVED||QA Contact:||Xorg Project Team <xorg-team>|
|i915 platform:||i915 features:|
Description Domenico Iezzi 2018-09-25 12:15:55 UTC
Created attachment 141734 [details] kernel log Overall, nouveau works without problem in managing discrete GPU PM, and if I check power consumption using powertop on a fresh boot it reports an average battery discharge rate of ~7W like always. After I resume the laptop from suspend, /sys/kernel/debug/vgaswitcheroo/switch reports that the device is dynamically turned off: 0:IGD:+:Pwr:0000:00:02.0 1:DIS: :DynOff:0000:01:00.0 But if I check with powertop, I get a battery discharge rate of ~11W. To better identify the problem, I tried using bumbleebee+bbswitch+nvidia-driver and see what bbswitch module reports. On a fresh boot, it works ok as the nouveau driver, but after resuming from suspend /proc/acpi/bbswitch reports that the card is turned ON, and there is no way to power it off: [root@example user]# cat /proc/acpi/bbswitch 0000:04:00.0 ON [root@example user]# tee /proc/acpi/bbswitch <<<OFF OFF [root@example user]# cat /proc/acpi/bbswitch 0000:04:00.0 ON I attached the kernel log using following parameters when using only nouveau driver (no bumblebee/bbswitch/nvidia): log_buf_len=1M nouveau.debug=debug. System specs: Asus Vivobook S551LN Intel i7 4500U NVIDIA 840M Archlinux 4.18.9-arch1-1-ARCH (but affecting older versions, since early 4.x version when i started using linux)
Comment 1 Tolga Cakir 2018-11-22 14:31:32 UTC
I might have the same issue - I posted it under bug 98386. Happens on a Dell M3800, Intel Core i7-4702HQ, Nvidia Quadro K1100M, Arch Linux w/ kernel 4.19.2. Same as you, after fresh boot I get around ~7W in idle and after S3 resume I get 15W and more, no matter how long I wait. Contrary to your observations, bbswitch works for me; nouveau doesn't. I have found out, that echoing lowest pstate (/sys/kernel/debug/dri/*/pstate) after S3 resume solves this issue. Power consumption drops back to 7-8W in idle. I will post full dmidecode and dmesg in a couple of hours.
Comment 2 Tolga Cakir 2018-11-22 20:25:24 UTC
Created attachment 142575 [details] dmesg, comments at line 947 and 1051
Comment 3 Tolga Cakir 2018-11-22 20:25:58 UTC
Created attachment 142576 [details] dmidecode Dell M3800
Comment 5 Tolga Cakir 2018-11-22 20:26:42 UTC
Created attachment 142578 [details] lspci verbose Dell M3800
Comment 6 Tolga Cakir 2019-02-08 02:03:29 UTC
No longer occurs under stable kernel 4.20.6. Can you confirm this @Domenico?
Comment 7 Domenico Iezzi 2019-03-17 17:05:07 UTC
Still occurring to me on linux 5.0.2. I also noticed that after resuming from suspend, if I run something with the discrete GPU like this: DRI_PRIME=1 glxgears -info the power consumption returns to normal values. This seems to be the same behavior already noticed by @Tolga in comment #1
Comment 8 Martin Peres 2019-12-04 09:45:42 UTC
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/driver/xf86-video-nouveau/issues/461.