Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Mar 1998 09:16:31 +0000 (GMT)
From:      Terry Lambert <tlambert@primenet.com>
To:        archer@lucky.net (Alexander Litvin)
Cc:        current@FreeBSD.ORG
Subject:   Re: kernel with SOFTUPDATES doesn't link
Message-ID:  <199803310916.CAA14214@usr08.primenet.com>
In-Reply-To: <19980331092916.42639@carrier.kiev.ua> from "Alexander Litvin" at Mar 31, 98 09:29:16 am

next in thread | previous in thread | raw e-mail | index | archive | help
> When attempting to make kernel with 'options SOFTUPDATES',
> during linking I got:
> 
> > loading kernel
> > ffs_softdep.o: Undefined symbol `_time' referenced from text segment
> > ffs_softdep.o: Undefined symbol `_time' referenced from text segment
> > ffs_softdep.o: Undefined symbol `_time' referenced from text segment
> > ffs_softdep.o: Undefined symbol `_time' referenced from text segment
> > ffs_softdep.o: Undefined symbol `_time' referenced from text segment
> > ffs_softdep.o: Undefined symbol `_time' referenced from text segment
> > *** Error code 1
> 
> As I understand, that happened after Poul-Henning commit, which
> killed 'time' variable. Though /sys/ufs/ffs/ffs_softdep.c still
> depends on time.

The time variable is referenced directly in the dependency
resoloution code (the "shall be marked for update" part of the
POSIX guarantees on timestamps, mostly).

The "time" references need to be replaced with a "getmicrotime()"
call.  In at least one place (from memory), you will have to declare
a local time variable and pass it's address to getmicrotime(), which
takes a pointer to a time value.  This is because of the reserved
areas in the time making an assignment necessary, so you can't pass
the address of the address of the variable to get the time to it
directly.

The getmicrotime() changes are a Good Thing(tm) incidently; now we
have some place to hang a mutex.  The curproc references need to be
similarly wrapped, and I think the code depends on them, too.  8-(.


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.

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?199803310916.CAA14214>