From owner-p4-projects@FreeBSD.ORG Wed Apr 30 21:06:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6D4D437B404; Wed, 30 Apr 2003 21:06:22 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1F28837B401 for ; Wed, 30 Apr 2003 21:06:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 48FD243FBF for ; Wed, 30 Apr 2003 21:06:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h4146L0U008866 for ; Wed, 30 Apr 2003 21:06:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h4146Knw008863 for perforce@freebsd.org; Wed, 30 Apr 2003 21:06:20 -0700 (PDT) Date: Wed, 30 Apr 2003 21:06:20 -0700 (PDT) Message-Id: <200305010406.h4146Knw008863@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 30259 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 May 2003 04:06:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=30259 Change 30259 by peter@peter_daintree on 2003/04/30 21:06:06 IFC @30258 Affected files ... .. //depot/projects/hammer/bin/pax/tar.1#4 integrate .. //depot/projects/hammer/sys/amd64/include/metadata.h#2 integrate .. //depot/projects/hammer/sys/boot/alpha/libalpha/elf_freebsd.c#3 integrate .. //depot/projects/hammer/sys/boot/arc/lib/elf_freebsd.c#3 integrate .. //depot/projects/hammer/sys/boot/common/Makefile.inc#5 integrate .. //depot/projects/hammer/sys/boot/common/bootstrap.h#5 integrate .. //depot/projects/hammer/sys/boot/common/load_elf.c#11 integrate .. //depot/projects/hammer/sys/boot/common/load_elf32.c#2 integrate .. //depot/projects/hammer/sys/boot/common/load_elf64.c#2 integrate .. //depot/projects/hammer/sys/boot/efi/libefi/elf_freebsd.c#5 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/Makefile#8 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/amd64_tramp.S#3 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/biossmap.c#5 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/bootinfo.c#6 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/bootinfo32.c#6 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/bootinfo64.c#7 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/elf32_freebsd.c#5 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/elf64_freebsd.c#14 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/elf_freebsd.c#7 delete .. //depot/projects/hammer/sys/boot/i386/libi386/libi386.h#5 integrate .. //depot/projects/hammer/sys/boot/i386/loader/conf.c#6 integrate .. //depot/projects/hammer/sys/boot/i386/loader/main.c#4 integrate .. //depot/projects/hammer/sys/boot/ia64/libski/elf_freebsd.c#4 integrate .. //depot/projects/hammer/sys/boot/ofw/libofw/elf_freebsd.c#3 integrate .. //depot/projects/hammer/sys/dev/firewire/sbp.c#10 integrate .. //depot/projects/hammer/sys/i386/include/elf.h#4 integrate .. //depot/projects/hammer/sys/i386/include/metadata.h#2 integrate .. //depot/projects/hammer/sys/i386/include/specialreg.h#3 integrate .. //depot/projects/hammer/sys/kern/vfs_default.c#10 integrate .. //depot/projects/hammer/sys/kern/vfs_subr.c#13 integrate .. //depot/projects/hammer/sys/powerpc/include/metadata.h#3 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/machdep.c#13 integrate .. //depot/projects/hammer/sys/sparc64/include/metadata.h#3 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/machdep.c#17 integrate .. //depot/projects/hammer/sys/sys/linker.h#9 integrate .. //depot/projects/hammer/sys/vm/vm_object.c#13 integrate Differences ... ==== //depot/projects/hammer/bin/pax/tar.1#4 (text+ko) ==== @@ -27,7 +27,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/bin/pax/tar.1,v 1.6 2002/10/06 07:56:27 tjr Exp $ +.\" $FreeBSD: src/bin/pax/tar.1,v 1.7 2003/05/01 02:37:46 tjr Exp $ .\" $OpenBSD: tar.1,v 1.33 2001/05/01 17:58:01 aaron Exp $ .\" .Dd February 7, 2001 @@ -41,7 +41,7 @@ .Sm off .Op Fl .Brq Cm crtux -.Op Cm befhmopqsvwzHLOPXZ014578 +.Op Cm befhjmopqsvwyzHLOPXZ014578 .Sm on .Op Ar blocksize .Op Ar archive ==== //depot/projects/hammer/sys/amd64/include/metadata.h#2 (text+ko) ==== ==== //depot/projects/hammer/sys/boot/alpha/libalpha/elf_freebsd.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/boot/alpha/libalpha/elf_freebsd.c,v 1.11 2000/11/14 08:10:15 mjacob Exp $ */ +/* $FreeBSD: src/sys/boot/alpha/libalpha/elf_freebsd.c,v 1.12 2003/05/01 03:56:28 peter Exp $ */ /* $NetBSD: loadfile.c,v 1.10 1998/06/25 06:45:46 ross Exp $ */ /*- ==== //depot/projects/hammer/sys/boot/arc/lib/elf_freebsd.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/boot/arc/lib/elf_freebsd.c,v 1.3 2000/05/01 17:41:20 bp Exp $ */ +/* $FreeBSD: src/sys/boot/arc/lib/elf_freebsd.c,v 1.4 2003/05/01 03:56:29 peter Exp $ */ /* $NetBSD: loadfile.c,v 1.10 1998/06/25 06:45:46 ross Exp $ */ /*- ==== //depot/projects/hammer/sys/boot/common/Makefile.inc#5 (text+ko) ==== @@ -1,17 +1,17 @@ -# $FreeBSD: src/sys/boot/common/Makefile.inc,v 1.14 2002/08/29 02:02:27 peter Exp $ +# $FreeBSD: src/sys/boot/common/Makefile.inc,v 1.15 2003/05/01 03:56:29 peter Exp $ SRCS+= bcache.c boot.c commands.c console.c devopen.c interp.c SRCS+= interp_backslash.c interp_parse.c ls.c misc.c SRCS+= module.c panic.c -.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" SRCS+= load_elf32.c load_elf64.c .endif .if ${MACHINE_ARCH} == "powerpc" SRCS+= load_elf32.c .endif .if ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "ia64" || ${MACHINE_ARCH} == "alpha" -SRCS+= load_elf32.c +SRCS+= load_elf64.c .endif .if defined(LOADER_NET_SUPPORT) ==== //depot/projects/hammer/sys/boot/common/bootstrap.h#5 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/common/bootstrap.h,v 1.37 2003/04/06 06:28:08 peter Exp $ + * $FreeBSD: src/sys/boot/common/bootstrap.h,v 1.38 2003/05/01 03:56:29 peter Exp $ */ #include ==== //depot/projects/hammer/sys/boot/common/load_elf.c#11 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/common/load_elf.c,v 1.26 2003/04/04 16:35:14 phk Exp $ + * $FreeBSD: src/sys/boot/common/load_elf.c,v 1.27 2003/05/01 03:56:29 peter Exp $ */ #include @@ -261,7 +261,7 @@ if (ef->kernel) { #ifdef __i386__ #if __ELF_WORD_SIZE == 64 - off = - (off & 0xffffffffff000000u);/* x86_64 relocates after locore */ + off = - (off & 0xffffffffff000000ull);/* x86_64 relocates after locore */ #else off = - (off & 0xff000000u); /* i386 relocates after locore */ #endif ==== //depot/projects/hammer/sys/boot/common/load_elf32.c#2 (text+ko) ==== ==== //depot/projects/hammer/sys/boot/common/load_elf64.c#2 (text+ko) ==== ==== //depot/projects/hammer/sys/boot/efi/libefi/elf_freebsd.c#5 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/boot/efi/libefi/elf_freebsd.c,v 1.10 2002/11/28 03:25:51 marcel Exp $ */ +/* $FreeBSD: src/sys/boot/efi/libefi/elf_freebsd.c,v 1.11 2003/05/01 03:56:29 peter Exp $ */ /* $NetBSD: loadfile.c,v 1.10 1998/06/25 06:45:46 ross Exp $ */ /*- ==== //depot/projects/hammer/sys/boot/i386/libi386/Makefile#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/i386/libi386/Makefile,v 1.28 2002/08/29 02:02:28 peter Exp $ +# $FreeBSD: src/sys/boot/i386/libi386/Makefile,v 1.29 2003/05/01 03:56:29 peter Exp $ # LIB= i386 INTERNALLIB= true ==== //depot/projects/hammer/sys/boot/i386/libi386/amd64_tramp.S#3 (text+ko) ==== ==== //depot/projects/hammer/sys/boot/i386/libi386/biossmap.c#5 (text+ko) ==== ==== //depot/projects/hammer/sys/boot/i386/libi386/bootinfo.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/libi386/bootinfo.c,v 1.33 2002/06/20 06:29:42 peter Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/bootinfo.c,v 1.34 2003/05/01 03:56:29 peter Exp $ */ #include ==== //depot/projects/hammer/sys/boot/i386/libi386/bootinfo32.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/libi386/bootinfo32.c,v 1.33 2002/06/20 06:29:42 peter Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/bootinfo32.c,v 1.34 2003/05/01 03:56:29 peter Exp $ */ #include ==== //depot/projects/hammer/sys/boot/i386/libi386/bootinfo64.c#7 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/libi386/bootinfo64.c,v 1.33 2002/06/20 06:29:42 peter Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/bootinfo64.c,v 1.34 2003/05/01 03:56:29 peter Exp $ */ #include ==== //depot/projects/hammer/sys/boot/i386/libi386/elf32_freebsd.c#5 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/libi386/elf32_freebsd.c,v 1.11 2003/04/04 16:35:15 phk Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/elf32_freebsd.c,v 1.12 2003/05/01 03:56:29 peter Exp $ */ #include ==== //depot/projects/hammer/sys/boot/i386/libi386/elf64_freebsd.c#14 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/libi386/elf64_freebsd.c,v 1.11 2003/04/04 16:35:15 phk Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/elf64_freebsd.c,v 1.12 2003/05/01 03:56:29 peter Exp $ */ #define __ELF_WORD_SIZE 64 ==== //depot/projects/hammer/sys/boot/i386/libi386/libi386.h#5 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.15 2001/11/05 18:58:33 jhb Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.16 2003/05/01 03:56:29 peter Exp $ */ ==== //depot/projects/hammer/sys/boot/i386/loader/conf.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/loader/conf.c,v 1.22 2002/12/19 19:34:59 jake Exp $ + * $FreeBSD: src/sys/boot/i386/loader/conf.c,v 1.23 2003/05/01 03:56:29 peter Exp $ */ #include ==== //depot/projects/hammer/sys/boot/i386/loader/main.c#4 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/loader/main.c,v 1.26 2002/10/01 19:31:09 iwasaki Exp $ + * $FreeBSD: src/sys/boot/i386/loader/main.c,v 1.27 2003/05/01 03:56:29 peter Exp $ */ /* ==== //depot/projects/hammer/sys/boot/ia64/libski/elf_freebsd.c#4 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/boot/ia64/libski/elf_freebsd.c,v 1.7 2003/02/01 22:50:08 marcel Exp $ */ +/* $FreeBSD: src/sys/boot/ia64/libski/elf_freebsd.c,v 1.8 2003/05/01 03:56:29 peter Exp $ */ /* $NetBSD: loadfile.c,v 1.10 1998/06/25 06:45:46 ross Exp $ */ /*- ==== //depot/projects/hammer/sys/boot/ofw/libofw/elf_freebsd.c#3 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/ofw/libofw/elf_freebsd.c,v 1.4 2002/07/18 12:39:01 benno Exp $ + * $FreeBSD: src/sys/boot/ofw/libofw/elf_freebsd.c,v 1.5 2003/05/01 03:56:30 peter Exp $ */ #include ==== //depot/projects/hammer/sys/dev/firewire/sbp.c#10 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/sbp.c,v 1.47 2003/04/30 10:32:32 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/sbp.c,v 1.48 2003/05/01 03:38:04 simokawa Exp $ * */ @@ -2218,10 +2218,10 @@ } SBP_DEBUG(1) printf("%s:%d:%d:%d:XPT_CALC_GEOMETRY: " - "Volume size = %d\n", + "Volume size = %lld\n", device_get_nameunit(sbp->fd.dev), cam_sim_path(sbp->sim), ccb->ccb_h.target_id, ccb->ccb_h.target_lun, - ccg->volume_size); + (u_int64_t)ccg->volume_size); END_DEBUG size_mb = ccg->volume_size ==== //depot/projects/hammer/sys/i386/include/elf.h#4 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/i386/include/elf.h,v 1.13 2002/05/30 08:32:18 dfr Exp $ + * $FreeBSD: src/sys/i386/include/elf.h,v 1.14 2003/05/01 03:46:12 peter Exp $ */ #ifndef _MACHINE_ELF_H_ @@ -65,7 +65,7 @@ } Elf32_Auxinfo; #if __ELF_WORD_SIZE == 64 -/* Fake for x86-64 loader support */ +/* Fake for amd64 loader support */ typedef struct { int fake; } Elf64_Auxinfo; ==== //depot/projects/hammer/sys/i386/include/metadata.h#2 (text+ko) ==== ==== //depot/projects/hammer/sys/i386/include/specialreg.h#3 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * from: @(#)specialreg.h 7.1 (Berkeley) 5/9/91 - * $FreeBSD: src/sys/i386/include/specialreg.h,v 1.23 2003/01/22 17:26:18 jhb Exp $ + * $FreeBSD: src/sys/i386/include/specialreg.h,v 1.24 2003/05/01 03:44:40 peter Exp $ */ #ifndef _MACHINE_SPECIALREG_H_ @@ -108,7 +108,7 @@ #define CPUID_SS 0x08000000 #define CPUID_HTT 0x10000000 #define CPUID_TM 0x20000000 -#define CPUID_B30 0x40000000 +#define CPUID_IA64 0x40000000 #define CPUID_PBE 0x80000000 /* ==== //depot/projects/hammer/sys/kern/vfs_default.c#10 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * - * $FreeBSD: src/sys/kern/vfs_default.c,v 1.81 2003/04/29 13:36:03 kan Exp $ + * $FreeBSD: src/sys/kern/vfs_default.c,v 1.82 2003/05/01 03:51:05 alc Exp $ */ #include @@ -605,7 +605,9 @@ * Dereference the reference we just created. This assumes * that the object is associated with the vp. */ + VM_OBJECT_LOCK(object); object->ref_count--; + VM_OBJECT_UNLOCK(object); vrele(vp); } else { if (object->flags & OBJ_DEAD) { ==== //depot/projects/hammer/sys/kern/vfs_subr.c#13 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)vfs_subr.c 8.31 (Berkeley) 5/26/95 - * $FreeBSD: src/sys/kern/vfs_subr.c,v 1.444 2003/04/26 23:41:30 alc Exp $ + * $FreeBSD: src/sys/kern/vfs_subr.c,v 1.445 2003/05/01 03:10:38 alc Exp $ */ /* @@ -829,11 +829,15 @@ /* * Don't recycle if we still have cached pages. */ - if (VOP_GETVOBJECT(vp, &object) == 0 && - (object->resident_page_count || - object->ref_count)) { - error = EBUSY; - goto done; + if (VOP_GETVOBJECT(vp, &object) == 0) { + VM_OBJECT_LOCK(object); + if (object->resident_page_count || + object->ref_count) { + VM_OBJECT_UNLOCK(object); + error = EBUSY; + goto done; + } + VM_OBJECT_UNLOCK(object); } if (LIST_FIRST(&vp->v_cache_src)) { /* ==== //depot/projects/hammer/sys/powerpc/include/metadata.h#3 (text+ko) ==== @@ -23,15 +23,14 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/powerpc/include/metadata.h,v 1.1 2002/07/10 12:14:23 benno Exp $ + * $FreeBSD: src/sys/powerpc/include/metadata.h,v 1.2 2003/05/01 03:31:17 peter Exp $ */ #ifndef _MACHINE_METADATA_H_ #define _MACHINE_METADATA_H_ -/* These three have been moved to MI */ -#define MODINFOMD_OENVP 0x1001 -#define MODINFOMD_OHOWTO 0x1002 -#define MODINFOMD_OKERNEND 0x1003 +#define MODINFOMD_ENVP 0x1001 +#define MODINFOMD_HOWTO 0x1002 +#define MODINFOMD_KERNEND 0x1003 #endif /* !_MACHINE_METADATA_H_ */ ==== //depot/projects/hammer/sys/powerpc/powerpc/machdep.c#13 (text+ko) ==== @@ -55,7 +55,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/machdep.c,v 1.55 2003/04/30 22:09:26 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/machdep.c,v 1.56 2003/05/01 03:33:28 peter Exp $"); #include "opt_ddb.h" #include "opt_compat.h" @@ -268,8 +268,6 @@ if (mdp != NULL) { preload_metadata = mdp; kmdp = preload_search_by_type("elf kernel"); - if (kmdp == NULL) - kmdp = preload_search_by_type("elf32 kernel"); if (kmdp != NULL) { boothowto = MD_FETCH(kmdp, MODINFOMD_HOWTO, int); kern_envp = MD_FETCH(kmdp, MODINFOMD_ENVP, char *); ==== //depot/projects/hammer/sys/sparc64/include/metadata.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/sparc64/include/metadata.h,v 1.3 2002/05/29 05:49:59 jake Exp $ + * $FreeBSD: src/sys/sparc64/include/metadata.h,v 1.4 2003/05/01 03:31:18 peter Exp $ */ #ifndef _MACHINE_METADATA_H_ ==== //depot/projects/hammer/sys/sparc64/sparc64/machdep.c#17 (text+ko) ==== @@ -37,7 +37,7 @@ * * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 * from: FreeBSD: src/sys/i386/i386/machdep.c,v 1.477 2001/08/27 - * $FreeBSD: src/sys/sparc64/sparc64/machdep.c,v 1.92 2003/04/30 22:09:26 peter Exp $ + * $FreeBSD: src/sys/sparc64/sparc64/machdep.c,v 1.93 2003/05/01 03:33:28 peter Exp $ */ #include "opt_compat.h" @@ -243,8 +243,6 @@ if (mdp != NULL) { preload_metadata = mdp; kmdp = preload_search_by_type("elf kernel"); - if (kmdp == NULL) - kmdp = preload_search_by_type("elf32 kernel"); if (kmdp != NULL) { boothowto = MD_FETCH(kmdp, MODINFOMD_HOWTO, int); kern_envp = MD_FETCH(kmdp, MODINFOMD_ENVP, char *); ==== //depot/projects/hammer/sys/sys/linker.h#9 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/sys/linker.h,v 1.35 2003/01/21 02:42:44 jake Exp $ + * $FreeBSD: src/sys/sys/linker.h,v 1.36 2003/05/01 03:31:17 peter Exp $ */ #ifndef _SYS_LINKER_H_ @@ -191,9 +191,12 @@ #define MODINFOMD_SSYM 0x0003 /* start of symbols */ #define MODINFOMD_ESYM 0x0004 /* end of symbols */ #define MODINFOMD_DYNAMIC 0x0005 /* _DYNAMIC pointer */ +/* These values are MD on these two platforms */ +#if !defined(__sparc64__) && !defined(__powerpc__) #define MODINFOMD_ENVP 0x0006 /* envp[] */ #define MODINFOMD_HOWTO 0x0007 /* boothowto */ #define MODINFOMD_KERNEND 0x0008 /* kernend */ +#endif #define MODINFOMD_NOCOPY 0x8000 /* don't copy this metadata to the kernel */ #define MODINFOMD_DEPLIST (0x4001 | MODINFOMD_NOCOPY) /* depends on */ ==== //depot/projects/hammer/sys/vm/vm_object.c#13 (text+ko) ==== @@ -61,7 +61,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $FreeBSD: src/sys/vm/vm_object.c,v 1.277 2003/04/28 03:45:35 alc Exp $ + * $FreeBSD: src/sys/vm/vm_object.c,v 1.278 2003/05/01 03:29:20 alc Exp $ */ /* @@ -369,28 +369,26 @@ /* * vm_object_reference: * - * Gets another reference to the given object. + * Gets another reference to the given object. Note: OBJ_DEAD + * objects can be referenced during final cleaning. */ void vm_object_reference(vm_object_t object) { if (object == NULL) return; - - vm_object_lock(object); -#if 0 - /* object can be re-referenced during final cleaning */ - KASSERT(!(object->flags & OBJ_DEAD), - ("vm_object_reference: attempting to reference dead obj")); -#endif - + if (object != kmem_object) + mtx_lock(&Giant); + VM_OBJECT_LOCK(object); object->ref_count++; + VM_OBJECT_UNLOCK(object); if (object->type == OBJT_VNODE) { while (vget((struct vnode *) object->handle, LK_RETRY, curthread)) { printf("vm_object_reference: delay in getting object\n"); } } - vm_object_unlock(object); + if (object != kmem_object) + mtx_unlock(&Giant); } /*