Cannot mount Sony Ericsson mobile phone, msdosfs too restrictive?

Kostik Belousov kostikbel at gmail.com
Mon Jul 2 03:30:24 UTC 2007


On Sun, Jul 01, 2007 at 05:54:58PM -0400, Brian Chu wrote:
> Raaf,
> 
> What's the size of the memory stick?  Is it 32MB like Dennis has?
> 
> The check for the field that affected you isn't critical to msdosfs'
> operation, but the field itself is specified to be non-zero.
> Konstantin, is it alright to remove this field?
> 
Brian,
I would expect to get the answer from you. In any case, you could do this on
your branch and have tested it for some time.
> 
> On 7/1/07, Dennis Melentyev <dennis.melentyev at gmail.com> wrote:
> >Well, had the same problem.
> >For me, it looks like SE is using FAT12 (!!!Not 16!!!) on a devive
> >larger than 32MB. Could have something slipped off my mind, but quite
> >close. It is a BROKEN msdosfs on a stick.
> >
> >Just re-formated 1Gb flash with FAT32 using card reader and both K750i
> >and FreeBSD are happy.
> >
> >2007/7/1, Raaf <raaf at zen.mooo.com>:
> >> Hi, i got a Sony Ericsson mobile phone that came with a pre-formatted
> >> memory stick that i'm unable to mount in FreeBSD (it mounts fine in
> >> Linux).
> >>
> >> After investigating i found out that the FreeBSD msdsofs driver bails
> >> out on the following code (the pmp->pm_Heads being zero):
> >>
> >> ----------------------------------
> >> if (!pmp->pm_BytesPerSec || !SecPerClust
> >>                 || !pmp->pm_Heads
> >> #ifdef PC98
> >>                 || !pmp->pm_SecPerTrack || pmp->pm_SecPerTrack > 255) {
> >> #else
> >>                 || !pmp->pm_SecPerTrack || pmp->pm_SecPerTrack > 63) {
> >> #endif
> >>                 error = EINVAL;
> >>                 goto error_exit;
> >>         }
> >> ----------------------------------
> >>
> >> Removing the check for pmp->pm_Heads fixes it for me.
> >>
> >> Is the check for pmp->pm_Heads really necessary?
> >>
> >> Grepping through the msdosfs sources i can only see it being used for
> >> validation and not used in any calculation (the same applies for the
> >> pmp->pm_SecPerTrack value)
> >>
> >>
> >> --- sys/fs/msdosfs/msdosfs_vfsops.c.orig        Sun Jul  1 20:42:14 2007
> >> +++ sys/fs/msdosfs/msdosfs_vfsops.c     Sun Jul  1 20:46:57 2007
> >> @@ -483,7 +483,6 @@
> >>
> >>         /* XXX - We should probably check more values here */
> >>         if (!pmp->pm_BytesPerSec || !SecPerClust
> >> -               || !pmp->pm_Heads
> >>  #ifdef PC98
> >>                 || !pmp->pm_SecPerTrack || pmp->pm_SecPerTrack > 255) {
> >>  #else
> >>
> >>
> >> _______________________________________________
> >> freebsd-stable at freebsd.org mailing list
> >> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> >> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
> >>
> >
> >
> >--
> >Dennis Melentyev
> >_______________________________________________
> >freebsd-fs at freebsd.org mailing list
> >http://lists.freebsd.org/mailman/listinfo/freebsd-fs
> >To unsubscribe, send any mail to "freebsd-fs-unsubscribe at freebsd.org"
> >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20070702/636480fd/attachment.pgp


More information about the freebsd-fs mailing list