Bug 4632

Summary: udev 182 init script should mount devtmpfs instead tmpfs
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Alex Olson <alex.olson>
Component: coreAssignee: Saul Wold <sgw>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: Medium CC: meta.mr.watcher, meta.watcher
Version: unspecified   
Target Milestone: 1.5 M2   
Hardware: All   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---
Attachments:
Description Flags
suggested fix none

Description Alex Olson 2013-06-10 17:18:38 UTC
Created attachment 1255 [details]
suggested fix

Since udev 172, the 'mknod' logic was removed from udev. 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 unusuable 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.  (But I am not a udev expert).  See attached patch for a suggestion.
Comment 1 Saul Wold 2013-06-10 22:58:39 UTC
This looks like a good patch, if you would please submit a proper patch to list, please do so, otherwise I can put this patch in.
Comment 2 Alex Olson 2013-06-25 20:15:36 UTC
(In reply to comment #1)
> This looks like a good patch, if you would please submit a proper patch to
> list, please do so, otherwise I can put this patch in.

I submitted it today to the OE-core list and will monitor the thread.
http://lists.openembedded.org/pipermail/openembedded-core/2013-June/080311.html