nvidia-bl-dkms 0.16.1 breaks screen brightness (backlight) adjustment on MacBook 5.1 [Karmic]

Bug #538326 reported by Chris Lasher
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mactel Support
Fix Released
Undecided
Unassigned

Bug Description

On my MacBook 5.1, upon updating to nvidia-bl-dkms 0.16.1~karmic, the brightness controls fail to have physical effect on the brightness of the screen. The screen brightness remains at 100% brightness.

Pressing the brightness keys brings up the brightness indicator in the notifications area, and cause the brightness bar to move up or down very slowly (see Bug #357112), however this has no effect on physical brightness. Similarly, using the slider under System -> Preferences -> Power Management has no effect on physical brightness.

This is a severe regression. The 0.15 series was annoyingly slow to respond, but this new series doesn't respond at all.

Revision history for this message
Mario Vukelic (kreuzsakra) wrote :

Same for me on a MBP 5.5 running lucid (where I need to use it because it's not in lucid). I don't think my indicator moves slowly, but otherwise I see the same symptoms.

tags: added: lucid
Revision history for this message
Luke Gumbley (l-gumbley) wrote :

I have had the same problem with my MB5.1. I resolved it by reverting to an old version with the following steps:

1. Set the dkms status of nvidia_bl to uninstalled:

sudo dkms uninstall -m nvidia_bl -v 0.16.1

2. Delete the dkms build directory for nvidia_bl (your kernel version may differ)

sudo rm -r /var/lib/dkms/nvidia_bl/0.16.1/2.6.31-20-generic

3. Replace the source with an older version (I've attached one that I found works, see below)

sudo cp ~/nvidia_bl.c /usr/src/nvidia_bl-0.16.1/

4. Rebuild using dkms

sudo dkms build -m nvidia_bl -v 0.16.1

5. Install using dkms

sudo dkms install -m nvidia_bl -v 0.16.1

6. Restart your computer. I found that simply rmmod/modprobing nvidia_bl was not sufficient to make it fully work, I had to restart. Hooray, you can now work without being blinded.

The version of nvidia_bl.c that I attached is supposedly from version 0.15.4, courtesy of this page:
http://aur.archlinux.org/packages.php?ID=25467

I chose 0.15.4 because a) I could find it and b) as there have been a flurry of changes lately which 0.15.4 seemed to precede.

You could possibly also revert nvidia_bl.c using the patches in the 'patches' subdirectory. I tried all of those and they all compiled successfully, but nvidia_bl.c contains no module version information and I couldn't be bothered restarting half a dozen times to test, so I settled on trying the independent 0.15.4 source that I attached. I did try rmmod/modprobing them but none worked, I suspect the new 0.16.1 module stuffs up the registers on startup, after which even correct drivers won't work.

It would be very useful if the preceding version was kept in the repository instead of replacing on upgrade, or even if several old versions could be kept. The package is only 60k, and it means that you can revert properly with synaptic instead of all this console hack-fixing.

Revision history for this message
Luke Gumbley (l-gumbley) wrote :
Revision history for this message
Chris Lasher (chris.lasher) wrote :

Luke, thanks for confirming that your MacBook is affected, too. Also, for your suggestion of retaining old packages, I completely agree; please see Bug #538329 and click "This bug affects you" to let your opinion be formally noted.

Revision history for this message
Chris Lasher (chris.lasher) wrote :

I am attaching nvidia-bl-dkms version 0.15.4 for Ubuntu 9.04 Karmic Koala. To install it, download the file, then double-click the file, or from the Terminal, run

sudo dpkg -i nvidia-bl-dkms_0.15.4~karmic_all.deb

It will remove version 0.16.1 and install 0.15.4. After this, you may wish to "pin" this package to this specific version, so that it will not upgrade to 0.16.1. In the terminal, run:

echo "nvidia-bl-dkms hold" | sudo dpkg --set-selections

You can then "un-pin" the package to try a new version of nvidia-bl-dkms when one is released using the following command in the terminal:

echo "nvidia-bl-dkms install" | sudo dpkg --set-selections

Revision history for this message
Luke Gumbley (l-gumbley) wrote :

Chris, thanks for your posts! I was trying to figure out whether apt cached old packages, after all that googling to find an alternate source for an older nvidia_bl I now see I have them all locally. That is useful knowledge! I have flagged myself as affected by Bug #538329 as you suggested.

Revision history for this message
Mario Schwalbe (schwalbe) wrote :

Could you please report bugs, after testing by invoking the driver directly? Otherwise there are a lot of other possible error sources involved, including hal itself, which is deprecated and possibly not present in lucid anymore. (So lucid users should expect problems.)

You can do so by running:

$ sudo rmmod nvidia_bl
$ sudo modprobe nvidia_bl debug=1
$ cat /sys/module/nvidia_bl/parameters/*
$ echo <some value between 0 and 1023> | sudo tee /sys/class/backlight/nvidia_backlight/brightness

and observe the messages in /var/log/kern.log. I'm asking, because the changes in 0.16.1 compared to 0.15.4 shouldn't affect the MacBook Pros, but only add support for Dell and Sony machines. Attached the diff if someone might want to have a look.

Revision history for this message
Mario Vukelic (kreuzsakra) wrote :

@Mario Schwalbe immediately above: it worked fine in Lucid before, all the time at least since between alpha 2 and 3, which is when I installed.

Anyway, it works again in Lucid for me after the upgrade to 0.16.4~karmic.

tags: removed: lucid
Revision history for this message
Luke Gumbley (l-gumbley) wrote :

I can confirm that 0.16.4 now works correctly for me in Karmic.

Changed in mactel-support:
status: New → Fix Released
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.