From: Frederic Crozat <fcrozat@suse.com>
Date: Mon, 29 Oct 2012 13:01:20 +0000
Subject: restore /var/run and /var/lock bind mount if they aren't symlink

---
 Makefile.am          |  9 +++++++++
 units/var-lock.mount | 19 +++++++++++++++++++
 units/var-run.mount  | 19 +++++++++++++++++++
 3 files changed, 47 insertions(+)
 create mode 100644 units/var-lock.mount
 create mode 100644 units/var-run.mount

--- systemd-206_git201308300826.orig/Makefile.am
+++ systemd-206_git201308300826/Makefile.am
@@ -419,6 +419,12 @@ dist_systemunit_DATA = \
 	units/system-update.target \
 	units/initrd-switch-root.target
 
+if HAVE_SYSV_COMPAT
+dist_systemunit_DATA += \
+	units/var-run.mount \
+	units/var-lock.mount
+endif
+
 nodist_systemunit_DATA = \
 	units/getty@.service \
 	units/serial-getty@.service \
@@ -4379,6 +4385,9 @@ RUNLEVEL4_TARGET_WANTS += \
 	systemd-update-utmp-runlevel.service
 RUNLEVEL5_TARGET_WANTS += \
 	systemd-update-utmp-runlevel.service
+LOCAL_FS_TARGET_WANTS += \
+	var-run.mount \
+	var-lock.mount
 endif
 SYSINIT_TARGET_WANTS += \
 	systemd-update-utmp.service
--- /dev/null
+++ systemd-206_git201308300826/units/var-lock.mount
@@ -0,0 +1,19 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2 of the License, or
+#  (at your option) any later version.
+
+[Unit]
+Description=Lock Directory
+Before=local-fs.target
+# skip mounting if the directory does not exist or is a symlink
+ConditionPathIsDirectory=/var/lock
+ConditionPathIsSymbolicLink=!/var/lock
+
+[Mount]
+What=/run/lock
+Where=/var/lock
+Type=bind
+Options=bind
--- /dev/null
+++ systemd-206_git201308300826/units/var-run.mount
@@ -0,0 +1,19 @@
+#  This file is part of systemd.
+#
+#  systemd is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2 of the License, or
+#  (at your option) any later version.
+
+[Unit]
+Description=Runtime Directory
+Before=local-fs.target
+# skip mounting if the directory does not exist or is a symlink
+ConditionPathIsDirectory=/var/run
+ConditionPathIsSymbolicLink=!/var/run
+
+[Mount]
+What=/run
+Where=/var/run
+Type=bind
+Options=bind
