[OE-core] [PATCH 1/1] udev-cache: take a read-only rootfs into consideration
Saul Wold
sgw at linux.intel.com
Fri Jun 28 05:59:56 UTC 2013
On 06/27/2013 10:00 PM, Qi.Chen at windriver.com wrote:
> From: Chen Qi <Qi.Chen at windriver.com>
>
> In case of a read-only rootfs, no matter the /etc is read-only or
> it's bind mounted with tmpfs, the udev cache handling should be
> skipped, as the data cannot be persisted between reboots.
>
> Signed-off-by: Chen Qi <Qi.Chen at windriver.com>
> ---
> meta/recipes-core/udev/udev/init | 5 +++--
> meta/recipes-core/udev/udev/udev-cache | 6 ++++++
> 2 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/meta/recipes-core/udev/udev/init b/meta/recipes-core/udev/udev/init
> index 9b81700..38ea666 100644
> --- a/meta/recipes-core/udev/udev/init
> +++ b/meta/recipes-core/udev/udev/init
> @@ -18,6 +18,7 @@ export TZ=/etc/localtime
> [ -x @UDEVD@ ] || exit 1
> [ -f /etc/default/udev-cache ] && . /etc/default/udev-cache
> [ -f /etc/udev/udev.conf ] && . /etc/udev/udev.conf
> +[ -f /etc/default/rcS ] && . /etc/default/rcS
>
> readfile () {
> filename=$1
> @@ -52,8 +53,8 @@ case "$1" in
> mount -a -t tmpfs 2>/dev/null
> mkdir -p /var/volatile/tmp
>
> - # cache handling
> - if [ "$DEVCACHE" != "" ]; then
> + # Cache handling. Skip cache handling in case of a read-only rootfs.
> + if [ "$ROOTFS_READ_ONLY" = "no" -a "$DEVCACHE" != "" ]; then
> readfile /proc/version
> VERSION="$READDATA"
> readfile /proc/cmdline
Do you think it would be possible in a fix embedded device to have the
udev cache created and installed in a read-only FS?
Sau!
> diff --git a/meta/recipes-core/udev/udev/udev-cache b/meta/recipes-core/udev/udev/udev-cache
> index 8a84fa9..3e0eff6 100644
> --- a/meta/recipes-core/udev/udev/udev-cache
> +++ b/meta/recipes-core/udev/udev/udev-cache
> @@ -15,8 +15,14 @@ export TZ=/etc/localtime
> [ -x @UDEVD@ ] || exit 1
> [ -d /sys/class ] || exit 1
>
> +[ -f /etc/default/rcS ] && . /etc/default/rcS
> [ -f /etc/default/udev-cache ] && . /etc/default/udev-cache
>
> +if [ "$ROOTFS_READ_ONLY" = "yes" ]; then
> + [ "$VERBOSE" != "no" ] && echo "read-only rootfs, skip udev-cache"
> + exit 0
> +fi
> +
> if [ "$DEVCACHE" != "" -a -e /dev/shm/udev.cache ]; then
> echo "Populating dev cache"
> (cd /; tar cf "$DEVCACHE" dev)
>
More information about the Openembedded-core
mailing list