forked from pool/systemd
43 lines
1.8 KiB
Diff
43 lines
1.8 KiB
Diff
|
From d36d90933a832bd1e1eb8e3d16b3de73f91636b4 Mon Sep 17 00:00:00 2001
|
||
|
From: =?UTF-8?q?Mantas=20Mikul=C4=97nas?= <grawity@gmail.com>
|
||
|
Date: Mon, 28 Apr 2014 00:58:56 +0300
|
||
|
Subject: [PATCH] logind: allow suspending if there are no displays
|
||
|
|
||
|
With proprietary graphics drivers, there won't be any 'drm' devices in
|
||
|
sysfs, so logind will never suspend the system upon closing the lid,
|
||
|
even if only one (internal) display is connected. This has been reported
|
||
|
by multiple users so far.
|
||
|
|
||
|
IMHO, it's better to suspend the system in this case for safety reasons,
|
||
|
to avoid having nvidia blob users' laptops overheat, for the same reason
|
||
|
that sleep inhibitors are overridden (LidSwitchIgnoreInhibited=yes).
|
||
|
---
|
||
|
src/login/logind-action.c | 8 +++-----
|
||
|
1 file changed, 3 insertions(+), 5 deletions(-)
|
||
|
|
||
|
diff --git src/login/logind-action.c src/login/logind-action.c
|
||
|
index ae9cd48..36ee441 100644
|
||
|
--- src/login/logind-action.c
|
||
|
+++ src/login/logind-action.c
|
||
|
@@ -79,14 +79,12 @@ int manager_handle_action(
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
- /* If we have more than one or no displays connected,
|
||
|
- * don't react to lid closing. The no display case we
|
||
|
- * treat like this under the assumption that there is
|
||
|
- * no modern drm driver available. */
|
||
|
+ /* If we have more than one display connected,
|
||
|
+ * don't react to lid closing. */
|
||
|
n = manager_count_displays(m);
|
||
|
if (n < 0)
|
||
|
log_warning("Display counting failed: %s", strerror(-n));
|
||
|
- else if (n != 1) {
|
||
|
+ else if (n > 1) {
|
||
|
log_debug("Ignoring lid switch request, %i displays connected.", n);
|
||
|
return 0;
|
||
|
}
|
||
|
--
|
||
|
1.7.9.2
|
||
|
|