From owner-p4-projects Fri Oct 11 14:49: 1 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 695A337B404; Fri, 11 Oct 2002 14:48:53 -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 003DD37B401 for ; Fri, 11 Oct 2002 14:48:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 80D1843E6E for ; Fri, 11 Oct 2002 14:48:52 -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 g9BLmWMt046625 for ; Fri, 11 Oct 2002 14:48:32 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.3/Submit) id g9BLmWCw046622 for perforce@freebsd.org; Fri, 11 Oct 2002 14:48:32 -0700 (PDT) Date: Fri, 11 Oct 2002 14:48:32 -0700 (PDT) Message-Id: <200210112148.g9BLmWCw046622@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm Subject: PERFORCE change 19100 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://perforce.freebsd.org/chv.cgi?CH=19100 Change 19100 by peter@peter_daintree on 2002/10/11 14:47:59 IFC @19099 Affected files ... .. //depot/projects/ia64/gnu/usr.bin/binutils/Makefile#5 integrate .. //depot/projects/ia64/gnu/usr.bin/binutils/gdb/Makefile.alpha#5 integrate .. //depot/projects/ia64/gnu/usr.bin/binutils/gdb/Makefile.i386#5 integrate .. //depot/projects/ia64/share/man/man9/swi.9#3 integrate .. //depot/projects/ia64/sys/conf/ldscript.alpha#2 integrate .. //depot/projects/ia64/sys/conf/ldscript.i386#2 integrate .. //depot/projects/ia64/sys/dev/sio/sio.c#16 integrate .. //depot/projects/ia64/sys/geom/geom_disk.c#15 integrate .. //depot/projects/ia64/sys/ia64/ia64/pmap.c#38 integrate .. //depot/projects/ia64/sys/kern/kern_exec.c#30 integrate Differences ... ==== //depot/projects/ia64/gnu/usr.bin/binutils/Makefile#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/Makefile,v 1.22 2002/10/11 16:22:37 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/Makefile,v 1.23 2002/10/11 20:23:06 obrien Exp $ # In my absence, bde and jdp have pre-approval for any commit they feel # necessary. @@ -8,7 +8,6 @@ addr2line ar as gasp ld nm objcopy objdump ranlib readelf \ size strings strip doc -NO_GDB=yes TARGET_ARCH?= ${MACHINE_ARCH} .if (${TARGET_ARCH} == "alpha" \ || ${TARGET_ARCH} == "i386" \ ==== //depot/projects/ia64/gnu/usr.bin/binutils/gdb/Makefile.alpha#5 (text+ko) ==== @@ -1,5 +1,5 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/gdb/Makefile.alpha,v 1.7 2002/06/29 03:16:10 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/gdb/Makefile.alpha,v 1.8 2002/10/11 19:39:18 obrien Exp $ XSRCS+= alphabsd-nat.c alphafbsd-tdep.c alpha-tdep.c \ core-regset.c -CFLAGS+= -DDEFAULT_BFD_VEC=bfd_elf64_alpha_vec +CFLAGS+= -DDEFAULT_BFD_VEC=bfd_elf64_alpha_freebsd_vec ==== //depot/projects/ia64/gnu/usr.bin/binutils/gdb/Makefile.i386#5 (text+ko) ==== @@ -1,9 +1,9 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/gdb/Makefile.i386,v 1.6 2002/06/29 03:16:10 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/gdb/Makefile.i386,v 1.7 2002/10/11 19:39:18 obrien Exp $ XSRCS+= i386fbsd-nat.c i386bsd-tdep.c i386bsd-nat.c i386-nat.c i386-tdep.c \ i387-nat.c i387-tdep.c \ core-regset.c core-aout.c CFLAGS+= -Dprint_insn_i386=print_insn_i386_att -CFLAGS+= -DDEFAULT_BFD_VEC=bfd_elf32_i386_vec +CFLAGS+= -DDEFAULT_BFD_VEC=bfd_elf32_i386_freebsd_vec CFLAGS+= -DGDB_XM_FILE ==== //depot/projects/ia64/share/man/man9/swi.9#3 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/swi.9,v 1.9 2002/03/16 18:10:40 schweikh Exp $ +.\" $FreeBSD: src/share/man/man9/swi.9,v 1.10 2002/10/11 19:45:19 jhb Exp $ .\" .Dd October 30, 2000 .Dt SWI 9 @@ -123,16 +123,7 @@ .Fa flags argument specifies how and when the handler should be run and is a mask of one or more of the following flags: -.Bl -tag -width SWI_NOSWITCH -.It Dv SWI_SWITCH -Specifies that the kernel should schedule the software interrupt thread -associated with the specified handler to run. If lightweight context switches -are in place, then the kernel will switch to this thread and run it -immediately. -.It Dv SWI_NOSWITCH -Specifies that the kernel should schedule the software interrupt thread -associated with the specified handler to run, but it should not attempt to -switch to the thread immediately. +.Bl -tag -width SWI_DELAY .It Dv SWI_DELAY Specifies that the kernel should mark the specified handler as needing to run, but the kernel should not schedule the software interrupt thread to run. @@ -142,8 +133,10 @@ being scheduled by another event. Attaching a handler to the clock software interrupt thread and using this flag when scheduling a software interrupt handler can be used to implement the -functionality previously performed by -.Fn setdelayed . +functionality performed by +.Fn setdelayed +in earlier versions of +.Fx . .El .Pp The ==== //depot/projects/ia64/sys/conf/ldscript.alpha#2 (text+ko) ==== @@ -1,5 +1,5 @@ -/* $FreeBSD: src/sys/conf/ldscript.alpha,v 1.5 2001/09/20 09:19:38 peter Exp $ */ -OUTPUT_FORMAT("elf64-alpha", "elf64-alpha", "elf64-alpha") +/* $FreeBSD: src/sys/conf/ldscript.alpha,v 1.6 2002/10/11 19:38:04 obrien Exp $ */ +OUTPUT_FORMAT("elf64-alpha-freebsd", "elf64-alpha-freebsd", "elf64-alpha-freebsd") OUTPUT_ARCH(alpha) ENTRY(__start) SEARCH_DIR(/usr/lib); ==== //depot/projects/ia64/sys/conf/ldscript.i386#2 (text+ko) ==== @@ -1,5 +1,5 @@ -/* $FreeBSD: src/sys/conf/ldscript.i386,v 1.5 2001/09/18 01:12:43 peter Exp $ */ -OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") +/* $FreeBSD: src/sys/conf/ldscript.i386,v 1.6 2002/10/11 19:38:04 obrien Exp $ */ +OUTPUT_FORMAT("elf32-i386-freebsd", "elf32-i386-freebsd", "elf32-i386-freebsd") OUTPUT_ARCH(i386) ENTRY(btext) SEARCH_DIR(/usr/lib); ==== //depot/projects/ia64/sys/dev/sio/sio.c#16 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/sio/sio.c,v 1.381 2002/09/28 17:14:38 phk Exp $ + * $FreeBSD: src/sys/dev/sio/sio.c,v 1.382 2002/10/11 20:22:20 imp Exp $ * from: @(#)com.c 7.5 (Berkeley) 5/16/91 * from: i386/isa sio.c,v 1.234 */ @@ -425,7 +425,7 @@ * XXX this is mostly wrong. * XXX TODO: * This is usually called when the card is ejected, but - * can be caused by a modunload of a controller driver. + * can be caused by a kldunload of a controller driver. * The idea is to reset the driver's view of the device * and ensure that any driver entry points such as * read and write do not hang. ==== //depot/projects/ia64/sys/geom/geom_disk.c#15 (text+ko) ==== @@ -32,7 +32,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/geom/geom_disk.c,v 1.24 2002/10/07 07:15:37 phk Exp $ + * $FreeBSD: src/sys/geom/geom_disk.c,v 1.25 2002/10/11 20:52:44 phk Exp $ */ #include "opt_geom.h" @@ -66,6 +66,8 @@ G_CLASS_INITIALIZER }; +DECLARE_GEOM_CLASS(g_disk_class, g_disk); + static int g_disk_access(struct g_provider *pp, int r, int w, int e) { @@ -203,36 +205,39 @@ return; } +static void +g_disk_create(void *arg) +{ + struct g_geom *gp; + struct g_provider *pp; + dev_t dev; + + g_topology_assert(); + dev = arg; + gp = g_new_geomf(&g_disk_class, dev->si_name); + gp->start = g_disk_start; + gp->access = g_disk_access; + gp->softc = dev->si_disk; + dev->si_disk->d_softc = gp; + pp = g_new_providerf(gp, "%s", gp->name); + g_error_provider(pp, 0); +} + + + dev_t disk_create(int unit, struct disk *dp, int flags, struct cdevsw *cdevsw, struct cdevsw *proto) { - static int once; - struct g_geom *gp; - struct g_provider *pp; dev_t dev; - mtx_unlock(&Giant); - if (!once) { - g_add_class(&g_disk_class); - once++; - } dev = g_malloc(sizeof *dev, M_WAITOK | M_ZERO); dp->d_dev = dev; dp->d_devsw = cdevsw; dev->si_devsw = cdevsw; dev->si_disk = dp; dev->si_udev = dkmakeminor(unit, WHOLE_DISK_SLICE, RAW_PART); - g_topology_lock(); - gp = g_new_geomf(&g_disk_class, "%s%d", cdevsw->d_name, unit); - strcpy(dev->si_name, gp->name); - gp->start = g_disk_start; - gp->access = g_disk_access; - gp->softc = dp; - dp->d_softc = gp; - pp = g_new_providerf(gp, "%s", gp->name); - g_error_provider(pp, 0); - g_topology_unlock(); - mtx_lock(&Giant); + sprintf(dev->si_name, "%s%d", cdevsw->d_name, unit); + g_call_me(g_disk_create, dev); return (dev); } ==== //depot/projects/ia64/sys/ia64/ia64/pmap.c#38 (text+ko) ==== @@ -43,7 +43,7 @@ * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 * from: i386 Id: pmap.c,v 1.193 1998/04/19 15:22:48 bde Exp * with some ideas from NetBSD's alpha pmap - * $FreeBSD: src/sys/ia64/ia64/pmap.c,v 1.78 2002/10/01 20:56:29 phk Exp $ + * $FreeBSD: src/sys/ia64/ia64/pmap.c,v 1.79 2002/10/11 21:41:53 peter Exp $ */ /* @@ -991,7 +991,7 @@ pmap_pagedaemon_waken = 1; wakeup (&vm_pages_needed); } - return uma_zalloc(pvzone, M_WAITOK); + return uma_zalloc(pvzone, M_NOWAIT); } /* ==== //depot/projects/ia64/sys/kern/kern_exec.c#30 (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/kern/kern_exec.c,v 1.192 2002/09/21 22:07:16 jake Exp $ + * $FreeBSD: src/sys/kern/kern_exec.c,v 1.193 2002/10/11 21:04:01 jhb Exp $ */ #include "opt_ktrace.h" @@ -469,9 +469,9 @@ PROC_UNLOCK(p); setugidsafety(td); error = fdcheckstd(td); - PROC_LOCK(p); if (error != 0) goto done1; + PROC_LOCK(p); /* * Set the new credentials. */ @@ -543,6 +543,14 @@ oldargs = p->p_args; p->p_args = NULL; + /* Cache arguments if they fit inside our allowance */ + if (ps_arg_cache_limit >= i + sizeof(struct pargs)) { + bcopy(imgp->stringbase, newargs->ar_args, i); + p->p_args = newargs; + newargs = NULL; + } + PROC_UNLOCK(p); + /* Set values passed into the program in registers. */ if (p->p_sysent->sv_setregs) (*p->p_sysent->sv_setregs)(td, imgp->entry_addr, @@ -551,16 +559,7 @@ exec_setregs(td, imgp->entry_addr, (u_long)(uintptr_t)stack_base, imgp->ps_strings); - /* Cache arguments if they fit inside our allowance */ - if (ps_arg_cache_limit >= i + sizeof(struct pargs)) { - bcopy(imgp->stringbase, newargs->ar_args, i); - p->p_args = newargs; - newargs = NULL; - } done1: - PROC_UNLOCK(p); - - /* * Free any resources malloc'd earlier that we didn't use. */ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message