From d014d6322b3bd04ab1ed715d9dbd4d4bc837eb6f Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Wed, 1 Jun 2011 15:35:27 +0000 Subject: [PATCH] udev-extra-rules: refactor mount.sh script Avoids a fork for using cat and do a whitespace cleanup. Signed-off-by: Otavio Salvador --- meta-oe/recipes-core/udev/udev-extra-rules.bb | 2 +- .../udev/udev-extra-rules/mount.sh | 28 +++++++------------ 2 files changed, 11 insertions(+), 19 deletions(-) diff --git a/meta-oe/recipes-core/udev/udev-extra-rules.bb b/meta-oe/recipes-core/udev/udev-extra-rules.bb index f114b1a469..dfd40807f9 100644 --- a/meta-oe/recipes-core/udev/udev-extra-rules.bb +++ b/meta-oe/recipes-core/udev/udev-extra-rules.bb @@ -2,7 +2,7 @@ DESCRIPTION = "Extra udev rules" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58" -PR = "r1" +PR = "r2" SRC_URI = " \ file://automount.rules \ diff --git a/meta-oe/recipes-core/udev/udev-extra-rules/mount.sh b/meta-oe/recipes-core/udev/udev-extra-rules/mount.sh index 81bcfba5e3..67c2b4b507 100644 --- a/meta-oe/recipes-core/udev/udev-extra-rules/mount.sh +++ b/meta-oe/recipes-core/udev/udev-extra-rules/mount.sh @@ -1,7 +1,7 @@ #!/bin/sh # # Called from udev -# Attemp to mount any added block devices +# Attemp to mount any added block devices # and remove any removed devices # @@ -10,7 +10,7 @@ PMOUNT="/usr/bin/pmount" UMOUNT="/bin/umount" name="`basename "$DEVNAME"`" -for line in `cat /etc/udev/mount.blacklist | grep -v ^#` +for line in `grep -v ^# /etc/udev/mount.blacklist` do if ( echo "$DEVNAME" | grep -q "$line" ) then @@ -19,9 +19,9 @@ do fi done -automount() { +automount() { ! test -d "/media/$name" && mkdir -p "/media/$name" - + if ! $MOUNT -t auto -o async,relatime $DEVNAME "/media/$name" then #logger "mount.sh/automount" "$MOUNT -t auto $DEVNAME \"/media/$name\" failed!" @@ -31,7 +31,7 @@ automount() { touch "/tmp/.automount-$name" fi } - + rm_dir() { # We do not want to rm -r populated directories if test "`find "$1" | wc -l | tr -d " "`" -lt 2 -a -d "$1" @@ -46,27 +46,19 @@ if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ]; then if [ -x "$PMOUNT" ]; then $PMOUNT $DEVNAME 2> /dev/null elif [ -x $MOUNT ]; then - $MOUNT $DEVNAME 2> /dev/null + $MOUNT $DEVNAME 2> /dev/null fi - - # If the device isn't mounted at this point, it isn't configured in fstab - # 20061107: Small correction: The rootfs partition may be called just "rootfs" and not by - # its true device name so this would break. If the rootfs is mounted on two places - # during boot, it confuses the heck out of fsck. So Im auto-adding the root-partition - # to /etc/udev/mount.blacklist via postinst - cat /proc/mounts | awk '{print $1}' | grep -q "^$DEVNAME$" || automount - + # Avoid remounting devices (e.g: rootfs) + awk '{print $1}' /proc/mounts | grep -q "^$DEVNAME$" || automount fi - - if [ "$ACTION" = "remove" ] && [ -x "$UMOUNT" ] && [ -n "$DEVNAME" ]; then - for mnt in `cat /proc/mounts | grep "$DEVNAME" | cut -f 2 -d " " ` + for mnt in `grep "$DEVNAME" /proc/mounts | cut -f 2 -d " " ` do $UMOUNT -l $mnt done - + # Remove empty directories from auto-mounter test -e "/tmp/.automount-$name" && rm_dir "/media/$name" fi