Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 2 Apr 1998 08:02:48 +0200
From:      Ollivier Robert <roberto@keltia.freenix.fr>
To:        freebsd-current@FreeBSD.ORG
Subject:   Re: error when compiling kernel with SOFTUPDATES
Message-ID:  <19980402080248.A29539@keltia.freenix.fr>
In-Reply-To: <1753.891485603@time.cdrom.com>; from Jordan K. Hubbard on Wed, Apr 01, 1998 at 06:53:23PM -0800
References:  <199804020237.UAA00748@gforce.bellsouth.net> <1753.891485603@time.cdrom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
According to Jordan K. Hubbard:
> cvs-all too :-).  Simply change all references to the "time" global to
> microtime(&yourtimevalvar) and life will be good again (well, it'll
> compile anyway).

It is getmicrotime(yourtimevalvar) :-)

Here is the patch for ffs_softdep.c, including the patch for the allocndir
panic.

--- ffs_softdep.c.orig	Fri Feb 20 21:12:51 1998
+++ ffs_softdep.c	Wed Apr  1 00:50:13 1998
@@ -1528,6 +1528,14 @@
 		newindirdep->ir_state = ATTACHED;
 		LIST_INIT(&newindirdep->ir_deplisthd);
 		LIST_INIT(&newindirdep->ir_donehd);
+		if (bp->b_blkno == bp->b_lblkno) {
+#ifdef DEBUG
+			printf("setup_allocindir_phase2: need bmap, blk %d\n",
+				bp->b_lblkno);
+#endif
+			VOP_BMAP(bp->b_vp, bp->b_lblkno, NULL, &bp->b_blkno,
+				NULL, NULL);
+		}
 		newindirdep->ir_saveddata = (ufs_daddr_t *)bp->b_data;
 		newindirdep->ir_savebp =
 		    getblk(ip->i_devvp, bp->b_blkno, bp->b_bcount, 0, 0);
@@ -3570,7 +3578,7 @@
 		}
 		vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p);
 		if (flushparent) {
-			tv = time;
+			getmicrotime(&tv);
 			if (error = UFS_UPDATE(pvp, &tv, &tv, MNT_WAIT)) {
 				vput(pvp);
 				return (error);
@@ -3931,7 +3939,7 @@
 		 * has a MKDIR_PARENT dependency.
 		 */
 		if (dap->da_state & MKDIR_PARENT) {
-			tv = time;
+			getmicrotime(&tv);
 			FREE_LOCK(&lk);
 			if (error = UFS_UPDATE(pvp, &tv, &tv, MNT_WAIT))
 				break;
@@ -4015,7 +4023,7 @@
 			}
 			FREE_LOCK(&lk);
 		}
-		tv = time;
+		getmicrotime(&tv);
 		error = UFS_UPDATE(vp, &tv, &tv, MNT_WAIT);
 		vput(vp);
 		if (error)

-- 
Ollivier ROBERT -=- FreeBSD: The Power to Serve! -=- roberto@keltia.freenix.fr
FreeBSD keltia.freenix.fr 3.0-CURRENT #0: Sun Mar  1 18:50:39 CET 1998

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



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