Hello community,

here is the log from the commit of package systemd for openSUSE:Factory checked 
in at 2014-04-12 21:28:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
 and      /work/SRC/openSUSE:Factory/.systemd.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "systemd"

Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes     2014-04-09 
18:17:26.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.systemd.new/systemd-mini.changes        
2014-04-12 21:58:05.000000000 +0200
@@ -1,0 +2,31 @@
+Thu Apr 10 10:17:47 UTC 2014 - [email protected]
+
+- Add two patches from [email protected]
+  1011-64-btrfs.rules-skip-btrfs-check-if-devices-are-not-r.patch
+  1012-Skip-persistent-device-link-creation-on-multipath-de.patch
+  to solve bnc#872929
+
+-------------------------------------------------------------------
+Wed Apr  9 08:53:21 UTC 2014 - [email protected]
+
+- Increase result size for programs stdout (bnc#867840).
+  add: 1010-udev-increase-result-size-for-programs.patch
+- Update udev-generate-peristent-rule.sh to the latest version.
+- Clean-up spec file, re-arange patch to suit the setup, all udev
+  patches start with 1XXX-*.{patch,diff}.
+- Rename: 0013-cdrom_id-use-the-old-MMC-fallback.patch to
+  1009-cdrom_id-use-the-old-MMC-fallback.patch
+- Rename: 1009-make-xsltproc-use-correct-ROFF-links.patch to
+  0009-make-xsltproc-use-correct-ROFF-links.patch
+- Rename: 1010-do-not-install-sulogin-unit-with-poweroff.patch to
+  0010-do-not-install-sulogin-unit-with-poweroff.patch
+- Rename: 1014-journald-with-journaling-FS.patch to
+  0014-journald-with-journaling-FS.patch
+- Rename: 1018-Make-LSB-Skripts-know-about-Required-and-Should.patch to
+  0018-Make-LSB-Skripts-know-about-Required-and-Should.patch
+- Rename: 1019-make-completion-smart-to-be-able-to-redirect.patch to
+  0019-make-completion-smart-to-be-able-to-redirect.patch
+- Rename: 1022-systemd-tmpfiles-ownerkeep.patch to
+  0022-systemd-tmpfiles-ownerkeep.patch 
+
+-------------------------------------------------------------------
systemd.changes: same change

Old:
----
  0013-cdrom_id-use-the-old-MMC-fallback.patch
  1009-make-xsltproc-use-correct-ROFF-links.patch
  1010-do-not-install-sulogin-unit-with-poweroff.patch
  1014-journald-with-journaling-FS.patch
  1018-Make-LSB-Skripts-know-about-Required-and-Should.patch
  1019-make-completion-smart-to-be-able-to-redirect.patch
  1022-systemd-tmpfiles-ownerkeep.patch

New:
----
  0009-make-xsltproc-use-correct-ROFF-links.patch
  0010-do-not-install-sulogin-unit-with-poweroff.patch
  0014-journald-with-journaling-FS.patch
  0018-Make-LSB-Skripts-know-about-Required-and-Should.patch
  0019-make-completion-smart-to-be-able-to-redirect.patch
  0022-systemd-tmpfiles-ownerkeep.patch
  1009-cdrom_id-use-the-old-MMC-fallback.patch
  1010-udev-increase-result-size-for-programs.patch
  1011-64-btrfs.rules-skip-btrfs-check-if-devices-are-not-r.patch
  1012-Skip-persistent-device-link-creation-on-multipath-de.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ systemd-mini.spec ++++++
--- /var/tmp/diff_new_pack.evyVcI/_old  2014-04-12 22:03:22.000000000 +0200
+++ /var/tmp/diff_new_pack.evyVcI/_new  2014-04-12 22:03:22.000000000 +0200
@@ -339,47 +339,51 @@
 Patch175:       0004-systemd-python-use-.hex-instead-of-.get_hex.patch
 # PATCH-FIX-USTREAM added at 2014/04/08
 Patch176:       0005-systemd-python-fix-failing-assert.patch
-# PATCH-FIX-OPENSUSE 1009-make-xsltproc-use-correct-ROFF-links.patch -- Make 
ROFF links working again in manual pages (bnc#842844)
-Patch1009:      1009-make-xsltproc-use-correct-ROFF-links.patch
-# PATCH-FIX-OPENSUSE 1010-do-not-install-sulogin-unit-with-poweroff.patch -- 
Avoid installing console-shell.service (bnc#849071)
-Patch1010:      1010-do-not-install-sulogin-unit-with-poweroff.patch
+# PATCH-FIX-OPENSUSE 0009-make-xsltproc-use-correct-ROFF-links.patch -- Make 
ROFF links working again in manual pages (bnc#842844)
+Patch177:       0009-make-xsltproc-use-correct-ROFF-links.patch
+# PATCH-FIX-OPENSUSE 0010-do-not-install-sulogin-unit-with-poweroff.patch -- 
Avoid installing console-shell.service (bnc#849071)
+Patch178:       0010-do-not-install-sulogin-unit-with-poweroff.patch
 # PATCH-FIX-SUSE 
0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch
-Patch1012:      
0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch
-# PATCH-FIX-OPENSUSE 1014-journald-with-journaling-FS.patch
-Patch1014:      1014-journald-with-journaling-FS.patch
-# PATCH-FIX-SUSE 1018-Make-LSB-Skripts-know-about-Required-and-Should.patch
-Patch1018:      1018-Make-LSB-Skripts-know-about-Required-and-Should.patch
-# PATCH-FIX-SUSE 1019-make-completion-smart-to-be-able-to-redirect.patch
-Patch1019:      1019-make-completion-smart-to-be-able-to-redirect.patch
+Patch179:       
0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch
+# PATCH-FIX-OPENSUSE 0014-journald-with-journaling-FS.patch
+Patch180:       0014-journald-with-journaling-FS.patch
+# PATCH-FIX-SUSE 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch
+Patch181:       0018-Make-LSB-Skripts-know-about-Required-and-Should.patch
+# PATCH-FIX-SUSE 0019-make-completion-smart-to-be-able-to-redirect.patch
+Patch182:       0019-make-completion-smart-to-be-able-to-redirect.patch
 # PATCH-FIX-SUSE 0001-add-network-device-after-NFS-mount-units.patch 
[email protected]
-Patch1020:      0001-add-network-device-after-NFS-mount-units.patch
-# PATCH-FIX-SUSE 1022-systemd-tmpfiles-ownerkeep.patch
-Patch1022:      1022-systemd-tmpfiles-ownerkeep.patch
+Patch183:       0001-add-network-device-after-NFS-mount-units.patch
+# PATCH-FIX-SUSE 0022-systemd-tmpfiles-ownerkeep.patch
+Patch184:       0022-systemd-tmpfiles-ownerkeep.patch
 # PATCH-FIX-SUSE systemd-powerd-initctl-support.patch
-Patch1023:      systemd-powerd-initctl-support.patch
+Patch185:       systemd-powerd-initctl-support.patch
 # PATCH-FIX-SUSE systemctl-set-default-target.patch
-Patch1024:      systemctl-set-default-target.patch
+Patch186:       systemctl-set-default-target.patch
 # PATCH-FIX-SUSE prepare-suspend-to-disk.patch (fate #316824)
-Patch1025:      prepare-suspend-to-disk.patch
+Patch187:       prepare-suspend-to-disk.patch
 # PATCH-FIX-SUSE boot-local-start.patch (bnc #869142)
-Patch1026:      boot-local-start.patch
+Patch188:       boot-local-start.patch
 # PATCH-FIX-SUSE avoid random hangs on timeouts due lost cwd at terminating 
user manager
-Patch1027:      avoid-random-hangs-on-timeouts-due-lost-cwd.patch
-
+Patch189:       avoid-random-hangs-on-timeouts-due-lost-cwd.patch
 # PATCH-FIX-SUSE systemd-install-compat_pkgconfig-always.patch
-Patch1999:      systemd-install-compat_pkgconfig-always.patch
+Patch190:       systemd-install-compat_pkgconfig-always.patch
 # PATCH-FIX-OPENSUSE systemd-dbus-system-bus-address.patch always use 
/run/dbus not /var/run
-Patch2000:      systemd-dbus-system-bus-address.patch
+Patch191:       systemd-dbus-system-bus-address.patch
 # PATCH-FIX-SUSE During linkage of systemd-cryptsetup let linker find libudev 
for libdevmapper
-Patch2001:      let-linker-find-libudev-for-libdevmapper.patch
+Patch192:       let-linker-find-libudev-for-libdevmapper.patch
 # PATCH-FIX-SUSE Make sure that rpcbind socket as well as service is up with 
the target
-Patch2002:      portmap-wants-rpcbind-socket.patch
-
-# udev patches
-# PATCH-FIX-USTREAM added at 2014/03/03
-Patch1034:      0013-cdrom_id-use-the-old-MMC-fallback.patch
+Patch193:       portmap-wants-rpcbind-socket.patch
 # PATCH-FIX-USTREAM added at 2014/03/11
-Patch1035:      0007-dbus-suppress-duplicate-and-misleading-messages.patch
+Patch194:       0007-dbus-suppress-duplicate-and-misleading-messages.patch
+
+# UDEV PATCHES
+# ============
+# NOTE: all udev patches start with 1XXX-*.patch, do not use anything else.
+#       Udev patches mean: patches that affect udev code, src/{udev,libudev}
+#       nothing else, even if the patch might affect indirectly udev, as long
+#       as it's not changing the code of udev and libudev, then is not a udev
+#       patch. Further patches which add and/or changes udev rules.
+
 # PATCH-FIX-OPENSUSE 1001-re-enable-by_path-links-for-ata-devices.patch
 Patch1001:      1001-re-enable-by_path-links-for-ata-devices.patch
 # PATCH-FIX-OPENSUSE 1002-rules-create-by-id-scsi-links-for-ATA-devices.patch
@@ -394,6 +398,14 @@
 Patch1007:      1007-physical-hotplug-cpu-and-memory.patch
 # PATCH-FIX-OPENSUSE 1008-add-msft-compability-rules.patch -- for code base <= 
1310
 Patch1008:      1008-add-msft-compability-rules.patch
+# PATCH-FIX-USTREAM added at 2014/03/03
+Patch1009:      1009-cdrom_id-use-the-old-MMC-fallback.patch
+# PATCH-FIX-SUSE increase result size for programs (bnc#867840)
+Patch1010:      1010-udev-increase-result-size-for-programs.patch
+# PATCH-FIX-SUSE skip btrfs check if devices are not ready (bnc#872929)
+Patch1011:      1011-64-btrfs.rules-skip-btrfs-check-if-devices-are-not-r.patch
+# PATCH-FIX-SUSE skip persistent device link creation on mp device (bnc#872929)
+Patch1012:      1012-Skip-persistent-device-link-creation-on-multipath-de.patch
 
 %description
 Systemd is a system and service manager, compatible with SysV and LSB
@@ -707,26 +719,26 @@
 %patch174 -p0
 %patch175 -p0
 %patch176 -p0
-%patch1009 -p1
-%patch1010 -p1
-%patch1012 -p1
-%patch1014 -p1
-%patch1018 -p1
-%patch1019 -p1
-%patch1020 -p1
-%patch1022 -p1
-%patch1023 -p1
-%patch1024 -p1
-%patch1025 -p1
-%patch1026 -p1
-%patch1027 -p1
-%patch1999 -p1
-%patch2000 -p1
-%patch2001 -p1
-%patch2002 -p1
+%patch177 -p1
+%patch178 -p1
+%patch179 -p1
+%patch180 -p1
+%patch181 -p1
+%patch182 -p1
+%patch183 -p1
+%patch184 -p1
+%patch185 -p1
+%patch186 -p1
+%patch187 -p1
+%patch188 -p1
+%patch189 -p1
+%patch190 -p1
+%patch191 -p1
+%patch192 -p1
+%patch193 -p1
+%patch194 -p0
+
 # udev patches
-%patch1034 -p0
-%patch1035 -p0
 %patch1001 -p1
 %patch1002 -p1
 %patch1003 -p1
@@ -736,6 +748,10 @@
 %if 0%{?suse_version} <= 1310
 %patch1008 -p1
 %endif
+%patch1009 -p1
+%patch1010 -p1
+%patch1011 -p1
+%patch1012 -p1
 
 # ensure generate files are removed
 rm -f units/emergency.service

++++++ systemd.spec ++++++
--- /var/tmp/diff_new_pack.evyVcI/_old  2014-04-12 22:03:22.000000000 +0200
+++ /var/tmp/diff_new_pack.evyVcI/_new  2014-04-12 22:03:22.000000000 +0200
@@ -334,47 +334,51 @@
 Patch175:       0004-systemd-python-use-.hex-instead-of-.get_hex.patch
 # PATCH-FIX-USTREAM added at 2014/04/08
 Patch176:       0005-systemd-python-fix-failing-assert.patch
-# PATCH-FIX-OPENSUSE 1009-make-xsltproc-use-correct-ROFF-links.patch -- Make 
ROFF links working again in manual pages (bnc#842844)
-Patch1009:      1009-make-xsltproc-use-correct-ROFF-links.patch
-# PATCH-FIX-OPENSUSE 1010-do-not-install-sulogin-unit-with-poweroff.patch -- 
Avoid installing console-shell.service (bnc#849071)
-Patch1010:      1010-do-not-install-sulogin-unit-with-poweroff.patch
+# PATCH-FIX-OPENSUSE 0009-make-xsltproc-use-correct-ROFF-links.patch -- Make 
ROFF links working again in manual pages (bnc#842844)
+Patch177:       0009-make-xsltproc-use-correct-ROFF-links.patch
+# PATCH-FIX-OPENSUSE 0010-do-not-install-sulogin-unit-with-poweroff.patch -- 
Avoid installing console-shell.service (bnc#849071)
+Patch178:       0010-do-not-install-sulogin-unit-with-poweroff.patch
 # PATCH-FIX-SUSE 
0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch
-Patch1012:      
0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch
-# PATCH-FIX-OPENSUSE 1014-journald-with-journaling-FS.patch
-Patch1014:      1014-journald-with-journaling-FS.patch
-# PATCH-FIX-SUSE 1018-Make-LSB-Skripts-know-about-Required-and-Should.patch
-Patch1018:      1018-Make-LSB-Skripts-know-about-Required-and-Should.patch
-# PATCH-FIX-SUSE 1019-make-completion-smart-to-be-able-to-redirect.patch
-Patch1019:      1019-make-completion-smart-to-be-able-to-redirect.patch
+Patch179:       
0001-pam_systemd_do_override_XDG_RUNTIME_DIR_of_the_original_user.patch
+# PATCH-FIX-OPENSUSE 0014-journald-with-journaling-FS.patch
+Patch180:       0014-journald-with-journaling-FS.patch
+# PATCH-FIX-SUSE 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch
+Patch181:       0018-Make-LSB-Skripts-know-about-Required-and-Should.patch
+# PATCH-FIX-SUSE 0019-make-completion-smart-to-be-able-to-redirect.patch
+Patch182:       0019-make-completion-smart-to-be-able-to-redirect.patch
 # PATCH-FIX-SUSE 0001-add-network-device-after-NFS-mount-units.patch 
[email protected]
-Patch1020:      0001-add-network-device-after-NFS-mount-units.patch
-# PATCH-FIX-SUSE 1022-systemd-tmpfiles-ownerkeep.patch
-Patch1022:      1022-systemd-tmpfiles-ownerkeep.patch
+Patch183:       0001-add-network-device-after-NFS-mount-units.patch
+# PATCH-FIX-SUSE 0022-systemd-tmpfiles-ownerkeep.patch
+Patch184:       0022-systemd-tmpfiles-ownerkeep.patch
 # PATCH-FIX-SUSE systemd-powerd-initctl-support.patch
-Patch1023:      systemd-powerd-initctl-support.patch
+Patch185:       systemd-powerd-initctl-support.patch
 # PATCH-FIX-SUSE systemctl-set-default-target.patch
-Patch1024:      systemctl-set-default-target.patch
+Patch186:       systemctl-set-default-target.patch
 # PATCH-FIX-SUSE prepare-suspend-to-disk.patch (fate #316824)
-Patch1025:      prepare-suspend-to-disk.patch
+Patch187:       prepare-suspend-to-disk.patch
 # PATCH-FIX-SUSE boot-local-start.patch (bnc #869142)
-Patch1026:      boot-local-start.patch
+Patch188:       boot-local-start.patch
 # PATCH-FIX-SUSE avoid random hangs on timeouts due lost cwd at terminating 
user manager
-Patch1027:      avoid-random-hangs-on-timeouts-due-lost-cwd.patch
-
+Patch189:       avoid-random-hangs-on-timeouts-due-lost-cwd.patch
 # PATCH-FIX-SUSE systemd-install-compat_pkgconfig-always.patch
-Patch1999:      systemd-install-compat_pkgconfig-always.patch
+Patch190:       systemd-install-compat_pkgconfig-always.patch
 # PATCH-FIX-OPENSUSE systemd-dbus-system-bus-address.patch always use 
/run/dbus not /var/run
-Patch2000:      systemd-dbus-system-bus-address.patch
+Patch191:       systemd-dbus-system-bus-address.patch
 # PATCH-FIX-SUSE During linkage of systemd-cryptsetup let linker find libudev 
for libdevmapper
-Patch2001:      let-linker-find-libudev-for-libdevmapper.patch
+Patch192:       let-linker-find-libudev-for-libdevmapper.patch
 # PATCH-FIX-SUSE Make sure that rpcbind socket as well as service is up with 
the target
-Patch2002:      portmap-wants-rpcbind-socket.patch
-
-# udev patches
-# PATCH-FIX-USTREAM added at 2014/03/03
-Patch1034:      0013-cdrom_id-use-the-old-MMC-fallback.patch
+Patch193:       portmap-wants-rpcbind-socket.patch
 # PATCH-FIX-USTREAM added at 2014/03/11
-Patch1035:      0007-dbus-suppress-duplicate-and-misleading-messages.patch
+Patch194:       0007-dbus-suppress-duplicate-and-misleading-messages.patch
+
+# UDEV PATCHES
+# ============
+# NOTE: all udev patches start with 1XXX-*.patch, do not use anything else.
+#       Udev patches mean: patches that affect udev code, src/{udev,libudev}
+#       nothing else, even if the patch might affect indirectly udev, as long
+#       as it's not changing the code of udev and libudev, then is not a udev
+#       patch. Further patches which add and/or changes udev rules.
+
 # PATCH-FIX-OPENSUSE 1001-re-enable-by_path-links-for-ata-devices.patch
 Patch1001:      1001-re-enable-by_path-links-for-ata-devices.patch
 # PATCH-FIX-OPENSUSE 1002-rules-create-by-id-scsi-links-for-ATA-devices.patch
@@ -389,6 +393,14 @@
 Patch1007:      1007-physical-hotplug-cpu-and-memory.patch
 # PATCH-FIX-OPENSUSE 1008-add-msft-compability-rules.patch -- for code base <= 
1310
 Patch1008:      1008-add-msft-compability-rules.patch
+# PATCH-FIX-USTREAM added at 2014/03/03
+Patch1009:      1009-cdrom_id-use-the-old-MMC-fallback.patch
+# PATCH-FIX-SUSE increase result size for programs (bnc#867840)
+Patch1010:      1010-udev-increase-result-size-for-programs.patch
+# PATCH-FIX-SUSE skip btrfs check if devices are not ready (bnc#872929)
+Patch1011:      1011-64-btrfs.rules-skip-btrfs-check-if-devices-are-not-r.patch
+# PATCH-FIX-SUSE skip persistent device link creation on mp device (bnc#872929)
+Patch1012:      1012-Skip-persistent-device-link-creation-on-multipath-de.patch
 
 %description
 Systemd is a system and service manager, compatible with SysV and LSB
@@ -702,26 +714,26 @@
 %patch174 -p0
 %patch175 -p0
 %patch176 -p0
-%patch1009 -p1
-%patch1010 -p1
-%patch1012 -p1
-%patch1014 -p1
-%patch1018 -p1
-%patch1019 -p1
-%patch1020 -p1
-%patch1022 -p1
-%patch1023 -p1
-%patch1024 -p1
-%patch1025 -p1
-%patch1026 -p1
-%patch1027 -p1
-%patch1999 -p1
-%patch2000 -p1
-%patch2001 -p1
-%patch2002 -p1
+%patch177 -p1
+%patch178 -p1
+%patch179 -p1
+%patch180 -p1
+%patch181 -p1
+%patch182 -p1
+%patch183 -p1
+%patch184 -p1
+%patch185 -p1
+%patch186 -p1
+%patch187 -p1
+%patch188 -p1
+%patch189 -p1
+%patch190 -p1
+%patch191 -p1
+%patch192 -p1
+%patch193 -p1
+%patch194 -p0
+
 # udev patches
-%patch1034 -p0
-%patch1035 -p0
 %patch1001 -p1
 %patch1002 -p1
 %patch1003 -p1
@@ -731,6 +743,10 @@
 %if 0%{?suse_version} <= 1310
 %patch1008 -p1
 %endif
+%patch1009 -p1
+%patch1010 -p1
+%patch1011 -p1
+%patch1012 -p1
 
 # ensure generate files are removed
 rm -f units/emergency.service

++++++ 1009-make-xsltproc-use-correct-ROFF-links.patch -> 
0009-make-xsltproc-use-correct-ROFF-links.patch ++++++

++++++ 1010-do-not-install-sulogin-unit-with-poweroff.patch -> 
0010-do-not-install-sulogin-unit-with-poweroff.patch ++++++

++++++ 1014-journald-with-journaling-FS.patch -> 
0014-journald-with-journaling-FS.patch ++++++

++++++ 1018-Make-LSB-Skripts-know-about-Required-and-Should.patch -> 
0018-Make-LSB-Skripts-know-about-Required-and-Should.patch ++++++

++++++ 1019-make-completion-smart-to-be-able-to-redirect.patch -> 
0019-make-completion-smart-to-be-able-to-redirect.patch ++++++

++++++ 1022-systemd-tmpfiles-ownerkeep.patch -> 
0022-systemd-tmpfiles-ownerkeep.patch ++++++

++++++ 0013-cdrom_id-use-the-old-MMC-fallback.patch -> 
1009-cdrom_id-use-the-old-MMC-fallback.patch ++++++
--- 
/work/SRC/openSUSE:Factory/systemd/0013-cdrom_id-use-the-old-MMC-fallback.patch 
    2014-03-11 09:24:19.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.systemd.new/1009-cdrom_id-use-the-old-MMC-fallback.patch
        2014-04-12 21:58:05.000000000 +0200
@@ -38,8 +38,8 @@
 
 diff --git src/udev/cdrom_id/cdrom_id.c src/udev/cdrom_id/cdrom_id.c
 index 93467c2..33b2bc3 100644
---- src/udev/cdrom_id/cdrom_id.c
-+++ src/udev/cdrom_id/cdrom_id.c
+--- a/src/udev/cdrom_id/cdrom_id.c
++++ b/src/udev/cdrom_id/cdrom_id.c
 @@ -556,7 +556,7 @@ static int cd_profiles(struct udev *udev, int fd)
          if ((err != 0)) {
                  info_scsi_cmd_err(udev, "GET CONFIGURATION", err);

++++++ 1010-udev-increase-result-size-for-programs.patch ++++++
Index: systemd-210/src/udev/udev-rules.c
===================================================================
--- systemd-210.orig/src/udev/udev-rules.c
+++ systemd-210/src/udev/udev-rules.c
@@ -2027,7 +2027,7 @@ int udev_rules_apply_to_event(struct ude
                 case TK_M_PROGRAM: {
                         char program[UTIL_PATH_SIZE];
                         char **envp;
-                        char result[UTIL_PATH_SIZE];
+                        char result[UTIL_LINE_SIZE];
 
                         free(event->program_result);
                         event->program_result = NULL;
++++++ 1011-64-btrfs.rules-skip-btrfs-check-if-devices-are-not-r.patch ++++++
>From e26a5bb50b8aa741c5b2e57749d576c488e7ab32 Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <[email protected]>
Date: Thu, 10 Apr 2014 11:10:41 +0200
Subject: [PATCH 1/2] 64-btrfs.rules: skip btrfs check if devices are not ready

If any devices are marked with 'SYSTEMD_READY=0' then
we shouldn't run any btrfs check on them.

---
 rules/64-btrfs.rules | 1 +
 1 file changed, 1 insertion(+)

diff --git a/rules/64-btrfs.rules b/rules/64-btrfs.rules
index fe01001..57631bc 100644
--- a/rules/64-btrfs.rules
+++ b/rules/64-btrfs.rules
@@ -3,6 +3,7 @@
 SUBSYSTEM!="block", GOTO="btrfs_end"
 ACTION=="remove", GOTO="btrfs_end"
 ENV{ID_FS_TYPE}!="btrfs", GOTO="btrfs_end"
+ENV{SYSTEMD_READY}=="0", GOTO="btrfs_end"
 
 # let the kernel know about this btrfs filesystem, and check if it is complete
 IMPORT{builtin}="btrfs ready $devnode"
-- 
1.8.1.4

++++++ 1012-Skip-persistent-device-link-creation-on-multipath-de.patch ++++++
>From f9e1ee09fadbd4fb146d4f7bb45a6212773dff63 Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <[email protected]>
Date: Thu, 10 Apr 2014 11:14:20 +0200
Subject: [PATCH 2/2] Skip persistent device link creation on multipath device
 paths

When a device is marked as a multipath device path by setting
DM_MULTIPATH_DEVICE_PATH="1" udev should not create any
persistent symlinks to that device.
Otherwise systemd will get confused about which device to use.

---
 rules/60-persistent-storage.rules | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/rules/60-persistent-storage.rules 
b/rules/60-persistent-storage.rules
index 1208bd3..fd5bedd 100644
--- a/rules/60-persistent-storage.rules
+++ b/rules/60-persistent-storage.rules
@@ -39,8 +39,8 @@ KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", 
SUBSYSTEMS=="usb", IMPORT{builtin
 # scsi devices
 KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id 
--export --whitelisted -d $devnode", ENV{ID_BUS}="scsi"
 KERNEL=="cciss*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}!="?*", 
IMPORT{program}="scsi_id --export --whitelisted -d $devnode", 
ENV{ID_BUS}="cciss"
-KERNEL=="sd*|sr*|cciss*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}=="?*", 
SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
-KERNEL=="sd*|cciss*", ENV{DEVTYPE}=="partition", ENV{ID_SERIAL}=="?*", 
SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n"
+KERNEL=="sd*|sr*|cciss*", ENV{DEVTYPE}=="disk", 
ENV{DM_MULTIPATH_DEVICE_PATH}!="1", ENV{ID_SERIAL}=="?*", 
SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
+KERNEL=="sd*|cciss*", ENV{DEVTYPE}=="partition", 
ENV{DM_MULTIPATH_DEVICE_PATH}!="1", ENV{ID_SERIAL}=="?*", 
SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n"
 
 # scsi compat links for ATA devices
 KERNEL=="sd*[!0-9]", ENV{ID_BUS}=="ata", PROGRAM="scsi_id --whitelisted 
--replace-whitespace -p0x80 -d $devnode", RESULT=="?*", 
ENV{ID_SCSI_COMPAT}="$result", SYMLINK+="disk/by-id/scsi-$env{ID_SCSI_COMPAT}"
@@ -70,6 +70,9 @@ KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", 
ENV{ID_CDROM_MEDIA_TRACK_COUNT_DAT
 KERNEL=="sr*", ENV{DISK_EJECT_REQUEST}!="?*", 
ENV{ID_CDROM_MEDIA_TRACK_COUNT_DATA}=="?*", 
ENV{ID_CDROM_MEDIA_SESSION_LAST_OFFSET}=="", \
   IMPORT{builtin}="blkid --noraid"
 
+# Skip blkid on multipath device paths
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="persistent_storage_end"
+
 # probe filesystem metadata of disks
 KERNEL!="sr*", IMPORT{builtin}="blkid"
 
-- 
1.8.1.4

++++++ udev-generate-peristent-rule.sh ++++++
--- /var/tmp/diff_new_pack.evyVcI/_old  2014-04-12 22:03:22.000000000 +0200
+++ /var/tmp/diff_new_pack.evyVcI/_new  2014-04-12 22:03:22.000000000 +0200
@@ -9,17 +9,19 @@
 #
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
 # This script run manually by user, will generate a persistent rule for
 # a given network interface to rename it to new interface name.
 #
 
-prj=${0##*/}
+_prj="$(basename $0 2>/dev/null)"
+prj="${_prj%.*}"
+ver="0.2"
 
 log_info()
 {
@@ -29,28 +31,33 @@
 
 log_error()
 {
- local msg=$1
+ local msg="$1"
  echo "$prj: $msg" >&2
 }
 
 usage()
 {
-  set -f
   cat << EOF
-$prj: udev persistent rule generator
+$prj: udev persistent rule generator script
 
 Usage: $prj [OPTION] ...
 
-       -h                show this help
-       -m                generate the persistent rule based on interface MAC 
address
-       -p                generate the persistent rule based on interface PCI 
slot
-       -v                be verbose
-       -c <INTERFACE>    current interface name (ex: "ip a s")
-       -n <INTERFACE>    new interface name (ex: net0)
-       -o <FILE>         where to write the new generate rule (default: 
/dev/stdout)
-                         prefered location is 
/etc/udev/rules.d/70-persistent-net.rules
+       -h              Show this help
+       -l              List available interfaces
+       -m              Generate the persistent rule based on interface MAC 
address
+                       default option, if nothing is specified
+       -p              Generate the persistent rule based on interface PCI slot
+       -v              Be more verbose
+       -V              Output the version number
+       -c [INTERFACE]  Current interface name (ex: ip link)
+                       only needed for retrieving information
+       -n [INTERFACE]  New interface name (ex: net0)
+       -o [FILE]       Where to write the new generate rule (default: 
/dev/stdout)
+                       prefered location is 
/etc/udev/rules.d/70-persistent-net.rules
 
 Example:
+       $prj -v -c enp0s4 -n lan0
+    or
        $prj -m -c enp0s4 -n net0 -o /etc/udev/rules.d/70-persistent-net.rules
     or
        $prj -p -c wlp3s0 -n wlan0 -o /etc/udev/rules.d/50-mynet.rules
@@ -60,22 +67,19 @@
 
 display_note()
 {
-  cat <<'EOF'
-
-NOTE: Using the generate persistent rule might mean you will need to do extra
-work to ensure that it will work accordingly.     This mean, regenerating the
-initramfs/initrd image and/or using 'net.ifnames=0' option at boot time.
-
-In openSUSE/SUSE, the user will need to regenerate the initramfs/initrd image,
-but usually there is no need for 'net.ifnames=0' option if the persistent rule
-is available in initramfs/initrd image.
+  cat << EOF
 
+NOTE: Using the generate persistent rule might mean you will need to do extra 
work to ensure
+that it will work accordingly. This mean, regenerating the initramfs/initrd 
image and/or using 
+'net.ifnames=0' option at boot time.
+In openSUSE/SUSE, the user will need to regenerate the initramfs/initrd image, 
but usually there
+is no need for 'net.ifnames=0' option if the persistent rule is available in 
initramfs/initrd image.
 EOF
 }
 
 get_pci()
 {
-  local path=$1
+  local path="$1"
   local pci=""
 
   if [ -L "$path/device" ]; then
@@ -87,7 +91,7 @@
 
 get_pci_id()
 {
-  local path=$1
+  local path="$1"
   local pci_id=""
 
   if [ -r "$path/device/uevent" ]; then
@@ -99,7 +103,7 @@
 
 get_macaddr()
 {
-  local path=$1
+  local path="$1"
   local macaddr=""
 
   if [ -r "$path/address" ]; then
@@ -110,7 +114,7 @@
 
 get_type()
 {
-  local path=$1
+  local path="$1"
   local dev_type=""
   
   if [ -r "$path/type" ]; then
@@ -121,7 +125,7 @@
 
 get_dev_id()
 {
-  local path=$1
+  local path="$1"
   local dev_id=""
 
   if [ -r "$path/dev_id" ]; then
@@ -132,7 +136,7 @@
 
 get_devtype()
 {
-  local path=$1
+  local path="$1"
   local devtype=""
   if [ -r "$path/uevent" ]; then
      local _devtype="$(cat $path/uevent|grep ^DEVTYPE 2>/dev/null)"
@@ -143,7 +147,7 @@
 
 get_subsystem()
 {
-  local path=$1
+  local path="$1"
   local subsystem=""
 
   if [ -L "$path/subsystem" ]; then
@@ -153,9 +157,21 @@
   echo $subsystem
 }
 
+get_parent_subsystem()
+{
+  local path="$1"
+  local subsystem=""
+
+  if [ -L "$path/device/subsystem" ]; then
+     local subsystem_link="$(readlink -f $path/device/subsystem 2>/dev/null)"
+     subsystem="$(basename $subsystem_link 2>/dev/null)"
+  fi
+  echo $subsystem
+}
+
 get_driver()
 {
-  local path=$1
+  local path="$1"
   local driver=""
 
   if [ -L "$path/device/driver" ]; then
@@ -167,7 +183,7 @@
 
 valid_mac()
 {
-  local macaddr=$1
+  local macaddr="$1"
   local valid_macaddr=""
 
   if [ -n "$macaddr" ]; then
@@ -178,9 +194,11 @@
 
 generate_comment()
 {
-  local pci_id=$1
-  local driver=$2
-  local output=$3
+  local pci_id="$1"
+  local driver="$2"
+  local output="$3"
+  local device_type="$4"
+  local _type=""
   
   if [ -z "$pci_id" ]; then
      log_error "\$pci_id empty."
@@ -192,20 +210,27 @@
      log_error "\$output empty."
      exit 1
   else
-     echo "# PCI device $pci_id ($driver) with official udev name $interface 
renamed to unsupported $new_interface" >> $output
+     if [ "$device_type" == "pci" ]; then
+        _type="PCI"
+     elif [ "$device_type" == "usb" ]; then
+        _type="USB"
+     else
+        _type="Unknown"
+     fi
+     echo "# $_type device $pci_id ($driver)" >> $output
   fi
 }
 
 generate_rule()
 {
-  local _subsystem=$1
-  local _mac=$2
-  local _pci=$3
-  local _dev_id=$4
-  local _dev_type=$5
-  local _kernel=$6
-  local _interface=$7
-  local output=$8
+  local _subsystem="$1"
+  local _mac="$2"
+  local _pci="$3"
+  local _dev_id="$4"
+  local _dev_type="$5"
+  local _kernel="$6"
+  local _interface="$7"
+  local output="$8"
 
   if [ -z "$_subsystem" ]; then
      log_error "\$_subsystem empty."
@@ -238,26 +263,57 @@
   fi
 }
 
+list_adapters()
+{
+  declare -a netdev
+  local count=0
+  local _netdev=""
+  local _dev=""
+
+  for _dev in $SYSPATH/*; do
+      if [ -L "$_dev/device" ]; then
+         _dev="$(basename $_dev 2>/dev/null)"
+         netdev[$count]="$_dev"
+         count=$((count + 1))
+      fi
+  done
+
+  echo "Found $count network interfaces:"
+  for _netdev in "${netdev[@]}"; do
+     _macaddr="$(get_macaddr $SYSPATH/$_netdev)"
+     _pcislot="$(get_pci $SYSPATH/$_netdev)"
+     echo "I: INTERFACE: $_netdev"
+     echo "I: MACADDR: $_macaddr"
+     echo "I: PCI: $_pcislot"
+  done
+}
+
 if [ $# -eq 0 ]; then
    usage
    log_error "missing option(s)."
    exit 1
 fi
 
+SYSPATH="/sys/class/net"
+
 use_mac=0
 use_pci=0
 use_verbose=0
 
-while getopts "hmpvc:n:o:" opt; do
+while getopts "hlmpvVc:n:o:" opt; do
   case "$opt" in
      h)
        usage; exit 0;;
+     l)
+       list_adapters; exit 0;;
      m)
        use_mac=1 ;;
      p)
        use_pci=1 ;;
      v)
        use_verbose=1 ;;
+     V)
+       echo "$prj $ver"; exit 0;;
      c)
        ifcur="$OPTARG" ;;
      n)
@@ -269,14 +325,18 @@
   esac
 done
 
+if [[ "$use_mac" -eq 0 ]] && [[ "$use_pci" -eq 0 ]]; then
+   use_mac=1
+fi
+
 if [[ "$use_mac" -eq 1 ]] && [[ "$use_pci" -eq 1 ]]; then
    log_error "generating a persistent rule can be done only using one of the 
option, -m or -p, not both."
    exit 1
 fi
 
-outfile=$output
+outfile="$output"
 if [ -z "$output" ]; then
-   outfile=/dev/stdout
+   outfile="/dev/stdout"
 else
    dir="$(dirname $outfile 2>/dev/null)"
    tmpfile="$dir/.tmp_file"
@@ -293,7 +353,7 @@
   fi
 fi
 
-interface=$ifcur
+interface="$ifcur"
 if [ -z "$interface" ]; then
    log_error "current interface must be specified."
    exit 1
@@ -303,7 +363,7 @@
 fi
 [ "$use_verbose" -eq 1 ] && echo "I: INTERFACE=$interface"
 
-new_interface=$ifnew
+new_interface="$ifnew"
 if [ -z "$new_interface" ]; then
    log_error "new interface must be specified."
    exit 1
@@ -313,7 +373,7 @@
 fi
 [ "$use_verbose" -eq 1 ] && echo "I: INTERFACE_NEW=$new_interface"
 
-path="/sys/class/net/$interface"
+path="$SYSPATH/$interface"
 if [ ! -d "$path" ]; then
    log_error "devpath $path not a directory."
    exit 1
@@ -325,6 +385,13 @@
    [ "$use_verbose" -eq 1 ] && echo "I: DEVTYPE=$devtype"
 fi
 
+parent_subsystem="$(get_parent_subsystem $path)"
+if [ -z "$parent_subsystem" ]; then
+   log_error "unable to retrieve parent subsystem for interface $interface."
+   exit 1
+fi
+[ "$use_verbose" -eq 1 ] && echo "I: PARENT_SUBSYSTEM=$parent_subsystem"
+
 subsystem="$(get_subsystem $path)"
 if [ -z "$subsystem" ]; then
    log_error "unable to retrieve subsystem for interface $interface."
@@ -334,8 +401,7 @@
 
 pci_id="$(get_pci_id $path)"
 if [ -z "$pci_id" ]; then
-   log_error "unable to retrieve PCI_ID for interface $interface."
-   exit 1
+   pci_id="0x:0x"
 fi
 [ "$use_verbose" -eq 1 ] && echo "I: PCI_ID=$pci_id"
 
@@ -382,23 +448,22 @@
 fi
 [ "$use_verbose" -eq 1 ] && echo "I: TYPE=$dev_type"
 
-if [ "$devtype" == "wlan" ]; then
-   kernel="wlan*"
-else
-   kernel="eth*"
+kernel="eth*"
+if [ -n "$devtype" ]; then
+   if [ "$devtype" == "wlan" ]; then
+      kernel="wlan*"
+   fi
 fi
 
 if [ -n "$output" ]; then
-   echo "Persistent rule saved in "$outfile""
-   echo
-   generate_comment "$pci_id" "$driver" "$output"
+   echo "Persistent rule written to "$outfile""
+   generate_comment "$pci_id" "$driver" "$outfile" "$parent_subsystem"
 fi
 
-set -f
 if [ "$use_mac" -eq 1 ]; then
    generate_rule "$subsystem" "$macaddr" "none" "$dev_id" "$dev_type" 
"$kernel" "$new_interface"
    if [ -n "$output" ]; then
-      generate_rule "$subsystem" "$macaddr" "none" "$dev_id" "$dev_type" 
"$kernel" "$new_interface" "$output"
+      generate_rule "$subsystem" "$macaddr" "none" "$dev_id" "$dev_type" 
"$kernel" "$new_interface" "$outfile"
    fi
 elif [ "$use_pci" -eq 1 ]; then
    generate_rule "$subsystem" "none" "$pci" "$dev_id" "$dev_type" "$kernel" 
"$new_interface"

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to