Bug #271
closed
blockhandler.sh looks for "removable" under $DEVPATH, but doesn't find it with Busybox 1.21.1
Added by Hammel almost 11 years ago.
Updated almost 11 years ago.
Category:
04 - Root File System
Description
This means that mmcblk0p2 is not mounted on boot after the upgrade to Busybox 1.21.1.
- % Done changed from 0 to 20
I think the reason for this is that in 1.20.x the ACTION was empty so I have a special case handler for mmc mounting. In 1.21.1 the ACTION is add, which goes through a different part of the script. I'll have to move the mmc special handling into the "add" handler.
- % Done changed from 20 to 30
Another problem is that blkid is no longer available in 2013.11. This patch appears to have taken it out. There is a related patch that just defaults to using udev instead.
There doesn't appear to be an easy way to get blkid back from util-linux (which is what would normally build it) in Buildroot. Fortunately, Busybox 1.21.1 has a version that is not yet enabled. I can enable that and rebuild under Buildroot to see what happens.
Also, I may have fixed the problem with with not finding "removable". I need to test it on 2013.11 but that requires first rebuilding Busybox to get blkid so blockhandler.sh doesn't break on that issue.
- % Done changed from 30 to 40
Just rebuilding busybox with make buildroot-rebuild didn't work. I got all kinds of weird errors on the reboot of the target. I have to rebuild the entire rootfs.
- % Done changed from 40 to 50
I rebuilt the whole thing and tested it tonight only to find out I didn't enable the "Print filesystem type" option. Ugh. So I have to rebuild it all again.
- % Done changed from 50 to 70
Added missing blkid to Busybox. This was originally in Buildroot 2013.02 but was pulled from 2013.11. Adding it into Busybox was easy but you have to specifically ask for filesystem type support.
This fixes finding and mounting mmcblk0p1 by mdev. However, it blockhandler.sh no longer mounts sda1 when the usb stick is inserted. So I still need to fix that.
- Status changed from In Progress to Closed
- % Done changed from 70 to 100
The mechanism used to find the filesystem type from blkid output was incorrect. It was
ID_FS_TYPE=`blkid $RD| cut -f4 -d" " | sed 's/TYPE=//' | sed 's/"//g'`
But that cut was wrong. It works correctly (at least for current PiBox needs) like this
ID_FS_TYPE=`blkid $RD | sed 's/^.*TYPE=//' | sed 's/"//g'
So now blockhandler.sh works with Buildroot 2013.11 and Busybox 1.21.1 and both mmcblk0p1 and /dev/sda1 mount properly via mdev.
Closing issue.
Also available in: Atom
PDF