SHA256
1
0
forked from pool/systemd
systemd/0032-rules-don-t-limit-some-of-the-rules-to-the-add-actio.patch
Stephan Kulow d24108b9c9 Accepting request 222383 from Base:System
- Add several upstream bugfix patches which are missed:
  * 0018-core-do-not-add-what-to-RequiresMountsFor-for-networ.patch
  * 0026-udevadm.xml-document-resolve-names-option-for-test.patch
  * 0030-Fix-for-SIGSEGV-in-systemd-bootchart-on-short-living.patch
  * 0032-rules-don-t-limit-some-of-the-rules-to-the-add-actio.patch
  * 0031-man-document-the-b-special-boot-option.patch
  * 0033-tmpfiles-log-unaccessible-FUSE-mount-points-only-as-.patch
  * 0034-systemd-python-fix-booted-and-add-two-functions-to-d.patch
  * 0035-activate-mention-E-in-the-help-text.patch
  * 0036-activate-fix-crash-when-s-is-passed.patch
  * 0037-tmpfiles-adjust-excludes-for-the-new-per-service-pri.patch
  * 0038-core-socket-fix-SO_REUSEPORT.patch
  * 0039-journal-when-appending-to-journal-file-allocate-larg.patch
  * 0040-journal-optimize-bisection-logic-a-bit-by-caching-th.patch
  * 0041-journal-fix-iteration-when-we-go-backwards-from-the-.patch
  * 0042-journal-allow-journal_file_copy_entry-to-work-on-non.patch
  * 0043-journal-simplify-pre-allocation-logic.patch
  * 0044-journald-mention-how-long-we-needed-to-flush-to-var-.patch
  * 0046-util.c-check-if-return-value-from-ttyname_r-is-0-ins.patch
  * 0047-docs-remove-unneeded-the-s-in-gudev-docs.patch
  * 0048-man-explicitly-say-when-multiple-units-can-be-specif.patch
  * 0049-systemd-treat-reload-failure-as-failure.patch
- Add patch 0001-Don-t-snprintf-a-potentially-NULL-pointer.patch
  to avoid potential NULL pointer
- Reorder patches to reflect udev/systemd usage

- don't build bash-completions for bootstrap package

- add more requires to this-is-only-for-build-envs to avoid 
  problems in kiwi configs

OBS-URL: https://build.opensuse.org/request/show/222383
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/systemd?expand=0&rev=176
2014-02-15 16:19:18 +00:00

82 lines
3.8 KiB
Diff

Patch based on
From e0d856dd48d640f3d95efe7b769edec02373cc74 Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Wed, 16 Oct 2013 02:51:24 +0200
Subject: [PATCH] rules: don't limit some of the rules to the "add" action
Devices should show up in systemd regardless whether the user invoked
"udevadm trigger" or not. Before this change some devices might have
suddenly disappeared due issuing that command.
and also on
From 1a0464230c08506c3fd715ff7cc56660df3a85ca Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Fri, 11 Oct 2013 07:45:32 +0000
Subject: Add support for saving/restoring keyboard backlights
Piggy-backing on the display backlight code, this saves and restores
keyboard backlights on supported devices.
The detection code matches that of UPower:
http://cgit.freedesktop.org/upower/tree/src/up-kbd-backlight.c#n173
https://bugs.freedesktop.org/show_bug.cgi?id=70367
[tomegun: also work for devices named "{smc,samsung,asus}::kbd_backlight"]
---
rules/99-systemd.rules.in | 10 ++++++----
src/backlight/backlight.c | 7 +++++--
2 files changed, 11 insertions(+), 6 deletions(-)
--- rules/99-systemd.rules.in
+++ rules/99-systemd.rules.in 2014-02-14 14:46:48.358235397 +0000
@@ -51,14 +51,16 @@ SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_dev
ACTION=="add", SUBSYSTEM=="net", KERNEL!="lo", RUN+="@rootlibexecdir@/systemd-sysctl --prefix=/proc/sys/net/ipv4/conf/$name --prefix=/proc/sys/net/ipv4/neigh/$name --prefix=/proc/sys/net/ipv6/conf/$name --prefix=/proc/sys/net/ipv6/neigh/$name"
-# Pull in backlight save/restore for all firmware backlight devices
+# Pull in backlight save/restore for all backlight devices and
+# keyboard backlights
-ACTION=="add", SUBSYSTEM=="backlight", ATTR{type}=="firmware", TAG+="systemd", ENV{SYSTEMD_WANTS}+="systemd-backlight@$name.service"
+SUBSYSTEM=="backlight", TAG+="systemd", IMPORT{builtin}="path_id", ENV{SYSTEMD_WANTS}+="systemd-backlight@backlight:$name.service"
+SUBSYSTEM=="leds", KERNEL=="*kbd_backlight", TAG+="systemd", IMPORT{builtin}="path_id", ENV{SYSTEMD_WANTS}+="systemd-backlight@leds:$name.service"
# Asynchronously mount file systems implemented by these modules as
# soon as they are loaded.
-SUBSYSTEM=="module", KERNEL=="fuse", ACTION=="add", TAG+="systemd", ENV{SYSTEMD_WANTS}+="sys-fs-fuse-connections.mount"
-SUBSYSTEM=="module", KERNEL=="configfs", ACTION=="add", TAG+="systemd", ENV{SYSTEMD_WANTS}+="sys-kernel-config.mount"
+SUBSYSTEM=="module", KERNEL=="fuse", TAG+="systemd", ENV{SYSTEMD_WANTS}+="sys-fs-fuse-connections.mount"
+SUBSYSTEM=="module", KERNEL=="configfs", TAG+="systemd", ENV{SYSTEMD_WANTS}+="sys-kernel-config.mount"
LABEL="systemd_end"
--- src/backlight/backlight.c
+++ src/backlight/backlight.c 2014-02-14 15:20:47.534298128 +0000
@@ -56,9 +56,11 @@ int main(int argc, char *argv[]) {
errno = 0;
device = udev_device_new_from_subsystem_sysname(udev, "backlight", argv[2]);
+ if (!device)
+ device = udev_device_new_from_subsystem_sysname(udev, "leds", argv[2]);
if (!device) {
if (errno != 0) {
- log_error("Failed to get backlight device: %m");
+ log_error("Failed to get backlight device '%s': %m", argv[2]);
r = -errno;
} else
r = log_oom();
@@ -66,7 +68,8 @@ int main(int argc, char *argv[]) {
goto finish;
}
- if (!streq_ptr(udev_device_get_subsystem(device), "backlight")) {
+ if (!streq_ptr(udev_device_get_subsystem(device), "backlight") &&
+ !streq_ptr(udev_device_get_subsystem(device), "leds")) {
log_error("Not a backlight device: %s", argv[2]);
r = -ENODEV;
goto finish;