summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
diff options
context:
space:
mode:
authorSaul Wold <sgw@linux.intel.com>2013-06-25 15:14:48 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-07-09 10:53:56 +0100
commitf0b927882cf8911eb1cff83e2afa6198143890b0 (patch)
treeafa1f5240e2fd7806aee88f29a04aae62b00aab4 /meta/recipes-core
parentd207bebb74b53dc1ad9e5a9f7a9f4fbe42760725 (diff)
downloadpoky-f0b927882cf8911eb1cff83e2afa6198143890b0.tar.gz
systemd: Ensure that we mount devtmpfs
Since systemd also used tmpfs we should make a similar patch for the systemd-udev script Fix for bug: https://bugzilla.yoctoproject.org/show_bug.cgi?id=4632 Since udev 172, the 'mknod' logic was removed from udev. Yocto Dylan is now using udev 182. This means /dev is now required to be a devtmpfs filesystem (maintained by the kernel). If the root filesystem is a ramdisk, the kernel's auto-mount of /dev doesn't activate since there is no rootfs to actually mount... The bug causes an unusable system as /dev doesn't contain even basic nodes required to even get a login prompt. The Yocto udev/init script mounts tmpfs if it does not detect tmpfs or devtmpfs mounted at /dev. This appears to be outdated logic that is no longer correct. I believe the Yocto udev init script should be checking and mounting only 'devtmpfs' on dev. (From OE-Core master rev: d3616f31617830cac9375e8f4aa33e344ac554ed) (From OE-Core rev: 20b50e8d99fa58818a23d3e82411ac1691e6552d) Signed-off-by: Alex Olson <alex.olson+yocto@gmail.com> [YOCTO #4632] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r--meta/recipes-core/systemd/systemd/init6
1 files changed, 3 insertions, 3 deletions
diff --git a/meta/recipes-core/systemd/systemd/init b/meta/recipes-core/systemd/systemd/init
index 971e4e9cd2..22997fc864 100644
--- a/meta/recipes-core/systemd/systemd/init
+++ b/meta/recipes-core/systemd/systemd/init
@@ -35,9 +35,9 @@ case "$1" in
35 # propagate /dev from /sys 35 # propagate /dev from /sys
36 echo "Starting udev" 36 echo "Starting udev"
37 37
38 # mount the tmpfs on /dev, if not already done 38 # mount the devtmpfs on /dev, if not already done
39 LANG=C awk '$2 == "/dev" && ($3 == "tmpfs" || $3 == "devtmpfs") { exit 1 }' /proc/mounts && { 39 LANG=C awk '$2 == "/dev" && ($3 == "devtmpfs") { exit 1 }' /proc/mounts && {
40 mount -n -o mode=0755 -t tmpfs none "/dev" 40 mount -n -o mode=0755 -t devtmpfs none "/dev"
41 } 41 }
42 [ -e /dev/pts ] || mkdir -m 0755 /dev/pts 42 [ -e /dev/pts ] || mkdir -m 0755 /dev/pts
43 [ -e /dev/shm ] || mkdir -m 1777 /dev/shm 43 [ -e /dev/shm ] || mkdir -m 1777 /dev/shm