On Tuesday 10 February 2009 07:51, Christian Dumhart wrote:
> Hi,
> 
> thanks for your answere and sorry for my delay (was on vaction).
> 
> ####################
> Here is the output:
> / # mdev -s
> mdev: fileName '/sys/block/mtdblock5/dev'
> mdev: fileName '/sys/block/sda/dev'
> mdev: fileName '/sys/block/sda/sda1/dev'
> HIER in mnt.sh
> mdev: fileName '/sys/class/tty/tty/dev'
> mdev: fileName '/sys/class/tty/console/dev'
...
> mdev: fileName '/sys/class/block/mtdblock5/dev'
> mdev: fileName '/sys/class/block/sda/dev'
> mdev: fileName '/sys/class/block/sda1/dev'
> HIER in mnt.sh
> mount: mounting /dev/sda1 on /mnt/usb_storage_sda1 failed: Device or resource 
> busy
> mdev: fileName '/sys/class/misc/cpu_dma_latency/dev'
> mdev: fileName '/sys/class/misc/network_latency/dev'

Try attached patch.
--
vda
diff -d -urpN busybox.9/util-linux/mdev.c busybox.a/util-linux/mdev.c
--- busybox.9/util-linux/mdev.c	2009-01-31 21:45:35.000000000 +0100
+++ busybox.a/util-linux/mdev.c	2009-02-13 00:59:21.000000000 +0100
@@ -420,10 +420,17 @@ int mdev_main(int argc UNUSED_PARAM, cha
 		 * /sys/block/loop* (for example) are symlinks to dirs,
 		 * not real directories.
 		 * (kernel's CONFIG_SYSFS_DEPRECATED makes them real dirs,
-		 * but we can't enforce that on users) */
-		recursive_action("/sys/block",
-			ACTION_RECURSE | ACTION_FOLLOWLINKS | ACTION_QUIET,
-			fileAction, dirAction, temp, 0);
+		 * but we can't enforce that on users)
+		 */
+		if (access("/sys/class/block", F_OK) != 0) {
+			/* Scan obsolete /sys/block only if /sys/class/block
+			 * doesn't exist. Otherwise we'll have dupes.
+			 */
+			recursive_action("/sys/block",
+				ACTION_RECURSE | ACTION_FOLLOWLINKS,
+				// not needed now? | ACTION_QUIET
+				fileAction, dirAction, temp, 0);
+		}
 		recursive_action("/sys/class",
 			ACTION_RECURSE | ACTION_FOLLOWLINKS,
 			fileAction, dirAction, temp, 0);
_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to