SHA256
1
0
forked from pool/systemd
systemd/0004-backlight-warn-if-kernel-exposes-backlight-device-wi.patch

41 lines
1.5 KiB
Diff

From c7fdf44d08e1217d40dc092fb90a65978a0f541f Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Wed, 23 Apr 2014 06:55:54 +0200
Subject: [PATCH] backlight: warn if kernel exposes backlight device with
bogus max_brightness
We shouldn't silently tape over broken kernel drivers.
---
src/backlight/backlight.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git src/backlight/backlight.c src/backlight/backlight.c
index 754a646..c708391 100644
--- src/backlight/backlight.c
+++ src/backlight/backlight.c
@@ -205,14 +205,18 @@ static unsigned get_max_brightness(struct udev_device *device) {
max_brightness_str = udev_device_get_sysattr_value(device, "max_brightness");
if (!max_brightness_str) {
- log_warning("Failed to read 'max_brightness' attribute");
+ log_warning("Failed to read 'max_brightness' attribute.");
return 0;
}
r = safe_atou(max_brightness_str, &max_brightness);
if (r < 0) {
- log_warning("Failed to parse 'max_brightness' \"%s\": %s",
- max_brightness_str, strerror(-r));
+ log_warning("Failed to parse 'max_brightness' \"%s\": %s", max_brightness_str, strerror(-r));
+ return 0;
+ }
+
+ if (max_brightness <= 0) {
+ log_warning("Maximum brightness is 0, ignoring device.");
return 0;
}
--
1.7.9.2