From 5c7a4bd51be24d63bcfa01ad571d7fa98f6354afa528b647840e2946ee60bd5f Mon Sep 17 00:00:00 2001 From: "Dr. Werner Fink" Date: Thu, 12 Jun 2014 12:30:27 +0000 Subject: [PATCH] . OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=673 --- ...-Ignore-devices-with-SYSTEMD_READY-0.patch | 32 +++++++++++++++++++ systemd-mini.changes | 8 +++++ systemd-mini.spec | 3 ++ systemd.changes | 8 +++++ systemd.spec | 3 ++ 5 files changed, 54 insertions(+) create mode 100644 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch diff --git a/1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch b/1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch new file mode 100644 index 00000000..09c5202c --- /dev/null +++ b/1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch @@ -0,0 +1,32 @@ +From c9af1be90db5a29ac86605c67bc2bb4bc5780520 Mon Sep 17 00:00:00 2001 +From: Hannes Reinecke +Date: Thu, 12 Jun 2014 12:25:03 +0200 +Subject: [PATCH] 99-systemd.rules: Ignore devices with 'SYSTEMD_READY=0' + +Whenever a rule sets 'SYSTEMD_READY=0' it tries to indicate +that systemd should ignore this device. So we should not +set the 'systemd' tag in these cases; otherwise systemd +will pick up the device. + +References: bnc#881942 + +Signed-off-by: Hannes Reinecke +--- + rules/99-systemd.rules.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/rules/99-systemd.rules.in b/rules/99-systemd.rules.in +index db72373..11ee262 100644 +--- a/rules/99-systemd.rules.in ++++ b/rules/99-systemd.rules.in +@@ -11,6 +11,7 @@ SUBSYSTEM=="tty", KERNEL=="tty[a-zA-Z]*|hvc*|xvc*|hvsi*|ttysclp*|sclp_line*|3270 + + KERNEL=="vport*", TAG+="systemd" + ++SUBSYSTEM=="block", KERNEL!="ram*", ENV{SYSTEMD_READY}=="0", GOTO="systemd_end" + SUBSYSTEM=="block", KERNEL!="ram*", TAG+="systemd" + SUBSYSTEM=="block", KERNEL!="ram*", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", ENV{SYSTEMD_READY}="0" + +-- +1.8.4.5 + diff --git a/systemd-mini.changes b/systemd-mini.changes index 666e1a76..4cacd7ea 100644 --- a/systemd-mini.changes +++ b/systemd-mini.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Thu Jun 12 12:14:11 UTC 2014 - werner@suse.de + +- Add patch + 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch + from Hannes Reinecke to avoid a race condition between variable + 'SYSTEMD_READY=0' and 'systemd' tag within udev rules (bnc#881942) + ------------------------------------------------------------------- Thu Jun 12 09:40:54 UTC 2014 - werner@suse.de diff --git a/systemd-mini.spec b/systemd-mini.spec index eee57673..70b36178 100644 --- a/systemd-mini.spec +++ b/systemd-mini.spec @@ -633,6 +633,8 @@ Patch1032: 1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch Patch1033: 1033-udev-really-exclude-device-mapper-from-block-device.patch # PATCH-FIX-UPSTREAM 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch Patch1034: 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch +# PATCH-FIX-SUSE 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch +Patch1035: 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch %description Systemd is a system and service manager, compatible with SysV and LSB @@ -1105,6 +1107,7 @@ cp %{SOURCE7} m4/ %patch1032 -p1 %patch1033 -p1 %patch1034 -p1 +%patch1035 -p1 # ensure generate files are removed rm -f units/emergency.service diff --git a/systemd.changes b/systemd.changes index 666e1a76..4cacd7ea 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Thu Jun 12 12:14:11 UTC 2014 - werner@suse.de + +- Add patch + 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch + from Hannes Reinecke to avoid a race condition between variable + 'SYSTEMD_READY=0' and 'systemd' tag within udev rules (bnc#881942) + ------------------------------------------------------------------- Thu Jun 12 09:40:54 UTC 2014 - werner@suse.de diff --git a/systemd.spec b/systemd.spec index e06896ee..b86edc92 100644 --- a/systemd.spec +++ b/systemd.spec @@ -628,6 +628,8 @@ Patch1032: 1032-udev-guard-REREADPT-by-exclusive-lock-instead-of-O_E.patch Patch1033: 1033-udev-really-exclude-device-mapper-from-block-device.patch # PATCH-FIX-UPSTREAM 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch Patch1034: 1034-udev-check-the-return-value-from-udev_enumerate_scan.patch +# PATCH-FIX-SUSE 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch +Patch1035: 1035-99-systemd.rules-Ignore-devices-with-SYSTEMD_READY-0.patch %description Systemd is a system and service manager, compatible with SysV and LSB @@ -1100,6 +1102,7 @@ cp %{SOURCE7} m4/ %patch1032 -p1 %patch1033 -p1 %patch1034 -p1 +%patch1035 -p1 # ensure generate files are removed rm -f units/emergency.service