> There are a few instances of this bug. You can also see it with cpu > frequency and audio volume. > > Most drivers maintain soft state that should mirror the hardware > state. Except when it doesn't. Sometimes the driver has a bug, > sometimes the hardware lies, sometimes something else goes > wrong. The many layers of abstraction and acpi don't help either.
There are defenitely machines out there where the acpi implementation sufferes from exactly this problem. The AML method that reports back the current brightness level doesn't actually query the hardware, but simply reports back the soft state. And that soft state isn't properly initialized! It wouldn't surprise me if Windows never actually calls that method, or at least always explicitly sets the level it wants withour querying the hardware. > It's a bug and it's worth reporting as much info about your hardware as > possible, but don't expect a quick fix. As a workaround, just run 'xbacklight > 50 ; xbacklight 100' or whatever you want. Or better, add lines like: display.brightness=50 display.brightness=100 to /etc/wsconsctl.conf. To be able to fix problems like this we need dmesg and acpidump output. If you use sendbug(1) to file a bug report, that information is automatically included if you run it as root. As a bonus, the mail gets sent to an address that developers actually read...