ACPI: video: Remove acpi_video_set_dmi_backlight_type()
authorHans de Goede <hdegoede@redhat.com>
Mon, 20 Jun 2022 09:49:57 +0000 (11:49 +0200)
committerHans de Goede <hdegoede@redhat.com>
Sat, 3 Sep 2022 10:17:27 +0000 (12:17 +0200)
commit77ab9d4d44cd235322d2f30b1c4026302c3ce8c6
tree377363c899a3a549cc1f4880ff4e5dbb492db193
parent8991d7d9add0d9a711db692458d950050b38307b
ACPI: video: Remove acpi_video_set_dmi_backlight_type()

acpi_video_set_dmi_backlight_type() is troublesome because it may end
up getting called after other backlight drivers have already called
acpi_video_get_backlight_type() resulting in the other drivers
already being registered even though they should not.

In case of the acpi_video backlight, acpi_video_set_dmi_backlight_type()
actually calls acpi_video_unregister_backlight() since that is often
probed earlier, leading to userspace seeing the acpi_video0 class
device being briefly available, leading to races in userspace where
udev probe-rules try to access the device and it is already gone.

All callers have been fixed to no longer call it, so remove
acpi_video_set_dmi_backlight_type() now.

This means we now also no longer need acpi_video_unregister_backlight()
for the remove acpi_video backlight after it was wrongly registered hack,
so remove that too.

Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/acpi/acpi_video.c
drivers/acpi/video_detect.c
include/acpi/video.h