GEOM weirdness with SD flash reader?
Nate Lawson
nate at root.org
Sun Jul 1 20:31:30 UTC 2007
Dmitry Morozovsky wrote:
> On Sun, 1 Jul 2007, Nate Lawson wrote:
>
> NL> Simply trying to mount a FAT filesystem in an external USB SD flash
> NL> reader. The reader works fine, no errors in dmesg.
> NL>
> NL> deenlo# fdisk da2
> NL> ******* Working on device /dev/da2 *******
> NL> parameters extracted from in-core disklabel are:
> NL> cylinders=982 heads=64 sectors/track=32 (2048 blks/cyl)
> NL>
> NL> parameters to be used for BIOS calculations are:
> NL> cylinders=982 heads=64 sectors/track=32 (2048 blks/cyl)
> NL>
> NL> Media sector size is 512
> NL> Warning: BIOS sector numbering starts with sector 1
> NL> Information from DOS bootblock is:
> NL> The data for partition 1 is:
> NL> sysid 6 (0x06),(Primary 'big' DOS (>= 32MB))
> NL> start 243, size 2011917 (982 Meg), flag 0
> NL> beg: cyl 0/ head 3/ sector 55;
> NL> end: cyl 998/ head 3/ sector 3
> NL> The data for partition 2 is:
> NL> <UNUSED>
> NL> The data for partition 3 is:
> NL> <UNUSED>
> NL> The data for partition 4 is:
> NL> <UNUSED>
> NL> deenlo# mount -t msdosfs /dev/da2s1 /mnt/dos
> NL> mount_msdosfs: /dev/da2s1: No such file or directory
> NL> deenlo# mount -t msdosfs /dev/da2 /mnt/dos
> NL> mount_msdosfs: /dev/da2: Invalid argument
> NL> deenlo# mount -t msdosfs /dev/da2s1 /mnt/dos
> NL> [success]
> NL>
> NL> So I'm guessing GEOM had to decide to create /dev/da2s1 after I tried to
> NL> mount /dev/da2 directly? Nothing else would create the da2s1 device.
> NL> Once the device was created with make_dev(), repeated unmounts/mounts
> NL> work fine.
>
> Do you insert your card after reader got initialized? I have internal reader in
> my work machine, and have to use
>
> dd if=/dev/null of=/dev/daN count=0
>
> to [re]initialize GEOM providers on newly inserted card...
Yes, you're exactly right. However, shouldn't a read from a device
trigger a re-taste if the media is removable? So the fdisk of da2
should have caused it to re-read the MBR and create /dev/da2s1. I think
maybe there should be a flag set for devices with removable media that
causes the device to be re-tasted on every mount request.
Other ideas how to fix this?
--
Nate
More information about the freebsd-current
mailing list