Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Nov 2001 00:10:25 +0900 (JST)
From:      Yoshihiko Sarumaru <mistral@imasy.or.jp>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/32077: update ports: japanese/msdosfs
Message-ID:  <200111181510.fAIFAPg12901@mistral.imasy.or.jp>

next in thread | raw e-mail | index | archive | help

>Number:         32077
>Category:       ports
>Synopsis:       update ports: japanese/msdosfs
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Nov 18 07:20:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Yoshihiko Sarumaru
>Release:        FreeBSD 4.4-STABLE i386
>Organization:
>Environment:
System: FreeBSD mistral.imasy.or.jp 4.4-STABLE FreeBSD 4.4-STABLE #0: Mon Nov 12 18:37:47 JST 2001 yohta@mistral.imasy.or.jp:/usr/obj/usr/src/sys/PCG-505R i386


	
>Description:
	japanese/msdosfs port was broken because it couldn't be made.
	This compile failure came from old msdosfs_vfsops.c.
	I will introduce new patch for msdosfs_vfsops.c (patch-af).
>How-To-Repeat:
	cd /usr/ports/japanese/msdosfs; make
>Fix:
	replace files/patch-af with below.

--- msdosfs_vfsops.c.orig	Mon Apr 10 04:32:37 2000
+++ msdosfs_vfsops.c	Fri Nov 16 19:28:30 2001
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/msdosfs/msdosfs_vfsops.c,v 1.60 2000/01/27 14:43:07 nyan Exp $ */
+/* $FreeBSD: src/sys/msdosfs/msdosfs_vfsops.c,v 1.60.2.5 2001/11/04 18:57:51 dillon Exp $ */
 /*	$NetBSD: msdosfs_vfsops.c,v 1.51 1997/11/17 15:36:58 ws Exp $	*/
 
 /*-
@@ -48,11 +48,6 @@
  * October 1992
  */
 
-#include "opt_msdosfs.h"
-
-/*
- * System include files.
- */
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/conf.h>
@@ -67,9 +62,6 @@
 #include <sys/stat.h> 				/* defines ALLPERMS */
 #include <vm/vm_zone.h>
 
-/*
- * MSDOSFS include files.
- */
 #include <msdosfs/bpb.h>
 #include <msdosfs/bootsect.h>
 #include <msdosfs/direntry.h>
@@ -77,6 +69,8 @@
 #include <msdosfs/msdosfsmount.h>
 #include <msdosfs/fat.h>
 
+#define MSDOSFS_DFLTBSIZE       4096
+
 #if 1 /*def PC98*/
 /*
  * XXX - The boot signature formatted by NEC PC-98 DOS looks like a
@@ -184,7 +178,8 @@
 	bzero((char *)mp, (u_long)sizeof(struct mount));
 	mp->mnt_op = &msdosfs_vfsops;
 	mp->mnt_flag = 0;
-	LIST_INIT(&mp->mnt_vnodelist);
+	TAILQ_INIT(&mp->mnt_nvnodelist);
+	TAILQ_INIT(&mp->mnt_reservedvnlist);
 
 	args.flags = 0;
 	args.uid = 0;
@@ -259,7 +254,7 @@
 			flags = WRITECLOSE;
 			if (mp->mnt_flag & MNT_FORCE)
 				flags |= FORCECLOSE;
-			error = vflush(mp, NULLVP, flags);
+			error = vflush(mp, 0, flags);
 		}
 		if (!error && (mp->mnt_flag & MNT_RELOAD))
 			/* not yet implemented */
@@ -635,7 +630,7 @@
 	if (FAT12(pmp))
 		pmp->pm_fatblocksize = 3 * pmp->pm_BytesPerSec;
 	else
-		pmp->pm_fatblocksize = DFLTBSIZE;
+		pmp->pm_fatblocksize = MSDOSFS_DFLTBSIZE;
 
 	pmp->pm_fatblocksec = pmp->pm_fatblocksize / DEV_BSIZE;
 	pmp->pm_bnshift = ffs(DEV_BSIZE) - 1;
@@ -761,7 +756,7 @@
 	flags = 0;
 	if (mntflags & MNT_FORCE)
 		flags |= FORCECLOSE;
-	error = vflush(mp, NULLVP, flags);
+	error = vflush(mp, 0, flags);
 	if (error)
 		return error;
 	pmp = VFSTOMSDOSFS(mp);
@@ -871,7 +866,7 @@
 	 */
 	simple_lock(&mntvnode_slock);
 loop:
-	for (vp = mp->mnt_vnodelist.lh_first; vp != NULL; vp = nvp) {
+	for (vp = TAILQ_FIRST(&mp->mnt_nvnodelist); vp != NULL; vp = nvp) {
 		/*
 		 * If the vnode that we are about to sync is no longer
 		 * associated with this mount point, start over.
@@ -880,7 +875,7 @@
 			goto loop;
 
 		simple_lock(&vp->v_interlock);
-		nvp = vp->v_mntvnodes.le_next;
+		nvp = TAILQ_NEXT(vp, v_nmntvnodes);
 		dep = VTODE(vp);
 		if (vp->v_type == VNON ||
 		    ((dep->de_flag &
@@ -987,8 +982,8 @@
 	msdosfs_checkexp,
 	msdosfs_vptofh,
 	msdosfs_init,
-	vfs_stduninit,
+	msdosfs_uninit,
 	vfs_stdextattrctl,
 };
 
-VFS_SET(msdosfs_vfsops, msdos, 0);
+VFS_SET(msdosfs_vfsops, msdos_ja, 0);
>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200111181510.fAIFAPg12901>