Jose Vasconcellos wrote:
Attached is a patch to handle the mounting and unmounting
of blocked device. This handles both USB and IEEE1394
devices. It removes /sbin/usb-storage in favor of using the
block hotplug event.
Signed-off-by: Jose Vasconcellos <[email protected]>
Seems very hard to get the patch right on the first try!
This minor update makes sure the mount directory always exists.
Index: package/base-files/files/etc/hotplug.d/ieee1394/10-ieee1394
===================================================================
--- package/base-files/files/etc/hotplug.d/ieee1394/10-ieee1394 (revision 0)
+++ package/base-files/files/etc/hotplug.d/ieee1394/10-ieee1394 (revision 0)
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+# Copyright (C) 2008 OpenWrt.org
+
+case "$ACTION" in
+ add)
+ # update LEDs
+ ;;
+ remove)
+ # update LEDs
+ ;;
+esac
+
Index: package/base-files/files/etc/hotplug.d/usb/10-usb
===================================================================
--- package/base-files/files/etc/hotplug.d/usb/10-usb (revision 13936)
+++ package/base-files/files/etc/hotplug.d/usb/10-usb (working copy)
@@ -1,13 +1,13 @@
#!/bin/sh
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2008 OpenWrt.org
case "$ACTION" in
add)
- [ -n "${INTERFACE}" ] &&
- [ "$(expr substr ${INTERFACE} 1 2)" == "8/" ] && {
- /sbin/usb-storage &
- }
+ # update LEDs
;;
+ remove)
+ # update LEDs
+ ;;
esac
Property changes on: package/base-files/files/etc/hotplug.d/usb/10-usb
___________________________________________________________________
Added: svn:mergeinfo
Index: package/base-files/files/etc/hotplug.d/usb/10-usb-storage
===================================================================
--- package/base-files/files/etc/hotplug.d/usb/10-usb-storage (revision 13936)
+++ package/base-files/files/etc/hotplug.d/usb/10-usb-storage (working copy)
@@ -1,13 +0,0 @@
-#!/bin/sh
-
-# Copyright (C) 2006 OpenWrt.org
-
-case "$ACTION" in
- add)
- [ -n "${INTERFACE}" ] &&
- [ "$(expr substr ${INTERFACE} 1 2)" == "8/" ] && {
- /sbin/usb-storage &
- }
- ;;
-esac
-
Index: package/base-files/files/etc/hotplug.d/block/10-mount
===================================================================
--- package/base-files/files/etc/hotplug.d/block/10-mount (revision 0)
+++ package/base-files/files/etc/hotplug.d/block/10-mount (revision 0)
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+# Copyright (C) 2008 OpenWrt.org
+
+blkdev=`dirname $DEVPATH`
+if [ `basename $blkdev` != "block" ]; then
+
+ device=`basename $DEVPATH`
+ case "$ACTION" in
+ add)
+ mkdir -p /mnt/$device
+ mount /dev/$device /mnt/$device
+ ;;
+ remove)
+ umount /dev/$device
+ ;;
+ esac
+
+fi
Index: package/base-files/files/sbin/usb-storage
===================================================================
--- package/base-files/files/sbin/usb-storage (revision 13936)
+++ package/base-files/files/sbin/usb-storage (working copy)
@@ -1,25 +0,0 @@
-#!/bin/sh
-# Copyright (C) 2007 OpenWrt.org
-logger "usb device is mass storage"
-i=0
-while [ $i -le 10 ]; do
- logger "waiting on usb drive $i ..."
- i=$(($i+1))
- cd /sys${DEVPATH}
- for blk in `find host* -type d 2>/dev/null`; do
- [ -d /sys/${DEVPATH}/${blk}/block/ ] && {
- cd
- for disc in `find /sys/${DEVPATH}/${blk}/block -name "sd*"`; do
- sleep 2
- cd $disc
- for node in `find . -name "sd*" | cut -d "/" -f2`; do
- echo "mounting /dev/${node} on /mnt/usbdrive"
- mkdir -p /mnt/usbdrive
- mount /dev/${node} /mnt/usbdrive
- i=20
- done
- done
- }
- done
- sleep 1
-done
Index: package/hotplug2/files/hotplug2.rules
===================================================================
--- package/hotplug2/files/hotplug2.rules (revision 13936)
+++ package/hotplug2/files/hotplug2.rules (working copy)
@@ -1,6 +1,6 @@
$include /etc/hotplug2-common.rules
-SUBSYSTEM ~~ (net|button|usb) {
+SUBSYSTEM ~~ (net|button|usb|ieee1394|block) {
exec /sbin/hotplug-call %SUBSYSTEM%;
}
_______________________________________________
openwrt-devel mailing list
[email protected]
http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel