no brightness control in {455,460} after update from 450

Bug #1905591 reported by Kamal Mostafa
58
This bug affects 11 people
Affects Status Importance Assigned to Milestone
OEM Priority Project
New
High
Unassigned
nvidia-graphics-drivers-455 (Ubuntu)
Confirmed
High
Unassigned
nvidia-graphics-drivers-460 (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

On my Lenovo X1 Extreme with GPU: NVIDIA Corporation GP107M [GeForce GTX 1050 Ti Mobile]:

WORKS FINE:
nvidia-driver-450: 450.102.04-0ubuntu0.18.04.1

NO BRIGHTNESS CONTROL:
nvidia-driver-455: 455.38-0ubuntu0.18.04.1
nvidia-driver-460: 460.32.03-0ubuntu0.18.04.1
nvidia-driver-460: 460.39-0ubuntu0.18.04.1

*WORKAROUND: See comment #11 (add nvidia drivers to initramfs).

*Note that 460 fixes it for a 20.04 ThinkPad P73 per comment #6, but not for my 18.04.5 Lenovo ThinkPad X1 per comment #5.

Updating to nvidia-driver-455 (or -460) results in loss of brightness control. On boot, the laptop display brightness is somewhat less than fully bright and cannot be changed. The brightness up/down keys do pop up the gnome gui brightness widget, and /sys/class/backlight/nvidia_0/* values do change, but the actual display's brightness does not.

Problem occurs with either version of nvidia-driver-455 (the archive or the ~graphics-drivers/PPA) or any version of -460.

Normal functionality returns if I downgrade to any version of nvidia-driver-450.

Also observed: 455 and 460 temporarily display some pixel garbage while mode-switching during the graphic login sequence. Only a minor glitch, but note that 450 does not exhibit that issue either.

Note also that manually applying this to /lib/systemd/system/nvidia-persistenced.service has no effect on the problem:
https://github.com/hugh712/nvidia-graphics-drivers/commit/bccad5ee6444dd8c5c47ba19ea0232106a1086f5

Distributor ID: Ubuntu
Description: Ubuntu 18.04.5 LTS
Release: 18.04
Codename: bionic

kernel: 5.4.0-54-generic #60~18.04.1-Ubuntu SMP Fri Nov 6 17:25:16 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Tags: oem-priority
Revision history for this message
Kamal Mostafa (kamalmostafa) wrote :
description: updated
Changed in nvidia-graphics-drivers-455 (Ubuntu):
status: New → Triaged
importance: Undecided → High
description: updated
Alex Tu (alextu)
Changed in oem-priority:
importance: Undecided → High
Rex Tsai (chihchun)
tags: added: oem-priority
Revision history for this message
David Evans (djve60) wrote :

Same issue on Lenovo ThinkPat P76. Brightness control was working before.

$ uname -r
5.4.0-59-generic

$ lspci |grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation TU104GLM [Quadro RTX 5000 Mobile / Max-Q] (rev a1)

$ sudo lshw -c video
  *-display
       description: VGA compatible controller
       product: TU104GLM [Quadro RTX 5000 Mobile / Max-Q]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nvidia latency=0
       resources: irq:197 memory:ed000000-edffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:2000(size=128) memory:ee080000-ee0fffff

Downgrade to 450 works for me too.

Revision history for this message
Daniel Dadap (ddadap) wrote :

Can somebody with an affected system please try with one of the recently released 460.xx drivers? There were some brightness regressions that were resolved in the 460 series that may be related.

Revision history for this message
David Evans (djve60) wrote :

Not me. I'm using Ubuntu 20.04. Until it's made available by the software update mechanisms I won't touch it.

But "brightness regressions"? We're talking about basic control. How does passing regression tests helps this issue? Or did people ignore regression tests before releasing the 450 series?

We can use xrandr(1) but most people will be uncomfortable with this.

Revision history for this message
Kamal Mostafa (kamalmostafa) wrote :

@ddadap: No, nvidia-460 does not fix this regression. I've just tested nvidia-driver-460 (460.32.03-0ubuntu0.18.04.1) and I observe that it still misbehaves exactly as described above for 455: The initial brightness is unusually dim and cannot be changed by any means. (Also, just like 455, some pixel garbage appears during mode switch).

Reverting to 450 restores normal brightness functionality.

This regression makes nvidia-460 (and nvidia-455) unusable, and manifests on multiple modern laptops.

@djve60: FYI, the (still defective) nvidia-460 packages are now available in the archive, making testing 460 pretty painless at least:

To install 460:
  sudo apt install nvidia-kernel-common-460 nvidia-driver-460

To revert to 450:
  sudo apt install nvidia-kernel-common-450 nvidia-driver-450

@djve60, I recommend that you go ahead and test 460 that way to determine whether your P76 sees any benefit or still fails like my X1 Extreme.

summary: - no brightness control after update from 450 to 455
+ no brightness control in {455,460} after update from 450
description: updated
Revision history for this message
David Evans (djve60) wrote :

The 460 driver package was installed with the latest updates and I've rebooted.

For me, at least, it's working perfectly again.

And I made a mistake on my machine type: it's a ThinkPad P73.

description: updated
description: updated
description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in nvidia-graphics-drivers-460 (Ubuntu):
status: New → Confirmed
Revision history for this message
Goncalves-st (goncalves-st) wrote :

Confirming the bug on HP Omen 15 - with GTX 1070.
Driver 450, brightness works. When installing 455 or 460, latest updates.. it gets stuck at max brightness. (Using ubuntu 20.04.1)

Revision history for this message
Goncalves-st (goncalves-st) wrote :

Here's my log

Revision history for this message
SureShot (sureshot16) wrote :

I have the same problem. My system config is:

Lenovo X1 extreme
NVIDIA 1050 Ti max Q
Ubuntu 20.04
kernel 5.8.0-36-generic

Brightness control works on Nvidia 450 driver and not on Nvidia 460.

SureShot (sureshot16)
Changed in nvidia-graphics-drivers-455 (Ubuntu):
status: Triaged → In Progress
status: In Progress → Confirmed
Revision history for this message
SureShot (sureshot16) wrote :

I tried the fix for a different problem in this link randomly and it worked for me.

https://forums.developer.nvidia.com/t/problem-driver-nvidia-455-45-01-on-linux-mint-20-4-6-7/165402

I am adding steps here:

1. Add the following lines to the file "/etc/initramfs-tools/modules"

nvidia
nvidia-drm
nvidia-modeset

2. Run "sudo update-initramfs -u" in the terminal
3. Reboot

Revision history for this message
Kamal Mostafa (kamalmostafa) wrote :

The workaround outlined by @sureshot16 in comment #11 (add the nvidia drivers to initramfs) fixes it my Lenovo X1 Extreme too: Brightness control works again with nvidia-460.32.03, and no pixel garbage on mode switch either. Thanks, @sureshot16!

description: updated
Revision history for this message
Goncalves-st (goncalves-st) wrote :

@sureshot16 thanks a lot!! fixes on my system too! (hp omen 15)

Revision history for this message
Manzood Naqvi (manzood) wrote :

I can confirm that this bug affects me too, but unfortunately the workaround suggested by @sureshot16 that worked for some users here did not work for me, so I think it wouldn't for some makes and models.

For reference, I'm on a laptop with the following specifications:
Lenovo Legion Y540
NVIDIA GTX 1650 Mobile/Max-Q
Ubuntu 20.04
kernel 5.8.0-38 generic

I've had brightness issues on previous versions of the NVIDIA drivers as well, somewhat constantly, but they'd stop once I suspended the laptop and opened it up again once. This is not the case for the 460 driver.

Revision history for this message
Kamal Mostafa (kamalmostafa) wrote :

Problem persists with nvidia-driver-460 (460.39-0ubuntu0.18.04.1) on Lenovo X1 Extreme. The comment #11 workaround still works for this laptop model.

description: updated
Revision history for this message
Daniel Dadap (ddadap) wrote :

The workaround suggests that there's an interaction between the NVIDIA driver and another kernel module at play here. Presumably, adding the NVIDIA kernel modules to the initrd causes them to be loaded before the other module. Maybe video.ko, which registers its own brightness handler?

The modeswitch glitch should probably be tracked as a separate issue. Can somebody who is experiencing this glitch provide an example video?

Revision history for this message
Hugo Laloge (hlaloge-lc) wrote :

I have the same problem and the fix in comment #11 fixed it.

I agree with comment #16. I join a copy of my dmesg and Xorg.0.log before and after the fix. I hope it will be useful.

Revision history for this message
Oleksii Nadtochii (o.nadtochii) wrote :

I have the same problem with Asus Rog Strix (GL502VY). Nvidia 980M. Ubuntu 20.10, kernel 5.8.0-43-generic. Driver nvidia-driver-460. Movement of modules to initramfs did not help.

Revision history for this message
Shubham Paul (paulplusx) wrote (last edit ):

Same problem with Legion 5 pro, 5800H+3070.

https://www.reddit.com/r/GamingLaptops/comments/ls9k5r/legion_5_pro_other_info_64gb_ram_upgrade_linux/

This guy claims that after 'upgrading to Kernel 5.10', 'Blacklisting noveau drivers', 'changing the .conf file' and 'adding modules in initramfs', brightness control works. https://www.notion.so/Legion-5-Pro-Regolith-Important-Steps-2c468d1b33cc481dbd92d5ea59a6b74b

Will try this later. So far I have tried changing .conf and adding modules in initramfs and it didn't work.

Revision history for this message
Shubham Paul (paulplusx) wrote :

It (link above) didn't work for me, even with Kernel 5.10 and 5.11.

Revision history for this message
JAVIER COBOS MESA (knskan3) wrote :

Same problem on Legion 5 AMD® Ryzen 7 4800h with radeon graphics × 16 RTX 2060
Solution in comment 11 didn't work for me
Also tried some grub commands that did not work.

Revision history for this message
JAVIER COBOS MESA (knskan3) wrote :

As a temporal workaround, this works for me

https://linuxhint.com/display_brightness_commandline/

xrandr --output DP-0 --brightness 0.7

Revision history for this message
Shubham Paul (paulplusx) wrote :

To add more info on what I tried, I have put it here: https://askubuntu.com/questions/1329928/legion-5-pro-brightness-control-doesnt-work-on-ubuntu-20-04-with-nvidia-driver . Surprisingly the brightness also works on Manjaro (as mentioned in my post) after adding 'Option "RegistryDwords" "EnableBrightnessControl=1"' to x.conf.d. Also, it also works on Regolith Linux 1.5.3.

Revision history for this message
David Evans (djve60) wrote :

The 460 driver is broken again. No brightness control.

01 May 2021: nvidia-driver-460 (proprietary, tested).

A reboot fixed everything. Reporting this here as it's not a bug with the driver.

Revision history for this message
Kunal Zodape (kuzofrog) wrote :

Just to add to the report by @manzood, this bug affects my variant of y540 as well.
My complete laptop spec is as follows:
Lenovo Legion Y540
NVIDIA GTX 2060 Mobile
Ubuntu 18.04
kernel 5.4.0-72-generic

and again, the workaround suggested by @sureshot16 does not work, editing /sys/class/backlight/acpi_video0/brightness does not work(except when prime-select is set to intel),
adding 'Option "RegistryDwords" "EnableBrightnessControl=1"' to /usr/share/X11/xorg.conf.d/10-nvidia-brightness.conf does not work neither does adding kernel parameters in grub config.

This brightness issue has been a thorn in my side for the better part of a year, the only version which works is the Nouveau display driver installed via "Software & Updates" but has no CUDA support or Steam integration so that's a deal breaker for me.

Unlike @manzood, suspending the laptop and resuming has never worked for me and causes artifacts and flickering in 460 specifically. Issue persists in 465 as well.

Revision history for this message
Amrit Singh (amrits) wrote :

Hi All,
Please list the content of /sys/class/backlight folder.

Revision history for this message
Amrit Singh (amrits) wrote :

Please list the content of /sys/class/backlight folder.

Revision history for this message
Sadovskiy Denis Olegovich (terminator637) wrote :

My content of /sys/class/backlight is just the /acpi_video0 directory.

Ubuntu 20.04.1
kernel 5.8.0-63-generic
Lenovo Legion 5 15ARH05
GTX 1650 Ti
Driver Version: 470.57.02

Brightness control still not working.

Revision history for this message
Amrit Singh (amrits) wrote :

Can you also try to boot the system without parameter without nvidia-drm.modeset=1 and share test results.

Revision history for this message
Sadovskiy Denis Olegovich (terminator637) wrote :

Nothing changed after removing parameter.

Revision history for this message
Shubham Paul (paulplusx) wrote (last edit ):

Now, it works for me (ubuntu 20.04.3) with the kernel (v5.11.0.34.36) parameter

nvidia.NVreg_RegistryDwords=EnableBrightnessControl=1

And nvidia drivers 460.91.03. No need to do anything else (except of course update-grub).

The parameter is mentioned in arch wiki

https://wiki.archlinux.org/title/NVIDIA#Enabling_brightness_control

This is all for discrete mode. Credits to @Chaplan from legion discord for finding this.

For hybrid mode, there is different kernel parameter (for AMD)

amdgpu.backlight=0

Alen Masic (alenn-masic)
Changed in oem-priority:
status: New → Confirmed
Alen Masic (alenn-masic)
Changed in oem-priority:
status: Confirmed → New
Revision history for this message
Amrit Singh (amrits) wrote :

Hi All,
Please try with the EnableBrightnessControl =1 as kernel parameter or add it in xorg.conf file.
You can add it in device section as shown below -

Section "Device"
    Identifier "Device0"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    BoardName "NVIDIA RTX A3000 Laptop GPU"
    Option "RegistryDwords" "EnableBrightnessControl=1"
EndSection

After change in the xorg, please uninstall / install the driver.

Revision history for this message
Amrit Singh (amrits) wrote :

Hi All,
Please try with the EnableBrightnessControl =1 as kernel parameter or add it in xorg.conf file.
You can add it in device section as shown below -

Section "Device"
    Identifier "Device0"
    Driver "nvidia"
    VendorName "NVIDIA Corporation"
    BoardName "NVIDIA RTX A3000 Laptop GPU"
    Option "RegistryDwords" "EnableBrightnessControl=1"
EndSection

After change in the xorg, please uninstall / install the driver.

Revision history for this message
Amrit Singh (amrits) wrote :

Hi Kamal / David,
Please confirm if anyone get a chance to try with above suggested regkey.

Revision history for this message
Kunal Zodape (kuzofrog) wrote :

I had already tried the "EnableBrightnessControl=1" kernel parameter a year ago but I tried it anyway, no effect. However, trying the suggestion of @paulplusx I can happily report that brightness works flawlessly after using "nvidia.NVreg_RegistryDwords=EnableBrightnessControl=1" with the latest 495 driver. nvidia-smi shows GPU is loaded and opengl works on glxgears and CG:GO. If someone can test CUDA that would be great.

Thank you everyone and especially @paulplusx for solving this issue, hopefully this means we can close this bug soon.

Revision history for this message
Amrit Singh (amrits) wrote :

Thanks Kunal for the update, this regkey is already incorporated in future released driver.
So we should not have to explicitly define it in near future.

Revision history for this message
Sadovskiy Denis Olegovich (terminator637) wrote (last edit ):

Thanks, "nvidia.NVreg_RegistryDwords=EnableBrightnessControl=1" works on Ubuntu 20.04 5.11.0-40-generic with Nvidia driver 495.44 on Lenovo Legion 15ARH05.

Revision history for this message
pvdeynse (vandeynse) wrote :

I can confirm for Lenovo Thinkpad (P15/P17/T15g/T15p/P15v Gen 1) that backlight control is working now since the last BIOS update Version 1.28

below excerpt from the readme file:

CHANGES IN THIS RELEASE
Version 1.28

[Important updates]

    Update includes a security fix.

[New functions or enhancements]

    Updated the Diagnostics module to version 04.22.000.
    Update Regulatory Information.

[Problem fixes]

    Fixed an issue where Power-On Password is set by WMI even if Power-On
    Password Control was disabled.
    Fixed an issue where Linux adjust brightness fail in discrete mode.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.