kern/114776: [patch] "mount_msdosfs -l" does not work due to bad MFC

Eugene Grosbein eugen at
Fri Jul 20 17:30:01 UTC 2007

>Number:         114776
>Category:       kern
>Synopsis:       [patch] "mount_msdosfs -l" does not work due to bad MFC
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jul 20 17:30:01 GMT 2007
>Originator:     Eugene Grosbein
>Release:        FreeBSD 6.2-STABLE i386
Svyaz-Service JSC
System: FreeBSD 6.2-STABLE FreeBSD 6.2-STABLE #9: Sat Jul 21 00:30:50 KRAST 2007 eu at i386

	It's impossible to force using/generating long file names
	for FAT filesystem when its root directory does not have
	one such name. This bug was fixed in CURRENT in October 2005,
	sys/fs/msdosfs/msdosfs_vfsops.c, revision 1.148
	but MFC performed by rodrigc@ was incomplete,
	so the "-l" option of mount_msdosfs does just nothing for 6-STABLE.

	Mount FAT that does not contain long file names in root directory
	and try to create long file name there.


	Complete MFC of revision 1.148 for msdosfs_vfsops.c:

--- sys/fs/msdosfs/msdosfs_vfsops.c.orig	31 Oct 2005 15:41:20 -0000	1.147
+++ sys/fs/msdosfs/msdosfs_vfsops.c	18 Nov 2005 22:34:31 -0000	1.148
@@ -163,8 +163,12 @@
 		pmp->pm_dirmask = v & ALLPERMS;
 	vfs_flagopt(mp->mnt_optnew, "shortname",
 	    &pmp->pm_flags, MSDOSFSMNT_SHORTNAME);
+	vfs_flagopt(mp->mnt_optnew, "shortnames",
+	    &pmp->pm_flags, MSDOSFSMNT_SHORTNAME);
 	vfs_flagopt(mp->mnt_optnew, "longname",
 	    &pmp->pm_flags, MSDOSFSMNT_LONGNAME);
+	vfs_flagopt(mp->mnt_optnew, "longnames",
+	    &pmp->pm_flags, MSDOSFSMNT_LONGNAME);
 	vfs_flagopt(mp->mnt_optnew, "kiconv",
 	    &pmp->pm_flags, MSDOSFSMNT_KICONV);

Eugene Grosbein

More information about the freebsd-bugs mailing list