On 11/16/18 12:08 AM, Marius Adaskevicius wrote: > The current code does not follow symbolic links when iterating over /sys > entries > for block devices when run with -s flag. As a result, mdev rules are never > executed, for example, for USB flash drive partitions.
I'd assumed that devtmpfs had removed most of the call for mdev, but apparently not. I should study what busybox added over the past 5 years, finish this command, and promote it. Alas I'd hit 40 hours at $DAYJOB sometime yesterday, and probably have to come in saturday too. > On i.MX6 board with 4.9.11 kernel: > > /sys/block/sda -> > /sys/devices/soc0/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.2/1-1.2:1.0/host0/target0:0:0/0:0:0:0/block/sda > > /sys/block/sda/sda1 -> > /sys/devices/soc0/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.2/1-1.2:1.0/host0/target0:0:0/0:0:0:0/block/sda/sda1 > > > As a workaround, USB flash drive has to be reinserted so that mdev rules are > executed in response to kernel hotplug events. The issue can be fixed by > adding a flag to follow symbolic links so that partition entries could be > processed as well. The problem with following symlinks is you can easily wind up in endless loops. What it should be looking at is /sys/class/*/*/dev and then the first * being block means mknod 'b' instead of 'c'. (Greg KH and Kay Sievers keep changing what's under sysfs and breaking code attempting to parse it. It's really annoying. I wrestled with them for _years_ about it...) Rob _______________________________________________ Toybox mailing list Toybox@lists.landley.net http://lists.landley.net/listinfo.cgi/toybox-landley.net