From owner-p4-projects@FreeBSD.ORG Sun Jul 9 07:59:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EEEC516A4DE; Sun, 9 Jul 2006 07:59:52 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 B07E016A4DA for ; Sun, 9 Jul 2006 07:59:52 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7B63A43D45 for ; Sun, 9 Jul 2006 07:59:52 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k697xq1u068776 for ; Sun, 9 Jul 2006 07:59:52 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k697xqAE068773 for perforce@freebsd.org; Sun, 9 Jul 2006 07:59:52 GMT (envelope-from scottl@freebsd.org) Date: Sun, 9 Jul 2006 07:59:52 GMT Message-Id: <200607090759.k697xqAE068773@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 101079 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 07:59:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=101079 Change 101079 by scottl@scottl-wv1u on 2006/07/09 07:59:10 Short-circuit the temp buffer if kenv(KENV_DUMP) is called with a length of 0 or a NULL buffer. ALso remove a redundant check. Affected files ... .. //depot/projects/scottl-camlock/src/sys/kern/kern_environment.c#8 edit Differences ... ==== //depot/projects/scottl-camlock/src/sys/kern/kern_environment.c#8 (text+ko) ==== @@ -85,7 +85,7 @@ int len; } */ *uap; { - char *name, *value, *buffer; + char *name, *value, *buffer = NULL; size_t len, done, needed; int error, i; @@ -99,7 +99,8 @@ return (error); #endif done = needed = 0; - buffer = malloc(uap->len, M_TEMP, M_WAITOK|M_ZERO); + if (uap->len > 0 && uap->value != NULL) + buffer = malloc(uap->len, M_TEMP, M_WAITOK|M_ZERO); mtx_lock(&kenv_lock); for (i = 0; kenvp[i] != NULL; i++) { len = strlen(kenvp[i]) + 1; @@ -109,16 +110,16 @@ * If called with a NULL or insufficiently large * buffer, just keep computing the required size. */ - if (uap->value != NULL && len > 0) { - if (done + len > uap->len) - break; + if (uap->value != NULL && buffer != NULL && len > 0) { bcopy(kenvp[i], buffer + done, len); done += len; } } mtx_unlock(&kenv_lock); - error = copyout(buffer, uap->value, done); - free(buffer, M_TEMP); + if (buffer != NULL) { + error = copyout(buffer, uap->value, done); + free(buffer, M_TEMP); + } td->td_retval[0] = ((done == needed) ? 0 : needed); return (error); } From owner-p4-projects@FreeBSD.ORG Sun Jul 9 08:15:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CE97516A4E1; Sun, 9 Jul 2006 08:15:12 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 674EB16A4DA for ; Sun, 9 Jul 2006 08:15:12 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 288B743D46 for ; Sun, 9 Jul 2006 08:15:12 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k698FC09071129 for ; Sun, 9 Jul 2006 08:15:12 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k698FBQl071126 for perforce@freebsd.org; Sun, 9 Jul 2006 08:15:11 GMT (envelope-from imp@freebsd.org) Date: Sun, 9 Jul 2006 08:15:11 GMT Message-Id: <200607090815.k698FBQl071126@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101080 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 08:15:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=101080 Change 101080 by imp@imp_lighthouse on 2006/07/09 08:14:50 Kill that unsightly device_set_unit(). Make the assignment of units skip anything that is hinted 'at' :-). This means we no longer need to skip low unit numbers for pci's sio since either there will be sio hints, in which case we'll be honoring them, or there won't, in which case it just won't matter. Affected files ... .. //depot/projects/arm/src/sys/dev/sio/sio_pci.c#3 edit .. //depot/projects/arm/src/sys/kern/subr_bus.c#10 edit .. //depot/projects/arm/src/sys/sys/bus.h#6 edit Differences ... ==== //depot/projects/arm/src/sys/dev/sio/sio_pci.c#3 (text+ko) ==== @@ -43,7 +43,6 @@ #include static int sio_pci_attach(device_t dev); -static void sio_pci_kludge_unit(device_t dev); static int sio_pci_probe(device_t dev); static device_method_t sio_pci_methods[] = { @@ -101,39 +100,9 @@ id++; if (id->desc == NULL) return (ENXIO); - sio_pci_kludge_unit(dev); return (sioattach(dev, id->rid, 0UL)); } -/* - * Don't cut and paste this to other drivers. It is a horrible kludge - * which will fail to work and also be unnecessary in future versions. - */ -static void -sio_pci_kludge_unit(dev) - device_t dev; -{ - devclass_t dc; - int err; - int start; - int unit; - - unit = 0; - start = 0; - while (resource_int_value("sio", unit, "port", &start) == 0 && - start > 0) - unit++; - if (device_get_unit(dev) < unit) { - dc = device_get_devclass(dev); - while (devclass_get_device(dc, unit)) - unit++; - device_printf(dev, "moving to sio%d\n", unit); - err = device_set_unit(dev, unit); /* EVIL DO NOT COPY */ - if (err) - device_printf(dev, "error moving device %d\n", err); - } -} - static int sio_pci_probe(dev) device_t dev; ==== //depot/projects/arm/src/sys/kern/subr_bus.c#10 (text+ko) ==== @@ -1295,11 +1295,11 @@ devclass_alloc_unit(devclass_t dc, int *unitp) { int unit = *unitp; + const char *where; PDEBUG(("unit %d in devclass %s", unit, DEVCLANAME(dc))); /* If we were given a wired unit number, check for existing device */ - /* XXX imp XXX */ if (unit != -1) { if (unit >= 0 && unit < dc->maxunit && dc->devices[unit] != NULL) { @@ -1309,9 +1309,16 @@ return (EEXIST); } } else { - /* Unwired device, find the next available slot for it */ + /* + * Unwired device, find the next available slot for it that + * doesn't have an "at" hint indicating that it might be + * wired on a bus that hasn't probed yet. We skip those + * units, even when we're past the 'end' of the current + * array. + */ unit = 0; - while (unit < dc->maxunit && dc->devices[unit] != NULL) + while ((unit < dc->maxunit && dc->devices[unit] != NULL) || + resource_string_value(dc->name, unit, "at", &where) == 0) unit++; } @@ -2480,33 +2487,6 @@ return (DEVICE_SHUTDOWN(dev)); } -/** - * @brief Set the unit number of a device - * - * This function can be used to override the unit number used for a - * device (e.g. to wire a device to a pre-configured unit number). - */ -int -device_set_unit(device_t dev, int unit) -{ - devclass_t dc; - int err; - - dc = device_get_devclass(dev); - if (unit < dc->maxunit && dc->devices[unit]) - return (EBUSY); - err = devclass_delete_device(dc, dev); - if (err) - return (err); - dev->unit = unit; - err = devclass_add_device(dc, dev); - if (err) - return (err); - - bus_data_generation_update(); - return (0); -} - /*======================================*/ /* * Some useful method implementations to make life easier for bus drivers. ==== //depot/projects/arm/src/sys/sys/bus.h#6 (text+ko) ==== @@ -375,7 +375,6 @@ int device_set_driver(device_t dev, driver_t *driver); void device_set_flags(device_t dev, u_int32_t flags); void device_set_softc(device_t dev, void *softc); -int device_set_unit(device_t dev, int unit); /* XXX DONT USE XXX */ int device_shutdown(device_t dev); void device_unbusy(device_t dev); void device_verbose(device_t dev); From owner-p4-projects@FreeBSD.ORG Sun Jul 9 08:48:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E8DAC16A4E1; Sun, 9 Jul 2006 08:48:58 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 C42D416A4DD for ; Sun, 9 Jul 2006 08:48:58 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E5B1043D46 for ; Sun, 9 Jul 2006 08:48:55 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k698mtLN080240 for ; Sun, 9 Jul 2006 08:48:55 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k698mtxi080237 for perforce@freebsd.org; Sun, 9 Jul 2006 08:48:55 GMT (envelope-from clem1@FreeBSD.org) Date: Sun, 9 Jul 2006 08:48:55 GMT Message-Id: <200607090848.k698mtxi080237@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Clément Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 101082 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 08:48:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=101082 Change 101082 by clem1@clem1_ipv6vulns on 2006/07/09 08:48:19 Under Linux, we can use IP_HDRINCL on an IPv6 socket. daddos.c - tool that replies with a Neighbor Advertisement to all DAD messages. (DOS) Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/attacking-tools/daddos/DESCRIPTION#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/attacking-tools/daddos/daddos.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_raw.c#2 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_raw.c#2 (text+ko) ==== @@ -236,6 +236,13 @@ strerror(errno)); goto bad; } + if (setsockopt (l->fd, IPPROTO_IPV6, IP_HDRINCL, oneptr, sizeof(one)) == -1) + { + snprintf(l->err_buf, LIBNET_ERRBUF_SIZE, + "%s(): set IP_HDRINCL failed: %s\n", __func__, + strerror(errno)); + goto bad; + } #endif /* __linux__ */ return (l->fd); From owner-p4-projects@FreeBSD.ORG Sun Jul 9 09:35:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AA73916A4E2; Sun, 9 Jul 2006 09:35:56 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 6EE0316A4E0 for ; Sun, 9 Jul 2006 09:35:56 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3973043D45 for ; Sun, 9 Jul 2006 09:35:56 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k699ZuUs083619 for ; Sun, 9 Jul 2006 09:35:56 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k699Zu8s083616 for perforce@freebsd.org; Sun, 9 Jul 2006 09:35:56 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sun, 9 Jul 2006 09:35:56 GMT Message-Id: <200607090935.k699Zu8s083616@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101086 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 09:35:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=101086 Change 101086 by rdivacky@rdivacky_witten on 2006/07/09 09:35:12 Wakeup all blocked threads waiting for a futex in proc_exit() hook. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#12 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#12 (text+ko) ==== @@ -56,6 +56,7 @@ #include #include +#include #include #include #include @@ -1164,6 +1165,7 @@ } #endif if (em->clear_tid != NULL) { + struct linux_sys_futex_args cup; int null = 0; error = copyout(&null, em->clear_tid, sizeof(null)); @@ -1172,7 +1174,16 @@ return (error); } - /* TODO: futexes stuff */ + /* futexes stuff */ + cup.uaddr = em->clear_tid; + cup.op = LINUX_FUTEX_WAKE; + cup.val = 0x7fffffff; /* Awake everyone */ + cup.timeout = NULL; + cup.uaddr2 = NULL; + cup.val3 = 0; + error = linux_sys_futex(td, &cup); + if (error) + printf("futex stuff in proc_exit failed.\n"); } EMUL_RUNLOCK(&emul_lock); From owner-p4-projects@FreeBSD.ORG Sun Jul 9 11:34:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D907716A4E2; Sun, 9 Jul 2006 11:34:26 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 9DB6216A4E0 for ; Sun, 9 Jul 2006 11:34:26 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 534F643D45 for ; Sun, 9 Jul 2006 11:34:26 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69BYQxl091191 for ; Sun, 9 Jul 2006 11:34:26 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69BYQqF091188 for perforce@freebsd.org; Sun, 9 Jul 2006 11:34:26 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sun, 9 Jul 2006 11:34:26 GMT Message-Id: <200607091134.k69BYQqF091188@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101091 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 11:34:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=101091 Change 101091 by wkoszek@wkoszek_laptop on 2006/07/09 11:34:04 We don't have 64bit on MIPS32. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/locore.S#6 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#6 (text+ko) ==== @@ -58,7 +58,11 @@ * XXXMIPS: look at this. I think "Kernel mode is 64-bit" == MIPS_SR_KX, so * it's probably worth to remove it soon. */ + #if 0 li t1, MIPS_SR_KX | MIPS_SR_COP_1_BIT +#endif + li t1, MIPS_SR_COP_1_BIT + /* * Read coprocessor 0 status register, clear bits not From owner-p4-projects@FreeBSD.ORG Sun Jul 9 11:41:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E065316A4E2; Sun, 9 Jul 2006 11:41:35 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B752E16A4DD for ; Sun, 9 Jul 2006 11:41:35 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6B5F243D49 for ; Sun, 9 Jul 2006 11:41:35 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69BfZIe091566 for ; Sun, 9 Jul 2006 11:41:35 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69BfZac091563 for perforce@freebsd.org; Sun, 9 Jul 2006 11:41:35 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sun, 9 Jul 2006 11:41:35 GMT Message-Id: <200607091141.k69BfZac091563@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101092 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 11:41:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=101092 Change 101092 by wkoszek@wkoszek_laptop on 2006/07/09 11:40:45 XXXMIPS marker to change which I think was done by bms@ Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#12 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#12 (text+ko) ==== @@ -167,6 +167,9 @@ MIPS_RDRW32_COP0(cause, MIPS_COP_0_CAUSE); MIPS_RDRW32_COP0(status, MIPS_COP_0_STATUS); +/* + * XXXMIPS: I think this change was brought by bms@. + */ /* XXX: mips32 */ MIPS_RDRW32_COP0(entrylo0, MIPS_COP_0_TLB_LO0); MIPS_RDRW32_COP0(entrylo1, MIPS_COP_0_TLB_LO1); From owner-p4-projects@FreeBSD.ORG Sun Jul 9 11:53:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F0B016A4E0; Sun, 9 Jul 2006 11:53:52 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 CF90A16A4DA for ; Sun, 9 Jul 2006 11:53:51 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 841BF43D49 for ; Sun, 9 Jul 2006 11:53:51 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69BrpKS092434 for ; Sun, 9 Jul 2006 11:53:51 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69BrpGu092431 for perforce@freebsd.org; Sun, 9 Jul 2006 11:53:51 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sun, 9 Jul 2006 11:53:51 GMT Message-Id: <200607091153.k69BrpGu092431@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101093 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 11:53:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=101093 Change 101093 by wkoszek@wkoszek_laptop on 2006/07/09 11:53:14 Bring my chages from yesterday session cpu.c: - Body of the mips_wtf(struct wtf *wtf) is disabled for now. We distinguish which CPU is used, and we fill '*wtf' with proper values. For now, fill struct wft members with dummy values. - Add a comment about possible code path which happens after mips_init() is run. - Disable mips_icache_sync_all() and mips_dcache_wbinv_all(), and comment this change. machdep.c: - Add comments related with init_param2(), mips_cpu_init() and pmap_bootstrap() calls. - Disable block responsible for calling proc_linkup(), pcpu_init() and kdb_init(). - Add a comment related with function flow after locore.S. - Move MALTA specific values out of the plaform_start() and make them global for machdep.c. This is ugly, and should we moved under src/sys/mips/mips4k/malta/... hierarchy, but this code is very useful for debugging in GXemul. tlb.c: - Add a comment related with xcontext, similar to bms@'s ones from cpufunc.h - Partially enable tlb_update(). Right now we don't have MIPS_HI_ENTRY() macro working properly. - Partially enable tlb_invalidate_page(). The same here - we don't have MIPS_HI_ENTRY() macro working properly. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#4 edit .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#10 edit .. //depot/projects/mips2/src/sys/mips/mips/tlb.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#4 (text+ko) ==== @@ -132,16 +132,22 @@ static void mips_wtf(struct wtf *wtf) { + + /* + * XXXMIPS: Comment it for now, since I haven't get to + * CPU-specifications and differences between them. Bring sample + * values here. + */ + wtf->wtf_class = MIPS_R4000; + wtf->wtf_type = "XZ"; + wtf->wtf_ntlbs = 2; /* XX Find the right value. */ + wtf->wtf_fpu = "YC"; +#if 0 unsigned long cpu_class; const char *cpu_type; unsigned long cpu_ntlbs; const char *cpu_fpu; - cpu_class = 0; - cpu_type = NULL; - cpu_ntlbs = 0; - cpu_fpu = NULL; - switch (MIPS_PRID_IMPL(cpu_id)) { case MIPS_R4000: cpu_class = MIPS_R4000; @@ -175,8 +181,23 @@ printf("Unknown CPU cpu_id=%x\n", cpu_id); printf("Unknown FPU fpu_id=%x\n", fpu_id); panic("Please send this output to freebsd-mips@freeebsd.org"); +#endif } +/* + * Possible code path + * ------------------ + * mips_init(): (from machdep.c) + * | + * +- mips_cpu_init(): (this file -- cpu.c) + * | + * +- mips_wtf() (this file -- cpu.c) ok + * +- mips_config_cache() (this file -- cpu.c) stub + * +- tlb_invalidate_all() (tlb.c) + * +- mips_vector_init() (this file -- cpu.c) + * +- mips_icache_sync_all() (cache.c ?) XX + * +- mips_dcache_wbinv_all() (cache.c ?) XX + */ void mips_cpu_init(void) { @@ -189,8 +210,15 @@ mips_config_cache(); tlb_invalidate_all(); mips_vector_init(); + /* + * XXXMIPS: Leave touching cache until we decide, how we're going to + * manage differences between icache and dcache handling between + * processors. + */ +#if 0 mips_icache_sync_all(); mips_dcache_wbinv_all(); +#endif } void ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#10 (text+ko) ==== @@ -37,6 +37,7 @@ #include #include #include +#include #include #include #include @@ -89,10 +90,24 @@ void mips_init(void) { + /* + * XXXMIPS: This one is called from subr_param.c. + */ init_param2(physmem); + /* + * XXXMIPS: This one lies in cpu.c. + */ mips_cpu_init(); + /* + * XXXMIPS: This is from pmap.c. + */ pmap_bootstrap(); + /* + * XXXMIPS: Change this once I'll make sure pagetables are working + * correctly. + */ +#if 0 proc_linkup(&proc0, &ksegrp0, &thread0); thread0.td_kstack = kstack0; pcpu_init(pcpup, 0, sizeof(struct pcpu)); @@ -103,6 +118,7 @@ #ifdef DDB kdb_init(); #endif +#endif } void @@ -295,11 +311,6 @@ } -void -platform_start(int argc, char **argv) -{ - volatile uint32_t * dest_ch; - #define MALTA_FPGA_BASE 0x1f000000 /* FPGA: */ #define MALTA_FPGA_SIZE 0x00c00000 /* 12 MByte */ @@ -315,6 +326,26 @@ #define MALTA_ASCIIPOS6 0x30 #define MALTA_ASCIIPOS7 0x38 +/* + * + * Existing code path + * ------------------ + * locore.S: + * | + * +->platform_start(): (here -- machdep.c) + * | + * +-MALTA_PUTCHAR() (macros to get malta LCD working) + * +-mips_init(): (here -- machdep.c) + * | + * +-init_param2() (subr_param.c) + * +-mips_cpu_init() (cpu.c) + * +-pmap_bootstrap() (pmap.c) + */ +void +platform_start(int argc, char **argv) +{ + volatile uint32_t * dest_ch; + #define MALTA_PUTCHAR(pos, ch) \ dest_ch = (uint32_t *) \ MIPS_PHYS_TO_KSEG0(MALTA_ASCII_BASE + MALTA_ASCIIPOS ## pos); \ @@ -328,7 +359,8 @@ MALTA_PUTCHAR(5, 'S'); MALTA_PUTCHAR(6, 'D'); - memset((char *)MIPS_PHYS_TO_KSEG0(0x1fc00500 + 0x04), 'x', 10); + mips_init(); + cninit(); } void setPQL2(int *const size, int *const ways); ==== //depot/projects/mips2/src/sys/mips/mips/tlb.c#3 (text+ko) ==== @@ -115,6 +115,9 @@ */ mips_wr_wired(1); + /* + * XXXMIPS: Does xcontext exist on mips32? + */ #if 0 /* * Set up page table. @@ -172,17 +175,24 @@ tlb_remove_pages(pmap, va, eva - va); } +/* + * XXXMIPS: Check this one. + */ void tlb_update(vm_offset_t va, pt_entry_t pte0, pt_entry_t pte1) { u_long ehi; int i; - ehi = 0; - i = 0; + va &= ~PAGE_MASK; + /* + * XXXMIPS: This will probably mean bringing stuff from NetBSD, as + * juli's code has offsets and sizes for mips64. + */ #if 0 - va &= ~PAGE_MASK; ehi = MIPS_HI_ENTRY(va, /*asid*/0); +#endif + ehi = 0; mips_wr_entryhi(ehi); mips_tlbp(); i = mips_rd_index(); @@ -193,7 +203,6 @@ mips_tlbwr(); else mips_tlbwi(); -#endif } void @@ -226,24 +235,30 @@ mips_tlbwi(); } +/* + * XXXMIPS: Check this one. + */ void tlb_invalidate_page(vm_offset_t va) { u_long ehi; int i; - ehi = 0; - i = 0; + va &= ~PAGE_MASK; + /* + * XXXMIPS: This will probably mean bringing stuff from NetBSD, as + * juli's code has offsets and sizes for mips64. + */ #if 0 - va &= ~PAGE_MASK; ehi = MIPS_HI_ENTRY(va, /*asid*/0); +#endif + ehi = 0; mips_wr_entryhi(ehi); mips_tlbp(); i = mips_rd_index(); if (i >= 0) tlb_invalidate_one(i); mips_dcache_wbinv_range_index(va, PAGE_SIZE); -#endif } /* From owner-p4-projects@FreeBSD.ORG Sun Jul 9 12:30:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5DDB116A4E0; Sun, 9 Jul 2006 12:30:39 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 3849516A4DE for ; Sun, 9 Jul 2006 12:30:39 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CE44E43D46 for ; Sun, 9 Jul 2006 12:30:38 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69CUcZ9095802 for ; Sun, 9 Jul 2006 12:30:38 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69CUcfE095799 for perforce@freebsd.org; Sun, 9 Jul 2006 12:30:38 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sun, 9 Jul 2006 12:30:38 GMT Message-Id: <200607091230.k69CUcfE095799@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101096 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 12:30:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=101096 Change 101096 by wkoszek@wkoszek_laptop on 2006/07/09 12:30:36 Bring architecture for further Malta Evaluation Board support. Some of this bits may lye somewhere else later, but hook them here for now. You should now be able to cross-compile a kernel with MALTA configuration file. Affected files ... .. //depot/projects/mips2/src/sys/mips/conf/MALTA#1 add .. //depot/projects/mips2/src/sys/mips/mips4k/malta/files.malta#1 add .. //depot/projects/mips2/src/sys/mips/mips4k/malta/std.malta#1 add .. //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_bus_maltausart.c#1 add .. //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_cpu_maltausart.c#1 add .. //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_dev_maltausart.c#1 add .. //depot/projects/mips2/src/sys/mips/mips4k/std.mips4k#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sun Jul 9 14:28:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6586416A4E0; Sun, 9 Jul 2006 14:28:16 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 40C6D16A4DA for ; Sun, 9 Jul 2006 14:28:16 +0000 (UTC) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8269443D5F for ; Sun, 9 Jul 2006 14:28:09 +0000 (GMT) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69ES9qr014162 for ; Sun, 9 Jul 2006 14:28:09 GMT (envelope-from howardsu@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69ES8s1014159 for perforce@freebsd.org; Sun, 9 Jul 2006 14:28:08 GMT (envelope-from howardsu@FreeBSD.org) Date: Sun, 9 Jul 2006 14:28:08 GMT Message-Id: <200607091428.k69ES8s1014159@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to howardsu@FreeBSD.org using -f From: Howard Su To: Perforce Change Reviews Cc: Subject: PERFORCE change 101103 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 14:28:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=101103 Change 101103 by howardsu@su_laptop on 2006/07/09 14:27:10 Fix build. One definition is lost during last IFC Affected files ... .. //depot/projects/dtrace/src/sys/kern/bus_if.m#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/bus_if.m#4 (text+ko) ==== @@ -509,6 +509,18 @@ } DEFAULT bus_generic_config_intr; /** + * @brief Returns bus_dma_tag_t for use w/ devices on the bus. + * + * @param _dev the parent device of @p _child + * @param _child the device to which the tag will belong + */ + +METHOD bus_dma_tag_t get_dma_tag { + device_t _dev; + device_t _child; +} DEFAULT bus_generic_get_dma_tag; + +/** * @brief Notify a (bus) driver about a child that the hints mechanism * believes it has discovered. * From owner-p4-projects@FreeBSD.ORG Sun Jul 9 15:05:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 470C216A4E6; Sun, 9 Jul 2006 15:05:10 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 0C0C016A4E2 for ; Sun, 9 Jul 2006 15:05:10 +0000 (UTC) (envelope-from dunstan@freebsd.czest.pl) Received: from freebsd.czest.pl (freebsd.czest.pl [80.48.250.4]) by mx1.FreeBSD.org (Postfix) with ESMTP id D9BD143D49 for ; Sun, 9 Jul 2006 15:05:08 +0000 (GMT) (envelope-from dunstan@freebsd.czest.pl) Received: from laptop.freebsd.czest.pl (gw98.internetdsl.tpnet.pl [80.53.74.98]) by freebsd.czest.pl (8.13.4/8.12.9) with ESMTP id k69FKLPP075980 for ; Sun, 9 Jul 2006 15:20:22 GMT (envelope-from dunstan@freebsd.czest.pl) Received: from laptop.freebsd.czest.pl (localhost [127.0.0.1]) by laptop.freebsd.czest.pl (8.13.7/8.13.6) with ESMTP id k69H61Rr018666 for ; Sun, 9 Jul 2006 17:06:01 GMT (envelope-from dunstan@laptop.freebsd.czest.pl) Received: (from dunstan@localhost) by laptop.freebsd.czest.pl (8.13.7/8.13.4/Submit) id k69H60QK018665 for perforce@freebsd.org; Sun, 9 Jul 2006 17:06:00 GMT (envelope-from dunstan) Date: Sun, 9 Jul 2006 17:05:59 +0000 From: "Wojciech A. Koszek" To: Perforce Change Reviews Message-ID: <20060709170559.GA17573@FreeBSD.czest.pl> Mail-Followup-To: Perforce Change Reviews References: <200607091153.k69BrpGu092431@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline In-Reply-To: <200607091153.k69BrpGu092431@repoman.freebsd.org> User-Agent: Mutt/1.5.11 X-Greylist: Sender DNS name whitelisted, not delayed by milter-greylist-2.0.2 (freebsd.czest.pl [80.48.250.4]); Sun, 09 Jul 2006 15:20:22 +0000 (UTC) Cc: Subject: Re: PERFORCE change 101093 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 15:05:10 -0000 On ndz, lip 09, 2006 at 11:53:51 +0000, Wojciech A. Koszek wrote: > http://perforce.freebsd.org/chv.cgi?CH=101093 > > Change 101093 by wkoszek@wkoszek_laptop on 2006/07/09 11:53:14 > > Bring my chages from yesterday session > > cpu.c: > > - Body of the mips_wtf(struct wtf *wtf) is disabled for now. We > distinguish which CPU is used, and we fill '*wtf' with proper > values. For now, fill struct wft members with dummy values. Eh.. If you're native speaker, reading stuff like this has to be a nightmare. I wanted to say: Body of the mips_wtf(struct wtf *wtf) is disabled for now. This function is used to distinguish which CPU is used later, and it works by filling '*wtf' with proper values. For now, fill struct wft members with dummy values. I don't mind people correcting my language, and if You have a minute and you think I use English in wrong way, let me know with proper explanation! Thanks, -- Wojciech A. Koszek wkoszek@FreeBSD.org http://FreeBSD.czest.pl/dunstan/ From owner-p4-projects@FreeBSD.ORG Sun Jul 9 15:24:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A0AEF16A4FE; Sun, 9 Jul 2006 15:24:22 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 7E9C116A4FC for ; Sun, 9 Jul 2006 15:24:22 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 33F2F43D45 for ; Sun, 9 Jul 2006 15:24:22 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69FOMtO020894 for ; Sun, 9 Jul 2006 15:24:22 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69FOLUc020890 for perforce@freebsd.org; Sun, 9 Jul 2006 15:24:21 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sun, 9 Jul 2006 15:24:21 GMT Message-Id: <200607091524.k69FOLUc020890@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101108 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 15:24:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=101108 Change 101108 by wkoszek@wkoszek_laptop on 2006/07/09 15:24:18 After taking a look through XXXMIPS markers, I managed to decrease suspicious places and fix problems which wouldn make kernel compilation impossible. The same, I introduce XXMIPS marker to let more knowledgable people know that this is a place for them to look at, since for my knowledge it should work ok. Those changes are: cpu.c: - comment __RMAN_RESOURCE_VISIBLE since it's no longer present. It was use to access r_start member of struct resource, which is now accessible throught public interface -- rman_get_start(). - intr.h -> intr_machdep.h conversion was done earlier. Make it less suspicious (XXX->XX), and remove old #include. - Bring proper formatting strings for mips_install_vector(). - Add comments about VEC() and VECI() macros. Declare them as public, and remove #undef's. - Use the rman_get_start() descibed above. db_disasm.c: - Bring proper formtatting strings. machdep.c: - XXXMIPS marker for informational comment is not needed. vm_machdep.c: - We have stubs here. There is no sense for XXXMIPS here. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#5 edit .. //depot/projects/mips2/src/sys/mips/mips/db_disasm.c#3 edit .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#11 edit .. //depot/projects/mips2/src/sys/mips/mips/vm_machdep.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#5 (text+ko) ==== @@ -25,13 +25,21 @@ * $FreeBSD$ */ +/* + * XXMIPS: __RMAN_RESOURCE_VISIBLE is no longer present in the tree, and for + * struct resource we have nice interface. + */ +#if 0 #define __RMAN_RESOURCE_VISIBLE +#endif #include -#include +#include #include +#include + #include -#include #include +#include #include #include @@ -39,11 +47,8 @@ #include #include /* - * XXXMIPS: This shoud me intr_machdep.h + * XXMIPS: I did intr.h -> intr_machdep.h conversion here. */ -#if 0 -#include -#endif #include #include @@ -57,7 +62,7 @@ int mips_num_tlb_entries, cpu_id, fpu_id; /* - * XXXMIPS: CHange format strings. + * XXMIPS: Check format strings. * Uncomment this one once VECI macro defined below is uncommented. */ #if 0 @@ -69,51 +74,64 @@ max = 0x80; len = end - begin; if (len > max) - panic("exception code too big for vector %lx", addr); + panic("exception code too big for vector %jx", (intmax_t) addr); if (len == max) - printf("Exception vector at %lx out of space\n", addr); + printf("Exception vector at %jx out of space\n", (intmax_t) addr); else if (len + 8 >= max) - printf("Exception vector at %lx almost out of space\n", addr); + printf("Exception vector at %jx almost out of space\n", + (intmax_t) addr); memcpy((void *)addr, begin, len); } #endif +/* + * XXMIPS: Those declares external addresses of exception handlers to be used. Take a + * look at support.S to see *Vector code. + */ #define VEC(class) extern char class ## Vector[], class ## VectorEnd[] -/* General exception handler. */ +/* + * XXMIPS: This makes cooperation with exception handler more handy. Less hand-typing + * is needed. Take a look at mips_vector_init() in this file to see a usage. + */ +#define VECI(vec, class) mips_vector_install(MIPS_ ## vec ## _EXC_VEC, \ + class ## Vector, \ + class ## VectorEnd) +/* + * General exception handler. + */ VEC(Exception); -/* TLB miss, XTLB miss handler. */ +/* + * TLB miss, XTLB miss handler. + */ VEC(TLBMiss); VEC(XTLBMiss); -/* Cache error handler. */ +/* + * Cache error handler. + */ VEC(Cache); -#undef VEC +/* + * Here you have for example: extern char CacheVector, CacheVestorEnd + */ /* - * XXXMIPS: error : large integer implicitly truncated to unsigned type + * XXMIPS: error : large integer implicitly truncated to unsigned type. This + * error will stay unless we define proper addresses of exception vectors in + * cpufunc.h. */ static void mips_vector_init(void) { - -#define VECI(vec, class) mips_vector_install(MIPS_ ## vec ## _EXC_VEC, \ - class ## Vector, \ - class ## VectorEnd) -/* XXXMIPS */ #if 0 VECI(UTLB_MISS, TLBMiss); VECI(XTLB_MISS, XTLBMiss); VECI(CACHE_ERR, Cache); VECI(GEN, Exception); #endif -#undef VECI -/* XXXMIPS */ -#if 0 mips_wr_status(mips_rd_status() & ~MIPS_SR_BEV); -#endif } /* @@ -353,12 +371,13 @@ return (error); } /* - * XXXMIPS: error: structure has no member named `r_start' + * XMIPS: Right now accessing r_start is hiden and you can easily do + * this with rman_get_start(). */ #if 0 intr = res->r_start; #endif - intr = 0; + intr = rman_get_start(res); #if 0 cpu_establish_hardintr(intr, handler, arg); ==== //depot/projects/mips2/src/sys/mips/mips/db_disasm.c#3 (text+ko) ==== @@ -507,16 +507,15 @@ db_symbol_values(sym, &symname, 0); /* - * XXXMIPS: Check if the format is right here. - * Probably not. + * XXMIPS: Check if the format is right here. */ if (symname) { if (diff == 0) db_printf("%s", symname); else - db_printf("<%s+%lx>", symname, (unsigned long) diff); - db_printf("\t[addr:0x%lx]", (unsigned long) loc); + db_printf("<%s+%jx>", symname, (uintmax_t) diff); + db_printf("\t[addr:0x%jx]", (uintmax_t) loc); } else { - db_printf("0x%lx", (unsigned long) loc); + db_printf("0x%jx", (uintmax_t) loc); } } ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#11 (text+ko) ==== @@ -91,15 +91,15 @@ mips_init(void) { /* - * XXXMIPS: This one is called from subr_param.c. + * This one is called from subr_param.c. */ init_param2(physmem); /* - * XXXMIPS: This one lies in cpu.c. + * This one lies in cpu.c. */ mips_cpu_init(); /* - * XXXMIPS: This is from pmap.c. + * This is from pmap.c. */ pmap_bootstrap(); ==== //depot/projects/mips2/src/sys/mips/mips/vm_machdep.c#2 (text+ko) ==== @@ -54,11 +54,6 @@ #include #include - -/* - * XXXMIPS: Bring comments after eventual new-world order. - */ - void cpu_fork(register struct thread *td1, register struct proc *p2, struct thread *td2, int flags) From owner-p4-projects@FreeBSD.ORG Sun Jul 9 15:28:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A552116A4E9; Sun, 9 Jul 2006 15:28:28 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 6C35216A4DD for ; Sun, 9 Jul 2006 15:28:28 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3632D43D46 for ; Sun, 9 Jul 2006 15:28:28 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69FSSR6021210 for ; Sun, 9 Jul 2006 15:28:28 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69FSR3a021207 for perforce@freebsd.org; Sun, 9 Jul 2006 15:28:27 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sun, 9 Jul 2006 15:28:27 GMT Message-Id: <200607091528.k69FSR3a021207@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101110 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 15:28:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=101110 Change 101110 by wkoszek@wkoszek_laptop on 2006/07/09 15:28:05 XXXMIPS cleanup continued: locore.S -- d prefix is not present for MIPS32 for it's opcodes. tlb.c -- add proper formatting string. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/locore.S#7 edit .. //depot/projects/mips2/src/sys/mips/mips/tlb.c#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#7 (text+ko) ==== @@ -88,13 +88,13 @@ /* * Set up the GP. - * XXXMIPS: I did 'dla' -> 'la' conversion here. + * XXMIPS: I did 'dla' -> 'la' conversion here. */ la gp, _gp /* * Set up our temporary stack. - * XXXMIPS: I did 'dla' -> 'la' conversion here. + * XXMIPS: I did 'dla' -> 'la' conversion here. */ la sp, topstack ==== //depot/projects/mips2/src/sys/mips/mips/tlb.c#4 (text+ko) ==== @@ -88,10 +88,10 @@ kptmap = (pt_entry_t *) (*ptalloc)(kptsize * sizeof (pt_entry_t)); /* - * XXXMIPS: Check format sting. + * XXMIPS: Check format sting. */ - printf("Kernel page table maps %ld %dK pages and is %ldK\n", - (unsigned long) pages, + printf("Kernel page table maps %jd %dK pages and is %ldK\n", + (uintmax_t) pages, PAGE_SIZE / 1024, (unsigned long) (kptsize * sizeof (pt_entry_t)) / 1024); From owner-p4-projects@FreeBSD.ORG Sun Jul 9 15:46:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CE03316A4E9; Sun, 9 Jul 2006 15:46:57 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 85AB916A4E7 for ; Sun, 9 Jul 2006 15:46:57 +0000 (UTC) (envelope-from pjd@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3E0E243D46 for ; Sun, 9 Jul 2006 15:46:57 +0000 (GMT) (envelope-from pjd@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69FkvDR022399 for ; Sun, 9 Jul 2006 15:46:57 GMT (envelope-from pjd@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69FkuPa022396 for perforce@freebsd.org; Sun, 9 Jul 2006 15:46:56 GMT (envelope-from pjd@freebsd.org) Date: Sun, 9 Jul 2006 15:46:56 GMT Message-Id: <200607091546.k69FkuPa022396@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to pjd@freebsd.org using -f From: Pawel Jakub Dawidek To: Perforce Change Reviews Cc: Subject: PERFORCE change 101120 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 15:46:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=101120 Change 101120 by pjd@pjd_anger on 2006/07/09 15:46:47 Add //depot/user/pjd/vpncore/... to obliterate file in hope someone, someday will remind about it. Affected files ... .. //depot/doc/obliterate#5 edit Differences ... ==== //depot/doc/obliterate#5 (text+ko) ==== @@ -2,6 +2,7 @@ # purge unwanted stuff in one go. //depot/user/des/pam/... //depot/user/pjd/geom/... +//depot/user/pjd/vpncore/... //depot/user/flz/src/... //depot/projects/kmacy_sun4v/doc/... //depot/projects/kmacy_sun4v/www/... From owner-p4-projects@FreeBSD.ORG Sun Jul 9 17:20:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5742216A4DF; Sun, 9 Jul 2006 17:20:06 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 2734416A4DD for ; Sun, 9 Jul 2006 17:20:06 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B406043D4C for ; Sun, 9 Jul 2006 17:20:05 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69HK5wH037515 for ; Sun, 9 Jul 2006 17:20:05 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69HK5W6037512 for perforce@freebsd.org; Sun, 9 Jul 2006 17:20:05 GMT (envelope-from gabor@FreeBSD.org) Date: Sun, 9 Jul 2006 17:20:05 GMT Message-Id: <200607091720.k69HK5W6037512@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101137 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 17:20:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=101137 Change 101137 by gabor@gabor_spitfire on 2006/07/09 17:19:34 Implement conflict checking in DESTDIR. This method uses chroot to do that, I also made a ${CHROOT} variable for that. The current TODO list: - Implement deinstall from DESTDIR (it will happen with chroot as well) - Add some clarification when printing file lists at the end of the installation process - Fix dependency handling for DESTDIR, I realized that this is still broken when I tested the current change Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#13 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#13 (text+ko) ==== @@ -1032,6 +1032,7 @@ CHGRP?= /usr/bin/chgrp CHMOD?= /bin/chmod CHOWN?= /usr/sbin/chown +CHROOT?= /usr/sbin/chroot COMM?= /usr/bin/comm CP?= /bin/cp CPIO?= /usr/bin/cpio @@ -3518,11 +3519,10 @@ # Check conflicts -### FIXME: conflict checking in DESTDIR is temporarly ignored for testing - .if !target(check-conflicts) check-conflicts: -.if defined(CONFLICTS) && !defined(DISABLE_CONFLICTS) && !defined(DESTDIR) +.if defined(CONFLICTS) && !defined(DISABLE_CONFLICTS) +.if !defined(DESTDIR) @found=`${PKG_INFO} -I ${CONFLICTS:C/.+/'&'/} 2>/dev/null | ${AWK} '{print $$1}'`; \ conflicts_with=; \ for entry in $${found}; do \ @@ -3545,6 +3545,30 @@ ${ECHO_MSG} " Please remove them first with pkg_delete(1)."; \ exit 1; \ fi +.else + @found=`${CHROOT} ${DESTDIR} ${PKG_INFO} -I ${CONFLICTS:C/.+/'&'/} 2>/dev/null | ${AWK} '{print $$1}'`; \ + conflicts_with=; \ + for entry in $${found}; do \ + if ${CHROOT} ${DESTDIR} ${PKG_INFO} -e $${entry} ; then \ + prfx=`${CHROOT} ${DESTDIR} ${PKG_INFO} -q -p "$${entry}" 2> /dev/null | ${SED} -ne '1s/^@cwd //p'`; \ + orgn=`${CHROOT} ${DESTDIR} ${PKG_INFO} -q -o "$${entry}" 2> /dev/null`; \ + if [ "/${PREFIX}" = "/$${prfx}" -a "/${PKGORIGIN}" != "/$${orgn}" ]; then \ + conflicts_with="$${conflicts_with} $${entry}"; \ + fi; \ + fi; \ + done; \ + if [ -n "$${conflicts_with}" ]; then \ + ${ECHO_MSG}; \ + ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s): "; \ + for entry in $${conflicts_with}; do \ + ${ECHO_MSG} " $${entry}"; \ + done; \ + ${ECHO_MSG}; \ + ${ECHO_MSG} " They install files into the same place."; \ + ${ECHO_MSG} " Please remove them first with pkg_delete(1)."; \ + exit 1; \ + fi +.endif .endif # CONFLICTS .endif From owner-p4-projects@FreeBSD.ORG Sun Jul 9 17:52:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 13FB916A4DF; Sun, 9 Jul 2006 17:52:49 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 E6C2216A4DD for ; Sun, 9 Jul 2006 17:52:48 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 90A4343D66 for ; Sun, 9 Jul 2006 17:52:48 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69HqmFF039913 for ; Sun, 9 Jul 2006 17:52:48 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69Hqmf8039910 for perforce@freebsd.org; Sun, 9 Jul 2006 17:52:48 GMT (envelope-from gabor@FreeBSD.org) Date: Sun, 9 Jul 2006 17:52:48 GMT Message-Id: <200607091752.k69Hqmf8039910@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101140 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 17:52:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=101140 Change 101140 by gabor@gabor_spitfire on 2006/07/09 17:51:53 - Implement deinstalling from DESTDIR - PKG_* macros for pkg_* tools have to be always relative to DESTDIR since we use chrooting - PKGINSTALLVER are determined from DESTDIR as well Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#14 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#14 (text+ko) ==== @@ -2211,11 +2211,11 @@ .if ${OSVERSION} < 491101 && ${PKGORIGIN} != "sysutils/pkg_install" EXTRACT_DEPENDS+= ${LOCALBASE}/sbin/pkg_info:${PORTSDIR}/sysutils/pkg_install .endif -PKG_CMD?= ${LOCALBASE}/sbin/pkg_create -PKG_ADD?= ${LOCALBASE}/sbin/pkg_add -PKG_DELETE?= ${LOCALBASE}/sbin/pkg_delete -PKG_INFO?= ${LOCALBASE}/sbin/pkg_info -PKG_VERSION?= ${LOCALBASE}/sbin/pkg_version +PKG_CMD?= ${LOCALBASE_REL}/sbin/pkg_create +PKG_ADD?= ${LOCALBASE_REL}/sbin/pkg_add +PKG_DELETE?= ${LOCALBASE_REL}/sbin/pkg_delete +PKG_INFO?= ${LOCALBASE_REL}/sbin/pkg_info +PKG_VERSION?= ${LOCALBASE_REL}/sbin/pkg_version .else PKG_CMD?= /usr/sbin/pkg_create PKG_ADD?= /usr/sbin/pkg_add @@ -2227,7 +2227,7 @@ # Does the pkg_create tool support conflict checking? # XXX Slow? .if !defined(PKGINSTALLVER) -PKGINSTALLVER!= ${PKG_INFO} -P 2>/dev/null | ${SED} -e 's/.*: //' +PKGINSTALLVER!= ${CHROOT} ${DESTDIR} ${PKG_INFO} -P 2>/dev/null | ${SED} -e 's/.*: //' .endif .if ${PKGINSTALLVER} < 20030417 DISABLE_CONFLICTS= YES @@ -4172,8 +4172,6 @@ # # Special target to remove installation -### FIXME: deinstall from DESTDIR - .if !target(deinstall) deinstall: .if ${UID} != 0 && !defined(INSTALL_AS_USER) @@ -4182,6 +4180,7 @@ ${SU_CMD} "${MAKE} ${__softMAKEFLAGS} ${.TARGET}" @${ECHO_MSG} "===> Returning to user credentials" .else +.if !defined(DESTDIR) @${ECHO_MSG} "===> Deinstalling for ${PKGORIGIN}" @found_names=`${PKG_INFO} -q -O ${PKGORIGIN}`; \ for p in $${found_names}; do \ @@ -4200,6 +4199,26 @@ ${ECHO_MSG} "===> ${PKGBASE} not installed, skipping"; \ fi @${RM} -f ${INSTALL_COOKIE} ${PACKAGE_COOKIE} +.else + @${ECHO_MSG} "===> Deinstalling for ${PKGORIGIN} from ${DESTDIR}" + @found_names=`${CHROOT} ${DESTDIR} ${PKG_INFO} -q -O ${PKGORIGIN}`; \ + for p in $${found_names}; do \ + check_name=`${ECHO_CMD} $${p} | ${SED} -e 's/-[^-]*$$//'`; \ + if [ "$${check_name}" = "${PKGBASE}" ]; then \ + prfx=`${CHROOT} ${DESTDIR} ${PKG_INFO} -q -p $${p} 2> /dev/null | ${SED} -ne '1s|^@cwd ||p'`; \ + if [ "x${PREFIX}" = "x$${prfx}" ]; then \ + ${ECHO_MSG} "===> Deinstalling $${p}"; \ + ${CHROOT} ${DESTDIR} ${PKG_DELETE} -f $${p}; \ + else \ + ${ECHO_MSG} "===> $${p} has a different PREFIX: $${prfx}, skipping"; \ + fi; \ + fi; \ + done; \ + if [ -z "$${found_names}" ]; then \ + ${ECHO_MSG} "===> ${PKGBASE} not installed in ${DESTDIR}, skipping"; \ + fi + @${RM} -f ${INSTALL_COOKIE} ${PACKAGE_COOKIE} +.endif .endif .endif From owner-p4-projects@FreeBSD.ORG Sun Jul 9 18:06:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9F5AE16A4DF; Sun, 9 Jul 2006 18:06:10 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 7192716A4DA for ; Sun, 9 Jul 2006 18:06:10 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D348543D45 for ; Sun, 9 Jul 2006 18:06:08 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69I68No041848 for ; Sun, 9 Jul 2006 18:06:08 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69I684C041845 for perforce@freebsd.org; Sun, 9 Jul 2006 18:06:08 GMT (envelope-from gabor@FreeBSD.org) Date: Sun, 9 Jul 2006 18:06:08 GMT Message-Id: <200607091806.k69I684C041845@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101147 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 18:06:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=101147 Change 101147 by gabor@gabor_spitfire on 2006/07/09 18:05:09 When packages conflict with DESTDIR set, clarify that they conflict in ${DESTDIR} and you have to remove them from ${DESTDIR}. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#15 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#15 (text+ko) ==== @@ -3559,13 +3559,13 @@ done; \ if [ -n "$${conflicts_with}" ]; then \ ${ECHO_MSG}; \ - ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s): "; \ + ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s) in ${DESTDIR}: "; \ for entry in $${conflicts_with}; do \ ${ECHO_MSG} " $${entry}"; \ done; \ ${ECHO_MSG}; \ ${ECHO_MSG} " They install files into the same place."; \ - ${ECHO_MSG} " Please remove them first with pkg_delete(1)."; \ + ${ECHO_MSG} " Please remove them first with pkg_delete(1) from ${DESTDIR}."; \ exit 1; \ fi .endif From owner-p4-projects@FreeBSD.ORG Sun Jul 9 21:15:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 03B9516A4DF; Sun, 9 Jul 2006 21:15:19 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 CF97F16A4DE for ; Sun, 9 Jul 2006 21:15:18 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6FD5143D82 for ; Sun, 9 Jul 2006 21:15:12 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69LFBqE063206 for ; Sun, 9 Jul 2006 21:15:11 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69LFA58063203 for perforce@freebsd.org; Sun, 9 Jul 2006 21:15:10 GMT (envelope-from clem1@FreeBSD.org) Date: Sun, 9 Jul 2006 21:15:10 GMT Message-Id: <200607092115.k69LFA58063203@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Clément Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 101161 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 21:15:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=101161 Change 101161 by clem1@clem1_ipv6vulns on 2006/07/09 21:14:14 delete daddos from source tree. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/attacking-tools/daddos/daddos.c#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Sun Jul 9 21:36:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 53F6E16A4E6; Sun, 9 Jul 2006 21:36:31 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 2F7E316A4E1 for ; Sun, 9 Jul 2006 21:36:31 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7DEF843ED9 for ; Sun, 9 Jul 2006 21:33:49 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69LXeAZ064472 for ; Sun, 9 Jul 2006 21:33:40 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69LXZ7U064469 for perforce@freebsd.org; Sun, 9 Jul 2006 21:33:35 GMT (envelope-from scottl@freebsd.org) Date: Sun, 9 Jul 2006 21:33:35 GMT Message-Id: <200607092133.k69LXZ7U064469@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 101164 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 21:36:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=101164 Change 101164 by scottl@scottl-x64 on 2006/07/09 21:33:12 IFC Affected files ... .. //depot/projects/scottl-camlock/src/sys/Makefile#8 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/amd64/pmap.c#12 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/conf/GENERIC#11 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/conf/NOTES#9 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/scottl-camlock/src/sys/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/arm/arm/locore.S#5 integrate .. //depot/projects/scottl-camlock/src/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/scottl-camlock/src/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/scottl-camlock/src/sys/arm/at91/files.at91#3 integrate .. //depot/projects/scottl-camlock/src/sys/arm/at91/uart_dev_at91usart.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/arm/sa11x0/uart_cpu_sa1110.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/bsm/audit_kevents.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/bsm/audit_record.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#40 integrate .. //depot/projects/scottl-camlock/src/sys/compat/freebsd32/freebsd32_proto.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/compat/freebsd32/freebsd32_syscall.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/compat/freebsd32/freebsd32_syscalls.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/compat/freebsd32/freebsd32_sysent.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/compat/freebsd32/syscalls.master#9 integrate .. //depot/projects/scottl-camlock/src/sys/compat/linprocfs/linprocfs.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/compat/linux/linux_ioctl.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/compat/linux/linux_ipc.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/compat/linux/linux_misc.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/compat/linux/linux_socket.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/compat/linux/linux_util.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/compat/ndis/kern_ndis.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/scottl-camlock/src/sys/compat/svr4/svr4_ipc.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/compat/svr4/svr4_misc.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/compat/svr4/svr4_proto.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/compat/svr4/svr4_syscall.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/compat/svr4/svr4_syscallnames.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/compat/svr4/svr4_sysent.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/compat/svr4/syscalls.master#4 integrate .. //depot/projects/scottl-camlock/src/sys/conf/NOTES#13 integrate .. //depot/projects/scottl-camlock/src/sys/conf/files#12 integrate .. //depot/projects/scottl-camlock/src/sys/conf/files.amd64#9 integrate .. //depot/projects/scottl-camlock/src/sys/conf/files.i386#9 integrate .. //depot/projects/scottl-camlock/src/sys/conf/files.ia64#8 integrate .. //depot/projects/scottl-camlock/src/sys/conf/kern.mk#6 integrate .. //depot/projects/scottl-camlock/src/sys/conf/kern.pre.mk#6 integrate .. //depot/projects/scottl-camlock/src/sys/conf/kmod.mk#10 integrate .. //depot/projects/scottl-camlock/src/sys/conf/options#11 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_bstream.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_bstream.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_context.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_context.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_env.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_env.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_self.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_self.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_self_context.s#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_step.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_step.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_str.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_str.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_swap.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_swap.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#3 delete .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#3 delete .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_utable.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/ia64/libuwx/src/uwx_utable.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/pf/net/if_pflog.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/contrib/pf/net/if_pfsync.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/dev/asr/MAINTAINER#2 delete .. //depot/projects/scottl-camlock/src/sys/dev/ata/ata-all.h#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ata/ata-chipset.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ata/ata-lowlevel.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ata/ata-pci.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ata/atapi-cd.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ath/if_ath.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ath/if_athioctl.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ath/if_athvar.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/dev/bge/if_bge.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/dev/bge/if_bgereg.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/dev/bktr/CHANGELOG.TXT#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/fdc/fdc.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ic/nec765.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/isp/isp.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/isp/isp_freebsd.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/dev/isp/isp_freebsd.h#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/isp/isp_pci.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/isp/isp_sbus.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/isp/ispmbox.h#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/isp/ispreg.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/dev/isp/ispvar.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ispfw/asm_1040.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ispfw/asm_1080.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ispfw/asm_12160.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/scottl-camlock/src/sys/dev/ispfw/ispfw.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mfi/mfi.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/acphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/amphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/bmtphy.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/brgphy.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/ciphy.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/e1000phy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/exphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/inphy.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/lxtphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/mii_physubr.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/mlphy.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/nsgphy.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/nsphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/pnaphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/qsphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/rgephy.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/rlphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/ruephy.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/tdkphy.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/tlphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/ukphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mii/xmphy.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mpt/mpt.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mpt/mpt.h#11 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mpt/mpt_cam.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/dev/mpt/mpt_pci.c#12 integrate .. //depot/projects/scottl-camlock/src/sys/dev/nfe/if_nfe.c#1 branch .. //depot/projects/scottl-camlock/src/sys/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/scottl-camlock/src/sys/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/scottl-camlock/src/sys/dev/puc/puc.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/scottl-camlock/src/sys/dev/puc/puc_pccard.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/dev/puc/puc_pci.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/puc/pucdata.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/dev/re/if_re.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sio/sio.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sk/if_sk.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/dev/sound/pci/solo.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/if_aue.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/if_ural.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/uplcom.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/dev/usb/usbdevs#11 integrate .. //depot/projects/scottl-camlock/src/sys/doc/Doxyfile#2 delete .. //depot/projects/scottl-camlock/src/sys/doc/Makefile#2 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Dependencies#2 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-cam#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-crypto#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-dev_pci#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-dev_sound#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-dev_usb#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-geom#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-i4b#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-kern#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-libkern#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-linux#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-net80211#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-netgraph#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-netinet#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-netinet6#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-netipsec#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-opencrypto#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Doxyfile-vm#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/Makefile#3 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/README#2 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/scottl-camlock/src/sys/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/scottl-camlock/src/sys/fs/devfs/devfs_vfsops.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/fs/devfs/devfs_vnops.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/fs/portalfs/portal_vnops.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/fs/pseudofs/pseudofs_vnops.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/fs/udf/udf_vfsops.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/fs/unionfs/union_vnops.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/geom/geom_gpt.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/geom/mirror/g_mirror.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/geom/raid3/g_raid3.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/geom/raid3/g_raid3_ctl.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/i386/conf/GENERIC#11 integrate .. //depot/projects/scottl-camlock/src/sys/i386/conf/NOTES#11 integrate .. //depot/projects/scottl-camlock/src/sys/i386/conf/PAE#8 integrate .. //depot/projects/scottl-camlock/src/sys/i386/conf/XBOX#4 integrate .. //depot/projects/scottl-camlock/src/sys/i386/i386/pmap.c#12 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_ipc.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_ipc.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_misc.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_msg.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_other.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_poll.h#3 delete .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_proto.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_syscall.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_sysent.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_xenix.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_xenix.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_xenix_syscall.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/ibcs2_xenix_sysent.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/syscalls.master#6 integrate .. //depot/projects/scottl-camlock/src/sys/i386/ibcs2/syscalls.xenix#4 integrate .. //depot/projects/scottl-camlock/src/sys/i386/include/i4b_ioctl.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/linux_proto.h#10 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/linux_syscall.h#10 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/linux_sysent.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/i386/linux/syscalls.master#10 integrate .. //depot/projects/scottl-camlock/src/sys/i4b/layer4/i4b_l4mgmt.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/conf/GENERIC#9 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/disasm/disasm.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/disasm/disasm_decode.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/disasm/disasm_extract.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/disasm/disasm_format.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/disasm/disasm_int.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/scottl-camlock/src/sys/ia64/ia64/machdep.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/ia64/pmap.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/ia64/trap.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/include/ieeefp.h#2 integrate .. //depot/projects/scottl-camlock/src/sys/ia64/include/md_var.h#5 integrate .. //depot/projects/scottl-camlock/src/sys/isa/isahint.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/kern/bus_if.m#3 integrate .. //depot/projects/scottl-camlock/src/sys/kern/init_sysent.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_acl.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_descrip.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_fork.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_ktrace.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_linker.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_module.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_prot.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/kern/kern_thread.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/kern/link_elf.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/kern/link_elf_obj.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/kern/sched_4bsd.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/sched_core.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/scottl-camlock/src/sys/kern/subr_bus.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/kern/subr_firmware.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/kern/sys_generic.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/kern/syscalls.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/syscalls.master#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/sysv_sem.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/kern/uipc_socket2.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/uipc_usrreq.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/kern/vfs_init.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/kern/vfs_mount.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/kern/vfs_subr.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/kern/vfs_syscalls.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/kern/vfs_vnops.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/modules/Makefile#12 integrate .. //depot/projects/scottl-camlock/src/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/netgraph/Makefile#7 integrate .. //depot/projects/scottl-camlock/src/sys/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/nfe/Makefile#1 branch .. //depot/projects/scottl-camlock/src/sys/modules/streams/Makefile#2 integrate .. //depot/projects/scottl-camlock/src/sys/modules/svr4/Makefile#3 integrate .. //depot/projects/scottl-camlock/src/sys/net/bpf.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/net/if.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_atmsubr.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_bridge.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_clone.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_clone.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_disc.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_enc.c#1 branch .. //depot/projects/scottl-camlock/src/sys/net/if_faith.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_gif.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_gre.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_loop.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_ppp.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_stf.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_tun.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_types.h#5 integrate .. //depot/projects/scottl-camlock/src/sys/net/if_vlan.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/net/rtsock.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/net80211/ieee80211_freebsd.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/netgraph/ng_tag.c#1 branch .. //depot/projects/scottl-camlock/src/sys/netgraph/ng_tag.h#1 branch .. //depot/projects/scottl-camlock/src/sys/netinet/if_ether.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/in_pcb.c#8 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/in_rmx.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/ip_carp.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/ip_divert.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/ip_fw2.c#11 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/ip_ipsec.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/ip_output.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/tcp_input.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/tcp_syncache.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/tcp_usrreq.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/netinet/tcp_var.h#10 integrate .. //depot/projects/scottl-camlock/src/sys/netinet6/in6.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/netinet6/in6_cksum.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/netinet6/in6_pcb.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/netinet6/in6_rmx.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/netinet6/in6_var.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/netinet6/ipsec.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/netinet6/raw_ip6.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/netipsec/ipsec.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/netipsec/ipsec_input.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/netipsec/ipsec_osdep.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/netipsec/ipsec_output.c#3 integrate .. //depot/projects/scottl-camlock/src/sys/netipsec/xform_ipip.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/nfsclient/bootp_subr.c#6 integrate .. //depot/projects/scottl-camlock/src/sys/nfsclient/nfs_diskless.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/nfsclient/nfs_socket.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/nfsclient/nfs_vnops.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/nfsserver/nfs_srvcache.c#5 integrate .. //depot/projects/scottl-camlock/src/sys/nfsserver/nfsrvcache.h#5 integrate .. //depot/projects/scottl-camlock/src/sys/pc98/conf/GENERIC#9 integrate .. //depot/projects/scottl-camlock/src/sys/pci/agp_i810.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/pci/if_rlreg.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/powerpc/conf/GENERIC#9 integrate .. //depot/projects/scottl-camlock/src/sys/powerpc/powerpc/mmu_oea.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/security/audit/audit.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/security/audit/audit_arg.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/security/audit/audit_bsm.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/sparc64/conf/GENERIC#10 integrate .. //depot/projects/scottl-camlock/src/sys/sys/bus.h#7 integrate .. //depot/projects/scottl-camlock/src/sys/sys/gpt.h#4 integrate .. //depot/projects/scottl-camlock/src/sys/sys/rwlock.h#3 integrate .. //depot/projects/scottl-camlock/src/sys/sys/sockio.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/sys/sx.h#6 integrate .. //depot/projects/scottl-camlock/src/sys/sys/syscall.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/sys/syscall.mk#9 integrate .. //depot/projects/scottl-camlock/src/sys/sys/syscallsubr.h#8 integrate .. //depot/projects/scottl-camlock/src/sys/sys/sysproto.h#9 integrate .. //depot/projects/scottl-camlock/src/sys/ufs/ffs/ffs_vfsops.c#10 integrate .. //depot/projects/scottl-camlock/src/sys/vm/vm_mmap.c#7 integrate .. //depot/projects/scottl-camlock/src/sys/vm/vm_page.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/vm/vm_pageq.c#6 integrate Differences ... ==== //depot/projects/scottl-camlock/src/sys/Makefile#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/scottl-camlock/src/sys/amd64/amd64/pmap.c#12 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.558 2006/06/20 20:52:10 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1979,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2145,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2582,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2674,7 +2668,7 @@ PHYS_TO_DMAP(VM_PAGE_TO_PHYS(dstmpde)); pde = &pde[pmap_pde_index(addr)]; if (*pde == 0) { - *pde = srcptepaddr; + *pde = srcptepaddr & ~PG_W; dst_pmap->pm_stats.resident_count += NBPDR / PAGE_SIZE; } else @@ -2697,11 +2691,6 @@ * we only virtual copy managed pages */ if ((ptetemp & PG_MANAGED) != 0) { - /* - * We have to check after allocpte for the - * pte still being around... allocpte can - * block. - */ dstmpte = pmap_allocpte(dst_pmap, addr, M_NOWAIT); if (dstmpte == NULL) @@ -2713,14 +2702,16 @@ pmap_try_insert_pv_entry(dst_pmap, addr, PHYS_TO_VM_PAGE(ptetemp & PG_FRAME))) { /* - * Clear the modified and + * Clear the wired, modified, and * accessed (referenced) bits * during the copy. */ - *dst_pte = ptetemp & ~(PG_M | PG_A); + *dst_pte = ptetemp & ~(PG_W | PG_M | + PG_A); dst_pmap->pm_stats.resident_count++; } else - pmap_unwire_pte_hold(dst_pmap, addr, dstmpte); + pmap_unwire_pte_hold(dst_pmap, addr, + dstmpte); if (dstmpte->wire_count >= srcmpte->wire_count) break; } @@ -2799,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2980,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3033,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3055,45 +3033,33 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if ((*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; - if (rtval > 4) { - PMAP_UNLOCK(pmap); - break; - } + if (rtval > 4) + pvn = NULL; } PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3103,7 +3069,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3114,7 +3096,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3128,9 +3126,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3154,9 +3150,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3176,9 +3170,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/scottl-camlock/src/sys/amd64/conf/GENERIC#11 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.460 2006/06/15 19:58:52 netchild Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.464 2006/07/09 16:39:21 mjacob Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols @@ -252,6 +251,7 @@ device md # Memory "disks" device gif # IPv6 and IPv4 tunneling device faith # IPv6-to-IPv4 relaying (translation) +device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! ==== //depot/projects/scottl-camlock/src/sys/amd64/conf/NOTES#9 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.56 2006/06/12 20:38:17 jhb Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.57 2006/06/26 23:41:06 obrien Exp $ # # @@ -223,6 +223,7 @@ # (requires miibus) # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters +# nfe: nVidia nForce MCP on-board Ethernet Networking (BSD open source) # nve: nVidia nForce MCP on-board Ethernet Networking # ral: Ralink Technology IEEE 802.11 wireless adapter # ural: Ralink Technology RT2500USB IEEE 802.11 wireless adapter @@ -233,6 +234,7 @@ options ED_SIC device iwi device ipw +device nfe # nVidia nForce MCP on-board Ethernet Networking device nve # nVidia nForce MCP on-board Ethernet Networking device ral device ural ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_proto.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_syscall.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/linux32_sysent.c#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.13 2006/06/20 20:41:28 netchild Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #include @@ -41,8 +41,8 @@ { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_STAT }, /* 18 = linux_stat */ { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_LSEEK }, /* 19 = linux_lseek */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_GETPID }, /* 20 = linux_getpid */ - { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ - { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ + { SYF_MPSAFE | AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ + { SYF_MPSAFE | AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_SETUID }, /* 23 = linux_setuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_GETUID }, /* 24 = linux_getuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_SETTIMEOFDAY }, /* 25 = linux_stime */ @@ -65,16 +65,16 @@ { SYF_MPSAFE | AS(linux_pipe_args), (sy_call_t *)linux_pipe, AUE_PIPE }, /* 42 = linux_pipe */ { SYF_MPSAFE | AS(linux_times_args), (sy_call_t *)linux_times, AUE_NULL }, /* 43 = linux_times */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 44 = prof */ - { AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ + { SYF_MPSAFE | AS(linux_brk_args), (sy_call_t *)linux_brk, AUE_NULL }, /* 45 = linux_brk */ { SYF_MPSAFE | AS(linux_setgid16_args), (sy_call_t *)linux_setgid16, AUE_SETGID }, /* 46 = linux_setgid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getgid16, AUE_GETGID }, /* 47 = linux_getgid16 */ { SYF_MPSAFE | AS(linux_signal_args), (sy_call_t *)linux_signal, AUE_NULL }, /* 48 = linux_signal */ { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_GETEUID }, /* 49 = linux_geteuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_GETEGID }, /* 50 = linux_getegid16 */ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ - { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ + { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ @@ -137,7 +137,7 @@ { SYF_MPSAFE | AS(linux_wait4_args), (sy_call_t *)linux_wait4, AUE_WAIT4 }, /* 114 = linux_wait4 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_swapoff, AUE_SWAPOFF }, /* 115 = linux_swapoff */ { SYF_MPSAFE | AS(linux_sysinfo_args), (sy_call_t *)linux_sysinfo, AUE_NULL }, /* 116 = linux_sysinfo */ - { AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ + { SYF_MPSAFE | AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ { SYF_MPSAFE | AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC }, /* 118 = fsync */ { SYF_MPSAFE | AS(linux_sigreturn_args), (sy_call_t *)linux_sigreturn, AUE_SIGRETURN }, /* 119 = linux_sigreturn */ { SYF_MPSAFE | AS(linux_clone_args), (sy_call_t *)linux_clone, AUE_RFORK }, /* 120 = linux_clone */ ==== //depot/projects/scottl-camlock/src/sys/amd64/linux32/syscalls.master#7 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.11 2006/06/20 20:38:44 netchild Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -75,10 +75,10 @@ 19 AUE_LSEEK MSTD { int linux_lseek(l_uint fdes, l_off_t off, \ l_int whence); } 20 AUE_GETPID MSTD { int linux_getpid(void); } -21 AUE_MOUNT STD { int linux_mount(char *specialfile, \ +21 AUE_MOUNT MSTD { int linux_mount(char *specialfile, \ char *dir, char *filesystemtype, \ l_ulong rwflag, void *data); } -22 AUE_UMOUNT STD { int linux_oldumount(char *path); } +22 AUE_UMOUNT MSTD { int linux_oldumount(char *path); } 23 AUE_SETUID MSTD { int linux_setuid16(l_uid16_t uid); } 24 AUE_GETUID MSTD { int linux_getuid16(void); } 25 AUE_SETTIMEOFDAY MSTD { int linux_stime(void); } @@ -103,7 +103,7 @@ 42 AUE_PIPE MSTD { int linux_pipe(l_ulong *pipefds); } 43 AUE_NULL MSTD { int linux_times(struct l_times_argv *buf); } 44 AUE_NULL UNIMPL prof -45 AUE_NULL STD { int linux_brk(l_ulong dsend); } +45 AUE_NULL MSTD { int linux_brk(l_ulong dsend); } 46 AUE_SETGID MSTD { int linux_setgid16(l_gid16_t gid); } 47 AUE_GETGID MSTD { int linux_getgid16(void); } 48 AUE_NULL MSTD { int linux_signal(l_int sig, \ @@ -111,9 +111,9 @@ 49 AUE_GETEUID MSTD { int linux_geteuid16(void); } 50 AUE_GETEGID MSTD { int linux_getegid16(void); } 51 AUE_ACCT MNOPROTO { int acct(char *path); } -52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); } +52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -212,7 +212,7 @@ struct l_rusage *rusage); } 115 AUE_SWAPOFF MSTD { int linux_swapoff(void); } 116 AUE_NULL MSTD { int linux_sysinfo(struct l_sysinfo *info); } -117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \ +117 AUE_NULL MSTD { int linux_ipc(l_uint what, l_int arg1, \ l_int arg2, l_int arg3, void *ptr, \ l_long arg5); } 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } ==== //depot/projects/scottl-camlock/src/sys/arm/arm/elf_trampoline.c#5 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.8 2006/06/18 22:46:30 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.11 2006/06/23 22:45:35 cognet Exp $"); #include #include #include @@ -131,6 +131,8 @@ } } +static void arm9_setup(void); + void _start(void) { @@ -174,7 +176,6 @@ __start(); } -#ifdef KZIP static void get_cachetype_cp15() { @@ -255,6 +256,7 @@ } +#ifdef KZIP static unsigned char *orig_input, *i_input, *i_output; @@ -348,8 +350,8 @@ int d) { Elf32_Ehdr *eh; - Elf32_Phdr phdr[512] /* XXX */, *php; - Elf32_Shdr shdr[512] /* XXX */; + Elf32_Phdr phdr[64] /* XXX */, *php; + Elf32_Shdr shdr[64] /* XXX */; int i,j; void *entry_point; int symtabindex = -1; ==== //depot/projects/scottl-camlock/src/sys/arm/arm/locore.S#5 (text+ko) ==== @@ -37,9 +37,9 @@ #include #include #include -__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.13 2005/12/21 15:02:31 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/locore.S,v 1.14 2006/06/21 23:47:25 imp Exp $"); -/* What size should this really be ? It is only used by init_arm() */ +/* What size should this really be ? It is only used by initarm() */ #define INIT_ARM_STACK_SIZE 2048 /* ==== //depot/projects/scottl-camlock/src/sys/arm/at91/at91_pio.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.1 2006/03/24 07:39:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); #include #include @@ -38,7 +38,9 @@ #include #include +#include #include +#include >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Jul 9 21:40:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0103416A60E; Sun, 9 Jul 2006 21:40:23 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B906F16A54E for ; Sun, 9 Jul 2006 21:40:22 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F9D543D64 for ; Sun, 9 Jul 2006 21:39:49 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69LdnPn064774 for ; Sun, 9 Jul 2006 21:39:49 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69Ldnfh064771 for perforce@freebsd.org; Sun, 9 Jul 2006 21:39:49 GMT (envelope-from gabor@FreeBSD.org) Date: Sun, 9 Jul 2006 21:39:49 GMT Message-Id: <200607092139.k69Ldnfh064771@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101167 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 21:40:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=101167 Change 101167 by gabor@gabor_spitfire on 2006/07/09 21:39:24 IFC Affected files ... .. //depot/projects/soc2006/gabor_ports/KNOBS#3 integrate .. //depot/projects/soc2006/gabor_ports/MOVED#5 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#16 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.scons.mk#3 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.sites.mk#4 integrate .. //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/dopackagestats#3 integrate .. //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/processonelog#3 integrate .. //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/showrunning#1 branch .. //depot/projects/soc2006/gabor_ports/UPDATING#5 integrate Differences ... ==== //depot/projects/soc2006/gabor_ports/KNOBS#3 (text+ko) ==== @@ -1,7 +1,7 @@ # # KNOBS - A list of popular knobs and descriptions # -# $FreeBSD: ports/KNOBS,v 1.12 2006/06/23 14:14:49 skv Exp $ +# $FreeBSD: ports/KNOBS,v 1.13 2006/07/05 15:18:35 skv Exp $ # # Rules to adding knobs: # @@ -52,6 +52,7 @@ IMAGEMAGICK ImageMagick graphics support IMAP Adds support for IMAP mail protocol IPV6 IPv6 internet support +ISPELL Use textproc/ispell for spell checking JAVA Adds support for Java KDE Adds KDE support LAME LAME MP3 audio encoder support ==== //depot/projects/soc2006/gabor_ports/MOVED#5 (text+ko) ==== @@ -1,7 +1,7 @@ # # MOVED - a list of (recently) moved or removed ports # -# $FreeBSD: ports/MOVED,v 1.1086 2006/07/04 14:04:27 vd Exp $ +# $FreeBSD: ports/MOVED,v 1.1092 2006/07/09 21:24:25 itetcu Exp $ # # Each entry consists of a single line containing the following four # fields in the order named, separated with the pipe (`|') character: @@ -2402,3 +2402,11 @@ security/p5-Crypt-OpenPGP||2006-07-04|Has expired: Crypt-OpenPGP was abandoned in 2002, use security/gnupg instead textproc/sed_inplace||2006-07-04|Has expired: This port is not required anymore textproc/xml4j||2006-07-04|Has expired: it has been replaced by textproc/xerces-j 8 years ago +www/sitemapgen|www/google-sitemapgen|2006-07-05|Duplicate port +security/gnutls-devel||2006-07-06|Development version is not active so far +www/otrs|devel/otrs|2006-07-07|Duplicate port +math/UFsparse|math/ufsparse|2006-07-09|port name should not have capital letters +sysutils/lineak_defaultplugin|sysutils/lineak-defaultplugin|2006-07-09|port name changed to match upstream +sysutils/lineak_kdeplugins|sysutils/lineak-kdeplugins|2006-07-09|port name changed to match upstream +sysutils/lineak_xosdplugin|sysutils/lineak-xosdplugin|2006-07-09|port name changed to match upstream +japanese/phpgroupware||2006-04-10|removed at mainter request (because broken and vulnerabilities) ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#16 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.port.mk,v 1.536 2006/07/05 02:18:08 linimon Exp $ +# $FreeBSD: ports/Mk/bsd.port.mk,v 1.537 2006/07/06 17:56:45 linimon Exp $ # $NetBSD: $ # # bsd.port.mk - 940820 Jordan K. Hubbard. @@ -384,9 +384,9 @@ # USE_OPENSSL - If set, this port relies on the OpenSSL package. ## # USE_OPENLDAP - If set, this port uses the OpenLDAP libraries. -# Implies: WANT_OPENLDAP_VER?=22 +# Implies: WANT_OPENLDAP_VER?=23 # WANT_OPENLDAP_VER -# - Legal values are: 21, 22, 23 +# - Legal values are: 22, 23, 24 # If set to an unkown value, the port is marked BROKEN. # WANT_OPENLDAP_SASL # - If set, the system should use OpenLDAP libraries ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.scons.mk#3 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: Makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.scons.mk,v 1.1 2006/07/05 02:11:20 linimon Exp $ +# $FreeBSD: ports/Mk/bsd.scons.mk,v 1.3 2006/07/05 19:53:27 linimon Exp $ # # bsd.scons.mk - Python-based SCons build system interface. # Author: Alexander Botero-Lowry @@ -9,7 +9,7 @@ # Please view me with 4 column tabs! # Please make sure all changes to this file are passed through the maintainer. -SCONS_MAINTAINER= alex@foxybanana.com> +SCONS_MAINTAINER= alex@foxybanana.com # # SCONS_BIN is the location where the scons port installs the scons @@ -20,14 +20,14 @@ SCONS_BIN= ${LOCALBASE}/bin/scons SCONS_PORT= ${PORTSDIR}/devel/scons -# +# # CCFLAGS is the scons equivalent of CFLAGS. So we should bring in our # FreeBSD CFLAGS. # # LINKFLAGS is equivalent to LDFLAGS in make speak, so we bring in the # FreeBSD default LDFLAGS. # -# Some scons projects may honor PKGCONFIGDIR, which tells them where to +# Some scons projects may honor PKGCONFIGDIR, which tells them where to # look for, and install, pkgconfig files. # CCFLAGS?= ${CFLAGS} @@ -38,15 +38,15 @@ CXXFLAGS+= -I${LOCALBASE}/include LINKFLAGS+= -L${LOCALBASE}/lib -# +# # SCONS_ENV is where we pass all the stuff that should be the # same for any scons port to scons. Things like CCFLAGS, and LINKFLAGS # go here. # -# SCONS_ARG is where you pass port specific scons flags to the scons +# SCONS_ARG is where you pass port specific scons flags to the scons # enviornment. # -# SCONS_BUILDENV is where you pass variables you want to be in the +# SCONS_BUILDENV is where you pass variables you want to be in the # System Enviornment instead of the SCons Enviornment. # # SCONS_TARGET is the same as MAKE_TARGET it is passed as the last @@ -55,20 +55,20 @@ SCONS_ENV?= CCFLAGS="${CCFLAGS}" CXXFLAGS="${CXXFLAGS}" \ LINKFLAGS="${LINKFLAGS}" PKGCONFIGDIR="${PKGCONFIGDIR}" \ PREFIX="${DESTDIR}${PREFIX}" CC="${CC}" CXX="${CXX}" -SCONS_ARGS?= -SCONS_BUILDENV?= +SCONS_ARGS?= +SCONS_BUILDENV?= SCONS_TARGET?= # -# SCONS_INSTALL_TARGET is the default target to be used when +# SCONS_INSTALL_TARGET is the default target to be used when # installing a port using scons. # SCONS_INSTALL_TARGET?= ${INSTALL_TARGET} -# +# # Make sure we depend on scons # -BUILD_DEPENDS+= ${SCONS_BIN}:${SCONS_PORT} +BUILD_DEPENDS+= ${SCONS_BIN}:${SCONS_PORT} .if !target(do-build) do-build: ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.sites.mk#4 (text+ko) ==== @@ -20,7 +20,7 @@ # # Note: all entries should terminate with a slash. # -# $FreeBSD: ports/Mk/bsd.sites.mk,v 1.373 2006/07/02 15:27:49 arved Exp $ +# $FreeBSD: ports/Mk/bsd.sites.mk,v 1.374 2006/07/06 23:56:12 bsam Exp $ # # Where to put distfiles that don't have any other master site @@ -211,7 +211,6 @@ .if !defined(IGNORE_MASTER_SITE_FEDORA_LINUX) MASTER_SITE_FEDORA_LINUX+= \ - ftp://limestone.uoregon.edu/fedora/%SUBDIR%/ \ http://mirrors.kernel.org/fedora/core/%SUBDIR%/ \ ftp://mirrors.kernel.org/fedora/core/%SUBDIR%/ \ http://mirror.web-ster.com/fedora/core/%SUBDIR%/ \ ==== //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/dopackagestats#3 (text+ko) ==== @@ -1,5 +1,5 @@ #!/bin/sh -# $FreeBSD# +# $FreeBSD: ports/Tools/portbuild/scripts/dopackagestats,v 1.10 2006/07/08 04:09:42 linimon Exp $ # # create HTML showing numbers of packages vs errors. Run this in a directory # accessible to the web server. @@ -12,60 +12,75 @@ OUTFILE=packagestats.html TMPFILE=.${OUTFILE} -echo "" > ${TMPFILE} -echo "" >> ${TMPFILE} -echo "FreeBSD package building statistics" >> ${TMPFILE} -echo "" >> ${TMPFILE} +# stylesheet seems like overkill for something this simple +TABLEBGCOLOR="#F0F0F0" +THCOLOR="#E0E0FF" +TDCOLOR_DONE="lightgreen" +TDCOLOR_NOT_DONE="lightyellow" + +# subroutines -echo "" >> ${TMPFILE} -echo "

FreeBSD package building statistics

" >> ${TMPFILE} -echo "

as of `date`

" >> ${TMPFILE} +write_header () { + echo "" > ${TMPFILE} + echo "" >> ${TMPFILE} + echo "FreeBSD package building statistics" >> ${TMPFILE} + echo "" >> ${TMPFILE} -for arch in ${SUPPORTED_ARCHS}; do + echo "" >> ${TMPFILE} + echo "

FreeBSD package building statistics

" >> ${TMPFILE} + echo "

as of `date`

" >> ${TMPFILE} +} - # begin table - echo "" >> ${TMPFILE} +write_table_begin () { + echo "
" >> ${TMPFILE} echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} +} - # begin row - branches=`ls ${ROOT_DIRECTORY}/${arch} | grep '^[1-9]$' | sort` - for branch in ${branches}; do +write_row () { + # first, gather data - directory=${ROOT_DIRECTORY}/${arch}/${branch} + arch=$1 + build=$2 + directory=${ROOT_DIRECTORY}/${arch}/${build} + branch=`echo $build | sed -e "s/-exp//"` if [ "$branch" = "4" ]; then indexfile=$directory/ports/INDEX else indexfile=$directory/ports/INDEX-$branch fi - echo "" >> ${TMPFILE} + # column: datestamp of latest log + latest=" " + if [ -d $directory/logs ]; then + #latest="$(cd $directory/logs; ls -rtTl | grep '\.log' | tail -1 | awk '{printf("%s %s %s %s\n",$6,$7,$8,$9)}')" + latest="$(cd $directory/logs; ls -rtTl | grep '\.log' | tail -1 | awk '{printf("%s %s\n",$6,$7)}')" + if [ "$latest" ]; then + #latest="$latest `date '+%Z'`" + else + latest=" " + fi + fi - # column: ARCH - echo "" >> ${TMPFILE} - # column: INDEX count n_index=0 if [ -f $indexfile ]; then n_index=`cat $indexfile | wc -l` fi - echo "" >> ${TMPFILE} # column: package count n_packages=0 if [ -d $directory/packages/All ]; then n_packages=`find $directory/packages/All -name \*.tbz -o -name \*.tgz |wc -l` fi - echo "" >> ${TMPFILE} # column: error count n_errors=0 @@ -74,16 +89,12 @@ #n_errors=`find $directory/errors -name \*.log -o -name \*.log.bz2 |wc -l` n_errors=`ls $directory/errors | grep '.log' | wc -l` fi - echo "" >> ${TMPFILE} # column: duds count n_duds=0 if [ -f $directory/duds ]; then n_duds=`cat $directory/duds | wc -l` fi - echo "" >> ${TMPFILE} # column: missing count if [ $n_index -ne 0 ]; then @@ -91,7 +102,6 @@ else # index currently being rebuilt n_missing=0 fi - echo "" >> ${TMPFILE} # column: done flag done_flag="N" @@ -100,28 +110,87 @@ done_flag="Y" fi fi - echo "" >> ${TMPFILE} + + # decorate the row to make everything less "gray" + if [ "$done_flag" = "Y" ]; then + cellcolor=$TDCOLOR_DONE + else + cellcolor=$TDCOLOR_NOT_DONE + fi + # now write the row + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} +} - done - +write_table_end () { echo "
 INDEXpackageserrorsskippedmissingdone? as ofINDEXpackageserrorsskippedmissingdone?
$arch-$branch$n_index" >> ${TMPFILE} - echo "" >> ${TMPFILE} - echo "$n_packages" >> ${TMPFILE} - echo "" >> ${TMPFILE} - echo "$n_errors$n_duds$n_missing$done_flag
$arch-$build$latest$n_index" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "$n_packages" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "$n_errors$n_duds$n_missing$done_flag
" >> ${TMPFILE} echo "
" >> ${TMPFILE} +} +write_footer () { + echo "

explanation of columns:

" >> ${TMPFILE} + echo "
    " >> ${TMPFILE} + echo "
  • as of is the date of the latest logfile.
  • " >> ${TMPFILE} + echo "
  • INDEX is number of ports in the INDEX file built from the latest cvs checkout.
  • " >> ${TMPFILE} + echo "
  • packages is number of packages successfully built.
  • " >> ${TMPFILE} + echo "
  • errors is number of packages that failed.
  • " >> ${TMPFILE} + echo "
  • skipped is number of packages that were skipped due to NO_PACKAGE, IGNORE, BROKEN, FORBIDDEN, and so forth (\"duds\" file).
  • " >> ${TMPFILE} + echo "
  • missing is the INDEX column minus the others. These are packages that have not been built for one reason or another.
  • " >> ${TMPFILE} + echo "
  • done is whether that run terminated normally or not.
  • " >> ${TMPFILE} + echo "
" >> ${TMPFILE} + + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} +} + +# main + +write_header + +# display all the mainstream builds first +for arch in ${SUPPORTED_ARCHS}; do + + builds=`ls ${ROOT_DIRECTORY}/${arch} | grep '^[1-9]$' | sort` + if [ ! -z "$builds" ]; then + write_table_begin + + for build in ${builds}; do + write_row ${arch} ${build} + done + + write_table_end + fi done -echo "

explanation of columns:

" >> ${TMPFILE} -echo "
    " >> ${TMPFILE} -echo "
  • INDEX is number of ports in the INDEX file built from the latest cvs checkout.
  • " >> ${TMPFILE} -echo "
  • packages is number of packages successfully built.
  • " >> ${TMPFILE} -echo "
  • errors is number of packages that failed.
  • " >> ${TMPFILE} -echo "
  • skipped is number of packages that were skipped due to NO_PACKAGE, IGNORE, BROKEN, FORBIDDEN, and so forth (\"duds\" file).
  • " >> ${TMPFILE} -echo "
  • missing is the INDEX column minus the others. These are packages that have not been built for one reason or another.
  • " >> ${TMPFILE} -echo "
  • done is whether that run terminated normally or not.
  • " >> ${TMPFILE} -echo "
" >> ${TMPFILE} +# then display all -exp builds (probably only of interest to portmgr; +# would break up the logical flow of the above) +for arch in ${SUPPORTED_ARCHS}; do + + builds=`ls ${ROOT_DIRECTORY}/${arch} | grep '^[1-9]-exp$' | sort` + if [ ! -z "$builds" ]; then + write_table_begin + + for build in ${builds}; do + write_row ${arch} ${build} + done + + write_table_end + fi +done -echo "" >> ${TMPFILE} -echo "" >> ${TMPFILE} +write_footer mv -f ${TMPFILE} ${OUTFILE} ==== //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/processonelog#3 (text+ko) ==== @@ -1,5 +1,5 @@ #!/bin/sh -# $FreeBSD: ports/Tools/portbuild/scripts/processonelog,v 1.6 2006/06/24 19:51:53 linimon Exp $ +# $FreeBSD: ports/Tools/portbuild/scripts/processonelog,v 1.8 2006/07/08 21:38:55 linimon Exp $ # # Read a single errorlogfile and output a line of the format # $filename|$portname|$affected|$logsize|$dir|$maintainer|\ @@ -90,7 +90,7 @@ reason="runaway_process"; tag="runaway" elif grep -q "pnohang: killing make package" $1; then reason="runaway_process"; tag="runaway" -elif grep -qE "pkg_add: (can't find enough temporary space|projected size of .* exceeds available free space)" $1; then +elif grep -qE "pkg_add:.*(can't find enough temporary space|projected size of .* exceeds available free space)" $1; then reason="disk_full"; tag="df" elif grep -qE '(parse error|too (many|few) arguments to|argument.*doesn.*prototype|incompatible type for argument|conflicting types for|undeclared \(first use (in |)this function\)|incorrect number of parameters|has incomplete type and cannot be initialized|error: storage size.* isn.t known)' $1; then reason="compiler_error"; tag="cc" @@ -240,8 +240,6 @@ reason="perl"; tag="perl" elif grep -q 'BEGIN failed--compilation aborted at ..Makefile.PL line' $1; then reason="perl5"; tag="perl5" -elif grep -q "Syntax error: .(. unexpected (expecting .fi.)" $1; then - reason="portcomment"; tag="portcomment" elif grep -q "Abort trap" $1; then reason="process_failed"; tag="process" elif grep -q "Bus error" $1; then ==== //depot/projects/soc2006/gabor_ports/UPDATING#5 (text+ko) ==== @@ -6,6 +6,23 @@ time you update your ports collection, before attempting any port upgrades. +20060707: + AFFECTS: users of www/lifetype + AUTHOR: clsung@FreeBSD.org + + The default install location has changed from + ${PREFIX}/www/data/lifetype to ${PREFIX}/www/lifetype. + +20060706: + AFFECTS: users of security/gnutls and any port that depends on it + AUTHOR: novel@FreeBSD.org + + gnutls has been updated to 1.4.0 and all shared libraries' versions + have been bumped. So you need to rebuild all applications that + depend on gnutls. Do something like: + + portupgrade -rf gnutls + 20060703: AFFECTS: users of audio/amarok AUTHOR: mich@FreeBSD.org @@ -19,27 +36,29 @@ AFFECTS: users of sysutils/portupgrade AUTHOR: sem@FreeBSD.org - Because of portupgrade had a bug with detecting of Berkley DB version 2+, - and a default database now set to use this version you can get portupgrade - don't work with old databases. A quick fix is removing the databases: - `rm /var/db/pkg/pkgdb.db /usr/ports/INDEX*.db'. portupgrade will recreate - them automaticaly. It's absolutely no harm. + Because portupgrade had a problem with detecting Berkley DB version 2 + or newer, and the default database format is now set to use these + versions, you can end up with a portupgrade that does not work with + older databases. A quick fix is to remove the databases, type: + 'rm /var/db/pkg/pkgdb.db /usr/ports/INDEX*.db'. + portupgrade will recreate them automaticaly. It does absolutely no harm. - If you don't want remove the databases you should detect what database - type do you use, and set port options accordly. Follow the instructions: + If you do not want remove the databases, you should detect what database + type do you use, and set the port options for portupgrade accordingly. + Follow these instructions: - - run `pkgdb -fu' *before* upgrading and take a look on the output. + - run 'pkgdb -fu' *before* upgrading and take a look on the output. You can see database format there as: format:XXX, where XXX is your current database format. - Go to portupgrade port directory and configure the port with - `make config' command. If you have bdb_* format then turn on BDB4 option, - if you have bdb1_* format then turn off BDB4 and turn on BDB1 option. - If you have dbd_hash format then turn off all option. + `make config' command. If you have bdb_* format, then turn on the BDB4 + option. If you have bdb1_* format, then turn off BDB4 and turn on + the BDB1 option. If you have dbd_hash format, then turn off all options. - Upgrade portupgrade. Note: if you change database format with changing port options, - you should remove ruby-bdb* port that you don't need anymore or to hard - code database format in your pkgtools.conf. + you should remove the ruby-bdb* port that you don't need anymore. + Alternatively, you can hard code database format in your pkgtools.conf. 20060702: AFFECTS: users of multimedia/handbrake @@ -3770,4 +3789,4 @@ 2) Update all p5-* modules. portupgrade -f p5-\* -$FreeBSD: ports/UPDATING,v 1.356 2006/07/04 00:48:39 lioux Exp $ +$FreeBSD: ports/UPDATING,v 1.359 2006/07/08 02:28:49 clsung Exp $ From owner-p4-projects@FreeBSD.ORG Sun Jul 9 21:56:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 451B916A4E0; Sun, 9 Jul 2006 21:56:15 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 2145B16A4DE for ; Sun, 9 Jul 2006 21:56:15 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B71AC43D8A for ; Sun, 9 Jul 2006 21:56:11 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69LuBc8065667 for ; Sun, 9 Jul 2006 21:56:11 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69LuBOp065664 for perforce@freebsd.org; Sun, 9 Jul 2006 21:56:11 GMT (envelope-from scottl@freebsd.org) Date: Sun, 9 Jul 2006 21:56:11 GMT Message-Id: <200607092156.k69LuBOp065664@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 101170 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 21:56:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101170 Change 101170 by scottl@scottl-x64 on 2006/07/09 21:55:52 Loop around IFC. Affected files ... .. //depot/projects/scottl-camlock/src/sys/kern/kern_environment.c#9 integrate .. //depot/projects/scottl-camlock/src/sys/kern/subr_hints.c#4 integrate .. //depot/projects/scottl-camlock/src/sys/sys/systm.h#8 integrate Differences ... ==== //depot/projects/scottl-camlock/src/sys/kern/kern_environment.c#9 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_environment.c,v 1.43 2006/03/15 19:23:08 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_environment.c,v 1.44 2006/07/09 21:42:58 scottl Exp $"); #include "opt_mac.h" ==== //depot/projects/scottl-camlock/src/sys/kern/subr_hints.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_hints.c,v 1.12 2005/07/31 10:46:55 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_hints.c,v 1.13 2006/07/09 21:42:58 scottl Exp $"); #include #include ==== //depot/projects/scottl-camlock/src/sys/sys/systm.h#8 (text+ko) ==== @@ -32,7 +32,7 @@ * SUCH DAMAGE. * * @(#)systm.h 8.7 (Berkeley) 3/29/95 - * $FreeBSD: src/sys/sys/systm.h,v 1.240 2006/02/11 09:33:07 phk Exp $ + * $FreeBSD: src/sys/sys/systm.h,v 1.241 2006/07/09 21:42:58 scottl Exp $ */ #ifndef _SYS_SYSTM_H_ From owner-p4-projects@FreeBSD.ORG Sun Jul 9 21:56:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E11B116A4E8; Sun, 9 Jul 2006 21:56:19 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 A671816A4E0 for ; Sun, 9 Jul 2006 21:56:19 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4EE9B43D86 for ; Sun, 9 Jul 2006 21:56:11 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69LuBh3065661 for ; Sun, 9 Jul 2006 21:56:11 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69LuA9G065658 for perforce@freebsd.org; Sun, 9 Jul 2006 21:56:10 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sun, 9 Jul 2006 21:56:10 GMT Message-Id: <200607092156.k69LuA9G065658@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101169 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 21:56:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=101169 Change 101169 by wkoszek@wkoszek_laptop on 2006/07/09 21:55:17 Bring cpuregs.h from NetBSD. cognet@ mentioned about specialreg.h, but I'm not happy with it for now. I have small plan regarding header files for MIPS, but will discuss it later. Makefile.mips: - experimentally bring -D_LOCORE and -DLOCORE. cpufunc.h: - MIPS_SR_IE -> MIPS_SR_INT_IE due to the name change, which is caused by bringing 32 bit register specifications from NetBSD to cpuregs.h cpu.c: - enable mips_vector_install() and mips_vector_init(). Tree is unbuildable at this stage due to a problem with macros names, which concatated should give you valid function name. Alex agreed to work on this. Affected files ... .. //depot/projects/mips2/src/sys/conf/Makefile.mips#6 edit .. //depot/projects/mips2/src/sys/mips/include/cpufunc.h#13 edit .. //depot/projects/mips2/src/sys/mips/include/cpuregs.h#2 edit .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#6 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/Makefile.mips#6 (text+ko) ==== @@ -40,6 +40,7 @@ CFLAGS+=-fno-pic $(ARCH_FLAGS) SYSTEM_LD+= -Ttext 0x80100000 HACK_EXTRA_FLAGS+=-fno-pic $(ARCH_FLAGS) +ASM_FLAGS+=${CFLAGS} -D_LOCORE -DLOCORE .if defined(MIPS_LITTLE_ENDIAN) CFLAGS+=-EL ==== //depot/projects/mips2/src/sys/mips/include/cpufunc.h#13 (text+ko) ==== @@ -186,7 +186,7 @@ register_t s; s = mips_rd_status(); - mips_wr_status(s & ~MIPS_SR_IE); + mips_wr_status(s & ~MIPS_SR_INT_IE); return (s); } @@ -197,7 +197,7 @@ register_t s; s = mips_rd_status(); - mips_wr_status(s | MIPS_SR_IE); + mips_wr_status(s | MIPS_SR_INT_IE); return (s); } ==== //depot/projects/mips2/src/sys/mips/include/cpuregs.h#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: cpuregs.h,v 1.55 2002/07/26 00:43:54 simonb Exp $ */ +/* $NetBSD: cpuregs.h,v 1.70 2006/05/15 02:26:54 simonb Exp $ */ /* * Copyright (c) 1992, 1993 @@ -15,11 +15,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -61,6 +57,11 @@ #define _MIPS_CPUREGS_H_ #include /* For __CONCAT() */ + +#if defined(_KERNEL_OPT) +#include "opt_cputype.h" +#endif + /* * Address space. * 32-bit mips CPUS partition their 32-bit address space into four segments: @@ -77,36 +78,29 @@ #define MIPS_KUSEG_START 0x0 #define MIPS_KSEG0_START 0x80000000 -#define MIPS_KSEG0_END 0x9fffffff #define MIPS_KSEG1_START 0xa0000000 -#define MIPS_KSEG1_END 0xbfffffff #define MIPS_KSEG2_START 0xc0000000 #define MIPS_MAX_MEM_ADDR 0xbe000000 #define MIPS_RESERVED_ADDR 0xbfc80000 #define MIPS_PHYS_MASK 0x1fffffff -#define MIPS_KSEG0_TO_PHYS(x) ((vm_offset_t)(x) & MIPS_PHYS_MASK) -#define MIPS_PHYS_TO_KSEG0(x) ((vm_offset_t)(x) | MIPS_KSEG0_START) -#define MIPS_KSEG1_TO_PHYS(x) ((vm_offset_t)(x) & MIPS_PHYS_MASK) -#define MIPS_PHYS_TO_KSEG1(x) ((vm_offset_t)(x) | MIPS_KSEG1_START) +#define MIPS_KSEG0_TO_PHYS(x) ((unsigned)(x) & MIPS_PHYS_MASK) +#define MIPS_PHYS_TO_KSEG0(x) ((unsigned)(x) | MIPS_KSEG0_START) +#define MIPS_KSEG1_TO_PHYS(x) ((unsigned)(x) & MIPS_PHYS_MASK) +#define MIPS_PHYS_TO_KSEG1(x) ((unsigned)(x) | MIPS_KSEG1_START) + +/* Map virtual address to index in mips3 r4k virtually-indexed cache */ +#define MIPS3_VA_TO_CINDEX(x) \ + ((unsigned)(x) & 0xffffff | MIPS_KSEG0_START) #define MIPS_PHYS_TO_XKPHYS(cca,x) \ ((0x2ULL << 62) | ((unsigned long long)(cca) << 59) | (x)) #define MIPS_XKPHYS_TO_PHYS(x) ((x) & 0x0effffffffffffffULL) - /* Uncached */ -#define MIPS_XKPHYS_UC (2) - /* Cacheable noncoherent */ -#define MIPS_XKPHYS_CNC (3) - /* Cacheable coherent exclusive */ -#define MIPS_XKPHYS_CCE (4) - /* Cacheable coherent exclusive on write */ -#define MIPS_XKPHYS_CCEW (5) - /* Cacheable coherent update on write */ -#define MIPS_XKPHYS_CCUW (6) /* CPU dependent mtc0 hazard hook */ -#define COP0_SYNC /* nothing */ +#define COP0_SYNC /* nothing */ +#define COP0_HAZARD_FPUENABLE nop; nop; nop; nop; /* * The bits in the cause register. @@ -124,7 +118,8 @@ */ #define MIPS_CR_BR_DELAY 0x80000000 #define MIPS_CR_COP_ERR 0x30000000 -#define MIPS_CR_EXC_CODE 0x0000007C /* five bits */ +#define MIPS1_CR_EXC_CODE 0x0000003C /* four bits */ +#define MIPS3_CR_EXC_CODE 0x0000007C /* five bits */ #define MIPS_CR_IP 0x0000FF00 #define MIPS_CR_EXC_CODE_SHIFT 2 @@ -156,7 +151,10 @@ /* r4k and r3k differences, see below */ -#define MIPS_SR_INT_IE MIPS_SR_IE +#define MIPS_SR_INT_IE 0x00000001 +/*#define MIPS_SR_MBZ 0x0f8000c0*/ /* Never used, true for r3k */ +/*#define MIPS_SR_INT_MASK 0x0000ff00*/ + /* * The R2000/R3000-specific status register bit definitions. @@ -175,33 +173,78 @@ * MIPS_SR_KU_CUR Current kernel/user mode bit. 1 => user mode. */ +#define MIPS1_PARITY_ERR 0x00100000 +#define MIPS1_CACHE_MISS 0x00080000 +#define MIPS1_PARITY_ZERO 0x00040000 +#define MIPS1_SWAP_CACHES 0x00020000 +#define MIPS1_ISOL_CACHES 0x00010000 + +#define MIPS1_SR_KU_OLD 0x00000020 /* 2nd stacked KU/IE*/ +#define MIPS1_SR_INT_ENA_OLD 0x00000010 /* 2nd stacked KU/IE*/ +#define MIPS1_SR_KU_PREV 0x00000008 /* 1st stacked KU/IE*/ +#define MIPS1_SR_INT_ENA_PREV 0x00000004 /* 1st stacked KU/IE*/ +#define MIPS1_SR_KU_CUR 0x00000002 /* current KU */ + +/* backwards compatibility */ +#define MIPS_SR_PARITY_ERR MIPS1_PARITY_ERR +#define MIPS_SR_CACHE_MISS MIPS1_CACHE_MISS +#define MIPS_SR_PARITY_ZERO MIPS1_PARITY_ZERO +#define MIPS_SR_SWAP_CACHES MIPS1_SWAP_CACHES +#define MIPS_SR_ISOL_CACHES MIPS1_ISOL_CACHES + +#define MIPS_SR_KU_OLD MIPS1_SR_KU_OLD +#define MIPS_SR_INT_ENA_OLD MIPS1_SR_INT_ENA_OLD +#define MIPS_SR_KU_PREV MIPS1_SR_KU_PREV +#define MIPS_SR_KU_CUR MIPS1_SR_KU_CUR +#define MIPS_SR_INT_ENA_PREV MIPS1_SR_INT_ENA_PREV + /* * R4000 status register bit definitons, * where different from r2000/r3000. */ -#define MIPS_SR_XX 0x80000000 -#define MIPS_SR_RP 0x08000000 -#define MIPS_SR_FR_32 0x04000000 -#define MIPS_SR_RE 0x02000000 +#define MIPS3_SR_XX 0x80000000 +#define MIPS3_SR_RP 0x08000000 +#define MIPS3_SR_FR 0x04000000 +#define MIPS3_SR_RE 0x02000000 + +#define MIPS3_SR_DIAG_DL 0x01000000 /* QED 52xx */ +#define MIPS3_SR_DIAG_IL 0x00800000 /* QED 52xx */ +#define MIPS3_SR_SR 0x00100000 +#define MIPS3_SR_NMI 0x00080000 /* MIPS32/64 */ +#define MIPS3_SR_DIAG_CH 0x00040000 +#define MIPS3_SR_DIAG_CE 0x00020000 +#define MIPS3_SR_DIAG_PE 0x00010000 +#define MIPS3_SR_EIE 0x00010000 /* TX79/R5900 */ +#define MIPS3_SR_KX 0x00000080 +#define MIPS3_SR_SX 0x00000040 +#define MIPS3_SR_UX 0x00000020 +#define MIPS3_SR_KSU_MASK 0x00000018 +#define MIPS3_SR_KSU_USER 0x00000010 +#define MIPS3_SR_KSU_SUPER 0x00000008 +#define MIPS3_SR_KSU_KERNEL 0x00000000 +#define MIPS3_SR_ERL 0x00000004 +#define MIPS3_SR_EXL 0x00000002 + +#ifdef MIPS3_5900 +#undef MIPS_SR_INT_IE +#define MIPS_SR_INT_IE 0x00010001 /* XXX */ +#endif + +#define MIPS_SR_SOFT_RESET MIPS3_SR_SOFT_RESET +#define MIPS_SR_DIAG_CH MIPS3_SR_DIAG_CH +#define MIPS_SR_DIAG_CE MIPS3_SR_DIAG_CE +#define MIPS_SR_DIAG_PE MIPS3_SR_DIAG_PE +#define MIPS_SR_KX MIPS3_SR_KX +#define MIPS_SR_SX MIPS3_SR_SX +#define MIPS_SR_UX MIPS3_SR_UX + +#define MIPS_SR_KSU_MASK MIPS3_SR_KSU_MASK +#define MIPS_SR_KSU_USER MIPS3_SR_KSU_USER +#define MIPS_SR_KSU_SUPER MIPS3_SR_KSU_SUPER +#define MIPS_SR_KSU_KERNEL MIPS3_SR_KSU_KERNEL +#define MIPS_SR_ERL MIPS3_SR_ERL +#define MIPS_SR_EXL MIPS3_SR_EXL -#define MIPS_SR_DIAG_DL 0x01000000 /* QED 52xx */ -#define MIPS_SR_DIAG_IL 0x00800000 /* QED 52xx */ -#define MIPS_SR_SR 0x00100000 -#define MIPS_SR_EIE 0x00100000 /* TX79/R5900 */ -#define MIPS_SR_NMI 0x00080000 /* MIPS32/64 */ -#define MIPS_SR_DIAG_CH 0x00040000 -#define MIPS_SR_DIAG_CE 0x00020000 -#define MIPS_SR_DIAG_PE 0x00010000 -#define MIPS_SR_KX 0x00000080 -#define MIPS_SR_SX 0x00000040 -#define MIPS_SR_UX 0x00000020 -#define MIPS_SR_KSU_MASK 0x00000018 -#define MIPS_SR_KSU_USER 0x00000010 -#define MIPS_SR_KSU_SUPER 0x00000008 -#define MIPS_SR_KSU_KERNEL 0x00000000 -#define MIPS_SR_ERL 0x00000004 -#define MIPS_SR_EXL 0x00000002 -#define MIPS_SR_IE 0x00000001 /* * The interrupt masks. @@ -219,13 +262,25 @@ #define MIPS_SOFT_INT_MASK_0 0x0100 /* + * mips3 CPUs have on-chip timer at INT_MASK_5. Each platform can + * choose to enable this interrupt. + */ +#if defined(MIPS3_ENABLE_CLOCK_INTR) +#define MIPS3_INT_MASK MIPS_INT_MASK +#define MIPS3_HARD_INT_MASK MIPS_HARD_INT_MASK +#else +#define MIPS3_INT_MASK (MIPS_INT_MASK & ~MIPS_INT_MASK_5) +#define MIPS3_HARD_INT_MASK (MIPS_HARD_INT_MASK & ~MIPS_INT_MASK_5) +#endif + +/* * The bits in the context register. - * - * XXX XContext */ +#define MIPS1_CNTXT_PTE_BASE 0xFFE00000 +#define MIPS1_CNTXT_BAD_VPN 0x001FFFFC -#define MIPS_CNTXT_PTE_BASE 0xFF800000 -#define MIPS_CNTXT_BAD_VPN2 0x007FFFF0 +#define MIPS3_CNTXT_PTE_BASE 0xFF800000 +#define MIPS3_CNTXT_BAD_VPN2 0x007FFFF0 /* * The bits in the MIPS3 config register. @@ -233,93 +288,137 @@ * bit 0..5: R/W, Bit 6..31: R/O */ -/* kseg0 coherency algorithm - see MIPS_TLB_ATTR values */ -#define MIPS_CONFIG_K0_MASK 0x00000007 +/* kseg0 coherency algorithm - see MIPS3_TLB_ATTR values */ +#define MIPS3_CONFIG_K0_MASK 0x00000007 /* * R/W Update on Store Conditional * 0: Store Conditional uses coherency algorithm specified by TLB * 1: Store Conditional uses cacheable coherent update on write */ -#define MIPS_CONFIG_CU 0x00000008 +#define MIPS3_CONFIG_CU 0x00000008 -#define MIPS_CONFIG_DB 0x00000010 /* Primary D-cache line size */ -#define MIPS_CONFIG_IB 0x00000020 /* Primary I-cache line size */ -#define MIPS_CONFIG_CACHE_L1_LSIZE(config, bit) \ +#define MIPS3_CONFIG_DB 0x00000010 /* Primary D-cache line size */ +#define MIPS3_CONFIG_IB 0x00000020 /* Primary I-cache line size */ +#define MIPS3_CONFIG_CACHE_L1_LSIZE(config, bit) \ (((config) & (bit)) ? 32 : 16) -#define MIPS_CONFIG_DC_MASK 0x000001c0 /* Primary D-cache size */ -#define MIPS_CONFIG_DC_SHIFT 6 -#define MIPS_CONFIG_IC_MASK 0x00000e00 /* Primary I-cache size */ -#define MIPS_CONFIG_IC_SHIFT 9 -#define MIPS_CONFIG_C_DEFBASE 0x1000 /* default base 2^12 */ -#define MIPS_CONFIG_CACHE_SIZE(config, mask, base, shift) \ +#define MIPS3_CONFIG_DC_MASK 0x000001c0 /* Primary D-cache size */ +#define MIPS3_CONFIG_DC_SHIFT 6 +#define MIPS3_CONFIG_IC_MASK 0x00000e00 /* Primary I-cache size */ +#define MIPS3_CONFIG_IC_SHIFT 9 +#define MIPS3_CONFIG_C_DEFBASE 0x1000 /* default base 2^12 */ + +/* Cache size mode indication: available only on Vr41xx CPUs */ +#define MIPS3_CONFIG_CS 0x00001000 +#define MIPS3_CONFIG_C_4100BASE 0x0400 /* base is 2^10 if CS=1 */ +#define MIPS3_CONFIG_CACHE_SIZE(config, mask, base, shift) \ ((base) << (((config) & (mask)) >> (shift))) /* External cache enable: Controls L2 for R5000/Rm527x and L3 for Rm7000 */ -#define MIPS_CONFIG_SE 0x00001000 +#define MIPS3_CONFIG_SE 0x00001000 /* Block ordering: 0: sequential, 1: sub-block */ -#define MIPS_CONFIG_EB 0x00002000 +#define MIPS3_CONFIG_EB 0x00002000 /* ECC mode - 0: ECC mode, 1: parity mode */ -#define MIPS_CONFIG_EM 0x00004000 +#define MIPS3_CONFIG_EM 0x00004000 /* BigEndianMem - 0: kernel and memory are little endian, 1: big endian */ -#define MIPS_CONFIG_BE 0x00008000 +#define MIPS3_CONFIG_BE 0x00008000 /* Dirty Shared coherency state - 0: enabled, 1: disabled */ -#define MIPS_CONFIG_SM 0x00010000 +#define MIPS3_CONFIG_SM 0x00010000 /* Secondary Cache - 0: present, 1: not present */ -#define MIPS_CONFIG_SC 0x00020000 +#define MIPS3_CONFIG_SC 0x00020000 /* System Port width - 0: 64-bit, 1: 32-bit (QED RM523x), 2,3: reserved */ -#define MIPS_CONFIG_EW_MASK 0x000c0000 -#define MIPS_CONFIG_EW_SHIFT 18 +#define MIPS3_CONFIG_EW_MASK 0x000c0000 +#define MIPS3_CONFIG_EW_SHIFT 18 /* Secondary Cache port width - 0: 128-bit data path to S-cache, 1: reserved */ -#define MIPS_CONFIG_SW 0x00100000 +#define MIPS3_CONFIG_SW 0x00100000 /* Split Secondary Cache Mode - 0: I/D mixed, 1: I/D separated by SCAddr(17) */ -#define MIPS_CONFIG_SS 0x00200000 +#define MIPS3_CONFIG_SS 0x00200000 /* Secondary Cache line size */ -#define MIPS_CONFIG_SB_MASK 0x00c00000 -#define MIPS_CONFIG_SB_SHIFT 22 -#define MIPS_CONFIG_CACHE_L2_LSIZE(config) \ - (0x10 << (((config) & MIPS_CONFIG_SB_MASK) >> MIPS_CONFIG_SB_SHIFT)) +#define MIPS3_CONFIG_SB_MASK 0x00c00000 +#define MIPS3_CONFIG_SB_SHIFT 22 +#define MIPS3_CONFIG_CACHE_L2_LSIZE(config) \ + (0x10 << (((config) & MIPS3_CONFIG_SB_MASK) >> MIPS3_CONFIG_SB_SHIFT)) /* Write back data rate */ -#define MIPS_CONFIG_EP_MASK 0x0f000000 -#define MIPS_CONFIG_EP_SHIFT 24 +#define MIPS3_CONFIG_EP_MASK 0x0f000000 +#define MIPS3_CONFIG_EP_SHIFT 24 /* System clock ratio - this value is CPU dependent */ -#define MIPS_CONFIG_EC_MASK 0x70000000 -#define MIPS_CONFIG_EC_SHIFT 28 +#define MIPS3_CONFIG_EC_MASK 0x70000000 +#define MIPS3_CONFIG_EC_SHIFT 28 /* Master-Checker Mode - 1: enabled */ -#define MIPS_CONFIG_CM 0x80000000 +#define MIPS3_CONFIG_CM 0x80000000 + +/* + * The bits in the MIPS4 config register. + */ + +/* kseg0 coherency algorithm - see MIPS3_TLB_ATTR values */ +#define MIPS4_CONFIG_K0_MASK MIPS3_CONFIG_K0_MASK +#define MIPS4_CONFIG_DN_MASK 0x00000018 /* Device number */ +#define MIPS4_CONFIG_CT 0x00000020 /* CohPrcReqTar */ +#define MIPS4_CONFIG_PE 0x00000040 /* PreElmReq */ +#define MIPS4_CONFIG_PM_MASK 0x00000180 /* PreReqMax */ +#define MIPS4_CONFIG_EC_MASK 0x00001e00 /* SysClkDiv */ +#define MIPS4_CONFIG_SB 0x00002000 /* SCBlkSize */ +#define MIPS4_CONFIG_SK 0x00004000 /* SCColEn */ +#define MIPS4_CONFIG_BE 0x00008000 /* MemEnd */ +#define MIPS4_CONFIG_SS_MASK 0x00070000 /* SCSize */ +#define MIPS4_CONFIG_SC_MASK 0x00380000 /* SCClkDiv */ +#define MIPS4_CONFIG_RESERVED 0x03c00000 /* Reserved wired 0 */ +#define MIPS4_CONFIG_DC_MASK 0x1c000000 /* Primary D-Cache size */ +#define MIPS4_CONFIG_IC_MASK 0xe0000000 /* Primary I-Cache size */ + +#define MIPS4_CONFIG_DC_SHIFT 26 +#define MIPS4_CONFIG_IC_SHIFT 29 + +#define MIPS4_CONFIG_CACHE_SIZE(config, mask, base, shift) \ + ((base) << (((config) & (mask)) >> (shift))) + +#define MIPS4_CONFIG_CACHE_L2_LSIZE(config) \ + (((config) & MIPS4_CONFIG_SB) ? 128 : 64) /* * Location of exception vectors. * * Common vectors: reset and UTLB miss. */ -#define MIPS_RESET_EXC_VEC 0xFFFFFFFFBFC00000 -#define MIPS_UTLB_MISS_EXC_VEC 0xFFFFFFFF80000000 +#define MIPS_RESET_EXC_VEC 0xBFC00000 +#define MIPS_UTLB_MISS_EXC_VEC 0x80000000 + +/* + * MIPS-1 general exception vector (everything else) + */ +#define MIPS1_GEN_EXC_VEC 0x80000080 /* * MIPS-III exception vectors */ -#define MIPS_XTLB_MISS_EXC_VEC 0xFFFFFFFF80000080 -#define MIPS_CACHE_ERR_EXC_VEC 0xFFFFFFFF80000100 -#define MIPS_GEN_EXC_VEC 0xFFFFFFFF80000180 +#define MIPS3_XTLB_MISS_EXC_VEC 0x80000080 +#define MIPS3_CACHE_ERR_EXC_VEC 0x80000100 +#define MIPS3_GEN_EXC_VEC 0x80000180 + +/* + * TX79 (R5900) exception vectors + */ +#define MIPS_R5900_COUNTER_EXC_VEC 0x80000080 +#define MIPS_R5900_DEBUG_EXC_VEC 0x80000100 /* * MIPS32/MIPS64 (and some MIPS3) dedicated interrupt vector. */ -#define MIPS_INTR_EXC_VEC 0xFFFFFFFF80000200 +#define MIPS3_INTR_EXC_VEC 0x80000200 /* * Coprocessor 0 registers: @@ -366,11 +465,17 @@ * 30 MIPS_COP_0_ERROR_PC .636 Error EPC register. * 31 MIPS_COP_0_DESAVE .... DESAVE JTAG register. */ -#ifdef LOCORE + +/* + * XXMIPS: Does LOCORE defines buy us something? Check which one is it. + */ +#if defined(_LOCORE) || defined(LOCORE) #define _(n) $n #else #define _(n) n #endif + + #define MIPS_COP_0_TLB_INDEX _(0) #define MIPS_COP_0_TLB_RANDOM _(1) /* Name and meaning of TLB bits for $2 differ on r3k and r4k. */ @@ -379,8 +484,6 @@ /* $5 and $6 new with MIPS-III */ #define MIPS_COP_0_BAD_VADDR _(8) #define MIPS_COP_0_TLB_HI _(10) -#define MIPS_COP_0_STATUS_REG _(12) -#define MIPS_COP_0_CAUSE_REG _(13) #define MIPS_COP_0_STATUS _(12) #define MIPS_COP_0_CAUSE _(13) #define MIPS_COP_0_EXC_PC _(14) @@ -443,13 +546,13 @@ */ #define MIPS_MIN_CACHE_SIZE (16 * 1024) #define MIPS_MAX_CACHE_SIZE (256 * 1024) -#define MIPS_MAX_PCACHE_SIZE (32 * 1024) /* max. primary cache size */ +#define MIPS3_MAX_PCACHE_SIZE (32 * 1024) /* max. primary cache size */ /* * The floating point version and status registers. */ -#define MIPS_FPU_ID _(0) -#define MIPS_FPU_CSR _(31) +#define MIPS_FPU_ID $0 +#define MIPS_FPU_CSR $31 /* * The floating point coprocessor status register bits. @@ -480,7 +583,8 @@ #define MIPS_FPU_EXCEPTION_UNIMPL 0x00020000 #define MIPS_FPU_COND_BIT 0x00800000 #define MIPS_FPU_FLUSH_BIT 0x01000000 /* r4k, MBZ on r3k */ -#define MIPS_FPC_MBZ_BITS 0xfe7c0000 +#define MIPS1_FPC_MBZ_BITS 0xff7c0000 +#define MIPS3_FPC_MBZ_BITS 0xfe7c0000 /* @@ -489,11 +593,109 @@ #define MIPS_OPCODE_SHIFT 26 #define MIPS_OPCODE_C1 0x11 + /* + * The low part of the TLB entry. + */ +#define MIPS1_TLB_PFN 0xfffff000 +#define MIPS1_TLB_NON_CACHEABLE_BIT 0x00000800 +#define MIPS1_TLB_DIRTY_BIT 0x00000400 +#define MIPS1_TLB_VALID_BIT 0x00000200 +#define MIPS1_TLB_GLOBAL_BIT 0x00000100 + +#define MIPS3_TLB_PFN 0x3fffffc0 +#define MIPS3_TLB_ATTR_MASK 0x00000038 +#define MIPS3_TLB_ATTR_SHIFT 3 +#define MIPS3_TLB_DIRTY_BIT 0x00000004 +#define MIPS3_TLB_VALID_BIT 0x00000002 +#define MIPS3_TLB_GLOBAL_BIT 0x00000001 + +#define MIPS1_TLB_PHYS_PAGE_SHIFT 12 +#define MIPS3_TLB_PHYS_PAGE_SHIFT 6 +#define MIPS1_TLB_PF_NUM MIPS1_TLB_PFN +#define MIPS3_TLB_PF_NUM MIPS3_TLB_PFN +#define MIPS1_TLB_MOD_BIT MIPS1_TLB_DIRTY_BIT +#define MIPS3_TLB_MOD_BIT MIPS3_TLB_DIRTY_BIT + +/* + * MIPS3_TLB_ATTR values - coherency algorithm: + * 0: cacheable, noncoherent, write-through, no write allocate + * 1: cacheable, noncoherent, write-through, write allocate + * 2: uncached + * 3: cacheable, noncoherent, write-back (noncoherent) + * 4: cacheable, coherent, write-back, exclusive (exclusive) + * 5: cacheable, coherent, write-back, exclusive on write (sharable) + * 6: cacheable, coherent, write-back, update on write (update) + * 7: uncached, accelerated (gather STORE operations) + */ +#define MIPS3_TLB_ATTR_WT 0 /* IDT */ +#define MIPS3_TLB_ATTR_WT_WRITEALLOCATE 1 /* IDT */ +#define MIPS3_TLB_ATTR_UNCACHED 2 /* R4000/R4400, IDT */ +#define MIPS3_TLB_ATTR_WB_NONCOHERENT 3 /* R4000/R4400, IDT */ +#define MIPS3_TLB_ATTR_WB_EXCLUSIVE 4 /* R4000/R4400 */ +#define MIPS3_TLB_ATTR_WB_SHARABLE 5 /* R4000/R4400 */ +#define MIPS3_TLB_ATTR_WB_UPDATE 6 /* R4000/R4400 */ +#define MIPS4_TLB_ATTR_UNCACHED_ACCELERATED 7 /* R10000 */ + + +/* + * The high part of the TLB entry. + */ +#define MIPS1_TLB_VPN 0xfffff000 +#define MIPS1_TLB_PID 0x00000fc0 +#define MIPS1_TLB_PID_SHIFT 6 + +#define MIPS3_TLB_VPN2 0xffffe000 +#define MIPS3_TLB_ASID 0x000000ff + +#define MIPS1_TLB_VIRT_PAGE_NUM MIPS1_TLB_VPN +#define MIPS3_TLB_VIRT_PAGE_NUM MIPS3_TLB_VPN2 +#define MIPS3_TLB_PID MIPS3_TLB_ASID +#define MIPS_TLB_VIRT_PAGE_SHIFT 12 + +/* + * r3000: shift count to put the index in the right spot. + */ +#define MIPS1_TLB_INDEX_SHIFT 8 + +/* + * The first TLB that write random hits. + */ +#define MIPS1_TLB_FIRST_RAND_ENTRY 8 +#define MIPS3_TLB_WIRED_UPAGES 1 + +/* * The number of process id entries. */ -#define MIPS_TLB_NUM_ASIDS 256 +#define MIPS1_TLB_NUM_PIDS 64 +#define MIPS3_TLB_NUM_ASIDS 256 + +/* + * Patch codes to hide CPU design differences between MIPS1 and MIPS3. + */ + +/* XXX simonb: this is before MIPS3_PLUS is defined (and is ugly!) */ + +#if !(defined(MIPS3) || defined(MIPS4) || defined(MIPS32) || defined(MIPS64)) \ + && defined(MIPS1) /* XXX simonb must be neater! */ +#define MIPS_TLB_PID_SHIFT MIPS1_TLB_PID_SHIFT +#define MIPS_TLB_NUM_PIDS MIPS1_TLB_NUM_PIDS +#endif + +#if (defined(MIPS3) || defined(MIPS4) || defined(MIPS32) || defined(MIPS64)) \ + && !defined(MIPS1) /* XXX simonb must be neater! */ #define MIPS_TLB_PID_SHIFT 0 +#define MIPS_TLB_NUM_PIDS MIPS3_TLB_NUM_ASIDS +#endif + + +#if !defined(MIPS_TLB_PID_SHIFT) +#define MIPS_TLB_PID_SHIFT \ + ((MIPS_HAS_R4K_MMU) ? 0 : MIPS1_TLB_PID_SHIFT) + +#define MIPS_TLB_NUM_PIDS \ + ((MIPS_HAS_R4K_MMU) ? MIPS3_TLB_NUM_ASIDS : MIPS1_TLB_NUM_PIDS) +#endif /* * CPU processor revision IDs for company ID == 0 (non mips32/64 chips) @@ -526,7 +728,9 @@ #define MIPS_TX4900 0x2d /* Toshiba TX49 family ISA III */ #define MIPS_R5900 0x2e /* Toshiba R5900 (EECore) ISA --- */ #define MIPS_RC64470 0x30 /* IDT RC64474/RC64475 ISA III */ +#define MIPS_TX7900 0x38 /* Toshiba TX79 ISA III+*/ #define MIPS_R5400 0x54 /* NEC VR5400 ISA IV */ +#define MIPS_R5500 0x55 /* NEC VR5500 ISA IV */ /* * CPU revision IDs for some prehistoric processors. @@ -543,7 +747,8 @@ /* For MIPS_R4000 */ #define MIPS_REV_R4000_A 0x00 -#define MIPS_REV_R4000_B 0x30 +#define MIPS_REV_R4000_B 0x22 +#define MIPS_REV_R4000_C 0x30 #define MIPS_REV_R4400_A 0x40 #define MIPS_REV_R4400_B 0x50 #define MIPS_REV_R4400_C 0x60 @@ -557,8 +762,16 @@ #define MIPS_4Kc 0x80 /* MIPS 4Kc ISA 32 */ #define MIPS_5Kc 0x81 /* MIPS 5Kc ISA 64 */ #define MIPS_20Kc 0x82 /* MIPS 20Kc ISA 64 */ +#define MIPS_4Kmp 0x83 /* MIPS 4Km/4Kp ISA 32 */ #define MIPS_4KEc 0x84 /* MIPS 4KEc ISA 32 */ +#define MIPS_4KEmp 0x85 /* MIPS 4KEm/4KEp ISA 32 */ #define MIPS_4KSc 0x86 /* MIPS 4KSc ISA 32 */ +#define MIPS_M4K 0x87 /* MIPS M4K ISA 32 Rel 2 */ +#define MIPS_25Kf 0x88 /* MIPS 25Kf ISA 64 */ +#define MIPS_5KE 0x89 /* MIPS 5KE ISA 64 Rel 2 */ +#define MIPS_4KEc_R2 0x90 /* MIPS 4KEc_R2 ISA 32 Rel 2 */ +#define MIPS_4KEmp_R2 0x91 /* MIPS 4KEm/4KEp_R2 ISA 32 Rel 2 */ +#define MIPS_4KSd 0x92 /* MIPS 4KSd ISA 32 Rel 2 */ /* * Alchemy (company ID 3) use the processor ID field to donote the CPU core @@ -571,6 +784,7 @@ #define MIPS_AU1000 0x00 #define MIPS_AU1500 0x01 #define MIPS_AU1100 0x02 +#define MIPS_AU1550 0x03 /* * CPU processor revision IDs for company ID == 4 (SiByte) @@ -594,4 +808,14 @@ #define MIPS_R31LSI 0x06 /* LSI Logic derivate ISA I */ #define MIPS_R3TOSH 0x22 /* Toshiba R3000 based FPU ISA I */ +#ifdef ENABLE_MIPS_TX3900 +#include +#endif +#ifdef MIPS3_5900 +#include +#endif +#ifdef MIPS64_SB1 +#include +#endif + #endif /* _MIPS_CPUREGS_H_ */ ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#6 (text+ko) ==== @@ -65,7 +65,6 @@ * XXMIPS: Check format strings. * Uncomment this one once VECI macro defined below is uncommented. */ -#if 0 static void mips_vector_install(vm_offset_t addr, char *begin, char *end) { @@ -82,7 +81,6 @@ (intmax_t) addr); memcpy((void *)addr, begin, len); } -#endif /* * XXMIPS: Those declares external addresses of exception handlers to be used. Take a @@ -125,12 +123,12 @@ static void mips_vector_init(void) { -#if 0 + VECI(UTLB_MISS, TLBMiss); VECI(XTLB_MISS, XTLBMiss); VECI(CACHE_ERR, Cache); VECI(GEN, Exception); -#endif + mips_wr_status(mips_rd_status() & ~MIPS_SR_BEV); } From owner-p4-projects@FreeBSD.ORG Sun Jul 9 22:03:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 52B0816A4E1; Sun, 9 Jul 2006 22:03:22 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 16C1D16A4DF for ; Sun, 9 Jul 2006 22:03:22 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9496D43D72 for ; Sun, 9 Jul 2006 22:03:21 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k69M3LAr067263 for ; Sun, 9 Jul 2006 22:03:21 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k69M3LgI067260 for perforce@freebsd.org; Sun, 9 Jul 2006 22:03:21 GMT (envelope-from wkoszek@FreeBSD.org) Date: Sun, 9 Jul 2006 22:03:21 GMT Message-Id: <200607092203.k69M3LgI067260@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101171 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jul 2006 22:03:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=101171 Change 101171 by wkoszek@wkoszek_laptop on 2006/07/09 22:03:12 Remove MIPS_SR_SR, as we don't have this one in NetBSD's cpuregs.h. I tried to find a replacement, and came up with a MIPS_SR_SOFT_RESET. Unfortunately, even on NetBSD it's defined to something like: #define MIPS_SR_SOFT_RESET Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/locore.S#8 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#8 (text+ko) ==== @@ -48,7 +48,16 @@ * Soft reset * Boot exception vectors (firmware-provided) */ - li t0, MIPS_SR_BEV | MIPS_SR_SR +/* + * XXXMIPS: I get absolute expression required `li' with this below. + * Probably because cpuregs.h from NetBSD defines MIPS_SR_SOFT_RESET as + * another macro which is not defined. + */ +#if 0 + li t0, (MIPS_SR_BEV | MIPS_SR_SOFT_RESET) +#endif + li t0, MIPS_SR_BEV + /* * t1: Bits to set explicitly: * Kernel mode is 64-bit @@ -58,7 +67,7 @@ * XXXMIPS: look at this. I think "Kernel mode is 64-bit" == MIPS_SR_KX, so * it's probably worth to remove it soon. */ - #if 0 +#if 0 li t1, MIPS_SR_KX | MIPS_SR_COP_1_BIT #endif li t1, MIPS_SR_COP_1_BIT From owner-p4-projects@FreeBSD.ORG Mon Jul 10 07:27:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 648DB16A4E0; Mon, 10 Jul 2006 07:27:59 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 41A0C16A4DD for ; Mon, 10 Jul 2006 07:27:59 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EC12D43D46 for ; Mon, 10 Jul 2006 07:27:58 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6A7Rwxd029861 for ; Mon, 10 Jul 2006 07:27:58 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6A7Rw8C029858 for perforce@freebsd.org; Mon, 10 Jul 2006 07:27:58 GMT (envelope-from imp@freebsd.org) Date: Mon, 10 Jul 2006 07:27:58 GMT Message-Id: <200607100727.k6A7Rw8C029858@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101184 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 07:27:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=101184 Change 101184 by imp@imp_lighthouse on 2006/07/10 07:27:13 nit Affected files ... .. //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#35 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#35 (text+ko) ==== @@ -351,7 +351,7 @@ goto errout; err = bus_dmamap_create(atsc->dmatag, 0, &atsc->tx_map); if (err != 0) - goto errout; + goto errout; if (atsc->flags & HAS_TIMEOUT) { for (i = 0; i < 2; i++) { err = bus_dmamap_create(atsc->dmatag, 0, From owner-p4-projects@FreeBSD.ORG Mon Jul 10 07:57:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D78FE16A4E2; Mon, 10 Jul 2006 07:57:36 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 B1CC816A4E0 for ; Mon, 10 Jul 2006 07:57:36 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 40BDB43D5A for ; Mon, 10 Jul 2006 07:57:36 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6A7vap6031262 for ; Mon, 10 Jul 2006 07:57:36 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6A7vaSI031259 for perforce@freebsd.org; Mon, 10 Jul 2006 07:57:36 GMT (envelope-from imp@freebsd.org) Date: Mon, 10 Jul 2006 07:57:36 GMT Message-Id: <200607100757.k6A7vaSI031259@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101185 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 07:57:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=101185 Change 101185 by imp@imp_lighthouse on 2006/07/10 07:57:06 commentary update Affected files ... .. //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#36 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#36 (text+ko) ==== @@ -328,8 +328,10 @@ atsc = (struct at91_usart_softc *)sc; /* - * See if we have a TIMEOUT bit. We disable all interrupts to - * minimize interference. + * See if we have a TIMEOUT bit. We disable all interrupts as + * a side effect. Boot loaders may have enabled them. Since + * a TIMEOUT interrupt can't happen without other setup, the + * apparent race here can't actually happen. */ WR4(&sc->sc_bas, USART_IDR, 0xffffffff); WR4(&sc->sc_bas, USART_IER, USART_CSR_TIMEOUT); From owner-p4-projects@FreeBSD.ORG Mon Jul 10 07:59:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7085816A4E1; Mon, 10 Jul 2006 07:59:45 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 24BF216A4DF for ; Mon, 10 Jul 2006 07:59:45 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0B44843D73 for ; Mon, 10 Jul 2006 07:59:40 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6A7xdCX031321 for ; Mon, 10 Jul 2006 07:59:39 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6A7xdGZ031318 for perforce@freebsd.org; Mon, 10 Jul 2006 07:59:39 GMT (envelope-from imp@freebsd.org) Date: Mon, 10 Jul 2006 07:59:39 GMT Message-Id: <200607100759.k6A7xdGZ031318@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101186 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 07:59:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=101186 Change 101186 by imp@imp_lighthouse on 2006/07/10 07:59:33 Implement transfer using busdma goo Note 1: Turns out that atmel is going to have a AVR32 processor that I think freebsd could run on (it has MMU) and which reuses the devices from AT91 families. Note 2: I need to add interlocks to preclude multiple transactions outstanding at the same time. I may need to hack the transfer spi interface to allow for queueing and waiting to be decoupled. Note 3: Shouldn't busy poll, but since this is just for SPI update, performance doesn't matter. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_spi.c#6 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_spi.c#6 (text+ko) ==== @@ -51,6 +51,8 @@ struct resource *irq_res; /* IRQ resource */ struct resource *mem_res; /* Memory resource */ struct mtx sc_mtx; /* basically a perimeter lock */ + bus_dma_tag_t dmatag; /* bus dma tag for mbufs */ + bus_dmamap_t map[4]; /* Maps for the transaction */ }; static inline uint32_t @@ -97,7 +99,7 @@ at91_spi_attach(device_t dev) { struct at91_spi_softc *sc = device_get_softc(dev); - int err; + int err, i; sc->dev = dev; err = at91_spi_activate(dev); @@ -106,6 +108,20 @@ AT91_SPI_LOCK_INIT(sc); + /* + * Allocate DMA tags and maps + */ + err = bus_dma_tag_create(NULL, 1, 0, BUS_SPACE_MAXADDR_32BIT, + BUS_SPACE_MAXADDR, NULL, NULL, 2058, 1, 2048, BUS_DMA_ALLOCNOW, + NULL, NULL, &sc->dmatag); + if (err != 0) + goto out; + for (i = 0; i < 4; i++) { + err = bus_dmamap_create(sc->dmatag, 0, &sc->map[i]); + if (err != 0) + goto out; + } + // reset the SPI WR4(sc, SPI_CR, SPI_CR_SWRST); @@ -188,31 +204,71 @@ return; } +static void +at91_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error) +{ + if (error != 0) + return; + *(bus_addr_t *)arg = segs[0].ds_addr; +} + static int at91_spi_transfer(device_t dev, device_t child, struct spi_command *cmd) { struct at91_spi_softc *sc; + int i; + bus_addr_t addr; sc = device_get_softc(dev); WR4(sc, PDC_PTCR, PDC_PTCR_TXTDIS | PDC_PTCR_RXTDIS); -#if 0 - // XXX setup busdma - pSPI->SPI_RPR = (unsigned)pCommand->rx_cmd; - pSPI->SPI_RCR = pCommand->rx_cmd_size; - pSPI->SPI_TPR = (unsigned)pCommand->tx_cmd; - pSPI->SPI_TCR = pCommand->tx_cmd_size; + i = 0; + if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->tx_cmd, + cmd->tx_cmd_sz, at91_getaddr, &addr, 0) != 0) + goto out; + WR4(sc, PDC_TPR, addr); + WR4(sc, PDC_TCR, cmd->tx_cmd_sz); + bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREWRITE); + i++; + if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->tx_data, + cmd->tx_data_sz, at91_getaddr, &addr, 0) != 0) + goto out; + WR4(sc, PDC_TNPR, addr); + WR4(sc, PDC_TNCR, cmd->tx_cmd_sz); + bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREWRITE); + i++; + if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->rx_cmd, + cmd->tx_cmd_sz, at91_getaddr, &addr, 0) != 0) + goto out; + WR4(sc, PDC_RPR, addr); + WR4(sc, PDC_RCR, cmd->tx_cmd_sz); + bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREREAD); + i++; + if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->rx_data, + cmd->tx_data_sz, at91_getaddr, &addr, 0) != 0) + goto out; + WR4(sc, PDC_RNPR, addr); + WR4(sc, PDC_RNCR, cmd->tx_data_sz); + bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREREAD); - pSPI->SPI_TNPR = (unsigned)pCommand->tx_data; - pSPI->SPI_TNCR = pCommand->tx_data_size; - pSPI->SPI_RNPR = (unsigned)pCommand->rx_data; - pSPI->SPI_RNCR = pCommand->rx_data_size; -#endif WR4(sc, PDC_PTCR, PDC_PTCR_TXTEN | PDC_PTCR_RXTEN); // wait for completion + // XXX should be done as an ISR of some sort. while (RD4(sc, SPI_SR) & SPI_SR_ENDRX) DELAY(700); + + // Sync the buffers after the DMA is done, and unload them. + bus_dmamap_sync(sc->dmatag, sc->map[0], BUS_DMASYNC_POSTWRITE); + bus_dmamap_sync(sc->dmatag, sc->map[1], BUS_DMASYNC_POSTWRITE); + bus_dmamap_sync(sc->dmatag, sc->map[2], BUS_DMASYNC_POSTREAD); + bus_dmamap_sync(sc->dmatag, sc->map[3], BUS_DMASYNC_POSTREAD); + for (i = 0; i < 4; i++) + bus_dmamap_unload(sc->dmatag, sc->map[i]); return (0); +out:; + while (i-- > 0) + bus_dmamap_unload(sc->dmatag, sc->map[i]); + return (EIO); } static device_method_t at91_spi_methods[] = { From owner-p4-projects@FreeBSD.ORG Mon Jul 10 08:25:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C575A16A4E1; Mon, 10 Jul 2006 08:25:12 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 90F3F16A4DD for ; Mon, 10 Jul 2006 08:25:12 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 412CC43D45 for ; Mon, 10 Jul 2006 08:25:12 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6A8PCL8033698 for ; Mon, 10 Jul 2006 08:25:12 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6A8PBVb033695 for perforce@freebsd.org; Mon, 10 Jul 2006 08:25:11 GMT (envelope-from jb@freebsd.org) Date: Mon, 10 Jul 2006 08:25:11 GMT Message-Id: <200607100825.k6A8PBVb033695@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101188 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 08:25:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=101188 Change 101188 by jb@jb_freebsd2 on 2006/07/10 08:24:15 When all else fails, use libc_r, but to do that you need to make the jump table match libc. I know libc_r isn't built in current any more, but something as simple as this should be kept up-to-date or it should be moved to the attic. Affected files ... .. //depot/projects/dtrace/src/lib/libc_r/uthread/uthread_init.c#3 edit Differences ... ==== //depot/projects/dtrace/src/lib/libc_r/uthread/uthread_init.c#3 (text+ko) ==== @@ -159,16 +159,47 @@ (pthread_func_t)entry, (pthread_func_t)entry static pthread_func_t jmp_table[][2] = { + {DUAL_ENTRY(_pthread_atfork)}, /* PJT_ATFORK */ + {DUAL_ENTRY(_pthread_attr_destroy)}, /* PJT_ATTR_DESTROY */ + {DUAL_ENTRY(_pthread_attr_getdetachstate)}, /* PJT_ATTR_GETDETACHSTATE */ + {DUAL_ENTRY(_pthread_attr_getguardsize)}, /* PJT_ATTR_GETGUARDSIZE */ + {DUAL_ENTRY(_pthread_attr_getinheritsched)}, /* PJT_ATTR_GETINHERITSCHED */ + {DUAL_ENTRY(_pthread_attr_getschedparam)}, /* PJT_ATTR_GETSCHEDPARAM */ + {DUAL_ENTRY(_pthread_attr_getschedpolicy)}, /* PJT_ATTR_GETSCHEDPOLICY */ + {DUAL_ENTRY(_pthread_attr_getscope)}, /* PJT_ATTR_GETSCOPE */ + {DUAL_ENTRY(_pthread_attr_getstackaddr)}, /* PJT_ATTR_GETSTACKADDR */ + {DUAL_ENTRY(_pthread_attr_getstacksize)}, /* PJT_ATTR_GETSTACKSIZE */ + {DUAL_ENTRY(_pthread_attr_init)}, /* PJT_ATTR_INIT */ + {DUAL_ENTRY(_pthread_attr_setdetachstate)}, /* PJT_ATTR_SETDETACHSTATE */ + {DUAL_ENTRY(_pthread_attr_setguardsize)}, /* PJT_ATTR_SETGUARDSIZE */ + {DUAL_ENTRY(_pthread_attr_setinheritsched)}, /* PJT_ATTR_SETINHERITSCHED */ + {DUAL_ENTRY(_pthread_attr_setschedparam)}, /* PJT_ATTR_SETSCHEDPARAM */ + {DUAL_ENTRY(_pthread_attr_setschedpolicy)}, /* PJT_ATTR_SETSCHEDPOLICY */ + {DUAL_ENTRY(_pthread_attr_setscope)}, /* PJT_ATTR_SETSCOPE */ + {DUAL_ENTRY(_pthread_attr_setstackaddr)}, /* PJT_ATTR_SETSTACKADDR */ + {DUAL_ENTRY(_pthread_attr_setstacksize)}, /* PJT_ATTR_SETSTACKSIZE */ + {DUAL_ENTRY(_pthread_cancel)}, /* PJT_CANCEL */ + {DUAL_ENTRY(_pthread_cleanup_pop)}, /* PJT_CLEANUP_POP */ + {DUAL_ENTRY(_pthread_cleanup_push)}, /* PJT_CLEANUP_PUSH */ {DUAL_ENTRY(_pthread_cond_broadcast)}, /* PJT_COND_BROADCAST */ {DUAL_ENTRY(_pthread_cond_destroy)}, /* PJT_COND_DESTROY */ {DUAL_ENTRY(_pthread_cond_init)}, /* PJT_COND_INIT */ {DUAL_ENTRY(_pthread_cond_signal)}, /* PJT_COND_SIGNAL */ + {DUAL_ENTRY(_pthread_cond_timedwait)}, /* PJT_COND_TIMEDWAIT */ {(pthread_func_t)__pthread_cond_wait, (pthread_func_t)_pthread_cond_wait}, /* PJT_COND_WAIT */ + {DUAL_ENTRY(_pthread_detach)}, /* PJT_DETACH */ + {DUAL_ENTRY(_pthread_equal)}, /* PJT_EQUAL */ + {DUAL_ENTRY(_pthread_exit)}, /* PJT_EXIT */ {DUAL_ENTRY(_pthread_getspecific)}, /* PJT_GETSPECIFIC */ + {DUAL_ENTRY(_pthread_join)}, /* PJT_JOIN */ {DUAL_ENTRY(_pthread_key_create)}, /* PJT_KEY_CREATE */ {DUAL_ENTRY(_pthread_key_delete)}, /* PJT_KEY_DELETE*/ + {DUAL_ENTRY(_pthread_kill)}, /* PJT_KILL */ {DUAL_ENTRY(_pthread_main_np)}, /* PJT_MAIN_NP */ + {DUAL_ENTRY(_pthread_mutexattr_destroy)}, /* PJT_MUTEXATTR_DESTROY */ + {DUAL_ENTRY(_pthread_mutexattr_init)}, /* PJT_MUTEXATTR_INIT */ + {DUAL_ENTRY(_pthread_mutexattr_settype)}, /* PJT_MUTEXATTR_SETTYPE */ {DUAL_ENTRY(_pthread_mutex_destroy)}, /* PJT_MUTEX_DESTROY */ {DUAL_ENTRY(_pthread_mutex_init)}, /* PJT_MUTEX_INIT */ {(pthread_func_t)__pthread_mutex_lock, @@ -176,9 +207,6 @@ {(pthread_func_t)__pthread_mutex_trylock, (pthread_func_t)_pthread_mutex_trylock},/* PJT_MUTEX_TRYLOCK */ {DUAL_ENTRY(_pthread_mutex_unlock)}, /* PJT_MUTEX_UNLOCK */ - {DUAL_ENTRY(_pthread_mutexattr_destroy)}, /* PJT_MUTEXATTR_DESTROY */ - {DUAL_ENTRY(_pthread_mutexattr_init)}, /* PJT_MUTEXATTR_INIT */ - {DUAL_ENTRY(_pthread_mutexattr_settype)}, /* PJT_MUTEXATTR_SETTYPE */ {DUAL_ENTRY(_pthread_once)}, /* PJT_ONCE */ {DUAL_ENTRY(_pthread_rwlock_destroy)}, /* PJT_RWLOCK_DESTROY */ {DUAL_ENTRY(_pthread_rwlock_init)}, /* PJT_RWLOCK_INIT */ @@ -188,8 +216,11 @@ {DUAL_ENTRY(_pthread_rwlock_unlock)}, /* PJT_RWLOCK_UNLOCK */ {DUAL_ENTRY(_pthread_rwlock_wrlock)}, /* PJT_RWLOCK_WRLOCK */ {DUAL_ENTRY(_pthread_self)}, /* PJT_SELF */ + {DUAL_ENTRY(_pthread_setcancelstate)}, /* PJT_SETCANCELSTATE */ + {DUAL_ENTRY(_pthread_setcanceltype)}, /* PJT_SETCANCELTYPE */ {DUAL_ENTRY(_pthread_setspecific)}, /* PJT_SETSPECIFIC */ - {DUAL_ENTRY(_pthread_sigmask)} /* PJT_SIGMASK */ + {DUAL_ENTRY(_pthread_sigmask)}, /* PJT_SIGMASK */ + {DUAL_ENTRY(_pthread_testcancel)} /* PJT_TESTCANCEL */ }; int _pthread_guard_default; From owner-p4-projects@FreeBSD.ORG Mon Jul 10 11:23:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E458E16A4DE; Mon, 10 Jul 2006 11:23:56 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B56F116A4DA for ; Mon, 10 Jul 2006 11:23:56 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 63A5D43D49 for ; Mon, 10 Jul 2006 11:23:56 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ABNurX057471 for ; Mon, 10 Jul 2006 11:23:56 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ABNus9057468 for perforce@freebsd.org; Mon, 10 Jul 2006 11:23:56 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 10 Jul 2006 11:23:56 GMT Message-Id: <200607101123.k6ABNus9057468@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101192 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 11:23:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=101192 Change 101192 by gonzo@gonzo_hq on 2006/07/10 11:23:11 o Register names tweaked to conform juli@'s code: - AT register presented - a[0-7]/t[0-7] names shifted to conform new ABI - at[0-3] names presented for overlapped part of a/t registers. - END directive fixed Affected files ... .. //depot/projects/mips2/src/sys/mips/include/asm.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/asm.h#3 (text+ko) ==== @@ -56,21 +56,21 @@ */ #define zero $0 /* wired zero */ -#define at_reg $1 /* (T) assembler scratch */ +#define AT $1 /* (T) assembler scratch */ #define v0 $2 #define v1 $3 #define a0 $4 /* (T) argument registers */ #define a1 $5 #define a2 $6 #define a3 $7 -#define t0 $8 /* (T) temporary registers */ -#define t1 $9 -#define t2 $10 -#define t3 $11 -#define t4 $12 -#define t5 $13 -#define t6 $14 -#define t7 $15 +#define a4 $8 /* (T) temporary registers */ +#define a5 $9 +#define a6 $10 +#define a7 $11 +#define t0 $12 +#define t1 $13 +#define t2 $14 +#define t3 $15 #define s0 $16 /* (S) call-safe registers */ #define s1 $17 #define s2 $18 @@ -81,13 +81,27 @@ #define s7 $23 #define t8 $24 /* (T) temporary registers */ #define t9 $25 /* Address of callee in PIC code */ -#define kt0 $26 /* Kernel registers? */ -#define kt1 $27 +#define k0 $26 /* Kernel registers? */ +#define k1 $27 #define gp $28 /* (T) (local) data pointer */ #define sp $29 /* (S) stack pointer */ #define s8 $30 /* (S) call-safe register */ #define ra $31 /* (T) return address */ +/* + * These are temp registers whose names can be used in either the old + * or new ABI, although they map to different physical registers. In + * the old ABI, they map to t4-t7, and in the new ABI, they map to a4-a7. + * + * Because they overlap with the last 4 arg regs in the new ABI, ta0-ta3 + * should be used only when we need more than t0-t3. + */ +#define ta0 $8 +#define ta1 $9 +#define ta2 $10 +#define ta3 $11 + + #if 0 /* XXX: Should this be kt0 or kt1? */ /* In the kernel, we use t7 to point at the per-cpu globals. */ @@ -120,12 +134,13 @@ .globl sym; sym: #define LEAF(sym) \ - .globl sym; sym: .frame sp, 0, ra + .globl sym; .ent sym; sym: .frame sp, 0, ra #define ENTRY(sym) \ .text; .globl sym; sym: -#define END(sym) +#define END(sym) \ + .end sym /* XXXMIPS: end */ From owner-p4-projects@FreeBSD.ORG Mon Jul 10 11:24:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E5C3B16A4E2; Mon, 10 Jul 2006 11:24:58 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 AA31C16A4E0 for ; Mon, 10 Jul 2006 11:24:58 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 417DF43D4C for ; Mon, 10 Jul 2006 11:24:58 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ABOw8K057517 for ; Mon, 10 Jul 2006 11:24:58 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ABOwUv057514 for perforce@freebsd.org; Mon, 10 Jul 2006 11:24:58 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 10 Jul 2006 11:24:58 GMT Message-Id: <200607101124.k6ABOwUv057514@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101193 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 11:24:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=101193 Change 101193 by gonzo@gonzo_hq on 2006/07/10 11:24:26 MIPS_KSEGX_END definitions added Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpuregs.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpuregs.h#3 (text+ko) ==== @@ -78,7 +78,9 @@ #define MIPS_KUSEG_START 0x0 #define MIPS_KSEG0_START 0x80000000 +#define MIPS_KSEG0_END 0x9fffffff #define MIPS_KSEG1_START 0xa0000000 +#define MIPS_KSEG1_END 0xbfffffff #define MIPS_KSEG2_START 0xc0000000 #define MIPS_MAX_MEM_ADDR 0xbe000000 #define MIPS_RESERVED_ADDR 0xbfc80000 From owner-p4-projects@FreeBSD.ORG Mon Jul 10 11:29:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D868916A4DD; Mon, 10 Jul 2006 11:29:18 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 9B23116A4DF for ; Mon, 10 Jul 2006 11:29:18 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0D70C43D7E for ; Mon, 10 Jul 2006 11:29:03 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ABT3Eo057728 for ; Mon, 10 Jul 2006 11:29:03 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ABT3qg057725 for perforce@freebsd.org; Mon, 10 Jul 2006 11:29:03 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 10 Jul 2006 11:29:03 GMT Message-Id: <200607101129.k6ABT3qg057725@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101194 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 11:29:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=101194 Change 101194 by gonzo@gonzo_hq on 2006/07/10 11:28:30 o Removed bits of i386/arm code. Replaced with proper defines. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/vmparam.h#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/vmparam.h#4 (text+ko) ==== @@ -46,27 +46,32 @@ #define _MACHINE_VMPARAM_H_ 1 /* - * Machine dependent constants for AMD64. + * USRSTACK needs to start a little below 0x8000000 because the R8000 + * and some QED CPUs perform some virtual address checks before the + * offset is calculated. */ +#define USRSTACK 0x7ffff000 /* Start of user stack */ /* * Virtual memory related constants, all in bytes */ -#define MAXTSIZ (128UL*1024*1024) /* max text size */ +#ifndef MAXTSIZ +#define MAXTSIZ (64*1024*1024) /* max text size */ +#endif #ifndef DFLDSIZ -#define DFLDSIZ (128UL*1024*1024) /* initial data size limit */ +#define DFLDSIZ (128*1024*1024) /* initial data size limit */ #endif #ifndef MAXDSIZ -#define MAXDSIZ (32768UL*1024*1024) /* max data size */ +#define MAXDSIZ (512*1024*1024) /* max data size */ #endif #ifndef DFLSSIZ -#define DFLSSIZ (8UL*1024*1024) /* initial stack size limit */ +#define DFLSSIZ (2*1024*1024) /* initial stack size limit */ #endif #ifndef MAXSSIZ -#define MAXSSIZ (512UL*1024*1024) /* max stack size */ +#define MAXSSIZ (32*1024*1024) /* max stack size */ #endif #ifndef SGROWSIZ -#define SGROWSIZ (128UL*1024) /* amount to grow stack */ +#define SGROWSIZ (128*1024) /* amount to grow stack */ #endif /* @@ -81,62 +86,29 @@ #define MAXSLP 20 /* - * We provide a machine specific single page allocator through the use - * of the direct mapped segment. This uses 2MB pages for reduced - * TLB pressure. + * MIPS provides a machine specific single page allocator through the use + * of KSEG0. */ +#define UMA_MD_SMALL_ALLOC + /* - * XXXMIPS: Fix this! Those pieces on i386 family use internal structures from - * VM subsystem in order to get proper addresses and sizesof critical places. + * Mach derived constants */ -#define UMA_MD_SMALL_ALLOC -#define DMAP_MIN_ADDRESS (0) -#define DMAP_MAX_ADDRESS (0) +/* user/kernel map constants */ +#ifndef VM_INITIAL_PAGEIN +#define VM_INITIAL_PAGEIN 16 +#endif +#define VM_MIN_ADDRESS ((vm_offset_t)0x0000000000001000) +#define VM_MAXUSER_ADDRESS ((vm_offset_t)0x0000000100000000) +#define VM_MAX_ADDRESS ((vm_offset_t)0x0000000100000000) +#define VM_MIN_KERNEL_ADDRESS ((vm_offset_t)MIPS_KSEG0_START) +#define VM_MAX_KERNEL_ADDRESS ((vm_offset_t)MIPS_KSEG1_START-1) +#define KERNBASE (VM_MIN_KERNEL_ADDRESS) -#define KERNBASE 0xc0000000 - -#define VM_MIN_KERNEL_ADDRESS KERNBASE -#define VM_MAX_KERNEL_ADDRESS 0xffffffff - - -#define UPT_MAX_ADDRESS KVADDR(PML4PML4I, PML4PML4I, PML4PML4I, PML4PML4I) -#define UPT_MIN_ADDRESS KVADDR(PML4PML4I, 0, 0, 0) - -#define VM_MAXUSER_ADDRESS KERNBASE - -#define USRSTACK VM_MAXUSER_ADDRESS - -#define VM_MAX_ADDRESS UPT_MAX_ADDRESS -#define VM_MIN_ADDRESS (0) - -#define PHYS_TO_DMAP(x) ((x) | DMAP_MIN_ADDRESS) -#define DMAP_TO_PHYS(x) ((x) & ~DMAP_MIN_ADDRESS) - /* virtual sizes (bytes) for various kernel submaps */ -#ifndef VM_KMEM_SIZE -#define VM_KMEM_SIZE (12 * 1024 * 1024) -#endif +#define VM_KMEM_SIZE (16*1024*1024) /* XXX ??? */ -/* - * How many physical pages per KVA page allocated. - * min(max(VM_KMEM_SIZE, Physical memory/VM_KMEM_SIZE_SCALE), VM_KMEM_SIZE_MAX) - * is the total KVA space allocated for kmem_map. - */ -#ifndef VM_KMEM_SIZE_SCALE -#define VM_KMEM_SIZE_SCALE (3) -#endif -/* - * Ceiling on amount of kmem_map kva space. - */ -#ifndef VM_KMEM_SIZE_MAX -#define VM_KMEM_SIZE_MAX (400 * 1024 * 1024) -#endif - -/* initial pagein size of beginning of executable file */ -#ifndef VM_INITIAL_PAGEIN -#define VM_INITIAL_PAGEIN 16 -#endif #endif /* _MACHINE_VMPARAM_H_ */ From owner-p4-projects@FreeBSD.ORG Mon Jul 10 11:31:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 596A516A4DE; Mon, 10 Jul 2006 11:31:07 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 1D9B616A4DA for ; Mon, 10 Jul 2006 11:31:07 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DD96243D45 for ; Mon, 10 Jul 2006 11:31:06 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ABV69L057851 for ; Mon, 10 Jul 2006 11:31:06 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ABV6IS057848 for perforce@freebsd.org; Mon, 10 Jul 2006 11:31:06 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 10 Jul 2006 11:31:06 GMT Message-Id: <200607101131.k6ABV6IS057848@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101195 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 11:31:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=101195 Change 101195 by gonzo@gonzo_hq on 2006/07/10 11:30:52 o Add mips-specific fields to mdthread struct. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/proc.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/proc.h#2 (text+ko) ==== @@ -37,8 +37,9 @@ * Machine-dependent part of the proc structure for AMD64. */ struct mdthread { - int md_spinlock_count; /* (k) */ - register_t md_saved_flags; /* (k) */ + __register_t md_savecrit; /* critical section saved SR */ + void *md_regs; /* registers on current frame */ + int md_flags; /* machine-dependent flags */ }; struct mdproc { From owner-p4-projects@FreeBSD.ORG Mon Jul 10 11:44:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3BEC316A4E2; Mon, 10 Jul 2006 11:44:25 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 1651D16A4E0 for ; Mon, 10 Jul 2006 11:44:25 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 015A643D45 for ; Mon, 10 Jul 2006 11:44:24 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ABiO7r058620 for ; Mon, 10 Jul 2006 11:44:24 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ABiN1H058617 for perforce@freebsd.org; Mon, 10 Jul 2006 11:44:23 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 10 Jul 2006 11:44:23 GMT Message-Id: <200607101144.k6ABiN1H058617@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101196 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 11:44:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=101196 Change 101196 by gonzo@gonzo_hq on 2006/07/10 11:44:05 o genassym.s extended with registers offsets in frame struct, VM params etc.. o exception handling added. o fls(3) implementation has been added from libkern. Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#11 edit .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#7 edit .. //depot/projects/mips2/src/sys/mips/mips/exception.S#2 edit .. //depot/projects/mips2/src/sys/mips/mips/genassym.c#2 edit .. //depot/projects/mips2/src/sys/mips/mips/intr_machdep.c#2 edit .. //depot/projects/mips2/src/sys/mips/mips/trap.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#11 (text+ko) ==== @@ -33,6 +33,7 @@ libkern/divdi3.c standard libkern/ffs.c standard libkern/ffsl.c standard +libkern/fls.c standard libkern/flsl.c standard libkern/lshrdi3.c standard libkern/moddi3.c standard ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#7 (text+ko) ==== @@ -92,7 +92,7 @@ * XXMIPS: This makes cooperation with exception handler more handy. Less hand-typing * is needed. Take a look at mips_vector_init() in this file to see a usage. */ -#define VECI(vec, class) mips_vector_install(MIPS_ ## vec ## _EXC_VEC, \ +#define VECI(vec, class) mips_vector_install(vec ## _EXC_VEC, \ class ## Vector, \ class ## VectorEnd) /* @@ -124,10 +124,10 @@ mips_vector_init(void) { - VECI(UTLB_MISS, TLBMiss); - VECI(XTLB_MISS, XTLBMiss); - VECI(CACHE_ERR, Cache); - VECI(GEN, Exception); + VECI(MIPS_UTLB_MISS, TLBMiss); + VECI(MIPS3_XTLB_MISS, XTLBMiss); + VECI(MIPS3_CACHE_ERR, Cache); + VECI(MIPS3_GEN, Exception); mips_wr_status(mips_rd_status() & ~MIPS_SR_BEV); } ==== //depot/projects/mips2/src/sys/mips/mips/exception.S#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) [year] [your name] + * Copyright (c) 2003-2004 Juli Mallett * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,19 +23,468 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id$ + * $P4: //depot/projects/mips2/src/sys/mips/mips/exception.S#2 $ */ + +#include "opt_ddb.h" + +#include +#include +#include +#include +#include + #include "assym.s" -#include -#include -__FBSDID("$FreeBSD$"); +/* + * Mark the end of a vector. + */ +#define _VEND(x) \ + GLOBAL(x ## End); \ + END(x); + +#define VEND(x) \ + _VEND(x) + +ExceptionHandlerTable: + .dword GenericException /* Int */ + .dword GenericException /* TLBMod */ + .dword TLBMissVector /* TLBL */ + .dword TLBMissVector /* TLBS */ + .dword GenericException /* AdEL */ + .dword GenericException /* AdES */ + .dword GenericException /* IBE */ + .dword GenericException /* DBE */ + .dword GenericException /* Sys */ + .dword GenericException /* Bp */ + .dword GenericException /* RI */ + .dword GenericException /* CpU */ + .dword GenericException /* Ov */ + .dword GenericException /* Tr */ + .dword GenericException /* VCEI */ + .dword GenericException /* FPE */ + .dword GenericException /* Res (16) */ + .dword GenericException /* Res (17) */ + .dword GenericException /* Res (18) */ + .dword GenericException /* Res (19) */ + .dword GenericException /* Res (20) */ + .dword GenericException /* Res (21) */ + .dword GenericException /* Res (22) */ + .dword GenericException /* WATCH */ + .dword GenericException /* Res (24) */ + .dword GenericException /* Res (25) */ + .dword GenericException /* Res (26) */ + .dword GenericException /* Res (27) */ + .dword GenericException /* Res (28) */ + .dword GenericException /* Res (29) */ + .dword GenericException /* Res (30) */ + .dword VCED /* VCED */ + + .text + .set noreorder + +/* + * Exception vector bodies, essentially here to save registers, jump + * to C, restore registers, and return from exception. Some may do + * some fast servicing, where it makes sense to, but in general they + * are meant to be foolproof. Some may jump to assembly herein, not + * to external C routines. + */ +LEAF(ExceptionVector) + .set noat + + mfc0 k0, MIPS_COP_0_CAUSE + and k0, MIPS3_CR_EXC_CODE + srl k0, MIPS_CR_EXC_CODE_SHIFT + sll k0, 3 /* Index 64-bits. */ + la k1, ExceptionHandlerTable + addu k1, k0 + lw k1, 0(k1) + jr k1 + nop + + .set at +VEND(ExceptionVector) + .data +1: .asciiz "ExceptionHandlerTable" + .text + +LEAF(GenericException) + .set noat + + subu sp, sp, TF_SIZE + la k0, 1f + j exception_save_registers + move k1, sp +1: + + /* + * A generic exception may result in DDB being invoked. If we + * are using the kernel debugger, then set up is auxillary + * frame, so it has a full one. + */ +#if DDB + jal save_kdbaux + nop +#endif /* DDB */ + li t0, MIPS_SR_KX + mtc0 t0, MIPS_COP_0_STATUS + + /* + * If this is an interrupt, call cpu_intr() with the arguments: + * trapframe + * + * Otherwise, go to trap(). Trapframe is set to a0 from k1 in the + * BDslot here. + */ + + mfc0 a1, MIPS_COP_0_CAUSE + and k0, a1, MIPS3_CR_EXC_CODE + bnez k0, 1f + move a0, k1 + + jal cpu_intr + nop + + b 2f + nop + + /* + * Call trap() with arguments: + * trapframe, cause, badvaddr. + * + * The trapframe is copied from k1 to a0 in the BDslot above. + * Cause is set up above when computing the code. + */ +1: + mfc0 a1, MIPS_COP_0_CAUSE + mfc0 a2, MIPS_COP_0_BAD_VADDR + + jal trap + nop +2: + + /* + * Make sure interrupts are disabled for the purposes of + * having a clean go at restoring. + */ + mtc0 zero, MIPS_COP_0_CAUSE + li t0, MIPS_SR_KX + mtc0 t0, MIPS_COP_0_STATUS + + move k1, sp + jal exception_restore_registers + nop + + addu sp, sp, TF_SIZE + eret + + .set at +END(GenericException) + .data +3: .asciiz "GenericException" + .text + + +LEAF(CacheVector) + .set noat + la k0, panic + mtc0 k0, MIPS_COP_0_EXC_PC + la a0, 1f + eret + .set at +VEND(CacheVector) + .data +1: .asciiz "Cache Vector" + .text + + +/* + * XXX kernel only. For now that makes sense. + */ +LEAF(TLBMissVector) + .set noat + + mfc0 k0, MIPS_COP_0_BAD_VADDR + /* + * Shift right logical to get a page index, but leaving + * enough bits to index an array of 64 bit values, plus + * align for the even/odd TLB stuff. + */ + + /* VPN2 = (VA >> page_shift) / 2 */ + la k1, VM_MIN_ADDRESS + subu k0, k0, k1 + srl k0, PAGE_SHIFT + 1 + sll k0, 2 + 1 + la k1, kptmap + + + /* + * Find the page table, and index it. + */ + lw k1, 0(k1) + addu k1, k0 + /* + * Write the pair. + */ + lw k0, 0(k1) /* Even PTE. */ + lw k1, 4(k1) /* Odd PTE. */ + /* + * Write TLB entry. + */ + mtc0 k0, MIPS_COP_0_TLB_LO0 + mtc0 k1, MIPS_COP_0_TLB_LO1 + nop + + tlbp + + mfc0 k0, MIPS_COP_0_TLB_INDEX + nop + bltz k0, 1f + nop + + tlbwi + + eret +1: + + tlbwr + eret + + .set at +VEND(TLBMissVector) + .data +2: .asciiz "TLBMissVector" + .text + + + +LEAF(XTLBMissVector) + .set noat + la k0, panic + mtc0 k0, MIPS_COP_0_EXC_PC + la a0, 1f + eret + .set at +VEND(XTLBMissVector) + .data +1: .asciiz "64-bit TLB Miss Vector" + .text + + +LEAF(VCED) + .set noat + la k0, panic + mtc0 k0, MIPS_COP_0_EXC_PC + la a0, 1f + eret + .set at +VEND(VCED) + .data +1: .asciiz "VCED" + .text + +/* + * Handle a data-cache virtual coherency error. + */ +LEAF(VCEDX) + .set noat + mfc0 k0, MIPS_COP_0_BAD_VADDR + srl k0, 3 + sll k0, 3 + cache (CACHE_R4K_SD | CACHEOP_R4K_HIT_WB_INV), 0(k0) + cache (CACHE_R4K_D | CACHEOP_R4K_HIT_INV), 0(k0) + eret + .set at +END(VCEDX) + + +/* + * Restore registers from a trapframe pointed to in k1, returning to ra + * that is passed in, and kept in k0. + */ +LEAF(exception_restore_registers) + move k0, ra + /* + * Load extended registers into some GPRs, and start unrolling + * the trapframe, putting back the extended registers just + * before we need to restore those GPRs. This doesn't do any + * special ordering like the save_registers routine might, + * but it keeps the flow relatively consistent. + */ + + + lw a1, TF_REG_EPC(k1) + lw a0, TF_REG_MULHI(k1) + lw v1, TF_REG_MULLO(k1) +#if 0 + lw v0, TF_REG_SR(k1) +#endif + + lw ra, TF_REG_RA(k1) + lw t9, TF_REG_T9(k1) + lw t8, TF_REG_T8(k1) + lw ta3, TF_REG_TA3(k1) + lw ta2, TF_REG_TA2(k1) + lw ta1, TF_REG_TA1(k1) + lw ta0, TF_REG_TA0(k1) + lw t3, TF_REG_T3(k1) + lw t2, TF_REG_T2(k1) + lw t1, TF_REG_T1(k1) + lw t0, TF_REG_T0(k1) + + /* + * Brief interlude. + */ + mtc0 a1, MIPS_COP_0_EXC_PC + mthi a0 + mtlo v1 +#if 0 + mtc0 v0, MIPS_COP_0_STATUS +#endif + + + + /* + * Now restore the registers we used for scratch, and nearby + * GPRs. + */ + lw a3, TF_REG_A3(k1) + lw a2, TF_REG_A2(k1) + lw a1, TF_REG_A1(k1) + lw a0, TF_REG_A0(k1) + lw v1, TF_REG_V1(k1) + lw v0, TF_REG_V0(k1) + + + + /* + * Restore the stack minus TF_SIZE, to account for sp twiddle. + */ + lw sp, TF_REG_SP(k1) + subu sp, TF_SIZE + + + /* + * We are done with the assembler temporary, restore it, and + * return with it disabled, just in case. + */ + .set noat + lw AT, TF_REG_AST(k1) +#if 1 + /* XXX + * We wait until now so we don't interrupt ourselves. + */ + lw k1, TF_REG_SR(k1) + jr k0 + mtc0 k1, MIPS_COP_0_STATUS +#else + jr k0 + nop +#endif + + .set at +END(exception_restore_registers) + +/* + * Save registers into a trapframe pointed to in k1, returning to k0. + */ +LEAF(exception_save_registers) + /* + * Store the assembler temporary, and make it usable. + */ + .set noat + sw AT, TF_REG_AST(k1) + .set at + /* + * Store registers in order, clobbering the first with values + * we need to have around later, and then storing those at the + * end of the sequence, to avoid any possible issues with the + * time it takes to load from those. + */ + sw v0, TF_REG_V0(k1) + sw v1, TF_REG_V1(k1) + sw a0, TF_REG_A0(k1) + sw a1, TF_REG_A1(k1) + sw a2, TF_REG_A2(k1) + sw a3, TF_REG_A3(k1) + + + + + /* + * Brief interlude. + */ + mfc0 v0, MIPS_COP_0_STATUS + mflo v1 + mfhi a0 + mfc0 a1, MIPS_COP_0_EXC_PC + + sw t0, TF_REG_T0(k1) + sw t1, TF_REG_T1(k1) + sw t2, TF_REG_T2(k1) + sw t3, TF_REG_T3(k1) + sw ta0, TF_REG_TA0(k1) + sw ta1, TF_REG_TA1(k1) + sw ta2, TF_REG_TA2(k1) + sw ta3, TF_REG_TA3(k1) + sw t8, TF_REG_T8(k1) + sw t9, TF_REG_T9(k1) + sw ra, TF_REG_RA(k1) + + /* + * Now save the extended parts of the frame. + */ + sw v0, TF_REG_SR(k1) + sw v1, TF_REG_MULLO(k1) + sw a0, TF_REG_MULHI(k1) + sw a1, TF_REG_EPC(k1) + + /* + * When restore returns, TF_SIZE gets added to the SP for + * return. So in restore, we subtract TF_SIZE, which means + * the value stored herein will be the value returned to. + * To accomodate this, we add TF_SIZE, which makes up for the + * initial subtraction for the trapframe. + */ + addu t0, sp, TF_SIZE + sw t0, TF_REG_SP(k1) + + -ENTRY(reset_entry) -ENTRY(swi_entry) -ENTRY(prefetch_abort_entry) -ENTRY(data_abort_entry) -ENTRY(address_exception_entry) -ENTRY(undefined_entry) -ENTRY(undefinedinstruction_bounce) + /* + * All done. + */ + jr k0 + nop +END(exception_save_registers) + +#if DDB +/* + * Save the kdbaux structure for DDB. + */ +ENTRY(save_kdbaux) + /* + * If we are using the kernel debugger, store registers that + * the compiler normally saves in the place where it expects + * to find them, to form a full frame. + */ + la k0, kdbaux + sw s0, 0x00(k0) + sw s1, 0x08(k0) + sw s2, 0x10(k0) + sw s3, 0x18(k0) + sw s4, 0x20(k0) + sw s5, 0x28(k0) + sw s6, 0x30(k0) + sw s7, 0x38(k0) + sw sp, 0x40(k0) + sw s8, 0x48(k0) + sw gp, 0x50(k0) + + jr ra + nop +END(save_kdbaux) +#endif /* DDB */ ==== //depot/projects/mips2/src/sys/mips/mips/genassym.c#2 (text+ko) ==== @@ -64,4 +64,114 @@ #include #include +#include +#include +#include + ASSYM(P_VMSPACE, offsetof(struct proc, p_vmspace)); +ASSYM(PC_CURTHREAD, offsetof(struct pcpu, pc_curthread)); +ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); +ASSYM(PC_CPUID, offsetof(struct pcpu, pc_cpuid)); + +ASSYM(TDF_ASTPENDING, TDF_ASTPENDING); +ASSYM(TDF_NEEDRESCHED, TDF_NEEDRESCHED); + +ASSYM(TD_FLAGS, offsetof(struct thread, td_flags)); + +ASSYM(TD_FRAME, offsetof(struct thread, td_frame)); +ASSYM(TD_KSTACK, offsetof(struct thread, td_kstack)); +ASSYM(TD_PCB, offsetof(struct thread, td_pcb)); +ASSYM(TD_PROC, offsetof(struct thread, td_proc)); + +ASSYM(TD_MD_REGS, offsetof(struct thread, td_md.md_regs)); + +ASSYM(FRAME_SIZ, sizeof(struct frame)); +ASSYM(FRAME_ZERO, offsetof(struct frame, f_regs[ZERO])); +ASSYM(FRAME_AST, offsetof(struct frame, f_regs[AST])); +ASSYM(FRAME_V0, offsetof(struct frame, f_regs[V0])); +ASSYM(FRAME_V1, offsetof(struct frame, f_regs[V1])); +ASSYM(FRAME_A0, offsetof(struct frame, f_regs[A0])); +ASSYM(FRAME_A1, offsetof(struct frame, f_regs[A1])); +ASSYM(FRAME_A2, offsetof(struct frame, f_regs[A2])); +ASSYM(FRAME_A3, offsetof(struct frame, f_regs[A3])); +ASSYM(FRAME_T0, offsetof(struct frame, f_regs[T0])); +ASSYM(FRAME_T1, offsetof(struct frame, f_regs[T1])); +ASSYM(FRAME_T2, offsetof(struct frame, f_regs[T2])); +ASSYM(FRAME_T3, offsetof(struct frame, f_regs[T3])); + +ASSYM(FRAME_TA0, offsetof(struct frame, f_regs[TA0])); +ASSYM(FRAME_TA1, offsetof(struct frame, f_regs[TA1])); +ASSYM(FRAME_TA2, offsetof(struct frame, f_regs[TA2])); +ASSYM(FRAME_TA3, offsetof(struct frame, f_regs[TA3])); + +ASSYM(FRAME_S0, offsetof(struct frame, f_regs[S0])); +ASSYM(FRAME_S1, offsetof(struct frame, f_regs[S1])); +ASSYM(FRAME_S2, offsetof(struct frame, f_regs[S2])); +ASSYM(FRAME_S3, offsetof(struct frame, f_regs[S3])); +ASSYM(FRAME_S4, offsetof(struct frame, f_regs[S4])); +ASSYM(FRAME_S5, offsetof(struct frame, f_regs[S5])); +ASSYM(FRAME_S6, offsetof(struct frame, f_regs[S6])); +ASSYM(FRAME_S7, offsetof(struct frame, f_regs[S7])); +ASSYM(FRAME_T8, offsetof(struct frame, f_regs[T8])); +ASSYM(FRAME_T9, offsetof(struct frame, f_regs[T9])); +ASSYM(FRAME_K0, offsetof(struct frame, f_regs[K0])); +ASSYM(FRAME_K1, offsetof(struct frame, f_regs[K1])); +ASSYM(FRAME_GP, offsetof(struct frame, f_regs[GP])); +ASSYM(FRAME_SP, offsetof(struct frame, f_regs[SP])); +ASSYM(FRAME_S8, offsetof(struct frame, f_regs[S8])); +ASSYM(FRAME_RA, offsetof(struct frame, f_regs[RA])); +ASSYM(FRAME_SR, offsetof(struct frame, f_regs[SR])); +ASSYM(FRAME_MULLO, offsetof(struct frame, f_regs[MULLO])); +ASSYM(FRAME_MULHI, offsetof(struct frame, f_regs[MULHI])); +ASSYM(FRAME_BADVADDR, offsetof(struct frame, f_regs[BADVADDR])); +ASSYM(FRAME_CAUSE, offsetof(struct frame, f_regs[CAUSE])); +ASSYM(FRAME_EPC, offsetof(struct frame, f_regs[PC])); +ASSYM(FRAME_PPL, offsetof(struct frame, f_ppl)); + +ASSYM(TF_SIZE, sizeof(struct trapframe)); +ASSYM(TF_REG_AST, offsetof(struct trapframe, tf_regs[TF_AST])); +ASSYM(TF_REG_V0, offsetof(struct trapframe, tf_regs[TF_V0])); +ASSYM(TF_REG_V1, offsetof(struct trapframe, tf_regs[TF_V1])); +ASSYM(TF_REG_A0, offsetof(struct trapframe, tf_regs[TF_A0])); +ASSYM(TF_REG_A1, offsetof(struct trapframe, tf_regs[TF_A1])); +ASSYM(TF_REG_A2, offsetof(struct trapframe, tf_regs[TF_A2])); +ASSYM(TF_REG_A3, offsetof(struct trapframe, tf_regs[TF_A3])); +ASSYM(TF_REG_T0, offsetof(struct trapframe, tf_regs[TF_T0])); +ASSYM(TF_REG_T1, offsetof(struct trapframe, tf_regs[TF_T1])); +ASSYM(TF_REG_T2, offsetof(struct trapframe, tf_regs[TF_T2])); +ASSYM(TF_REG_T3, offsetof(struct trapframe, tf_regs[TF_T3])); + +ASSYM(TF_REG_TA0, offsetof(struct trapframe, tf_regs[TF_TA0])); +ASSYM(TF_REG_TA1, offsetof(struct trapframe, tf_regs[TF_TA1])); +ASSYM(TF_REG_TA2, offsetof(struct trapframe, tf_regs[TF_TA2])); +ASSYM(TF_REG_TA3, offsetof(struct trapframe, tf_regs[TF_TA3])); + +ASSYM(TF_REG_T8, offsetof(struct trapframe, tf_regs[TF_T8])); +ASSYM(TF_REG_T9, offsetof(struct trapframe, tf_regs[TF_T9])); +ASSYM(TF_REG_RA, offsetof(struct trapframe, tf_regs[TF_RA])); +ASSYM(TF_REG_SR, offsetof(struct trapframe, tf_regs[TF_SR])); +ASSYM(TF_REG_MULLO, offsetof(struct trapframe, tf_regs[TF_MULLO])); +ASSYM(TF_REG_MULHI, offsetof(struct trapframe, tf_regs[TF_MULHI])); +ASSYM(TF_REG_EPC, offsetof(struct trapframe, tf_regs[TF_EPC])); +ASSYM(TF_REG_SP, offsetof(struct trapframe, tf_regs[TF_SP])); +ASSYM(TF_PPL, offsetof(struct trapframe, tf_ppl)); + +ASSYM(PCB_REG_S0, offsetof(struct pcb, pcb_regs[PCB_REG_S0])); +ASSYM(PCB_REG_S1, offsetof(struct pcb, pcb_regs[PCB_REG_S1])); +ASSYM(PCB_REG_S2, offsetof(struct pcb, pcb_regs[PCB_REG_S2])); +ASSYM(PCB_REG_S3, offsetof(struct pcb, pcb_regs[PCB_REG_S3])); +ASSYM(PCB_REG_S4, offsetof(struct pcb, pcb_regs[PCB_REG_S4])); +ASSYM(PCB_REG_S5, offsetof(struct pcb, pcb_regs[PCB_REG_S5])); +ASSYM(PCB_REG_S6, offsetof(struct pcb, pcb_regs[PCB_REG_S6])); +ASSYM(PCB_REG_S7, offsetof(struct pcb, pcb_regs[PCB_REG_S7])); +ASSYM(PCB_REG_S8, offsetof(struct pcb, pcb_regs[PCB_REG_S8])); +ASSYM(PCB_REG_SP, offsetof(struct pcb, pcb_regs[PCB_REG_SP])); +ASSYM(PCB_REG_SR, offsetof(struct pcb, pcb_regs[PCB_REG_SR])); +ASSYM(PCB_REG_RA, offsetof(struct pcb, pcb_regs[PCB_REG_RA])); + +ASSYM(VM_MIN_ADDRESS, VM_MIN_ADDRESS); +ASSYM(VM_MAXUSER_ADDRESS, VM_MAXUSER_ADDRESS); +ASSYM(VM_MAX_ADDRESS, VM_MAX_ADDRESS); +ASSYM(VM_MIN_KERNEL_ADDRESS, VM_MIN_KERNEL_ADDRESS); +ASSYM(VM_MAX_KERNEL_ADDRESS, VM_MAX_KERNEL_ADDRESS); + ==== //depot/projects/mips2/src/sys/mips/mips/intr_machdep.c#2 (text+ko) ==== @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Fill this file and put your name here + * Copyright (c) 2002-2004 Juli Mallett * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -27,3 +28,102 @@ #include __FBSDID("$FreeBSD$"); + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +struct intrhand { + void (*handler)(void *); + void *arg; +}; +static struct intrhand intrhard[6]; +static struct intrhand intrsoft[2]; + +void +cpu_establish_hardintr(int intr, void (*handler)(void *), void *arg) +{ + struct intrhand *ih; + + if (intr < 0 || intr > 5) + panic("%s called for unknown hard intr %d", __func__, intr); + ih = &intrhard[intr]; + if (ih->handler != NULL && ih->handler != handler) + panic("%s cannot share hard intr %d", __func__, intr); + ih->handler = handler; + ih->arg = arg; + + mips_wr_status(mips_rd_status() | (((1<< intr) << 8) << 2)); +} + +void +cpu_establish_softintr(int intr, void (*handler)(void *), void *arg) +{ + struct intrhand *ih; + + if (intr < 0 || intr > 1) + panic("%s called for unknown soft intr %d", __func__, intr); + ih = &intrsoft[intr]; + if (ih->handler != NULL && ih->handler != handler) + panic("%s cannot share soft intr %d", __func__, intr); + ih->handler = handler; + ih->arg = arg; + + mips_wr_status(mips_rd_status() | ((1 << intr) << 8)); +} + +void +cpu_intr(struct trapframe *tf) +{ + struct intrhand *ih; + register_t cause; + int hard; + int intr; + int i; + + critical_enter(); + + cause = mips_rd_cause(); + intr = (cause & MIPS_INT_MASK) >> 8; + cause &= ~MIPS_INT_MASK; + mips_wr_cause(cause); + + while ((i = fls(intr)) != 0) { + intr &= ~(1 << (i - 1)); + switch (i) { + case 1: case 2: + /* Software interrupt. */ + i--; /* Get a 0-offset interrupt. */ + hard = 0; + ih = &intrsoft[i]; + break; + default: + /* Hardware interrupt. */ + i -= 2; /* Trim software interrupt bits. */ + i--; /* Get a 0-offset interrupt. */ + hard = 1; + ih = &intrhard[i]; + break; + } + if (ih->handler != NULL) { + if (ih->arg == NULL) + (*ih->handler)(tf); + else + (*ih->handler)(ih->arg); + } else + printf("stray %s interrupt %d\n", + hard ? "hard" : "soft", i); + } + KASSERT(i == 0, ("all interrupts handled")); + + critical_exit(); +} ==== //depot/projects/mips2/src/sys/mips/mips/trap.c#3 (text+ko) ==== @@ -107,7 +107,7 @@ tf = retf; bcopy(retf, tf, sizeof *tf); - code = (cause & MIPS_CR_EXC_CODE) >> MIPS_CR_EXC_CODE_SHIFT; + code = (cause & MIPS3_CR_EXC_CODE) >> MIPS_CR_EXC_CODE_SHIFT; kernelmode = (tf->tf_regs[TF_SR] & MIPS_SR_KSU_USER) == 0; /* From owner-p4-projects@FreeBSD.ORG Mon Jul 10 11:58:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 95E0416A4E2; Mon, 10 Jul 2006 11:58:55 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 7173316A4E0 for ; Mon, 10 Jul 2006 11:58:55 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7B92D43D6B for ; Mon, 10 Jul 2006 11:58:42 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ABwgLE059386 for ; Mon, 10 Jul 2006 11:58:42 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ABwfYs059383 for perforce@freebsd.org; Mon, 10 Jul 2006 11:58:41 GMT (envelope-from wkoszek@FreeBSD.org) Date: Mon, 10 Jul 2006 11:58:41 GMT Message-Id: <200607101158.k6ABwfYs059383@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101198 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 11:58:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=101198 Change 101198 by wkoszek@wkoszek_laptop on 2006/07/10 11:58:40 Bring support for UART-based yamon firmwire, which lets us to have printf() working early. This is ARM'a code still, but I had to had a skeleton. Olivier said it's proper way in his opinion. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips4k/malta/maltareg.h#1 add .. //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_bus_maltausart.c#2 edit .. //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_cpu_maltausart.c#2 edit .. //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_dev_maltausart.c#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_bus_maltausart.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) [year] [your name] + * Copyright (c) 2006 Wojciech A. Koszek * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -26,6 +26,11 @@ * $Id$ */ /* + * Skeleton of this file was based on respective code for ARM + * code written by Olivier Houchard. + */ + +/* * XXXMIPS: This file is hacked from arm/... . XXXMIPS here means this file is * experimental and was written for MIPS32 port. */ @@ -53,10 +58,8 @@ /* * XXXMIPS: */ -#if 0 -#include +#include -#endif #include "uart_if.h" static int usart_XXPROCESSOR_probe(device_t dev); @@ -88,12 +91,9 @@ switch (device_get_unit(dev)) { case 0: -#ifdef SKYEYE_WORKAROUNDS - device_set_desc(dev, "USART0"); -#else device_set_desc(dev, "DBGU"); -#endif - /* + + /* XXX: This is ARM comment. * Setting sc_sysdev makes this device a 'system device' and * indirectly makes it the system console. */ ==== //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_cpu_maltausart.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) [year] [your name] + * Copyright (c) 2006 Wojciech A. Koszek * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -26,6 +26,10 @@ * $Id$ */ /* + * Skeleton of this file was based on respective code for ARM + * code written by Olivier Houchard. + */ +/* * XXXMIPS: This file is hacked from arm/... . XXXMIPS here means this file is * experimental and was written for MIPS32 port. */ @@ -38,20 +42,19 @@ #include #include #include + #include #include #include -#if 0 -processor/board specific headers -#endif +#include bus_space_tag_t uart_bus_space_io; bus_space_tag_t uart_bus_space_mem; -extern struct uart_ops XXBOARD_usart_ops; -extern struct bus_space XXBOARD_bs_tag; +extern struct uart_ops XXPROCESSOR_usart_ops; +extern struct bus_space XXPROCESSOR_bs_tag; int uart_cpu_eqres(struct uart_bas *b1, struct uart_bas *b2) @@ -63,16 +66,17 @@ int uart_cpu_getdev(int devtype, struct uart_devinfo *di) { + di->ops = XXPROCESSOR_usart_ops; + di->bas.chan = 0; #if 0 - di->ops = XXBOARD_usart_ops; - di->bas.chan = 0; - di->bas.bst = &XXBOARD_bs_tag; + di->bas.bst = &XXPROCESSOR_bs_tag; +#endif /* * XXXMIPS: You might want to take a look at comment in arm/.. code to * it's respective function. */ - di->bas.bsh = XXX_BASE + XXX_SYS_BASE + DBGU; + di->bas.bsh = 0; /* XXX_BASE + XXX_SYS_BASE + DBGU;*/ di->baudrate = 115200; di->bas.regshft = 0; @@ -80,11 +84,13 @@ di->databits = 8; di->stopbits = 1; di->parity = UART_PARITY_NONE; - uart_bus_space_io = &XXBOARD_bs_tag; +#if 0 + uart_bus_space_io = &XXPROCESSOR_bs_tag; uart_bus_space_mem = NULL; +#endif /* Check the environment for overrides */ if (uart_getenv(devtype, di) == 0) - return (0); -#endif - return (0); + return (-1); + + return (-1); } ==== //depot/projects/mips2/src/sys/mips/mips4k/malta/uart_dev_maltausart.c#2 (text+ko) ==== @@ -202,7 +202,7 @@ /* XXX Need to take possible synchronous mode into account */ #endif - return (0); + return (-1); } struct uart_ops XXPROCESSOR_usart_ops = { @@ -218,7 +218,7 @@ XXPROCESSOR_usart_probe(struct uart_bas *bas) { /* We know that this is always here */ - return (0); + return (-1); } /* @@ -275,7 +275,7 @@ return (-1); return (RD4(bas, USART_RHR) & 0xff); #endif - return (0); + return (-1); } /* @@ -284,15 +284,15 @@ static int XXPROCESSOR_usart_getc(struct uart_bas *bas, struct mtx *mtx) { +#if 0 int c; c = -1; -#if 0 while (!(RD4(bas, USART_CSR) & USART_CSR_RXRDY)) continue; c = RD4(bas, USART_RHR); c &= 0xff; #endif - return (c); + return (-1); } static int XXPROCESSOR_usart_bus_probe(struct uart_softc *sc); @@ -324,7 +324,7 @@ int XXPROCESSOR_usart_bus_probe(struct uart_softc *sc) { - return (0); + return (-1); } #if 0 @@ -436,7 +436,7 @@ errout:; // XXX bad #endif - return (err); + return (-1); } static int @@ -478,7 +478,7 @@ WR4(&sc->sc_bas, USART_IER, USART_CSR_TXRDY); #endif #endif /* end of #if 0 */ - return (0); + return (-1); } static int XXPROCESSOR_usart_bus_setsig(struct uart_softc *sc, int sig) @@ -513,13 +513,13 @@ WR4(bas, USART_CR, cr); uart_unlock(sc->sc_hwmtx); #endif - return (0); + return (-1); } static int XXPROCESSOR_usart_bus_receive(struct uart_softc *sc) { - return (0); + return (-1); } static int XXPROCESSOR_usart_bus_param(struct uart_softc *sc, int baudrate, int databits, @@ -529,7 +529,7 @@ return (XXPROCESSOR_usart_param(&sc->sc_bas, baudrate, databits, stopbits, parity)); #endif - return (0); + return (-1); } static int XXPROCESSOR_usart_bus_ipend(struct uart_softc *sc) @@ -635,12 +635,12 @@ uart_unlock(sc->sc_hwmtx); return (ipend); #endif - return (0); + return (-1); } static int XXPROCESSOR_usart_bus_flush(struct uart_softc *sc, int what) { - return (0); + return (-1); } static int @@ -668,7 +668,7 @@ sc->sc_hwsig = new; uart_unlock(sc->sc_hwmtx); #endif - return (sig); + return (-1); } static int @@ -686,7 +686,7 @@ #if 0 WR4(&sc->sc_bas, USART_BRGR, BAUD2DIVISOR(*(int *)data)); #endif - return (0); + return (-1); } return (EINVAL); } From owner-p4-projects@FreeBSD.ORG Mon Jul 10 13:08:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 522D416A4DF; Mon, 10 Jul 2006 13:08:09 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 14C5716A4DE for ; Mon, 10 Jul 2006 13:08:09 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A656D43D46 for ; Mon, 10 Jul 2006 13:08:08 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AD88W5072713 for ; Mon, 10 Jul 2006 13:08:08 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AD88rk072710 for perforce@freebsd.org; Mon, 10 Jul 2006 13:08:08 GMT (envelope-from wkoszek@FreeBSD.org) Date: Mon, 10 Jul 2006 13:08:08 GMT Message-Id: <200607101308.k6AD88rk072710@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101199 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 13:08:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=101199 Change 101199 by wkoszek@wkoszek_laptop on 2006/07/10 13:08:04 Eh. I don't really, really like 'p4 open' very much. Hook malta_console.c to the files.malta Affected files ... .. //depot/projects/mips2/src/sys/mips/mips4k/malta/files.malta#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips4k/malta/files.malta#2 (text+ko) ==== @@ -2,3 +2,4 @@ mips/mips4k/malta/uart_cpu_maltausart.c optional uart mips/mips4k/malta/uart_dev_maltausart.c optional uart mips/mips4k/malta/uart_bus_maltausart.c optional uart +mips/mips4k/malta/malta_console.c standard From owner-p4-projects@FreeBSD.ORG Mon Jul 10 13:21:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ED97D16A4E1; Mon, 10 Jul 2006 13:21:27 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B00BB16A4DF for ; Mon, 10 Jul 2006 13:21:27 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 65AED43D53 for ; Mon, 10 Jul 2006 13:21:27 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ADLRTM073316 for ; Mon, 10 Jul 2006 13:21:27 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ADLRbA073313 for perforce@freebsd.org; Mon, 10 Jul 2006 13:21:27 GMT (envelope-from wkoszek@FreeBSD.org) Date: Mon, 10 Jul 2006 13:21:27 GMT Message-Id: <200607101321.k6ADLRbA073313@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101201 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 13:21:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=101201 Change 101201 by wkoszek@wkoszek_laptop on 2006/07/10 13:21:25 Ok, finally bring malta_console.c file. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips4k/malta/malta_console.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Mon Jul 10 13:28:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DC42116A4E0; Mon, 10 Jul 2006 13:28:37 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B2C0116A4DF for ; Mon, 10 Jul 2006 13:28:37 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 118FA43D49 for ; Mon, 10 Jul 2006 13:28:37 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ADSaea073709 for ; Mon, 10 Jul 2006 13:28:36 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ADSa8i073706 for perforce@freebsd.org; Mon, 10 Jul 2006 13:28:36 GMT (envelope-from gabor@FreeBSD.org) Date: Mon, 10 Jul 2006 13:28:36 GMT Message-Id: <200607101328.k6ADSa8i073706@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101202 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 13:28:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=101202 Change 101202 by gabor@gabor_spitfire on 2006/07/10 13:28:25 If DESTDIR set, tell where package gets installed in the ===> Registering installation for misc/foo line. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#17 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#17 (text+ko) ==== @@ -5421,9 +5421,13 @@ fi @${RM} -rf ${PKG_DBDIR}/${PKGNAME} .endif - @if [ ! -d ${PKG_DBDIR}/${PKGNAME} ]; then \ - ${ECHO_MSG} "===> Registering installation for ${PKGNAME}"; \ - ${MKDIR} ${PKG_DBDIR}/${PKGNAME}; \ +.if !exists(${PKG_DBDIR}/${PKGNAME}) +.if !defined(DESTDIR) + @${ECHO_MSG} "===> Registering installation for ${PKGNAME}" +.else + @${ECHO_MSG} "===> Registering installation for ${PKGNAME} in ${DESTDIR}" +.endif + @${MKDIR} ${PKG_DBDIR}/${PKGNAME}; \ ${PKG_CMD} ${PKG_ARGS} -O ${PKGFILE} > ${PKG_DBDIR}/${PKGNAME}/+CONTENTS; \ ${CP} ${DESCR} ${PKG_DBDIR}/${PKGNAME}/+DESC; \ ${ECHO_CMD} ${COMMENT:Q} > ${PKG_DBDIR}/${PKGNAME}/+COMMENT; \ @@ -5446,8 +5450,8 @@ ${ECHO_CMD} ${PKGNAME} >> ${PKG_DBDIR}/$$dep/+REQUIRED_BY; \ fi; \ fi; \ - done; \ - fi + done +.endif .if !defined(NO_MTREE) @if [ -f ${MTREE_FILE} ]; then \ ${CP} ${MTREE_FILE} ${PKG_DBDIR}/${PKGNAME}/+MTREE_DIRS; \ From owner-p4-projects@FreeBSD.ORG Mon Jul 10 14:33:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 90D8116A4DE; Mon, 10 Jul 2006 14:33:59 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 561B316A4DA for ; Mon, 10 Jul 2006 14:33:59 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 21CD243D46 for ; Mon, 10 Jul 2006 14:33:59 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AEXxh4081603 for ; Mon, 10 Jul 2006 14:33:59 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AEXwWG081600 for perforce@freebsd.org; Mon, 10 Jul 2006 14:33:58 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 10 Jul 2006 14:33:58 GMT Message-Id: <200607101433.k6AEXwWG081600@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101205 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 14:33:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=101205 Change 101205 by gonzo@gonzo_hq on 2006/07/10 14:33:01 o Added ASM_ENTRY macros and _start was made pure asm entry. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/asm.h#4 edit .. //depot/projects/mips2/src/sys/mips/mips/locore.S#9 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/asm.h#4 (text+ko) ==== @@ -137,7 +137,10 @@ .globl sym; .ent sym; sym: .frame sp, 0, ra #define ENTRY(sym) \ - .text; .globl sym; sym: + .text; .globl sym; .ent sym; sym: + +#define ASM_ENTRY(sym) \ + .text; .globl sym; .type sym,@function; sym: #define END(sym) \ .end sym ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#9 (text+ko) ==== @@ -42,7 +42,7 @@ .text GLOBAL(btext) -ENTRY(_start) +ASM_ENTRY(_start) /* * t0: Bits to preserve if set: * Soft reset From owner-p4-projects@FreeBSD.ORG Mon Jul 10 14:39:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DC77616A4E0; Mon, 10 Jul 2006 14:39:06 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 AEEE716A4DD for ; Mon, 10 Jul 2006 14:39:06 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 234A043D46 for ; Mon, 10 Jul 2006 14:39:06 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AEd68s081934 for ; Mon, 10 Jul 2006 14:39:06 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AEd5HO081931 for perforce@freebsd.org; Mon, 10 Jul 2006 14:39:05 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 10 Jul 2006 14:39:05 GMT Message-Id: <200607101439.k6AEd5HO081931@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101206 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 14:39:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=101206 Change 101206 by gonzo@gonzo_hq on 2006/07/10 14:38:44 o Add END macros for every respective ENTRY in low-level routines definition. o Put "break" opcode as a stub for unimplemented low-level routines. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/copystr.S#2 edit .. //depot/projects/mips2/src/sys/mips/mips/support.S#4 edit .. //depot/projects/mips2/src/sys/mips/mips/swtch.S#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/copystr.S#2 (text+ko) ==== @@ -33,6 +33,18 @@ #include +/* + * XXXMIPS: Implement these routines + */ + ENTRY(copystr) + break +END(copystr) + ENTRY(copyinstr) + break +END(copyinstr) + ENTRY(copyoutstr) + break +END(copyoutstr) ==== //depot/projects/mips2/src/sys/mips/mips/support.S#4 (text+ko) ==== @@ -31,35 +31,116 @@ #include "assym.s" +/* + * XXXMIPS: Implement these routines + */ + ENTRY(bcmp) + break +END(bcmp) + ENTRY(bcopy) + break +END(bcopy) + ENTRY(bintr) + break +END(bintr) + ENTRY(btrap) + break +END(btrap) + ENTRY(bzero) + break +END(bzero) + ENTRY(eintr) + break +END(eintr) + ENTRY(etrap) + break +END(etrap) + ENTRY(memcpy) + break +END(memcpy) + ENTRY(memmove) + break +END(memmove) + ENTRY(memset) + break +END(memset) + ENTRY(user) + break +END(user) + ENTRY(setjmp) + break +END(setjmp) + ENTRY(longjmp) + break +END(longjmp) ENTRY(subyte) + break +END(subyte) + ENTRY(susword) + break +END(susword) + ENTRY(suswintr) + break +END(suswintr) + ENTRY(suword) + break +END(suword) + ENTRY(suword32) + break +END(suword32) + ENTRY(suword64) + break +END(suword64) + ENTRY(fubyte) + break +END(fubyte) + ENTRY(fusword) + break +END(fusword) + ENTRY(fuswintr) + break +END(fuswintr) + ENTRY(fuword) + break +END(fuword) + ENTRY(fuword32) + break +END(fuword32) + ENTRY(copyin) + break +END(copyin) + ENTRY(copyout) + break +END(copyout) + /* * XXXMIPS: ==== //depot/projects/mips2/src/sys/mips/mips/swtch.S#2 (text+ko) ==== @@ -32,8 +32,22 @@ #include __FBSDID("$FreeBSD$"); +/* + * XXXMIPS: Implement these routines + */ ENTRY(cpu_throw) + break +END(cpu_throw) + ENTRY(cpu_switch) + break +END(cpu_switch) + ENTRY(savectx) + break +END(savectx) + ENTRY(fork_trampoline) + break +END(fork_trampoline) From owner-p4-projects@FreeBSD.ORG Mon Jul 10 15:34:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1A42016A4E5; Mon, 10 Jul 2006 15:34:16 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 D011416A4E1 for ; Mon, 10 Jul 2006 15:34:15 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 64E1243D45 for ; Mon, 10 Jul 2006 15:34:15 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AFYFjh092115 for ; Mon, 10 Jul 2006 15:34:15 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AFYEmR092103 for perforce@freebsd.org; Mon, 10 Jul 2006 15:34:14 GMT (envelope-from piso@freebsd.org) Date: Mon, 10 Jul 2006 15:34:14 GMT Message-Id: <200607101534.k6AFYEmR092103@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101208 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 15:34:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=101208 Change 101208 by piso@piso_newluxor on 2006/07/10 15:33:30 Correct the execution logic of interrupts as pointed out by jhb: -if a filter completely served the interrupt (FILTER_HANDLED), return immediately and eoi the source. -if a filter wants to run the handler in ithread (FILTER_SCHEDULE_ITHREAD) stamp ih_need, mask & eoi the source and schedule the ithread. -if no handlers with filter were present, then run all the filter-less handlers (if present). In kern_intr.c::ithread_execute_handlers() execute only sw & hw interrupts that have ih_need set. Unfortunately, the screen of my laptop still doesn't get refreshed properly: it does boot fine, but after it mounts the disk, the screen isn't refreshed anymore up to the next printf() from kernel land. In fact, the only way to see what's going on is to break to ddb (CTRL+ALT+ESC), the debugger tries to print something on the screen and magically all the output that was previously missing gets flushed to screen and i can see that it reached the login prompt fine, i can log, issue commands and so on (everything blindly of course) with no problems. Affected files ... .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#6 edit .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#6 edit Differences ... ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#6 (text+ko) ==== @@ -215,18 +215,19 @@ thread = intr_filter_loop(ie, frame); /* - * If there are any threaded handlers that need to run, - * mask the source as well as sending it an EOI. Otherwise, - * just send it an EOI but leave it unmasked. + * If the interrupt was fully served, send it an EOI but leave it + * unmasked. Otherwise, if there are any threaded handlers that need + * to run or it was a stray interrupt, mask the source as well as + * sending it an EOI. */ - if (thread) + if (thread & FILTER_HANDLED) + isrc->is_pic->pic_eoi_source(isrc); + else isrc->is_pic->pic_disable_source(isrc, PIC_EOI); - else - isrc->is_pic->pic_eoi_source(isrc); critical_exit(); /* Schedule the ithread if needed. */ - if (thread) { + if (thread & FILTER_SCHEDULE_THREAD) { error = intr_event_schedule_thread(ie); KASSERT(error == 0, ("bad stray interrupt")); } ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#6 (text+ko) ==== @@ -638,29 +638,17 @@ } /* - * For software interrupt threads, we only execute - * handlers that have their need flag set. Hardware - * interrupt threads always invoke all of their handlers. + * Execute handlers that have their need flag set. */ - if (ie->ie_flags & IE_SOFT) { - if (!ih->ih_need) - continue; - else - atomic_store_rel_int(&ih->ih_need, 0); - } + if (!ih->ih_need) + continue; + else + atomic_store_rel_int(&ih->ih_need, 0); /* Fast handlers are handled in primary interrupt context. */ if (ih->ih_flags & IH_FAST) continue; - /* Execute handlers of filters that need it. */ - if (ih->ih_filter != NULL) { - if (!ih->ih_need) - continue; - else - atomic_store_rel_int(&ih->ih_need, 0); - } - /* Execute this handler. */ CTR6(KTR_INTR, "%s: pid %d exec %p(%p) for %s flg=%x", __func__, p->p_pid, (void *)ih->ih_handler, ih->ih_argument, @@ -785,10 +773,11 @@ intr_filter_loop(struct intr_event *ie, struct trapframe *frame) { struct intr_handler *ih; void *arg; - int ret, ret2 = 0; + int ret, ret2, thread_only; + ret = 0; + thread_only = 0; TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - ih->ih_need = 0; /* * Execute fast interrupt handlers directly. * To support clock handlers, if a handler registers @@ -801,28 +790,48 @@ ih->ih_filter, ih->ih_handler, arg, ih->ih_name); if (ih->ih_filter != NULL) - ret = ih->ih_filter(arg); + ret2 = ih->ih_filter(arg); else { - /* legacy ithread handler */ - ret2 = 1; + /* Legacy ithread only handler. */ + thread_only = 1; continue; } - /* try with the next handler... */ - if (ret == FILTER_STRAY) + /* Mark handler for later execution in ithread. */ + if (ret2 == FILTER_SCHEDULE_THREAD) { + ih->ih_need = 1; + ret |= FILTER_SCHEDULE_THREAD; continue; + } + + /* Interrupt served in filter. */ + if (ret2 == FILTER_HANDLED) { + ret |= FILTER_HANDLED; + return (ret); + } + } - /* interrupt served in filter */ - if (ret == FILTER_HANDLED) - continue; + /* + * A filter did claim the interrupt but didn't shut it up + * fully, so schedule the ithread. + */ + if (ret != 0) + return (ret); - /* mark handler for later execution */ - if (ret == FILTER_SCHEDULE_THREAD) { - ih->ih_need = 1; - ret2 = 1; + /* + * No filters handled the interrupt and we have at least + * one handler without a filter. In this case, we schedule + * all of the filter-less handlers to run in the ithread. + */ + if (thread_only) { + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + if (ih->ih_filter != NULL) + continue; + ih->ih_need = 1; } + return (FILTER_SCHEDULE_THREAD); } - return(ret2); + return (FILTER_STRAY); } From owner-p4-projects@FreeBSD.ORG Mon Jul 10 15:56:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B0CBC16A4E0; Mon, 10 Jul 2006 15:56:45 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8C77616A4DE for ; Mon, 10 Jul 2006 15:56:45 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3FDD443D62 for ; Mon, 10 Jul 2006 15:56:45 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AFuj9L094413 for ; Mon, 10 Jul 2006 15:56:45 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AFui4d094410 for perforce@freebsd.org; Mon, 10 Jul 2006 15:56:44 GMT (envelope-from jhb@freebsd.org) Date: Mon, 10 Jul 2006 15:56:44 GMT Message-Id: <200607101556.k6AFui4d094410@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101210 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 15:56:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=101210 Change 101210 by jhb@jhb_mutex on 2006/07/10 15:56:20 Update. Affected files ... .. //depot/projects/smpng/sys/notes#75 edit Differences ... ==== //depot/projects/smpng/sys/notes#75 (text+ko) ==== @@ -100,9 +100,6 @@ - ibcs2_read() - ibcs2_mount() - ibcs2_umount() - - ibcs2_msgsys() - - ibcs2_shmsys() - - ibcs2_semsys() - ibcs2_ioctl() - ibcs2_getdents() - ibcs2_sigprocmask() From owner-p4-projects@FreeBSD.ORG Mon Jul 10 16:43:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D243F16A4E2; Mon, 10 Jul 2006 16:42:59 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A6F7C16A4E0 for ; Mon, 10 Jul 2006 16:42:59 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0FCAC43D86 for ; Mon, 10 Jul 2006 16:42:44 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AGgiPk097775 for ; Mon, 10 Jul 2006 16:42:44 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AGgg5O097771 for perforce@freebsd.org; Mon, 10 Jul 2006 16:42:42 GMT (envelope-from piso@freebsd.org) Date: Mon, 10 Jul 2006 16:42:42 GMT Message-Id: <200607101642.k6AGgg5O097771@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101213 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 16:43:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=101213 Change 101213 by piso@piso_newluxor on 2006/07/10 16:42:13 IFC Affected files ... .. //depot/projects/soc2006/intr_filter/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#5 integrate .. //depot/projects/soc2006/intr_filter/amd64/conf/GENERIC#4 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_proto.h#5 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_syscall.h#5 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_sysent.c#5 integrate .. //depot/projects/soc2006/intr_filter/amd64/linux32/syscalls.master#5 integrate .. //depot/projects/soc2006/intr_filter/bsm/audit_kevents.h#2 integrate .. //depot/projects/soc2006/intr_filter/bsm/audit_record.h#2 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_ioctl.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_ipc.c#3 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_socket.c#2 integrate .. //depot/projects/soc2006/intr_filter/compat/svr4/svr4_ipc.c#3 integrate .. //depot/projects/soc2006/intr_filter/conf/NOTES#5 integrate .. //depot/projects/soc2006/intr_filter/conf/files#4 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_bstream.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_bstream.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_context.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_env.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_scoreboard.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_self.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_self_context.s#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_step.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_str.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_str.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_swap.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_swap.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_ttrace.c#2 delete .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_ttrace.h#2 delete .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_uinfo.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_uinfo.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_utable.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx_utable.h#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/pf/net/if_pflog.c#2 integrate .. //depot/projects/soc2006/intr_filter/contrib/pf/net/if_pfsync.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/asr/MAINTAINER#2 delete .. //depot/projects/soc2006/intr_filter/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.h#3 integrate .. //depot/projects/soc2006/intr_filter/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/fdc/fdc.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/ic/nec765.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp_pci.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/isp/isp_sbus.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/ispfw/asm_1040.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ispfw/asm_1080.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ispfw/asm_12160.h#2 integrate .. //depot/projects/soc2006/intr_filter/dev/ispfw/ispfw.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/sk/if_sk.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/solo.c#2 integrate .. //depot/projects/soc2006/intr_filter/dev/usb/if_aue.c#2 integrate .. //depot/projects/soc2006/intr_filter/doc/Doxyfile#2 delete .. //depot/projects/soc2006/intr_filter/doc/Makefile#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Dependencies#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-cam#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-crypto#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-dev_pci#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-dev_sound#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-dev_usb#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-geom#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-i4b#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-kern#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-libkern#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-linux#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-net80211#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-netgraph#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-netinet#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-netinet6#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-netipsec#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-opencrypto#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Doxyfile-vm#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/Makefile#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/README#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/soc2006/intr_filter/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/soc2006/intr_filter/fs/devfs/devfs_vfsops.c#2 integrate .. //depot/projects/soc2006/intr_filter/fs/devfs/devfs_vnops.c#2 integrate .. //depot/projects/soc2006/intr_filter/fs/portalfs/portal_vnops.c#2 integrate .. //depot/projects/soc2006/intr_filter/fs/unionfs/union_vnops.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/soc2006/intr_filter/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/conf/GENERIC#5 integrate .. //depot/projects/soc2006/intr_filter/i386/conf/PAE#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_ipc.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_ipc.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_misc.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_msg.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_other.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_poll.h#2 delete .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_proto.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_syscall.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_sysent.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_xenix.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_xenix.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_xenix_syscall.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/ibcs2_xenix_sysent.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/syscalls.master#2 integrate .. //depot/projects/soc2006/intr_filter/i386/ibcs2/syscalls.xenix#2 integrate .. //depot/projects/soc2006/intr_filter/i386/include/i4b_ioctl.h#2 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_proto.h#5 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_syscall.h#5 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/linux_sysent.c#5 integrate .. //depot/projects/soc2006/intr_filter/i386/linux/syscalls.master#5 integrate .. //depot/projects/soc2006/intr_filter/i4b/layer4/i4b_l4mgmt.c#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/conf/GENERIC#4 integrate .. //depot/projects/soc2006/intr_filter/ia64/include/ieeefp.h#2 integrate .. //depot/projects/soc2006/intr_filter/isa/isahint.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/bus_if.m#3 integrate .. //depot/projects/soc2006/intr_filter/kern/init_sysent.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_acl.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_descrip.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_environment.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_linker.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_prot.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/soc2006/intr_filter/kern/subr_bus.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_hints.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/sys_generic.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/syscalls.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/syscalls.master#3 integrate .. //depot/projects/soc2006/intr_filter/kern/sysv_sem.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_socket2.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_subr.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_syscalls.c#2 integrate .. //depot/projects/soc2006/intr_filter/modules/ispfw/Makefile#2 integrate .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/soc2006/intr_filter/net/bpf.c#3 integrate .. //depot/projects/soc2006/intr_filter/net/if.c#5 integrate .. //depot/projects/soc2006/intr_filter/net/if_bridge.c#4 integrate .. //depot/projects/soc2006/intr_filter/net/if_clone.c#3 integrate .. //depot/projects/soc2006/intr_filter/net/if_clone.h#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_disc.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_enc.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_faith.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_gif.c#3 integrate .. //depot/projects/soc2006/intr_filter/net/if_gre.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_loop.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_ppp.c#2 integrate .. //depot/projects/soc2006/intr_filter/net/if_stf.c#3 integrate .. //depot/projects/soc2006/intr_filter/net/if_vlan.c#4 integrate .. //depot/projects/soc2006/intr_filter/net/rtsock.c#2 integrate .. //depot/projects/soc2006/intr_filter/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#3 integrate .. //depot/projects/soc2006/intr_filter/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/in_rmx.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_carp.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_ipsec.c#2 integrate .. //depot/projects/soc2006/intr_filter/netinet/libalias/libalias.3#2 integrate .. //depot/projects/soc2006/intr_filter/netinet6/in6_rmx.c#2 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_socket.c#2 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/soc2006/intr_filter/pc98/conf/GENERIC#4 integrate .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/mmu_oea.c#5 integrate .. //depot/projects/soc2006/intr_filter/security/audit/audit.h#2 integrate .. //depot/projects/soc2006/intr_filter/security/audit/audit_arg.c#2 integrate .. //depot/projects/soc2006/intr_filter/security/audit/audit_bsm.c#2 integrate .. //depot/projects/soc2006/intr_filter/sparc64/conf/GENERIC#4 integrate .. //depot/projects/soc2006/intr_filter/sys/bus.h#4 integrate .. //depot/projects/soc2006/intr_filter/sys/sockio.h#3 integrate .. //depot/projects/soc2006/intr_filter/sys/syscall.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/syscall.mk#2 integrate .. //depot/projects/soc2006/intr_filter/sys/syscallsubr.h#4 integrate .. //depot/projects/soc2006/intr_filter/sys/sysproto.h#2 integrate .. //depot/projects/soc2006/intr_filter/sys/systm.h#2 integrate .. //depot/projects/soc2006/intr_filter/ufs/ffs/ffs_vfsops.c#2 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_meter.c#3 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#5 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -2969,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3022,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3061,14 +3050,12 @@ pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - if (pte != NULL && (*pte & PG_A) != 0) { + if ((*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); rtval++; - if (rtval > 4) { - PMAP_UNLOCK(pmap); - break; - } + if (rtval > 4) + pvn = NULL; } PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); @@ -3082,7 +3069,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3093,7 +3096,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* ==== //depot/projects/soc2006/intr_filter/amd64/conf/GENERIC#4 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.464 2006/07/09 16:39:21 mjacob Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols @@ -252,6 +251,7 @@ device md # Memory "disks" device gif # IPv6 and IPv4 tunneling device faith # IPv6-to-IPv4 relaying (translation) +device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_proto.h#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_syscall.h#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/soc2006/intr_filter/amd64/linux32/linux32_sysent.c#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #include @@ -74,7 +74,7 @@ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ ==== //depot/projects/soc2006/intr_filter/amd64/linux32/syscalls.master#5 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -113,7 +113,7 @@ 51 AUE_ACCT MNOPROTO { int acct(char *path); } 52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ uintptr_t arg); } ==== //depot/projects/soc2006/intr_filter/bsm/audit_kevents.h#2 (text) ==== @@ -30,8 +30,8 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#20 $ - * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.5 2006/02/06 01:12:46 rwatson Exp $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#23 $ + * $FreeBSD: src/sys/bsm/audit_kevents.h,v 1.6 2006/07/03 14:45:43 rwatson Exp $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ @@ -384,7 +384,24 @@ #define AUE_ACL_DELETE_FD 403 /* FreeBSD. */ #define AUE_ACL_CHECK_FILE 404 /* FreeBSD. */ #define AUE_ACL_CHECK_FD 405 /* FreeBSD. */ -#define AUE_SYSARCH 406 /* FreeBSD. */ +#define AUE_ACL_GET_LINK 406 /* FreeBSD. */ +#define AUE_ACL_SET_LINK 407 /* FreeBSD. */ +#define AUE_ACL_DELETE_LINK 408 /* FreeBSD. */ +#define AUE_ACL_CHECK_LINK 409 /* FreeBSD. */ +#define AUE_SYSARCH 410 /* FreeBSD. */ +#define AUE_EXTATTRCTL 411 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FILE 412 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FILE 413 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FILE 414 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FILE 415 /* FreeBSD. */ +#define AUE_EXTATTR_GET_FD 416 /* FreeBSD. */ +#define AUE_EXTATTR_SET_FD 417 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_FD 418 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_FD 419 /* FreeBSD. */ +#define AUE_EXTATTR_GET_LINK 420 /* FreeBSD. */ +#define AUE_EXTATTR_SET_LINK 421 /* FreeBSD. */ +#define AUE_EXTATTR_LIST_LINK 422 /* FreeBSD. */ +#define AUE_EXTATTR_DELETE_LINK 423 /* FreeBSD. */ /* * Darwin BSM uses a number of AUE_O_* definitions, which are aliased to the ==== //depot/projects/soc2006/intr_filter/bsm/audit_record.h#2 (text) ==== @@ -31,12 +31,14 @@ * @APPLE_BSD_LICENSE_HEADER_END@ * * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#13 $ - * $FreeBSD: src/sys/bsm/audit_record.h,v 1.2 2006/06/05 13:00:52 rwatson Exp $ + * $FreeBSD: src/sys/bsm/audit_record.h,v 1.3 2006/07/03 14:44:13 rwatson Exp $ */ #ifndef _BSM_AUDIT_RECORD_H_ #define _BSM_AUDIT_RECORD_H_ +#include /* struct timeval */ + /* * Token type identifiers. */ ==== //depot/projects/soc2006/intr_filter/compat/linux/linux_ioctl.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.136 2006/05/10 20:38:15 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.137 2006/07/06 21:42:36 jhb Exp $"); #include #include @@ -43,7 +43,9 @@ #include #include #include +#include #include +#include #include #include #include @@ -51,6 +53,7 @@ #include #include #include +#include #include #include #include @@ -126,6 +129,8 @@ static TAILQ_HEAD(, handler_element) handlers = TAILQ_HEAD_INITIALIZER(handlers); +static struct sx linux_ioctl_sx; +SX_SYSINIT(linux_ioctl, &linux_ioctl_sx, "linux ioctl handlers"); /* * hdio related ioctls for VMWare support @@ -2571,15 +2576,21 @@ /* Iterate over the ioctl handlers */ cmd = args->cmd & 0xffff; + sx_slock(&linux_ioctl_sx); + mtx_lock(&Giant); TAILQ_FOREACH(he, &handlers, list) { if (cmd >= he->low && cmd <= he->high) { error = (*he->func)(td, args); if (error != ENOIOCTL) { + mtx_unlock(&Giant); + sx_sunlock(&linux_ioctl_sx); fdrop(fp, td); return (error); } } } + mtx_unlock(&Giant); + sx_sunlock(&linux_ioctl_sx); fdrop(fp, td); linux_msg(td, "ioctl fd=%d, cmd=0x%x ('%c',%d) is not implemented", @@ -2601,6 +2612,7 @@ * Reuse the element if the handler is already on the list, otherwise * create a new element. */ + sx_xlock(&linux_ioctl_sx); TAILQ_FOREACH(he, &handlers, list) { if (he->func == h->func) break; @@ -2621,10 +2633,12 @@ TAILQ_FOREACH(cur, &handlers, list) { if (cur->span > he->span) { TAILQ_INSERT_BEFORE(cur, he, list); + sx_xunlock(&linux_ioctl_sx); return (0); } } TAILQ_INSERT_TAIL(&handlers, he, list); + sx_xunlock(&linux_ioctl_sx); return (0); } @@ -2637,13 +2651,16 @@ if (h == NULL || h->func == NULL) return (EINVAL); + sx_xlock(&linux_ioctl_sx); TAILQ_FOREACH(he, &handlers, list) { if (he->func == h->func) { TAILQ_REMOVE(&handlers, he, list); + sx_xunlock(&linux_ioctl_sx); FREE(he, M_LINUX); return (0); } } + sx_xunlock(&linux_ioctl_sx); return (EINVAL); } ==== //depot/projects/soc2006/intr_filter/compat/linux/linux_ipc.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ipc.c,v 1.47 2006/06/27 18:28:49 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ipc.c,v 1.48 2006/07/08 19:51:37 jhb Exp $"); #include #include @@ -494,6 +494,7 @@ struct l_seminfo linux_seminfo; struct semid_ds semid; union semun semun; + register_t rval; int cmd, error; switch (args->cmd & ~LINUX_IPC_64) { @@ -524,25 +525,25 @@ return (error); linux_to_bsd_semid_ds(&linux_semid, &semid); semun.buf = &semid; - return kern_semctl(td, args->semid, args->semnum, cmd, &semun, - UIO_SYSSPACE); + return (kern_semctl(td, args->semid, args->semnum, cmd, &semun, + td->td_retval)); case LINUX_IPC_STAT: case LINUX_SEM_STAT: - if((args->cmd & ~LINUX_IPC_64) == LINUX_IPC_STAT) + if ((args->cmd & ~LINUX_IPC_64) == LINUX_IPC_STAT) cmd = IPC_STAT; else cmd = SEM_STAT; semun.buf = &semid; error = kern_semctl(td, args->semid, args->semnum, cmd, &semun, - UIO_SYSSPACE); + &rval); if (error) return (error); - td->td_retval[0] = (cmd == SEM_STAT) ? - IXSEQ_TO_IPCID(args->semid, semid.sem_perm) : - 0; bsd_to_linux_semid_ds(&semid, &linux_semid); - return (linux_semid_pushdown(args->cmd & LINUX_IPC_64, - &linux_semid, (caddr_t)PTRIN(args->arg.buf))); + error = linux_semid_pushdown(args->cmd & LINUX_IPC_64, + &linux_semid, (caddr_t)PTRIN(args->arg.buf)); + if (error == 0) + td->td_retval[0] = (cmd == SEM_STAT) ? rval : 0; + return (error); case LINUX_IPC_INFO: case LINUX_SEM_INFO: bcopy(&seminfo, &linux_seminfo, sizeof(linux_seminfo) ); @@ -567,8 +568,8 @@ args->cmd & ~LINUX_IPC_64); return EINVAL; } - return kern_semctl(td, args->semid, args->semnum, cmd, &semun, - UIO_USERSPACE); + return (kern_semctl(td, args->semid, args->semnum, cmd, &semun, + td->td_retval)); } int ==== //depot/projects/soc2006/intr_filter/compat/linux/linux_socket.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.68 2006/05/10 20:38:16 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.69 2006/07/08 20:03:38 jhb Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" @@ -705,9 +705,6 @@ struct sockaddr * __restrict name; socklen_t * __restrict anamelen; } */ bsd_args; - struct close_args /* { - int fd; - } */ c_args; int error, fd; if ((error = copyin(args, &linux_args, sizeof(linux_args)))) @@ -724,8 +721,7 @@ if (linux_args.addr) { error = linux_sa_put(PTRIN(linux_args.addr)); if (error) { - c_args.fd = td->td_retval[0]; - (void)close(td, &c_args); + (void)kern_close(td, td->td_retval[0]); return (error); } } ==== //depot/projects/soc2006/intr_filter/compat/svr4/svr4_ipc.c#3 (text+ko) ==== @@ -71,7 +71,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_ipc.c,v 1.21 2006/06/27 18:31:36 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_ipc.c,v 1.23 2006/07/08 19:51:37 jhb Exp $"); #include "opt_sysvipc.h" @@ -209,6 +209,7 @@ struct svr4_semid_ds ss; struct semid_ds bs; union semun semun; + register_t rval; int cmd, error; switch (uap->cmd) { @@ -244,21 +245,24 @@ cmd = IPC_STAT; semun.buf = &bs; error = kern_semctl(td, uap->semid, uap->semnum, cmd, &semun, - UIO_SYSSPACE); + &rval); if (error) - return error; + return (error); bsd_to_svr4_semid_ds(&bs, &ss); - return copyout(&ss, uap->arg.buf, sizeof(ss)); + error = copyout(&ss, uap->arg.buf, sizeof(ss)); + if (error == 0) + td->td_retval[0] = rval; + return (error); case SVR4_IPC_SET: cmd = IPC_SET; error = copyin(uap->arg.buf, (caddr_t) &ss, sizeof ss); if (error) - return error; + return (error); svr4_to_bsd_semid_ds(&ss, &bs); semun.buf = &bs; - return kern_semctl(td, uap->semid, uap->semnum, cmd, &semun, - UIO_SYSSPACE); + return (kern_semctl(td, uap->semid, uap->semnum, cmd, &semun, + td->td_retval)); case SVR4_IPC_RMID: cmd = IPC_RMID; @@ -268,8 +272,8 @@ return EINVAL; } - return kern_semctl(td, uap->semid, uap->semnum, cmd, &uap->arg, - UIO_USERSPACE); + return (kern_semctl(td, uap->semid, uap->semnum, cmd, &uap->arg, + td->td_retval)); } struct svr4_sys_semget_args { @@ -500,11 +504,7 @@ return (kern_msgctl(td, uap->msqid, IPC_SET, &bs)); case SVR4_IPC_RMID: - error = copyin(uap->buf, &ss, sizeof ss); - if (error) - return error; - svr4_to_bsd_msqid_ds(&ss, &bs); - return (kern_msgctl(td, uap->msqid, IPC_RMID, &bs)); + return (kern_msgctl(td, uap->msqid, IPC_RMID, NULL)); default: return EINVAL; @@ -658,7 +658,6 @@ if (uap->buf != NULL) { switch (uap->cmd) { case SVR4_IPC_SET: - case SVR4_IPC_RMID: case SVR4_SHM_LOCK: case SVR4_SHM_UNLOCK: error = copyin(uap->buf, &ss, sizeof(ss)); ==== //depot/projects/soc2006/intr_filter/conf/NOTES#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1370 2006/06/27 12:45:27 glebius Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1371 2006/07/10 05:25:18 thompsa Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -668,6 +668,7 @@ device pflog #logging support interface for PF device pfsync #synchronization interface for PF device carp #Common Address Redundancy Protocol +device enc #IPSec interface (needs FAST_IPSEC) device ppp #Point-to-point protocol options PPP_BSDCOMP #PPP BSD-compress support options PPP_DEFLATE #PPP zlib/deflate/gzip support ==== //depot/projects/soc2006/intr_filter/conf/files#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1127 2006/06/27 12:45:27 glebius Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1128 2006/07/06 23:37:39 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1329,6 +1329,7 @@ kern/sched_core.c optional sched_core kern/sched_ule.c optional sched_ule kern/serdev_if.m optional puc | scc +kern/subr_acl_posix1e.c standard kern/subr_autoconf.c standard kern/subr_blist.c standard kern/subr_bus.c standard ==== //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/Makefile#2 (text+ko) ==== @@ -15,11 +15,12 @@ CFLAGS = -O $(OTHERCFLAGS) OBJS = uwx_bstream.o uwx_context.o uwx_env.o uwx_scoreboard.o \ - uwx_step.o uwx_str.o uwx_swap.o uwx_trace.o uwx_uinfo.o \ - uwx_utable.o + uwx_step.o uwx_str.o uwx_swap.o uwx_symbols.o \ + uwx_trace.o uwx_uinfo.o uwx_utable.o # SELFOBJS = # For cross-unwind library -SELFOBJS = uwx_self.o uwx_self_context.o uwx_ttrace.o +# SELFOBJS = uwx_self.o uwx_self_context.o uwx_ttrace.o +SELFOBJS = uwx_self.o uwx_self_context.o # SELFLIBS = # For cross-unwind library SELFLIBS = -luca @@ -34,6 +35,9 @@ libuwx.sl: $(OBJS) $(SELFOBJS) ld -b -o libuwx.sl $(OBJS) $(SELFOBJS) $(SELFLIBS) +clean: + rm -f $(OBJS) $(SELFOBJS) libuwx.a libuwx.so libuwx.sl + uwx_bstream.o: uwx.h uwx_env.h uwx_bstream.h uwx_context.o: uwx.h uwx_env.h uwx_scoreboard.h uwx_step.h uwx_trace.h @@ -49,6 +53,8 @@ uwx_swap.o: uwx.h uwx_env.h uwx_swap.h +uwx_symbols.o: uwx.h uwx_env.h uwx_symbols.h + uwx_trace.o: uwx.h uwx_env.h uwx_uinfo.h uwx_scoreboard.h uwx_trace.h uwx_uinfo.o: uwx.h uwx_env.h uwx_uinfo.h uwx_utable.h \ @@ -56,7 +62,8 @@ uwx_utable.o: uwx.h uwx_env.h uwx_utable.h uwx_swap.h uwx_trace.h -uwx_self.o: uwx.h uwx_env.h uwx_context.h uwx_trace.h uwx_self.h +uwx_self.o: uwx.h uwx_env.h uwx_context.h uwx_trace.h uwx_self.h \ + uwx_symbols.h uwx_self_context.o: uwx_self_context.s $(CC) -c $(CFLAGS) -o uwx_self_context.o uwx_self_context.s ==== //depot/projects/soc2006/intr_filter/contrib/ia64/libuwx/src/uwx.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* -Copyright (c) 2003 Hewlett-Packard Development Company, L.P. +Copyright (c) 2003-2006 Hewlett-Packard Development Company, L.P. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without @@ -39,11 +39,14 @@ #define __EXTERN_C extern #endif -#define UWX_VERSION 1 /* Version id for callback interfaces */ +#define UWX_VERSION 3 /* Version id for callback interfaces */ /* Unwind environment structure (opaque) */ struct uwx_env; +/* Symbol Cache for uwx_find_symbol (opaque) */ +struct uwx_symbol_cache; + /* Allocate and free callbacks */ typedef void *(*alloc_cb)(size_t size); typedef void (*free_cb)(void *ptr); @@ -58,6 +61,9 @@ /* Put unwind express into cross-process mode */ __EXTERN_C int uwx_set_remote(struct uwx_env *env, int is_big_endian_target); +/* Put unwind express into reduced-context mode (no floating-point regs) */ +__EXTERN_C int uwx_set_nofr(struct uwx_env *env); + /* Copy-in callback */ typedef int (*copyin_cb)( int request, /* request code (see below) */ @@ -107,6 +113,17 @@ /* Step one frame */ __EXTERN_C int uwx_step(struct uwx_env *env); +/* Get module name and text base, if available, for current frame */ +__EXTERN_C int uwx_get_module_info( + struct uwx_env *env, /* unwind environment */ + char **modp, /* load module name (out) */ + uint64_t *text_base); /* base address of text segment (out) */ + +/* Get function start address for current frame */ +__EXTERN_C int uwx_get_funcstart( + struct uwx_env *env, /* unwind environment */ + uint64_t *funcstart); /* function start address (out) */ + /* Get symbol information, if available, for current frame */ __EXTERN_C int uwx_get_sym_info( struct uwx_env *env, /* unwind environment */ @@ -114,6 +131,22 @@ char **symp, /* function name (out) */ uint64_t *offsetp); /* offset from start of function (out) */ +/* Get symbol information, given module name and IP */ +__EXTERN_C int uwx_find_symbol( + struct uwx_env *env, /* unwind environment */ + struct uwx_symbol_cache **cachep, + /* ptr to symbol cache ptr (in/out) */ + char *mod, /* load module name */ + uint64_t relip, /* IP, relative to text segment */ + char **symp, /* function name (out) */ + uint64_t *offsetp); /* offset from start of function (out) */ + +/* Release memory used by symbol cache */ +__EXTERN_C void uwx_release_symbol_cache( + struct uwx_env *env, /* unwind environment */ + struct uwx_symbol_cache *symbol_cache); + /* symbol cache ptr */ + /* Get the value of a register from the current context */ __EXTERN_C int uwx_get_reg( struct uwx_env *env, /* unwind environment */ @@ -135,6 +168,10 @@ /* Get the ABI context code (if uwx_step returned UWX_ABI_FRAME) */ __EXTERN_C int uwx_get_abi_context_code(struct uwx_env *env); +/* Increment/Decrement the bsp by a number of slots */ +/* (accounts for NaT collections) */ +__EXTERN_C uint64_t uwx_add_to_bsp(uint64_t bsp, int nslots); + /* Return status codes for uwx_ APIs */ #define UWX_OK 0 #define UWX_BOTTOM 1 /* Hit bottom of stack */ @@ -158,6 +195,8 @@ #define UWX_ERR_CANTUNWIND (-17) /* Can't unwind */ #define UWX_ERR_NOCALLBACKS (-18) /* No callbacks registered */ #define UWX_ERR_NOCONTEXT (-19) /* Context not initialized */ +#define UWX_ERR_UCACCESS (-20) /* Failure in libuca */ +#define UWX_ERR_NOSYM (-21) /* Symbol not found */ /* Request codes for copyin callback */ #define UWX_COPYIN_UINFO 1 /* Reading unwind info */ @@ -169,6 +208,7 @@ #define UWX_LKUP_LOOKUP 1 /* Lookup IP */ #define UWX_LKUP_FREE 2 /* Free result vector */ #define UWX_LKUP_SYMBOLS 3 /* Lookup symbolic information */ +#define UWX_LKUP_MODULE 4 /* Get module name */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 10 17:03:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BEF8116A4E0; Mon, 10 Jul 2006 17:03:11 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 4A57B16A4DA for ; Mon, 10 Jul 2006 17:03:11 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E3AFA43D45 for ; Mon, 10 Jul 2006 17:03:10 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AH3A8o007833 for ; Mon, 10 Jul 2006 17:03:10 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AH3A8A007830 for perforce@freebsd.org; Mon, 10 Jul 2006 17:03:10 GMT (envelope-from jhb@freebsd.org) Date: Mon, 10 Jul 2006 17:03:10 GMT Message-Id: <200607101703.k6AH3A8A007830@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101214 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 17:03:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=101214 Change 101214 by jhb@jhb_mutex on 2006/07/10 17:02:52 IFC @101211. Affected files ... .. //depot/projects/smpng/sys/amd64/conf/GENERIC#50 integrate .. //depot/projects/smpng/sys/conf/NOTES#123 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pflog.c#15 integrate .. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#22 integrate .. //depot/projects/smpng/sys/dev/asr/MAINTAINER#4 delete .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#41 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.h#31 integrate .. //depot/projects/smpng/sys/dev/isp/isp_pci.c#37 integrate .. //depot/projects/smpng/sys/dev/isp/isp_sbus.c#14 integrate .. //depot/projects/smpng/sys/dev/ispfw/asm_1040.h#3 integrate .. //depot/projects/smpng/sys/dev/ispfw/asm_1080.h#3 integrate .. //depot/projects/smpng/sys/dev/ispfw/asm_12160.h#5 integrate .. //depot/projects/smpng/sys/dev/ispfw/ispfw.c#13 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.c#31 integrate .. //depot/projects/smpng/sys/i386/conf/GENERIC#80 integrate .. //depot/projects/smpng/sys/i386/conf/PAE#19 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_proto.h#13 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_syscall.h#12 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_sysent.c#14 integrate .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#14 integrate .. //depot/projects/smpng/sys/i386/include/i4b_ioctl.h#11 integrate .. //depot/projects/smpng/sys/i4b/layer4/i4b_l4mgmt.c#8 integrate .. //depot/projects/smpng/sys/ia64/conf/GENERIC#52 integrate .. //depot/projects/smpng/sys/kern/kern_environment.c#22 integrate .. //depot/projects/smpng/sys/kern/subr_hints.c#10 integrate .. //depot/projects/smpng/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/smpng/sys/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/smpng/sys/net/if.c#85 integrate .. //depot/projects/smpng/sys/net/if_bridge.c#32 integrate .. //depot/projects/smpng/sys/net/if_clone.c#10 integrate .. //depot/projects/smpng/sys/net/if_clone.h#4 integrate .. //depot/projects/smpng/sys/net/if_disc.c#23 integrate .. //depot/projects/smpng/sys/net/if_enc.c#4 integrate .. //depot/projects/smpng/sys/net/if_faith.c#32 integrate .. //depot/projects/smpng/sys/net/if_gif.c#35 integrate .. //depot/projects/smpng/sys/net/if_gre.c#31 integrate .. //depot/projects/smpng/sys/net/if_loop.c#40 integrate .. //depot/projects/smpng/sys/net/if_ppp.c#41 integrate .. //depot/projects/smpng/sys/net/if_stf.c#37 integrate .. //depot/projects/smpng/sys/net/if_vlan.c#50 integrate .. //depot/projects/smpng/sys/netinet/ip_carp.c#19 integrate .. //depot/projects/smpng/sys/pc98/conf/GENERIC#64 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/mmu_oea.c#6 integrate .. //depot/projects/smpng/sys/sparc64/conf/GENERIC#71 integrate .. //depot/projects/smpng/sys/sys/sockio.h#12 integrate .. //depot/projects/smpng/sys/sys/systm.h#71 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#87 integrate .. //depot/projects/smpng/sys/vm/vm_meter.c#29 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/conf/GENERIC#50 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.464 2006/07/09 16:39:21 mjacob Exp $ cpu HAMMER ident GENERIC @@ -251,6 +251,7 @@ device md # Memory "disks" device gif # IPv6 and IPv4 tunneling device faith # IPv6-to-IPv4 relaying (translation) +device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! ==== //depot/projects/smpng/sys/conf/NOTES#123 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1370 2006/06/27 12:45:27 glebius Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1371 2006/07/10 05:25:18 thompsa Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -668,6 +668,7 @@ device pflog #logging support interface for PF device pfsync #synchronization interface for PF device carp #Common Address Redundancy Protocol +device enc #IPSec interface (needs FAST_IPSEC) device ppp #Point-to-point protocol options PPP_BSDCOMP #PPP BSD-compress support options PPP_DEFLATE #PPP zlib/deflate/gzip support ==== //depot/projects/smpng/sys/contrib/pf/net/if_pflog.c#15 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/pf/net/if_pflog.c,v 1.19 2006/02/05 17:17:32 mlaier Exp $ */ +/* $FreeBSD: src/sys/contrib/pf/net/if_pflog.c,v 1.20 2006/07/09 06:04:01 sam Exp $ */ /* $OpenBSD: if_pflog.c,v 1.12 2004/05/19 17:50:51 dhartmei Exp $ */ /* @@ -121,7 +121,7 @@ #ifdef __FreeBSD__ static void pflog_clone_destroy(struct ifnet *); -static int pflog_clone_create(struct if_clone *, int); +static int pflog_clone_create(struct if_clone *, int, caddr_t); #else void pflogattach(int); #endif @@ -161,7 +161,11 @@ } static int +#ifdef __FreeBSD__ +pflog_clone_create(struct if_clone *ifc, int unit, caddr_t params) +#else pflog_clone_create(struct if_clone *ifc, int unit) +#endif { struct pflog_softc *sc; struct ifnet *ifp; ==== //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#22 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/pf/net/if_pfsync.c,v 1.29 2006/07/08 00:01:01 mlaier Exp $ */ +/* $FreeBSD: src/sys/contrib/pf/net/if_pfsync.c,v 1.30 2006/07/09 06:04:01 sam Exp $ */ /* $OpenBSD: if_pfsync.c,v 1.46 2005/02/20 15:58:38 mcbride Exp $ */ /* @@ -148,7 +148,7 @@ */ static void pfsync_clone_destroy(struct ifnet *); -static int pfsync_clone_create(struct if_clone *, int); +static int pfsync_clone_create(struct if_clone *, int, caddr_t params); static void pfsync_senddef(void *); #else void pfsyncattach(int); @@ -205,7 +205,11 @@ } static int +#ifdef __FreeBSD__ +pfsync_clone_create(struct if_clone *ifc, int unit, caddr_t params) +#else pfsync_clone_create(struct if_clone *ifc, int unit) +#endif { struct pfsync_softc *sc; struct ifnet *ifp; ==== //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#41 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp_freebsd.c,v 1.117 2006/05/30 17:43:04 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp_freebsd.c,v 1.118 2006/07/09 17:50:17 mjacob Exp $"); #include #include @@ -42,7 +42,6 @@ MODULE_VERSION(isp, 1); MODULE_DEPEND(isp, cam, 1, 1, 1); int isp_announced = 0; -ispfwfunc *isp_get_firmware_p = NULL; static d_ioctl_t ispioctl; static void isp_intr_enable(void *); ==== //depot/projects/smpng/sys/dev/isp/isp_freebsd.h#31 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/isp/isp_freebsd.h,v 1.90 2006/06/03 07:19:44 mjacob Exp $ */ +/* $FreeBSD: src/sys/dev/isp/isp_freebsd.h,v 1.91 2006/07/09 17:50:17 mjacob Exp $ */ /*- * Qlogic ISP SCSI Host Adapter FreeBSD Wrapper Definitions * @@ -97,8 +97,6 @@ #endif #endif -typedef void ispfwfunc(int, int, int, uint16_t **); - #ifdef ISP_TARGET_MODE #define ISP_TARGET_FUNCTIONS 1 #define ATPDPSIZE 256 @@ -155,6 +153,7 @@ intsok : 1, simqfrozen : 3; #if __FreeBSD_version >= 500000 + struct firmware * fw; struct mtx lock; struct cv kthread_cv; #endif ==== //depot/projects/smpng/sys/dev/isp/isp_pci.c#37 (text+ko) ==== @@ -29,15 +29,18 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp_pci.c,v 1.115 2006/07/03 08:24:09 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp_pci.c,v 1.116 2006/07/09 17:50:17 mjacob Exp $"); #include #include #include #include +#if __FreeBSD_version >= 700000 +#include +#include +#endif #include #if __FreeBSD_version < 500000 -#include #include #include #include @@ -72,6 +75,7 @@ static void isp_pci_dmateardown(ispsoftc_t *, XS_T *, uint16_t); + static void isp_pci_reset1(ispsoftc_t *); static void isp_pci_dumpregs(ispsoftc_t *, const char *); @@ -241,6 +245,11 @@ #define PCI_PRODUCT_QLOGIC_ISP6312 0x6312 #endif +#ifndef PCI_PRODUCT_QLOGIC_ISP6322 +#define PCI_PRODUCT_QLOGIC_ISP6322 0x6322 +#endif + + #define PCI_QLOGIC_ISP1020 \ ((PCI_PRODUCT_QLOGIC_ISP1020 << 16) | PCI_VENDOR_QLOGIC) @@ -280,6 +289,9 @@ #define PCI_QLOGIC_ISP6312 \ ((PCI_PRODUCT_QLOGIC_ISP6312 << 16) | PCI_VENDOR_QLOGIC) +#define PCI_QLOGIC_ISP6322 \ + ((PCI_PRODUCT_QLOGIC_ISP6322 << 16) | PCI_VENDOR_QLOGIC) + /* * Odd case for some AMI raid cards... We need to *not* attach to this. */ @@ -306,7 +318,6 @@ bus_dma_tag_t dmat; bus_dmamap_t *dmaps; }; -extern ispfwfunc *isp_get_firmware_p; static device_method_t isp_pci_methods[] = { /* Device interface */ @@ -321,6 +332,13 @@ }; static devclass_t isp_devclass; DRIVER_MODULE(isp, pci, isp_pci_driver, isp_devclass, 0, 0); +#if __FreeBSD_version >= 700000 +MODULE_DEPEND(isp, ispfw, 1, 1, 1); +MODULE_DEPEND(isp, firmware, 1, 1, 1); +#else +typedef void ispfwfunc(int, int, int, uint16_t **); +extern ispfwfunc *isp_get_firmware_p; +#endif static int isp_pci_probe(device_t dev) @@ -368,6 +386,9 @@ case PCI_QLOGIC_ISP6312: device_set_desc(dev, "Qlogic ISP 6312 PCI FC-AL Adapter"); break; + case PCI_QLOGIC_ISP6322: + device_set_desc(dev, "Qlogic ISP 6322 PCI FC-AL Adapter"); + break; default: return (ENXIO); } @@ -848,7 +869,8 @@ pcs->pci_poff[MBOX_BLOCK >> _BLK_REG_SHFT] = PCI_MBOX_REGS2300_OFF; } - if (pci_get_devid(dev) == PCI_QLOGIC_ISP2322) { + if (pci_get_devid(dev) == PCI_QLOGIC_ISP2322 || + pci_get_devid(dev) == PCI_QLOGIC_ISP6322) { mdvp = &mdvec_2300; basetype = ISP_HA_FC_2322; psize = sizeof (fcparam); @@ -873,10 +895,58 @@ isp->isp_revision = pci_get_revid(dev); isp->isp_dev = dev; +#if __FreeBSD_version >= 700000 /* * Try and find firmware for this device. */ + { + char fwname[32]; + unsigned int did = pci_get_device(dev); + /* + * Map a few pci ids to fw names + */ + switch (did) { + case PCI_PRODUCT_QLOGIC_ISP1020: + did = 0x1040; + break; + case PCI_PRODUCT_QLOGIC_ISP1240: + did = 0x1080; + break; + case PCI_PRODUCT_QLOGIC_ISP10160: + case PCI_PRODUCT_QLOGIC_ISP12160: + did = 0x12160; + break; + case PCI_PRODUCT_QLOGIC_ISP6312: + case PCI_PRODUCT_QLOGIC_ISP2312: + did = 0x2300; + break; + case PCI_PRODUCT_QLOGIC_ISP6322: + did = 0x2322; + break; + default: + break; + } + + isp->isp_osinfo.fw = NULL; + if (isp->isp_role & ISP_ROLE_TARGET) { + snprintf(fwname, sizeof (fwname), "isp_%04x_it", did); + isp->isp_osinfo.fw = firmware_get(fwname); + } + if (isp->isp_osinfo.fw == NULL) { + snprintf(fwname, sizeof (fwname), "isp_%04x", did); + isp->isp_osinfo.fw = firmware_get(fwname); + } + if (isp->isp_osinfo.fw != NULL) { + union { + const void *fred; + uint16_t *bob; + } u; + u.fred = isp->isp_osinfo.fw->data; + isp->isp_mdvec->dv_ispfw = u.bob; + } + } +#else if (isp_get_firmware_p) { int device = (int) pci_get_device(dev); #ifdef ISP_TARGET_MODE @@ -885,6 +955,7 @@ (*isp_get_firmware_p)(0, 0, device, &mdvp->dv_ispfw); #endif } +#endif /* * Make sure that SERR, PERR, WRITE INVALIDATE and BUSMASTER @@ -892,9 +963,11 @@ */ cmd |= PCIM_CMD_SEREN | PCIM_CMD_PERRESPEN | PCIM_CMD_BUSMASTEREN | PCIM_CMD_INVEN; + if (IS_2300(isp)) { /* per QLogic errata */ cmd &= ~PCIM_CMD_INVEN; } + if (IS_23XX(isp)) { /* * Can't tell if ROM will hang on 'ABOUT FIRMWARE' command. ==== //depot/projects/smpng/sys/dev/isp/isp_sbus.c#14 (text+ko) ==== @@ -28,10 +28,14 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp_sbus.c,v 1.19 2006/04/21 18:30:01 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp_sbus.c,v 1.20 2006/07/09 17:50:17 mjacob Exp $"); #include #include +#if __FreeBSD_version >= 700000 +#include +#include +#endif #include #include #include @@ -92,7 +96,6 @@ struct resource * sbus_ires; }; -extern ispfwfunc *isp_get_firmware_p; static device_method_t isp_sbus_methods[] = { /* Device interface */ @@ -107,6 +110,12 @@ }; static devclass_t isp_devclass; DRIVER_MODULE(isp, sbus, isp_sbus_driver, isp_devclass, 0, 0); +#if __FreeBSD_version >= 700000 +MODULE_DEPEND(isp, firmware, 1, 1, 1); +#else +typedef void ispfwfunc(int, int, int, uint16_t **); +extern ispfwfunc *isp_get_firmware_p; +#endif static int isp_sbus_probe(device_t dev) @@ -249,13 +258,24 @@ isp->isp_confopts |= ISP_CFG_NONVRAM; +#if __FreeBSD_version >= 700000 + isp->isp_osinfo.fw = firmware_get("isp_1000"); + if (isp->isp_osinfo.fw) { + union { + const void *cp; + uint16_t *sp; + } stupid; + stupid.cp = isp->isp_osinfo.fw->data; + isp->isp_mdvec->dv_ispfw = stupid.sp; + } +#else /* * Try and find firmware for this device. */ - if (isp_get_firmware_p) { (*isp_get_firmware_p)(0, 0, 0x1000, &sbs->sbus_mdvec.dv_ispfw); } +#endif iqd = 0; sbs->sbus_ires = bus_alloc_resource_any(dev, SYS_RES_IRQ, &iqd, ==== //depot/projects/smpng/sys/dev/ispfw/asm_1040.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/ispfw/asm_1040.h,v 1.4 2005/01/06 01:42:49 imp Exp $ */ +/* $FreeBSD: src/sys/dev/ispfw/asm_1040.h,v 1.5 2006/07/09 17:50:17 mjacob Exp $ */ /*- * Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000 Qlogic, Inc. * All rights reserved. @@ -34,6 +34,7 @@ /* * Firmware Version 4.66.00 (14:49 Sep 05, 2000) */ +#ifdef ISP_1040 static const u_int16_t isp_1040_risc_code[] = { 0x0078, 0x1041, 0x0000, 0x2cd0, 0x0000, 0x2043, 0x4f50, 0x5952, 0x4947, 0x4854, 0x2031, 0x3939, 0x312c, 0x3139, 0x3932, 0x2c31, @@ -1470,6 +1471,7 @@ 0x0040, 0x3cc6, 0x20a9, 0x0100, 0x0078, 0x3caf, 0x2009, 0x3d51, 0x200b, 0x3d7f, 0x2009, 0x3d50, 0x200b, 0x0000, 0x007c, 0x4de2 }; +#endif /************************************************************************ * * * --- ISP1040 Initiator/Target Firmware --- * @@ -1479,7 +1481,8 @@ /* * Firmware Version 7.65.00 (14:17 Jul 20, 1999) */ -static const u_int16_t isp_1040_risc_code_it[] = { +#ifdef ISP_1040_IT +static const u_int16_t isp_1040_it_risc_code[] = { 0x0078, 0x103a, 0x0000, 0x4057, 0x0000, 0x2043, 0x4f50, 0x5952, 0x4947, 0x4854, 0x2031, 0x3939, 0x3520, 0x514c, 0x4f47, 0x4943, 0x2043, 0x4f52, 0x504f, 0x5241, 0x5449, 0x4f4e, 0x2049, 0x5350, @@ -3540,3 +3543,4 @@ 0x0014, 0x878e, 0x0016, 0xa21c, 0x1035, 0xa8af, 0xa210, 0x3807, 0x300c, 0x817e, 0x872b, 0x8772, 0xa8a8, 0x0000, 0xdf21 }; +#endif ==== //depot/projects/smpng/sys/dev/ispfw/asm_1080.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/ispfw/asm_1080.h,v 1.3 2005/01/06 01:42:49 imp Exp $ */ +/* $FreeBSD: src/sys/dev/ispfw/asm_1080.h,v 1.4 2006/07/09 17:50:17 mjacob Exp $ */ /*- * Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000 Qlogic, Inc. * All rights reserved. @@ -34,6 +34,7 @@ /* * Firmware Version 8.15.00 (14:35 Aug 22, 2000) */ +#ifdef ISP_1080 static const u_int16_t isp_1080_risc_code[] = { 0x0078, 0x1041, 0x0000, 0x3d3b, 0x0000, 0x2043, 0x4f50, 0x5952, 0x4947, 0x4854, 0x2031, 0x3939, 0x312c, 0x3139, 0x3932, 0x2c31, @@ -1996,6 +1997,7 @@ 0x4cee, 0x7804, 0xd08c, 0x0040, 0x4d37, 0x681f, 0x000c, 0x70a0, 0x70a2, 0x007c, 0x205b }; +#endif /************************************************************************ * * * --- ISP1240/ISP1080/ISP1280 Initiator/Target Firmware --- * @@ -2005,8 +2007,8 @@ /* * Firmware Version 9.11.01 (15:46 May 23, 2000) */ - -static const u_int16_t isp_1080_risc_code_it[] = { +#ifdef ISP_1080_IT +static const u_int16_t isp_1080_it_risc_code[] = { 0x0078, 0x103a, 0x0000, 0x4f62, 0x0000, 0x2043, 0x4f50, 0x5952, 0x4947, 0x4854, 0x2031, 0x3939, 0x3520, 0x514c, 0x4f47, 0x4943, 0x2043, 0x4f52, 0x504f, 0x5241, 0x5449, 0x4f4e, 0x2049, 0x5350, @@ -4549,3 +4551,4 @@ 0xa8bb, 0xa210, 0x3807, 0x300c, 0x817e, 0x872b, 0x8772, 0x0014, 0x0000, 0xd27a }; +#endif ==== //depot/projects/smpng/sys/dev/ispfw/asm_12160.h#5 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/ispfw/asm_12160.h,v 1.6 2005/01/06 01:42:50 imp Exp $ */ +/* $FreeBSD: src/sys/dev/ispfw/asm_12160.h,v 1.7 2006/07/09 17:50:17 mjacob Exp $ */ /*- * Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000 Qlogic, Inc. * All rights reserved. @@ -34,6 +34,7 @@ /* * Firmware Version 10.04.41 (10:30 Mar 21, 2003) */ +#ifdef ISP_12160 static const u_int16_t isp_12160_risc_code[] = { 0x0804, 0x1041, 0x0000, 0x36c9, 0x0000, 0x2043, 0x4f50, 0x5952, 0x4947, 0x4854, 0x2031, 0x3939, 0x312c, 0x3139, 0x3932, 0x2c31, @@ -1790,10 +1791,12 @@ 0x0018, 0x00ce, 0x681f, 0x000c, 0x001e, 0x70a0, 0x70a2, 0x0005, 0x0c28 }; +#endif /* * Firmware Version 11.12.19 (17:10 Oct 25, 2001) */ -static const u_int16_t isp_12160_risc_code_it[] = { +#ifdef ISP_12160_IT +static const u_int16_t isp_12160_it_risc_code[] = { 0x0804, 0x103a, 0x0000, 0x4f4e, 0x0000, 0x2043, 0x4f50, 0x5952, 0x4947, 0x4854, 0x2031, 0x3939, 0x3520, 0x514c, 0x4f47, 0x4943, 0x2043, 0x4f52, 0x504f, 0x5241, 0x5449, 0x4f4e, 0x2049, 0x5350, @@ -4333,3 +4336,4 @@ 0x9521, 0x85a1, 0x806f, 0x9422, 0x84a2, 0x80fd, 0x9405, 0x8485, 0x7021, 0x0014, 0xa300, 0xa8ca, 0x0000, 0x7a3c }; +#endif ==== //depot/projects/smpng/sys/dev/ispfw/ispfw.c#13 (text+ko) ==== @@ -1,7 +1,7 @@ /*- - * ISP Firmware Helper Pseudo Device for FreeBSD + * ISP Firmware Modules for FreeBSD * - * Copyright (c) 2000, 2001, by Matthew Jacob + * Copyright (c) 2000, 2001, 2006 by Matthew Jacob * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -27,158 +27,183 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ispfw/ispfw.c,v 1.16 2006/07/03 08:22:09 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ispfw/ispfw.c,v 1.17 2006/07/09 17:50:18 mjacob Exp $"); #include #include -#include #include +#include +#include +#include +#include +#if defined(ISP_ALL) || !defined(KLD_MODULE) +#define ISP_1040 1 +#define ISP_1040_IT 1 +#define ISP_1080 1 +#define ISP_1080_IT 1 +#define ISP_12160 1 +#define ISP_12160_IT 1 +#define ISP_2100 1 +#define ISP_2200 1 +#define ISP_2300 1 +#define ISP_2322 1 +#ifdef __sparc64__ +#define ISP_1000 1 +#endif +#define MODULE_NAME "isp" +#endif + +#if defined(ISP_1040) || defined(ISP_1040_IT) #include +#endif +#if defined(ISP_1080) || defined(ISP_1080_IT) #include +#endif +#if defined(ISP_12160) || defined(ISP_12160_IT) #include +#endif +#if defined(ISP_2100) #include +#endif +#if defined(ISP_2200) #include +#endif +#if defined(ISP_2300) #include +#endif +#if defined(ISP_2322) #include -#ifdef __sparc64__ +#endif +#if defined(ISP_1000) #include #endif -#define ISPFW_VERSION 0 +#define ISPFW_VERSION 1 +#define RMACRO(token) \ + if (firmware_register(#token, token##_risc_code, \ + token##_risc_code [3] << 1, ISPFW_VERSION, NULL) == NULL) { \ + printf("unable to register firmware '%s'\n", #token); \ + } else { \ + printf("registered firmware set <%s>\n", #token); \ + } -#define PCI_PRODUCT_QLOGIC_ISP1020 0x1020 -#define PCI_PRODUCT_QLOGIC_ISP1080 0x1080 -#define PCI_PRODUCT_QLOGIC_ISP10160 0x1016 -#define PCI_PRODUCT_QLOGIC_ISP12160 0x1216 -#define PCI_PRODUCT_QLOGIC_ISP1240 0x1240 -#define PCI_PRODUCT_QLOGIC_ISP1280 0x1280 -#define PCI_PRODUCT_QLOGIC_ISP2100 0x2100 -#define PCI_PRODUCT_QLOGIC_ISP2200 0x2200 -#define PCI_PRODUCT_QLOGIC_ISP2300 0x2300 -#define PCI_PRODUCT_QLOGIC_ISP2312 0x2312 -#define PCI_PRODUCT_QLOGIC_ISP2322 0x2322 -#define PCI_PRODUCT_QLOGIC_ISP6312 0x6312 -#ifdef __sparc64__ -#define SBUS_PRODUCT_QLOGIC_ISP1000 0x1000 -#endif - -typedef void ispfwfunc(int, int, int, const u_int16_t **); -extern ispfwfunc *isp_get_firmware_p; -static void isp_get_firmware(int, int, int, const u_int16_t **); +#define UMACRO(token) \ + firmware_unregister(#token); \ + printf("unregistered firmware set <%s>\n", #token); -static int ncallers = 0; -static const u_int16_t ***callp = NULL; -static int addcaller(const u_int16_t **); - static int -addcaller(const u_int16_t **caller) +do_load_fw(void) { - const u_int16_t ***newcallp; - int i; - for (i = 0; i < ncallers; i++) { - if (callp[i] == caller) - return (1); - } - newcallp = malloc((ncallers + 1) * sizeof (const u_int16_t ***), - M_DEVBUF, M_NOWAIT); - if (newcallp == NULL) { - return (0); - } - for (i = 0; i < ncallers; i++) { - newcallp[i] = callp[i]; - } - newcallp[ncallers] = caller; - if (ncallers++) - free(callp, M_DEVBUF); - callp = newcallp; - return (1); +#if defined(ISP_1000) + RMACRO(isp_1000); +#endif +#if defined(ISP_1040) + RMACRO(isp_1040); +#endif +#if defined(ISP_1040_IT) + RMACRO(isp_1040_it); +#endif +#if defined(ISP_1080) + RMACRO(isp_1080); +#endif +#if defined(ISP_1080_IT) + RMACRO(isp_1080_it); +#endif +#if defined(ISP_12160) + RMACRO(isp_12160); +#endif +#if defined(ISP_12160_IT) + RMACRO(isp_12160_it); +#endif +#if defined(ISP_2100) + RMACRO(isp_2100); +#endif +#if defined(ISP_2200) + RMACRO(isp_2200); +#endif +#if defined(ISP_2300) + RMACRO(isp_2300); +#endif +#if defined(ISP_2322) + RMACRO(isp_2322); +#endif + return (0); } -static void -isp_get_firmware(int version, int tgtmode, int devid, const u_int16_t **ptrp) +static int +do_unload_fw(void) { - const u_int16_t *rp = NULL; - - if (version == ISPFW_VERSION) { - switch (devid) { - case PCI_PRODUCT_QLOGIC_ISP1020: - if (tgtmode) - rp = isp_1040_risc_code_it; - else - rp = isp_1040_risc_code; - break; - case PCI_PRODUCT_QLOGIC_ISP1080: - case PCI_PRODUCT_QLOGIC_ISP1240: - case PCI_PRODUCT_QLOGIC_ISP1280: - if (tgtmode) - rp = isp_1080_risc_code_it; - else - rp = isp_1080_risc_code; - break; - case PCI_PRODUCT_QLOGIC_ISP10160: - case PCI_PRODUCT_QLOGIC_ISP12160: - if (tgtmode) - rp = isp_12160_risc_code_it; - else - rp = isp_12160_risc_code; - break; - case PCI_PRODUCT_QLOGIC_ISP2100: - rp = isp_2100_risc_code; - break; - case PCI_PRODUCT_QLOGIC_ISP2200: - rp = isp_2200_risc_code; - break; - case PCI_PRODUCT_QLOGIC_ISP2300: - case PCI_PRODUCT_QLOGIC_ISP2312: - case PCI_PRODUCT_QLOGIC_ISP6312: - rp = isp_2300_risc_code; - break; - case PCI_PRODUCT_QLOGIC_ISP2322: - rp = isp_2322_risc_code; - break; -#ifdef __sparc64__ - case SBUS_PRODUCT_QLOGIC_ISP1000: - if (tgtmode) - break; - rp = isp_1000_risc_code; - break; +#if defined(ISP_1000) + UMACRO(isp_1000); +#elif defined(ISP_1040) + UMACRO(isp_1040); +#elif defined(ISP_1040_IT) + UMACRO(isp_1040_it); +#elif defined(ISP_1080) + UMACRO(isp_1080); +#elif defined(ISP_1080_IT) + UMACRO(isp_1080_it); +#elif defined(ISP_12160) + UMACRO(isp_12160); +#elif defined(ISP_12160_IT) + UMACRO(isp_12160_it); +#elif defined(ISP_2100) + UMACRO(isp_2100); +#elif defined(ISP_2200) + UMACRO(isp_2200); +#elif defined(ISP_2300) + UMACRO(isp_2300); +#elif defined(ISP_2322) + UMACRO(isp_2322); #endif - default: - break; - } - } - if (rp && addcaller(ptrp)) { - *ptrp = rp; - } + return (0); } static int -isp_module_handler(module_t mod, int what, void *arg) +module_handler(module_t mod, int what, void *arg) { + int r; switch (what) { case MOD_LOAD: - isp_get_firmware_p = isp_get_firmware; + r = do_load_fw(); break; case MOD_UNLOAD: - isp_get_firmware_p = NULL; - if (ncallers) { - int i; - for (i = 0; i < ncallers; i++) { - *callp[i] = NULL; - } - free(callp, M_DEVBUF); - } + r = do_unload_fw(); break; default: - return (EOPNOTSUPP); + r = EOPNOTSUPP; break; } - return (0); + return (r); } static moduledata_t ispfw_mod = { - "ispfw", isp_module_handler, NULL + MODULE_NAME, module_handler, NULL }; -DECLARE_MODULE(ispfw, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); -MODULE_VERSION(ispfw, ISPFW_VERSION); -MODULE_DEPEND(ispfw, isp, 1, 1, 1); +#ifndef KLD_MODULE +DECLARE_MODULE(isp, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#else +#if defined(ISP_1000) +DECLARE_MODULE(isp_1000, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_1040) +DECLARE_MODULE(isp_1040, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_1040_IT) +DECLARE_MODULE(isp_1040_it, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_1080) +DECLARE_MODULE(isp_1080, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_1080_IT) +DECLARE_MODULE(isp_1080_it, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_12160) +DECLARE_MODULE(isp_12160, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_12160_IT) +DECLARE_MODULE(isp_12160_IT, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_2100) +DECLARE_MODULE(isp_2100, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_2200) +DECLARE_MODULE(isp_2200, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_2300) +DECLARE_MODULE(isp_2300, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#elif defined(ISP_2322) +DECLARE_MODULE(isp_2322, ispfw_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +#endif +#endif ==== //depot/projects/smpng/sys/geom/raid3/g_raid3.c#31 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/raid3/g_raid3.c,v 1.67 2006/07/03 10:32:38 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/raid3/g_raid3.c,v 1.68 2006/07/09 12:25:56 pjd Exp $"); #include #include @@ -71,6 +71,10 @@ TUNABLE_INT("kern.geom.raid3.sync_requests", &g_raid3_syncreqs); SYSCTL_UINT(_kern_geom_raid3, OID_AUTO, sync_requests, CTLFLAG_RDTUN, &g_raid3_syncreqs, 0, "Parallel synchronization I/O requests."); +static u_int g_raid3_use_malloc = 0; +TUNABLE_INT("kern.geom.raid3.use_malloc", &g_raid3_use_malloc); +SYSCTL_UINT(_kern_geom_raid3, OID_AUTO, use_malloc, CTLFLAG_RDTUN, + &g_raid3_use_malloc, 0, "Use malloc(9) instead of uma(9)."); static u_int g_raid3_n64k = 50; TUNABLE_INT("kern.geom.raid3.n64k", &g_raid3_n64k); @@ -175,6 +179,35 @@ return (disk->d_name); } +static void * +g_raid3_alloc(struct g_raid3_softc *sc, size_t size, int flags) +{ + void *ptr; + + if (g_raid3_use_malloc) + ptr = malloc(size, M_RAID3, flags); + else { + ptr = uma_zalloc_arg(sc->sc_zones[g_raid3_zone(size)].sz_zone, + &sc->sc_zones[g_raid3_zone(size)], flags); + sc->sc_zones[g_raid3_zone(size)].sz_requested++; + if (ptr == NULL) + sc->sc_zones[g_raid3_zone(size)].sz_failed++; + } + return (ptr); +} + +static void +g_raid3_free(struct g_raid3_softc *sc, void *ptr, size_t size) +{ + + if (g_raid3_use_malloc) + free(ptr, M_RAID3); + else { + uma_zfree_arg(sc->sc_zones[g_raid3_zone(size)].sz_zone, + ptr, &sc->sc_zones[g_raid3_zone(size)]); + } +} + static int g_raid3_uma_ctor(void *mem, int size, void *arg, int flags) { @@ -610,9 +643,11 @@ G_RAID3_DEBUG(0, "Device %s destroyed.", gp->name); g_wither_geom(gp, ENXIO); g_topology_unlock(); - uma_zdestroy(sc->sc_zones[G_RAID3_ZONE_64K].sz_zone); - uma_zdestroy(sc->sc_zones[G_RAID3_ZONE_16K].sz_zone); - uma_zdestroy(sc->sc_zones[G_RAID3_ZONE_4K].sz_zone); + if (!g_raid3_use_malloc) { + uma_zdestroy(sc->sc_zones[G_RAID3_ZONE_64K].sz_zone); + uma_zdestroy(sc->sc_zones[G_RAID3_ZONE_16K].sz_zone); + uma_zdestroy(sc->sc_zones[G_RAID3_ZONE_4K].sz_zone); + } mtx_destroy(&sc->sc_queue_mtx); mtx_destroy(&sc->sc_events_mtx); sx_xunlock(&sc->sc_lock); @@ -944,9 +979,7 @@ pbp->bio_children--; KASSERT(cbp->bio_data != NULL, ("NULL bio_data")); size = pbp->bio_length / (sc->sc_ndisks - 1); - uma_zfree_arg(sc->sc_zones[g_raid3_zone(size)].sz_zone, - cbp->bio_data, - &sc->sc_zones[g_raid3_zone(size)]); + g_raid3_free(sc, cbp->bio_data, size); if (G_RAID3_HEAD_BIO(pbp) == cbp) { G_RAID3_HEAD_BIO(pbp) = G_RAID3_NEXT_BIO(cbp); G_RAID3_NEXT_BIO(cbp) = NULL; @@ -981,11 +1014,8 @@ memflag = M_WAITOK; else memflag = M_NOWAIT; - cbp->bio_data = uma_zalloc_arg(sc->sc_zones[g_raid3_zone(size)].sz_zone, - &sc->sc_zones[g_raid3_zone(size)], memflag); - sc->sc_zones[g_raid3_zone(size)].sz_requested++; + cbp->bio_data = g_raid3_alloc(sc, size, memflag); if (cbp->bio_data == NULL) { - sc->sc_zones[g_raid3_zone(size)].sz_failed++; pbp->bio_children--; g_destroy_bio(cbp); return (NULL); @@ -3046,33 +3076,40 @@ gp->orphan = g_raid3_orphan; sc->sc_sync.ds_geom = gp; - sc->sc_zones[G_RAID3_ZONE_64K].sz_zone = uma_zcreate("gr3:64k", 65536, - g_raid3_uma_ctor, g_raid3_uma_dtor, NULL, NULL, UMA_ALIGN_PTR, 0); - sc->sc_zones[G_RAID3_ZONE_64K].sz_inuse = 0; - sc->sc_zones[G_RAID3_ZONE_64K].sz_max = g_raid3_n64k; - sc->sc_zones[G_RAID3_ZONE_64K].sz_requested = - sc->sc_zones[G_RAID3_ZONE_64K].sz_failed = 0; - sc->sc_zones[G_RAID3_ZONE_16K].sz_zone = uma_zcreate("gr3:16k", 16384, - g_raid3_uma_ctor, g_raid3_uma_dtor, NULL, NULL, UMA_ALIGN_PTR, 0); - sc->sc_zones[G_RAID3_ZONE_16K].sz_inuse = 0; - sc->sc_zones[G_RAID3_ZONE_16K].sz_max = g_raid3_n16k; - sc->sc_zones[G_RAID3_ZONE_16K].sz_requested = - sc->sc_zones[G_RAID3_ZONE_16K].sz_failed = 0; - sc->sc_zones[G_RAID3_ZONE_4K].sz_zone = uma_zcreate("gr3:4k", 4096, - g_raid3_uma_ctor, g_raid3_uma_dtor, NULL, NULL, UMA_ALIGN_PTR, 0); - sc->sc_zones[G_RAID3_ZONE_4K].sz_inuse = 0; - sc->sc_zones[G_RAID3_ZONE_4K].sz_max = g_raid3_n4k; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jul 10 17:03:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5960F16A4FB; Mon, 10 Jul 2006 17:03:16 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 08D1B16A4F4; Mon, 10 Jul 2006 17:03:16 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3442343D46; Mon, 10 Jul 2006 17:03:15 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k6AH39gX062835; Mon, 10 Jul 2006 13:03:14 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Oleksandr Tymoshenko Date: Mon, 10 Jul 2006 12:23:50 -0400 User-Agent: KMail/1.9.1 References: <200607101131.k6ABV6IS057848@repoman.freebsd.org> In-Reply-To: <200607101131.k6ABV6IS057848@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607101223.51217.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Mon, 10 Jul 2006 13:03:14 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1590/Mon Jul 10 01:34:09 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 101195 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 17:03:16 -0000 On Monday 10 July 2006 07:31, Oleksandr Tymoshenko wrote: > http://perforce.freebsd.org/chv.cgi?CH=101195 > > Change 101195 by gonzo@gonzo_hq on 2006/07/10 11:30:52 > > o Add mips-specific fields to mdthread struct. > > Affected files ... > > .. //depot/projects/mips2/src/sys/mips/include/proc.h#2 edit > > Differences ... > > ==== //depot/projects/mips2/src/sys/mips/include/proc.h#2 (text+ko) ==== > > @@ -37,8 +37,9 @@ > * Machine-dependent part of the proc structure for AMD64. > */ > struct mdthread { > - int md_spinlock_count; /* (k) */ > - register_t md_saved_flags; /* (k) */ > + __register_t md_savecrit; /* critical section saved SR */ > + void *md_regs; /* registers on current frame */ > + int md_flags; /* machine-dependent flags */ > }; You will still need md_spinlock_count, and please call md_savecrit something better like 'md_saved_sr'. The reason for this is that spinlock_enter/exit were added more recently than juli's work. -- John Baldwin From owner-p4-projects@FreeBSD.ORG Mon Jul 10 17:31:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5994316A4E1; Mon, 10 Jul 2006 17:31:46 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 1DD7C16A4DA for ; Mon, 10 Jul 2006 17:31:46 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E0A0543D45 for ; Mon, 10 Jul 2006 17:31:45 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AHVjcg009074 for ; Mon, 10 Jul 2006 17:31:45 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AHVjL9009071 for perforce@freebsd.org; Mon, 10 Jul 2006 17:31:45 GMT (envelope-from gonzo@FreeBSD.org) Date: Mon, 10 Jul 2006 17:31:45 GMT Message-Id: <200607101731.k6AHVjL9009071@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101215 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 17:31:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=101215 Change 101215 by gonzo@gonzo_hq on 2006/07/10 17:30:53 o Add required md_spinlock_count field, reoved in previouse submit. o Renamed md_savecrit to md_saved_sr. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/proc.h#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/proc.h#3 (text+ko) ==== @@ -37,9 +37,10 @@ * Machine-dependent part of the proc structure for AMD64. */ struct mdthread { - __register_t md_savecrit; /* critical section saved SR */ + int md_flags; /* machine-dependent flags */ void *md_regs; /* registers on current frame */ - int md_flags; /* machine-dependent flags */ + __register_t md_saved_sr; /* critical section saved SR */ + int md_spinlock_count; }; struct mdproc { From owner-p4-projects@FreeBSD.ORG Mon Jul 10 18:47:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D0B7916A4E5; Mon, 10 Jul 2006 18:47:28 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 7D37416A4E2 for ; Mon, 10 Jul 2006 18:47:28 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 33FCF43D53 for ; Mon, 10 Jul 2006 18:47:28 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AIlSST054071 for ; Mon, 10 Jul 2006 18:47:28 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AIlRZw054068 for perforce@freebsd.org; Mon, 10 Jul 2006 18:47:27 GMT (envelope-from wkoszek@FreeBSD.org) Date: Mon, 10 Jul 2006 18:47:27 GMT Message-Id: <200607101847.k6AIlRZw054068@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101226 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 18:47:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101226 Change 101226 by wkoszek@wkoszek_laptop on 2006/07/10 18:46:28 Call cninit() before mips_init() in machdep.c, since we want to have printf() in the last one. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#12 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#12 (text+ko) ==== @@ -101,8 +101,9 @@ /* * This is from pmap.c. */ +#if 0 pmap_bootstrap(); - +#endif /* * XXXMIPS: Change this once I'll make sure pagetables are working * correctly. @@ -359,8 +360,8 @@ MALTA_PUTCHAR(5, 'S'); MALTA_PUTCHAR(6, 'D'); + cninit(); mips_init(); - cninit(); } void setPQL2(int *const size, int *const ways); From owner-p4-projects@FreeBSD.ORG Mon Jul 10 21:21:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3A0C416A4E6; Mon, 10 Jul 2006 21:21:48 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 0064816A4DE for ; Mon, 10 Jul 2006 21:21:47 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E805943D62 for ; Mon, 10 Jul 2006 21:21:44 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ALLiIQ084468 for ; Mon, 10 Jul 2006 21:21:44 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ALLi0R084465 for perforce@freebsd.org; Mon, 10 Jul 2006 21:21:44 GMT (envelope-from jhb@freebsd.org) Date: Mon, 10 Jul 2006 21:21:44 GMT Message-Id: <200607102121.k6ALLi0R084465@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101238 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 21:21:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=101238 Change 101238 by jhb@jhb_mutex on 2006/07/10 21:20:46 IFC @101232 - loopback. Affected files ... .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#41 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_util.h#9 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#18 integrate .. //depot/projects/smpng/sys/i386/ibcs2/imgact_coff.c#22 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#79 integrate .. //depot/projects/smpng/sys/security/mac_biba/mac_biba.c#39 integrate Differences ... ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#41 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.55 2006/06/08 18:33:08 ps Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.56 2006/07/10 19:37:43 jhb Exp $"); #include "opt_compat.h" ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_util.h#9 (text+ko) ==== @@ -29,7 +29,7 @@ * from: svr4_util.h,v 1.5 1994/11/18 02:54:31 christos Exp * from: linux_util.h,v 1.2 1995/03/05 23:23:50 fvdl Exp * - * $FreeBSD: src/sys/i386/ibcs2/ibcs2_util.h,v 1.19 2005/02/07 22:02:18 jhb Exp $ + * $FreeBSD: src/sys/i386/ibcs2/ibcs2_util.h,v 1.20 2006/07/10 17:59:26 jhb Exp $ */ /* ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.c#18 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/ibcs2/ibcs2_xenix.c,v 1.37 2006/07/08 20:12:13 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/ibcs2/ibcs2_xenix.c,v 1.38 2006/07/10 17:59:26 jhb Exp $"); #include #include ==== //depot/projects/smpng/sys/i386/ibcs2/imgact_coff.c#22 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/ibcs2/imgact_coff.c,v 1.65 2005/04/27 09:05:19 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/ibcs2/imgact_coff.c,v 1.66 2006/07/10 17:59:26 jhb Exp $"); #include #include ==== //depot/projects/smpng/sys/kern/kern_linker.c#79 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.139 2006/07/06 21:39:39 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.142 2006/07/10 19:28:57 jhb Exp $"); #include "opt_ddb.h" #include "opt_hwpmc_hooks.h" @@ -620,9 +620,8 @@ free(file->deps, M_LINKER); file->deps = NULL; } - for (cp = STAILQ_FIRST(&file->common); cp; - cp = STAILQ_FIRST(&file->common)) { - STAILQ_REMOVE(&file->common, cp, common_symbol, link); + while ((cp = STAILQ_FIRST(&file->common)) != NULL) { + STAILQ_REMOVE_HEAD(&file->common, link); free(cp, M_LINKER); } @@ -1274,7 +1273,7 @@ caddr_t modptr; const char *modname, *nmodname; char *modtype; - linker_file_t lf; + linker_file_t lf, nlf; linker_class_t lc; int error; linker_file_list_t loaded_files; @@ -1384,10 +1383,10 @@ nver) != NULL) { printf("module %s already" " present!\n", modname); + TAILQ_REMOVE(&loaded_files, + lf, loaded); linker_file_unload(lf, LINKER_UNLOAD_FORCE); - TAILQ_REMOVE(&loaded_files, - lf, loaded); /* we changed tailq next ptr */ goto restart; } @@ -1409,16 +1408,16 @@ /* * At this point, we check to see what could not be resolved.. */ - TAILQ_FOREACH(lf, &loaded_files, loaded) { + while ((lf = TAILQ_FIRST(&loaded_files)) != NULL) { + TAILQ_REMOVE(&loaded_files, lf, loaded); printf("KLD file %s is missing dependencies\n", lf->filename); linker_file_unload(lf, LINKER_UNLOAD_FORCE); - TAILQ_REMOVE(&loaded_files, lf, loaded); } /* * We made it. Finish off the linking in the order we determined. */ - TAILQ_FOREACH(lf, &depended_files, loaded) { + TAILQ_FOREACH_SAFE(lf, &depended_files, loaded, nlf) { if (linker_kernel_file) { linker_kernel_file->refs++; error = linker_file_add_dependency(lf, @@ -1453,6 +1452,7 @@ */ error = LINKER_LINK_PRELOAD_FINISH(lf); if (error) { + TAILQ_REMOVE(&depended_files, lf, loaded); printf("KLD file %s - could not finalize loading\n", lf->filename); linker_file_unload(lf, LINKER_UNLOAD_FORCE); ==== //depot/projects/smpng/sys/security/mac_biba/mac_biba.c#39 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/mac_biba/mac_biba.c,v 1.91 2005/12/31 05:06:59 csjp Exp $ + * $FreeBSD: src/sys/security/mac_biba/mac_biba.c,v 1.92 2006/07/10 19:13:32 csjp Exp $ */ /* @@ -3019,6 +3019,18 @@ return (0); } +static int +mac_biba_associate_nfsd_label(struct ucred *cred) +{ + struct mac_biba *label; + + label = SLOT(cred->cr_label); + mac_biba_set_effective(label, MAC_BIBA_TYPE_LOW, 0, NULL); + mac_biba_set_range(label, MAC_BIBA_TYPE_LOW, 0, NULL, + MAC_BIBA_TYPE_HIGH, 0, NULL); + return (0); +} + static struct mac_policy_ops mac_biba_ops = { .mpo_init = mac_biba_init, @@ -3198,6 +3210,7 @@ .mpo_check_vnode_setutimes = mac_biba_check_vnode_setutimes, .mpo_check_vnode_stat = mac_biba_check_vnode_stat, .mpo_check_vnode_write = mac_biba_check_vnode_write, + .mpo_associate_nfsd_label = mac_biba_associate_nfsd_label, }; MAC_POLICY_SET(&mac_biba_ops, mac_biba, "TrustedBSD MAC/Biba", From owner-p4-projects@FreeBSD.ORG Mon Jul 10 21:38:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 83DC516A4DF; Mon, 10 Jul 2006 21:38:06 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 44BEC16A4DA for ; Mon, 10 Jul 2006 21:38:06 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EA0DF43D49 for ; Mon, 10 Jul 2006 21:38:05 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ALc5PQ085128 for ; Mon, 10 Jul 2006 21:38:05 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ALc50l085125 for perforce@freebsd.org; Mon, 10 Jul 2006 21:38:05 GMT (envelope-from imp@freebsd.org) Date: Mon, 10 Jul 2006 21:38:05 GMT Message-Id: <200607102138.k6ALc50l085125@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101241 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 21:38:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=101241 Change 101241 by imp@imp_lighthouse on 2006/07/10 21:37:21 First cut, and a rough one at that, at allowing hints to have a dual meaning. The traditional "I claim there's a device here" as well as "If you find a device here, prefer this device mapping, if you please." We create a function to ask the bus if there's a better unit number for this device than the one we're trying, if the device has a wildcarded unit number. Affected files ... .. //depot/projects/arm/src/sys/kern/bus_if.m#3 edit .. //depot/projects/arm/src/sys/kern/subr_bus.c#11 edit Differences ... ==== //depot/projects/arm/src/sys/kern/bus_if.m#3 (text+ko) ==== @@ -529,3 +529,20 @@ const char * _dname; int _dunit; }; + +/** + * @brief Asks the bus to give us a hand hinting this device. + * + * Before we probe a child of a bus that's been wildcarded, we call the + * bus to see if there's any 'hints' as to unit number for the child + * presented for this kind of device. + * + * @param _dev the bus device + * @param _child child to hint + * @param _dunit the unit number of the device + */ +METHOD void hint_device_unit { + device_t _dev; + device_t _child; + int *_dunit; +}; ==== //depot/projects/arm/src/sys/kern/subr_bus.c#11 (text+ko) ==== @@ -1697,10 +1697,10 @@ int device_probe_child(device_t dev, device_t child) { - devclass_t dc; + devclass_t dc, childdc; driverlink_t best = 0; driverlink_t dl; - int result, pri = 0; + int unit, result, pri = 0; int hasclass = (child->devclass != 0); GIANT_REQUIRED; @@ -1724,7 +1724,18 @@ device_set_driver(child, dl->driver); if (!hasclass) device_set_devclass(child, dl->driver->name); - + if (child->flags & DF_WILDCARD) { + unit = child->unit; + BUS_HINT_DEVICE_UNIT(dev, child, &unit); + if (unit != child->unit) { + childdc = child->devclass; + devclass_delete_device(childdc, child); + if (childdc->devices[unit] != NULL) + continue; + child->unit = unit; + devclass_add_device(childdc, child); + } + } /* Fetch any flags for the device before probing. */ resource_int_value(dl->driver->name, child->unit, "flags", &child->devflags); From owner-p4-projects@FreeBSD.ORG Mon Jul 10 22:50:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B29E16A4DF; Mon, 10 Jul 2006 22:50:02 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 69A7316A4DD for ; Mon, 10 Jul 2006 22:50:02 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 01FD343D6D for ; Mon, 10 Jul 2006 22:49:39 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AMncLl090641 for ; Mon, 10 Jul 2006 22:49:38 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AMncuw090638 for perforce@freebsd.org; Mon, 10 Jul 2006 22:49:38 GMT (envelope-from imp@freebsd.org) Date: Mon, 10 Jul 2006 22:49:38 GMT Message-Id: <200607102249.k6AMncuw090638@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101247 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 22:50:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=101247 Change 101247 by imp@imp_lighthouse on 2006/07/10 22:49:21 May need to adjust the unit twice. Once in the main loop and again later since this might not be a pri = 0. Affected files ... .. //depot/projects/arm/src/sys/kern/subr_bus.c#12 edit Differences ... ==== //depot/projects/arm/src/sys/kern/subr_bus.c#12 (text+ko) ==== @@ -1815,6 +1815,16 @@ if (!child->devclass) device_set_devclass(child, best->driver->name); device_set_driver(child, best->driver); + if (child->flags & DF_WILDCARD) { + unit = child->unit; + BUS_HINT_DEVICE_UNIT(dev, child, &unit); + if (unit != child->unit) { + childdc = child->devclass; + devclass_delete_device(childdc, child); + child->unit = unit; + devclass_add_device(childdc, child); + } + } resource_int_value(best->driver->name, child->unit, "flags", &child->devflags); From owner-p4-projects@FreeBSD.ORG Mon Jul 10 22:51:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7AC2B16A4E1; Mon, 10 Jul 2006 22:51:42 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 55C8916A4DD for ; Mon, 10 Jul 2006 22:51:42 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 216A243D73 for ; Mon, 10 Jul 2006 22:51:42 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AMpfC6090944 for ; Mon, 10 Jul 2006 22:51:42 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AMpfhH090941 for perforce@freebsd.org; Mon, 10 Jul 2006 22:51:41 GMT (envelope-from imp@freebsd.org) Date: Mon, 10 Jul 2006 22:51:41 GMT Message-Id: <200607102251.k6AMpfhH090941@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101248 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 22:51:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=101248 Change 101248 by imp@imp_lighthouse on 2006/07/10 22:50:49 Allow device units to be hard wired on the pci bus. rl1: port 0xa000:0x100 mem 0xc020a400:0x100 irq 22 at device 6.0 on pci6 (and no rl0) from the following lines: hint.rl.1.at="pci" hint.rl.1.location="6:6:0" Affected files ... .. //depot/projects/arm/src/sys/dev/pci/pci.c#9 edit Differences ... ==== //depot/projects/arm/src/sys/dev/pci/pci.c#9 (text+ko) ==== @@ -90,6 +90,8 @@ static void pci_hdrtypedata(device_t pcib, int b, int s, int f, pcicfgregs *cfg); static void pci_read_extcap(device_t pcib, pcicfgregs *cfg); +static void pci_hint_device_unit(device_t bus, device_t child, + int *unit); static device_method_t pci_methods[] = { /* Device interface */ @@ -119,6 +121,7 @@ DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource), DEVMETHOD(bus_child_pnpinfo_str, pci_child_pnpinfo_str_method), DEVMETHOD(bus_child_location_str, pci_child_location_str_method), + DEVMETHOD(bus_hint_device_unit, pci_hint_device_unit), /* PCI interface */ DEVMETHOD(pci_read_config, pci_read_config_method), @@ -1999,6 +2002,23 @@ return (0); } +void +pci_hint_device_unit(device_t bus, device_t child, int *unit) +{ + struct pci_devinfo *dinfo; + pcicfgregs *cfg; + int i; + char buf[10]; + + dinfo = device_get_ivars(child); + cfg = &dinfo->cfg; + i = 0; + snprintf(buf, sizeof(buf), "%d:%d:%d", cfg->bus, cfg->slot, cfg->func); + resource_find_dev(&i, device_get_name(child), unit, "location", buf); + device_printf(bus, "%s now %d\n", device_get_nameunit(child), *unit); + return; +} + int pci_assign_interrupt_method(device_t dev, device_t child) { From owner-p4-projects@FreeBSD.ORG Mon Jul 10 23:02:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A6F5B16A4DF; Mon, 10 Jul 2006 23:02:56 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8378516A4DD for ; Mon, 10 Jul 2006 23:02:56 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5274D43D45 for ; Mon, 10 Jul 2006 23:02:56 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6AN2uAZ092189 for ; Mon, 10 Jul 2006 23:02:56 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6AN2tRH092184 for perforce@freebsd.org; Mon, 10 Jul 2006 23:02:55 GMT (envelope-from imp@freebsd.org) Date: Mon, 10 Jul 2006 23:02:55 GMT Message-Id: <200607102302.k6AN2tRH092184@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101249 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 23:02:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=101249 Change 101249 by imp@imp_lighthouse on 2006/07/10 23:02:29 Polish. We can implement wiring here in about 8 lines of code. Affected files ... .. //depot/projects/arm/src/sys/dev/pci/pci.c#10 edit Differences ... ==== //depot/projects/arm/src/sys/dev/pci/pci.c#10 (text+ko) ==== @@ -2005,17 +2005,15 @@ void pci_hint_device_unit(device_t bus, device_t child, int *unit) { - struct pci_devinfo *dinfo; - pcicfgregs *cfg; + struct pci_devinfo *dinfo = device_get_ivars(child); int i; char buf[10]; - dinfo = device_get_ivars(child); - cfg = &dinfo->cfg; + snprintf(buf, sizeof(buf), "%d:%d:%d", dinfo->cfg.bus, dinfo->cfg.slot, + dinfo->cfg.func); i = 0; - snprintf(buf, sizeof(buf), "%d:%d:%d", cfg->bus, cfg->slot, cfg->func); resource_find_dev(&i, device_get_name(child), unit, "location", buf); - device_printf(bus, "%s now %d\n", device_get_nameunit(child), *unit); + return; } From owner-p4-projects@FreeBSD.ORG Mon Jul 10 23:34:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7D7D216A4E1; Mon, 10 Jul 2006 23:34:36 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 5A93A16A4DE for ; Mon, 10 Jul 2006 23:34:36 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ECCFA43D53 for ; Mon, 10 Jul 2006 23:34:35 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ANYZAu098591 for ; Mon, 10 Jul 2006 23:34:35 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ANYZdv098588 for perforce@freebsd.org; Mon, 10 Jul 2006 23:34:35 GMT (envelope-from imp@freebsd.org) Date: Mon, 10 Jul 2006 23:34:35 GMT Message-Id: <200607102334.k6ANYZdv098588@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101251 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Jul 2006 23:34:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=101251 Change 101251 by imp@imp_lighthouse on 2006/07/10 23:33:46 Implement bus_hint_device_unit for ACPI too, to kill the dreaded sio1 binding to COMA problem. Untested, but with the default device.hints, we should now do the right (== bind sio by port addresses) thing. This could also be extended to allow binding to acpi locations as well, but this is supposed to just be PoC. Affected files ... .. //depot/projects/arm/src/sys/dev/acpica/acpi.c#11 edit Differences ... ==== //depot/projects/arm/src/sys/dev/acpica/acpi.c#11 (text+ko) ==== @@ -149,9 +149,10 @@ static int acpi_sleep_state_sysctl(SYSCTL_HANDLER_ARGS); static int acpi_pm_func(u_long cmd, void *arg, ...); static int acpi_child_location_str_method(device_t acdev, device_t child, - char *buf, size_t buflen); + char *buf, size_t buflen); static int acpi_child_pnpinfo_str_method(device_t acdev, device_t child, - char *buf, size_t buflen); + char *buf, size_t buflen); +static void acpi_hint_device_unit(device_t bus, device_t child, int *unit); static device_method_t acpi_methods[] = { /* Device interface */ @@ -182,6 +183,7 @@ DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource), DEVMETHOD(bus_setup_intr, bus_generic_setup_intr), DEVMETHOD(bus_teardown_intr, bus_generic_teardown_intr), + DEVMETHOD(bus_hint_device_unit, acpi_hint_device_unit), /* ACPI bus */ DEVMETHOD(acpi_id_probe, acpi_device_id_probe), @@ -811,6 +813,29 @@ return (0); } +static void +acpi_hint_device_unit(device_t bus, device_t child, int *unit) +{ + int i; + char buf[10]; + char *kind = NULL; + u_long start, len; + + if (bus_get_resource(child, SYS_RES_IOPORT, 0, &start, &len) == 0) + kind = "port"; + else if (bus_get_resource(child, SYS_RES_MEMORY, 0, &start, &len) == 0) + kind = "maddr"; + if (kind == NULL) + return; + snprintf(buf, sizeof(buf), "0x%lx", start); + i = 0; + resource_find_dev(&i, device_get_name(child), unit, kind, buf); + // NOTE: We eat units on ANY bus, not just acpi because acpi + // should be a specialization of isa, but isn't atm. + return; +} + + /* * Handle per-device ivars */ From owner-p4-projects@FreeBSD.ORG Tue Jul 11 00:07:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2302516A4E6; Tue, 11 Jul 2006 00:07:17 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 018BE16A4E2 for ; Tue, 11 Jul 2006 00:07:17 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B3FC743D46 for ; Tue, 11 Jul 2006 00:07:16 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6B07GeY001820 for ; Tue, 11 Jul 2006 00:07:16 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6B07GIe001816 for perforce@freebsd.org; Tue, 11 Jul 2006 00:07:16 GMT (envelope-from wsalamon@computer.org) Date: Tue, 11 Jul 2006 00:07:16 GMT Message-Id: <200607110007.k6B07GIe001816@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 101254 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 00:07:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=101254 Change 101254 by wsalamon@vh3 on 2006/07/11 00:07:01 Change the au_to_exec_* function prototypes, removing the 'const' modifier, adding the argument names. Also define KERNEL and user space versions of these functions. Fix up man page to match above. Fix name of exec argument for env in token printer. Affected files ... .. //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#21 edit .. //depot/projects/trustedbsd/openbsm/libbsm/au_token.3#8 edit .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_io.c#38 edit .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#49 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#21 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#20 $ + * $P4: //depot/projects/trustedbsd/openbsm/bsm/audit_record.h#21 $ */ #ifndef _BSM_AUDIT_RECORD_H_ @@ -308,8 +308,13 @@ gid_t rgid, pid_t pid, au_asid_t sid, au_tid_addr_t *tid); token_t *au_to_subject64_ex(au_id_t auid, uid_t euid, gid_t egid, uid_t ruid, gid_t rgid, pid_t pid, au_asid_t sid, au_tid_addr_t *tid); -token_t *au_to_exec_args(const char **); -token_t *au_to_exec_env(const char **); +#if defined(_KERNEL) || defined(KERNEL) +token_t *au_to_exec_args(char *args, int argc); +token_t *au_to_exec_env(char *envs, int envc); +#else +token_t *au_to_exec_args(char **argv); +token_t *au_to_exec_env(char **envp); +#endif token_t *au_to_text(char *text); token_t *au_to_kevent(struct kevent *kev); token_t *au_to_trailer(int rec_size); ==== //depot/projects/trustedbsd/openbsm/libbsm/au_token.3#8 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $P4: //depot/projects/trustedbsd/openbsm/libbsm/au_token.3#7 $ +.\" $P4: //depot/projects/trustedbsd/openbsm/libbsm/au_token.3#8 $ .\" .Dd April 19, 2005 .Dt AU_TOKEN 3 @@ -155,9 +155,9 @@ .Ft token_t * .Fn au_to_me "void" .Ft token_t * -.Fn au_to_exec_args "const char **args" +.Fn au_to_exec_args "char **argv" .Ft token_t * -.Fn au_to_exec_env "const char **env" +.Fn au_to_exec_env "char **envp" .Ft token_t * .Fn au_to_header "int rec_size" "au_event_t e_type" "au_emod_t emod" .Ft token_t * ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_io.c#38 (text+ko) ==== @@ -31,7 +31,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_io.c#37 $ + * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_io.c#38 $ */ #include @@ -1259,7 +1259,7 @@ { int i; - print_tok_type(fp, tok->id, "exec arg", raw); + print_tok_type(fp, tok->id, "exec env", raw); for (i = 0; i< tok->tt.execenv.count; i++) { print_delim(fp, del); print_string(fp, tok->tt.execenv.text[i], ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#49 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#48 $ + * $P4: //depot/projects/trustedbsd/openbsm/libbsm/bsm_token.c#49 $ */ #include @@ -1055,7 +1055,7 @@ * text count null-terminated strings */ token_t * -au_to_exec_args(const char **args) +au_to_exec_args(char **argv) { token_t *t; u_char *dptr = NULL; @@ -1063,7 +1063,7 @@ int i, count = 0; size_t totlen = 0; - nextarg = *args; + nextarg = *argv; while (nextarg != NULL) { int nextlen; @@ -1071,7 +1071,7 @@ nextlen = strlen(nextarg); totlen += nextlen + 1; count++; - nextarg = *(args + count); + nextarg = *(argv + count); } totlen += count * sizeof(char); /* nul terminations. */ @@ -1083,7 +1083,7 @@ ADD_U_INT32(dptr, count); for (i = 0; i < count; i++) { - nextarg = *(args + i); + nextarg = *(argv + i); ADD_MEM(dptr, nextarg, strlen(nextarg) + 1); } @@ -1096,7 +1096,7 @@ * text count null-terminated strings */ token_t * -au_to_exec_env(const char **env) +au_to_exec_env(char **envp) { token_t *t; u_char *dptr = NULL; @@ -1104,7 +1104,7 @@ size_t totlen = 0; const char *nextenv; - nextenv = *env; + nextenv = *envp; while (nextenv != NULL) { int nextlen; @@ -1112,7 +1112,7 @@ nextlen = strlen(nextenv); totlen += nextlen + 1; count++; - nextenv = *(env + count); + nextenv = *(envp + count); } totlen += sizeof(char) * count; @@ -1124,7 +1124,7 @@ ADD_U_INT32(dptr, count); for (i = 0; i < count; i++) { - nextenv = *(env + i); + nextenv = *(envp + i); ADD_MEM(dptr, nextenv, strlen(nextenv) + 1); } From owner-p4-projects@FreeBSD.ORG Tue Jul 11 00:13:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1F99F16A4E0; Tue, 11 Jul 2006 00:13:25 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 EAA2216A4DA for ; Tue, 11 Jul 2006 00:13:24 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B795843D45 for ; Tue, 11 Jul 2006 00:13:24 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6B0DOeE002175 for ; Tue, 11 Jul 2006 00:13:24 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6B0DOx5002172 for perforce@freebsd.org; Tue, 11 Jul 2006 00:13:24 GMT (envelope-from wsalamon@computer.org) Date: Tue, 11 Jul 2006 00:13:24 GMT Message-Id: <200607110013.k6B0DOx5002172@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 101255 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 00:13:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=101255 Change 101255 by wsalamon@vh3 on 2006/07/11 00:12:51 Updated with recent changes to argv and env tokenizer changes. Affected files ... .. //depot/projects/trustedbsd/openbsm/HISTORY#19 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/HISTORY#19 (text+ko) ==== @@ -2,6 +2,9 @@ - Correct typo in definition of AUR_INT. - Adopt OpenSolaris constant values for AUDIT_* configuration flags. +- Arguments to au_to_exec_args() and au_to_exec_env() no longer const. +- Add kernel versions of au_to_exec_args() and au_to_exec_env(). +- Fix exec argument type that is printed for env strings from 'arg' to 'env'. OpenBSM 1.0 alpha 7 @@ -180,4 +183,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/openbsm/HISTORY#18 $ +$P4: //depot/projects/trustedbsd/openbsm/HISTORY#19 $ From owner-p4-projects@FreeBSD.ORG Tue Jul 11 00:36:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 05B5116A4E1; Tue, 11 Jul 2006 00:36:55 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 B6FA916A4DF for ; Tue, 11 Jul 2006 00:36:54 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 684B643D4C for ; Tue, 11 Jul 2006 00:36:54 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6B0asDR003953 for ; Tue, 11 Jul 2006 00:36:54 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6B0arkX003939 for perforce@freebsd.org; Tue, 11 Jul 2006 00:36:53 GMT (envelope-from wsalamon@computer.org) Date: Tue, 11 Jul 2006 00:36:53 GMT Message-Id: <200607110036.k6B0arkX003939@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 101256 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 00:36:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=101256 Change 101256 by wsalamon@vh3 on 2006/07/11 00:36:25 Integrate latest OpenBSM changes into contrib. Affected files ... .. //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/VERSION#10 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit.h#13 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#12 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#8 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/au_token.3#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#15 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#18 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#7 (text+ko) ==== @@ -1,3 +1,11 @@ +OpenBSM 1.0 alpha 8 + +- Correct typo in definition of AUR_INT. +- Adopt OpenSolaris constant values for AUDIT_* configuration flags. +- Arguments to au_to_exec_args() and au_to_exec_env() no longer const. +- Add kernel versions of au_to_exec_args() and au_to_exec_env(). +- Fix exec argument type that is printed for env strings from 'arg' to 'env'. + OpenBSM 1.0 alpha 7 - Adopted Solaris-compatible format for subject32_ex and subject64_ex @@ -175,4 +183,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#6 $ +$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#7 $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/VERSION#10 (text+ko) ==== @@ -1,1 +1,1 @@ -OPENBSM_1_0_ALPHA_7 +OPENBSM_1_0_ALPHA_8 ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit.h#13 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit.h#12 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit.h#13 $ */ #ifndef _BSM_AUDIT_H @@ -146,6 +146,7 @@ /* * Audit policy controls. */ +#ifdef OLD_WORLD_ORDER #define AUDIT_CNT 0x0001 #define AUDIT_AHLT 0x0002 #define AUDIT_ARGV 0x0004 @@ -157,6 +158,22 @@ #define AUDIT_GROUP 0x0100 #define AUDIT_TRAIL 0x0200 #define AUDIT_PATH 0x0400 +#else /* !OLD_WORLD_ORDER */ +#define AUDIT_CNT 0x0001 +#define AUDIT_AHLT 0x0002 +#define AUDIT_ARGV 0x0004 +#define AUDIT_ARGE 0x0008 +#define AUDIT_SEQ 0x0010 +#define AUDIT_WINDATA 0x0020 +#define AUDIT_USER 0x0040 +#define AUDIT_GROUP 0x0080 +#define AUDIT_TRAIL 0x0100 +#define AUDIT_PATH 0x0200 +#define AUDIT_SCNT 0x0400 +#define AUDIT_PUBLIC 0x0800 +#define AUDIT_ZONENAME 0x1000 +#define AUDIT_PERZONE 0x2000 +#endif /* !OLD_WORLD_ORDER */ /* * Audit queue control parameters ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#12 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#11 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#12 $ */ #ifndef _BSM_AUDIT_RECORD_H_ @@ -184,7 +184,7 @@ #define AUR_CHAR AUR_BYTE #define AUR_SHORT 1 #define AUR_INT32 2 -#define AUR_INT AUR_INT +#define AUR_INT AUR_INT32 #define AUR_INT64 3 /* ... and their sizes */ @@ -308,8 +308,13 @@ gid_t rgid, pid_t pid, au_asid_t sid, au_tid_addr_t *tid); token_t *au_to_subject64_ex(au_id_t auid, uid_t euid, gid_t egid, uid_t ruid, gid_t rgid, pid_t pid, au_asid_t sid, au_tid_addr_t *tid); -token_t *au_to_exec_args(const char **); -token_t *au_to_exec_env(const char **); +#if defined(_KERNEL) || defined(KERNEL) +token_t *au_to_exec_args(char *args, int argc); +token_t *au_to_exec_env(char *envs, int envc); +#else +token_t *au_to_exec_args(char **argv); +token_t *au_to_exec_env(char **envp); +#endif token_t *au_to_text(char *text); token_t *au_to_kevent(struct kevent *kev); token_t *au_to_trailer(int rec_size); ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#8 (text+ko) ==== @@ -2,8 +2,8 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT([OpenBSM], [1.0a7], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) -AC_REVISION([$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#7 $]) +AC_INIT([OpenBSM], [1.0a8], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) +AC_REVISION([$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#8 $]) AC_CONFIG_SRCDIR([bin/auditreduce/auditreduce.c]) AC_CONFIG_AUX_DIR(config) AC_CONFIG_HEADER([config/config.h]) ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/au_token.3#7 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/au_token.3#6 $ +.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/au_token.3#7 $ .\" .Dd April 19, 2005 .Dt AU_TOKEN 3 @@ -155,9 +155,9 @@ .Ft token_t * .Fn au_to_me "void" .Ft token_t * -.Fn au_to_exec_args "const char **args" +.Fn au_to_exec_args "char **argv" .Ft token_t * -.Fn au_to_exec_env "const char **env" +.Fn au_to_exec_env "char **envp" .Ft token_t * .Fn au_to_header "int rec_size" "au_event_t e_type" "au_emod_t emod" .Ft token_t * ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#15 (text+ko) ==== @@ -31,7 +31,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#14 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#15 $ */ #include @@ -1259,7 +1259,7 @@ { int i; - print_tok_type(fp, tok->id, "exec arg", raw); + print_tok_type(fp, tok->id, "exec env", raw); for (i = 0; i< tok->tt.execenv.count; i++) { print_delim(fp, del); print_string(fp, tok->tt.execenv.text[i], ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#18 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#17 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#18 $ */ #include @@ -1055,7 +1055,7 @@ * text count null-terminated strings */ token_t * -au_to_exec_args(const char **args) +au_to_exec_args(char **argv) { token_t *t; u_char *dptr = NULL; @@ -1063,7 +1063,7 @@ int i, count = 0; size_t totlen = 0; - nextarg = *args; + nextarg = *argv; while (nextarg != NULL) { int nextlen; @@ -1071,7 +1071,7 @@ nextlen = strlen(nextarg); totlen += nextlen + 1; count++; - nextarg = *(args + count); + nextarg = *(argv + count); } totlen += count * sizeof(char); /* nul terminations. */ @@ -1083,7 +1083,7 @@ ADD_U_INT32(dptr, count); for (i = 0; i < count; i++) { - nextarg = *(args + i); + nextarg = *(argv + i); ADD_MEM(dptr, nextarg, strlen(nextarg) + 1); } @@ -1096,7 +1096,7 @@ * text count null-terminated strings */ token_t * -au_to_exec_env(const char **env) +au_to_exec_env(char **envp) { token_t *t; u_char *dptr = NULL; @@ -1104,7 +1104,7 @@ size_t totlen = 0; const char *nextenv; - nextenv = *env; + nextenv = *envp; while (nextenv != NULL) { int nextlen; @@ -1112,7 +1112,7 @@ nextlen = strlen(nextenv); totlen += nextlen + 1; count++; - nextenv = *(env + count); + nextenv = *(envp + count); } totlen += sizeof(char) * count; @@ -1124,7 +1124,7 @@ ADD_U_INT32(dptr, count); for (i = 0; i < count; i++) { - nextenv = *(env + i); + nextenv = *(envp + i); ADD_MEM(dptr, nextenv, strlen(nextenv) + 1); } From owner-p4-projects@FreeBSD.ORG Tue Jul 11 05:31:00 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E3DDE16A4DD; Tue, 11 Jul 2006 05:30:59 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 B4B0516A4E2 for ; Tue, 11 Jul 2006 05:30:59 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7CEF343D5D for ; Tue, 11 Jul 2006 05:30:59 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6B5Uxj6051795 for ; Tue, 11 Jul 2006 05:30:59 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6B5Uxqi051792 for perforce@freebsd.org; Tue, 11 Jul 2006 05:30:59 GMT (envelope-from csjp@freebsd.org) Date: Tue, 11 Jul 2006 05:30:59 GMT Message-Id: <200607110530.k6B5Uxqi051792@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101258 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 05:31:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=101258 Change 101258 by csjp@csjp_rnd01 on 2006/07/11 05:30:51 Fix from what I can is a typo in the argument passed to bus_get_dma_tag, we passed dev and we should be passing mpt->dev. This fixes the build for mpt(4) capable kernels. Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_pci.c#4 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_pci.c#4 (text+ko) ==== @@ -679,7 +679,7 @@ * Align at byte boundaries, * Limit to 32-bit addressing for request/reply queues. */ - if (mpt_dma_tag_create(mpt, /*parent*/bus_get_dma_tag(dev), + if (mpt_dma_tag_create(mpt, /*parent*/bus_get_dma_tag(mpt->dev), /*alignment*/1, /*boundary*/0, /*lowaddr*/BUS_SPACE_MAXADDR, /*highaddr*/BUS_SPACE_MAXADDR, /*filter*/NULL, /*filterarg*/NULL, /*maxsize*/BUS_SPACE_MAXSIZE_32BIT, From owner-p4-projects@FreeBSD.ORG Tue Jul 11 05:41:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6A79816A4DF; Tue, 11 Jul 2006 05:41:14 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 44A4216A4DA for ; Tue, 11 Jul 2006 05:41:14 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E117D43D45 for ; Tue, 11 Jul 2006 05:41:13 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6B5fDiP053729 for ; Tue, 11 Jul 2006 05:41:13 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6B5fCjp053726 for perforce@freebsd.org; Tue, 11 Jul 2006 05:41:12 GMT (envelope-from csjp@freebsd.org) Date: Tue, 11 Jul 2006 05:41:12 GMT Message-Id: <200607110541.k6B5fCjp053726@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101260 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 05:41:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=101260 Change 101260 by csjp@csjp_rnd01 on 2006/07/11 05:40:55 Submit first pass on making mpt(4) big endian safe. Currently, there is some issues with allocating interrupts, however, it boots and does not hand indefinately, also, it detects the chip, so there is some progress here, but there needs to be some work done here yet. Submitted by: Scott Long Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_cnfg.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_fc.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_inb.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_init.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_ioc.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_lan.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_log_fc.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_log_sas.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_raid.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_sas.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_targ.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_tool.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_type.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.c#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.h#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_debug.c#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_pci.c#5 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_raid.c#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_raid.h#3 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_reg.h#3 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_cnfg.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_fc.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_inb.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_init.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_ioc.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_lan.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_log_fc.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_log_sas.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_raid.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_sas.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_targ.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_tool.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpilib/mpi_type.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#3 (text+ko) ==== @@ -535,7 +535,7 @@ request_t *ack_req; uint32_t context; - context = htole32(req->index|MPT_REPLY_HANDLER_EVENTS); + context = req->index | MPT_REPLY_HANDLER_EVENTS; ack_req = mpt_get_request(mpt, FALSE); if (ack_req == NULL) { struct mpt_evtf_record *evtf; @@ -652,9 +652,9 @@ ackp = (MSG_EVENT_ACK *)ack_req->req_vbuf; memset(ackp, 0, sizeof (*ackp)); ackp->Function = MPI_FUNCTION_EVENT_ACK; - ackp->Event = msg->Event; - ackp->EventContext = msg->EventContext; - ackp->MsgContext = context; + ackp->Event = htole32(msg->Event); + ackp->EventContext = htole32(msg->EventContext); + ackp->MsgContext = htole32(context); mpt_check_doorbell(mpt); mpt_send_cmd(mpt, ack_req); } @@ -1521,9 +1521,9 @@ cfgp->Header.PageLength = PageLength; cfgp->Header.PageNumber = PageNumber; cfgp->Header.PageType = PageType; - cfgp->PageAddress = PageAddress; + cfgp->PageAddress = htole32(PageAddress); se = (SGE_SIMPLE32 *)&cfgp->PageBufferSGE; - se->Address = addr; + se->Address = htole32(addr); MPI_pSGE_SET_LENGTH(se, len); MPI_pSGE_SET_FLAGS(se, (MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#3 (text+ko) ==== @@ -120,6 +120,7 @@ #include #include #include +#include #include #include @@ -623,6 +624,8 @@ struct req_queue request_pending_list; struct req_queue request_timeout_list; + struct task intr_task; + struct taskqueue *tq; struct cam_sim *sim; struct cam_path *path; @@ -822,13 +825,13 @@ static __inline void mpt_write(struct mpt_softc *mpt, size_t offset, uint32_t val) { - bus_space_write_4(mpt->pci_st, mpt->pci_sh, offset, val); + bus_space_write_4(mpt->pci_st, mpt->pci_sh, offset, htole32(val)); } static __inline uint32_t mpt_read(struct mpt_softc *mpt, int offset) { - return (bus_space_read_4(mpt->pci_st, mpt->pci_sh, offset)); + return (le32toh(bus_space_read_4(mpt->pci_st, mpt->pci_sh, offset))); } /* @@ -839,13 +842,15 @@ static __inline void mpt_pio_write(struct mpt_softc *mpt, size_t offset, uint32_t val) { - bus_space_write_4(mpt->pci_pio_st, mpt->pci_pio_sh, offset, val); + bus_space_write_4(mpt->pci_pio_st, mpt->pci_pio_sh, offset, + htole32(val)); } static __inline uint32_t mpt_pio_read(struct mpt_softc *mpt, int offset) { - return (bus_space_read_4(mpt->pci_pio_st, mpt->pci_pio_sh, offset)); + return (le32toh(bus_space_read_4(mpt->pci_pio_st, mpt->pci_pio_sh, + offset))); } /*********************** Reply Frame/Request Management ***********************/ /* Max MPT Reply we are willing to accept (must be power of 2) */ ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.c#3 (text+ko) ==== @@ -992,9 +992,9 @@ uint32_t tf; memset(se, 0, sizeof (*se)); - se->Address.Low = dm_segs->ds_addr; + se->Address.Low = htole32(dm_segs->ds_addr & 0xffffffff); if (sizeof(bus_addr_t) > 4) { - se->Address.High = ((uint64_t) dm_segs->ds_addr) >> 32; + se->Address.High = ((uint64_t)dm_segs->ds_addr) >> 32; } MPI_pSGE_SET_LENGTH(se, dm_segs->ds_len); tf = flags; @@ -1068,9 +1068,9 @@ chain_list_addr += cur_off; if (sizeof (bus_addr_t) > 4) { ce->Address.High = - (uint32_t) ((uint64_t)chain_list_addr >> 32); + htole32((uint64_t)chain_list_addr >> 32); } - ce->Address.Low = (uint32_t) chain_list_addr; + ce->Address.Low = htole32(chain_list_addr & 0xffffffff); ce->Flags = MPI_SGE_FLAGS_CHAIN_ELEMENT | MPI_SGE_FLAGS_64_BIT_ADDRESSING; @@ -1107,10 +1107,11 @@ */ while (seg < this_seg_lim) { memset(se, 0, sizeof (*se)); - se->Address.Low = dm_segs->ds_addr; + se->Address.Low = + htole32(dm_segs->ds_addr & 0xffffffff); if (sizeof (bus_addr_t) > 4) { se->Address.High = - ((uint64_t)dm_segs->ds_addr) >> 32; + htole32(((uint64_t)dm_segs->ds_addr) >>32); } MPI_pSGE_SET_LENGTH(se, dm_segs->ds_len); tf = flags; @@ -1765,8 +1766,8 @@ } mpt_req->CDBLength = csio->cdb_len; - mpt_req->DataLength = csio->dxfer_len; - mpt_req->SenseBufferLowAddr = req->sense_pbuf; + mpt_req->DataLength = htole32((uint32_t)csio->dxfer_len); + mpt_req->SenseBufferLowAddr = htole32(req->sense_pbuf & 0xffffffff); /* * Do a *short* print here if we're set to MPT_PRT_DEBUG @@ -2209,6 +2210,7 @@ { MSG_LINK_SERVICE_RSP_REQUEST tmp; PTR_MSG_LINK_SERVICE_RSP_REQUEST rsp; + uint32_t fl; /* * We are going to reuse the ELS request to send this response back. @@ -2246,15 +2248,16 @@ bus_addr_t paddr = req->req_pbuf; paddr += MPT_RQSL(mpt); - se->FlagsLength = + fl = MPI_SGE_FLAGS_HOST_TO_IOC | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST | MPI_SGE_FLAGS_END_OF_BUFFER; - se->FlagsLength <<= MPI_SGE_FLAGS_SHIFT; - se->FlagsLength |= (length); - se->Address = (uint32_t) paddr; + fl <<= MPI_SGE_FLAGS_SHIFT; + fl |= (length); + se->FlagsLength = htole32(fl); + se->Address = htole32(paddr & 0xffffffff); } #endif @@ -3613,6 +3616,7 @@ PTR_SGE_TRANSACTION32 tep; PTR_SGE_SIMPLE32 se; bus_addr_t paddr; + uint32_t fl; paddr = req->req_pbuf; paddr += MPT_RQSL(mpt); @@ -3637,15 +3641,16 @@ tep->TransactionContext[0] = htole32(ioindex); se = (PTR_SGE_SIMPLE32) &tep->TransactionDetails[0]; - se->FlagsLength = + fl = MPI_SGE_FLAGS_HOST_TO_IOC | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST | MPI_SGE_FLAGS_END_OF_BUFFER; - se->FlagsLength <<= MPI_SGE_FLAGS_SHIFT; - se->FlagsLength |= (MPT_NRFM(mpt) - MPT_RQSL(mpt)); - se->Address = (uint32_t) paddr; + fl <<= MPI_SGE_FLAGS_SHIFT; + fl |= (MPT_NRFM(mpt) - MPT_RQSL(mpt)); + se->FlagsLength = htole32(fl); + se->Address = htole32(paddr & 0xffffffff); mpt_lprt(mpt, MPT_PRT_DEBUG, "add ELS index %d ioindex %d for %p:%u\n", req->index, ioindex, req, req->serno); @@ -3673,7 +3678,7 @@ cb = &fc->Buffer[0]; cb->IoIndex = htole16(ioindex); - cb->u.PhysicalAddress32 = (U32) paddr; + cb->u.PhysicalAddress32 = htole32(paddr & 0xffffffff); mpt_check_doorbell(mpt); mpt_send_cmd(mpt, req); @@ -4143,6 +4148,7 @@ PTR_MSG_TARGET_STATUS_SEND_REQUEST tp; request_t *req; bus_addr_t paddr; + uint32_t fl; int resplen = 0; cmd_vbuf = cmd_req->req_vbuf; @@ -4263,15 +4269,16 @@ if (status == SCSI_STATUS_OK && resplen == 0) { tp->MsgFlags |= TARGET_STATUS_SEND_FLAGS_AUTO_GOOD_STATUS; } else { - tp->StatusDataSGE.u.Address32 = (uint32_t) paddr; - tp->StatusDataSGE.FlagsLength = + tp->StatusDataSGE.u.Address32 = htole32(paddr & 0xffffffff); + fl = MPI_SGE_FLAGS_HOST_TO_IOC | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST | MPI_SGE_FLAGS_END_OF_BUFFER; - tp->StatusDataSGE.FlagsLength <<= MPI_SGE_FLAGS_SHIFT; - tp->StatusDataSGE.FlagsLength |= resplen; + fl <<= MPI_SGE_FLAGS_SHIFT; + fl |= resplen; + tp->StatusDataSGE.FlagsLength = htole32(fl); } mpt_lprt(mpt, MPT_PRT_DEBUG, ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.h#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_debug.c#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_pci.c#5 (text+ko) ==== @@ -190,7 +190,8 @@ static int mpt_dma_mem_alloc(struct mpt_softc *mpt); static void mpt_dma_mem_free(struct mpt_softc *mpt); static void mpt_read_config_regs(struct mpt_softc *mpt); -static void mpt_pci_intr(void *); +static void mpt_pci_fastintr(void *); +static void mpt_pci_handle_intr(void *, int); static device_method_t mpt_methods[] = { /* Device interface */ @@ -496,8 +497,13 @@ mpt_disable_ints(mpt); /* Register the interrupt handler */ - if (bus_setup_intr(dev, mpt->pci_irq, MPT_IFLAGS, mpt_pci_intr, - mpt, &mpt->ih)) { + TASK_INIT(&mpt->intr_task, 0, mpt_pci_handle_intr, mpt); + mpt->tq = taskqueue_create_fast("mpt_taskq", M_NOWAIT, + taskqueue_thread_enqueue, &mpt->tq); + taskqueue_start_threads(&mpt->tq, 1, PI_DISK, "%s taskq", + device_get_nameunit(dev)); + if (bus_setup_intr(dev, mpt->pci_irq, INTR_TYPE_CAM|INTR_FAST, + mpt_pci_fastintr, mpt, &mpt->ih)) { device_printf(dev, "could not setup interrupt\n"); goto bad; } @@ -893,12 +899,26 @@ } static void -mpt_pci_intr(void *arg) +mpt_pci_fastintr(void *arg) +{ + struct mpt_softc *mpt; + + mpt = (struct mpt_softc *)arg; + mpt_disable_ints(mpt); + taskqueue_enqueue(mpt->tq, &mpt->intr_task); + return; +} + +static void +mpt_pci_handle_intr(void *arg, int pending) { struct mpt_softc *mpt; mpt = (struct mpt_softc *)arg; + mtx_lock(&Giant); MPT_LOCK(mpt); mpt_intr(mpt); MPT_UNLOCK(mpt); + mtx_unlock(&Giant); + mpt_enable_ints(mpt); } ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_raid.c#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_raid.h#3 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_reg.h#3 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Tue Jul 11 11:45:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 557AD16A4E8; Tue, 11 Jul 2006 11:45:50 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 03EF216A4DF for ; Tue, 11 Jul 2006 11:45:50 +0000 (UTC) (envelope-from tyler@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2294343D4C for ; Tue, 11 Jul 2006 11:45:43 +0000 (GMT) (envelope-from tyler@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BBjhSD019994 for ; Tue, 11 Jul 2006 11:45:43 GMT (envelope-from tyler@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BBiW2O019914 for perforce@freebsd.org; Tue, 11 Jul 2006 11:44:32 GMT (envelope-from tyler@freebsd.org) Date: Tue, 11 Jul 2006 11:44:32 GMT Message-Id: <200607111144.k6BBiW2O019914@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to tyler@freebsd.org using -f From: "R. Tyler Ballance" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101267 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 11:45:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=101267 Change 101267 by tyler@orange on 2006/07/11 11:43:45 sync with the latest //depot/vendor/freebsd/src Affected files ... .. //depot/projects/l4bsd/src/MAINTAINERS#2 integrate .. //depot/projects/l4bsd/src/Makefile#2 integrate .. //depot/projects/l4bsd/src/Makefile.inc1#2 integrate .. //depot/projects/l4bsd/src/ObsoleteFiles.inc#2 integrate .. //depot/projects/l4bsd/src/README#2 integrate .. //depot/projects/l4bsd/src/UPDATING#2 integrate .. //depot/projects/l4bsd/src/bin/cp/cp.c#2 integrate .. //depot/projects/l4bsd/src/bin/dd/Makefile#2 integrate .. //depot/projects/l4bsd/src/bin/setfacl/setfacl.1#2 integrate .. //depot/projects/l4bsd/src/bin/setfacl/setfacl.c#2 integrate .. //depot/projects/l4bsd/src/bin/sh/cd.c#2 integrate .. //depot/projects/l4bsd/src/bin/sh/eval.c#2 integrate .. //depot/projects/l4bsd/src/bin/sh/sh.1#2 integrate .. //depot/projects/l4bsd/src/bin/sh/var.c#2 integrate .. //depot/projects/l4bsd/src/bin/sh/var.h#2 integrate .. //depot/projects/l4bsd/src/contrib/binutils/bfd/elf64-sparc.c#2 integrate .. //depot/projects/l4bsd/src/contrib/bsnmp/NEWS#2 integrate .. //depot/projects/l4bsd/src/contrib/bsnmp/gensnmpdef/gensnmpdef.1#2 integrate .. //depot/projects/l4bsd/src/contrib/bsnmp/gensnmpdef/gensnmpdef.c#2 integrate .. //depot/projects/l4bsd/src/contrib/bsnmp/gensnmptree/gensnmptree.1#2 integrate .. //depot/projects/l4bsd/src/contrib/bsnmp/gensnmptree/gensnmptree.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/ChangeLog#2 integrate .. //depot/projects/l4bsd/src/contrib/file/FREEBSD-upgrade#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/adventure#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/amigaos#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/animation#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/apple#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/archive#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/audio#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/basis#1 branch .. //depot/projects/l4bsd/src/contrib/file/Magdir/bflt#1 branch .. //depot/projects/l4bsd/src/contrib/file/Magdir/bout#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/btsnoop#1 branch .. //depot/projects/l4bsd/src/contrib/file/Magdir/c64#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/cad#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/commands#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/compress#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/console#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/cracklib#1 branch .. //depot/projects/l4bsd/src/contrib/file/Magdir/ctags#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/database#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/diff#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/digital#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/dump#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/elf#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/filesystems#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/flash#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/fsav#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/gnu#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/iff#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/images#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/java#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/linux#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/lisp#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/mach#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/macintosh#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/mail.news#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/maple#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/misctools#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/msdos#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/mup#1 branch .. //depot/projects/l4bsd/src/contrib/file/Magdir/ncr#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/perl#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/printer#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/psion#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/python#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/riff#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/scientific#1 branch .. //depot/projects/l4bsd/src/contrib/file/Magdir/sgi#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/sharc#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/sql#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/varied.out#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Magdir/wordprocessors#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Makefile.am#2 integrate .. //depot/projects/l4bsd/src/contrib/file/Makefile.in#2 integrate .. //depot/projects/l4bsd/src/contrib/file/aclocal.m4#2 integrate .. //depot/projects/l4bsd/src/contrib/file/apprentice.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/ascmagic.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/compress.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/config.h.in#2 integrate .. //depot/projects/l4bsd/src/contrib/file/configure#2 integrate .. //depot/projects/l4bsd/src/contrib/file/configure.in#2 integrate .. //depot/projects/l4bsd/src/contrib/file/file.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/file.h#2 integrate .. //depot/projects/l4bsd/src/contrib/file/file.man#2 integrate .. //depot/projects/l4bsd/src/contrib/file/fsmagic.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/funcs.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/libmagic.man#2 integrate .. //depot/projects/l4bsd/src/contrib/file/magic.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/magic.man#2 integrate .. //depot/projects/l4bsd/src/contrib/file/magic.mime#2 integrate .. //depot/projects/l4bsd/src/contrib/file/magic2mime#2 integrate .. //depot/projects/l4bsd/src/contrib/file/patchlevel.h#2 integrate .. //depot/projects/l4bsd/src/contrib/file/print.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/readelf.c#2 integrate .. //depot/projects/l4bsd/src/contrib/file/readelf.h#2 integrate .. //depot/projects/l4bsd/src/contrib/file/softmagic.c#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/FREEBSD-upgrade#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/HISTORY#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/Makefile.am#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/Makefile.in#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/README#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/TODO#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/VERSION#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bin/Makefile.am#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bin/Makefile.in#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bin/auditd/auditd.c#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bin/auditfilterd/Makefile.am#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/bin/auditfilterd/Makefile.in#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/bin/auditfilterd/auditfilterd.8#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/bin/auditfilterd/auditfilterd.c#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/bin/auditfilterd/auditfilterd.h#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/bin/auditreduce/auditreduce.c#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bsm/Makefile.am#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bsm/Makefile.in#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bsm/audit.h#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bsm/audit_filter.h#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/bsm/audit_kevents.h#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bsm/audit_record.h#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/bsm/libbsm.h#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/config/config.h#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/config/config.h.in#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/config/ltmain.sh#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/configure#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/configure.ac#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/etc/audit_event#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/etc/audit_filter#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/Makefile.am#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/Makefile.in#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/au_open.3#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/au_token.3#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/audit_submit.3#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/bsm_audit.c#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/bsm_io.c#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/bsm_notify.c#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/bsm_token.c#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/bsm_wrappers.c#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/libbsm/libbsm.3#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/man/audit.log.5#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/man/auditctl.2#2 integrate .. //depot/projects/l4bsd/src/contrib/openbsm/modules/Makefile.am#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/modules/Makefile.in#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/modules/auditfilter_noop/Makefile.am#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/modules/auditfilter_noop/Makefile.in#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/test/Makefile.am#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/test/Makefile.in#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/test/bsm/Makefile.am#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/test/bsm/Makefile.in#1 branch .. //depot/projects/l4bsd/src/contrib/openbsm/test/bsm/generate.c#1 branch .. //depot/projects/l4bsd/src/contrib/pf/man/pfsync.4#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/FREEBSD-upgrade#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/PGPKEYS#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/RELEASE_NOTES#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/cf/README#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/cf/cf/submit.cf#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/cf/cf/submit.mc#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/cf/feature/dnsbl.m4#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/cf/feature/enhdnsbl.m4#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/cf/m4/proto.m4#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/cf/m4/version.m4#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/include/libmilter/mfapi.h#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/libmilter/docs/xxfi_header.html#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/libmilter/engine.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/libsm/t-memstat.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/README#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/bf.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/collect.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/conf.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/daemon.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/deliver.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/domain.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/envelope.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/headers.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/helpfile#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/main.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/map.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/mci.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/mime.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/parseaddr.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/queue.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/savemail.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/sendmail.h#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/sfsasl.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/sfsasl.h#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/srvrsmtp.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/tls.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/util.c#2 integrate .. //depot/projects/l4bsd/src/contrib/sendmail/src/version.c#2 integrate .. //depot/projects/l4bsd/src/contrib/tcpdump/tcpdump.1#2 integrate .. //depot/projects/l4bsd/src/contrib/texinfo/FREEBSD-upgrade#2 integrate .. //depot/projects/l4bsd/src/contrib/traceroute/traceroute.8#2 integrate .. //depot/projects/l4bsd/src/contrib/traceroute/traceroute.c#2 integrate .. //depot/projects/l4bsd/src/crypto/openssh/config.h#2 integrate .. //depot/projects/l4bsd/src/crypto/openssh/loginrec.c#2 integrate .. //depot/projects/l4bsd/src/etc/defaults/rc.conf#2 integrate .. //depot/projects/l4bsd/src/etc/devd.conf#2 integrate .. //depot/projects/l4bsd/src/etc/hosts.allow#2 integrate .. //depot/projects/l4bsd/src/etc/netstart#2 integrate .. //depot/projects/l4bsd/src/etc/periodic/daily/470.status-named#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/Makefile#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/abi#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/auditd#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/bridge#1 branch .. //depot/projects/l4bsd/src/etc/rc.d/cached#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/devd#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/dhclient#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/jail#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/ldconfig#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/netif#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/pf#2 integrate .. //depot/projects/l4bsd/src/etc/rc.d/sysctl#2 integrate .. //depot/projects/l4bsd/src/etc/rc.subr#2 integrate .. //depot/projects/l4bsd/src/etc/sendmail/freebsd.mc#2 integrate .. //depot/projects/l4bsd/src/etc/sendmail/freebsd.submit.mc#2 integrate .. //depot/projects/l4bsd/src/games/fortune/datfiles/Makefile#2 integrate .. //depot/projects/l4bsd/src/games/fortune/datfiles/fortunes#2 integrate .. //depot/projects/l4bsd/src/gnu/lib/libgcc_r/Makefile#2 delete .. //depot/projects/l4bsd/src/include/malloc_np.h#2 integrate .. //depot/projects/l4bsd/src/lib/libbsm/Makefile#2 integrate .. //depot/projects/l4bsd/src/lib/libc/gen/getgrent.c#2 integrate .. //depot/projects/l4bsd/src/lib/libc/gen/glob.c#2 integrate .. //depot/projects/l4bsd/src/lib/libc/gen/signal.3#2 integrate .. //depot/projects/l4bsd/src/lib/libc/i386/gen/_ctx_start.S#2 integrate .. //depot/projects/l4bsd/src/lib/libc/posix1e/Makefile.inc#2 integrate .. //depot/projects/l4bsd/src/lib/libc/posix1e/mac_is_present.3#1 branch .. //depot/projects/l4bsd/src/lib/libc/posix1e/mac_is_present_np.3#2 delete .. //depot/projects/l4bsd/src/lib/libc/posix1e/mac_prepare.3#2 integrate .. //depot/projects/l4bsd/src/lib/libc/posix1e/mac_set.3#2 integrate .. //depot/projects/l4bsd/src/lib/libc/posix1e/mac_text.3#2 integrate .. //depot/projects/l4bsd/src/lib/libc/stdlib/malloc.c#2 integrate .. //depot/projects/l4bsd/src/lib/libc/stdlib/tsearch.3#2 integrate .. //depot/projects/l4bsd/src/lib/libc/string/strlcpy.c#2 integrate .. //depot/projects/l4bsd/src/lib/libc/sys/mincore.2#2 integrate .. //depot/projects/l4bsd/src/lib/libc/sys/stat.2#2 integrate .. //depot/projects/l4bsd/src/lib/libc/sys/truncate.2#2 integrate .. //depot/projects/l4bsd/src/lib/libfetch/ftp.c#2 integrate .. //depot/projects/l4bsd/src/lib/libkvm/kvm_minidump_amd64.c#2 integrate .. //depot/projects/l4bsd/src/lib/libkvm/kvm_minidump_i386.c#2 integrate .. //depot/projects/l4bsd/src/lib/libmagic/Makefile#2 integrate .. //depot/projects/l4bsd/src/lib/libmagic/config.h#2 integrate .. //depot/projects/l4bsd/src/lib/libpthread/thread/thr_private.h#2 integrate .. //depot/projects/l4bsd/src/lib/libpthread/thread/thr_sig.c#2 integrate .. //depot/projects/l4bsd/src/lib/libpthread/thread/thr_sigaction.c#2 integrate .. //depot/projects/l4bsd/src/lib/libsdp/sdp.h#2 integrate .. //depot/projects/l4bsd/src/lib/libsdp/util.c#2 integrate .. //depot/projects/l4bsd/src/lib/libthr/thread/thr_mutex.c#2 integrate .. //depot/projects/l4bsd/src/lib/libthr/thread/thr_private.h#2 integrate .. //depot/projects/l4bsd/src/lib/libthr/thread/thr_spec.c#2 integrate .. //depot/projects/l4bsd/src/lib/libutil/Makefile#2 integrate .. //depot/projects/l4bsd/src/lib/libutil/kld.c#2 integrate .. //depot/projects/l4bsd/src/lib/libutil/login_class.3#2 integrate .. //depot/projects/l4bsd/src/lib/libutil/pidfile.c#2 integrate .. //depot/projects/l4bsd/src/lib/msun/i387/Makefile.inc#2 integrate .. //depot/projects/l4bsd/src/lib/msun/i387/e_scalb.S#2 delete .. //depot/projects/l4bsd/src/lib/msun/i387/e_scalbf.S#2 delete .. //depot/projects/l4bsd/src/lib/msun/src/e_log.c#2 integrate .. //depot/projects/l4bsd/src/lib/msun/src/e_logf.c#2 integrate .. //depot/projects/l4bsd/src/lib/msun/src/e_scalbf.c#2 integrate .. //depot/projects/l4bsd/src/lib/msun/src/s_tanh.c#2 integrate .. //depot/projects/l4bsd/src/libexec/ftpd/Makefile#2 integrate .. //depot/projects/l4bsd/src/libexec/ftpd/ftpcmd.y#2 integrate .. //depot/projects/l4bsd/src/release/Makefile#2 integrate .. //depot/projects/l4bsd/src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#2 integrate .. //depot/projects/l4bsd/src/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#2 integrate .. //depot/projects/l4bsd/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#2 integrate .. //depot/projects/l4bsd/src/release/doc/share/misc/dev.archlist.txt#2 integrate .. //depot/projects/l4bsd/src/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#2 integrate .. //depot/projects/l4bsd/src/release/pc98/fixit-small_crunch.conf#2 integrate .. //depot/projects/l4bsd/src/sbin/devfs/devfs.c#2 integrate .. //depot/projects/l4bsd/src/sbin/dhclient/dhclient.c#2 integrate .. //depot/projects/l4bsd/src/sbin/fdisk/fdisk.c#2 integrate .. //depot/projects/l4bsd/src/sbin/ffsinfo/ffsinfo.8#2 integrate .. //depot/projects/l4bsd/src/sbin/fsdb/fsdb.8#2 integrate .. //depot/projects/l4bsd/src/sbin/fsdb/fsdb.c#2 integrate .. //depot/projects/l4bsd/src/sbin/geom/class/eli/geli.8#2 integrate .. //depot/projects/l4bsd/src/sbin/geom/class/eli/geom_eli.c#2 integrate .. //depot/projects/l4bsd/src/sbin/ggate/ggatec/ggatec.8#2 integrate .. //depot/projects/l4bsd/src/sbin/gpt/add.c#2 integrate .. //depot/projects/l4bsd/src/sbin/gpt/gpt.8#2 integrate .. //depot/projects/l4bsd/src/sbin/gpt/gpt.c#2 integrate .. //depot/projects/l4bsd/src/sbin/gpt/gpt.h#2 integrate .. //depot/projects/l4bsd/src/sbin/gpt/label.c#2 integrate .. //depot/projects/l4bsd/src/sbin/gpt/remove.c#2 integrate .. //depot/projects/l4bsd/src/sbin/gpt/show.c#2 integrate .. //depot/projects/l4bsd/src/sbin/ifconfig/Makefile#2 integrate .. //depot/projects/l4bsd/src/sbin/ifconfig/ifclone.c#2 integrate .. //depot/projects/l4bsd/src/sbin/ifconfig/ifconfig.8#2 integrate .. //depot/projects/l4bsd/src/sbin/ifconfig/ifconfig.c#2 integrate .. //depot/projects/l4bsd/src/sbin/ifconfig/ifconfig.h#2 integrate .. //depot/projects/l4bsd/src/sbin/ifconfig/ifgroup.c#1 branch .. //depot/projects/l4bsd/src/sbin/ifconfig/ifieee80211.c#2 integrate .. //depot/projects/l4bsd/src/sbin/ifconfig/ifpfsync.c#2 integrate .. //depot/projects/l4bsd/src/sbin/ifconfig/ifvlan.c#2 integrate .. //depot/projects/l4bsd/src/sbin/init/init.c#2 integrate .. //depot/projects/l4bsd/src/sbin/ipfw/ipfw.8#2 integrate .. //depot/projects/l4bsd/src/sbin/ipfw/ipfw2.c#2 integrate .. //depot/projects/l4bsd/src/sbin/mount/mount.c#2 integrate .. //depot/projects/l4bsd/src/sbin/mount_msdosfs/mount_msdosfs.c#2 integrate .. //depot/projects/l4bsd/src/share/examples/diskless/clone_root#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/Makefile#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/aac.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/acpi.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/adv.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/adw.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/altq.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/amd.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/amr.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/ata.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/audit.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/auditpipe.4#1 branch .. //depot/projects/l4bsd/src/share/man/man4/bge.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/bt.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/carp.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/cpufreq.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/dpt.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/enc.4#1 branch .. //depot/projects/l4bsd/src/share/man/man4/esp.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/fast_ipsec.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/geom.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/geom_fox.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/if_bridge.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/iir.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/ips.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/ktr.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/man4.alpha/Makefile#2 delete .. //depot/projects/l4bsd/src/share/man/man4/man4.alpha/linux.4#2 delete .. //depot/projects/l4bsd/src/share/man/man4/man4.alpha/osf1.4#2 delete .. //depot/projects/l4bsd/src/share/man/man4/man4.i386/linux.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/man4.i386/padlock.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/mpt.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/mxge.4#1 branch .. //depot/projects/l4bsd/src/share/man/man4/myri10ge.4#2 delete .. //depot/projects/l4bsd/src/share/man/man4/ncr.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/ncv.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/nfe.4#1 branch .. //depot/projects/l4bsd/src/share/man/man4/ng_netflow.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/ng_tag.4#1 branch .. //depot/projects/l4bsd/src/share/man/man4/nsp.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/re.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/sched_4bsd.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/sched_core.4#1 branch .. //depot/projects/l4bsd/src/share/man/man4/sched_ule.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/sio.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/snd_csa.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/snd_envy24.4#1 branch .. //depot/projects/l4bsd/src/share/man/man4/snd_gusc.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/snd_ich.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/snd_sbc.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/stg.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/sym.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/umodem.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/uplcom.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/uscanner.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/uvisor.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man4/vinum.4#2 integrate .. //depot/projects/l4bsd/src/share/man/man5/mailer.conf.5#2 integrate .. //depot/projects/l4bsd/src/share/man/man5/rc.conf.5#2 integrate .. //depot/projects/l4bsd/src/share/man/man7/build.7#2 integrate .. //depot/projects/l4bsd/src/share/man/man7/ports.7#2 integrate .. //depot/projects/l4bsd/src/share/man/man8/rc.subr.8#2 integrate .. //depot/projects/l4bsd/src/share/man/man9/Makefile#2 integrate .. //depot/projects/l4bsd/src/share/man/man9/crypto.9#2 integrate .. //depot/projects/l4bsd/src/share/man/man9/device_get_sysctl.9#1 branch .. //depot/projects/l4bsd/src/share/man/man9/lock.9#2 integrate .. //depot/projects/l4bsd/src/share/man/man9/mac.9#2 integrate .. //depot/projects/l4bsd/src/share/man/man9/mutex.9#2 integrate .. //depot/projects/l4bsd/src/share/man/man9/vflush.9#2 integrate .. //depot/projects/l4bsd/src/share/man/man9/vgone.9#2 integrate .. //depot/projects/l4bsd/src/share/misc/bsd-family-tree#2 integrate .. //depot/projects/l4bsd/src/share/misc/iso3166#2 integrate .. //depot/projects/l4bsd/src/share/mk/bsd.README#2 integrate .. //depot/projects/l4bsd/src/share/monetdef/pt_PT.ISO8859-1.src#2 integrate .. //depot/projects/l4bsd/src/sys/Makefile#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/amd64/busdma_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/amd64/fpu.c#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/amd64/machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/amd64/trap.c#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/conf/DEFAULTS#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/conf/GENERIC#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/conf/NOTES#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/include/md_var.h#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/linux32/linux32_dummy.c#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/linux32/linux32_proto.h#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/linux32/linux32_syscall.h#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/linux32/linux32_sysent.c#2 integrate .. //depot/projects/l4bsd/src/sys/amd64/linux32/syscalls.master#2 integrate .. //depot/projects/l4bsd/src/sys/arm/arm/busdma_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/arm/inckern.S#2 integrate .. //depot/projects/l4bsd/src/sys/arm/arm/locore.S#2 integrate .. //depot/projects/l4bsd/src/sys/arm/arm/pmap.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/arm/vm_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/l4bsd/src/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/l4bsd/src/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/at91/at91rm92reg.h#2 integrate .. //depot/projects/l4bsd/src/sys/arm/at91/files.at91#2 integrate .. //depot/projects/l4bsd/src/sys/arm/at91/if_ate.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/at91/kb920x_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/conf/IQ31244#2 integrate .. //depot/projects/l4bsd/src/sys/arm/conf/KB920X#2 integrate .. //depot/projects/l4bsd/src/sys/arm/conf/SIMICS#2 integrate .. //depot/projects/l4bsd/src/sys/arm/conf/SKYEYE#2 integrate .. //depot/projects/l4bsd/src/sys/arm/include/cpuconf.h#2 integrate .. //depot/projects/l4bsd/src/sys/arm/include/cpufunc.h#2 integrate .. //depot/projects/l4bsd/src/sys/arm/include/pmap.h#2 integrate .. //depot/projects/l4bsd/src/sys/arm/sa11x0/assabet_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/sa11x0/sa11x0_io.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/sa11x0/sa11x0_reg.h#2 integrate .. //depot/projects/l4bsd/src/sys/arm/sa11x0/sa11x0_var.h#2 integrate .. //depot/projects/l4bsd/src/sys/arm/sa11x0/uart_cpu_sa1110.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/sa11x0/uart_dev_sa1110.c#2 integrate .. //depot/projects/l4bsd/src/sys/arm/xscale/i80321/iq31244_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/boot/Makefile#2 integrate .. //depot/projects/l4bsd/src/sys/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/l4bsd/src/sys/bsm/audit.h#2 integrate .. //depot/projects/l4bsd/src/sys/bsm/audit_kevents.h#2 integrate .. //depot/projects/l4bsd/src/sys/bsm/audit_record.h#2 integrate .. //depot/projects/l4bsd/src/sys/cam/cam_ccb.h#2 integrate .. //depot/projects/l4bsd/src/sys/cam/cam_periph.c#2 integrate .. //depot/projects/l4bsd/src/sys/cam/cam_xpt.c#2 integrate .. //depot/projects/l4bsd/src/sys/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/l4bsd/src/sys/cam/scsi/scsi_target.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/l4bsd/src/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/l4bsd/src/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/l4bsd/src/sys/compat/linprocfs/linprocfs.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/linux/linux_ioctl.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/linux/linux_misc.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/linux/linux_socket.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/linux/linux_util.h#2 integrate .. //depot/projects/l4bsd/src/sys/compat/ndis/kern_ndis.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/ndis/subr_ndis.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/ndis/winx32_wrap.S#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/svr4_ipc.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/svr4_misc.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/svr4_proto.h#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/svr4_stream.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/svr4_syscall.h#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/svr4_syscallnames.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/svr4_sysent.c#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/svr4_util.h#2 integrate .. //depot/projects/l4bsd/src/sys/compat/svr4/syscalls.master#2 integrate .. //depot/projects/l4bsd/src/sys/conf/Makefile.arm#2 integrate .. //depot/projects/l4bsd/src/sys/conf/NOTES#2 integrate .. //depot/projects/l4bsd/src/sys/conf/files#2 integrate .. //depot/projects/l4bsd/src/sys/conf/files.amd64#2 integrate .. //depot/projects/l4bsd/src/sys/conf/files.arm#2 integrate .. //depot/projects/l4bsd/src/sys/conf/files.i386#2 integrate .. //depot/projects/l4bsd/src/sys/conf/files.ia64#2 integrate .. //depot/projects/l4bsd/src/sys/conf/files.powerpc#2 integrate .. //depot/projects/l4bsd/src/sys/conf/kern.mk#2 integrate .. //depot/projects/l4bsd/src/sys/conf/kern.post.mk#2 integrate .. //depot/projects/l4bsd/src/sys/conf/kern.pre.mk#2 integrate .. //depot/projects/l4bsd/src/sys/conf/kmod.mk#2 integrate .. //depot/projects/l4bsd/src/sys/conf/options#2 integrate .. //depot/projects/l4bsd/src/sys/conf/options.arm#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/COPYRIGHT#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/README#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/ah_desc.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/freebsd/ah_if.m#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/freebsd/ah_osdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/freebsd/ah_osdep.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/arm9-le-thumb-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/armv4-be-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/armv4-le-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/i386-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/i386-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips-be-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips-be-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips-be-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips-le-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips-le-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips-le-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips1-be-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips1-le-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mipsisa32-be-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mipsisa32-le-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-be-eabi.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-le-eabi.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/sh4-le-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/x86_64-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/x86_64-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/xscale-be-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/xscale-le-elf.inc#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/dev/ath/version.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_bstream.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_bstream.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_context.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_env.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_self.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_self_context.s#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_step.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_str.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_str.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_swap.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_swap.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_utable.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/ia64/libuwx/src/uwx_utable.h#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/pf/net/if_pflog.c#2 integrate .. //depot/projects/l4bsd/src/sys/contrib/pf/net/if_pfsync.c#2 integrate .. //depot/projects/l4bsd/src/sys/crypto/via/padlock.c#2 integrate .. //depot/projects/l4bsd/src/sys/ddb/db_sym.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/aac/aac_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/acpi_support/acpi_panasonic.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/acpica/acpi.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/acpica/acpi_battery.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/acpica/acpi_dock.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/acpica/acpivar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ahb/ahb.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ath/if_ath.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ath/if_ath_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ath/if_athvar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/atkbdc/atkbdc_isa.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/awi/awi.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/bfe/if_bfe.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/bfe/if_bfereg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/bge/if_bge.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/l4bsd/src/sys/dev/bktr/bktr_os.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/cardbus/cardbus.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ciss/ciss.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/cm/smc90cx6var.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/dc/if_dc.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/dc/if_dcreg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/dcons/dcons_os.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/digi/digi.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ed/if_ed.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ed/if_ed_novell.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ed/if_edvar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/em/if_em.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/fdc/fdc.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/gem/if_gem.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/hifn/hifn7751.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/hme/if_hme.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ic/nec765.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ipw/if_ipwvar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/isp.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/isp_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/isp_sbus.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/isp_target.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/ispmbox.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/ispreg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/isp/ispvar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ispfw/asm_1040.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ispfw/asm_1080.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ispfw/asm_12160.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/le/if_le_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/lmc/if_lmc.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mfi/mfi.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mfi/mfi_disk.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mfi/mfi_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mfi/mfireg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mfi/mfivar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/ciphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/nsgphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/rgephy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt_cam.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt_cam.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt_raid.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt_raid.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mpt/mpt_reg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/l4bsd/src/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/l4bsd/src/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/l4bsd/src/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/my/if_my.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/nfe/if_nfe.c#1 branch .. //depot/projects/l4bsd/src/sys/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/pccbb/pccbb.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/pccbb/pccbb_isa.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/pccbb/pccbb_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/pccbb/pccbbvar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/pci/fixup_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/pci/pcireg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/puc/puc.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/puc/puc_pccard.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/puc/puc_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/puc/pucdata.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ral/rt2560.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ral/rt2661.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/re/if_re.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/safe/safe.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sio/sio.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sk/if_sk.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/driver.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/midi/midi.c#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/midi.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/midiq.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/mpu401.c#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/mpu401.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/mpu_if.m#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/mpufoi_if.m#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/sequencer.c#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/sequencer.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/midi/synth_if.m#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/pci/cmi.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pci/emu10k1.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/l4bsd/src/sys/dev/sound/pci/es137x.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pci/ich.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pci/solo.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pci/via8233.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pcm/feeder_rate.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pcm/sound.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/syscons/apm/apm_saver.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/syscons/syscons.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/uart/uart.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/uart/uart_dbg.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/uart/uart_tty.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/ubsec/ubsec.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/ehci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/ehci_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/ehcivar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/if_aue.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/if_axe.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/if_axereg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/if_ural.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/ohci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/ohci_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/ohcireg.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/ohcivar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/sl811hs.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/sl811hsvar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/ugen.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/uhci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/uhci_pci.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/uhcivar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/uhid.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/umodem.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/uplcom.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/usb_mem.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/usbdevs#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/usbdi.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/usbdivar.h#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/uscanner.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/usb/uvisor.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/wi/if_wi.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/wl/if_wl.c#2 integrate .. //depot/projects/l4bsd/src/sys/dev/zs/zs.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/devfs/devfs_vfsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/devfs/devfs_vnops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/msdosfs/msdosfs_vfsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/ntfs/ntfs_vfsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/nullfs/null_vfsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/nwfs/nwfs_io.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/portalfs/portal_vnops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/procfs/procfs.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/pseudofs/pseudofs_vnops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/smbfs/smbfs_io.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/smbfs/smbfs_vnops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/fs/unionfs/union_vnops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gdb/gdb.h#2 integrate .. //depot/projects/l4bsd/src/sys/gdb/gdb_cons.c#2 integrate .. //depot/projects/l4bsd/src/sys/gdb/gdb_main.c#2 integrate .. //depot/projects/l4bsd/src/sys/gdb/gdb_packet.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/eli/g_eli.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/eli/g_eli.h#2 integrate .. //depot/projects/l4bsd/src/sys/geom/eli/g_eli_ctl.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/l4bsd/src/sys/geom/eli/g_eli_key.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/l4bsd/src/sys/geom/geom.h#2 integrate .. //depot/projects/l4bsd/src/sys/geom/geom_bsd.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/geom_dev.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/geom_gpt.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/geom_io.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/l4bsd/src/sys/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/ext2fs/ext2_vfsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_frw.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_fs_subr.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_super.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_attr.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_bit.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dfrag.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_trace.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_inode.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_iomap.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_vfsops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfs_vnodeops.c#2 integrate .. //depot/projects/l4bsd/src/sys/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/acpica/acpi_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/acpica/acpi_wakecode.S#2 integrate .. //depot/projects/l4bsd/src/sys/i386/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/bios/apm.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/bios/apm.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/conf/DEFAULTS#2 integrate .. //depot/projects/l4bsd/src/sys/i386/conf/GENERIC#2 integrate .. //depot/projects/l4bsd/src/sys/i386/conf/NOTES#2 integrate .. //depot/projects/l4bsd/src/sys/i386/conf/PAE#2 integrate .. //depot/projects/l4bsd/src/sys/i386/conf/XBOX#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/busdma_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/db_trace.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/identcpu.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/initcpu.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/minidump_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/pmap.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/ptrace_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/trap.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/i386/vm_machdep.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_ipc.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_ipc.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_misc.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_msg.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_other.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_proto.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_syscall.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_sysent.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_util.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_xenix.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_xenix.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_xenix_syscall.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/ibcs2_xenix_sysent.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/imgact_coff.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/syscalls.master#2 integrate .. //depot/projects/l4bsd/src/sys/i386/ibcs2/syscalls.xenix#2 integrate .. //depot/projects/l4bsd/src/sys/i386/include/i4b_ioctl.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/include/md_var.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/include/npx.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/include/specialreg.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/isa/npx.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/linux/linux_dummy.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/linux/linux_proto.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/linux/linux_syscall.h#2 integrate .. //depot/projects/l4bsd/src/sys/i386/linux/linux_sysent.c#2 integrate .. //depot/projects/l4bsd/src/sys/i386/linux/syscalls.master#2 integrate .. //depot/projects/l4bsd/src/sys/i4b/layer4/i4b_l4mgmt.c#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/conf/DEFAULTS#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/conf/GENERIC#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/conf/NOTES#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/conf/SKI#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/disasm/disasm.h#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/disasm/disasm_decode.c#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/disasm/disasm_extract.c#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/disasm/disasm_format.c#2 integrate .. //depot/projects/l4bsd/src/sys/ia64/disasm/disasm_int.h#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jul 11 12:35:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CA5B816A4DF; Tue, 11 Jul 2006 12:35:46 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 9D7E616A4DA for ; Tue, 11 Jul 2006 12:35:46 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6B4FE43D45 for ; Tue, 11 Jul 2006 12:35:46 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BCZjWW025008 for ; Tue, 11 Jul 2006 12:35:46 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BCZjDZ025005 for perforce@freebsd.org; Tue, 11 Jul 2006 12:35:45 GMT (envelope-from piso@freebsd.org) Date: Tue, 11 Jul 2006 12:35:45 GMT Message-Id: <200607111235.k6BCZjDZ025005@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101269 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 12:35:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=101269 Change 101269 by piso@piso_newluxor on 2006/07/11 12:34:51 I accidentaly axed INTR_FAST from re. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/re/if_re.c#5 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/re/if_re.c#5 (text+ko) ==== @@ -1286,8 +1286,8 @@ #endif /* Hook interrupt last to avoid having to lock softc */ - error = bus_setup_intr(dev, sc->rl_irq, INTR_TYPE_NET | INTR_MPSAFE, - re_intr, NULL, sc, &sc->rl_intrhand); + error = bus_setup_intr(dev, sc->rl_irq, INTR_TYPE_NET | INTR_MPSAFE | + INTR_FAST, re_intr, NULL, sc, &sc->rl_intrhand); if (error) { device_printf(dev, "couldn't set up irq\n"); ether_ifdetach(ifp); From owner-p4-projects@FreeBSD.ORG Tue Jul 11 12:48:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 891A816A4DF; Tue, 11 Jul 2006 12:48:02 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 4C18A16A4DA for ; Tue, 11 Jul 2006 12:48:02 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0225143D4C for ; Tue, 11 Jul 2006 12:48:02 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BCm1gF033360 for ; Tue, 11 Jul 2006 12:48:01 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BCm12F033357 for perforce@freebsd.org; Tue, 11 Jul 2006 12:48:01 GMT (envelope-from piso@freebsd.org) Date: Tue, 11 Jul 2006 12:48:01 GMT Message-Id: <200607111248.k6BCm12F033357@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101270 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 12:48:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=101270 Change 101270 by piso@piso_newluxor on 2006/07/11 12:47:59 Unbreak FAST handlers: with filters in place, it's legal to have handler == NULL, while it's not correct to have both filter == NULL && handler == NULL. This fixes all the problems i had with my laptop, and now i've 2 boxes (my laptop and my desktop) happily running this branch with no problem: the basic infrastructure is ready now to accept filter+ithread drivers. Affected files ... .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#7 edit Differences ... ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#7 (text+ko) ==== @@ -329,7 +329,7 @@ struct intr_handler *ih, *temp_ih; struct intr_thread *it; - if (ie == NULL || name == NULL || handler == NULL) + if (ie == NULL || name == NULL || (handler == NULL && filter == NULL)) return (EINVAL); /* Allocate and populate an interrupt handler structure. */ From owner-p4-projects@FreeBSD.ORG Tue Jul 11 13:36:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EE89C16A4E5; Tue, 11 Jul 2006 13:36:09 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C871F16A4E0 for ; Tue, 11 Jul 2006 13:36:09 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D484B43D49 for ; Tue, 11 Jul 2006 13:36:03 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BDa3T8037967 for ; Tue, 11 Jul 2006 13:36:03 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BDa3fH037964 for perforce@freebsd.org; Tue, 11 Jul 2006 13:36:03 GMT (envelope-from piso@freebsd.org) Date: Tue, 11 Jul 2006 13:36:03 GMT Message-Id: <200607111336.k6BDa3fH037964@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101272 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 13:36:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=101272 Change 101272 by piso@piso_newluxor on 2006/07/11 13:35:02 Correct the EOI and mask&EOI logic after calling intr_filter_loop(). Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#4 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#4 (text+ko) ==== @@ -220,20 +220,21 @@ thread = 0; critical_enter(); thread = intr_filter_loop(ie, frame); - + /* - * If there are any threaded handlers that need to run, - * mask the source as well as sending it an EOI. Otherwise, - * just send it an EOI but leave it unmasked. + * If the interrupt was fully served, send it an EOI but leave it + * unmasked. Otherwise, if there are any threaded handlers that need + * to run or it was a stray interrupt, mask the source as well as + * sending it an EOI. */ - if (thread) - isrc->is_pic->pic_disable_source(isrc, PIC_EOI); + if (thread & FILTER_HANDLED) + isrc->is_pic->pic_eoi_source(isrc); else - isrc->is_pic->pic_eoi_source(isrc); + isrc->is_pic->pic_disable_source(isrc, PIC_EOI); critical_exit(); /* Schedule the ithread if needed. */ - if (thread) { + if (thread & FILTER_SCHEDULE_THREAD) { error = intr_event_schedule_thread(ie); KASSERT(error == 0, ("bad stray interrupt")); } From owner-p4-projects@FreeBSD.ORG Tue Jul 11 14:00:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D8D8A16A4DF; Tue, 11 Jul 2006 14:00:34 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 9BF9B16A4DD for ; Tue, 11 Jul 2006 14:00:34 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4E82043D76 for ; Tue, 11 Jul 2006 14:00:34 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BE0Y9h039470 for ; Tue, 11 Jul 2006 14:00:34 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BE0Yur039467 for perforce@freebsd.org; Tue, 11 Jul 2006 14:00:34 GMT (envelope-from gabor@FreeBSD.org) Date: Tue, 11 Jul 2006 14:00:34 GMT Message-Id: <200607111400.k6BE0Yur039467@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101273 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 14:00:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=101273 Change 101273 by gabor@gabor_spitfire on 2006/07/11 14:00:04 Fix LIB_DEPENDS with DESTDIR, the key is chroot again. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#18 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#18 (text+ko) ==== @@ -4736,6 +4736,7 @@ lib-depends: .if defined(LIB_DEPENDS) && !defined(NO_DEPENDS) +.if !defined(DESTDIR) @for i in ${LIB_DEPENDS}; do \ lib=$${i%%:*}; \ case $$lib in \ @@ -4777,6 +4778,49 @@ fi; \ fi; \ done +.else + @for i in ${LIB_DEPENDS}; do \ + lib=$${i%%:*}; \ + case $$lib in \ + *.*.*) pattern="`${ECHO_CMD} $$lib | ${SED} -e 's/\./\\\\./g'`" ;;\ + *.*) pattern="$${lib%%.*}\.$${lib#*.}" ;;\ + *) pattern="$$lib" ;;\ + esac; \ + dir=$${i#*:}; \ + target=$${i##*:}; \ + if ${TEST} $$dir = $$target; then \ + target="${DEPENDS_TARGET}"; \ + depends_args="${DEPENDS_ARGS}"; \ + else \ + dir=$${dir%%:*}; \ + fi; \ + ${ECHO_MSG} -n "===> ${PKGNAME} depends on shared library: $$lib in ${DESTDIR}"; \ + if ${CHROOT} ${DESTDIR} ${LDCONFIG} -r | ${GREP} -vwF -e "${PKGCOMPATDIR}" | ${GREP} -qwE -e "-l$$pattern"; then \ + ${ECHO_MSG} " - found"; \ + if [ ${_DEPEND_ALWAYS} = 1 ]; then \ + ${ECHO_MSG} " (but building it anyway)"; \ + notfound=1; \ + else \ + notfound=0; \ + fi; \ + else \ + ${ECHO_MSG} " - not found"; \ + notfound=1; \ + fi; \ + if [ $$notfound != 0 ]; then \ + ${ECHO_MSG} "===> Verifying $$target for $$lib in $$dir"; \ + if [ ! -d "$$dir" ]; then \ + ${ECHO_MSG} " => No directory for $$lib. Skipping.."; \ + else \ + ${_INSTALL_DEPENDS} \ + if ! ${CHROOT} ${DESTDIR} ${LDCONFIG} -r | ${GREP} -vwF -e "${PKGCOMPATDIR}" | ${GREP} -qwE -e "-l$$pattern"; then \ + ${ECHO_MSG} "Error: shared library \"$$lib\" does not exist"; \ + ${FALSE}; \ + fi; \ + fi; \ + fi; \ + done +.endif .endif misc-depends: From owner-p4-projects@FreeBSD.ORG Tue Jul 11 14:33:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 70C9716A4E1; Tue, 11 Jul 2006 14:33:26 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 48B8016A4DF for ; Tue, 11 Jul 2006 14:33:26 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EB61043D70 for ; Tue, 11 Jul 2006 14:33:24 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BEXO6s047385 for ; Tue, 11 Jul 2006 14:33:24 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BEXFeJ047364 for perforce@freebsd.org; Tue, 11 Jul 2006 14:33:15 GMT (envelope-from rdivacky@FreeBSD.org) Date: Tue, 11 Jul 2006 14:33:15 GMT Message-Id: <200607111433.k6BEXFeJ047364@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101276 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 14:33:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=101276 Change 101276 by rdivacky@rdivacky_witten on 2006/07/11 14:33:10 IFC Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/Makefile#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/pmap.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/conf/GENERIC#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/arm/pmap.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/at91_pio.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/at91_piovar.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/uart_dev_at91usart.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/bsm/audit_kevents.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/bsm/audit_record.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/freebsd32/freebsd32_misc.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/freebsd32/freebsd32_proto.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/freebsd32/freebsd32_syscall.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/freebsd32/freebsd32_syscalls.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/freebsd32/freebsd32_sysent.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/freebsd32/syscalls.master#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linprocfs/linprocfs.c#5 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_ioctl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_socket.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_util.h#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/svr4_ipc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/svr4_proto.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/svr4_stream.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/svr4_syscall.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/svr4_syscallnames.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/svr4_sysent.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/svr4_util.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/compat/svr4/syscalls.master#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/NOTES#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/files#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/files.ia64#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/kern.mk#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/kern.pre.mk#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/kmod.mk#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/conf/options#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_bstream.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_bstream.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_context.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_env.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_scoreboard.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_self.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_self_context.s#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_step.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_str.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_str.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_swap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_swap.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_ttrace.c#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_ttrace.h#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_uinfo.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_uinfo.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_utable.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/ia64/libuwx/src/uwx_utable.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/pf/net/if_pflog.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/contrib/pf/net/if_pfsync.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/asr/MAINTAINER#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ata/ata-all.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ata/ata-chipset.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ata/ata-pci.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/bge/if_bge.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/bge/if_bgereg.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/fdc/fdc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ic/nec765.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_freebsd.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_freebsd.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_sbus.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/isp_target.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/ispmbox.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/ispreg.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/isp/ispvar.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ispfw/asm_1040.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ispfw/asm_1080.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ispfw/asm_12160.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mfi/mfi.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/acphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/amphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/bmtphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/brgphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/ciphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/e1000phy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/exphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/inphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/lxtphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/mlphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/nsgphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/nsphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/pnaphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/qsphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/rgephy.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/rlphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/ruephy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/tdkphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/tlphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/ukphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/mii/xmphy.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/puc/puc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/puc/puc_pccard.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/puc/puc_pci.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/puc/pucdata.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/re/if_re.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sio/sio.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sk/if_sk.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/sound/pci/solo.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/if_aue.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/if_ural.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/uplcom.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/dev/usb/usbdevs#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/doc/Doxyfile#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/Makefile#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Dependencies#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-cam#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-crypto#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-dev_pci#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-dev_sound#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-dev_usb#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-geom#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-i4b#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-kern#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-libkern#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-linux#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-net80211#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-netgraph#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-netinet#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-netinet6#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-netipsec#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-opencrypto#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Doxyfile-vm#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/Makefile#3 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/README#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/fs/devfs/devfs_vfsops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/fs/devfs/devfs_vnops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/fs/portalfs/portal_vnops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/fs/pseudofs/pseudofs_vnops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/fs/unionfs/union_vnops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/conf/GENERIC#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/conf/PAE#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/conf/XBOX#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/i386/pmap.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_ipc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_ipc.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_misc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_msg.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_other.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_poll.h#2 delete .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_proto.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_syscall.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_sysent.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_util.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_xenix.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_xenix.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_xenix_syscall.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/ibcs2_xenix_sysent.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/imgact_coff.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/syscalls.master#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/ibcs2/syscalls.xenix#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/include/i4b_ioctl.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_proto.h#11 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_syscall.h#11 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysent.c#11 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/syscalls.master#11 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/i4b/layer4/i4b_l4mgmt.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/conf/GENERIC#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/ia64/emulate.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/ia64/trap.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/include/ieeefp.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ia64/include/md_var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/isa/isahint.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/bus_if.m#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/init_sysent.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_acl.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_descrip.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_environment.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_fork.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_ktrace.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_linker.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_prot.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_thr.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_thread.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sched_4bsd.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sched_core.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_bus.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_hints.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sys_generic.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/syscalls.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/syscalls.master#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sysv_sem.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_socket2.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_syscalls.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_mount.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_subr.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_syscalls.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/netgraph/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/modules/streams/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/modules/svr4/Makefile#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/bpf.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_atmsubr.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_bridge.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_clone.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_clone.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_disc.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_enc.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_faith.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_gif.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_gre.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_loop.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_ppp.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_stf.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_tun.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/if_vlan.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/net/rtsock.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/ng_tag.c#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/netgraph/ng_tag.h#1 branch .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/if_ether.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/in_pcb.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/in_rmx.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_carp.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_divert.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_fw2.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_ipsec.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/ip_output.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/libalias/libalias.3#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet/tcp_input.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet6/in6.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet6/in6_cksum.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet6/in6_pcb.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet6/in6_rmx.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet6/in6_var.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netinet6/ipsec.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/nfsclient/nfs_diskless.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/nfsclient/nfs_socket.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pc98/conf/GENERIC#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pci/agp_i810.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/pci/if_rlreg.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/posix4/ksched.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/posix4/p1003_1b.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/posix4/posix4.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/powerpc/powerpc/mmu_oea.c#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_arg.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/audit/audit_bsm.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/security/mac_biba/mac_biba.c#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sparc64/conf/GENERIC#4 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/bus.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/sockio.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/syscall.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/syscall.mk#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/syscallsubr.h#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/sysproto.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/systm.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/sys/thr.h#2 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/ufs/ffs/ffs_vfsops.c#3 integrate .. //depot/projects/soc2006/rdivacky_linuxolator/vm/vm_meter.c#3 integrate Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/amd64/pmap.c#4 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.560 2006/06/27 04:28:22 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1132,8 +1131,7 @@ } void -pmap_pinit0(pmap) - struct pmap *pmap; +pmap_pinit0(pmap_t pmap) { PMAP_LOCK_INIT(pmap); @@ -1148,8 +1146,7 @@ * such as one in a vmspace structure. */ void -pmap_pinit(pmap) - register struct pmap *pmap; +pmap_pinit(pmap_t pmap) { vm_page_t pml4pg; static vm_pindex_t color; @@ -1611,9 +1608,9 @@ vm_page_flag_clear(m, PG_WRITEABLE); m->md.pv_list_count--; pmap_unuse_pt(pmap, va, ptepde); + free_pv_entry(pmap, pv); if (pmap != locked_pmap) PMAP_UNLOCK(pmap); - free_pv_entry(locked_pmap, pv); } } } @@ -1979,7 +1976,7 @@ void pmap_remove_all(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; pt_entry_t *pte, tpte; pd_entry_t ptepde; @@ -2145,7 +2142,7 @@ { vm_paddr_t pa; pd_entry_t *pde; - register pt_entry_t *pte; + pt_entry_t *pte; vm_paddr_t opa; pt_entry_t origpte, newpte; vm_page_t mpte, om; @@ -2582,12 +2579,9 @@ * The mapping must already exist in the pmap. */ void -pmap_change_wiring(pmap, va, wired) - register pmap_t pmap; - vm_offset_t va; - boolean_t wired; +pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { - register pt_entry_t *pte; + pt_entry_t *pte; /* * Wiring is not a hardware characteristic so there is no need to @@ -2796,9 +2790,7 @@ * subset of pmaps for proper page aging. */ boolean_t -pmap_page_exists_quick(pmap, m) - pmap_t pmap; - vm_page_t m; +pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { pv_entry_t pv; int loops = 0; @@ -2977,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { - register pv_entry_t pv; + pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3030,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3052,45 +3033,33 @@ int pmap_ts_referenced(vm_page_t m) { - register pv_entry_t pv, pvf, pvn; + pv_entry_t pv, pvf, pvn; pmap_t pmap; pt_entry_t *pte; - pt_entry_t v; int rtval = 0; if (m->flags & PG_FICTITIOUS) return (rtval); - mtx_assert(&vm_page_queue_mtx, MA_OWNED); if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { - pvf = pv; - do { pvn = TAILQ_NEXT(pv, pv_list); - TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); - TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); - pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - - if (pte && ((v = pte_load(pte)) & PG_A) != 0) { + if ((*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); - rtval++; - if (rtval > 4) { - PMAP_UNLOCK(pmap); - break; - } + if (rtval > 4) + pvn = NULL; } PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); } - return (rtval); } @@ -3100,7 +3069,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3111,7 +3096,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3125,9 +3126,7 @@ * NOT real memory. */ void * -pmap_mapdev(pa, size) - vm_paddr_t pa; - vm_size_t size; +pmap_mapdev(vm_paddr_t pa, vm_size_t size) { vm_offset_t va, tmpva, offset; @@ -3151,9 +3150,7 @@ } void -pmap_unmapdev(va, size) - vm_offset_t va; - vm_size_t size; +pmap_unmapdev(vm_offset_t va, vm_size_t size) { vm_offset_t base, offset, tmpva; @@ -3173,9 +3170,7 @@ * perform the pmap work for mincore */ int -pmap_mincore(pmap, addr) - pmap_t pmap; - vm_offset_t addr; +pmap_mincore(pmap_t pmap, vm_offset_t addr) { pt_entry_t *ptep, pte; vm_page_t m; ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/conf/GENERIC#4 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.464 2006/07/09 16:39:21 mjacob Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols @@ -252,6 +251,7 @@ device md # Memory "disks" device gif # IPv6 and IPv4 tunneling device faith # IPv6-to-IPv4 relaying (translation) +device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_proto.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.14 2006/06/26 18:37:35 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.12 2006/06/26 18:36:16 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_syscall.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.14 2006/06/26 18:37:35 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.12 2006/06/26 18:36:16 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/linux32_sysent.c#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.14 2006/06/26 18:37:35 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.12 2006/06/26 18:36:16 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.17 2006/07/06 21:43:14 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp */ #include @@ -41,8 +41,8 @@ { SYF_MPSAFE | AS(linux_stat_args), (sy_call_t *)linux_stat, AUE_STAT }, /* 18 = linux_stat */ { SYF_MPSAFE | AS(linux_lseek_args), (sy_call_t *)linux_lseek, AUE_LSEEK }, /* 19 = linux_lseek */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getpid, AUE_GETPID }, /* 20 = linux_getpid */ - { AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ - { AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ + { SYF_MPSAFE | AS(linux_mount_args), (sy_call_t *)linux_mount, AUE_MOUNT }, /* 21 = linux_mount */ + { SYF_MPSAFE | AS(linux_oldumount_args), (sy_call_t *)linux_oldumount, AUE_UMOUNT }, /* 22 = linux_oldumount */ { SYF_MPSAFE | AS(linux_setuid16_args), (sy_call_t *)linux_setuid16, AUE_SETUID }, /* 23 = linux_setuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getuid16, AUE_GETUID }, /* 24 = linux_getuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_stime, AUE_SETTIMEOFDAY }, /* 25 = linux_stime */ @@ -72,9 +72,9 @@ { SYF_MPSAFE | 0, (sy_call_t *)linux_geteuid16, AUE_GETEUID }, /* 49 = linux_geteuid16 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_getegid16, AUE_GETEGID }, /* 50 = linux_getegid16 */ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ - { AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ + { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ @@ -137,7 +137,7 @@ { SYF_MPSAFE | AS(linux_wait4_args), (sy_call_t *)linux_wait4, AUE_WAIT4 }, /* 114 = linux_wait4 */ { SYF_MPSAFE | 0, (sy_call_t *)linux_swapoff, AUE_SWAPOFF }, /* 115 = linux_swapoff */ { SYF_MPSAFE | AS(linux_sysinfo_args), (sy_call_t *)linux_sysinfo, AUE_NULL }, /* 116 = linux_sysinfo */ - { AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ + { SYF_MPSAFE | AS(linux_ipc_args), (sy_call_t *)linux_ipc, AUE_NULL }, /* 117 = linux_ipc */ { SYF_MPSAFE | AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC }, /* 118 = fsync */ { SYF_MPSAFE | AS(linux_sigreturn_args), (sy_call_t *)linux_sigreturn, AUE_SIGRETURN }, /* 119 = linux_sigreturn */ { SYF_MPSAFE | AS(linux_clone_args), (sy_call_t *)linux_clone, AUE_RFORK }, /* 120 = linux_clone */ ==== //depot/projects/soc2006/rdivacky_linuxolator/amd64/linux32/syscalls.master#7 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.12 2006/06/26 18:36:16 jhb Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -75,10 +75,10 @@ 19 AUE_LSEEK MSTD { int linux_lseek(l_uint fdes, l_off_t off, \ l_int whence); } 20 AUE_GETPID MSTD { int linux_getpid(void); } -21 AUE_MOUNT STD { int linux_mount(char *specialfile, \ +21 AUE_MOUNT MSTD { int linux_mount(char *specialfile, \ char *dir, char *filesystemtype, \ l_ulong rwflag, void *data); } -22 AUE_UMOUNT STD { int linux_oldumount(char *path); } +22 AUE_UMOUNT MSTD { int linux_oldumount(char *path); } 23 AUE_SETUID MSTD { int linux_setuid16(l_uid16_t uid); } 24 AUE_GETUID MSTD { int linux_getuid16(void); } 25 AUE_SETTIMEOFDAY MSTD { int linux_stime(void); } @@ -111,9 +111,9 @@ 49 AUE_GETEUID MSTD { int linux_geteuid16(void); } 50 AUE_GETEGID MSTD { int linux_getegid16(void); } 51 AUE_ACCT MNOPROTO { int acct(char *path); } -52 AUE_UMOUNT STD { int linux_umount(char *path, l_int flags); } +52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -212,7 +212,7 @@ struct l_rusage *rusage); } 115 AUE_SWAPOFF MSTD { int linux_swapoff(void); } 116 AUE_NULL MSTD { int linux_sysinfo(struct l_sysinfo *info); } -117 AUE_NULL STD { int linux_ipc(l_uint what, l_int arg1, \ +117 AUE_NULL MSTD { int linux_ipc(l_uint what, l_int arg1, \ l_int arg2, l_int arg3, void *ptr, \ l_long arg5); } 118 AUE_FSYNC MNOPROTO { int fsync(int fd); } ==== //depot/projects/soc2006/rdivacky_linuxolator/arm/arm/pmap.c#3 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.64 2006/06/15 01:01:05 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.65 2006/07/11 11:22:06 cognet Exp $"); #include #include #include @@ -199,7 +199,7 @@ static pv_entry_t pmap_get_pv_entry(void); static void pmap_enter_locked(pmap_t, vm_offset_t, vm_page_t, - vm_prot_t, boolean_t); + vm_prot_t, boolean_t, int); static void pmap_vac_me_harder(struct vm_page *, pmap_t, vm_offset_t); static void pmap_vac_me_kpmap(struct vm_page *, pmap_t, @@ -373,7 +373,7 @@ * L2 allocation. */ #define pmap_alloc_l2_dtable() \ - (void*)uma_zalloc(l2table_zone, M_NOWAIT) + (void*)uma_zalloc(l2table_zone, M_NOWAIT|M_USE_RESERVE) #define pmap_free_l2_dtable(l2) \ uma_zfree(l2table_zone, l2) @@ -952,7 +952,7 @@ again_ptep: PMAP_UNLOCK(pm); vm_page_unlock_queues(); - ptep = (void*)uma_zalloc(l2zone, M_NOWAIT); + ptep = (void*)uma_zalloc(l2zone, M_NOWAIT|M_USE_RESERVE); vm_page_lock_queues(); PMAP_LOCK(pm); if (l2b->l2b_kva != 0) { @@ -3306,7 +3306,7 @@ vm_page_lock_queues(); PMAP_LOCK(pmap); - pmap_enter_locked(pmap, va, m, prot, wired); + pmap_enter_locked(pmap, va, m, prot, wired, M_WAITOK); vm_page_unlock_queues(); PMAP_UNLOCK(pmap); } @@ -3316,7 +3316,7 @@ */ static void pmap_enter_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - boolean_t wired) + boolean_t wired, int flags) { struct l2_bucket *l2b = NULL; struct vm_page *opg; @@ -3347,10 +3347,22 @@ l2b = pmap_get_l2_bucket(pmap, va); if (l2b == NULL) l2b = pmap_grow_l2_bucket(pmap, va); - } else + } else { +do_l2b_alloc: l2b = pmap_alloc_l2_bucket(pmap, va); - KASSERT(l2b != NULL, - ("pmap_enter: failed to allocate l2 bucket")); + if (l2b == NULL) { + if (flags & M_WAITOK) { + PMAP_UNLOCK(pmap); + vm_page_unlock_queues(); + VM_WAIT; + vm_page_lock_queues(); + PMAP_LOCK(pmap); + goto do_l2b_alloc; + } + return; + } + } + ptep = &l2b->l2b_kva[l2pte_index(va)]; opte = *ptep; @@ -3557,7 +3569,7 @@ PMAP_LOCK(pmap); while (m != NULL && (diff = m->pindex - m_start->pindex) < psize) { pmap_enter_locked(pmap, start + ptoa(diff), m, prot & - (VM_PROT_READ | VM_PROT_EXECUTE), FALSE); + (VM_PROT_READ | VM_PROT_EXECUTE), FALSE, M_NOWAIT); m = TAILQ_NEXT(m, listq); } PMAP_UNLOCK(pmap); @@ -3578,7 +3590,7 @@ PMAP_LOCK(pmap); pmap_enter_locked(pmap, va, m, prot & (VM_PROT_READ | VM_PROT_EXECUTE), - FALSE); + FALSE, M_NOWAIT); PMAP_UNLOCK(pmap); } ==== //depot/projects/soc2006/rdivacky_linuxolator/arm/at91/at91_pio.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.1 2006/03/24 07:39:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); #include #include @@ -38,7 +38,9 @@ #include #include +#include #include +#include struct at91_pio_softc { @@ -103,7 +105,26 @@ static int at91_pio_probe(device_t dev) { - device_set_desc(dev, "PIO"); + const char *name; + + switch (device_get_unit(dev)) { + case 0: + name = "PIOA"; + break; + case 1: + name = "PIOB"; + break; + case 2: + name = "PIOC"; + break; + case 3: + name = "PIOD"; + break; + default: + name = "PIO"; + break; + } + device_set_desc(dev, name); return (0); } @@ -118,6 +139,9 @@ if (err) goto out; + device_printf(dev, "ABSR: %#x OSR: %#x PSR:%#x ODSR: %#x\n", + RD4(sc, PIO_ABSR), RD4(sc, PIO_OSR), RD4(sc, PIO_PSR), + RD4(sc, PIO_ODSR)); AT91_PIO_LOCK_INIT(sc); /* @@ -250,6 +274,69 @@ return (ENXIO); } +/* + * The following functions are called early in the boot process, so + * don't use bus_space, as that isn't yet available when we need to use + * them. + */ +void +at91_pio_use_periph_a(uint32_t pio, uint32_t periph_a_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ASR / 4] = periph_a_mask; + PIO[PIO_PDR / 4] = periph_a_mask; +} + +void +at91_pio_use_periph_b(uint32_t pio, uint32_t periph_b_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_BSR / 4] = periph_b_mask; + PIO[PIO_PDR / 4] = periph_b_mask; +} + +void +at91_pio_use_gpio(uint32_t pio, uint32_t gpio_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_PER / 4] = gpio_mask; +} + +void +at91_pio_gpio_input(uint32_t pio, uint32_t input_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_ODR / 4] = input_enable_mask; +} + +void +at91_pio_gpio_output(uint32_t pio, uint32_t output_enable_mask) +{ + uint32_t *PIO = (uint32_t *)(AT91RM92_BASE + pio); + + PIO[PIO_OER / 4] = output_enable_mask; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jul 11 15:05:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EB11416A4E2; Tue, 11 Jul 2006 15:05:04 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 B722A16A4DD for ; Tue, 11 Jul 2006 15:05:04 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 435E443D55 for ; Tue, 11 Jul 2006 15:05:04 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BF54oK050529 for ; Tue, 11 Jul 2006 15:05:04 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BF536N050526 for perforce@freebsd.org; Tue, 11 Jul 2006 15:05:03 GMT (envelope-from jhb@freebsd.org) Date: Tue, 11 Jul 2006 15:05:03 GMT Message-Id: <200607111505.k6BF536N050526@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101277 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 15:05:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=101277 Change 101277 by jhb@jhb_mutex on 2006/07/11 15:04:12 Update. Affected files ... .. //depot/projects/smpng/sys/notes#76 edit Differences ... ==== //depot/projects/smpng/sys/notes#76 (text+ko) ==== @@ -80,10 +80,6 @@ version of the current WITNESS check that doesn't bog the system down quite as bad. - compat ABI cleanups - + axe stackgap - + svr4 - + linux - + ibcs2 - push Giant down and mark all remaining syscalls MPSAFE + freebsd + compat32 From owner-p4-projects@FreeBSD.ORG Tue Jul 11 16:06:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 24D3B16A4E5; Tue, 11 Jul 2006 16:06:29 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B915516A4DA for ; Tue, 11 Jul 2006 16:06:28 +0000 (UTC) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 31DF143D6D for ; Tue, 11 Jul 2006 16:06:20 +0000 (GMT) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BG6K8u056969 for ; Tue, 11 Jul 2006 16:06:20 GMT (envelope-from howardsu@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BG6JMb056966 for perforce@freebsd.org; Tue, 11 Jul 2006 16:06:19 GMT (envelope-from howardsu@FreeBSD.org) Date: Tue, 11 Jul 2006 16:06:19 GMT Message-Id: <200607111606.k6BG6JMb056966@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to howardsu@FreeBSD.org using -f From: Howard Su To: Perforce Change Reviews Cc: Subject: PERFORCE change 101278 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 16:06:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101278 Change 101278 by howardsu@su_laptop on 2006/07/11 16:05:38 Reimplment SDT as Solaris way (invop). Remarks: 1. this implementation only support SDT probe in kernel module now. It doesn't support the ones in KERNEL image. 2. Disabled "nested extern declaration warning" for kernel build 3. Introduce a new MD api call in Link_elf to patch CALL to NOP. I only implement the one in i386. Other platform's build may break. 4. The old implementation is removed. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/prototype.c#4 edit .. //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt_subr.c#1 add .. //depot/projects/dtrace/src/sys/conf/files#21 edit .. //depot/projects/dtrace/src/sys/conf/kern.mk#5 edit .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/sdt_impl.h#1 add .. //depot/projects/dtrace/src/sys/i386/i386/elf_machdep.c#3 edit .. //depot/projects/dtrace/src/sys/kern/kern_linker.c#15 edit .. //depot/projects/dtrace/src/sys/kern/kern_sdt.c#4 delete .. //depot/projects/dtrace/src/sys/kern/link_elf.c#5 edit .. //depot/projects/dtrace/src/sys/modules/dtrace/sdt/Makefile#2 edit .. //depot/projects/dtrace/src/sys/sys/linker.h#10 edit .. //depot/projects/dtrace/src/sys/sys/sdt.h#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/prototype.c#4 (text+ko) ==== @@ -49,6 +49,7 @@ #include #include #include +#include #include #include #include @@ -103,10 +104,8 @@ static void prototype_provide(void *arg, dtrace_probedesc_t *desc) { - SDT_PROBE(prototype, provide, entry, arg, desc, 0, 0, 0); - - - SDT_PROBE(prototype, provide, return, arg, desc, 0, 0, 0); + DTRACE_PROBE(entry); + DTRACE_PROBE(ret); } /* ARGSUSED */ ==== //depot/projects/dtrace/src/sys/conf/files#21 (text+ko) ==== @@ -1318,7 +1318,6 @@ kern/kern_prot.c standard kern/kern_resource.c standard kern/kern_rwlock.c standard -kern/kern_sdt.c standard kern/kern_sema.c standard kern/kern_shutdown.c standard kern/kern_sig.c standard ==== //depot/projects/dtrace/src/sys/conf/kern.mk#5 (text+ko) ==== @@ -10,7 +10,7 @@ #CWARNFLAGS= -w2 # use this if you are terribly bored CWARNFLAGS= .else -CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \ +CWARNFLAGS?= -Wall -Wredundant-decls -Wstrict-prototypes \ -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \ ${_wundef} -fformat-extensions .if !defined(NO_UNDEF) ==== //depot/projects/dtrace/src/sys/i386/i386/elf_machdep.c#3 (text+ko) ==== @@ -232,3 +232,19 @@ return (0); } + +#define SDT_NOP 0x90 +#define SDT_NOPS 5 + +int +sdt_reloc_resolve(uint8_t *instr, sdt_probedesc_t *sdp) +{ + int i; + sdp->sdpd_offset = (uintptr_t)instr; + + for(i = 0; i < SDT_NOPS; i++) { + instr[i - 1] = SDT_NOP; + } + + return (1); +} ==== //depot/projects/dtrace/src/sys/kern/kern_linker.c#15 (text+ko) ==== @@ -95,6 +95,12 @@ static struct sx kld_sx; /* kernel linker lock */ +/* + * Load counter used by clients to determine if a linker file has been + * re-loaded. This counter is incremented for each file load. + */ +static int loadcnt; + static linker_class_list_t classes; static linker_file_list_t linker_files; static int next_file_id = 1; @@ -542,6 +548,9 @@ LINKER_GET_NEXT_FILE_ID(lf->id); lf->ndeps = 0; lf->deps = NULL; + lf->loadcnt = ++loadcnt; + lf->sdt_probes = NULL; + lf->sdt_nprobes = 0; STAILQ_INIT(&lf->common); TAILQ_INIT(&lf->modules); TAILQ_INSERT_TAIL(&linker_files, lf, link); ==== //depot/projects/dtrace/src/sys/kern/link_elf.c#5 (text+ko) ==== @@ -153,6 +153,8 @@ static int relocate_file(elf_file_t ef); static int link_elf_preload_parse_symbols(elf_file_t ef); +const char *sdt_prefix = "__dtrace_probe_"; + #ifdef GDB static void r_debug_state(struct r_debug *dummy_one, struct link_map *dummy_two); @@ -929,6 +931,29 @@ } static int +sdt_reloc_check(linker_file_t lf, const char *symname, uint8_t * instr) +{ + sdt_probedesc_t *sdp; + if (strncmp(symname, sdt_prefix, strlen(sdt_prefix)) != 0) + return (0); + + symname += strlen(sdt_prefix); + sdp = malloc(sizeof(sdt_probedesc_t), M_LINKER, M_WAITOK); + sdp->sdpd_name = malloc(strlen(symname) + 1, M_LINKER, M_WAITOK); + strcpy(sdp->sdpd_name, symname); + + if (sdt_reloc_resolve(instr, sdp)) { + sdp->sdpd_next = lf->sdt_probes; + lf->sdt_probes = sdp; + return (1); + } else { + free(sdp->sdpd_name, M_LINKER); + free(sdp, M_LINKER); + return (0); + } +} + +static int relocate_file(elf_file_t ef) { const Elf_Rel *rellim; @@ -945,8 +970,11 @@ if (elf_reloc(&ef->lf, (Elf_Addr)ef->address, rel, ELF_RELOC_REL, elf_lookup)) { symname = symbol_name(ef, rel->r_info); - printf("link_elf: symbol %s undefined\n", symname); - return ENOENT; + if (!sdt_reloc_check(&ef->lf, symname, + (uint8_t *) (ef->address + rel->r_offset))) { + printf("link_elf: symbol %s undefined\n", symname); + return ENOENT; + } } rel++; } ==== //depot/projects/dtrace/src/sys/modules/dtrace/sdt/Makefile#2 (text+ko) ==== @@ -3,7 +3,7 @@ .PATH: ${.CURDIR}/../../../cddl/dev/sdt KMOD= sdt -SRCS= sdt.c +SRCS= sdt.c sdt_subr.c SRCS+= bus_if.h device_if.h vnode_if.h CFLAGS+= -I${.CURDIR}/../../../cddl/dev/sdt \ ==== //depot/projects/dtrace/src/sys/sys/linker.h#10 (text+ko) ==== @@ -33,6 +33,7 @@ #include #include +#include #ifdef MALLOC_DECLARE MALLOC_DECLARE(M_LINKER); @@ -92,6 +93,10 @@ */ int nenabled; /* number of enabled probes. */ int fbt_nentries; /* number of fbt entries created. */ + sdt_probedesc_t *sdt_probes; + int sdt_nentries; + size_t sdt_nprobes; + size_t sdt_size; }; /* @@ -259,6 +264,7 @@ int elf_reloc_local(linker_file_t _lf, Elf_Addr base, const void *_rel, int _type, elf_lookup_fn _lu); const Elf_Sym *elf_get_sym(linker_file_t _lf, Elf_Size _symidx); const char *elf_get_symname(linker_file_t _lf, Elf_Size _symidx); +int sdt_reloc_resolve(uint8_t *, sdt_probedesc_t *); int elf_cpu_load_file(linker_file_t); int elf_cpu_unload_file(linker_file_t); ==== //depot/projects/dtrace/src/sys/sys/sdt.h#4 (text+ko) ==== @@ -1,106 +1,119 @@ -/*- - * Copyright 2006 John Birrell +/* + * CDDL HEADER START * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * The contents of this file are subject to the terms of the + * Common Development and Distribution License, Version 1.0 only + * (the "License"). You may not use this file except in compliance + * with the License. * - * $FreeBSD$ + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. * - * Statically Defined Tracing (SDT) definitions. + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] * + * CDDL HEADER END */ +/* + * Copyright 2004 Sun Microsystems, Inc. All rights reserved. + * Use is subject to license terms. + */ #ifndef _SYS_SDT_H #define _SYS_SDT_H #ifndef _KERNEL -#error "no user-servicable parts inside" -#endif + +#define DTRACE_PROBE(provider, name) { \ + extern void __dtrace_##provider##___##name(void); \ + __dtrace_##provider##___##name(); \ +} + +#define DTRACE_PROBE1(provider, name, arg1) { \ + extern void __dtrace_##provider##___##name(unsigned long); \ + __dtrace_##provider##___##name((unsigned long)arg1); \ +} + +#define DTRACE_PROBE2(provider, name, arg1, arg2) { \ + extern void __dtrace_##provider##___##name(unsigned long, \ + unsigned long); \ + __dtrace_##provider##___##name((unsigned long)arg1, \ + (unsigned long)arg2); \ +} + +#define DTRACE_PROBE3(provider, name, arg1, arg2, arg3) { \ + extern void __dtrace_##provider##___##name(unsigned long, \ + unsigned long, unsigned long); \ + __dtrace_##provider##___##name((unsigned long)arg1, \ + (unsigned long)arg2, (unsigned long)arg3); \ +} + +#define DTRACE_PROBE4(provider, name, arg1, arg2, arg3, arg4) { \ + extern void __dtrace_##provider##___##name(unsigned long, \ + unsigned long, unsigned long, unsigned long); \ + __dtrace_##provider##___##name((unsigned long)arg1, \ + (unsigned long)arg2, (unsigned long)arg3, \ + (unsigned long)arg4); \ +} + +#define DTRACE_PROBE5(provider, name, arg1, arg2, arg3, arg4, arg5) { \ + extern void __dtrace_##provider##___##name(unsigned long, \ + unsigned long, unsigned long, unsigned long, unsigned long);\ + __dtrace_##provider##___##name((unsigned long)arg1, \ + (unsigned long)arg2, (unsigned long)arg3, \ + (unsigned long)arg4, (unsigned long)arg5); \ +} + +#else /* _KERNEL */ + +#define DTRACE_PROBE(name) { \ + extern void __dtrace_probe_##name(void); \ + __dtrace_probe_##name(); \ +} + +#define DTRACE_PROBE1(name, type1, arg1) { \ + extern void __dtrace_probe_##name(uintptr_t); \ + __dtrace_probe_##name((uintptr_t)(arg1)); \ +} -#include +#define DTRACE_PROBE2(name, type1, arg1, type2, arg2) { \ + extern void __dtrace_probe_##name(uintptr_t, uintptr_t); \ + __dtrace_probe_##name((uintptr_t)(arg1), (uintptr_t)(arg2)); \ +} -/* - * This type definition must match that of dtrace_probe. It is defined this - * way to avoid having to rely on CDDL code. - */ -typedef void (*sdt_probe_func_t)(u_int32_t, uintptr_t arg0, uintptr_t arg1, - uintptr_t arg2, uintptr_t arg3, uintptr_t arg4); +#define DTRACE_PROBE3(name, type1, arg1, type2, arg2, type3, arg3) { \ + extern void __dtrace_probe_##name(uintptr_t, uintptr_t, uintptr_t); \ + __dtrace_probe_##name((uintptr_t)(arg1), (uintptr_t)(arg2), \ + (uintptr_t)(arg3)); \ +} -/* - * The hook for the probe function. See kern_sdt.c which defaults this to - * it's own stub. The 'sdt' provider will set it to dtrace_probe when it - * loads. - */ -extern sdt_probe_func_t sdt_probe_func; +#define DTRACE_PROBE4(name, type1, arg1, type2, arg2, \ + type3, arg3, type4, arg4) { \ + extern void __dtrace_probe_##name(uintptr_t, uintptr_t, \ + uintptr_t, uintptr_t); \ + __dtrace_probe_##name((uintptr_t)(arg1), (uintptr_t)(arg2), \ + (uintptr_t)(arg3), (uintptr_t)(arg4)); \ +} -typedef enum { - SDT_UNINIT = 1, - SDT_INIT, - SDT_OFFSET_TOO_BIG, - SDT_UNEXPECTED_INSTR -} sdt_state_t; +#endif /* _KERNEL */ -struct sdt_ref { - int version; /* Set to sizeof(struct sdt_ref). */ - sdt_state_t state; /* Initialisation state. */ - TAILQ_ENTRY(sdt_ref) - list_entry; /* SDT reference list entry. */ - char *mod; - char *func; - char *name; - id_t id; /* DTrace probe ID. */ - caddr_t probe_start; /* Start probe address. */ - caddr_t probe_end; /* End probe address. */ -#if defined(__i386__) - u_int8_t probe_enable; /* Instruction to enable the probe. */ - u_int8_t probe_disable; /* Instruction to disable the probe. */ -#endif -}; +extern const char *sdt_prefix; -#define SDT_LABEL(lbl) \ - __asm__(".globl " #lbl); \ - __asm__(#lbl ":") +typedef struct sdt_probedesc { + char *sdpd_name; /* name of this probe */ + unsigned long sdpd_offset; /* offset of call in text */ + struct sdt_probedesc *sdpd_next; /* next static probe */ +} sdt_probedesc_t; -#define _SDT_PROBE(ref, arg0, arg1, arg2, arg3 , arg4) \ - SYSINIT(ref##_sdt_init, SI_SUB_KDTRACE, SI_ORDER_SECOND, \ - sdt_register, &ref##_sdt_ref); \ - SYSUNINIT(ref##_sdt_uninit, SI_SUB_KDTRACE, SI_ORDER_ANY, \ - sdt_deregister, &ref##_sdt_ref); \ - SDT_LABEL(__##ref##_sdt_probe_start); \ - __asm__("jmp 0f; 0:"); \ - if (ref##_sdt_ref.id != 0) \ - (*sdt_probe_func)(ref##_sdt_ref.id, (uintptr_t) arg0, (uintptr_t) arg1, \ - (uintptr_t) arg2, (uintptr_t) arg3 , (uintptr_t) arg4); \ - SDT_LABEL(__##ref##_sdt_probe_end); +#ifdef __cplusplus +} +#endif -#define SDT_PROBE(mod, func, name, arg0, arg1, arg2, arg3 , arg4) \ - static struct sdt_ref mod##_##func##_##name##_sdt_ref = { \ - sizeof(struct sdt_ref), SDT_UNINIT, { NULL, NULL }, #mod, #func, #name, \ - 0, 0, 0, 0, 0 }; \ - _SDT_PROBE(mod##_##func##_##name, arg0, arg1, arg2, arg3 , arg4) +#endif /* _SYS_SDT_H */ -void sdt_deregister(void *); -void sdt_register(void *); -void sdt_probe_stub(u_int32_t, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, - uintptr_t arg3, uintptr_t arg4); -int sdt_ref_listall(int (*)(struct sdt_ref *, void *), void *); -#endif /* _SYS_SDT_H */ From owner-p4-projects@FreeBSD.ORG Tue Jul 11 16:18:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E678B16A4DD; Tue, 11 Jul 2006 16:18:38 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 8BC2C16A510 for ; Tue, 11 Jul 2006 16:18:38 +0000 (UTC) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2F4CC43D58 for ; Tue, 11 Jul 2006 16:18:37 +0000 (GMT) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BGIbw5057680 for ; Tue, 11 Jul 2006 16:18:37 GMT (envelope-from howardsu@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BGIaSr057677 for perforce@freebsd.org; Tue, 11 Jul 2006 16:18:36 GMT (envelope-from howardsu@FreeBSD.org) Date: Tue, 11 Jul 2006 16:18:36 GMT Message-Id: <200607111618.k6BGIaSr057677@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to howardsu@FreeBSD.org using -f From: Howard Su To: Perforce Change Reviews Cc: Subject: PERFORCE change 101279 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 16:18:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=101279 Change 101279 by howardsu@su_laptop on 2006/07/11 16:17:54 one missing file in last commit Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt.c#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt.c#4 (text+ko) ==== @@ -1,33 +1,33 @@ -/*- - * Copyright 2006 John Birrell + +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * Portions Copyright 2006 John Birrell jb@freebsd.org * * $FreeBSD$ * - * Statically Defined Tracing (SDT) provider for DTrace. This driver relies - * on the 'sdt' backend kernel intrastructure which registers and - * de-registers SDT probes using SYSINIT/SYSUNINIT. - * + */ + +/* + * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Use is subject to license terms. */ #include @@ -48,11 +48,13 @@ #include #include #include +#include #include #include #include #include #include +#include #include #include #include @@ -60,16 +62,24 @@ #include #include -#include +#include + +MALLOC_DECLARE(M_SDT); +MALLOC_DEFINE(M_SDT, "sdt", "Static Dtrace Tracing"); + +#define SDT_PATCHVAL 0xf0 +#define SDT_ADDR2NDX(addr) ((((uintptr_t)(addr)) >> 4) & sdt_probetab_mask) +#define SDT_PROBETAB_SIZE 0x1000/* 4k entries -- 16K total */ -static d_open_t sdt_open; -static int sdt_provide_ref(struct sdt_ref *, void *); +static d_open_t sdt_open; static int sdt_unload(void); -static void sdt_provide(void *, dtrace_probedesc_t *); +static void sdt_provide_module(void *, modctl_t *); static void sdt_destroy(void *, dtrace_id_t, void *); static void sdt_enable(void *, dtrace_id_t, void *); static void sdt_disable(void *, dtrace_id_t, void *); static void sdt_load(void *); +static void sdt_suspend(void *, dtrace_id_t, void *); +static void sdt_resume(void *, dtrace_id_t, void *); static struct cdevsw sdt_cdevsw = { .d_version = D_VERSION, @@ -77,21 +87,13 @@ .d_name = "sdt", }; -static dtrace_pattr_t sdt_attr = { -{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_COMMON }, -{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN }, -{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_ISA }, -{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_COMMON }, -{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_ISA }, -}; - static dtrace_pops_t sdt_pops = { - sdt_provide, NULL, + sdt_provide_module, sdt_enable, sdt_disable, - NULL, - NULL, + sdt_suspend, + sdt_resume, NULL, NULL, NULL, @@ -99,90 +101,303 @@ }; static struct cdev *sdt_cdev; -static dtrace_provider_id_t sdt_id; +static sdt_probe_t **sdt_probetab; +static int sdt_probetab_size; +static int sdt_probetab_mask; +static int sdt_verbose = 1; -int -sdt_provide_ref(struct sdt_ref *ref, void *arg) +static int +sdt_invop(uintptr_t addr, uintptr_t *stack, uintptr_t rval) { - if (dtrace_probe_lookup(sdt_id, ref->mod, ref->func, ref->name) != 0) + uintptr_t stack0, stack1, stack2, stack3, stack4; + sdt_probe_t *sdt = sdt_probetab[SDT_ADDR2NDX(addr)]; + + for (; sdt != NULL; sdt = sdt->sdp_hashnext) { + if ((uintptr_t)sdt->sdp_patchpoint == addr) { + int i = 0; + /* + * When accessing the arguments on the stack, + * we must protect against accessing beyond + * the stack. We can safely set NOFAULT here + * -- we know that interrupts are already + * disabled. + */ + DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); + stack0 = stack[i++]; + stack1 = stack[i++]; + stack2 = stack[i++]; + stack3 = stack[i++]; + stack4 = stack[i++]; + DTRACE_CPUFLAG_CLEAR(CPU_DTRACE_NOFAULT | + CPU_DTRACE_BADADDR); + + dtrace_probe(sdt->sdp_id, stack0, stack1, + stack2, stack3, stack4); + return (DTRACE_INVOP_NOP); + } + } + + return (0); +} + +static int +sdt_provide_module_function(linker_file_t lf, linker_symval_t *symval, void *opaque) +{ + char *modname = opaque; + sdt_probedesc_t *sdpd; + sdt_probe_t *sdp, *old; + sdt_provider_t *prov; + int len; + + /* + * One for all, and all for one: if we haven't yet registered all of + * our providers, we'll refuse to provide anything. + */ + for (prov = sdt_providers; prov->sdtp_name != NULL; prov++) { + if (prov->sdtp_id == DTRACE_PROVNONE) + return (0); + } + + if (lf->sdt_nprobes != 0 || (sdpd = lf->sdt_probes) == NULL) return (0); - ref->id = dtrace_probe_create(sdt_id, ref->mod, ref->func, ref->name, 0, ref); + for (; sdpd != NULL; sdpd = sdpd->sdpd_next) { + char *name = sdpd->sdpd_name, *func, *nname; + int i, j; + sdt_provider_t *prov; + dtrace_id_t id; + + for (prov = sdt_providers; prov->sdtp_prefix != NULL; prov++) { + char *prefix = prov->sdtp_prefix; + + if (strncmp(name, prefix, strlen(prefix)) == 0) { + name += strlen(prefix); + break; + } + } + + nname = malloc(len = strlen(name) + 1, M_SDT, M_WAITOK); + + for (i = 0, j = 0; name[j] != '\0'; i++) { + if (name[j] == '_' && name[j + 1] == '_') { + nname[i] = '-'; + j += 2; + } else { + nname[i] = name[j++]; + } + } + + nname[i] = '\0'; + + sdp = malloc(sizeof (sdt_probe_t), M_SDT, M_WAITOK | M_ZERO); + sdp->sdp_loadcnt = lf->loadcnt; + sdp->sdp_ctl = lf; + sdp->sdp_name = nname; + sdp->sdp_namelen = len; + sdp->sdp_provider = prov; + + if (symval->name == NULL) + func = ""; + else { + /* HACK: we need change prototype of _probe_lookup */ + func = malloc(strlen(symval->name) + 1, M_SDT, M_WAITOK); + strcpy(func, symval->name); + } + + /* + * We have our provider. Now create the probe. + */ + if ((id = dtrace_probe_lookup(prov->sdtp_id, modname, + func, nname)) != DTRACE_IDNONE) { + old = dtrace_probe_arg(prov->sdtp_id, id); + ASSERT(old != NULL); + + sdp->sdp_next = old->sdp_next; + sdp->sdp_id = id; + old->sdp_next = sdp; + } else { + sdp->sdp_id = dtrace_probe_create(prov->sdtp_id, + modname, func, nname, 3, sdp); + + lf->sdt_nprobes++; + } + + sdp->sdp_hashnext = + sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)]; + sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)] = sdp; - return (0); + sdp->sdp_patchval = SDT_PATCHVAL; + sdp->sdp_patchpoint = (uint8_t *)sdpd->sdpd_offset; + sdp->sdp_savedval = *sdp->sdp_patchpoint; + if (symval->name != NULL) + free(func, M_SDT); + } + return (0); } /*ARGSUSED*/ static void -sdt_provide(void *arg, dtrace_probedesc_t *desc) +sdt_provide_module(void *arg, modctl_t *lf) { - sdt_ref_listall(sdt_provide_ref, NULL); + char modname[MAXPATHLEN]; + size_t len; + + strlcpy(modname, lf->filename, sizeof(modname)); + len = strlen(modname); + if (len > 3 && strcmp(modname + len - 3, ".ko") == 0) + modname[len - 3] = '\0'; + + /* + * List the functions in the module and the symbol values. + */ + linker_file_function_listall(lf, sdt_provide_module_function, modname); } /* ARGSUSED */ static void sdt_destroy(void *arg, dtrace_id_t id, void *parg) { + sdt_probe_t *sdt = parg, *next, *hash, *last; + modctl_t *ctl; + int ndx; + + do { + ctl = sdt->sdp_ctl; + + ctl->sdt_nentries--; + + /* + * Now we need to remove this probe from the sdt_probetab. + */ + ndx = SDT_ADDR2NDX(sdt->sdp_patchpoint); + last = NULL; + hash = sdt_probetab[ndx]; + + while (hash != sdt) { + ASSERT(hash != NULL); + last = hash; + hash = hash->sdp_hashnext; + } + + if (last != NULL) { + last->sdp_hashnext = sdt->sdp_hashnext; + } else { + sdt_probetab[ndx] = sdt->sdp_hashnext; + } + + next = sdt->sdp_next; + free(sdt, M_SDT); + + sdt = next; + } while (sdt != NULL); } /* ARGSUSED */ static void sdt_enable(void *arg, dtrace_id_t id, void *parg) { - struct sdt_ref *ref = parg; + sdt_probe_t *sdt = parg; + modctl_t *ctl = sdt->sdp_ctl; -#if defined(__i386__) - u_int16_t *p; + ctl->nenabled++; /* - * Point to the instruction after the start probe label. + * Now check that our modctl has the expected load count. If it + * doesn't, this module must have been unloaded and reloaded -- and + * we're not going to touch it. */ - p = (u_int16_t *) ref->probe_start + 1; + if (ctl->loadcnt != sdt->sdp_loadcnt) { + if (sdt_verbose) { + printf("sdt is failing for probe %s " + "(module %s reloaded)", + sdt->sdp_name, ctl->filename); + } + + return; + } - /* - * Enable the probe. - */ - *p = ref->probe_enable; -#else -#error "Need machine dependent code!" -#endif + for (; sdt != NULL; sdt = sdt->sdp_next) { + if (sdt_verbose) + printf("sdt_enable %s\n",sdt->sdp_name); + *sdt->sdp_patchpoint = sdt->sdp_patchval; + } } /* ARGSUSED */ static void sdt_disable(void *arg, dtrace_id_t id, void *parg) { - struct sdt_ref *ref = parg; + sdt_probe_t *sdt = parg; + modctl_t *ctl = sdt->sdp_ctl; + + ASSERT(ctl->nenabled > 0); + ctl->nenabled--; + + if ((ctl->loadcnt != sdt->sdp_loadcnt)) + return; + + for (; sdt != NULL; sdt = sdt->sdp_next) + *sdt->sdp_patchpoint = sdt->sdp_savedval; +} + +/*ARGSUSED*/ +static void +sdt_suspend(void *arg, dtrace_id_t id, void *parg) +{ + sdt_probe_t *sdt = parg; + modctl_t *ctl = sdt->sdp_ctl; + + ASSERT(ctl->nenabled > 0); + + if ((ctl->loadcnt != sdt->sdp_loadcnt)) + return; + + for (; sdt != NULL; sdt = sdt->sdp_next) + *sdt->sdp_patchpoint = sdt->sdp_savedval; +} + +/*ARGSUSED*/ +static void +sdt_resume(void *arg, dtrace_id_t id, void *parg) +{ + sdt_probe_t *sdt = parg; + modctl_t *ctl = sdt->sdp_ctl; -#if defined(__i386__) - u_int16_t *p; + ASSERT(ctl->nenabled > 0); - /* - * Point to the instruction after the start probe label. - */ - p = (u_int16_t *) ref->probe_start + 1; + if ((ctl->loadcnt != sdt->sdp_loadcnt)) + return; - /* - * Disable the probe. - */ - *p = ref->probe_disable; -#else -#error "Need machine dependent code!" -#endif + for (; sdt != NULL; sdt = sdt->sdp_next) + *sdt->sdp_patchpoint = sdt->sdp_patchval; } static void sdt_load(void *dummy) { - if (dtrace_register("sdt", &sdt_attr, DTRACE_PRIV_USER, - NULL, &sdt_pops, NULL, &sdt_id) != 0) - return; + sdt_provider_t *prov; + + /* Default the probe table size if not specified. */ + if (sdt_probetab_size == 0) + sdt_probetab_size = SDT_PROBETAB_SIZE; + + /* Choose the hash mask for the probe table. */ + sdt_probetab_mask = sdt_probetab_size - 1; + + /* Allocate memory for the probe table. */ + sdt_probetab = malloc(sdt_probetab_size * sizeof + (sdt_probe_t *), M_SDT, M_WAITOK | M_ZERO); + + dtrace_invop_add(sdt_invop); - /* - * Register the read DTrace probe function pointer in place - * of the stub. - */ - sdt_probe_func = dtrace_probe; + for (prov = sdt_providers; prov->sdtp_name != NULL; prov++) { + if (dtrace_register(prov->sdtp_name, prov->sdtp_attr, + DTRACE_PRIV_USER, NULL, + &sdt_pops, prov, &prov->sdtp_id) != 0) { + printf("failed to register sdt provider %s", + prov->sdtp_name); + } + } } @@ -190,14 +405,25 @@ sdt_unload() { int error = 0; + sdt_provider_t *prov; + + /* De-register the invalid opcode handler. */ + dtrace_invop_remove(sdt_invop); - /* - * Restore the probe stub. - */ - sdt_probe_func = sdt_probe_stub; - - if ((error = dtrace_unregister(sdt_id)) != 0) - return (error); + /* De-register this DTrace provider. */ + for (prov = sdt_providers; prov->sdtp_name != NULL; prov++) { + if ((error = dtrace_unregister(prov->sdtp_id)) != 0) { + return (error); + } + else { + prov->sdtp_id = 0; + } + } + + /* Free the probe table. */ + free(sdt_probetab, M_SDT); + sdt_probetab = NULL; + sdt_probetab_mask = 0; destroy_dev(sdt_cdev); @@ -229,6 +455,7 @@ break; } + return (error); } From owner-p4-projects@FreeBSD.ORG Tue Jul 11 20:12:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4A68C16A50B; Tue, 11 Jul 2006 20:12:09 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 2633616A4EB for ; Tue, 11 Jul 2006 20:12:09 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BD35E43D72 for ; Tue, 11 Jul 2006 20:12:08 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BKC8iO091015 for ; Tue, 11 Jul 2006 20:12:08 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BKC8Hr091012 for perforce@freebsd.org; Tue, 11 Jul 2006 20:12:08 GMT (envelope-from jhb@freebsd.org) Date: Tue, 11 Jul 2006 20:12:08 GMT Message-Id: <200607112012.k6BKC8Hr091012@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101288 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 20:12:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=101288 Change 101288 by jhb@jhb_mutex on 2006/07/11 20:12:08 Make ibcs2 consumers of VOP_READDIR() and friends MPSAFE. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_misc.c#28 edit .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#15 edit .. //depot/projects/smpng/sys/notes#77 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_misc.c#28 (text+ko) ==== @@ -329,7 +329,7 @@ struct iovec aiov; struct ibcs2_dirent idb; off_t off; /* true file offset */ - int buflen, error, eofflag; + int buflen, error, eofflag, vfslocked; u_long *cookies = NULL, *cookiep; int ncookies; #define BSD_DIRENT(cp) ((struct dirent *)(cp)) @@ -342,7 +342,9 @@ return (EBADF); } vp = fp->f_vnode; + vfslocked = VFS_LOCK_GIANT(vp->v_mount); if (vp->v_type != VDIR) { /* XXX vnode readdir op should do this */ + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); return (EINVAL); } @@ -459,6 +461,7 @@ td->td_retval[0] = uap->nbytes - resid; out: VOP_UNLOCK(vp, 0, td); + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); if (cookies) free(cookies, M_TEMP); @@ -484,7 +487,7 @@ char name[14]; } idb; off_t off; /* true file offset */ - int buflen, error, eofflag, size; + int buflen, error, eofflag, size, vfslocked; u_long *cookies = NULL, *cookiep; int ncookies; @@ -499,7 +502,9 @@ return (EBADF); } vp = fp->f_vnode; + vfslocked = VFS_LOCK_GIANT(vp->v_mount); if (vp->v_type != VDIR) { + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); return read(td, (struct read_args *)uap); } @@ -622,6 +627,7 @@ td->td_retval[0] = uap->nbytes - resid; out: VOP_UNLOCK(vp, 0, td); + VFS_UNLOCK_GIANT(vfslocked); fdrop(fp, td); if (cookies) free(cookies, M_TEMP); ==== //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#15 (text+ko) ==== @@ -39,7 +39,7 @@ 1 AUE_EXIT MNOPROTO { void sys_exit(int rval); } exit \ sys_exit_args void 2 AUE_FORK MNOPROTO { int fork(void); } -3 AUE_NULL STD { int ibcs2_read(int fd, char *buf, \ +3 AUE_NULL MSTD { int ibcs2_read(int fd, char *buf, \ u_int nbytes); } 4 AUE_NULL MNOPROTO { int write(int fd, char *buf, \ u_int nbytes); } @@ -146,7 +146,7 @@ 78 AUE_NULL UNIMPL rfs_rfsys 79 AUE_RMDIR MSTD { int ibcs2_rmdir(char *path); } 80 AUE_MKDIR MSTD { int ibcs2_mkdir(char *path, int mode); } -81 AUE_GETDIRENTRIES STD { int ibcs2_getdents(int fd, char *buf, \ +81 AUE_GETDIRENTRIES MSTD { int ibcs2_getdents(int fd, char *buf, \ int nbytes); } 82 AUE_NULL UNIMPL nosys 83 AUE_NULL UNIMPL nosys ==== //depot/projects/smpng/sys/notes#77 (text+ko) ==== @@ -93,11 +93,11 @@ - linux - linux_uselib() - ibcs2 - - ibcs2_read() + + ibcs2_read() - ibcs2_mount() - ibcs2_umount() - ibcs2_ioctl() - - ibcs2_getdents() + + ibcs2_getdents() - ibcs2_sigprocmask() - don't mess with td_retval in any kern_foo() functions From owner-p4-projects@FreeBSD.ORG Tue Jul 11 20:24:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4FFB416A533; Tue, 11 Jul 2006 20:24:27 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 EDFA616A532 for ; Tue, 11 Jul 2006 20:24:26 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 06AED43D78 for ; Tue, 11 Jul 2006 20:24:25 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BKOP90091583 for ; Tue, 11 Jul 2006 20:24:25 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BKOOsw091578 for perforce@freebsd.org; Tue, 11 Jul 2006 20:24:24 GMT (envelope-from jhb@freebsd.org) Date: Tue, 11 Jul 2006 20:24:24 GMT Message-Id: <200607112024.k6BKOOsw091578@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101289 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 20:24:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=101289 Change 101289 by jhb@jhb_mutex on 2006/07/11 20:24:20 IFC @101287. Affected files ... .. //depot/projects/smpng/sys/arm/arm/pmap.c#30 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#42 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#35 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_util.h#10 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#42 integrate .. //depot/projects/smpng/sys/dev/isp/isp_target.c#18 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#31 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.c#32 integrate .. //depot/projects/smpng/sys/kern/kern_thr.c#34 integrate .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#87 integrate .. //depot/projects/smpng/sys/posix4/ksched.c#18 integrate .. //depot/projects/smpng/sys/posix4/p1003_1b.c#13 integrate .. //depot/projects/smpng/sys/posix4/posix4.h#7 integrate .. //depot/projects/smpng/sys/sys/syscallsubr.h#47 integrate .. //depot/projects/smpng/sys/sys/thr.h#8 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_lookup.c#25 integrate Differences ... ==== //depot/projects/smpng/sys/arm/arm/pmap.c#30 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.64 2006/06/15 01:01:05 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.65 2006/07/11 11:22:06 cognet Exp $"); #include #include #include @@ -199,7 +199,7 @@ static pv_entry_t pmap_get_pv_entry(void); static void pmap_enter_locked(pmap_t, vm_offset_t, vm_page_t, - vm_prot_t, boolean_t); + vm_prot_t, boolean_t, int); static void pmap_vac_me_harder(struct vm_page *, pmap_t, vm_offset_t); static void pmap_vac_me_kpmap(struct vm_page *, pmap_t, @@ -373,7 +373,7 @@ * L2 allocation. */ #define pmap_alloc_l2_dtable() \ - (void*)uma_zalloc(l2table_zone, M_NOWAIT) + (void*)uma_zalloc(l2table_zone, M_NOWAIT|M_USE_RESERVE) #define pmap_free_l2_dtable(l2) \ uma_zfree(l2table_zone, l2) @@ -952,7 +952,7 @@ again_ptep: PMAP_UNLOCK(pm); vm_page_unlock_queues(); - ptep = (void*)uma_zalloc(l2zone, M_NOWAIT); + ptep = (void*)uma_zalloc(l2zone, M_NOWAIT|M_USE_RESERVE); vm_page_lock_queues(); PMAP_LOCK(pm); if (l2b->l2b_kva != 0) { @@ -3306,7 +3306,7 @@ vm_page_lock_queues(); PMAP_LOCK(pmap); - pmap_enter_locked(pmap, va, m, prot, wired); + pmap_enter_locked(pmap, va, m, prot, wired, M_WAITOK); vm_page_unlock_queues(); PMAP_UNLOCK(pmap); } @@ -3316,7 +3316,7 @@ */ static void pmap_enter_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - boolean_t wired) + boolean_t wired, int flags) { struct l2_bucket *l2b = NULL; struct vm_page *opg; @@ -3347,10 +3347,22 @@ l2b = pmap_get_l2_bucket(pmap, va); if (l2b == NULL) l2b = pmap_grow_l2_bucket(pmap, va); - } else + } else { +do_l2b_alloc: l2b = pmap_alloc_l2_bucket(pmap, va); - KASSERT(l2b != NULL, - ("pmap_enter: failed to allocate l2 bucket")); + if (l2b == NULL) { + if (flags & M_WAITOK) { + PMAP_UNLOCK(pmap); + vm_page_unlock_queues(); + VM_WAIT; + vm_page_lock_queues(); + PMAP_LOCK(pmap); + goto do_l2b_alloc; + } + return; + } + } + ptep = &l2b->l2b_kva[l2pte_index(va)]; opte = *ptep; @@ -3557,7 +3569,7 @@ PMAP_LOCK(pmap); while (m != NULL && (diff = m->pindex - m_start->pindex) < psize) { pmap_enter_locked(pmap, start + ptoa(diff), m, prot & - (VM_PROT_READ | VM_PROT_EXECUTE), FALSE); + (VM_PROT_READ | VM_PROT_EXECUTE), FALSE, M_NOWAIT); m = TAILQ_NEXT(m, listq); } PMAP_UNLOCK(pmap); @@ -3578,7 +3590,7 @@ PMAP_LOCK(pmap); pmap_enter_locked(pmap, va, m, prot & (VM_PROT_READ | VM_PROT_EXECUTE), - FALSE); + FALSE, M_NOWAIT); PMAP_UNLOCK(pmap); } ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#42 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.56 2006/07/10 19:37:43 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.57 2006/07/10 21:38:16 jhb Exp $"); #include "opt_compat.h" ==== //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#35 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.57 2006/04/01 15:25:01 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.58 2006/07/10 21:38:17 jhb Exp $"); #include "opt_compat.h" #include "opt_ktrace.h" ==== //depot/projects/smpng/sys/compat/svr4/svr4_util.h#10 (text+ko) ==== @@ -25,7 +25,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/sys/compat/svr4/svr4_util.h,v 1.11 2005/09/28 07:03:02 rwatson Exp $ + * $FreeBSD: src/sys/compat/svr4/svr4_util.h,v 1.12 2006/07/10 21:38:17 jhb Exp $ */ #ifndef _SVR4_UTIL_H_ ==== //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#42 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp_freebsd.c,v 1.118 2006/07/09 17:50:17 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp_freebsd.c,v 1.119 2006/07/10 22:39:32 mjacob Exp $"); #include #include @@ -290,37 +290,40 @@ switch (c) { #ifdef ISP_FW_CRASH_DUMP case ISP_GET_FW_CRASH_DUMP: - { - uint16_t *ptr = FCPARAM(isp)->isp_dump_data; - size_t sz; + if (IS_FC(isp)) { + uint16_t *ptr = FCPARAM(isp)->isp_dump_data; + size_t sz; - retval = 0; - if (IS_2200(isp)) - sz = QLA2200_RISC_IMAGE_DUMP_SIZE; - else - sz = QLA2300_RISC_IMAGE_DUMP_SIZE; - ISP_LOCK(isp); - if (ptr && *ptr) { - void *uaddr = *((void **) addr); - if (copyout(ptr, uaddr, sz)) { - retval = EFAULT; + retval = 0; + if (IS_2200(isp)) { + sz = QLA2200_RISC_IMAGE_DUMP_SIZE; + } else { + sz = QLA2300_RISC_IMAGE_DUMP_SIZE; + } + ISP_LOCK(isp); + if (ptr && *ptr) { + void *uaddr = *((void **) addr); + if (copyout(ptr, uaddr, sz)) { + retval = EFAULT; + } else { + *ptr = 0; + } } else { - *ptr = 0; + retval = ENXIO; } - } else { - retval = ENXIO; + ISP_UNLOCK(isp); } - ISP_UNLOCK(isp); break; - } - case ISP_FORCE_CRASH_DUMP: - ISP_LOCK(isp); - isp_freeze_loopdown(isp, "ispioctl(ISP_FORCE_CRASH_DUMP)"); - isp_fw_dump(isp); - isp_reinit(isp); - ISP_UNLOCK(isp); - retval = 0; + if (IS_FC(isp)) { + ISP_LOCK(isp); + isp_freeze_loopdown(isp, + "ispioctl(ISP_FORCE_CRASH_DUMP)"); + isp_fw_dump(isp); + isp_reinit(isp); + ISP_UNLOCK(isp); + retval = 0; + } break; #endif case ISP_SDBLEV: @@ -377,6 +380,9 @@ struct isp_fc_device *ifc = (struct isp_fc_device *) addr; struct lportdb *lp; + if (IS_SCSI(isp)) { + break; + } if (ifc->loopid < 0 || ifc->loopid >= MAX_FC_TARG) { retval = EINVAL; break; @@ -434,19 +440,20 @@ { struct isp_hba_device *hba = (struct isp_hba_device *) addr; MEMZERO(hba, sizeof (*hba)); - ISP_LOCK(isp); + hba->fc_fw_major = ISP_FW_MAJORX(isp->isp_fwrev); hba->fc_fw_minor = ISP_FW_MINORX(isp->isp_fwrev); hba->fc_fw_micro = ISP_FW_MICROX(isp->isp_fwrev); - hba->fc_speed = FCPARAM(isp)->isp_gbspeed; - hba->fc_scsi_supported = 1; - hba->fc_topology = FCPARAM(isp)->isp_topo + 1; - hba->fc_loopid = FCPARAM(isp)->isp_loopid; - hba->nvram_node_wwn = FCPARAM(isp)->isp_nodewwn; - hba->nvram_port_wwn = FCPARAM(isp)->isp_portwwn; - hba->active_node_wwn = ISP_NODEWWN(isp); - hba->active_port_wwn = ISP_PORTWWN(isp); - ISP_UNLOCK(isp); + if (IS_FC(isp)) { + hba->fc_speed = FCPARAM(isp)->isp_gbspeed; + hba->fc_scsi_supported = 1; + hba->fc_topology = FCPARAM(isp)->isp_topo + 1; + hba->fc_loopid = FCPARAM(isp)->isp_loopid; + hba->nvram_node_wwn = FCPARAM(isp)->isp_nodewwn; + hba->nvram_port_wwn = FCPARAM(isp)->isp_portwwn; + hba->active_node_wwn = ISP_NODEWWN(isp); + hba->active_port_wwn = ISP_PORTWWN(isp); + } retval = 0; break; } @@ -454,8 +461,7 @@ { struct isp_fc_param *f = (struct isp_fc_param *) addr; - if (!IS_FC(isp)) { - retval = EINVAL; + if (IS_SCSI(isp)) { break; } f->parameter = 0; @@ -488,8 +494,7 @@ struct isp_fc_param *f = (struct isp_fc_param *) addr; uint32_t param = f->parameter; - if (!IS_FC(isp)) { - retval = EINVAL; + if (IS_SCSI(isp)) { break; } f->parameter = 0; @@ -546,7 +551,6 @@ mbreg_t mbs; if (IS_SCSI(isp)) { - retval = EINVAL; break; } ==== //depot/projects/smpng/sys/dev/isp/isp_target.c#18 (text+ko) ==== @@ -27,7 +27,7 @@ */ #ifdef __FreeBSD__ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp_target.c,v 1.36 2006/04/21 18:46:35 mjacob Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp_target.c,v 1.37 2006/07/10 22:40:21 mjacob Exp $"); #endif /* @@ -165,18 +165,20 @@ isp_handle_ctio(isp, (ct_entry_t *) local); break; case RQSTYPE_ATIO2: - if (IS_2KLOGIN(isp)) + if (IS_2KLOGIN(isp)) { isp_get_atio2e(isp, at2eiop, (at2e_entry_t *) local); - else + } else { isp_get_atio2(isp, at2iop, (at2_entry_t *) local); + } isp_handle_atio2(isp, (at2_entry_t *) local); break; case RQSTYPE_CTIO3: case RQSTYPE_CTIO2: - if (IS_2KLOGIN(isp)) + if (IS_2KLOGIN(isp)) { isp_get_ctio2e(isp, ct2eiop, (ct2e_entry_t *) local); - else + } else { isp_get_ctio2(isp, ct2iop, (ct2_entry_t *) local); + } isp_handle_ctio2(isp, (ct2_entry_t *) local); break; case RQSTYPE_ENABLE_LUN: @@ -195,9 +197,11 @@ */ bus = 0; if (IS_FC(isp)) { - if (IS_2KLOGIN(isp)) + if (IS_2KLOGIN(isp)) { isp_get_notify_fc_e(isp, inote_fcp, (in_fcentry_e_t *)local); - isp_get_notify_fc(isp, inot_fcp, (in_fcentry_t *)local); + } else { + isp_get_notify_fc(isp, inot_fcp, (in_fcentry_t *)local); + } inot_fcp = (in_fcentry_t *) local; status = inot_fcp->in_status; seqid = inot_fcp->in_seqid; @@ -251,12 +255,13 @@ * Immediate Notify entry for some asynchronous event. */ if (IS_FC(isp)) { - if (IS_2KLOGIN(isp)) + if (IS_2KLOGIN(isp)) { isp_get_notify_ack_fc_e(isp, nacke_fcp, (na_fcentry_e_t *)local); - else + } else { isp_get_notify_ack_fc(isp, nack_fcp, (na_fcentry_t *)local); + } nack_fcp = (na_fcentry_t *)local; isp_prt(isp, ISP_LOGTDEBUG1, "Notify Ack status=0x%x seqid 0x%x", @@ -372,13 +377,21 @@ isp_put_atio(isp, (at_entry_t *) ap, (at_entry_t *) outp); break; case RQSTYPE_ATIO2: - isp_put_atio2(isp, (at2_entry_t *) ap, (at2_entry_t *) outp); + if (IS_2KLOGIN(isp)) { + isp_put_atio2e(isp, (at2e_entry_t *) ap, (at2e_entry_t *) outp); + } else { + isp_put_atio2(isp, (at2_entry_t *) ap, (at2_entry_t *) outp); + } break; case RQSTYPE_CTIO: isp_put_ctio(isp, (ct_entry_t *) ap, (ct_entry_t *) outp); break; case RQSTYPE_CTIO2: - isp_put_ctio2(isp, (ct2_entry_t *) ap, (ct2_entry_t *) outp); + if (IS_2KLOGIN(isp)) { + isp_put_ctio2e(isp, (ct2e_entry_t *) ap, (ct2e_entry_t *) outp); + } else { + isp_put_ctio2(isp, (ct2_entry_t *) ap, (ct2_entry_t *) outp); + } break; default: isp_prt(isp, ISP_LOGERR, @@ -572,6 +585,7 @@ uint8_t storage[QENTRY_LEN]; memset(storage, 0, QENTRY_LEN); if (IS_FC(isp)) { + /* This should also suffice for 2K login code */ ct2_entry_t *ct = (ct2_entry_t *) storage; ct->ct_header.rqs_entry_type = RQSTYPE_CTIO2; ct->ct_status = CT_OK; ==== //depot/projects/smpng/sys/geom/mirror/g_mirror.c#31 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/mirror/g_mirror.c,v 1.84 2006/07/03 10:32:37 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/mirror/g_mirror.c,v 1.85 2006/07/10 21:18:00 pjd Exp $"); #include #include @@ -3003,7 +3003,7 @@ pp->name, gp->name, error); if (LIST_EMPTY(&sc->sc_disks)) { g_cancel_event(sc); - g_mirror_destroy(sc, 1); + g_mirror_destroy(sc, G_MIRROR_DESTROY_HARD); g_topology_lock(); return (NULL); } @@ -3025,7 +3025,7 @@ sc = gp->softc; sx_xlock(&sc->sc_lock); g_cancel_event(sc); - error = g_mirror_destroy(gp->softc, 0); + error = g_mirror_destroy(gp->softc, G_MIRROR_DESTROY_SOFT); if (error != 0) sx_xunlock(&sc->sc_lock); g_topology_lock(); ==== //depot/projects/smpng/sys/geom/raid3/g_raid3.c#32 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/raid3/g_raid3.c,v 1.68 2006/07/09 12:25:56 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/raid3/g_raid3.c,v 1.69 2006/07/10 21:18:00 pjd Exp $"); #include #include @@ -3273,7 +3273,7 @@ if (g_raid3_ndisks(sc, G_RAID3_DISK_STATE_NODISK) == sc->sc_ndisks) { g_cancel_event(sc); - g_raid3_destroy(sc, 1); + g_raid3_destroy(sc, G_RAID3_DESTROY_HARD); g_topology_lock(); return (NULL); } @@ -3295,7 +3295,7 @@ sc = gp->softc; sx_xlock(&sc->sc_lock); g_cancel_event(sc); - error = g_raid3_destroy(gp->softc, 0); + error = g_raid3_destroy(gp->softc, G_RAID3_DESTROY_SOFT); if (error != 0) sx_xunlock(&sc->sc_lock); g_topology_lock(); ==== //depot/projects/smpng/sys/kern/kern_thr.c#34 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_thr.c,v 1.43 2006/04/17 18:20:37 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_thr.c,v 1.47 2006/07/11 08:19:57 davidxu Exp $"); #include #include @@ -42,29 +42,21 @@ #include #include #include +#include +#include #include #include #include extern int max_threads_per_proc; -extern int max_groups_per_proc; - -SYSCTL_DECL(_kern_threads); -static int thr_scope = 0; -SYSCTL_INT(_kern_threads, OID_AUTO, thr_scope, CTLFLAG_RW, - &thr_scope, 0, "sys or proc scope scheduling"); -static int thr_concurrency = 0; -SYSCTL_INT(_kern_threads, OID_AUTO, thr_concurrency, CTLFLAG_RW, - &thr_concurrency, 0, "a concurrency value if not default"); - static int create_thread(struct thread *td, mcontext_t *ctx, void (*start_func)(void *), void *arg, char *stack_base, size_t stack_size, char *tls_base, long *child_tid, long *parent_tid, - int flags); + int flags, struct thr_sched_param *sched); /* * System call interface. @@ -80,7 +72,7 @@ return (error); error = create_thread(td, &ctx.uc_mcontext, NULL, NULL, - NULL, 0, NULL, uap->id, NULL, uap->flags); + NULL, 0, NULL, uap->id, NULL, uap->flags, NULL); return (error); } @@ -89,15 +81,26 @@ /* struct thr_param * */ { struct thr_param param; + struct thr_sched_param sched_param, *sched; int error; if (uap->param_size < sizeof(param)) return (EINVAL); if ((error = copyin(uap->param, ¶m, sizeof(param)))) return (error); + sched = NULL; + if (param.sched != NULL) { + error = copyin(param.sched, &sched_param, + sizeof(sched_param)); + if (error) + return (error); + sched = &sched_param; + } + error = create_thread(td, NULL, param.start_func, param.arg, param.stack_base, param.stack_size, param.tls_base, - param.child_tid, param.parent_tid, param.flags); + param.child_tid, param.parent_tid, param.flags, + sched); return (error); } @@ -107,34 +110,41 @@ char *stack_base, size_t stack_size, char *tls_base, long *child_tid, long *parent_tid, - int flags) + int flags, struct thr_sched_param *sched) { stack_t stack; struct thread *newtd; struct ksegrp *kg, *newkg; struct proc *p; long id; - int error, scope_sys, linkkg; + int error; error = 0; p = td->td_proc; kg = td->td_ksegrp; /* Have race condition but it is cheap. */ - if ((p->p_numksegrps >= max_groups_per_proc) || - (p->p_numthreads >= max_threads_per_proc)) { + if (p->p_numthreads >= max_threads_per_proc) return (EPROCLIM); + + if (sched != NULL) { + switch(sched->policy) { + case SCHED_FIFO: + case SCHED_RR: + /* Only root can set scheduler policy */ + if (suser(td) != 0) + return (EPERM); + if (sched->param.sched_priority < RTP_PRIO_MIN || + sched->param.sched_priority > RTP_PRIO_MAX) + return (EINVAL); + break; + case SCHED_OTHER: + break; + default: + return (EINVAL); + } } - /* Check PTHREAD_SCOPE_SYSTEM */ - scope_sys = (flags & THR_SYSTEM_SCOPE) != 0; - - /* sysctl overrides user's flag */ - if (thr_scope == 1) - scope_sys = 0; - else if (thr_scope == 2) - scope_sys = 1; - /* Initialize our td and new ksegrp.. */ newtd = thread_alloc(); @@ -186,66 +196,51 @@ } } - if ((td->td_proc->p_flag & P_HADTHREADS) == 0) { - /* Treat initial thread as it has PTHREAD_SCOPE_PROCESS. */ - p->p_procscopegrp = kg; - mtx_lock_spin(&sched_lock); - sched_set_concurrency(kg, - thr_concurrency ? thr_concurrency : (2*mp_ncpus)); - mtx_unlock_spin(&sched_lock); - } - - linkkg = 0; - if (scope_sys) { - linkkg = 1; - newkg = ksegrp_alloc(); - bzero(&newkg->kg_startzero, - __rangeof(struct ksegrp, kg_startzero, kg_endzero)); - bcopy(&kg->kg_startcopy, &newkg->kg_startcopy, - __rangeof(struct ksegrp, kg_startcopy, kg_endcopy)); - sched_init_concurrency(newkg); - PROC_LOCK(td->td_proc); - } else { - /* - * Try to create a KSE group which will be shared - * by all PTHREAD_SCOPE_PROCESS threads. - */ -retry: - PROC_LOCK(td->td_proc); - if ((newkg = p->p_procscopegrp) == NULL) { - PROC_UNLOCK(p); - newkg = ksegrp_alloc(); - bzero(&newkg->kg_startzero, - __rangeof(struct ksegrp, kg_startzero, kg_endzero)); - bcopy(&kg->kg_startcopy, &newkg->kg_startcopy, - __rangeof(struct ksegrp, kg_startcopy, kg_endcopy)); - PROC_LOCK(p); - if (p->p_procscopegrp == NULL) { - p->p_procscopegrp = newkg; - sched_init_concurrency(newkg); - sched_set_concurrency(newkg, - thr_concurrency ? thr_concurrency : (2*mp_ncpus)); - linkkg = 1; - } else { - PROC_UNLOCK(p); - ksegrp_free(newkg); - goto retry; - } - } - } - + newkg = ksegrp_alloc(); + bzero(&newkg->kg_startzero, + __rangeof(struct ksegrp, kg_startzero, kg_endzero)); + bcopy(&kg->kg_startcopy, &newkg->kg_startcopy, + __rangeof(struct ksegrp, kg_startcopy, kg_endcopy)); + sched_init_concurrency(newkg); + PROC_LOCK(td->td_proc); td->td_proc->p_flag |= P_HADTHREADS; newtd->td_sigmask = td->td_sigmask; mtx_lock_spin(&sched_lock); - if (linkkg) - ksegrp_link(newkg, p); + ksegrp_link(newkg, p); thread_link(newtd, newkg); PROC_UNLOCK(p); /* let the scheduler know about these things. */ - if (linkkg) - sched_fork_ksegrp(td, newkg); + sched_fork_ksegrp(td, newkg); sched_fork_thread(td, newtd); + if (sched != NULL) { + struct rtprio rtp; + switch (sched->policy) { + case SCHED_FIFO: + rtp.type = PRI_FIFO; + rtp.prio = sched->param.sched_priority; + rtp_to_pri(&rtp, newkg); + sched_prio(newtd, newkg->kg_user_pri); + break; + case SCHED_RR: + rtp.type = PRI_REALTIME; + rtp.prio = sched->param.sched_priority; + rtp_to_pri(&rtp, newkg); + sched_prio(newtd, newkg->kg_user_pri); + break; + case SCHED_OTHER: + if (curthread->td_ksegrp->kg_pri_class != + PRI_TIMESHARE) { + rtp.type = PRI_TIMESHARE; + rtp.prio = 0; + rtp_to_pri(&rtp, newkg); + sched_prio(newtd, newkg->kg_user_pri); + } + break; + default: + panic("sched policy"); + } + } TD_SET_CAN_RUN(newtd); /* if ((flags & THR_SUSPENDED) == 0) */ setrunqueue(newtd, SRQ_BORING); ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#87 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/uipc_syscalls.c,v 1.230 2006/06/20 12:36:40 gnn Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/uipc_syscalls.c,v 1.231 2006/07/10 21:38:17 jhb Exp $"); #include "opt_compat.h" #include "opt_ktrace.h" ==== //depot/projects/smpng/sys/posix4/ksched.c#18 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/posix4/ksched.c,v 1.29 2006/06/15 06:37:39 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/posix4/ksched.c,v 1.30 2006/07/11 06:11:34 davidxu Exp $"); #include "opt_posix.h" @@ -100,7 +100,7 @@ #define P1B_PRIO_MAX rtpprio_to_p4prio(RTP_PRIO_MIN) static __inline int -getscheduler(register_t *ret, struct ksched *ksched, struct thread *td) +getscheduler(struct ksched *ksched, struct thread *td, int *policy) { struct rtprio rtp; int e = 0; @@ -111,15 +111,15 @@ switch (rtp.type) { case RTP_PRIO_FIFO: - *ret = SCHED_FIFO; + *policy = SCHED_FIFO; break; case RTP_PRIO_REALTIME: - *ret = SCHED_RR; + *policy = SCHED_RR; break; default: - *ret = SCHED_OTHER; + *policy = SCHED_OTHER; break; } @@ -127,27 +127,27 @@ } int -ksched_setparam(register_t *ret, struct ksched *ksched, +ksched_setparam(struct ksched *ksched, struct thread *td, const struct sched_param *param) { - register_t policy; + int policy; int e; - e = getscheduler(&policy, ksched, td); + e = getscheduler(ksched, td, &policy); if (e == 0) { if (policy == SCHED_OTHER) e = EINVAL; else - e = ksched_setscheduler(ret, ksched, td, policy, param); + e = ksched_setscheduler(ksched, td, policy, param); } return e; } int -ksched_getparam(register_t *ret, struct ksched *ksched, +ksched_getparam(struct ksched *ksched, struct thread *td, struct sched_param *param) { struct rtprio rtp; @@ -169,7 +169,7 @@ * */ int -ksched_setscheduler(register_t *ret, struct ksched *ksched, +ksched_setscheduler(struct ksched *ksched, struct thread *td, int policy, const struct sched_param *param) { int e = 0; @@ -243,22 +243,22 @@ } int -ksched_getscheduler(register_t *ret, struct ksched *ksched, struct thread *td) +ksched_getscheduler(struct ksched *ksched, struct thread *td, int *policy) { - return getscheduler(ret, ksched, td); + return getscheduler(ksched, td, policy); } /* ksched_yield: Yield the CPU. */ int -ksched_yield(register_t *ret, struct ksched *ksched) +ksched_yield(struct ksched *ksched) { sched_relinquish(curthread); return 0; } int -ksched_get_priority_max(register_t*ret, struct ksched *ksched, int policy) +ksched_get_priority_max(struct ksched *ksched, int policy, int *prio) { int e = 0; @@ -266,11 +266,11 @@ { case SCHED_FIFO: case SCHED_RR: - *ret = RTP_PRIO_MAX; + *prio = RTP_PRIO_MAX; break; case SCHED_OTHER: - *ret = PRIO_MAX; + *prio = PRIO_MAX; break; default: @@ -281,7 +281,7 @@ } int -ksched_get_priority_min(register_t *ret, struct ksched *ksched, int policy) +ksched_get_priority_min(struct ksched *ksched, int policy, int *prio) { int e = 0; @@ -289,11 +289,11 @@ { case SCHED_FIFO: case SCHED_RR: - *ret = P1B_PRIO_MIN; + *prio = P1B_PRIO_MIN; break; case SCHED_OTHER: - *ret = PRIO_MIN; + *prio = PRIO_MIN; break; default: @@ -304,8 +304,8 @@ } int -ksched_rr_get_interval(register_t *ret, struct ksched *ksched, - struct thread *td, struct timespec *timespec) +ksched_rr_get_interval(struct ksched *ksched, + struct thread *td, struct timespec *timespec) { *timespec = ksched->rr_interval; ==== //depot/projects/smpng/sys/posix4/p1003_1b.c#13 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/posix4/p1003_1b.c,v 1.27 2006/05/21 00:40:38 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/posix4/p1003_1b.c,v 1.29 2006/07/11 06:15:46 davidxu Exp $"); #include "opt_posix.h" @@ -90,7 +90,6 @@ SYSCALL_NOT_PRESENT_GEN(sched_get_priority_max) SYSCALL_NOT_PRESENT_GEN(sched_get_priority_min) SYSCALL_NOT_PRESENT_GEN(sched_rr_get_interval) - #else /* Configured in kernel version: @@ -127,22 +126,27 @@ targetp = td->td_proc; targettd = td; PROC_LOCK(targetp); + } else if (uap->pid <= PID_MAX) { + targetp = pfind(uap->pid); + if (targetp == NULL) + return (ESRCH); + targettd = FIRST_THREAD_IN_PROC(targetp); } else { - targetp = pfind(uap->pid); + targetp = td->td_proc; + PROC_LOCK(targetp); + targettd = thread_find(targetp, uap->pid); if (targetp == NULL) { - e = ESRCH; - goto done2; + PROC_UNLOCK(targetp); + return (ESRCH); } - targettd = FIRST_THREAD_IN_PROC(targetp); /* XXXKSE */ } e = p_cansched(td, targetp); if (e == 0) { - e = ksched_setparam(&td->td_retval[0], ksched, targettd, + e = ksched_setparam(ksched, targettd, (const struct sched_param *)&sched_param); } PROC_UNLOCK(targetp); -done2: return (e); } @@ -161,24 +165,29 @@ targetp = td->td_proc; targettd = td; PROC_LOCK(targetp); - } else { + } else if (uap->pid <= PID_MAX) { targetp = pfind(uap->pid); if (targetp == NULL) { - e = ESRCH; - goto done2; + return (ESRCH); } targettd = FIRST_THREAD_IN_PROC(targetp); /* XXXKSE */ + } else { + targetp = td->td_proc; + PROC_LOCK(targetp); + targettd = thread_find(targetp, uap->pid); + if (targettd == NULL) { + PROC_UNLOCK(targetp); + return (ESRCH); + } } e = p_cansee(td, targetp); if (e == 0) { - e = ksched_getparam(&td->td_retval[0], ksched, targettd, - &sched_param); + e = ksched_getparam(ksched, targettd, &sched_param); } PROC_UNLOCK(targetp); if (e == 0) e = copyout(&sched_param, uap->param, sizeof(sched_param)); -done2: return (e); } @@ -205,22 +214,27 @@ targetp = td->td_proc; targettd = td; PROC_LOCK(targetp); + } else if (uap->pid <= PID_MAX) { + targetp = pfind(uap->pid); + if (targetp == NULL) + return (ESRCH); + targettd = FIRST_THREAD_IN_PROC(targetp); } else { - targetp = pfind(uap->pid); - if (targetp == NULL) { - e = ESRCH; - goto done2; + targetp = td->td_proc; + PROC_LOCK(targetp); + targettd = thread_find(targetp, uap->pid); + if (targettd == NULL) { + PROC_UNLOCK(targetp); + return (ESRCH); } - targettd = FIRST_THREAD_IN_PROC(targetp); /* XXXKSE */ } e = p_cansched(td, targetp); if (e == 0) { - e = ksched_setscheduler(&td->td_retval[0], ksched, targettd, + e = ksched_setscheduler(ksched, targettd, uap->policy, (const struct sched_param *)&sched_param); } PROC_UNLOCK(targetp); -done2: return (e); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Jul 11 20:28:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E405D16A4E7; Tue, 11 Jul 2006 20:28:30 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 BFB1116A4DE for ; Tue, 11 Jul 2006 20:28:30 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 74EFE43D60 for ; Tue, 11 Jul 2006 20:28:30 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BKSUoR091787 for ; Tue, 11 Jul 2006 20:28:30 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BKSUg6091784 for perforce@freebsd.org; Tue, 11 Jul 2006 20:28:30 GMT (envelope-from jb@freebsd.org) Date: Tue, 11 Jul 2006 20:28:30 GMT Message-Id: <200607112028.k6BKSUg6091784@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101290 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 20:28:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=101290 Change 101290 by jb@jb_freebsd2 on 2006/07/11 20:28:23 Remove a few kse artifacts that got missed in the bike_sched drive by shooting. Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/lib/libkvm/kvm_proc.c#2 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/lib/libkvm/kvm_proc.c#2 (text+ko) ==== @@ -113,8 +113,6 @@ struct ucred ucred; struct prison pr; struct thread mtd; - /*struct kse mke;*/ - struct ksegrp mkg; struct proc proc; struct proc pproc; struct timeval tv; @@ -137,6 +135,7 @@ TAILQ_FIRST(&proc.p_threads)); return (-1); } +#if 0 if ((proc.p_flag & P_SA) == 0) { if (KREAD(kd, (u_long)TAILQ_FIRST(&proc.p_ksegrps), @@ -146,7 +145,6 @@ TAILQ_FIRST(&proc.p_ksegrps)); return (-1); } -#if 0 if (KREAD(kd, (u_long)TAILQ_FIRST(&mkg.kg_kseq), &mke)) { _kvm_err(kd, kd->program, @@ -154,8 +152,8 @@ TAILQ_FIRST(&mkg.kg_kseq)); return (-1); } + } #endif - } } if (KREAD(kd, (u_long)proc.p_ucred, &ucred) == 0) { kp->ki_ruid = ucred.cr_ruid; @@ -418,13 +416,13 @@ kp->ki_oncpu = mtd.td_oncpu; if (!(proc.p_flag & P_SA)) { +#if 0 /* stuff from the ksegrp */ kp->ki_slptime = mkg.kg_slptime; kp->ki_pri.pri_class = mkg.kg_pri_class; kp->ki_pri.pri_user = mkg.kg_user_pri; kp->ki_estcpu = mkg.kg_estcpu; -#if 0 /* Stuff from the kse */ kp->ki_pctcpu = mke.ke_pctcpu; kp->ki_rqindex = mke.ke_rqindex; From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:05:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 75E0816A4DD; Tue, 11 Jul 2006 21:05:33 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 43A7816A50A for ; Tue, 11 Jul 2006 21:05:33 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3ABE143DD4 for ; Tue, 11 Jul 2006 21:03:40 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BL3FLP004197 for ; Tue, 11 Jul 2006 21:03:15 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BL3FsV004194 for perforce@freebsd.org; Tue, 11 Jul 2006 21:03:15 GMT (envelope-from jhb@freebsd.org) Date: Tue, 11 Jul 2006 21:03:15 GMT Message-Id: <200607112103.k6BL3FsV004194@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101293 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:05:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=101293 Change 101293 by jhb@jhb_mutex on 2006/07/11 21:02:46 Attempt to fix a mismerge. Affected files ... .. //depot/projects/smpng/sys/bsm/audit_record.h#5 edit Differences ... ==== //depot/projects/smpng/sys/bsm/audit_record.h#5 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/smpng/sys/bsm/audit_record.h#4 $ + * $P4: //depot/projects/smpng/sys/bsm/audit_record.h#5 $ * $FreeBSD: src/sys/bsm/audit_record.h,v 1.3 2006/07/03 14:44:13 rwatson Exp $ */ From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:05:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7111C16A583; Tue, 11 Jul 2006 21:05:35 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 3449D16A50E for ; Tue, 11 Jul 2006 21:05:35 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 41C9C43E04 for ; Tue, 11 Jul 2006 21:04:17 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BL4HJO004236 for ; Tue, 11 Jul 2006 21:04:17 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BL4GKX004229 for perforce@freebsd.org; Tue, 11 Jul 2006 21:04:16 GMT (envelope-from jhb@freebsd.org) Date: Tue, 11 Jul 2006 21:04:16 GMT Message-Id: <200607112104.k6BL4GKX004229@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101294 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:05:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=101294 Change 101294 by jhb@jhb_mutex on 2006/07/11 21:03:34 Remove an attempted optimization that didn't help. Affected files ... .. //depot/projects/smpng/sys/i386/include/cpufunc.h#33 edit Differences ... ==== //depot/projects/smpng/sys/i386/include/cpufunc.h#33 (text+ko) ==== @@ -42,8 +42,6 @@ #error this file needs sys/cdefs.h as a prerequisite #endif -#include - struct region_descriptor; #define readb(va) (*(volatile u_int8_t *) (va)) @@ -622,16 +620,14 @@ register_t eflags; eflags = read_eflags(); - if (eflags & PSL_I) - disable_intr(); + disable_intr(); return (eflags); } static __inline void intr_restore(register_t eflags) { - if (eflags & PSL_I) - enable_intr(); + write_eflags(eflags); } #else /* !(__GNUCLIKE_ASM && __CC_SUPPORTS___INLINE) */ From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:05:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9B14916A51C; Tue, 11 Jul 2006 21:05:39 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 7109716A51A for ; Tue, 11 Jul 2006 21:05:39 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 05CCD43D8B for ; Tue, 11 Jul 2006 21:05:19 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BL5IaM004327 for ; Tue, 11 Jul 2006 21:05:18 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BL5IhW004324 for perforce@freebsd.org; Tue, 11 Jul 2006 21:05:18 GMT (envelope-from jhb@freebsd.org) Date: Tue, 11 Jul 2006 21:05:18 GMT Message-Id: <200607112105.k6BL5IhW004324@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101295 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:05:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101295 Change 101295 by jhb@jhb_mutex on 2006/07/11 21:04:17 Comment is OBE. I also think a workaround for this was committed to CVS. Affected files ... .. //depot/projects/smpng/sys/kern/kern_proc.c#85 edit Differences ... ==== //depot/projects/smpng/sys/kern/kern_proc.c#85 (text+ko) ==== @@ -914,12 +914,6 @@ error = SYSCTL_OUT(req, (caddr_t)&kinfo_proc, sizeof(kinfo_proc)); } else { - /* - * XXX: Can't call copyout() here on alpha with sched_lock - * held since we can get a pmap_emulate_reference() fault - * when we write to the page. Need to ask alc@ about how - * best to handle this. - */ mtx_lock_spin(&sched_lock); if (FIRST_THREAD_IN_PROC(p) != NULL) FOREACH_THREAD_IN_PROC(p, td) { From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:06:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0975416A4E2; Tue, 11 Jul 2006 21:06:22 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 DC65A16A4DF for ; Tue, 11 Jul 2006 21:06:21 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E594943D62 for ; Tue, 11 Jul 2006 21:06:20 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BL6KnT004413 for ; Tue, 11 Jul 2006 21:06:20 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BL6KGt004410 for perforce@freebsd.org; Tue, 11 Jul 2006 21:06:20 GMT (envelope-from jhb@freebsd.org) Date: Tue, 11 Jul 2006 21:06:20 GMT Message-Id: <200607112106.k6BL6KGt004410@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101296 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:06:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=101296 Change 101296 by jhb@jhb_mutex on 2006/07/11 21:05:23 Drop the attempt at allowing certain IPI's to still be handled when we would otherwise spin with interrupts disabled as the issue it tried to address has been fixed another way. This can be resurrected later if desired. Affected files ... .. //depot/projects/smpng/sys/i386/i386/local_apic.c#42 edit .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#102 edit .. //depot/projects/smpng/sys/i386/i386/pmap.c#102 edit .. //depot/projects/smpng/sys/i386/include/apicvar.h#21 edit .. //depot/projects/smpng/sys/kern/kern_mutex.c#129 edit Differences ... ==== //depot/projects/smpng/sys/i386/i386/local_apic.c#42 (text+ko) ==== @@ -917,17 +917,9 @@ int lapic_ipi_wait(int delay) { - int x, incr, allow_ipis, done; + int x, incr; /* - * If interrupts are disabled, then hack on the APIC to allow - * safe IPIs to come in while we wait. - */ - allow_ipis = (read_eflags() & PSL_I) == 0; - if (allow_ipis) - APIC_IPI_SPINWAIT_ENTER(); - - /* * Wait delay loops for IPI to be sent. This is highly bogus * since this is sensitive to CPU clock speed. If delay is * -1, we wait forever. @@ -937,17 +929,12 @@ delay = 1; } else incr = 1; - done = 0; for (x = 0; x < delay; x += incr) { - if ((lapic->icr_lo & APIC_DELSTAT_MASK) == APIC_DELSTAT_IDLE) { - done = 1; - break; - } + if ((lapic->icr_lo & APIC_DELSTAT_MASK) == APIC_DELSTAT_IDLE) + return (1); ia32_pause(); } - if (allow_ipis) - APIC_IPI_SPINWAIT_EXIT(); - return (done); + return (0); } void ==== //depot/projects/smpng/sys/i386/i386/mp_machdep.c#102 (text+ko) ==== @@ -1008,10 +1008,8 @@ smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); ipi_all_but_self(vector); - APIC_IPI_SPINWAIT_ENTER(); while (smp_tlb_wait < ncpu) ia32_pause(); - APIC_IPI_SPINWAIT_EXIT(); } static void @@ -1047,10 +1045,8 @@ ipi_all_but_self(vector); else ipi_selected(mask, vector); - APIC_IPI_SPINWAIT_ENTER(); while (smp_tlb_wait < ncpu) ia32_pause(); - APIC_IPI_SPINWAIT_EXIT(); } void ==== //depot/projects/smpng/sys/i386/i386/pmap.c#102 (text+ko) ==== @@ -1414,13 +1414,11 @@ (u_int)&pmap->pm_active); atomic_store_rel_int(&lazywait, 0); ipi_selected(mask, IPI_LAZYPMAP); - APIC_IPI_SPINWAIT_ENTER(); while (lazywait == 0) { ia32_pause(); if (--spins == 0) break; } - APIC_IPI_SPINWAIT_EXIT(); } mtx_unlock_spin(&smp_ipi_mtx); if (spins == 0) ==== //depot/projects/smpng/sys/i386/include/apicvar.h#21 (text+ko) ==== @@ -106,19 +106,11 @@ * other deadlocks caused by IPI_STOP. */ -/* - * These interrupt handlers are for IPIs and local interrupts whose handlers - * do not use any spin locks, so they may still be allowed when a spin lock - * is held. - */ -#define APIC_LOCK_SAFE_INTS (APIC_TIMER_INT + 1) - /* Interrupts for local APIC LVT entries other than the timer. */ -#define APIC_LOCAL_INTS APIC_LOCK_SAFE_INTS +#define APIC_LOCAL_INTS 240 #define APIC_ERROR_INT APIC_LOCAL_INTS #define APIC_THERMAL_INT (APIC_LOCAL_INTS + 1) -/* Spin lock safe IPIs. */ #define APIC_IPI_INTS (APIC_LOCAL_INTS + 2) #define IPI_RENDEZVOUS (APIC_IPI_INTS) /* Inter-CPU rendezvous. */ #define IPI_INVLTLB (APIC_IPI_INTS + 1) /* TLB Shootdown IPIs */ @@ -163,21 +155,6 @@ #define APIC_BUS_PCI 2 #define APIC_BUS_MAX APIC_BUS_PCI -#if 0 -#define APIC_IPI_SPINWAIT_ENTER() do { \ - lapic_set_tpr(APIC_LOCK_SAFE_INTS); \ - enable_intr(); \ -} while (0) - -#define APIC_IPI_SPINWAIT_EXIT() do { \ - disable_intr(); \ - lapic_set_tpr(0); \ -} while (0) -#else -#define APIC_IPI_SPINWAIT_ENTER() -#define APIC_IPI_SPINWAIT_EXIT() -#endif - /* * An APIC enumerator is a psuedo bus driver that enumerates APIC's including * CPU's and I/O APIC's. ==== //depot/projects/smpng/sys/kern/kern_mutex.c#129 (text+ko) ==== @@ -60,11 +60,6 @@ #include #include -#ifdef __i386__ -#include -#include -#include -#endif #include #include #include @@ -606,9 +601,6 @@ { int i = 0, idlespin = 0; struct thread *td; -#ifdef __i386__ - int apic_hack; -#endif if (LOCK_LOG_TEST(&m->mtx_object, opts)) CTR1(KTR_LOCK, "_mtx_lock_spin: %p spinning", m); @@ -620,11 +612,6 @@ /* Give interrupts a chance while we spin. */ spinlock_exit(); -#ifdef __i386__ - apic_hack = (read_eflags() & PSL_I) == 0; - if (apic_hack) - APIC_IPI_SPINWAIT_ENTER(); -#endif while (m->mtx_lock != MTX_UNOWNED) { if (i++ < 10000000) { cpu_spinwait(); @@ -650,10 +637,6 @@ } cpu_spinwait(); } -#ifdef __i386__ - if (apic_hack) - APIC_IPI_SPINWAIT_EXIT(); -#endif spinlock_enter(); } From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:10:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4271516A4E0; Tue, 11 Jul 2006 21:10:31 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 066D316A4DD for ; Tue, 11 Jul 2006 21:10:31 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D92EE43D94 for ; Tue, 11 Jul 2006 21:10:27 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BLAREU004579 for ; Tue, 11 Jul 2006 21:10:27 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BLAQ7d004575 for perforce@freebsd.org; Tue, 11 Jul 2006 21:10:26 GMT (envelope-from jhb@freebsd.org) Date: Tue, 11 Jul 2006 21:10:26 GMT Message-Id: <200607112110.k6BLAQ7d004575@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101297 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:10:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=101297 Change 101297 by jhb@jhb_mutex on 2006/07/11 21:09:47 IFC @101292 - loopback. Affected files ... .. //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#12 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#12 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#12 integrate .. //depot/projects/smpng/sys/amd64/linux32/syscalls.master#16 integrate .. //depot/projects/smpng/sys/compat/linux/linux_file.c#31 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#49 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_proto.h#13 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_syscall.h#12 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_syscallnames.c#12 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_sysent.c#12 integrate .. //depot/projects/smpng/sys/compat/svr4/syscalls.master#17 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_misc.c#29 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_proto.h#14 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_syscall.h#13 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_sysent.c#15 integrate .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#16 integrate .. //depot/projects/smpng/sys/i386/linux/linux_proto.h#30 integrate .. //depot/projects/smpng/sys/i386/linux/linux_syscall.h#29 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysent.c#30 integrate .. //depot/projects/smpng/sys/i386/linux/syscalls.master#34 integrate .. //depot/projects/smpng/sys/kern/init_sysent.c#70 integrate .. //depot/projects/smpng/sys/kern/syscalls.c#70 integrate .. //depot/projects/smpng/sys/kern/syscalls.master#76 integrate .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#110 integrate .. //depot/projects/smpng/sys/sys/syscall.h#69 integrate .. //depot/projects/smpng/sys/sys/syscall.mk#69 integrate .. //depot/projects/smpng/sys/sys/sysproto.h#72 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#12 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#12 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#12 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.17 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #include @@ -109,7 +109,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 86 = linux_uselib */ { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon, AUE_SWAPON }, /* 87 = swapon */ { SYF_MPSAFE | AS(linux_reboot_args), (sy_call_t *)linux_reboot, AUE_REBOOT }, /* 88 = linux_reboot */ - { AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ + { SYF_MPSAFE | AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ { SYF_MPSAFE | AS(linux_mmap_args), (sy_call_t *)linux_mmap, AUE_MMAP }, /* 90 = linux_mmap */ { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap, AUE_MUNMAP }, /* 91 = munmap */ { SYF_MPSAFE | AS(linux_truncate_args), (sy_call_t *)linux_truncate, AUE_TRUNCATE }, /* 92 = linux_truncate */ @@ -161,7 +161,7 @@ { SYF_MPSAFE | AS(linux_setfsuid16_args), (sy_call_t *)linux_setfsuid16, AUE_SETFSUID }, /* 138 = linux_setfsuid16 */ { SYF_MPSAFE | AS(linux_setfsgid16_args), (sy_call_t *)linux_setfsgid16, AUE_SETFSGID }, /* 139 = linux_setfsgid16 */ { SYF_MPSAFE | AS(linux_llseek_args), (sy_call_t *)linux_llseek, AUE_LSEEK }, /* 140 = linux_llseek */ - { AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ + { SYF_MPSAFE | AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ { SYF_MPSAFE | AS(linux_select_args), (sy_call_t *)linux_select, AUE_SELECT }, /* 142 = linux_select */ { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock, AUE_FLOCK }, /* 143 = flock */ { SYF_MPSAFE | AS(linux_msync_args), (sy_call_t *)linux_msync, AUE_MSYNC }, /* 144 = linux_msync */ @@ -240,7 +240,7 @@ { SYF_MPSAFE | AS(linux_pivot_root_args), (sy_call_t *)linux_pivot_root, AUE_PIVOT_ROOT }, /* 217 = linux_pivot_root */ { SYF_MPSAFE | AS(linux_mincore_args), (sy_call_t *)linux_mincore, AUE_MINCORE }, /* 218 = linux_mincore */ { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise, AUE_MADVISE }, /* 219 = madvise */ - { AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ + { SYF_MPSAFE | AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ { SYF_MPSAFE | AS(linux_fcntl64_args), (sy_call_t *)linux_fcntl64, AUE_FCNTL }, /* 221 = linux_fcntl64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 222 = */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 223 = */ ==== //depot/projects/smpng/sys/amd64/linux32/syscalls.master#16 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). ==== //depot/projects/smpng/sys/compat/linux/linux_file.c#31 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_file.c,v 1.95 2006/05/10 20:38:15 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_file.c,v 1.96 2006/07/11 20:52:07 jhb Exp $"); #include "opt_compat.h" #include "opt_mac.h" ==== //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#49 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_misc.c,v 1.85 2006/06/26 18:36:57 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_misc.c,v 1.86 2006/07/11 20:52:07 jhb Exp $"); #include "opt_mac.h" ==== //depot/projects/smpng/sys/compat/svr4/svr4_proto.h#13 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.21 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.22 2006/06/27 18:31:36 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.22 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.23 2006/07/11 20:52:07 jhb Exp */ #ifndef _SVR4_SYSPROTO_H_ ==== //depot/projects/smpng/sys/compat/svr4/svr4_syscall.h#12 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.19 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.22 2006/06/27 18:31:36 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.20 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.23 2006/07/11 20:52:07 jhb Exp */ #define SVR4_SYS_exit 1 ==== //depot/projects/smpng/sys/compat/svr4/svr4_syscallnames.c#12 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.19 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.22 2006/06/27 18:31:36 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.20 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.23 2006/07/11 20:52:07 jhb Exp */ const char *svr4_syscallnames[] = { ==== //depot/projects/smpng/sys/compat/svr4/svr4_sysent.c#12 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.20 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.22 2006/06/27 18:31:36 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.21 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.23 2006/07/11 20:52:07 jhb Exp */ #include @@ -101,7 +101,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 78 = rfsys */ { SYF_MPSAFE | AS(rmdir_args), (sy_call_t *)rmdir, AUE_NULL }, /* 79 = rmdir */ { SYF_MPSAFE | AS(mkdir_args), (sy_call_t *)mkdir, AUE_NULL }, /* 80 = mkdir */ - { AS(svr4_sys_getdents_args), (sy_call_t *)svr4_sys_getdents, AUE_NULL }, /* 81 = svr4_sys_getdents */ + { SYF_MPSAFE | AS(svr4_sys_getdents_args), (sy_call_t *)svr4_sys_getdents, AUE_NULL }, /* 81 = svr4_sys_getdents */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 82 = libattach */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 83 = libdetach */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 84 = sysfs */ @@ -233,7 +233,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 210 = signotifywait */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 211 = lwp_sigredirect */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 212 = lwp_alarm */ - { AS(svr4_sys_getdents64_args), (sy_call_t *)svr4_sys_getdents64, AUE_NULL }, /* 213 = svr4_sys_getdents64 */ + { SYF_MPSAFE | AS(svr4_sys_getdents64_args), (sy_call_t *)svr4_sys_getdents64, AUE_NULL }, /* 213 = svr4_sys_getdents64 */ { SYF_MPSAFE | AS(svr4_sys_mmap64_args), (sy_call_t *)svr4_sys_mmap64, AUE_NULL }, /* 214 = svr4_sys_mmap64 */ { SYF_MPSAFE | AS(svr4_sys_stat64_args), (sy_call_t *)svr4_sys_stat64, AUE_NULL }, /* 215 = svr4_sys_stat64 */ { SYF_MPSAFE | AS(svr4_sys_lstat64_args), (sy_call_t *)svr4_sys_lstat64, AUE_NULL }, /* 216 = svr4_sys_lstat64 */ ==== //depot/projects/smpng/sys/compat/svr4/syscalls.master#17 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.22 2006/06/27 18:31:36 jhb Exp $ + $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.23 2006/07/11 20:52:07 jhb Exp $ ; from: @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; ; System call name/number master file (or rather, slave, from SVR4). ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_misc.c#29 (text+ko) ==== @@ -47,7 +47,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/ibcs2/ibcs2_misc.c,v 1.63 2006/07/06 21:32:20 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/ibcs2/ibcs2_misc.c,v 1.64 2006/07/11 20:52:08 jhb Exp $"); /* * IBCS2 compatibility module. ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_proto.h#14 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/ibcs2/ibcs2_proto.h,v 1.25 2006/07/10 15:55:38 jhb Exp $ - * created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.24 2006/07/10 15:55:17 jhb Exp + * $FreeBSD: src/sys/i386/ibcs2/ibcs2_proto.h,v 1.26 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.25 2006/07/11 20:52:08 jhb Exp */ #ifndef _IBCS2_SYSPROTO_H_ ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_syscall.h#13 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/ibcs2/ibcs2_syscall.h,v 1.22 2006/07/10 15:55:38 jhb Exp $ - * created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.24 2006/07/10 15:55:17 jhb Exp + * $FreeBSD: src/sys/i386/ibcs2/ibcs2_syscall.h,v 1.23 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.25 2006/07/11 20:52:08 jhb Exp */ #define IBCS2_SYS_syscall 0 ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_sysent.c#15 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/ibcs2/ibcs2_sysent.c,v 1.27 2006/07/10 15:55:38 jhb Exp $ - * created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.24 2006/07/10 15:55:17 jhb Exp + * $FreeBSD: src/sys/i386/ibcs2/ibcs2_sysent.c,v 1.28 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.25 2006/07/11 20:52:08 jhb Exp */ #include @@ -21,7 +21,7 @@ { SYF_MPSAFE | 0, (sy_call_t *)nosys, AUE_NULL }, /* 0 = syscall */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 1 = exit */ { SYF_MPSAFE | 0, (sy_call_t *)fork, AUE_FORK }, /* 2 = fork */ - { AS(ibcs2_read_args), (sy_call_t *)ibcs2_read, AUE_NULL }, /* 3 = ibcs2_read */ + { SYF_MPSAFE | AS(ibcs2_read_args), (sy_call_t *)ibcs2_read, AUE_NULL }, /* 3 = ibcs2_read */ { SYF_MPSAFE | AS(write_args), (sy_call_t *)write, AUE_NULL }, /* 4 = write */ { SYF_MPSAFE | AS(ibcs2_open_args), (sy_call_t *)ibcs2_open, AUE_OPEN_RWTC }, /* 5 = ibcs2_open */ { SYF_MPSAFE | AS(close_args), (sy_call_t *)close, AUE_CLOSE }, /* 6 = close */ @@ -99,7 +99,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 78 = rfs_rfsys */ { SYF_MPSAFE | AS(ibcs2_rmdir_args), (sy_call_t *)ibcs2_rmdir, AUE_RMDIR }, /* 79 = ibcs2_rmdir */ { SYF_MPSAFE | AS(ibcs2_mkdir_args), (sy_call_t *)ibcs2_mkdir, AUE_MKDIR }, /* 80 = ibcs2_mkdir */ - { AS(ibcs2_getdents_args), (sy_call_t *)ibcs2_getdents, AUE_GETDIRENTRIES }, /* 81 = ibcs2_getdents */ + { SYF_MPSAFE | AS(ibcs2_getdents_args), (sy_call_t *)ibcs2_getdents, AUE_GETDIRENTRIES }, /* 81 = ibcs2_getdents */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 82 = nosys */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 83 = nosys */ { SYF_MPSAFE | AS(ibcs2_sysfs_args), (sy_call_t *)ibcs2_sysfs, AUE_NULL }, /* 84 = ibcs2_sysfs */ ==== //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#16 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.24 2006/07/10 15:55:17 jhb Exp $ + $FreeBSD: src/sys/i386/ibcs2/syscalls.master,v 1.25 2006/07/11 20:52:08 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from IBCS2). ==== //depot/projects/smpng/sys/i386/linux/linux_proto.h#30 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_proto.h,v 1.75 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.72 2006/07/06 21:42:36 jhb Exp + * $FreeBSD: src/sys/i386/linux/linux_proto.h,v 1.76 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.73 2006/07/11 20:52:08 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/smpng/sys/i386/linux/linux_syscall.h#29 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_syscall.h,v 1.69 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.72 2006/07/06 21:42:36 jhb Exp + * $FreeBSD: src/sys/i386/linux/linux_syscall.h,v 1.70 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.73 2006/07/11 20:52:08 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/smpng/sys/i386/linux/linux_sysent.c#30 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_sysent.c,v 1.76 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.72 2006/07/06 21:42:36 jhb Exp + * $FreeBSD: src/sys/i386/linux/linux_sysent.c,v 1.77 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.73 2006/07/11 20:52:08 jhb Exp */ #include @@ -108,7 +108,7 @@ { AS(linux_uselib_args), (sy_call_t *)linux_uselib, AUE_USELIB }, /* 86 = linux_uselib */ { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon, AUE_SWAPON }, /* 87 = swapon */ { SYF_MPSAFE | AS(linux_reboot_args), (sy_call_t *)linux_reboot, AUE_REBOOT }, /* 88 = linux_reboot */ - { AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ + { SYF_MPSAFE | AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ { SYF_MPSAFE | AS(linux_mmap_args), (sy_call_t *)linux_mmap, AUE_MMAP }, /* 90 = linux_mmap */ { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap, AUE_MUNMAP }, /* 91 = munmap */ { SYF_MPSAFE | AS(linux_truncate_args), (sy_call_t *)linux_truncate, AUE_TRUNCATE }, /* 92 = linux_truncate */ @@ -160,7 +160,7 @@ { SYF_MPSAFE | AS(linux_setfsuid16_args), (sy_call_t *)linux_setfsuid16, AUE_SETFSUID }, /* 138 = linux_setfsuid16 */ { SYF_MPSAFE | AS(linux_setfsgid16_args), (sy_call_t *)linux_setfsgid16, AUE_SETFSGID }, /* 139 = linux_setfsgid16 */ { SYF_MPSAFE | AS(linux_llseek_args), (sy_call_t *)linux_llseek, AUE_LSEEK }, /* 140 = linux_llseek */ - { AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ + { SYF_MPSAFE | AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ { SYF_MPSAFE | AS(linux_select_args), (sy_call_t *)linux_select, AUE_SELECT }, /* 142 = linux_select */ { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock, AUE_FLOCK }, /* 143 = flock */ { SYF_MPSAFE | AS(linux_msync_args), (sy_call_t *)linux_msync, AUE_MSYNC }, /* 144 = linux_msync */ @@ -239,7 +239,7 @@ { SYF_MPSAFE | AS(linux_pivot_root_args), (sy_call_t *)linux_pivot_root, AUE_PIVOT_ROOT }, /* 217 = linux_pivot_root */ { SYF_MPSAFE | AS(linux_mincore_args), (sy_call_t *)linux_mincore, AUE_MINCORE }, /* 218 = linux_mincore */ { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise, AUE_MADVISE }, /* 219 = madvise */ - { AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ + { SYF_MPSAFE | AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ { SYF_MPSAFE | AS(linux_fcntl64_args), (sy_call_t *)linux_fcntl64, AUE_FCNTL }, /* 221 = linux_fcntl64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 222 = */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 223 = */ ==== //depot/projects/smpng/sys/i386/linux/syscalls.master#34 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/i386/linux/syscalls.master,v 1.72 2006/07/06 21:42:36 jhb Exp $ + $FreeBSD: src/sys/i386/linux/syscalls.master,v 1.73 2006/07/11 20:52:08 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). ==== //depot/projects/smpng/sys/kern/init_sysent.c#70 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/init_sysent.c,v 1.212 2006/07/05 19:24:14 wsalamon Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp + * $FreeBSD: src/sys/kern/init_sysent.c,v 1.213 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.218 2006/07/11 20:52:08 jhb Exp */ #include "opt_compat.h" @@ -185,7 +185,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 153 = asyncdaemon */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 154 = nosys */ { SYF_MPSAFE | AS(nfssvc_args), (sy_call_t *)nosys, AUE_NULL }, /* 155 = nfssvc */ - { compat(AS(ogetdirentries_args),getdirentries), AUE_GETDIRENTRIES }, /* 156 = old getdirentries */ + { compat(SYF_MPSAFE | AS(ogetdirentries_args),getdirentries), AUE_GETDIRENTRIES }, /* 156 = old getdirentries */ { compat4(SYF_MPSAFE | AS(freebsd4_statfs_args),statfs), AUE_STATFS }, /* 157 = old statfs */ { compat4(SYF_MPSAFE | AS(freebsd4_fstatfs_args),fstatfs), AUE_FSTATFS }, /* 158 = old fstatfs */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 159 = nosys */ ==== //depot/projects/smpng/sys/kern/syscalls.c#70 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/syscalls.c,v 1.196 2006/07/05 19:24:14 wsalamon Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp + * $FreeBSD: src/sys/kern/syscalls.c,v 1.197 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.218 2006/07/11 20:52:08 jhb Exp */ const char *syscallnames[] = { ==== //depot/projects/smpng/sys/kern/syscalls.master#76 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp $ + $FreeBSD: src/sys/kern/syscalls.master,v 1.218 2006/07/11 20:52:08 jhb Exp $ ; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94 ; ; System call name/number master file. ==== //depot/projects/smpng/sys/kern/vfs_syscalls.c#110 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.416 2006/07/06 19:33:38 wsalamon Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.417 2006/07/11 20:52:08 jhb Exp $"); #include "opt_compat.h" #include "opt_mac.h" ==== //depot/projects/smpng/sys/sys/syscall.h#69 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/syscall.h,v 1.193 2006/07/05 19:24:14 wsalamon Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp + * $FreeBSD: src/sys/sys/syscall.h,v 1.194 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.218 2006/07/11 20:52:08 jhb Exp */ #define SYS_syscall 0 ==== //depot/projects/smpng/sys/sys/syscall.mk#69 (text+ko) ==== @@ -1,7 +1,7 @@ # FreeBSD system call names. # DO NOT EDIT-- this file is automatically generated. -# $FreeBSD: src/sys/sys/syscall.mk,v 1.148 2006/07/05 19:24:13 wsalamon Exp $ -# created from FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp +# $FreeBSD: src/sys/sys/syscall.mk,v 1.149 2006/07/11 20:55:23 jhb Exp $ +# created from FreeBSD: src/sys/kern/syscalls.master,v 1.218 2006/07/11 20:52:08 jhb Exp MIASM = \ syscall.o \ exit.o \ ==== //depot/projects/smpng/sys/sys/sysproto.h#72 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/sysproto.h,v 1.195 2006/07/05 19:24:13 wsalamon Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.217 2006/07/05 15:46:02 wsalamon Exp + * $FreeBSD: src/sys/sys/sysproto.h,v 1.196 2006/07/11 20:55:23 jhb Exp $ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.218 2006/07/11 20:52:08 jhb Exp */ #ifndef _SYS_SYSPROTO_H_ From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:16:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EC96016A51E; Tue, 11 Jul 2006 21:16:16 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 9B3AD16A51B for ; Tue, 11 Jul 2006 21:16:16 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9656043D5F for ; Tue, 11 Jul 2006 21:16:14 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k6BLGDqr077674 for ; Tue, 11 Jul 2006 17:16:13 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Perforce Change Reviews Date: Tue, 11 Jul 2006 17:15:47 -0400 User-Agent: KMail/1.9.1 References: <200607112103.k6BL3FsV004194@repoman.freebsd.org> In-Reply-To: <200607112103.k6BL3FsV004194@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607111715.47909.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Tue, 11 Jul 2006 17:16:13 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1592/Tue Jul 11 16:40:37 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Subject: Re: PERFORCE change 101293 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:16:17 -0000 On Tuesday 11 July 2006 17:03, John Baldwin wrote: > http://perforce.freebsd.org/chv.cgi?CH=101293 > > Change 101293 by jhb@jhb_mutex on 2006/07/11 21:02:46 > > Attempt to fix a mismerge. > > Affected files ... > > .. //depot/projects/smpng/sys/bsm/audit_record.h#5 edit > > Differences ... > > ==== //depot/projects/smpng/sys/bsm/audit_record.h#5 (text+ko) ==== > > @@ -30,7 +30,7 @@ > * > * @APPLE_BSD_LICENSE_HEADER_END@ > * > - * $P4: //depot/projects/smpng/sys/bsm/audit_record.h#4 $ > + * $P4: //depot/projects/smpng/sys/bsm/audit_record.h#5 $ p4 hates me. I keep getting a diff relative to //depot/vendor/freebsd/... because the CVS version has different P4 tag in it. :( -- John Baldwin From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:30:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EDD3616A4EB; Tue, 11 Jul 2006 21:30:23 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 BE44516A4E8; Tue, 11 Jul 2006 21:30:23 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5FBCD43D46; Tue, 11 Jul 2006 21:30:23 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id E377C46CDB; Tue, 11 Jul 2006 17:29:51 -0400 (EDT) Date: Tue, 11 Jul 2006 22:29:51 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: John Baldwin In-Reply-To: <200607111715.47909.jhb@freebsd.org> Message-ID: <20060711222908.J14749@fledge.watson.org> References: <200607112103.k6BL3FsV004194@repoman.freebsd.org> <200607111715.47909.jhb@freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Perforce Change Reviews Subject: Re: PERFORCE change 101293 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:30:24 -0000 On Tue, 11 Jul 2006, John Baldwin wrote: >> @@ -30,7 +30,7 @@ >> * >> * @APPLE_BSD_LICENSE_HEADER_END@ >> * >> - * $P4: //depot/projects/smpng/sys/bsm/audit_record.h#4 $ >> + * $P4: //depot/projects/smpng/sys/bsm/audit_record.h#5 $ > > p4 hates me. I keep getting a diff relative to //depot/vendor/freebsd/... > because the CVS version has different P4 tag in it. :( What I really need is a $OpenBSM$ set in //depot/projects/trustedbsd/openbsm/... but not evaluated elsewhere in the tree. I wonder if this is possible? Robert N M Watson Computer Laboratory University of Cambridge From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:42:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6EBD716A500; Tue, 11 Jul 2006 21:42:15 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 3546F16A4DD for ; Tue, 11 Jul 2006 21:42:15 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3E03443D70 for ; Tue, 11 Jul 2006 21:42:10 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BLgAo7012997 for ; Tue, 11 Jul 2006 21:42:10 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BLg9MN012994 for perforce@freebsd.org; Tue, 11 Jul 2006 21:42:09 GMT (envelope-from wkoszek@FreeBSD.org) Date: Tue, 11 Jul 2006 21:42:09 GMT Message-Id: <200607112142.k6BLg9MN012994@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101301 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:42:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101301 Change 101301 by wkoszek@wkoszek_laptop on 2006/07/11 21:42:06 Remove MALTA specific stuff from machdep.c and move it to malta_machdep.c. Add lcd_init() and lcd_puts() functions to machdep.c and implement them in malta_machdep.c. Add malta_machdep.c to files.malta. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#13 edit .. //depot/projects/mips2/src/sys/mips/mips4k/malta/files.malta#3 edit .. //depot/projects/mips2/src/sys/mips/mips4k/malta/malta_machdep.c#1 add Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#13 (text+ko) ==== @@ -90,6 +90,7 @@ void mips_init(void) { + printf("mips_init() executed!\n"); /* * This one is called from subr_param.c. */ @@ -312,53 +313,35 @@ } -#define MALTA_FPGA_BASE 0x1f000000 /* FPGA: */ -#define MALTA_FPGA_SIZE 0x00c00000 /* 12 MByte */ - -#define MALTA_LEDBAR (MALTA_FPGA_BASE + 0x408) -#define MALTA_ASCIIWORD (MALTA_FPGA_BASE + 0x410) -#define MALTA_ASCII_BASE (MALTA_FPGA_BASE + 0x418) -#define MALTA_ASCIIPOS0 0x00 -#define MALTA_ASCIIPOS1 0x08 -#define MALTA_ASCIIPOS2 0x10 -#define MALTA_ASCIIPOS3 0x18 -#define MALTA_ASCIIPOS4 0x20 -#define MALTA_ASCIIPOS5 0x28 -#define MALTA_ASCIIPOS6 0x30 -#define MALTA_ASCIIPOS7 0x38 - /* * * Existing code path * ------------------ - * locore.S: + * locore.S * | * +->platform_start(): (here -- machdep.c) * | - * +-MALTA_PUTCHAR() (macros to get malta LCD working) * +-mips_init(): (here -- machdep.c) * | * +-init_param2() (subr_param.c) * +-mips_cpu_init() (cpu.c) * +-pmap_bootstrap() (pmap.c) */ + +/* + * LCD initialization. + */ +extern void lcd_init(void); +extern void lcd_puts(char *); + void platform_start(int argc, char **argv) { - volatile uint32_t * dest_ch; - -#define MALTA_PUTCHAR(pos, ch) \ - dest_ch = (uint32_t *) \ - MIPS_PHYS_TO_KSEG0(MALTA_ASCII_BASE + MALTA_ASCIIPOS ## pos); \ - *dest_ch = (uint32_t) (ch); - - MALTA_PUTCHAR(0, 'F'); - MALTA_PUTCHAR(1, 'r'); - MALTA_PUTCHAR(2, 'e'); - MALTA_PUTCHAR(3, 'E'); - MALTA_PUTCHAR(4, 'B'); - MALTA_PUTCHAR(5, 'S'); - MALTA_PUTCHAR(6, 'D'); + /* + * XXXMIPS: I think I know how to get it working in more elegant way. + * Use external functions for now. + */ + lcd_init(); cninit(); mips_init(); ==== //depot/projects/mips2/src/sys/mips/mips4k/malta/files.malta#3 (text+ko) ==== @@ -3,3 +3,4 @@ mips/mips4k/malta/uart_dev_maltausart.c optional uart mips/mips4k/malta/uart_bus_maltausart.c optional uart mips/mips4k/malta/malta_console.c standard +mips/mips4k/malta/malta_machdep.c standard From owner-p4-projects@FreeBSD.ORG Tue Jul 11 21:48:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D66E816A4E9; Tue, 11 Jul 2006 21:48:18 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B374616A4DA for ; Tue, 11 Jul 2006 21:48:18 +0000 (UTC) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6728B43D5F for ; Tue, 11 Jul 2006 21:48:18 +0000 (GMT) (envelope-from wkoszek@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BLmIUU013450 for ; Tue, 11 Jul 2006 21:48:18 GMT (envelope-from wkoszek@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BLmIep013445 for perforce@freebsd.org; Tue, 11 Jul 2006 21:48:18 GMT (envelope-from wkoszek@FreeBSD.org) Date: Tue, 11 Jul 2006 21:48:18 GMT Message-Id: <200607112148.k6BLmIep013445@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wkoszek@FreeBSD.org using -f From: "Wojciech A. Koszek" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101302 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 21:48:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=101302 Change 101302 by wkoszek@wkoszek_laptop on 2006/07/11 21:47:18 Add some notes about setting up cross-compiled kernel and GXemul environment. Affected files ... .. //depot/projects/mips2/src/EMULATION#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Jul 11 22:10:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7EEFB16A4E1; Tue, 11 Jul 2006 22:10:49 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 470D016A4DA for ; Tue, 11 Jul 2006 22:10:49 +0000 (UTC) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1015243D6D for ; Tue, 11 Jul 2006 22:10:48 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BMAlOH015826 for ; Tue, 11 Jul 2006 22:10:47 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BMAl3n015814 for perforce@freebsd.org; Tue, 11 Jul 2006 22:10:47 GMT (envelope-from wsalamon@computer.org) Date: Tue, 11 Jul 2006 22:10:47 GMT Message-Id: <200607112210.k6BMAl3n015814@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Cc: Subject: PERFORCE change 101305 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 22:10:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=101305 Change 101305 by wsalamon@vh3 on 2006/07/11 22:10:38 Audit the argv and env vectors passed in on exec: Add the argument auditing functions for argv and env. Add kernel-specific versions of the tokenizer functions for the arg and env represented as a char array. Integrate the changes from OpenBSM for the tokenizer function prototypes (and pick up an earlier change for free). Implement the AUDIT_ARGV and AUDIT_ARGE audit policy commands to enable/disable argv/env auditing. Call the argument auditing from the exec system calls. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#17 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/kern_exec.c#11 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit.c#34 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit.h#18 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_arg.c#20 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#18 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#21 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_private.h#30 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_syscalls.c#18 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#17 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#16 $ + * $P4: //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#17 $ * $FreeBSD: src/sys/bsm/audit_record.h,v 1.3 2006/07/03 14:44:13 rwatson Exp $ */ @@ -185,7 +185,7 @@ #define AUR_CHAR AUR_BYTE #define AUR_SHORT 1 #define AUR_INT32 2 -#define AUR_INT AUR_INT +#define AUR_INT AUR_INT32 #define AUR_INT64 3 /* ... and their sizes */ @@ -309,8 +309,13 @@ gid_t rgid, pid_t pid, au_asid_t sid, au_tid_addr_t *tid); token_t *au_to_subject64_ex(au_id_t auid, uid_t euid, gid_t egid, uid_t ruid, gid_t rgid, pid_t pid, au_asid_t sid, au_tid_addr_t *tid); -token_t *au_to_exec_args(const char **); -token_t *au_to_exec_env(const char **); +#if defined(_KERNEL) || defined(KERNEL) +token_t *au_to_exec_args(char *args, int argc); +token_t *au_to_exec_env(char *envs, int envc); +#else +token_t *au_to_exec_args(char **argv); +token_t *au_to_exec_env(char **envp); +#endif token_t *au_to_text(char *text); token_t *au_to_kevent(struct kevent *kev); token_t *au_to_trailer(int rec_size); ==== //depot/projects/trustedbsd/audit3/sys/kern/kern_exec.c#11 (text+ko) ==== @@ -79,6 +79,8 @@ #include +#include + MALLOC_DEFINE(M_PARGS, "proc-args", "Process arguments"); static int sysctl_kern_ps_strings(SYSCTL_HANDLER_ARGS); @@ -239,6 +241,10 @@ struct proc *p = td->td_proc; int error; + AUDIT_ARG(argv, args->begin_argv, args->argc, + args->begin_envv - args->begin_argv); + AUDIT_ARG(envv, args->begin_envv, args->envc, + args->endp - args->begin_envv); if (p->p_flag & P_HADTHREADS) { PROC_LOCK(p); if (thread_single(SINGLE_BOUNDARY)) { ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit.c#34 (text+ko) ==== @@ -92,6 +92,8 @@ */ int audit_panic_on_write_fail; int audit_fail_stop; +int audit_argv; +int audit_arge; /* * Are we currently "failing stop" due to out of disk space? @@ -206,6 +208,10 @@ free(ar->k_ar.ar_arg_iovecstr, M_AUDITTEXT); if (ar->k_udata != NULL) free(ar->k_udata, M_AUDITDATA); + if (ar->k_ar.ar_arg_argv != NULL) + free(ar->k_ar.ar_arg_argv, M_AUDITTEXT); + if (ar->k_ar.ar_arg_envv != NULL) + free(ar->k_ar.ar_arg_envv, M_AUDITTEXT); } /* @@ -223,6 +229,8 @@ audit_panic_on_write_fail = 0; audit_fail_stop = 0; audit_in_failure = 0; + audit_argv = 0; + audit_arge = 0; audit_fstat.af_filesz = 0; /* '0' means unset, unbounded */ audit_fstat.af_currsz = 0; ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit.h#18 (text+ko) ==== @@ -113,6 +113,8 @@ #define ARG_MACHPORT2 0x0000200000000000ULL #define ARG_EXIT 0x0000400000000000ULL #define ARG_IOVECSTR 0x0000800000000000ULL +#define ARG_ARGV 0x0001000000000000ULL +#define ARG_ENVV 0x0002000000000000ULL #define ARG_NONE 0x0000000000000000ULL #define ARG_ALL 0xFFFFFFFFFFFFFFFFULL @@ -168,6 +170,8 @@ void audit_arg_posix_ipc_perm(uid_t uid, gid_t gid, mode_t mode); void audit_arg_auditon(union auditon_udata *udata); void audit_arg_file(struct proc *p, struct file *fp); +void audit_arg_argv(char *argv, int argc, int length); +void audit_arg_envv(char *envv, int envc, int length); void audit_sysclose(struct thread *td, int fd); void audit_proc_alloc(struct proc *p); void audit_proc_kproc0(struct proc *p); ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_arg.c#20 (text+ko) ==== @@ -800,6 +800,48 @@ } /* + * Audit the argument strings passed to exec. + */ +void +audit_arg_argv(char *argv, int argc, int length) +{ + struct kaudit_record *ar; + + if (audit_argv == 0) + return; + + ar = currecord(); + if (ar == NULL) + return; + + ar->k_ar.ar_arg_argv = malloc(length, M_AUDITTEXT, M_WAITOK); + bcopy(argv, ar->k_ar.ar_arg_argv, length); + ar->k_ar.ar_arg_argc = argc; + ARG_SET_VALID(ar, ARG_ARGV); +} + +/* + * Audit the environment strings passed to exec. + */ +void +audit_arg_envv(char *envv, int envc, int length) +{ + struct kaudit_record *ar; + + if (audit_arge == 0) + return; + + ar = currecord(); + if (ar == NULL) + return; + + ar->k_ar.ar_arg_envv = malloc(length, M_AUDITTEXT, M_WAITOK); + bcopy(envv, ar->k_ar.ar_arg_envv, length); + ar->k_ar.ar_arg_envc = envc; + ARG_SET_VALID(ar, ARG_ENVV); +} + +/* * The close() system call uses it's own audit call to capture the path/vnode * information because those pieces are not easily obtained within the system * call itself. ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#18 (text+ko) ==== @@ -585,7 +585,6 @@ case AUE_CHDIR: case AUE_CHROOT: case AUE_EACCESS: - case AUE_EXECVE: case AUE_GETATTRLIST: case AUE_NFS_GETFH: case AUE_LSTAT: @@ -684,6 +683,20 @@ EXTATTR_TOKENS; break; + case AUE_EXECVE: + if (ARG_IS_VALID(kar, ARG_ARGV)) { + tok = au_to_exec_args(ar->ar_arg_argv, + ar->ar_arg_argc); + kau_write(rec, tok); + } + if (ARG_IS_VALID(kar, ARG_ENVV)) { + tok = au_to_exec_env(ar->ar_arg_envv, + ar->ar_arg_envc); + kau_write(rec, tok); + } + UPATH1_VNODE1_TOKENS; + break; + case AUE_FCHMOD: if (ARG_IS_VALID(kar, ARG_MODE)) { tok = au_to_arg32(2, "new file mode", ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#21 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#20 $ + * $P4: //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#21 $ * $FreeBSD: src/sys/security/audit/audit_bsm_token.c,v 1.4 2006/06/17 13:53:04 wsalamon Exp $ */ @@ -1018,13 +1018,60 @@ } #endif +#if defined(_KERNEL) || defined(KERNEL) +static token_t * +au_to_exec_strings(char *strs, int count, u_char type) +{ + token_t *t; + u_char *dptr = NULL; + u_int32_t totlen; + int ctr; + char *p; + + totlen = 0; + ctr = count; + p = strs; + while (ctr-- > 0) { + totlen += strlen(p) + 1; + p = strs + totlen; + } + GET_TOKEN_AREA(t, dptr, sizeof(u_char) + sizeof(u_int32_t) + totlen); + ADD_U_CHAR(dptr, type); + ADD_U_INT32(dptr, count); + ADD_STRING(dptr, strs, totlen); + + return (t); +} + +/* + * token ID 1 byte + * count 4 bytes + * text count null-terminated strings + */ +token_t * +au_to_exec_args(char *args, int argc) +{ + return (au_to_exec_strings(args, argc, AUT_EXEC_ARGS)); +} + /* * token ID 1 byte * count 4 bytes * text count null-terminated strings */ token_t * -au_to_exec_args(const char **args) +au_to_exec_env(char *envs, int envc) +{ + return (au_to_exec_strings(envs, envc, AUT_EXEC_ENV)); +} +#else +/* + * token ID 1 byte + * count 4 bytes + * text count null-terminated strings + */ +token_t * +au_to_exec_args(char **argv) { token_t *t; u_char *dptr = NULL; @@ -1032,7 +1079,7 @@ int i, count = 0; size_t totlen = 0; - nextarg = *args; + nextarg = *argv; while (nextarg != NULL) { int nextlen; @@ -1040,7 +1087,7 @@ nextlen = strlen(nextarg); totlen += nextlen + 1; count++; - nextarg = *(args + count); + nextarg = *(argv + count); } totlen += count * sizeof(char); /* nul terminations. */ @@ -1050,7 +1097,7 @@ ADD_U_INT32(dptr, count); for (i = 0; i < count; i++) { - nextarg = *(args + i); + nextarg = *(argv + i); ADD_MEM(dptr, nextarg, strlen(nextarg) + 1); } @@ -1063,7 +1110,7 @@ * text count null-terminated strings */ token_t * -au_to_exec_env(const char **env) +au_to_exec_env(char **envp) { token_t *t; u_char *dptr = NULL; @@ -1071,7 +1118,7 @@ size_t totlen = 0; const char *nextenv; - nextenv = *env; + nextenv = *envp; while (nextenv != NULL) { int nextlen; @@ -1079,7 +1126,7 @@ nextlen = strlen(nextenv); totlen += nextlen + 1; count++; - nextenv = *(env + count); + nextenv = *(envp + count); } totlen += sizeof(char) * count; @@ -1089,12 +1136,13 @@ ADD_U_INT32(dptr, count); for (i = 0; i < count; i++) { - nextenv = *(env + i); + nextenv = *(envp + i); ADD_MEM(dptr, nextenv, strlen(nextenv) + 1); } return (t); } +#endif /* * token ID 1 byte ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_private.h#30 (text+ko) ==== @@ -74,6 +74,8 @@ extern struct au_mask audit_nae_mask; extern int audit_panic_on_write_fail; extern int audit_fail_stop; +extern int audit_argv; +extern int audit_arge; /* * Success/failure conditions for the conversion of a kernel audit record to @@ -219,6 +221,10 @@ void * ar_arg_svipc_addr; struct posix_ipc_perm ar_arg_pipc_perm; union auditon_udata ar_arg_auditon; + char *ar_arg_argv; + int ar_arg_argc; + char *ar_arg_envv; + int ar_arg_envc; int ar_arg_exitstatus; int ar_arg_exitretval; }; ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_syscalls.c#18 (text+ko) ==== @@ -195,16 +195,23 @@ udata.au_policy |= AUDIT_CNT; if (audit_panic_on_write_fail) udata.au_policy |= AUDIT_AHLT; + if (audit_argv) + udata.au_policy |= AUDIT_ARGV; + if (audit_arge) + udata.au_policy |= AUDIT_ARGE; break; case A_SETPOLICY: - if (udata.au_policy & ~(AUDIT_CNT|AUDIT_AHLT)) + if (udata.au_policy & ~(AUDIT_CNT|AUDIT_AHLT|AUDIT_ARGV| + AUDIT_ARGE)) return (EINVAL); /* * XXX - Need to wake up waiters if the policy relaxes? */ audit_fail_stop = ((udata.au_policy & AUDIT_CNT) == 0); audit_panic_on_write_fail = (udata.au_policy & AUDIT_AHLT); + audit_argv = (udata.au_policy & AUDIT_ARGV); + audit_arge = (udata.au_policy & AUDIT_ARGE); break; case A_GETKMASK: From owner-p4-projects@FreeBSD.ORG Tue Jul 11 22:54:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6616C16A4DF; Tue, 11 Jul 2006 22:54:44 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 29E0616A4DE for ; Tue, 11 Jul 2006 22:54:44 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E9A0A43D49 for ; Tue, 11 Jul 2006 22:54:43 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6BMshlA017793 for ; Tue, 11 Jul 2006 22:54:43 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6BMshFJ017790 for perforce@freebsd.org; Tue, 11 Jul 2006 22:54:43 GMT (envelope-from jb@freebsd.org) Date: Tue, 11 Jul 2006 22:54:43 GMT Message-Id: <200607112254.k6BMshFJ017790@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101308 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 11 Jul 2006 22:54:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=101308 Change 101308 by jb@jb_freebsd2 on 2006/07/11 22:54:37 Define MK_CDDL for use instead on NO_CDDL. Also add MK_LIBC_THREADS for use when building libc with libthr functions built in. Affected files ... .. //depot/projects/dtrace/src/share/mk/bsd.own.mk#5 edit Differences ... ==== //depot/projects/dtrace/src/share/mk/bsd.own.mk#5 (text+ko) ==== @@ -295,6 +295,7 @@ BLUETOOTH \ BOOT \ CALENDAR \ + CDDL \ CPP \ CRYPT \ CVS \ @@ -320,6 +321,7 @@ KERBEROS \ LIB32 \ LIBC_R \ + LIBC_THREADS \ LIBPTHREAD \ LIBTHR \ LOCALES \ @@ -431,6 +433,7 @@ # MK_* variable is set to "no". # .for var in \ + CDDL \ GNU \ INET6 \ IPX \ From owner-p4-projects@FreeBSD.ORG Wed Jul 12 02:44:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9824B16A4E1; Wed, 12 Jul 2006 02:44:33 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 7113116A4DF for ; Wed, 12 Jul 2006 02:44:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3B92D43D45 for ; Wed, 12 Jul 2006 02:44:33 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C2iXe0045595 for ; Wed, 12 Jul 2006 02:44:33 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C2iW4p045592 for perforce@freebsd.org; Wed, 12 Jul 2006 02:44:32 GMT (envelope-from jb@freebsd.org) Date: Wed, 12 Jul 2006 02:44:32 GMT Message-Id: <200607120244.k6C2iW4p045592@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101319 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 02:44:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=101319 Change 101319 by jb@jb_freebsd2 on 2006/07/12 02:43:36 Add support to build gcc expecting a version of libc with thread support built in. Affected files ... .. //depot/projects/dtrace/src/gnu/usr.bin/cc/Makefile.inc#3 edit Differences ... ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/Makefile.inc#3 (text+ko) ==== @@ -8,6 +8,7 @@ GCCDIR= ${.CURDIR}/../../../../contrib/gcc +.include .include "Makefile.tgt" # Machine description. @@ -18,6 +19,10 @@ CFLAGS+= -DPREFIX=\"${TOOLS_PREFIX}/usr\" #CFLAGS+= -DWANT_COMPILER_INVARIANTS +.if ${MK_LIBC_THREADS} != "no" +CFLAGS+= -DFBSD_LIBC_THREADS +.endif + # If building 64-bit longs for the i386, "_LARGE_LONG" should also be defined # to get the proper sizes in limits.h .if defined(LONG_TYPE_SIZE) From owner-p4-projects@FreeBSD.ORG Wed Jul 12 02:45:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B4A9616A4E2; Wed, 12 Jul 2006 02:45:36 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 7370F16A4DF for ; Wed, 12 Jul 2006 02:45:36 +0000 (UTC) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2F8EC43D49 for ; Wed, 12 Jul 2006 02:45:36 +0000 (GMT) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C2ja30045663 for ; Wed, 12 Jul 2006 02:45:36 GMT (envelope-from swhitman@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C2jaQb045660 for perforce@freebsd.org; Wed, 12 Jul 2006 02:45:36 GMT (envelope-from swhitman@FreeBSD.org) Date: Wed, 12 Jul 2006 02:45:36 GMT Message-Id: <200607120245.k6C2jaQb045660@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swhitman@FreeBSD.org using -f From: Spencer Whitman To: Perforce Change Reviews Cc: Subject: PERFORCE change 101320 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 02:45:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=101320 Change 101320 by swhitman@swhitman_joethecat on 2006/07/12 02:44:37 Work on #define Affected files ... .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#10 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#10 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.h#7 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#8 edit Differences ... ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#10 (text+ko) ==== @@ -45,7 +45,10 @@ }; struct define { - TAILQ_ENTRY(defines) list; + const char *name; /* Name of the macro */ + /* Arguments of the macro */ + /* Value of the macro */ + TAILQ_ENTRY(defines) list; /* Link to list of macros */ }; static TAILQ_HEAD(,iarg) iarg = TAILQ_HEAD_INITIALIZER(iarg); @@ -88,23 +91,23 @@ static const char * skipspace(struct cppfilestate *cfs, const char *s, const char *e) { - /* skip leading spaces, including line continuation */ - while (s < e) { - /* XXX This code will choke on single \'s or /'s */ - /* XXX Not sure if this is what needs to be edited */ - if (*s == '\\' && s + 1 < e && isvert(s[1])) { - s++; - continue; - } - if (*s == '/') { - s = skipcomment(cfs, s, e); - s++; - } - if (!isspace(*s)) - break; - s++; - } - return (s); + /* skip leading spaces, including line continuation */ + while (s < e) { + /* XXX This code will choke on single \'s or /'s */ + /* XXX Not sure if this is what needs to be edited */ + if (*s == '\\' && s + 1 < e && isvert(s[1])) { + s++; + continue; + } + if (*s == '/') { + s = skipcomment(cfs, s, e); + s++; + } + if (!isspace(*s)) + break; + s++; + } + return (s); } static const char * @@ -229,14 +232,39 @@ /* * Define statment should be of the form: * #define NAME(vars) value - * If value continues along more than one line, it should end with a \\n + * If it continues along more than one line, the line should end with a \\n + * (this may already be taken care of). vars and value are both optional. */ static void cpp_define(CPP_ARGS) { /* struct cppfilestate *cfs __unused, const char *h __unused, const char *b __unused, const char *e __unused */ + const char * name_b; + const char * name_e; + printf("#define of %V\n",String(b,e)); + + /* The first token is the macro name */ + name_b = skipspace(cfs, b, e); + + /* Find the end of the name by finding the first white space char or '(' */ + for(name_e = name_b; (name_e < e); name_e++) { + /* Object like macro */ + if ((isspace(*name_e)) || + /* XXX This is ugly; any better way to do this? */ + ((name_e + 1 < e) && ((name_e[1] == '\\') && (name_e[2] == 's')))) { + + printf("Defining object macro name %V\n",String(name_b,name_e)); + } + /* Function like macro */ + else if (*name_e == '(') { + printf("Defining function macro name %V\n",String(name_b,name_e)); + } + else + continue; + } + } static void @@ -245,6 +273,7 @@ /* struct cppfilestate *cfs __unused, const char *h __unused, const char *b __unused, const char *e __unused */ printf("#undef of %V\n",String(b,e)); + } static void ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#10 (text+ko) ==== ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.h#7 (text+ko) ==== ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/lexer.c#8 (text+ko) ==== @@ -149,7 +149,7 @@ un_hash(const char *s, const char *e) { const char *r; - char *p; /*, *q;*/ /* XXX Q seems unneccessary (just a memory leak) */ + char *p; /*, *q;*/ /* XXX q seems unneccessary (just a memory leak) */ int same = 1; /*q =*/ p = malloc(1 + (e - s)); @@ -283,7 +283,7 @@ continue; case '#': - /* XXX Not quite sure what this case does */ + /* Stringification (?) */ printf("# %V\n", String(b, e)); u = strtoul(b + 1, &q, 0); if (q == NULL) From owner-p4-projects@FreeBSD.ORG Wed Jul 12 02:45:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DCF4416A568; Wed, 12 Jul 2006 02:45:37 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 BA38D16A4DA for ; Wed, 12 Jul 2006 02:45:37 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6151243D49 for ; Wed, 12 Jul 2006 02:45:37 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C2jbUk045670 for ; Wed, 12 Jul 2006 02:45:37 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C2jacP045666 for perforce@freebsd.org; Wed, 12 Jul 2006 02:45:36 GMT (envelope-from jb@freebsd.org) Date: Wed, 12 Jul 2006 02:45:36 GMT Message-Id: <200607120245.k6C2jacP045666@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101321 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 02:45:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=101321 Change 101321 by jb@jb_freebsd2 on 2006/07/12 02:45:00 Convert to using the new make knobs now that the parent Makefile.inc includes bsd.own.mk which expects to use the new knobs. Affected files ... .. //depot/projects/dtrace/src/gnu/usr.bin/cc/c++/Makefile#3 edit .. //depot/projects/dtrace/src/gnu/usr.bin/cc/c++filt/Makefile#3 edit .. //depot/projects/dtrace/src/gnu/usr.bin/cc/cc1/Makefile#3 edit .. //depot/projects/dtrace/src/gnu/usr.bin/cc/cc1obj/Makefile#3 edit .. //depot/projects/dtrace/src/gnu/usr.bin/cc/cc1plus/Makefile#3 edit .. //depot/projects/dtrace/src/gnu/usr.bin/cc/cc_tools/Makefile#3 edit .. //depot/projects/dtrace/src/gnu/usr.bin/cc/f771/Makefile#3 edit .. //depot/projects/dtrace/src/gnu/usr.bin/cc/protoize/Makefile#3 edit Differences ... ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/c++/Makefile#3 (text+ko) ==== @@ -9,7 +9,7 @@ SRCS= gcc.c g++spec.c LINKS= ${BINDIR}/c++ ${BINDIR}/g++ LINKS+= ${BINDIR}/c++ ${BINDIR}/CC -NO_MAN= +MK_MAN=no DPADD= ${LIBCC_INT} LDADD= ${LIBCC_INT} ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/c++filt/Makefile#3 (text+ko) ==== @@ -6,7 +6,7 @@ PROG= c++filt SRCS= cp-demangle.c -NO_MAN= +MK_MAN=no CFLAGS+= -DSTANDALONE_DEMANGLER -DIN_GCC -DVERSION=\"$(version)\" ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/cc1/Makefile#3 (text+ko) ==== @@ -7,7 +7,7 @@ PROG= cc1 SRCS= main.c c-parse+%DIKED.c c-lang.c stub-objc.c BINDIR= /usr/libexec -NO_MAN= +MK_MAN=no NO_SHARED?=yes CFLAGS+= -I. ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/cc1obj/Makefile#3 (text+ko) ==== @@ -7,7 +7,7 @@ PROG= cc1obj SRCS= main.c objc-parse+DIKED.c objc-act.c objc-lang.c c-decl.c BINDIR= /usr/libexec -NO_MAN= +MK_MAN=no NO_SHARED?=yes CFLAGS+= -I${GCCDIR}/objc -I. ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/cc1plus/Makefile#3 (text+ko) ==== @@ -12,7 +12,7 @@ search.c semantics.c tree.c typeck.c typeck2.c optimize.c BINDIR= /usr/libexec -NO_MAN= +MK_MAN=no NO_SHARED?=yes CFLAGS+= -I${GCCDIR}/cp -I. ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/cc_tools/Makefile#3 (text+ko) ==== @@ -22,6 +22,10 @@ CFLAGS+= -DGENERATOR_FILE +.if ${MK_LIBC_THREADS} != "no" +CFLAGS+= -DFBSD_LIBC_THREADS +.endif + # #----------------------------------------------------------------------- # Build 'pocket' libiberty exclusively for build tools use. ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/f771/Makefile#3 (text+ko) ==== @@ -10,7 +10,7 @@ stb.c stc.c std.c ste.c storag.c stp.c str.c sts.c stt.c stu.c stv.c \ stw.c symbol.c target.c top.c type.c where.c main.c BINDIR= /usr/libexec -NO_MAN= +MK_MAN=no CFLAGS+= -I${GCCDIR}/f -I. ==== //depot/projects/dtrace/src/gnu/usr.bin/cc/protoize/Makefile#3 (text+ko) ==== @@ -5,7 +5,7 @@ .PATH: ${.CURDIR}/../cc_tools ${GCCDIR} PROG= protoize -NO_MAN= +MK_MAN=no # things are rather hard-coded, we work around that here CFLAGS+= -DDEFAULT_TARGET_VERSION=\"\" From owner-p4-projects@FreeBSD.ORG Wed Jul 12 02:47:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 53A8516A4F4; Wed, 12 Jul 2006 02:47:41 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 22EBE16A4F3 for ; Wed, 12 Jul 2006 02:47:41 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B149C43D45 for ; Wed, 12 Jul 2006 02:47:40 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C2leJZ045900 for ; Wed, 12 Jul 2006 02:47:40 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C2lev9045897 for perforce@freebsd.org; Wed, 12 Jul 2006 02:47:40 GMT (envelope-from jb@freebsd.org) Date: Wed, 12 Jul 2006 02:47:40 GMT Message-Id: <200607120247.k6C2lev9045897@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101322 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 02:47:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=101322 Change 101322 by jb@jb_freebsd2 on 2006/07/12 02:47:01 Convert from using NO_CDDL to use the new build knob MK_CDDL. Affected files ... .. //depot/projects/dtrace/src/Makefile.inc1#12 edit .. //depot/projects/dtrace/src/cddl/Makefile#6 edit .. //depot/projects/dtrace/src/sys/modules/Makefile#12 edit Differences ... ==== //depot/projects/dtrace/src/Makefile.inc1#12 (text+ko) ==== @@ -38,10 +38,10 @@ # We must do etc last for install/distribute to work. # SUBDIR= share/info include lib libexec bin -.if defined(NO_CDDL) +.if ${MK_CDDL} != "no" +SUBDIR+=cddl +.else NO_CTF=1 -.else -SUBDIR+=cddl .endif .if ${MK_GAMES} != "no" SUBDIR+=games @@ -211,7 +211,7 @@ VERSION="${VERSION}" \ INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${TMPPATH} -.if defined(NO_CDDL) || defined(NO_CTF) +.if ${MK_CDDL} == "no" || defined(NO_CTF) WMAKEENV+= NO_CTF=1 .endif WMAKE= ${WMAKEENV} ${MAKE} -f Makefile.inc1 DESTDIR=${WORLDTMP} @@ -862,7 +862,7 @@ _pwd_mkdb= usr.sbin/pwd_mkdb .endif -.if !defined(NO_CDDL) && !defined(NO_DTRACE) +.if ${MK_CDDL} != "no" _dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf gnu/lib/libdwarf cddl/lib/libelf cddl/usr.bin/ctfconvert cddl/usr.bin/ctfmerge .endif @@ -1053,7 +1053,7 @@ _prebuild_libs+= lib/libypclnt .endif -.if !defined(NO_CDDL) && !defined(NO_DTRACE) +.if ${MK_CDDL} != "no" _prebuild_libs+= cddl/lib .endif ==== //depot/projects/dtrace/src/cddl/Makefile#6 (text+ko) ==== @@ -1,8 +1,10 @@ # $FreeBSD$ +.include + SUBDIR= -.if !defined(NO_CDDL) +.if ${MK_CDDL} != "no" SUBDIR+= lib usr.bin usr.sbin .endif ==== //depot/projects/dtrace/src/sys/modules/Makefile#12 (text+ko) ==== @@ -322,7 +322,7 @@ _pflog= pflog .endif -.if !defined(NO_CDDL) +.if ${MK_CDDL} != "no" _cyclic= cyclic _dtrace= dtrace .endif From owner-p4-projects@FreeBSD.ORG Wed Jul 12 04:02:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6E72016A4E0; Wed, 12 Jul 2006 04:02:17 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 48C1E16A4DA for ; Wed, 12 Jul 2006 04:02:17 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DB08043D49 for ; Wed, 12 Jul 2006 04:02:16 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C42Glv051064 for ; Wed, 12 Jul 2006 04:02:16 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C42Gcf051061 for perforce@freebsd.org; Wed, 12 Jul 2006 04:02:16 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 12 Jul 2006 04:02:16 GMT Message-Id: <200607120402.k6C42Gcf051061@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 101325 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 04:02:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=101325 Change 101325 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/12 04:01:15 - calls to bus_space_* functions do not need endian conversion - gcc will silently lose information without an explicit cast and will not give any warnings! Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#4 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#4 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#4 (text+ko) ==== @@ -1373,7 +1373,7 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout1\n"); return ETIMEDOUT; } - *data16++ = mpt_read(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; + *data16++ = (u_int16_t)mpt_read(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); /* Get Second Word */ @@ -1381,7 +1381,7 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout2\n"); return ETIMEDOUT; } - *data16++ = mpt_read(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; + *data16++ = (u_int16_t)mpt_read(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); /* @@ -1411,7 +1411,7 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout3\n"); return ETIMEDOUT; } - datum = mpt_read(mpt, MPT_OFFSET_DOORBELL); + datum = (u_int16_t)mpt_read(mpt, MPT_OFFSET_DOORBELL); if (reply_left-- > 0) *data16++ = datum & MPT_DB_DATA_MASK; ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#4 (text+ko) ==== @@ -825,13 +825,13 @@ static __inline void mpt_write(struct mpt_softc *mpt, size_t offset, uint32_t val) { - bus_space_write_4(mpt->pci_st, mpt->pci_sh, offset, htole32(val)); + bus_space_write_4(mpt->pci_st, mpt->pci_sh, offset, val); } static __inline uint32_t mpt_read(struct mpt_softc *mpt, int offset) { - return (le32toh(bus_space_read_4(mpt->pci_st, mpt->pci_sh, offset))); + return (bus_space_read_4(mpt->pci_st, mpt->pci_sh, offset)); } /* @@ -843,14 +843,14 @@ mpt_pio_write(struct mpt_softc *mpt, size_t offset, uint32_t val) { bus_space_write_4(mpt->pci_pio_st, mpt->pci_pio_sh, offset, - htole32(val)); + val); } static __inline uint32_t mpt_pio_read(struct mpt_softc *mpt, int offset) { - return (le32toh(bus_space_read_4(mpt->pci_pio_st, mpt->pci_pio_sh, - offset))); + return (bus_space_read_4(mpt->pci_pio_st, mpt->pci_pio_sh, + offset)); } /*********************** Reply Frame/Request Management ***********************/ /* Max MPT Reply we are willing to accept (must be power of 2) */ @@ -1010,7 +1010,7 @@ static __inline request_t * mpt_tag_2_req(struct mpt_softc *mpt, uint32_t tag) { - uint16_t rtg = (tag >> 18); + uint16_t rtg = (uint16_t)(tag >> 18); KASSERT(rtg < mpt->tgt_cmds_allocated, ("bad tag %d\n", tag)); KASSERT(mpt->tgt_cmd_ptrs, ("no cmd backpointer array")); KASSERT(mpt->tgt_cmd_ptrs[rtg], ("no cmd backpointer")); From owner-p4-projects@FreeBSD.ORG Wed Jul 12 04:39:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9CF9916A4E8; Wed, 12 Jul 2006 04:39:02 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 7BF9D16A4E6 for ; Wed, 12 Jul 2006 04:39:02 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D24543D49 for ; Wed, 12 Jul 2006 04:39:02 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C4d2ia054773 for ; Wed, 12 Jul 2006 04:39:02 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C4d111054769 for perforce@freebsd.org; Wed, 12 Jul 2006 04:39:01 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 12 Jul 2006 04:39:01 GMT Message-Id: <200607120439.k6C4d111054769@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 101327 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 04:39:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=101327 Change 101327 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/12 04:38:58 oops - explicit cast doesn't work - needs to be separate call to bus_space_read_2 still confused Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#5 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#5 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#5 (text+ko) ==== @@ -1373,7 +1373,7 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout1\n"); return ETIMEDOUT; } - *data16++ = (u_int16_t)mpt_read(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; + *data16++ = mpt_read_16(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); /* Get Second Word */ @@ -1381,7 +1381,7 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout2\n"); return ETIMEDOUT; } - *data16++ = (u_int16_t)mpt_read(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; + *data16++ = mpt_read_16(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); /* @@ -1411,7 +1411,7 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout3\n"); return ETIMEDOUT; } - datum = (u_int16_t)mpt_read(mpt, MPT_OFFSET_DOORBELL); + datum = mpt_read_16(mpt, MPT_OFFSET_DOORBELL); if (reply_left-- > 0) *data16++ = datum & MPT_DB_DATA_MASK; ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#5 (text+ko) ==== @@ -819,6 +819,7 @@ /******************************* Register Access ******************************/ static __inline void mpt_write(struct mpt_softc *, size_t, uint32_t); static __inline uint32_t mpt_read(struct mpt_softc *, int); +static __inline uint16_t mpt_read_16(struct mpt_softc *, int); static __inline void mpt_pio_write(struct mpt_softc *, size_t, uint32_t); static __inline uint32_t mpt_pio_read(struct mpt_softc *, int); @@ -834,6 +835,12 @@ return (bus_space_read_4(mpt->pci_st, mpt->pci_sh, offset)); } +static __inline uint16_t +mpt_read_16(struct mpt_softc *mpt, int offset) +{ + return (bus_space_read_2(mpt->pci_st, mpt->pci_sh, offset)); +} + /* * Some operations (e.g. diagnostic register writes while the ARM proccessor * is disabled), must be performed using "PCI pio" operations. On non-PCI From owner-p4-projects@FreeBSD.ORG Wed Jul 12 05:12:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F097A16A4E6; Wed, 12 Jul 2006 05:12:45 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A914516A4DD for ; Wed, 12 Jul 2006 05:12:45 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 608F843D45 for ; Wed, 12 Jul 2006 05:12:45 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C5CjJQ065202 for ; Wed, 12 Jul 2006 05:12:45 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C5CjRW065199 for perforce@freebsd.org; Wed, 12 Jul 2006 05:12:45 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 12 Jul 2006 05:12:45 GMT Message-Id: <200607120512.k6C5CjRW065199@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 101328 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 05:12:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=101328 Change 101328 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/12 05:12:28 this seems wrong, but gets us farther into init Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#6 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#6 (text+ko) ==== @@ -832,7 +832,7 @@ static __inline uint32_t mpt_read(struct mpt_softc *mpt, int offset) { - return (bus_space_read_4(mpt->pci_st, mpt->pci_sh, offset)); + return (bus_space_read_2(mpt->pci_st, mpt->pci_sh, offset)); } static __inline uint16_t From owner-p4-projects@FreeBSD.ORG Wed Jul 12 05:42:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AB7DD16A4E1; Wed, 12 Jul 2006 05:42:24 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8713716A4DD for ; Wed, 12 Jul 2006 05:42:24 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 509ED43D45 for ; Wed, 12 Jul 2006 05:42:24 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C5gO8A067205 for ; Wed, 12 Jul 2006 05:42:24 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C5gOhG067202 for perforce@freebsd.org; Wed, 12 Jul 2006 05:42:24 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 12 Jul 2006 05:42:24 GMT Message-Id: <200607120542.k6C5gOhG067202@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 101329 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 05:42:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=101329 Change 101329 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/12 05:41:27 revert mpt_read - fix select callers Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#6 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#7 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#6 (text+ko) ==== @@ -824,19 +824,19 @@ } /******************************* Doorbell Access ******************************/ -static __inline uint32_t mpt_rd_db(struct mpt_softc *mpt); -static __inline uint32_t mpt_rd_intr(struct mpt_softc *mpt); +static __inline uint16_t mpt_rd_db(struct mpt_softc *mpt); +static __inline uint16_t mpt_rd_intr(struct mpt_softc *mpt); -static __inline uint32_t +static __inline uint16_t mpt_rd_db(struct mpt_softc *mpt) { - return mpt_read(mpt, MPT_OFFSET_DOORBELL); + return mpt_read_16(mpt, MPT_OFFSET_DOORBELL); } -static __inline uint32_t +static __inline uint16_t mpt_rd_intr(struct mpt_softc *mpt) { - return mpt_read(mpt, MPT_OFFSET_INTR_STATUS); + return mpt_read_16(mpt, MPT_OFFSET_INTR_STATUS); } /* Busy wait for a door bell to be read by IOC */ @@ -1359,12 +1359,12 @@ mpt_recv_handshake_reply(struct mpt_softc *mpt, size_t reply_len, void *reply) { int left, reply_left; - u_int16_t *data16; + uint16_t *data16; MSG_DEFAULT_REPLY *hdr; /* We move things out in 16 bit chunks */ reply_len >>= 1; - data16 = (u_int16_t *)reply; + data16 = (uint16_t *)reply; hdr = (MSG_DEFAULT_REPLY *)reply; ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#7 (text+ko) ==== @@ -832,7 +832,7 @@ static __inline uint32_t mpt_read(struct mpt_softc *mpt, int offset) { - return (bus_space_read_2(mpt->pci_st, mpt->pci_sh, offset)); + return (bus_space_read_4(mpt->pci_st, mpt->pci_sh, offset)); } static __inline uint16_t From owner-p4-projects@FreeBSD.ORG Wed Jul 12 07:11:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 891B916A4E0; Wed, 12 Jul 2006 07:11:19 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 29F7C16A4DD for ; Wed, 12 Jul 2006 07:11:19 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E963F43D46 for ; Wed, 12 Jul 2006 07:11:18 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C7BIxR081690 for ; Wed, 12 Jul 2006 07:11:18 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C7BIkP081687 for perforce@freebsd.org; Wed, 12 Jul 2006 07:11:18 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 12 Jul 2006 07:11:18 GMT Message-Id: <200607120711.k6C7BIkP081687@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 101337 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 07:11:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=101337 Change 101337 by kmacy@kmacy_vt-x:dtrace on 2006/07/12 07:11:15 apply change 1.3 fixes segmentation fault in applications statically linked to libthr Affected files ... .. //depot/projects/dtrace/src/lib/libthr/sys/thr_error.c#3 edit Differences ... ==== //depot/projects/dtrace/src/lib/libthr/sys/thr_error.c#3 (text+ko) ==== @@ -45,10 +45,12 @@ int * __error(void) { - struct pthread *curthread = _get_curthread(); + struct pthread *curthread; - if (curthread != NULL && curthread != _thr_initial) - return (&curthread->error); - else + if (_thr_initial != NULL) { + curthread = _get_curthread(); + if (curthread != NULL && curthread != _thr_initial) + return (&curthread->error); + } else return (&errno); } From owner-p4-projects@FreeBSD.ORG Wed Jul 12 07:27:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 35CC716A4DD; Wed, 12 Jul 2006 07:27:40 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 E886816A4E5 for ; Wed, 12 Jul 2006 07:27:39 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 84E1243D53 for ; Wed, 12 Jul 2006 07:27:39 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C7RdGr088473 for ; Wed, 12 Jul 2006 07:27:39 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C7Rdbf088470 for perforce@freebsd.org; Wed, 12 Jul 2006 07:27:39 GMT (envelope-from clem1@FreeBSD.org) Date: Wed, 12 Jul 2006 07:27:39 GMT Message-Id: <200607120727.k6C7Rdbf088470@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Clément Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 101338 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 07:27:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101338 Change 101338 by clem1@clem1_ipv6vulns on 2006/07/12 07:27:19 Ndpwatch keeps track for ethernet/ipv6 address pairings. It syslogs activity and reports certain changes via email. Not fully tested but seems to work well. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/INSTALL#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/Makefile#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/Makefile.in#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/README#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/VERSION#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/aclocal.m4#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/addresses.h#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/configure#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/crc32.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/crc32.h#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/db.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/db.h#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/file.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/file.h#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/ndp.db#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/ndpwatch.8#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/ndpwatch.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/ndpwatch.h#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/report.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/report.h#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/util.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/util.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Jul 12 08:43:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AD68916A4E0; Wed, 12 Jul 2006 08:43:15 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 3B87B16A4E5 for ; Wed, 12 Jul 2006 08:43:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C947F43D45 for ; Wed, 12 Jul 2006 08:43:14 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C8hEj5096578 for ; Wed, 12 Jul 2006 08:43:14 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C8hDjI096557 for perforce@freebsd.org; Wed, 12 Jul 2006 08:43:13 GMT (envelope-from jb@freebsd.org) Date: Wed, 12 Jul 2006 08:43:13 GMT Message-Id: <200607120843.k6C8hDjI096557@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101340 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 08:43:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101340 Change 101340 by jb@jb_freebsd2 on 2006/07/12 08:42:34 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#14 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/pr-guidelines/article.sgml#2 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/developers-handbook/kerneldebug/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/geom/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#13 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/cperciva.key#1 branch .. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys-developers.sgml#8 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys.ent#8 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/sem.key#2 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/Makefile#2 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/articles/Makefile#3 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/articles/contributing/article.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/articles/cvs-freebsd/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_CN.GB2312/articles/cvs-freebsd/article.sgml#1 branch .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/arch-handbook/boot/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/arch-handbook/mac/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/books/porters-handbook/book.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/share/mk/doc.local.mk#4 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/share/sgml/authors.ent#4 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/share/sgml/freebsd.dsl#2 integrate .. //depot/projects/dtrace/doc/zh_CN.GB2312/share/sgml/mailing-lists.ent#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/Makefile#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/Makefile#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/contributing/article.sgml#2 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/freebsd-questions/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/freebsd-questions/article.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/nanobsd/Makefile#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/articles/nanobsd/article.sgml#1 branch .. //depot/projects/dtrace/doc/zh_TW.Big5/books/faq/book.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/config/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/disks/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/eresources/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/install/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/introduction/chapter.sgml#4 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/porters-handbook/book.sgml#4 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/Makefile#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/authors.ent#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapter.decl#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters.ent#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/ack.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/charmap.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/compose.sgml#3 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/converter.sgml#3 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/devel.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/dict.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/difficult.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/faq.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/fonts.sgml#3 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/l10n.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/mailclient.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/message.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/multimedia.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/net.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/note#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/other.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/outta.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/preface.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/print.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/software.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/stepbystep.sgml#3 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/view.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/wm.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/chapters/xwin.sgml#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/freebsd.dsl#3 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/20020527-2.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/20020527.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/Eterm.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/IglooFTP.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/abiword.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/acroread.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/applet.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/arphicttf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/aterm.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/bbsnet.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/bg5pdf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/bg5ps.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/big5con.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/bluefish.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/cccii.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/cce.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/cid-gv.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/cjk-lyx.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/cjk.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/cwtexttf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/cxterm.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/dict.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/dvipdfmx.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/edict-big5.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/fortunetw.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/fzzdxfw.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/gaim.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/gnuls.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/hanzim.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/hztty.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/image#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/irssi.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/joe.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/kde-print.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/kfont_3_1.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/kmerlin.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/konq_3_1.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/konq_3_2.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/konq_3_3.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/konq_3_4.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/konqueror.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/konsole.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/ldap.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/licq.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/lynx.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/man.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/mlterm.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/moefonts-cid.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/moettf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/mozilla.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/mplayer.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/mutt.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/nautilus.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/ncftp3.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/ntfs.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/ntuttf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/openoffice.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/oxford.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/php-imagettftext.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/php-pdf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/pydict.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/qe.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/qkmj.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/qterm.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/rxvt.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/showttf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/stardict.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/stardict2.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/swing.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/sylpheed.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/tcltk.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/tcsh.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/tin.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/tintin++.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/ttf2pt1.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/ve.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/vim.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/vnc.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/wangttf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/windowmaker.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/xchat.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/xcin25.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/xmms.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/xpdf.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/images/zhcon.png#2 delete .. //depot/projects/dtrace/doc/zh_TW.Big5/books/zh-tut/zh-tut.sgml#2 delete .. //depot/projects/dtrace/ports/MOVED#4 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/processonelog#3 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/showrunning#1 branch .. //depot/projects/dtrace/ports/UPDATING#4 integrate .. //depot/projects/dtrace/www/de/index.xsl#6 integrate .. //depot/projects/dtrace/www/de/news/news.xml#9 integrate .. //depot/projects/dtrace/www/de/news/press.xml#7 integrate .. //depot/projects/dtrace/www/en/Makefile#3 integrate .. //depot/projects/dtrace/www/en/doc/Makefile#2 integrate .. //depot/projects/dtrace/www/en/news/news.xml#13 integrate .. //depot/projects/dtrace/www/en/news/status/Makefile#3 integrate .. //depot/projects/dtrace/www/en/news/status/report-apr-2006-jun-2006.xml#1 branch .. //depot/projects/dtrace/www/en/news/status/status.sgml#3 integrate .. //depot/projects/dtrace/www/en/projects/ideas/index.sgml#9 integrate .. //depot/projects/dtrace/www/share/mk/doc.xml.mk#2 integrate .. //depot/projects/dtrace/www/zh/FAQ/Makefile#2 delete .. //depot/projects/dtrace/www/zh/Makefile#2 delete .. //depot/projects/dtrace/www/zh/Makefile.inc#2 delete .. //depot/projects/dtrace/www/zh_CN/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/Makefile.inc#1 branch .. //depot/projects/dtrace/www/zh_CN/about.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/advocacy/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/advocacy/index.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/advocacy/letter.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/advocacy/myths.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/applications.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/art.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/availability.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/community.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/copyright/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/copyright/copyright.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/copyright/daemon.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/copyright/freebsd-doc-license.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/copyright/freebsd-license.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/copyright/license.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/copyright/trademarks.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/developers.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/doc/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/docs.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/features.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.navabout.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.navcommunity.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.navdevelopers.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.navdocs.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.navdownload.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.navports.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.navsupport.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/includes.xsl#1 branch .. //depot/projects/dtrace/www/zh_CN/index.xsl#1 branch .. //depot/projects/dtrace/www/zh_CN/internet.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/Makefile.inc#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/fixed.css#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/fixed_large.css#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/global.css#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/iefixes.css#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/layout.css#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/navigation.css#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/table.css#1 branch .. //depot/projects/dtrace/www/zh_CN/layout/css/text.css#1 branch .. //depot/projects/dtrace/www/zh_CN/logo.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/mailto.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/news/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/news/Makefile.inc#1 branch .. //depot/projects/dtrace/www/zh_CN/news/includes.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/news/includes.xsl#1 branch .. //depot/projects/dtrace/www/zh_CN/news/news-rdf.xsl#1 branch .. //depot/projects/dtrace/www/zh_CN/news/news.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/news/news.xml#1 branch .. //depot/projects/dtrace/www/zh_CN/news/newsflash.xsl#1 branch .. //depot/projects/dtrace/www/zh_CN/news/press.xml#1 branch .. //depot/projects/dtrace/www/zh_CN/news/press.xsl#1 branch .. //depot/projects/dtrace/www/zh_CN/news/pressreleases.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/platforms/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/platforms/Makefile.inc#1 branch .. //depot/projects/dtrace/www/zh_CN/platforms/alpha.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/platforms/amd64.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/platforms/arm.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/platforms/i386.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/platforms/index.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/docbook.css#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/errata.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/hardware-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/hardware-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/hardware.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/installation-alpha.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/installation-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/installation-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/installation-ia64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/installation-pc98.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/installation-sparc64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/installation.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/migration-guide.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/readme.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/relnotes-alpha.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/relnotes-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/relnotes-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/relnotes-ia64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/relnotes-pc98.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/relnotes-sparc64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.4R/relnotes.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/docbook.css#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/errata.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/hardware-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/hardware-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/hardware.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/installation-alpha.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/installation-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/installation-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/installation-ia64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/installation-pc98.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/installation-sparc64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/installation.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/readme.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/relnotes-alpha.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/relnotes-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/relnotes-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/relnotes-ia64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/relnotes-pc98.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/relnotes-sparc64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/5.5R/relnotes.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/docbook.css#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/errata.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/hardware-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/hardware-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/hardware.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/installation-alpha.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/installation-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/installation-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/installation-ia64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/installation-pc98.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/installation-sparc64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/installation.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/readme.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/relnotes-alpha.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/relnotes-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/relnotes-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/relnotes-ia64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/relnotes-pc98.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/relnotes-sparc64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.0R/relnotes.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/docbook.css#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/errata.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/hardware-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/hardware-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/hardware.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/installation-alpha.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/installation-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/installation-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/installation-ia64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/installation-pc98.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/installation-sparc64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/installation.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/readme.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/relnotes-alpha.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/relnotes-amd64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/relnotes-i386.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/relnotes-ia64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/relnotes-pc98.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/relnotes-sparc64.html#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/6.1R/relnotes.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/Makefile.inc#1 branch .. //depot/projects/dtrace/www/zh_CN/releases/index.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/relnotes.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/security/Makefile#1 branch .. //depot/projects/dtrace/www/zh_CN/security/charter.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/security/mkindex.xsl#1 branch .. //depot/projects/dtrace/www/zh_CN/security/security-rdf.xsl#1 branch .. //depot/projects/dtrace/www/zh_CN/security/security.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/send-pr.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/support.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/where.sgml#1 branch .. //depot/projects/dtrace/www/zh_CN/y2kbug.sgml#1 branch .. //depot/projects/dtrace/www/zh_TW/Makefile#1 branch .. //depot/projects/dtrace/www/zh_TW/Makefile.inc#1 branch .. //depot/projects/dtrace/www/zh_TW/doc/Makefile#1 branch Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#14 (text+ko) ==== @@ -1,4 +1,4 @@ - + @@ -483,7 +483,7 @@ On-Line Kernel Debugging Using DDB - While gdb as an off-line debugger provides a very + While kgdb as an off-line debugger provides a very high level of user interface, there are some things it cannot do. The most important ones being breakpointing and single-stepping kernel code. @@ -498,6 +498,7 @@ To configure your kernel to include DDB, add the option line options DDB + options KDB to your config file, and rebuild. (See The FreeBSD Handbook for details on @@ -513,14 +514,16 @@ DDB. The first, and earliest way is to type the boot flag right at the boot prompt. The kernel will start up in debug mode and enter DDB prior to any device probing. Hence you can - even debug the device probe/attach functions. + even debug the device probe/attach functions. Users of &os.current; + will need to use the boot menu option, six, to escape to a command + prompt. The second scenario is to drop to the debugger once the system has booted. There are two simple ways to accomplish this. If you would like to break to the debugger from the command prompt, simply type the command: - &prompt.root; sysctl debug.enter_debugger=ddb + &prompt.root; sysctl debug.debugger_on_panic=1 Alternatively, if you are at the system console, you may use a hot-key on the keyboard. The default break-to-debugger @@ -539,12 +542,17 @@ kernel is configured to use it. For this reason, it is not wise to configure a kernel with DDB for a machine running unattended. + To obtain the unattended funcationality, add: + + options KDB_UNATTENDED + + to the kernel configuration file and rebuild/reinstall. + The DDB commands roughly resemble some gdb commands. The first thing you probably need to do is to set a breakpoint: - b function-name -b address + break function-name address Numbers are taken hexadecimal by default, but to make them distinct from symbol names; hexadecimal numbers starting with the letters @@ -552,10 +560,16 @@ (this is optional for other numbers). Simple expressions are allowed, for example: function-name + 0x103. - To continue the operation of an interrupted kernel, simply + To continue the dump of an interrupted kernel into memory, type: - c + continue + + + This will cause the machine to dump core and reboot without + syncing data to the disk. Upon re-initialization of the system, + a &man.fsck.8; will be required. + To get a stack trace, use: @@ -569,7 +583,6 @@ If you want to remove a breakpoint, use - del del address-expression @@ -580,6 +593,10 @@ show b + or: + + show break + To single-step the kernel, try: s @@ -592,7 +609,8 @@ This is different from gdb's next statement; it is like gdb's - finish. + finish. Pressing n more than once + will cause a continue. To examine data from memory, use (for example): @@ -659,16 +677,18 @@ panic This will cause your kernel to dump core and reboot, so you can - later analyze the core on a higher level with gdb. This command + later analyze the core on a higher level with gdb. + This command usually must be followed by another continue statement. call boot(0) - Which might be a good way to cleanly shut down the running system, - sync() all disks, and finally reboot. As long as + Might be a good way to cleanly shut down the running system, + sync() all disks, and finally, in some cases, + reboot. As long as the disk and filesystem interfaces of the kernel are not damaged, this - might be a good way for an almost clean shutdown. + could be a good way for an almost clean shutdown. call cpu_reset() @@ -679,7 +699,7 @@ help - However, it is highly recommended to have a printed copy of the + It is highly recommended to have a printed copy of the &man.ddb.4; manual page ready for a debugging session. Remember that it is hard to read the on-line manual while single-stepping the kernel. @@ -711,7 +731,7 @@ Now, on the debugging machine, go to the compile directory of the target kernel, and start gdb: - &prompt.user; gdb -k kernel + &prompt.user; kgdb kernel GDB is free software and you are welcome to distribute copies of it under certain conditions; type "show copying" to see the conditions. There is absolutely no warranty for GDB; type "show warranty" for details. @@ -865,4 +885,3 @@ sgml-parent-document: ("../book.sgml" "part" "chapter") End: --> - ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/geom/chapter.sgml#2 (text+ko) ==== @@ -1,6 +1,6 @@ @@ -406,6 +406,52 @@ + + + GEOM Gate Network Devices + + GEOM supports the remote use of devices, such as disks, + CD-ROMs, files, etc. through the use of the gate utilities. + This is similar to NFS. + + To begin, an exports file must be created. This file + specifies who is permitted to access the exported resources and + what level of access they are offered. For example, to export + the forth slice on the first SCSI disk, the + following /etc/gg.exports is more than + adequate: + + 192.168.1.0/24 RW /dev/da0s4d + + It will allow all hosts inside the private network access + the file system on the da0s4d + partition. + + To export this device, ensure it is not currently mounted, + and start the &man.ggated.8; server daemon: + + &prompt.root; ggated + + Now to mount the device on the client + machine, issue the following commands: + + &prompt.root; ggatec create -o rw 192.168.1.1 /dev/da0s4d + ggate0 + &prompt.root; mount /dev/ggate0 /mnt + + From here on, the device may be accessed through the + /mnt mount point. + + + It should be pointed out that this will fail if the device + is currently mounted on either the server machine or any other + machine on the network. + + + When the device is no longer needed, it may be safely + unmounted with the &man.umount.8; command, similar to any other + disk device. + 601101 + 6.1-STABLE after the iwi(4) update. + 601102 + + 7.0-CURRENT. 700000 ==== //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys-developers.sgml#8 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -704,6 +704,11 @@ &pgpkey.den; + + &a.cperciva; + &pgpkey.cperciva; + + &a.gerald; &pgpkey.gerald; ==== //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys.ent#8 (text+ko) ==== @@ -1,5 +1,5 @@ - + @@ -43,6 +43,7 @@ + ==== //depot/projects/dtrace/doc/share/pgpkeys/sem.key#2 (text+ko) ==== @@ -1,4 +1,4 @@ - + @@ -22,54 +22,69 @@ JO/hA/9DRRdTRDz1B5ttKJ0NQBfsUOFwwBAPTtoFDao5qJjz5QhVGlxybaLMwcRo i3/5qPH8tCiQr8e7RlKGOccoROr6zvEgLERKCCtALVNPfZUA0avH8ORZz7KUopTv 8gaVOf6zSuxDlbndAhngU+RBh+EukzTZAsQrFDsVVC6irWm+nrQfU2VyZ2V5IE1h -dHZleWNodWsgPHNlbUBjaWFtLnJ1PohbBBARAgAbBgsJCAcDAgMVAgMDFgIBAh4B -AheABQJDpoPmAAoJEE3JS9i3H2BdAfkAn2wNyDpu0mSzknbTiwn0ZtULGUzdAJ0Y -TvvLi0fJwMKpSVRk9M92RxDep4hOBBARAgAOBQI4BHp2BAsDAgECGQEACgkQTclL -2LcfYF2V4wCgs6iNj80EURVpSOb3leFPseS3O5YAniDjZ6VdVSQpApChhyr6ZE62 -dvhsiGAEEBECACACGQEFAkOdva8GCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRBN -yUvYtx9gXbGoAJ43BoumqoQ81++phkEks4RPaLPP1gCeKAAPduXhwr81Ce9Crszn -f7q+igWIRgQQEQIABgUCQ6P9ygAKCRBCsZN8yFUPTCKDAKCn2JmMO3KxS0AJnN7n -xVE6OXqvXwCgmJHaucS9wdAOwG/c8lETlcKYEEqIXQQQEQIAHQYLCQgHAwIEFQII -AwQWAgMBAh4BAheABQJDnwmvAAoJEE3JS9i3H2Bd7AEAoNbZ5MAo8199GFZ112t4 -5vGJbH+IAJ9m9FvHSP2P9bl60g7tbs/yWEQzbohGBBARAgAGBQJDoaY2AAoJEERt +dHZleWNodWsgPHNlbUBjaWFtLnJ1PohdBBARAgAdBgsJCAcDAgQVAggDBBYCAwEC +HgECF4AFAkOfCa8ACgkQTclL2LcfYF3sAQCg1tnkwCjzX30YVnXXa3jm8Ylsf4gA +n2b0W8dI/Y/1uXrSDu1uz/JYRDNuiEYEEBECAAYFAkOj/coACgkQQrGTfMhVD0wi +gwCgp9iZjDtysUtACZze58VROjl6r18AoJiR2rnEvcHQDsBv3PJRE5XCmBBKiE4E +EBECAA4FAjgEenYECwMCAQIZAQAKCRBNyUvYtx9gXZXjAKCzqI2PzQRRFWlI5veV +4U+x5Lc7lgCeIONnpV1VJCkCkKGHKvpkTrZ2+GyIYAQQEQIAIAIZAQUCQ529rwYL +CQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEE3JS9i3H2BdsagAnjcGi6aqhDzX76mG +QSSzhE9os8/WAJ4oAA925eHCvzUJ70KuzOd/ur6KBYhbBBARAgAbBgsJCAcDAgMV +AgMDFgIBAh4BAheABQJDpoPmAAoJEE3JS9i3H2BdAfkAn2wNyDpu0mSzknbTiwn0 +ZtULGUzdAJ0YTvvLi0fJwMKpSVRk9M92RxDep4hGBBARAgAGBQJDoaY2AAoJEERt DDCMkWQoLHQAnjPyol0c+TwTcwmKmhx9m2q11hmjAKDEnF/ZMvEK0DA+tz7bcIQd -1ZpoU7QjU2VyZ2V5IE1hdHZleWNodWsgPHNlbUBGcmVlQlNELm9yZz6IYQQTEQIA -IQIbIwIeAQIXgAIZAQUCQ6K3EwYLCQgHAwIDFQIDAxYCAQAKCRBNyUvYtx9gXftK -AJ95Qiq5aPWFS9UnIb4w19TPIq7OKgCg1o3+/16rNohsn74a1zlK+JkIJSeIYAQT -EQIAIAUCQ53BigIbIwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEE3JS9i3H2Bd -n80AoL0jZxK9VCsTsgWsFJq13HAwfMxQAJ4vz6qSq1Z1+EQmlIkVyWdfDq1bmYhG -BBARAgAGBQJDo76VAAoJEK8i3O94zhBfjWAAnjVA1C+5ByEy7fCmhFuUXZQ0PPDg -AJ9lgnZenry/z2BtKySb6YvzzaYc84hGBBARAgAGBQJDo+NlAAoJEIXUUEVraRsD -gAcAoJ2MgKrFa3S1Ou715d9FIUfdykgtAJ0TQpLNS2sUpUUP9BVAogWKHqzwyohG -BBARAgAGBQJDo+2fAAoJEF3k1/4ZSdyAp3cAnjcA6C3Wf7kDwJmVlO8PceC7xrDB -AJ9P7VO+T55OYbcd2ioBzWa24AvDIIhGBBARAgAGBQJDo/26AAoJEEKxk3zIVQ9M -eZEAoKJ9zqVgvWgyU4qM7xk4gxOcOYS0AKCatouMmgupEU+NQd2jn41ypEi44Ihj +1ZpoU4hGBBARAgAGBQJEovYVAAoJEKkX6cyZbhRegKwAniqOkIAm+pPxZeaqLM8w +Fae7PtPHAJ9/Cv+mMbOuukx4D9pBtFTUgyQZjYhGBBARAgAGBQJEowRwAAoJEGwD +cmOt/VyaB/wAn12/XGsruhluMLWeGcZ8P8/w0KZkAJ4+SfQ9/kPGZy9bMdvf/Kow +ZW58aIkBIgQQAQIADAUCQ7BQKQUDABJ1AAAKCRCXELibyletfHV5CACOuLT1gjq2 +g4Tm7hMbGpC9NnK78HWHZr65dr25WlVekwapDmvO75kixqhwZ3hrDRfDtQsUrrCa +0n2zS6jbGWWkFUVjEHZaKZjLF8HbLJbU/J7AHx2im9RUVx+eD8VI0T8iNvW2ODo4 +bL2CqEYz7k9lUGXi3RZm31Y13dOislyEA5dO4lqh56tXynYFa963xGOXgulHX+vz +SCbltc5mQt6uZ+bKmUsl/ffA3bzZ/aM/DInD5RKuU024eibxOQ0QUPlHq6tF60Uv +xEofeYRdZo+hdyOvmRlpkFJvcpBSZ0U7f/r7IwwqMDKTImbee5DtxgbKLJNR6IG9 +INvjWLHdxoMPtCNTZXJnZXkgTWF0dmV5Y2h1ayA8c2VtQEZyZWVCU0Qub3JnPohj BBMRAgAjAhsjBgsJCAcDAgQVAggDBBYCAwECHgECF4AFAkOfCbgCGQEACgkQTclL 2LcfYF3TtwCeMK4gZteXRp5TTj+wc1mZIinw8RIAoJbG8NI+Sz70Pd6Cs1TEnj/C -BXA3iEYEEBECAAYFAkOhpjoACgkQRG0MMIyRZCjm2wCdGcFt8QRBhbGXxbRgb3jU -Iy81EQ4An0SKnaVLT5XBy1nNp/GFMehaRWljiEYEEBECAAYFAkOme88ACgkQRInQ -7WebgRkEAQCdFWT5TaGrWkbkHc1C1F8nPoknz3sAn1GWHLwDqWkNc/nie/x9dc5m -dpkqtCRTZXJnZXkgTWF0dmV5Y2h1ayA8c2VtQGNvcmUuaW5lYy5ydT6IXgQTEQIA -HgIbIwIeAQIXgAUCQ6K3HQYLCQgHAwIDFQIDAxYCAQAKCRBNyUvYtx9gXYdiAJ0Y -uz22Np1LxJqZzYYYxEB4//pHZQCgtWH3ZQzuDaj1cUg5NWs+to7ALT+IYAQTEQIA -IAUCQ53BvQIbIwYLCQgHAwIEFQIIAwQWAgMBAh4BAheAAAoJEE3JS9i3H2BdQHQA -mwTEvNPWgV/elFRafHKseEQIO+W0AKCgbwghAWN4Sdim617vk3xnDRnwrYhGBBAR -AgAGBQJDo/3KAAoJEEKxk3zIVQ9MBsYAoK2QPpsvDAxoGkRee65z+tCKnqETAKCu -VG62LVy9t2qPDupvUuRBuoPqVohGBBARAgAGBQJDoaY6AAoJEERtDDCMkWQo/JwA -n2yzNuDuD/4f1dwNAX5NrHvODOuOAKCKhSGRq+k/wU5EY7TjSclZigIPObkCDQQ4 -BHp2EAgA9kJXtwh/CBdyorrWqULzBej5UxE5T7bxbrlLOCDaAadWoxTpj0BV89AH -xstDqZSt90xkhkn4DIO9ZekX1KHTUPj1WV/cdlJPPT2N286Z4VeSWc39uK50T8X8 -dryDxUcwYc58yWb/Ffm7/ZFexwGq01uejaClcjrUGvC/RgBYK+X0iP1YTknbzSC0 -neSRBzZrM2w4DUUdD3yIsxx8Wy2O9vPJI8BD8KVbGI2Ou1WMuF040zT9fBdXQ6Md -GGzeMyEstSr/POGxKUAYEY18hKcKctaGxAMZyAcpesqVDNmWn6vQClCbAkbTCD1m -pF1Bn5x8vYlLIhkmuquiXsNV6TILOwACAggAnsLGX8ZPERtjpQOV8Ltqr7U6uncg -urD0EAWSWj63fWTguMYepmPMpsm5B0oxtLFG8/fJfVmhRxohL+d5x0CCXIThdKQR -oSLlT1AAfTo91uMZN8TsOD0/DGFm4xMTC8FLjVQ0AlngfOBi8ZkSbJQzK2Rb/v9/ -SeK3lV3WOh/2yxpJ1rPRpdOofHbC/EnPjwY9mH43/gQXWigpduicNra1Zsgi5Zuk -GPOL3jaA6bCvoU+iAAIuYdvWyE2Bolk9zCxZqZQ0/oLamiYnwgRodFYFJOJp1oS9 -Y7BBa6qBKczpAlhMC8GL63QjBJXPNHO45PKVXiYmRhYGkXJMoxnmnF3tlYhGBBgR -AgAGBQI4BHp2AAoJEE3JS9i3H2Bds+IAni1/nG0dMcvwe79sBWTwAVR1nfwmAJ9e -KKVA1Ao8V13d765MMzQiK2EOYg== -=GxVF +BXA3iEYEEBECAAYFAkOjvpUACgkQryLc73jOEF+NYACeNUDUL7kHITLt8KaEW5Rd +lDQ88OAAn2WCdl6evL/PYG0rJJvpi/PNphzziEYEEBECAAYFAkOj42UACgkQhdRQ +RWtpGwOABwCgnYyAqsVrdLU67vXl30UhR93KSC0AnRNCks1LaxSlRQ/0FUCiBYoe +rPDKiEYEEBECAAYFAkOj7Z8ACgkQXeTX/hlJ3ICndwCeNwDoLdZ/uQPAmZWU7w9x +4LvGsMEAn0/tU75Pnk5htx3aKgHNZrbgC8MgiEYEEBECAAYFAkOj/boACgkQQrGT +fMhVD0x5kQCgon3OpWC9aDJTiozvGTiDE5w5hLQAoJq2i4yaC6kRT41B3aOfjXKk +SLjgiGAEExECACAFAkOdwYoCGyMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRBN +yUvYtx9gXZ/NAKC9I2cSvVQrE7IFrBSatdxwMHzMUACeL8+qkqtWdfhEJpSJFcln +Xw6tW5mIYQQTEQIAIQIbIwIeAQIXgAIZAQUCQ6K3EwYLCQgHAwIDFQIDAxYCAQAK +CRBNyUvYtx9gXftKAJ95Qiq5aPWFS9UnIb4w19TPIq7OKgCg1o3+/16rNohsn74a +1zlK+JkIJSeIRgQQEQIABgUCQ6GmOgAKCRBEbQwwjJFkKObbAJ0ZwW3xBEGFsZfF +tGBveNQjLzURDgCfRIqdpUtPlcHLWc2n8YUx6FpFaWOIRgQQEQIABgUCQ6Z7zwAK +CRBEidDtZ5uBGQQBAJ0VZPlNoataRuQdzULUXyc+iSfPewCfUZYcvAOpaQ1z+eJ7 +/H11zmZ2mSqIRgQQEQIABgUCRKL2EgAKCRCpF+nMmW4UXv5NAJ0XVv2BGFs9zhJW +jdD3xbkZcG/YSACggDGixZ0HT9+FAC3qnJzxYjER0U+IRgQQEQIABgUCRKMEZgAK +CRBsA3Jjrf1cmmk3AKCRv6qI+NOMGiKIj3c7RzN/UC55ZgCfaNfE8Eeym+wUJGH8 +a5lMOEBDfHO0JFNlcmdleSBNYXR2ZXljaHVrIDxzZW1AY29yZS5pbmVjLnJ1Pohg +BBMRAgAgBQJDncG9AhsjBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQTclL2Lcf +YF1AdACbBMS809aBX96UVFp8cqx4RAg75bQAoKBvCCEBY3hJ2KbrXu+TfGcNGfCt +iEYEEBECAAYFAkOj/coACgkQQrGTfMhVD0wGxgCgrZA+my8MDGgaRF57rnP60Iqe +oRMAoK5UbrYtXL23ao8O6m9S5EG6g+pWiF4EExECAB4CGyMCHgECF4AFAkOitx0G +CwkIBwMCAxUCAwMWAgEACgkQTclL2LcfYF2HYgCdGLs9tjadS8Samc2GGMRAeP/6 +R2UAoLVh92UM7g2o9XFIOTVrPraOwC0/iEYEEBECAAYFAkOhpjoACgkQRG0MMIyR +ZCj8nACfbLM24O4P/h/V3A0Bfk2se84M644AoIqFIZGr6T/BTkRjtONJyVmKAg85 +iEYEEBECAAYFAkSi9hYACgkQqRfpzJluFF7rFgCdGsz/KQy4veazVW+VDfstOdRd +3R0AoJmXvEXiXHyqWEKNxQ+CKBQsJdDCiEYEEBECAAYFAkSjBHAACgkQbANyY639 +XJpCxQCcCFudoNU7Fztnkavjsli0Dsu8ptYAn0qgc7RJVmWV8sW2+ypTK+l4VWkr +uQINBDgEenYQCAD2Qle3CH8IF3KiutapQvMF6PlTETlPtvFuuUs4INoBp1ajFOmP +QFXz0AfGy0OplK33TGSGSfgMg71l6RfUodNQ+PVZX9x2Uk89PY3bzpnhV5JZzf24 +rnRPxfx2vIPFRzBhznzJZv8V+bv9kV7HAarTW56NoKVyOtQa8L9GAFgr5fSI/VhO +SdvNILSd5JEHNmszbDgNRR0PfIizHHxbLY7288kjwEPwpVsYjY67VYy4XTjTNP18 +F1dDox0YbN4zISy1Kv884bEpQBgRjXyEpwpy1obEAxnIByl6ypUM2Zafq9AKUJsC +RtMIPWakXUGfnHy9iUsiGSa6q6Jew1XpMgs7AAICCACewsZfxk8RG2OlA5Xwu2qv +tTq6dyC6sPQQBZJaPrd9ZOC4xh6mY8ymybkHSjG0sUbz98l9WaFHGiEv53nHQIJc +hOF0pBGhIuVPUAB9Oj3W4xk3xOw4PT8MYWbjExMLwUuNVDQCWeB84GLxmRJslDMr +ZFv+/39J4reVXdY6H/bLGknWs9Gl06h8dsL8Sc+PBj2Yfjf+BBdaKCl26Jw2trVm +yCLlm6QY84veNoDpsK+hT6IAAi5h29bITYGiWT3MLFmplDT+gtqaJifCBGh0VgUk +4mnWhL1jsEFrqoEpzOkCWEwLwYvrdCMElc80c7jk8pVeJiZGFgaRckyjGeacXe2V +iEYEGBECAAYFAjgEenYACgkQTclL2LcfYF2z4gCeLX+cbR0xy/B7v2wFZPABVHWd +/CYAn14opUDUCjxXXd3vrkwzNCIrYQ5i +=iDu9 -----END PGP PUBLIC KEY BLOCK----- ]]> ==== //depot/projects/dtrace/doc/zh_CN.GB2312/Makefile#2 (text+ko) ==== @@ -1,10 +1,10 @@ # Original Revision: 1.7 -# $FreeBSD: doc/zh_CN.GB2312/Makefile,v 1.2 2005/03/20 15:31:58 delphij Exp $ +# $FreeBSD: doc/zh_CN.GB2312/Makefile,v 1.3 2006/07/11 13:18:56 hrs Exp $ SUBDIR = articles SUBDIR+= books -#COMPAT_SYMLINK = zh_CN +COMPAT_SYMLINK= zh_CN DOC_PREFIX?= ${.CURDIR}/.. .include "${DOC_PREFIX}/share/mk/doc.project.mk" ==== //depot/projects/dtrace/doc/zh_CN.GB2312/articles/Makefile#3 (text+ko) ==== @@ -2,10 +2,11 @@ # The FreeBSD Simplified Chinese Project # Original Revision: 1.52 # -# $FreeBSD: doc/zh_CN.GB2312/articles/Makefile,v 1.3 2006/06/03 15:03:15 delphij Exp $ +# $FreeBSD: doc/zh_CN.GB2312/articles/Makefile,v 1.4 2006/07/09 05:02:22 delphij Exp $ SUBDIR = SUBDIR+= contributing +SUBDIR+= cvs-freebsd SUBDIR+= nanobsd DOC_PREFIX?= ${.CURDIR}/../.. ==== //depot/projects/dtrace/doc/zh_CN.GB2312/articles/contributing/article.sgml#3 (text+ko) ==== @@ -14,7 +14,7 @@ Ϊ FreeBSD Ìṩ°ïÖú - $FreeBSD: doc/zh_CN.GB2312/articles/contributing/article.sgml,v 1.4 2006/06/03 14:58:42 delphij Exp $ + $FreeBSD: doc/zh_CN.GB2312/articles/contributing/article.sgml,v 1.5 2006/07/09 04:52:05 delphij Exp $ ÎÞÂÛÊÇ×÷Ϊ¸öÈË»¹ÊÇ×éÖ¯»ú¹¹£¬Èç¹ûÄúÏ£ÍûΪFreeBSDÏîÄ¿Ìṩ°ïÖú£¬ @@ -39,7 +39,7 @@ ¹±Ï× - ÄãÏ£Íû¸ø FreeBSD ÏîÄ¿×öµãʲôÂ𣿠̫ºÃÁË£¬ ÎÒÃÇ»¶Ó­Äã¡£ FreeBSD ÕýÊÇ + ÄúÏ£Íû¸ø FreeBSD ÏîÄ¿×öµãʲôÂ𣿠̫ºÃÁË£¬ ÎÒÃÇ»¶Ó­Äú¡£ FreeBSD ÕýÊÇ ÒÀ¿¿ ¹ã´óÓû§µÄ¹±ÏײŵÃÒÔ·¢Õ¹×³´óµÄ¡£ ÎÒÃDz»½ö·Ç³£¸ÐлÄúËù×öµÄ¹±Ï×£¬¶øÇÒ£¬ÕâЩ¹¤×÷¶ÔÓÚ FreeBSD µÄ³ÖÐø·¢Õ¹Ò²ÖÁ¹ØÖØÒª¡£ @@ -88,9 +88,9 @@ - °ïÖúÎÒÃÇ°Ñ FreeBSD Îĵµ·­Òë³ÉÄãµÄĸÓï¡£ - Èç¹ûÄãµÄĸÓï°æ±¾ÒѾ­´æÔÚÁË£¬ - ÄãÒ²¿ÉÒÔ·­ÒëһЩ¶îÍâµÄÎĵµ»òÕß¼ì²éÄÇЩÒÑÓеÄÎĵµÊÇ·ñÊÇ×îиüйýµÄ¡£ + °ïÖúÎÒÃÇ°Ñ FreeBSD Îĵµ·­Òë³ÉÄúµÄĸÓï¡£ + Èç¹ûÄúµÄĸÓï°æ±¾ÒѾ­´æÔÚÁË£¬ + ÄúÒ²¿ÉÒÔ·­ÒëһЩÆäËûµÄÎĵµ»òÕß¼ì²éÄÇЩÒÑÓеÄÎĵµÊÇ·ñÊÇ×îиüйýµÄ¡£ Äú¿ÉÒÔÏȼòµ¥¿´¿´ FreeBSD Îĵµ¼Æ»®ÖÐÓÐ¹Ø ·­ÒëµÄ³£¼ûÎÊÌâ¡£ ²Î¼Ó·­Ò빤×÷²¢²»ÊÇ˵ÄúÒª¹Â¾ü·ÜÕ½·­ÒëËùÓÐµÄ FreeBSD Îĵµ¡£ ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/arch-handbook/boot/chapter.sgml#2 (text+ko) ==== @@ -2,10 +2,11 @@ The FreeBSD Documentation Project The FreeBSD Simplified Chinese Project -Original Revision: 1.25 -$FreeBSD: doc/zh_CN.GB2312/books/arch-handbook/boot/chapter.sgml,v 1.1 2006/03/15 19:54:48 delphij Exp $ +Original Revision: 1.26 + Copyright (c) 2002 Sergey Lyubka All rights reserved +$FreeBSD: doc/zh_CN.GB2312/books/arch-handbook/boot/chapter.sgml,v 1.2 2006/07/09 04:34:43 delphij Exp $ --> @@ -614,9 +615,9 @@ Sysctlkern.hzÊÇϵͳʱÖÓƵÂÊ¡£Í¬Ê±£¬ ÕâЩsysctlÏî±»init_param1()É趨: - kern.maxswzone, kern.maxbcache, kern.maxtsiz, - kern.dfldsiz, kern.dflssiz, kern.maxssiz, - kern.sgrowsiz¡£ + kern.maxswzone, + kern.maxbcache, kern.maxtsiz, kern.dfldsiz, kern.maxdsiz, kern.dflssiz, + kern.maxssiz, kern.sgrowsiz¡£ Global Descriptors Table (GDT)(È«¾ÖÃèÊö·û±í) È»ºóinit386() ×¼±¸È«¾ÖÃèÊö·û±í ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/arch-handbook/mac/chapter.sgml#2 (text+ko) ==== @@ -29,8 +29,8 @@ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - Original Revision: 1.43 - $FreeBSD: doc/zh_CN.GB2312/books/arch-handbook/mac/chapter.sgml,v 1.1 2006/03/15 19:54:48 delphij Exp $ + Original Revision: 1.44 + $FreeBSD: doc/zh_CN.GB2312/books/arch-handbook/mac/chapter.sgml,v 1.2 2006/07/09 04:36:50 delphij Exp $ --> @@ -305,7 +305,7 @@ ÐèҪʹÓÃÒ»¸öÑ¡Ôñ×ÓÏÈ´Ó¸÷¸ö²ßÂÔ·µ»ØµÄ´íÎóÌõ¼þ¼¯ºÏÖÐÑ¡Ôñ³öÒ»¸ö×÷Ϊ×îÖÕ·µ»Ø½á¹û¡£ Ò»°ãÇé¿öÏ£¬Óë¡°·ÃÎʱ»¾Ü¾ø¡±Ïà±È£¬½«¸üÇãÏòÓÚÑ¡Ôñ¡°ÇëÇó¶ÔÏó²»´æÔÚ¡±¡£ ¾¡¹Ü²»ÄÜ´ÓÀíÂÛÉϱ£Ö¤ºÏ³É½á¹ûµÄÓÐЧÐÔÓ밲ȫÐÔ£¬µ«ÊÔÑé½á¹û±íÃ÷£¬¶ÔÓÚÐí¶àʵÓõIJßÂÔ¼¯ºÏÀ´Ëµ£¬ÊÂʵµÄÈ·Èç´Ë¡£ - ÀýÈ磬´«Í³µÄ¿ÉÐÅϵͳ³£³£²ÉÓÃÀàËƵķ½·¨¶Ô¶à¸ö°²È«²ßÂÔ½øÐÐ×éºÏ¡£ + ÀýÈ磬´«Í³µÄ¿ÉÐÅϵͳ³£³£²ÉÓÃÀàËƵķ½·¨¶Ô¶à¸ö°²È«²ßÂÔ½øÐÐ×éºÏ¡£ @@ -7255,5 +7255,3 @@ sgml-parent-document: ("../book.sgml" "part" "chapter") End: --> - - ==== //depot/projects/dtrace/doc/zh_CN.GB2312/books/porters-handbook/book.sgml#5 (text+ko) ==== @@ -2,8 +2,8 @@ The FreeBSD Documentation Project The FreeBSD Simplified Chinese Project - Original Revision: 1.714 - $FreeBSD: doc/zh_CN.GB2312/books/porters-handbook/book.sgml,v 1.11 2006/06/03 15:07:59 delphij Exp $ + Original Revision: 1.730 + $FreeBSD: doc/zh_CN.GB2312/books/porters-handbook/book.sgml,v 1.12 2006/07/09 04:47:51 delphij Exp $ --> Óà portlint À´¼ì²é port ÇëʹÓà portlint ÃüÁîÀ´¼ì²éÄúµÄ port - ÊÇ·ñ·ûºÏÎÒÃǵĹ淶¡£ - devel/portlint ³ÌÐòÊÇ ports collection µÄÒ»²¿·Ö¡£ + ÊÇ·ñ·ûºÏÎÒÃǵĹ淶¡£ devel/portlint + ³ÌÐòÊÇ ports Ì×¼þµÄÒ»²¿·Ö¡£ Õâ¸ö³ÌÐòµÄÖ÷Òª¹¦ÄÜÊÇ°ïÖúÄú¼ì²é Makefile µÄÑùʽÊÇ·ñ·ûºÏ¹æ·¶£¬ ÒÔ¼° package µÄÃüÃûÊÇ·ñµÃÌå¡£ @@ -3635,12 +3635,20 @@ ±ØÐëÔÚÒýÓà bsd.port.pre.mk ֮ǰ¶¨Òå¡£ ¶ø WITH_* ºÍ WITHOUT_* Ö»ÓÐÔÚÒýÓÃÁË - bsd.port.pre.mk Ö®ºó²ÅÄÜ¿ªÊ¼¼ì²â¡£ + bsd.port.pre.mk Ö®ºó²ÅÄÜ¿ªÊ¼¼ì²â¡£ + + ÓÉÓÚ»ù´¡Ö§³Ö¿ò¼ÜµÄһЩȱÏÝ£¬ ÄúÖ»ÄÜʹÓà WITH_* ±äÁ¿À´¼ì²âÄÇЩĬÈÏֵΪ OFF µÄÑ¡Ï ¶øʹÓà WITHOUT_* ±äÁ¿À´¼ì²âÄÇЩĬÈÏֵΪ - ON µÄÑ¡Ïî¡£ + ON µÄÑ¡Ïî¡£ ÕâÑù×öµÄÔ­ÒòÊÇ£º + µ±¶¨ÒåÁË PACKAGE_BUILDING »ò + BATCH À´Áª±à package ʱ£¬ config + target ²¢²»Ö´ÐУ¬ Òò´ËÒ²¾Í²»»áÓÐÑ¡¶¨µÄ OPTIONS¡£ + Õâ»áµ¼Ö make depends ºÍ + make describe ÔÚûÓÐ×ñÑ­Ç°Ãæ¹æÔòµÄ port + Áª±àʧ°Ü¡£ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 12 08:46:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 58A4F16A4DF; Wed, 12 Jul 2006 08:46:22 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 16AEC16A4DA for ; Wed, 12 Jul 2006 08:46:22 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A697543D49 for ; Wed, 12 Jul 2006 08:46:21 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C8kL9o098686 for ; Wed, 12 Jul 2006 08:46:21 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C8kJoE098683 for perforce@freebsd.org; Wed, 12 Jul 2006 08:46:19 GMT (envelope-from jb@freebsd.org) Date: Wed, 12 Jul 2006 08:46:19 GMT Message-Id: <200607120846.k6C8kJoE098683@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101341 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 08:46:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=101341 Change 101341 by jb@jb_freebsd2 on 2006/07/12 08:46:04 IFC Affected files ... .. //depot/projects/dtrace/src/MAINTAINERS#9 integrate .. //depot/projects/dtrace/src/UPDATING#4 integrate .. //depot/projects/dtrace/src/bin/dd/Makefile#3 integrate .. //depot/projects/dtrace/src/contrib/wpa_supplicant/Makefile#3 edit .. //depot/projects/dtrace/src/etc/rc.d/dhclient#3 integrate .. //depot/projects/dtrace/src/games/fortune/datfiles/Makefile#3 integrate .. //depot/projects/dtrace/src/games/fortune/datfiles/fortunes#8 integrate .. //depot/projects/dtrace/src/lib/libthr/sys/thr_error.c#4 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifclone.c#3 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifconfig.c#3 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifconfig.h#3 integrate .. //depot/projects/dtrace/src/sbin/ifconfig/ifvlan.c#3 integrate .. //depot/projects/dtrace/src/share/man/man9/mac.9#3 integrate .. //depot/projects/dtrace/src/share/man/man9/mutex.9#3 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/identcpu.c#4 integrate .. //depot/projects/dtrace/src/sys/amd64/conf/GENERIC#10 integrate .. //depot/projects/dtrace/src/sys/amd64/include/specialreg.h#4 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_proto.h#5 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_syscall.h#5 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/linux32_sysent.c#5 integrate .. //depot/projects/dtrace/src/sys/amd64/linux32/syscalls.master#5 integrate .. //depot/projects/dtrace/src/sys/arm/arm/pmap.c#8 integrate .. //depot/projects/dtrace/src/sys/arm/at91/kb920x_machdep.c#5 integrate .. //depot/projects/dtrace/src/sys/compat/freebsd32/freebsd32_misc.c#3 integrate .. //depot/projects/dtrace/src/sys/compat/linux/linux_file.c#4 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_misc.c#3 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_proto.h#3 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_stream.c#3 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_syscall.h#3 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_syscallnames.c#3 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_sysent.c#3 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/svr4_util.h#3 integrate .. //depot/projects/dtrace/src/sys/compat/svr4/syscalls.master#3 integrate .. //depot/projects/dtrace/src/sys/conf/NOTES#11 integrate .. //depot/projects/dtrace/src/sys/contrib/pf/net/if_pflog.c#3 integrate .. //depot/projects/dtrace/src/sys/contrib/pf/net/if_pfsync.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/asr/MAINTAINER#3 delete .. //depot/projects/dtrace/src/sys/dev/fdc/fdc.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp_freebsd.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp_freebsd.h#6 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp_pci.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp_sbus.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/isp/isp_target.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/ispfw/asm_1040.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/ispfw/asm_1080.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/ispfw/asm_12160.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/ispfw/ispfw.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/sound/midi/sequencer.c#3 integrate .. //depot/projects/dtrace/src/sys/geom/mirror/g_mirror.c#6 integrate .. //depot/projects/dtrace/src/sys/geom/raid3/g_raid3.c#9 integrate .. //depot/projects/dtrace/src/sys/i386/conf/GENERIC#12 integrate .. //depot/projects/dtrace/src/sys/i386/conf/PAE#4 integrate .. //depot/projects/dtrace/src/sys/i386/i386/identcpu.c#4 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_misc.c#4 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_proto.h#4 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_syscall.h#4 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_sysent.c#4 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_util.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/ibcs2_xenix.c#4 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/imgact_coff.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/ibcs2/syscalls.master#4 integrate .. //depot/projects/dtrace/src/sys/i386/include/i4b_ioctl.h#3 integrate .. //depot/projects/dtrace/src/sys/i386/include/specialreg.h#4 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_proto.h#5 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_syscall.h#5 integrate .. //depot/projects/dtrace/src/sys/i386/linux/linux_sysent.c#5 integrate .. //depot/projects/dtrace/src/sys/i386/linux/syscalls.master#5 integrate .. //depot/projects/dtrace/src/sys/i4b/layer4/i4b_l4mgmt.c#3 integrate .. //depot/projects/dtrace/src/sys/ia64/conf/GENERIC#4 integrate .. //depot/projects/dtrace/src/sys/kern/init_sysent.c#6 integrate .. //depot/projects/dtrace/src/sys/kern/kern_environment.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/kern_linker.c#16 integrate .. //depot/projects/dtrace/src/sys/kern/kern_thr.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/subr_hints.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.master#5 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_domain.c#4 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_socket.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_socket2.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_syscalls.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/uipc_usrreq.c#6 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_syscalls.c#4 integrate .. //depot/projects/dtrace/src/sys/modules/ispfw/Makefile#3 integrate .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/dtrace/src/sys/net/if.c#4 integrate .. //depot/projects/dtrace/src/sys/net/if_bridge.c#7 integrate .. //depot/projects/dtrace/src/sys/net/if_clone.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_clone.h#3 integrate .. //depot/projects/dtrace/src/sys/net/if_disc.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_enc.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_faith.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_gif.c#4 integrate .. //depot/projects/dtrace/src/sys/net/if_gre.c#4 integrate .. //depot/projects/dtrace/src/sys/net/if_loop.c#4 integrate .. //depot/projects/dtrace/src/sys/net/if_ppp.c#3 integrate .. //depot/projects/dtrace/src/sys/net/if_stf.c#4 integrate .. //depot/projects/dtrace/src/sys/net/if_vlan.c#3 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_carp.c#4 integrate .. //depot/projects/dtrace/src/sys/pc98/conf/GENERIC#5 integrate .. //depot/projects/dtrace/src/sys/posix4/ksched.c#6 integrate .. //depot/projects/dtrace/src/sys/posix4/p1003_1b.c#4 integrate .. //depot/projects/dtrace/src/sys/posix4/posix4.h#3 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/mmu_oea.c#4 integrate .. //depot/projects/dtrace/src/sys/security/mac_biba/mac_biba.c#3 integrate .. //depot/projects/dtrace/src/sys/sparc64/conf/GENERIC#6 integrate .. //depot/projects/dtrace/src/sys/sys/protosw.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/sockio.h#3 integrate .. //depot/projects/dtrace/src/sys/sys/syscall.h#5 integrate .. //depot/projects/dtrace/src/sys/sys/syscall.mk#5 integrate .. //depot/projects/dtrace/src/sys/sys/syscallsubr.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/sysproto.h#5 integrate .. //depot/projects/dtrace/src/sys/sys/systm.h#5 integrate .. //depot/projects/dtrace/src/sys/sys/thr.h#3 integrate .. //depot/projects/dtrace/src/sys/ufs/ffs/ffs_vfsops.c#8 integrate .. //depot/projects/dtrace/src/sys/ufs/ufs/ufs_lookup.c#3 integrate .. //depot/projects/dtrace/src/sys/vm/vm_meter.c#5 integrate .. //depot/projects/dtrace/src/tools/regression/fifo/fifo_create/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/fifo/fifo_io/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/fifo/fifo_misc/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/fifo/fifo_open/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/file/ftruncate/Makefile#1 branch .. //depot/projects/dtrace/src/tools/regression/file/ftruncate/ftruncate.c#1 branch .. //depot/projects/dtrace/src/tools/regression/lib/libc/resolv/Makefile#3 edit .. //depot/projects/dtrace/src/tools/regression/netinet/msocket_ifnet_remove/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/netinet/tcpdrop/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/netinet/tcpsockclosebeforeaccept/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/netinet/tcpsocktimewait/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/netipx/ipxdgramloopback/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/netipx/spxabort/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/netipx/spxloopback/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/sockets/listen_backlog/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/sockets/rtsocket/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/sockets/sendfile/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/sockets/socketpair/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/sockets/unix_bindconnect/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/sockets/unix_passfd/Makefile#3 integrate .. //depot/projects/dtrace/src/tools/regression/sockets/unix_socket/Makefile#2 integrate .. //depot/projects/dtrace/src/tools/regression/ufs/uprintf/Makefile#3 integrate .. //depot/projects/dtrace/src/usr.bin/csup/Makefile#2 edit .. //depot/projects/dtrace/src/usr.sbin/i4b/isdnd/controller.c#4 integrate .. //depot/projects/dtrace/src/usr.sbin/i4b/isdnd/main.c#4 integrate .. //depot/projects/dtrace/src/usr.sbin/i4b/isdndebug/main.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/i4b/isdnmonitor/main.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/i4b/isdnphone/main.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/i4b/isdntelctl/main.c#3 integrate .. //depot/projects/dtrace/src/usr.sbin/i4b/isdntest/main.c#4 integrate Differences ... ==== //depot/projects/dtrace/src/MAINTAINERS#9 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.137 2006/07/04 02:01:48 brooks Exp $ +$FreeBSD: src/MAINTAINERS,v 1.139 2006/07/11 06:09:54 mjacob Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -51,7 +51,6 @@ pass(4) ken Pre-commit review requested. ch(4) ken Pre-commit review requested. isp(4) mjacob Pre-commit review requested. -mpt(4) mjacob Pre-commit review requested. em(4) tackerman Pre-commit review requested. tdfx(4) cokane Just keep me informed of changes, try not to break it. sendmail gshapiro Pre-commit review requested. @@ -135,11 +134,7 @@ List below generated with: $ cd /usr/src; find */* -type f|xargs egrep 'MAINTAINER[ ]*=' -bin/dd/Makefile:MAINTAINER= green@FreeBSD.org -games/fortune/datfiles/Makefile:MAINTAINER= jkh -gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org -usr.bin/locate/Makefile:MAINTAINER= wosch usr.sbin/zic/Makefile:MAINTAINER= wollman@FreeBSD.org ==== //depot/projects/dtrace/src/UPDATING#4 (text+ko) ==== @@ -21,6 +21,12 @@ developers choose to disable these features on build machines to maximize performance. +20060709: + The interface version of the i4b kernel part has changed. So + after updating the kernel sources and compiling a new kernel, + the i4b user space tools in "/usr/src/usr.sbin/i4b" must also + be rebuilt, and vice versa. + 20060627: The XBOX kernel now defaults to the nfe(4) driver instead of the nve(4) driver. Please update your configuration @@ -585,4 +591,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.450 2006/06/27 20:22:32 rink Exp $ +$FreeBSD: src/UPDATING,v 1.451 2006/07/09 21:16:06 twinterg Exp $ ==== //depot/projects/dtrace/src/bin/dd/Makefile#3 (text+ko) ==== @@ -1,7 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 5/31/93 -# $FreeBSD: src/bin/dd/Makefile,v 1.18 2004/04/09 07:13:27 njl Exp $ - -MAINTAINER= green@FreeBSD.org +# $FreeBSD: src/bin/dd/Makefile,v 1.19 2006/07/09 21:47:37 markm Exp $ PROG= dd SRCS= args.c conv.c conv_tab.c dd.c misc.c position.c ==== //depot/projects/dtrace/src/contrib/wpa_supplicant/Makefile#3 (text+ko) ==== @@ -281,8 +281,7 @@ # PC/SC interface for smartcards (USIM, GSM SIM) CFLAGS += -DPCSC_FUNCS -I/usr/include/PCSC OBJS += pcsc_funcs.o -# -lpthread may not be needed depending on how pcsc-lite was configured -LIBS += -lpcsclite -lpthread +LIBS += -lpcsclite endif ifndef CONFIG_TLS ==== //depot/projects/dtrace/src/etc/rc.d/dhclient#3 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: dhclient,v 1.8 2002/03/22 04:33:58 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/dhclient,v 1.21 2005/07/26 00:37:19 brooks Exp $ +# $FreeBSD: src/etc/rc.d/dhclient,v 1.22 2006/07/09 06:54:24 stefanf Exp $ # # PROVIDE: dhclient @@ -18,7 +18,7 @@ dhclient_start() { - # prevent unnecessicary restarts + # prevent unnecessary restarts # XXX: should use a pidfile if [ -x /usr/bin/pgrep ]; then pids=`/usr/bin/pgrep -f "dhclient: $ifn(\$| .*)"` ==== //depot/projects/dtrace/src/games/fortune/datfiles/Makefile#3 (text+ko) ==== @@ -1,15 +1,10 @@ # @(#)Makefile 8.2 (Berkeley) 4/19/94 -# $FreeBSD: src/games/fortune/datfiles/Makefile,v 1.33 2005/02/03 00:20:36 ru Exp $ +# $FreeBSD: src/games/fortune/datfiles/Makefile,v 1.34 2006/07/09 20:26:36 markm Exp $ FILES= fortunes freebsd-tips murphy startrek zippy BLDS= fortunes.dat murphy.dat startrek.dat zippy.dat \ fortunes-o fortunes-o.dat freebsd-tips.dat -# Pass all new entries by ${MAINTAINER} to preserve some semblance of -# humor in the fortune files. What's funny to you on 6 beers may not -# be funny to anyone else. -MAINTAINER= jkh - # TO AVOID INSTALLING THE POTENTIALLY OFFENSIVE FORTUNES, COMMENT OUT THE # THREE LINES AND UNCOMMENT THE FOURTH LINE. ==== //depot/projects/dtrace/src/games/fortune/datfiles/fortunes#8 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.221 2006/06/20 08:34:36 phk Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.223 2006/07/10 16:53:32 phk Exp $ % ======================================================================= @@ -29705,6 +29705,10 @@ remember. -- Eugene McCarthy % +It is difficult to get a man to understand something when his salary +depends upon his not understanding it. + -- Upton Sinclair +% It is difficult to legislate morality in the absence of moral legislators. % It is difficult to produce a television documentary that is both ==== //depot/projects/dtrace/src/lib/libthr/sys/thr_error.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/sys/thr_error.c,v 1.2 2005/04/02 01:20:00 davidxu Exp $ + * $FreeBSD: src/lib/libthr/sys/thr_error.c,v 1.3 2006/07/12 03:44:05 davidxu Exp $ */ #include @@ -52,5 +52,6 @@ if (curthread != NULL && curthread != _thr_initial) return (&curthread->error); } else - return (&errno); + } + return (&errno); } ==== //depot/projects/dtrace/src/sbin/ifconfig/ifclone.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sbin/ifconfig/ifclone.c,v 1.1 2004/12/08 19:18:07 sam Exp $"; + "$FreeBSD: src/sbin/ifconfig/ifclone.c,v 1.2 2006/07/09 06:10:23 sam Exp $"; #endif /* not lint */ #include @@ -88,48 +88,62 @@ free(buf); } +static clone_callback_func *clone_cb = NULL; + void -clone_create(void) +clone_setcallback(clone_callback_func *p) { - int s; + if (clone_cb != NULL && clone_cb != p) + errx(1, "conflicting device create parameters"); + clone_cb = p; +} - s = socket(AF_INET, SOCK_DGRAM, 0); - if (s == -1) - err(1, "socket(AF_INET,SOCK_DGRAM)"); +/* + * Do the actual clone operation. Any parameters must have been + * setup by now. If a callback has been setup to do the work + * then defer to it; otherwise do a simple create operation with + * no parameters. + */ +static void +ifclonecreate(int s, void *arg) +{ + struct ifreq ifr; memset(&ifr, 0, sizeof(ifr)); (void) strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name)); - if (ioctl(s, SIOCIFCREATE, &ifr) < 0) - err(1, "SIOCIFCREATE"); + if (clone_cb == NULL) { + /* NB: no parameters */ + if (ioctl(s, SIOCIFCREATE2, &ifr) < 0) + err(1, "SIOCIFCREATE2"); + } else { + clone_cb(s, &ifr); + } /* - * If we get a different name back then we put in, we probably - * want to print it out, but we might change our mind later so - * we just signal our intrest and leave the printout for later. + * If we get a different name back than we put in, print it. */ - if (strcmp(name, ifr.ifr_name) != 0) { - printname = 1; + if (strncmp(name, ifr.ifr_name, sizeof(name)) != 0) { strlcpy(name, ifr.ifr_name, sizeof(name)); + printf("%s\n", name); } +} - close(s); +static +DECL_CMD_FUNC(clone_create, arg, d) +{ + callback_register(ifclonecreate, NULL); } -static void -clone_destroy(const char *val, int d, int s, const struct afswtch *rafp) +static +DECL_CMD_FUNC(clone_destroy, arg, d) { - (void) strncpy(ifr.ifr_name, name, sizeof(ifr.ifr_name)); if (ioctl(s, SIOCIFDESTROY, &ifr) < 0) err(1, "SIOCIFDESTROY"); - /* - * If we create and destroy an interface in the same command, - * there isn't any reason to print it's name. - */ - printname = 0; } static struct cmd clone_cmds[] = { + DEF_CMD("create", 0, clone_create), DEF_CMD("destroy", 0, clone_destroy), DEF_CMD("unplumb", 0, clone_destroy), }; ==== //depot/projects/dtrace/src/sbin/ifconfig/ifconfig.c#3 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)ifconfig.c 8.2 (Berkeley) 2/16/94"; #endif static const char rcsid[] = - "$FreeBSD: src/sbin/ifconfig/ifconfig.c,v 1.119 2006/03/12 14:00:15 glebius Exp $"; + "$FreeBSD: src/sbin/ifconfig/ifconfig.c,v 1.120 2006/07/09 06:10:23 sam Exp $"; #endif /* not lint */ #include @@ -92,7 +92,6 @@ int supmedia = 0; int printkeys = 0; /* Print keying material for interfaces. */ -int printname = 0; /* Print the name of the created interface. */ static int ifconfig(int argc, char *const *argv, const struct afswtch *afp); static void status(const struct afswtch *afp, int addrcount, @@ -234,21 +233,20 @@ /* check and maybe load support for this interface */ ifmaybeload(name); - /* - * NOTE: We must special-case the `create' command right - * here as we would otherwise fail when trying to find - * the interface. - */ - if (argc > 0 && (strcmp(argv[0], "create") == 0 || - strcmp(argv[0], "plumb") == 0)) { - clone_create(); - argc--, argv++; - if (argc == 0) - goto end; - } ifindex = if_nametoindex(name); - if (ifindex == 0) + if (ifindex == 0) { + /* + * NOTE: We must special-case the `create' command + * right here as we would otherwise fail when trying + * to find the interface. + */ + if (argc > 0 && (strcmp(argv[0], "create") == 0 || + strcmp(argv[0], "plumb") == 0)) { + ifconfig(argc, argv, NULL); + exit(0); + } errx(1, "interface %s does not exist", name); + } } /* Check for address family */ @@ -356,9 +354,6 @@ if (namesonly && need_nl > 0) putchar('\n'); -end: - if (printname) - printf("%s\n", name); exit (0); } @@ -782,12 +777,6 @@ } strlcpy(name, newname, sizeof(name)); free(newname); - - /* - * Even if we just created the interface, we don't need to print - * its name because we just nailed it down separately. - */ - printname = 0; } /* ==== //depot/projects/dtrace/src/sbin/ifconfig/ifconfig.h#3 (text+ko) ==== @@ -31,7 +31,7 @@ * * so there! * - * $FreeBSD: src/sbin/ifconfig/ifconfig.h,v 1.17 2005/07/14 18:33:21 rwatson Exp $ + * $FreeBSD: src/sbin/ifconfig/ifconfig.h,v 1.18 2006/07/09 06:10:23 sam Exp $ */ #define __constructor __attribute__((constructor)) @@ -127,7 +127,6 @@ extern int allmedia; extern int supmedia; extern int printkeys; -extern int printname; extern int flags; extern int newaddr; extern int verbose; @@ -140,4 +139,5 @@ void ifmaybeload(char *name); -void clone_create(void); +typedef void clone_callback_func(int, struct ifreq *); +void clone_setcallback(clone_callback_func *); ==== //depot/projects/dtrace/src/sbin/ifconfig/ifvlan.c#3 (text+ko) ==== @@ -56,95 +56,119 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sbin/ifconfig/ifvlan.c,v 1.11 2006/03/09 14:58:09 yar Exp $"; + "$FreeBSD: src/sbin/ifconfig/ifvlan.c,v 1.12 2006/07/09 06:10:23 sam Exp $"; #endif -static struct vlanreq __vreq; -static int __have_dev = 0; -static int __have_tag = 0; + +#define NOTAG ((u_short) -1) + +static struct vlanreq params = { + .vlr_tag = NOTAG, +}; + +static int +getvlan(int s, struct ifreq *ifr, struct vlanreq *vreq) +{ + bzero((char *)vreq, sizeof(*vreq)); + ifr->ifr_data = (caddr_t)vreq; -static void vlan_set(int); + return ioctl(s, SIOCGETVLAN, (caddr_t)ifr); +} static void vlan_status(int s) { struct vlanreq vreq; - bzero((char *)&vreq, sizeof(vreq)); - ifr.ifr_data = (caddr_t)&vreq; + if (getvlan(s, &ifr, &vreq) != -1) + printf("\tvlan: %d parent interface: %s\n", + vreq.vlr_tag, vreq.vlr_parent[0] == '\0' ? + "" : vreq.vlr_parent); +} - if (ioctl(s, SIOCGETVLAN, (caddr_t)&ifr) == -1) - return; +static void +vlan_create(int s, struct ifreq *ifr) +{ + if (params.vlr_tag != NOTAG || params.vlr_parent[0] != '\0') { + /* + * One or both parameters were specified, make sure both. + */ + if (params.vlr_tag == NOTAG) + errx(1, "must specify a tag for vlan create"); + if (params.vlr_parent[0] == '\0') + errx(1, "must specify a parent device for vlan create"); + ifr->ifr_data = (caddr_t) ¶ms; + } + if (ioctl(s, SIOCIFCREATE2, ifr) < 0) + err(1, "SIOCIFCREATE2"); +} - printf("\tvlan: %d parent interface: %s\n", - vreq.vlr_tag, vreq.vlr_parent[0] == '\0' ? - "" : vreq.vlr_parent); +static void +vlan_cb(int s, void *arg) +{ + if ((params.vlr_tag != NOTAG) ^ (params.vlr_parent[0] != '\0')) + errx(1, "both vlan and vlandev must be specified"); } static void -setvlantag(const char *val, int d, int s, const struct afswtch *afp) +vlan_set(int s, struct ifreq *ifr) +{ + if (params.vlr_tag != NOTAG && params.vlr_parent[0] != '\0') { + ifr->ifr_data = (caddr_t) ¶ms; + if (ioctl(s, SIOCSETVLAN, (caddr_t)ifr) == -1) + err(1, "SIOCSETVLAN"); + } +} + +static +DECL_CMD_FUNC(setvlantag, val, d) { - char *endp; - u_long ul; + struct vlanreq vreq; + u_long ul; + char *endp; ul = strtoul(val, &endp, 0); if (*endp != '\0') errx(1, "invalid value for vlan"); - __vreq.vlr_tag = ul; + params.vlr_tag = ul; /* check if the value can be represented in vlr_tag */ - if (__vreq.vlr_tag != ul) + if (params.vlr_tag != ul) errx(1, "value for vlan out of range"); - /* the kernel will do more specific checks on vlr_tag */ - __have_tag = 1; - vlan_set(s); /* try setting vlan params in kernel */ + + if (getvlan(s, &ifr, &vreq) != -1) + vlan_set(s, &ifr); + else + clone_setcallback(vlan_create); } -static void -setvlandev(const char *val, int d, int s, const struct afswtch *afp) +static +DECL_CMD_FUNC(setvlandev, val, d) { + struct vlanreq vreq; + + strlcpy(params.vlr_parent, val, sizeof(params.vlr_parent)); - strncpy(__vreq.vlr_parent, val, sizeof(__vreq.vlr_parent)); - __have_dev = 1; - vlan_set(s); /* try setting vlan params in kernel */ + if (getvlan(s, &ifr, &vreq) != -1) + vlan_set(s, &ifr); + else + clone_setcallback(vlan_create); } -static void -unsetvlandev(const char *val, int d, int s, const struct afswtch *afp) +static +DECL_CMD_FUNC(unsetvlandev, val, d) { + struct vlanreq vreq; - if (val != NULL) - warnx("argument to -vlandev is useless and hence deprecated"); + bzero((char *)&vreq, sizeof(struct vlanreq)); + ifr.ifr_data = (caddr_t)&vreq; - bzero((char *)&__vreq, sizeof(__vreq)); - ifr.ifr_data = (caddr_t)&__vreq; -#if 0 /* this code will be of use when we can alter vlan or vlandev only */ if (ioctl(s, SIOCGETVLAN, (caddr_t)&ifr) == -1) err(1, "SIOCGETVLAN"); - bzero((char *)&__vreq.vlr_parent, sizeof(__vreq.vlr_parent)); - __vreq.vlr_tag = 0; /* XXX clear parent only (no kernel support now) */ -#endif + bzero((char *)&vreq.vlr_parent, sizeof(vreq.vlr_parent)); + vreq.vlr_tag = 0; + if (ioctl(s, SIOCSETVLAN, (caddr_t)&ifr) == -1) err(1, "SIOCSETVLAN"); - __have_dev = __have_tag = 0; -} - -static void -vlan_cb(int s, void *arg) -{ - - if (__have_tag ^ __have_dev) - errx(1, "both vlan and vlandev must be specified"); -} - -static void -vlan_set(int s) -{ - - if (__have_tag && __have_dev) { - ifr.ifr_data = (caddr_t)&__vreq; - if (ioctl(s, SIOCSETVLAN, (caddr_t)&ifr) == -1) - err(1, "SIOCSETVLAN"); - } } static struct cmd vlan_cmds[] = { ==== //depot/projects/dtrace/src/share/man/man9/mac.9#3 (text+ko) ==== @@ -31,9 +31,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/mac.9,v 1.15 2005/06/28 20:15:18 hmp Exp $ +.\" $FreeBSD: src/share/man/man9/mac.9,v 1.17 2006/07/11 16:26:40 joel Exp $ .\" -.Dd February 16, 2002 +.Dd July 10, 2006 .Dt MAC 9 .Os .Sh NAME @@ -152,7 +152,7 @@ policies. .Sh ENTRY POINTS System service and module authors should reference the -.%T "FreeBSD Developer's Handbook" +.%T "FreeBSD Architecture Handbook" for information on the MAC Framework APIs. .Sh SEE ALSO .Xr acl 3 , @@ -172,8 +172,8 @@ .Xr vaccess_acl_posix1e 9 , .Xr VFS 9 .Rs -.%T "The FreeBSD Developers' Handbook" -.%O "http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/developers-handbook/" +.%T "The FreeBSD Architecture Handbook" +.%O "http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/arch-handbook/" .Re .Sh HISTORY The ==== //depot/projects/dtrace/src/share/man/man9/mutex.9#3 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" from BSDI $Id: mutex.4,v 1.1.2.3 1998/04/27 22:53:13 ewv Exp $ -.\" $FreeBSD: src/share/man/man9/mutex.9,v 1.49 2006/02/01 20:30:55 glebius Exp $ +.\" $FreeBSD: src/share/man/man9/mutex.9,v 1.50 2006/07/09 09:46:43 maxim Exp $ .\" .Dd February 1, 2006 .Dt MUTEX 9 @@ -91,7 +91,7 @@ .Ft void .Fn mtx_assert "struct mtx *mutex" "int what" .In sys/kernel.h -.Fn MTX_SYSINIT "name" "struct mutex *mtx" "const char *description" "int opts" +.Fn MTX_SYSINIT "name" "struct mtx *mtx" "const char *description" "int opts" .Sh DESCRIPTION Mutexes are the most basic and primary method of thread synchronization. The major design considerations for mutexes are: ==== //depot/projects/dtrace/src/sys/amd64/amd64/identcpu.c#4 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.146 2006/04/24 22:56:57 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.147 2006/07/12 06:04:11 jkim Exp $"); #include "opt_cpu.h" @@ -306,8 +306,8 @@ "\020" "\001LAHF" /* LAHF/SAHF in long mode */ "\002CMP" /* CMP legacy */ - "\003" - "\004" + "\003SVM" /* Secure Virtual Mode */ + "\004ExtAPIC" /* Extended APIC register */ "\005CR8" /* CR8 in legacy mode */ "\006" "\007" ==== //depot/projects/dtrace/src/sys/amd64/conf/GENERIC#10 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.464 2006/07/09 16:39:21 mjacob Exp $ cpu HAMMER ident GENERIC @@ -251,6 +251,7 @@ device md # Memory "disks" device gif # IPv6 and IPv4 tunneling device faith # IPv6-to-IPv4 relaying (translation) +device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! ==== //depot/projects/dtrace/src/sys/amd64/include/specialreg.h#4 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * from: @(#)specialreg.h 7.1 (Berkeley) 5/9/91 - * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.33 2006/05/01 22:07:00 jhb Exp $ + * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.34 2006/07/12 06:04:11 jkim Exp $ */ #ifndef _MACHINE_SPECIALREG_H_ @@ -135,6 +135,8 @@ #define AMDID2_LAHF 0x00000001 #define AMDID2_CMP 0x00000002 +#define AMDID2_SVM 0x00000004 +#define AMDID2_EXT_APIC 0x00000008 #define AMDID2_CR8 0x00000010 /* ==== //depot/projects/dtrace/src/sys/amd64/linux32/linux32_proto.h#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/dtrace/src/sys/amd64/linux32/linux32_syscall.h#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.17 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/dtrace/src/sys/amd64/linux32/linux32_sysent.c#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.17 2006/07/06 21:43:14 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #include @@ -109,7 +109,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 86 = linux_uselib */ { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon, AUE_SWAPON }, /* 87 = swapon */ { SYF_MPSAFE | AS(linux_reboot_args), (sy_call_t *)linux_reboot, AUE_REBOOT }, /* 88 = linux_reboot */ - { AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ + { SYF_MPSAFE | AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ { SYF_MPSAFE | AS(linux_mmap_args), (sy_call_t *)linux_mmap, AUE_MMAP }, /* 90 = linux_mmap */ { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap, AUE_MUNMAP }, /* 91 = munmap */ { SYF_MPSAFE | AS(linux_truncate_args), (sy_call_t *)linux_truncate, AUE_TRUNCATE }, /* 92 = linux_truncate */ @@ -161,7 +161,7 @@ { SYF_MPSAFE | AS(linux_setfsuid16_args), (sy_call_t *)linux_setfsuid16, AUE_SETFSUID }, /* 138 = linux_setfsuid16 */ { SYF_MPSAFE | AS(linux_setfsgid16_args), (sy_call_t *)linux_setfsgid16, AUE_SETFSGID }, /* 139 = linux_setfsgid16 */ { SYF_MPSAFE | AS(linux_llseek_args), (sy_call_t *)linux_llseek, AUE_LSEEK }, /* 140 = linux_llseek */ - { AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ + { SYF_MPSAFE | AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ { SYF_MPSAFE | AS(linux_select_args), (sy_call_t *)linux_select, AUE_SELECT }, /* 142 = linux_select */ { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock, AUE_FLOCK }, /* 143 = flock */ { SYF_MPSAFE | AS(linux_msync_args), (sy_call_t *)linux_msync, AUE_MSYNC }, /* 144 = linux_msync */ @@ -240,7 +240,7 @@ { SYF_MPSAFE | AS(linux_pivot_root_args), (sy_call_t *)linux_pivot_root, AUE_PIVOT_ROOT }, /* 217 = linux_pivot_root */ { SYF_MPSAFE | AS(linux_mincore_args), (sy_call_t *)linux_mincore, AUE_MINCORE }, /* 218 = linux_mincore */ { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise, AUE_MADVISE }, /* 219 = madvise */ - { AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ + { SYF_MPSAFE | AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ { SYF_MPSAFE | AS(linux_fcntl64_args), (sy_call_t *)linux_fcntl64, AUE_FCNTL }, /* 221 = linux_fcntl64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 222 = */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 223 = */ ==== //depot/projects/dtrace/src/sys/amd64/linux32/syscalls.master#5 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.15 2006/07/06 21:42:35 jhb Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -169,7 +169,7 @@ 87 AUE_SWAPON MNOPROTO { int swapon(char *name); } 88 AUE_REBOOT MSTD { int linux_reboot(l_int magic1, \ l_int magic2, l_uint cmd, void *arg); } -89 AUE_O_GETDENTS STD { int linux_readdir(l_uint fd, \ +89 AUE_O_GETDENTS MSTD { int linux_readdir(l_uint fd, \ struct l_dirent *dent, l_uint count); } 90 AUE_MMAP MSTD { int linux_mmap(struct l_mmap_argv *ptr); } 91 AUE_MUNMAP MNOPROTO { int munmap(caddr_t addr, int len); } @@ -246,7 +246,7 @@ 140 AUE_LSEEK MSTD { int linux_llseek(l_int fd, l_ulong ohigh, \ l_ulong olow, l_loff_t *res, \ l_uint whence); } -141 AUE_O_GETDENTS STD { int linux_getdents(l_uint fd, void *dent, \ +141 AUE_O_GETDENTS MSTD { int linux_getdents(l_uint fd, void *dent, \ l_uint count); } 142 AUE_SELECT MSTD { int linux_select(l_int nfds, \ l_fd_set *readfds, l_fd_set *writefds, \ @@ -381,7 +381,7 @@ l_size_t len, u_char *vec); } 219 AUE_MADVISE MNOPROTO { int madvise(void *addr, size_t len, \ int behav); } -220 AUE_O_GETDENTS STD { int linux_getdents64(l_uint fd, \ +220 AUE_O_GETDENTS MSTD { int linux_getdents64(l_uint fd, \ void *dirent, l_uint count); } 221 AUE_FCNTL MSTD { int linux_fcntl64(l_uint fd, l_uint cmd, \ uintptr_t arg); } ==== //depot/projects/dtrace/src/sys/arm/arm/pmap.c#8 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.64 2006/06/15 01:01:05 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.65 2006/07/11 11:22:06 cognet Exp $"); #include #include #include @@ -199,7 +199,7 @@ static pv_entry_t pmap_get_pv_entry(void); static void pmap_enter_locked(pmap_t, vm_offset_t, vm_page_t, - vm_prot_t, boolean_t); + vm_prot_t, boolean_t, int); static void pmap_vac_me_harder(struct vm_page *, pmap_t, vm_offset_t); static void pmap_vac_me_kpmap(struct vm_page *, pmap_t, @@ -373,7 +373,7 @@ * L2 allocation. */ #define pmap_alloc_l2_dtable() \ - (void*)uma_zalloc(l2table_zone, M_NOWAIT) + (void*)uma_zalloc(l2table_zone, M_NOWAIT|M_USE_RESERVE) #define pmap_free_l2_dtable(l2) \ uma_zfree(l2table_zone, l2) @@ -952,7 +952,7 @@ again_ptep: PMAP_UNLOCK(pm); vm_page_unlock_queues(); - ptep = (void*)uma_zalloc(l2zone, M_NOWAIT); + ptep = (void*)uma_zalloc(l2zone, M_NOWAIT|M_USE_RESERVE); vm_page_lock_queues(); PMAP_LOCK(pm); if (l2b->l2b_kva != 0) { @@ -3306,7 +3306,7 @@ vm_page_lock_queues(); PMAP_LOCK(pmap); - pmap_enter_locked(pmap, va, m, prot, wired); + pmap_enter_locked(pmap, va, m, prot, wired, M_WAITOK); vm_page_unlock_queues(); PMAP_UNLOCK(pmap); } @@ -3316,7 +3316,7 @@ */ static void pmap_enter_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - boolean_t wired) + boolean_t wired, int flags) { struct l2_bucket *l2b = NULL; struct vm_page *opg; @@ -3347,10 +3347,22 @@ l2b = pmap_get_l2_bucket(pmap, va); if (l2b == NULL) l2b = pmap_grow_l2_bucket(pmap, va); - } else + } else { +do_l2b_alloc: l2b = pmap_alloc_l2_bucket(pmap, va); - KASSERT(l2b != NULL, - ("pmap_enter: failed to allocate l2 bucket")); + if (l2b == NULL) { + if (flags & M_WAITOK) { + PMAP_UNLOCK(pmap); + vm_page_unlock_queues(); + VM_WAIT; + vm_page_lock_queues(); + PMAP_LOCK(pmap); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Jul 12 08:52:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2140316A4E6; Wed, 12 Jul 2006 08:52:34 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C170C16A4E1 for ; Wed, 12 Jul 2006 08:52:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A53C243D68 for ; Wed, 12 Jul 2006 08:52:29 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C8qT70006872 for ; Wed, 12 Jul 2006 08:52:29 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C8qTqS006869 for perforce@freebsd.org; Wed, 12 Jul 2006 08:52:29 GMT (envelope-from jb@freebsd.org) Date: Wed, 12 Jul 2006 08:52:29 GMT Message-Id: <200607120852.k6C8qTqS006869@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101342 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 08:52:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=101342 Change 101342 by jb@jb_freebsd2 on 2006/07/12 08:51:33 jkoshy is working on a BSD version of libelf, so remove the comment about libdwarf depending on Sun's libelf. The libdwarf being build here is the SGI version because that is more recent than the one that Sun is using and SGI has included more vendor-specific extensions. Affected files ... .. //depot/projects/dtrace/src/gnu/lib/Makefile#4 edit Differences ... ==== //depot/projects/dtrace/src/gnu/lib/Makefile#4 (text+ko) ==== @@ -2,7 +2,7 @@ .include -SUBDIR= csu libgcc libgcov libdialog libregex libreadline +SUBDIR= csu libgcc libgcov libdialog libdwarf libregex libreadline # libsupc++ uses libstdc++ headers, although 'make includes' should # have taken care of that already. @@ -18,11 +18,4 @@ SUBDIR+= libg2c .endif -# libdwarf is LGPL'd, but requires Sun's libelf which is CDDL'd, -# so we can only build libdwarf if we are building the CDDL code -# too. -.if !defined(NO_CDDL) && !defined(NO_DTRACE) -SUBDIR+= libdwarf -.endif - .include From owner-p4-projects@FreeBSD.ORG Wed Jul 12 09:05:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DFE0316A4E2; Wed, 12 Jul 2006 09:05:51 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A0C6216A4DD for ; Wed, 12 Jul 2006 09:05:51 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2262443D73 for ; Wed, 12 Jul 2006 09:05:47 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6C95ksa008634 for ; Wed, 12 Jul 2006 09:05:46 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6C95k4Z008631 for perforce@freebsd.org; Wed, 12 Jul 2006 09:05:46 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 12 Jul 2006 09:05:46 GMT Message-Id: <200607120905.k6C95k4Z008631@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 101343 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 09:05:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=101343 Change 101343 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/12 09:04:57 back out the rubbish I put in earlier make sure we do byte swapping when reading structures from the card to compensate for the fact that the bus space routines don't DTRT in this instance Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#7 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#8 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#7 (text+ko) ==== @@ -824,19 +824,19 @@ } /******************************* Doorbell Access ******************************/ -static __inline uint16_t mpt_rd_db(struct mpt_softc *mpt); -static __inline uint16_t mpt_rd_intr(struct mpt_softc *mpt); +static __inline uint32_t mpt_rd_db(struct mpt_softc *mpt); +static __inline uint32_t mpt_rd_intr(struct mpt_softc *mpt); -static __inline uint16_t +static __inline uint32_t mpt_rd_db(struct mpt_softc *mpt) { - return mpt_read_16(mpt, MPT_OFFSET_DOORBELL); + return mpt_read(mpt, MPT_OFFSET_DOORBELL); } -static __inline uint16_t +static __inline uint32_t mpt_rd_intr(struct mpt_softc *mpt) { - return mpt_read_16(mpt, MPT_OFFSET_INTR_STATUS); + return mpt_read(mpt, MPT_OFFSET_INTR_STATUS); } /* Busy wait for a door bell to be read by IOC */ @@ -1343,7 +1343,7 @@ /* Send the command */ for (i = 0; i < len; i++) { - mpt_write(mpt, MPT_OFFSET_DOORBELL, *data32++); + mpt_write(mpt, MPT_OFFSET_DOORBELL, htole32(*data32++)); if (mpt_wait_db_ack(mpt) != MPT_OK) { mpt_prt(mpt, "mpt_send_handshake_cmd timeout! index = %d\n", @@ -1360,6 +1360,7 @@ { int left, reply_left; uint16_t *data16; + uint32_t data; MSG_DEFAULT_REPLY *hdr; /* We move things out in 16 bit chunks */ @@ -1373,7 +1374,9 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout1\n"); return ETIMEDOUT; } - *data16++ = mpt_read_16(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; + data = mpt_read(mpt, MPT_OFFSET_DOORBELL); + + *data16++ = le16toh(data & MPT_DB_DATA_MASK); mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); /* Get Second Word */ @@ -1381,15 +1384,16 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout2\n"); return ETIMEDOUT; } - *data16++ = mpt_read_16(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; + data = mpt_read(mpt, MPT_OFFSET_DOORBELL); + *data16++ = le16toh(data & MPT_DB_DATA_MASK); mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); /* * With the second word, we can now look at the length. * Warn about a reply that's too short (except for IOC FACTS REPLY) */ - if ((reply_len >> 1) != hdr->MsgLength && - (hdr->Function != MPI_FUNCTION_IOC_FACTS)){ + if ((reply_len >> 1) != hdr->MsgLength && + (hdr->Function != MPI_FUNCTION_IOC_FACTS)) { #if __FreeBSD_version >= 500000 mpt_prt(mpt, "reply length does not match message length: " "got %x; expected %zx for function %x\n", @@ -1411,10 +1415,11 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout3\n"); return ETIMEDOUT; } - datum = mpt_read_16(mpt, MPT_OFFSET_DOORBELL); + data = mpt_read(mpt, MPT_OFFSET_DOORBELL); + datum = le16toh(data & MPT_DB_DATA_MASK); if (reply_left-- > 0) - *data16++ = datum & MPT_DB_DATA_MASK; + *data16++ = datum; mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); } @@ -1456,7 +1461,6 @@ { MSG_PORT_FACTS f_req; int error; - /* XXX: Only getting PORT FACTS for Port 0 */ memset(&f_req, 0, sizeof f_req); f_req.Function = MPI_FUNCTION_PORT_FACTS; ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#8 (text+ko) ==== @@ -819,7 +819,6 @@ /******************************* Register Access ******************************/ static __inline void mpt_write(struct mpt_softc *, size_t, uint32_t); static __inline uint32_t mpt_read(struct mpt_softc *, int); -static __inline uint16_t mpt_read_16(struct mpt_softc *, int); static __inline void mpt_pio_write(struct mpt_softc *, size_t, uint32_t); static __inline uint32_t mpt_pio_read(struct mpt_softc *, int); @@ -835,12 +834,6 @@ return (bus_space_read_4(mpt->pci_st, mpt->pci_sh, offset)); } -static __inline uint16_t -mpt_read_16(struct mpt_softc *mpt, int offset) -{ - return (bus_space_read_2(mpt->pci_st, mpt->pci_sh, offset)); -} - /* * Some operations (e.g. diagnostic register writes while the ARM proccessor * is disabled), must be performed using "PCI pio" operations. On non-PCI @@ -1017,7 +1010,7 @@ static __inline request_t * mpt_tag_2_req(struct mpt_softc *mpt, uint32_t tag) { - uint16_t rtg = (uint16_t)(tag >> 18); + uint16_t rtg = tag >> 18; KASSERT(rtg < mpt->tgt_cmds_allocated, ("bad tag %d\n", tag)); KASSERT(mpt->tgt_cmd_ptrs, ("no cmd backpointer array")); KASSERT(mpt->tgt_cmd_ptrs[rtg], ("no cmd backpointer")); From owner-p4-projects@FreeBSD.ORG Wed Jul 12 10:22:35 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DB4E216A4E5; Wed, 12 Jul 2006 10:22:34 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 B73AC16A4DA for ; Wed, 12 Jul 2006 10:22:34 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3F51843D6D for ; Wed, 12 Jul 2006 10:22:23 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CAMNof014317 for ; Wed, 12 Jul 2006 10:22:23 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CAMN6X014314 for perforce@freebsd.org; Wed, 12 Jul 2006 10:22:23 GMT (envelope-from bms@freebsd.org) Date: Wed, 12 Jul 2006 10:22:23 GMT Message-Id: <200607121022.k6CAMN6X014314@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101346 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 10:22:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=101346 Change 101346 by bms@bms_montagne on 2006/07/12 10:21:39 Fold the lcd_init() reference under an ifdef to allow the kernel to link. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#14 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#14 (text+ko) ==== @@ -341,7 +341,9 @@ * XXXMIPS: I think I know how to get it working in more elegant way. * Use external functions for now. */ +#ifdef MIPS32_LCD lcd_init(); +#endif cninit(); mips_init(); From owner-p4-projects@FreeBSD.ORG Wed Jul 12 10:26:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3339D16A4E5; Wed, 12 Jul 2006 10:26:38 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 0D4EF16A4DA for ; Wed, 12 Jul 2006 10:26:38 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E9DB943D9C for ; Wed, 12 Jul 2006 10:26:29 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CAQTMW014500 for ; Wed, 12 Jul 2006 10:26:29 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CAQTdF014497 for perforce@freebsd.org; Wed, 12 Jul 2006 10:26:29 GMT (envelope-from piso@freebsd.org) Date: Wed, 12 Jul 2006 10:26:29 GMT Message-Id: <200607121026.k6CAQTdF014497@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101347 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 10:26:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=101347 Change 101347 by piso@piso_newluxor on 2006/07/12 10:25:54 Slightly updates MD code to correcly use filters and place a comment about interrupts EOIing & masking that was not updated (and should be consequently checked). Affected files ... .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#4 edit .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#5 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#5 edit .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#5 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#4 (text+ko) ==== @@ -116,8 +116,9 @@ /* Execute fast handlers. */ thread = intr_filter_loop(event, frame); + // XXX eoi & mask intr not verified. /* Schedule thread if needed. */ - if (thread) + if (thread & FILTER_SCHEDULE_THREAD) intr_event_schedule_thread(event); else arm_unmask_irq(i); ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#5 (text+ko) ==== @@ -383,7 +383,8 @@ thread = intr_filter_loop(ie, NULL); critical_exit(); - if (thread) { + // XXX eoi & mask intr not verified. + if (thread & FILTER_SCHEDULE_THREAD) { error = intr_event_schedule_thread(ie); KASSERT(error == 0, ("got an impossible stray interrupt")); } else ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#5 (text+ko) ==== @@ -239,8 +239,9 @@ thread = intr_filter_loop(ie, NULL); critical_exit(); + // XXX eoi & mask intr not verified. /* Schedule a heavyweight interrupt process. */ - if (thread) + if (thread & FILTER_SCHEDULE_THREAD) error = intr_event_schedule_thread(ie); if (error == EINVAL) ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#5 (text+ko) ==== @@ -247,8 +247,9 @@ /* Execute fast interrupt handlers directly. */ thread = intr_filter_loop(ie, NULL); + // XXX eoi & mask intr not verified. /* Schedule a heavyweight interrupt process. */ - if (thread) + if (thread & FILTER_SCHEDULE_THREAD) error = intr_event_schedule_thread(ie); if (error == EINVAL) From owner-p4-projects@FreeBSD.ORG Wed Jul 12 10:38:25 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D9CDB16A524; Wed, 12 Jul 2006 10:38:24 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 971A216A4FD for ; Wed, 12 Jul 2006 10:38:24 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B4C543D92 for ; Wed, 12 Jul 2006 10:37:43 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CAbhtx014938 for ; Wed, 12 Jul 2006 10:37:43 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CAbhxn014935 for perforce@freebsd.org; Wed, 12 Jul 2006 10:37:43 GMT (envelope-from piso@freebsd.org) Date: Wed, 12 Jul 2006 10:37:43 GMT Message-Id: <200607121037.k6CAbhxn014935@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101348 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 10:38:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=101348 Change 101348 by piso@piso_newluxor on 2006/07/12 10:37:16 Updated Affected files ... .. //depot/projects/soc2006/intr_filter/notes#4 edit Differences ... ==== //depot/projects/soc2006/intr_filter/notes#4 (text+ko) ==== @@ -40,6 +40,11 @@ that bus_setup_intr() will grow a new filter pointer argument - Fix bus_setup_intr() for all the archs - This should be a commitworthy milestone of some sort +[DONE] +XXX: all the archs (except for i386 & amd64) didn't have their interrupt +EOIing and masking reviewed in MD code + +- Convert a driver to use filter+ithread - Third Pass: This requires some other support work to allow easy setup of kernel threads (not just kernel processes) as well as letting kernel From owner-p4-projects@FreeBSD.ORG Wed Jul 12 12:34:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0C3B616A4E2; Wed, 12 Jul 2006 12:34:23 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 DB55A16A4DA for ; Wed, 12 Jul 2006 12:34:22 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 985CE43D45 for ; Wed, 12 Jul 2006 12:34:22 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CCYM6J025561 for ; Wed, 12 Jul 2006 12:34:22 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CCYMrj025558 for perforce@freebsd.org; Wed, 12 Jul 2006 12:34:22 GMT (envelope-from jhb@freebsd.org) Date: Wed, 12 Jul 2006 12:34:22 GMT Message-Id: <200607121234.k6CCYMrj025558@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101364 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 12:34:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=101364 Change 101364 by jhb@jhb_mutex on 2006/07/12 12:33:40 Simplify the pager stuff in ddb. Everyone who uses paging just uses db_simple_pager(). So, just make that the only pager and instead of setting a quit variable that each db command has to register, add a global variable db_pager_quit that db commands can query to see if the user has requested a quit. Now always enable paging for all ddb commands (though it is up to individual commands to honor db_pager_quit). To try to facilitate quick exit for commands that don't check db_pager_quit, turn off paging for the rest of the current command once a quit has been requested. Affected files ... .. //depot/projects/smpng/sys/ddb/db_command.c#29 edit .. //depot/projects/smpng/sys/ddb/db_output.c#17 edit .. //depot/projects/smpng/sys/ddb/db_output.h#4 edit .. //depot/projects/smpng/sys/ddb/ddb.h#22 edit Differences ... ==== //depot/projects/smpng/sys/ddb/db_command.c#29 (text+ko) ==== @@ -392,8 +392,9 @@ /* * Execute the command. */ + db_enable_pager(); (*cmd->fcn)(addr, have_addr, count, modif); - db_setup_paging(NULL, NULL, -1); + db_disable_pager(); if (cmd->flag & CS_SET_DOT) { /* ==== //depot/projects/smpng/sys/ddb/db_output.c#17 (text+ko) ==== @@ -66,15 +66,15 @@ ((((i) + db_tab_stop_width) / db_tab_stop_width) * db_tab_stop_width) db_expr_t db_max_width = 79; /* output line width */ db_expr_t db_lines_per_page = 20; /* lines per page */ +volatile int db_pager_quit; /* user requested quit */ static int db_newlines; /* # lines this page */ -static int db_maxlines = -1; /* max lines/page when paging */ -static db_page_calloutfcn_t *db_page_callout = NULL; -static void *db_page_callout_arg = NULL; +static int db_maxlines; /* max lines/page when paging */ static int ddb_use_printf = 0; SYSCTL_INT(_debug, OID_AUTO, ddb_use_printf, CTLFLAG_RW, &ddb_use_printf, 0, "use printf for all ddb output"); static void db_putchar(int c, void *arg); +static void db_pager(void); /* * Force pending whitespace. @@ -120,12 +120,10 @@ return; if (c == '\r' || c == '\n') db_check_interrupt(); - if (c == '\n' && db_maxlines > 0 && db_page_callout != NULL) { + if (c == '\n' && db_maxlines > 0) { db_newlines++; - if (db_newlines >= db_maxlines) { - db_maxlines = -1; - db_page_callout(db_page_callout_arg); - } + if (db_newlines >= db_maxlines) + db_pager(); } return; } @@ -149,12 +147,10 @@ db_output_position = 0; db_last_non_space = 0; db_check_interrupt(); - if (db_maxlines > 0 && db_page_callout != NULL) { + if (db_maxlines > 0) { db_newlines++; - if (db_newlines >= db_maxlines) { - db_maxlines = -1; - db_page_callout(db_page_callout_arg); - } + if (db_newlines >= db_maxlines) + db_pager(); } } else if (c == '\r') { @@ -181,27 +177,34 @@ } /* - * Register callout for providing a pager for output. + * Turn on the pager. */ void -db_setup_paging(db_page_calloutfcn_t *callout, void *arg, int maxlines) +db_enable_pager(void) { - - if (db_page_callout == NULL || callout == NULL || arg == - db_page_callout_arg) { - db_page_callout = callout; - db_page_callout_arg = arg; - db_maxlines = maxlines; + if (db_maxlines == 0) { + db_maxlines = db_lines_per_page; db_newlines = 0; + db_pager_quit = 0; } } /* - * A simple paging callout function. If the argument is not null, it - * points to an integer that will be set to 1 if the user asks to quit. + * Turn off the pager. + */ +void +db_disable_pager(void) +{ + db_maxlines = 0; +} + +/* + * A simple paging callout function. It supports several simple more(1)-like + * commands as well as a quit command that sets db_pager_quit which db + * commands can poll to see if they should terminate early. */ void -db_simple_pager(void *arg) +db_pager(void) { int c, done; @@ -214,20 +217,18 @@ case 'j': case '\n': /* Just one more line. */ - db_setup_paging(db_simple_pager, arg, 1); + db_maxlines = 1; done++; break; case 'd': /* Half a page. */ - db_setup_paging(db_simple_pager, arg, - db_lines_per_page / 2); + db_maxlines = db_lines_per_page / 2; done++; break; case 'f': case ' ': /* Another page. */ - db_setup_paging(db_simple_pager, arg, - db_lines_per_page); + db_maxlines = db_lines_per_page; done++; break; case 'q': @@ -235,11 +236,10 @@ case 'x': case 'X': /* Quit */ - if (arg != NULL) { - *(int *)arg = 1; - done++; - break; - } + db_maxlines = 0; + db_pager_quit = 1; + done++; + break; #if 0 /* FALLTHROUGH */ default: ==== //depot/projects/smpng/sys/ddb/db_output.h#4 (text+ko) ==== @@ -38,6 +38,8 @@ * Printing routines for kernel debugger. */ +void db_disable_pager(void); +void db_enable_pager(void); void db_end_line(void); void db_force_whitespace(void); int db_print_position(void); ==== //depot/projects/smpng/sys/ddb/ddb.h#22 (text+ko) ==== @@ -52,8 +52,6 @@ typedef void db_cmdfcn_t(db_expr_t addr, boolean_t have_addr, db_expr_t count, char *modif); -typedef void db_page_calloutfcn_t(void *arg); - #define DB_COMMAND(cmd_name, func_name) \ DB_FUNC(cmd_name, func_name, db_cmd_set, 0, NULL) #define DB_SHOW_COMMAND(cmd_name, func_name) \ @@ -85,6 +83,7 @@ extern int db_inst_count; extern int db_load_count; extern int db_store_count; +extern volatile int db_pager_quit; extern db_expr_t db_radix; extern db_expr_t db_max_width; extern db_expr_t db_tab_stop_width; @@ -118,8 +117,6 @@ void db_restart_at_pc(boolean_t watchpt); int db_set_variable(db_expr_t value); void db_set_watchpoints(void); -void db_setup_paging(db_page_calloutfcn_t *callout, void *arg, - int maxlines); void db_skip_to_eol(void); boolean_t db_stop_at_pc(boolean_t *is_breakpoint); #define db_strcpy strcpy @@ -149,8 +146,6 @@ db_cmdfcn_t db_watchpoint_cmd; db_cmdfcn_t db_write_cmd; -db_page_calloutfcn_t db_simple_pager; - /* * Command table. */ From owner-p4-projects@FreeBSD.ORG Wed Jul 12 13:34:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A76DE16A4E0; Wed, 12 Jul 2006 13:34:51 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 5332A16A4DA for ; Wed, 12 Jul 2006 13:34:51 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F293343D55 for ; Wed, 12 Jul 2006 13:34:50 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CDYojg037504 for ; Wed, 12 Jul 2006 13:34:50 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CDYoqd037498 for perforce@freebsd.org; Wed, 12 Jul 2006 13:34:50 GMT (envelope-from jhb@freebsd.org) Date: Wed, 12 Jul 2006 13:34:50 GMT Message-Id: <200607121334.k6CDYoqd037498@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101373 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 13:34:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=101373 Change 101373 by jhb@jhb_mutex on 2006/07/12 13:34:27 Convert db commands to use new pager interface. Non-normal changes include: - 'show idt' on i386 and pc98 didn't actually check the quit flag, now it does. - 'show intr' didn't actually check the quit flag either, but now it does. - 'show ktr' with the 'a' modifier has to disable the implicit paging via a layering violation now to preserve it's semantics. - sparc64 stack trace functions no longer have to pass quit pointers around since db_utrace() can just check db_pager_quit directly. Affected files ... .. //depot/projects/smpng/sys/amd64/amd64/db_trace.c#18 edit .. //depot/projects/smpng/sys/amd64/amd64/intr_machdep.c#17 edit .. //depot/projects/smpng/sys/amd64/amd64/local_apic.c#22 edit .. //depot/projects/smpng/sys/arm/arm/db_trace.c#14 edit .. //depot/projects/smpng/sys/ddb/db_command.c#30 edit .. //depot/projects/smpng/sys/ddb/db_ps.c#33 edit .. //depot/projects/smpng/sys/ddb/db_thread.c#7 edit .. //depot/projects/smpng/sys/dev/pci/pci.c#71 edit .. //depot/projects/smpng/sys/i386/i386/db_trace.c#30 edit .. //depot/projects/smpng/sys/i386/i386/intr_machdep.c#18 edit .. //depot/projects/smpng/sys/i386/i386/local_apic.c#43 edit .. //depot/projects/smpng/sys/i386/i386/machdep.c#108 edit .. //depot/projects/smpng/sys/ia64/ia64/db_machdep.c#2 edit .. //depot/projects/smpng/sys/kern/kern_intr.c#77 edit .. //depot/projects/smpng/sys/kern/kern_ktr.c#34 edit .. //depot/projects/smpng/sys/kern/subr_prf.c#45 edit .. //depot/projects/smpng/sys/pc98/pc98/machdep.c#14 edit .. //depot/projects/smpng/sys/powerpc/powerpc/db_trace.c#15 edit .. //depot/projects/smpng/sys/sparc64/sparc64/db_trace.c#26 edit Differences ... ==== //depot/projects/smpng/sys/amd64/amd64/db_trace.c#18 (text+ko) ==== @@ -390,16 +390,14 @@ long *argp; db_expr_t offset; c_db_sym_t sym; - int narg, quit; + int narg; boolean_t first; if (count == -1) count = 1024; first = TRUE; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && !quit) { + while (count-- && !db_pager_quit) { sym = db_search_symbol(pc, DB_STGY_ANY, &offset); db_symbol_values(sym, &name, NULL); ==== //depot/projects/smpng/sys/amd64/amd64/intr_machdep.c#17 (text+ko) ==== @@ -338,16 +338,14 @@ DB_SHOW_COMMAND(irqs, db_show_irqs) { struct intsrc **isrc; - int i, quit, verbose; + int i, verbose; - quit = 0; if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; isrc = interrupt_sources; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < NUM_IO_INTS && !quit; i++, isrc++) + for (i = 0; i < NUM_IO_INTS && !db_pager_quit; i++, isrc++) if (*isrc != NULL) db_dump_intr_event((*isrc)->is_event, verbose); } ==== //depot/projects/smpng/sys/amd64/amd64/local_apic.c#22 (text+ko) ==== @@ -755,18 +755,16 @@ DB_SHOW_COMMAND(apic, db_show_apic) { struct intsrc *isrc; - int quit, i, verbose; + int i, verbose; u_int irq; - quit = 0; if (strcmp(modif, "vv") == 0) verbose = 2; else if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < APIC_NUM_IOINTS + 1 && !quit; i++) { + for (i = 0; i < APIC_NUM_IOINTS + 1 && !db_pager_quit; i++) { irq = ioint_irqs[i]; if (irq != 0 && irq != IRQ_SYSCALL) { db_printf("vec 0x%2x -> ", i + APIC_IO_INTS); ==== //depot/projects/smpng/sys/arm/arm/db_trace.c#14 (text+ko) ==== @@ -93,15 +93,13 @@ db_expr_t value; db_expr_t offset; boolean_t kernel_only = TRUE; - int scp_offset, quit; + int scp_offset; frame = (u_int32_t *)addr; lastframe = NULL; scp_offset = -(get_pc_str_offset() >> 2); - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && frame != NULL && !quit) { + while (count-- && frame != NULL && !db_pager_quit) { db_addr_t scp; u_int32_t savecode; int r; ==== //depot/projects/smpng/sys/ddb/db_command.c#30 (text+ko) ==== @@ -676,16 +676,13 @@ { struct proc *p; struct thread *td; - int quit; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); LIST_FOREACH(p, &allproc, p_list) { FOREACH_THREAD_IN_PROC(p, td) { db_printf("\nTracing command %s pid %d tid %ld td %p\n", p->p_comm, p->p_pid, (long)td->td_tid, td); db_trace_thread(td, -1); - if (quit) + if (db_trace_quit) return; } } ==== //depot/projects/smpng/sys/ddb/db_ps.c#33 (text+ko) ==== @@ -73,23 +73,21 @@ struct ucred *cred; struct pgrp *pgrp; char state[9]; - int np, quit, rflag, sflag, dflag, lflag, wflag; + int np, rflag, sflag, dflag, lflag, wflag; np = nprocs; - quit = 0; if (!LIST_EMPTY(&allproc)) p = LIST_FIRST(&allproc); else p = &proc0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); #ifdef __LP64__ db_printf(" pid uid ppid pgrp state wmesg wchan cmd\n"); #else db_printf(" pid uid ppid pgrp state wmesg wchan cmd\n"); #endif - while (--np >= 0 && !quit) { + while (--np >= 0 && !db_pager_quit) { if (p == NULL) { db_printf("oops, ran out of processes early!\n"); break; @@ -191,7 +189,7 @@ #endif FOREACH_THREAD_IN_PROC(p, td) { dumpthread(p, td, p->p_flag & P_HADTHREADS); - if (quit) + if (db_pager_quit) break; } @@ -363,7 +361,7 @@ { struct thread *td; struct proc *p; - int i, quit; + int i; /* Determine which process to examine. */ if (have_addr) @@ -371,8 +369,6 @@ else p = kdb_thread->td_proc; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); db_printf("Process %d (%s) at %p:\n", p->p_pid, p->p_comm, p); db_printf(" state: "); switch (p->p_state) { @@ -411,7 +407,7 @@ db_printf(" threads: %d\n", p->p_numthreads); FOREACH_THREAD_IN_PROC(p, td) { dumpthread(p, td, 1); - if (quit) + if (db_pager_quit) break; } } ==== //depot/projects/smpng/sys/ddb/db_thread.c#7 (text+ko) ==== @@ -93,13 +93,9 @@ jmp_buf jb; void *prev_jb; struct thread *thr; - int pager_quit; - - db_setup_paging(db_simple_pager, &pager_quit, db_lines_per_page); - pager_quit = 0; thr = kdb_thr_first(); - while (!pager_quit && thr != NULL) { + while (!db_pager_quit && thr != NULL) { db_printf(" %6ld (%p) ", (long)thr->td_tid, thr); prev_jb = kdb_jmpbuf(jb); if (setjmp(jb) == 0) { ==== //depot/projects/smpng/sys/dev/pci/pci.c#71 (text+ko) ==== @@ -1716,7 +1716,7 @@ struct devlist *devlist_head; struct pci_conf *p; const char *name; - int i, error, none_count, quit; + int i, error, none_count; none_count = 0; /* get the head of the device queue */ @@ -1725,10 +1725,9 @@ /* * Go through the list of devices and print out devices */ - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (error = 0, i = 0, quit = 0, + for (error = 0, i = 0, dinfo = STAILQ_FIRST(devlist_head); - (dinfo != NULL) && (error == 0) && (i < pci_numdevs) && !quit; + (dinfo != NULL) && (error == 0) && (i < pci_numdevs) && !db_pager_quit; dinfo = STAILQ_NEXT(dinfo, pci_links), i++) { /* Populate pd_name and pd_unit */ ==== //depot/projects/smpng/sys/i386/i386/db_trace.c#30 (text+ko) ==== @@ -401,7 +401,7 @@ int *argp; db_expr_t offset; c_db_sym_t sym; - int instr, narg, quit; + int instr, narg; boolean_t first; /* @@ -432,9 +432,7 @@ count = 1024; first = TRUE; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && !quit) { + while (count-- && !db_pager_quit) { sym = db_search_symbol(pc, DB_STGY_ANY, &offset); db_symbol_values(sym, &name, NULL); ==== //depot/projects/smpng/sys/i386/i386/intr_machdep.c#18 (text+ko) ==== @@ -338,16 +338,14 @@ DB_SHOW_COMMAND(irqs, db_show_irqs) { struct intsrc **isrc; - int i, quit, verbose; + int i, verbose; - quit = 0; if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; isrc = interrupt_sources; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < NUM_IO_INTS && !quit; i++, isrc++) + for (i = 0; i < NUM_IO_INTS && !db_pager_quit; i++, isrc++) if (*isrc != NULL) db_dump_intr_event((*isrc)->is_event, verbose); } ==== //depot/projects/smpng/sys/i386/i386/local_apic.c#43 (text+ko) ==== @@ -758,18 +758,16 @@ DB_SHOW_COMMAND(apic, db_show_apic) { struct intsrc *isrc; - int quit, i, verbose; + int i, verbose; u_int irq; - quit = 0; if (strcmp(modif, "vv") == 0) verbose = 2; else if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < APIC_NUM_IOINTS + 1 && !quit; i++) { + for (i = 0; i < APIC_NUM_IOINTS + 1 && !db_pager_quit; i++) { irq = ioint_irqs[i]; if (irq != 0 && irq != IRQ_SYSCALL) { db_printf("vec 0x%2x -> ", i + APIC_IO_INTS); ==== //depot/projects/smpng/sys/i386/i386/machdep.c#108 (text+ko) ==== @@ -1584,12 +1584,11 @@ DB_SHOW_COMMAND(idt, db_show_idt) { struct gate_descriptor *ip; - int idx, quit; + int idx; uintptr_t func; ip = idt; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (idx = 0, quit = 0; idx < NIDT; idx++) { + for (idx = 0; idx < NIDT && !db_pager_quit; idx++) { func = (ip->gd_hioffset << 16 | ip->gd_looffset); if (func != (uintptr_t)&IDTVEC(rsvd)) { db_printf("%3d\t", idx); ==== //depot/projects/smpng/sys/ia64/ia64/db_machdep.c#2 (text+ko) ==== @@ -228,12 +228,10 @@ db_expr_t offset; uint64_t bsp, cfm, ip, pfs, reg, sp; c_db_sym_t sym; - int args, error, i, quit; + int args, error, i; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); error = unw_create_from_pcb(&rs, pcb); - while (!error && count-- && !quit) { + while (!error && count-- && !db_pager_quit) { error = unw_get_cfm(&rs, &cfm); if (!error) error = unw_get_bsp(&rs, &bsp); ==== //depot/projects/smpng/sys/kern/kern_intr.c#77 (text+ko) ==== @@ -905,16 +905,16 @@ DB_SHOW_COMMAND(intr, db_show_intr) { struct intr_event *ie; - int quit, all, verbose; + int all, verbose; - quit = 0; verbose = index(modif, 'v') != NULL; all = index(modif, 'a') != NULL; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); TAILQ_FOREACH(ie, &event_list, ie_list) { if (!all && TAILQ_EMPTY(&ie->ie_handlers)) continue; db_dump_intr_event(ie, verbose); + if (db_pager_quit) + break; } } #endif /* DDB */ @@ -976,11 +976,9 @@ { u_long *i; char *cp; - int quit; cp = intrnames; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = intrcnt, quit = 0; i != eintrcnt && !quit; i++) { + for (i = intrcnt; i != eintrcnt && !db_pager_quit; i++) { if (*cp == '\0') break; if (*i != 0) ==== //depot/projects/smpng/sys/kern/kern_ktr.c#34 (text+ko) ==== @@ -55,8 +55,10 @@ #include #endif - +#ifdef DDB #include +#include +#endif #ifndef KTR_ENTRIES #define KTR_ENTRIES 1024 @@ -288,22 +290,17 @@ DB_SHOW_COMMAND(ktr, db_ktr_all) { - int quit; - quit = 0; tstate.cur = (ktr_idx - 1) & (KTR_ENTRIES - 1); tstate.first = -1; - if (strcmp(modif, "v") == 0) - db_ktr_verbose = 1; - else - db_ktr_verbose = 0; - if (strcmp(modif, "a") == 0) { + db_ktr_verbose = index(modif, 'v') != NULL; + if (index(modif, 'a') != NULL) { + db_disable_pager(); while (cncheckc() != -1) if (db_mach_vtrace() == 0) break; } else { - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (!quit) + while (!db_pager_quit) if (db_mach_vtrace() == 0) break; } ==== //depot/projects/smpng/sys/kern/subr_prf.c#45 (text+ko) ==== @@ -912,20 +912,17 @@ DB_SHOW_COMMAND(msgbuf, db_show_msgbuf) { - int i, j, quit; - - quit = 0; + int i, j; if (!msgbufmapped) { db_printf("msgbuf not mapped yet\n"); return; } - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); db_printf("msgbufp = %p\n", msgbufp); db_printf("magic = %x, size = %d, r= %u, w = %u, ptr = %p, cksum= %u\n", msgbufp->msg_magic, msgbufp->msg_size, msgbufp->msg_rseq, msgbufp->msg_wseq, msgbufp->msg_ptr, msgbufp->msg_cksum); - for (i = 0; i < msgbufp->msg_size && !quit; i++) { + for (i = 0; i < msgbufp->msg_size && !db_pager_quit; i++) { j = MSGBUF_SEQ_TO_POS(msgbufp, i + msgbufp->msg_rseq); db_printf("%c", msgbufp->msg_ptr[j]); } ==== //depot/projects/smpng/sys/pc98/pc98/machdep.c#14 (text+ko) ==== @@ -1581,12 +1581,11 @@ DB_SHOW_COMMAND(idt, db_show_idt) { struct gate_descriptor *ip; - int idx, quit; + int idx; uintptr_t func; ip = idt; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (idx = 0, quit = 0; idx < NIDT; idx++) { + for (idx = 0; idx < NIDT && !db_pager_quit; idx++) { func = (ip->gd_hioffset << 16 | ip->gd_looffset); if (func != (uintptr_t)&IDTVEC(rsvd)) { db_printf("%3d\t", idx); ==== //depot/projects/smpng/sys/powerpc/powerpc/db_trace.c#15 (text+ko) ==== @@ -131,7 +131,6 @@ const char *symname; boolean_t kernel_only = TRUE; boolean_t full = FALSE; - int quit; #if 0 { @@ -151,9 +150,7 @@ stackframe = fp; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (!quit) { + while (!db_pager_quit) { if (stackframe < PAGE_SIZE) break; ==== //depot/projects/smpng/sys/sparc64/sparc64/db_trace.c#26 (text+ko) ==== @@ -103,7 +103,7 @@ * User stack trace (debugging aid). */ static void -db_utrace(struct thread *td, struct trapframe *tf, int count, int *quitp) +db_utrace(struct thread *td, struct trapframe *tf, int count) { struct pcb *pcb; db_addr_t sp, rsp, o7, pc; @@ -115,7 +115,7 @@ FALSE); pc = db_get_value((db_addr_t)&tf->tf_tpc, sizeof(tf->tf_tpc), FALSE); db_printf("user trace: trap %%o7=%#lx\n", o7); - while (count-- && sp != 0 && !*quitp) { + while (count-- && sp != 0 && !db_pager_quit) { db_printf("pc %#lx, sp %#lx\n", pc, sp); /* First, check whether the frame is in the pcb. */ found = 0; @@ -141,7 +141,7 @@ } static int -db_print_trap(struct thread *td, struct trapframe *tf, int count, int *quitp) +db_print_trap(struct thread *td, struct trapframe *tf, int count) { struct proc *p; const char *symname; @@ -219,7 +219,7 @@ db_printf("userland() at "); db_printsym(tpc, DB_STGY_PROC); db_printf("\n"); - db_utrace(td, tf, count, quitp); + db_utrace(td, tf, count); } return (user); } @@ -236,7 +236,6 @@ db_addr_t pc; int trap; int user; - int quit; if (count == -1) count = 1024; @@ -244,9 +243,7 @@ trap = 0; user = 0; npc = 0; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && !user && !quit) { + while (count-- && !user && !db_pager_quit) { pc = (db_addr_t)db_get_value((db_addr_t)&fp->fr_pc, sizeof(fp->fr_pc), FALSE); if (trap) { @@ -272,7 +269,7 @@ tf = (struct trapframe *)(fp + 1); npc = db_get_value((db_addr_t)&tf->tf_tpc, sizeof(tf->tf_tpc), FALSE); - user = db_print_trap(td, tf, count, &quit); + user = db_print_trap(td, tf, count); trap = 1; } else { db_printf("%s() at ", name); From owner-p4-projects@FreeBSD.ORG Wed Jul 12 13:41:02 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 277C516A4E1; Wed, 12 Jul 2006 13:41:02 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 DFE6316A4DF for ; Wed, 12 Jul 2006 13:41:01 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6656943D4C for ; Wed, 12 Jul 2006 13:41:01 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CDf1V3037986 for ; Wed, 12 Jul 2006 13:41:01 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CDf1vK037983 for perforce@freebsd.org; Wed, 12 Jul 2006 13:41:01 GMT (envelope-from jhb@freebsd.org) Date: Wed, 12 Jul 2006 13:41:01 GMT Message-Id: <200607121341.k6CDf1vK037983@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101376 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 13:41:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=101376 Change 101376 by jhb@jhb_mutex on 2006/07/12 13:40:21 Check db_pager_quit in 'show threadchain', 'show lockchain', and 'show allchains'. Otherwise 'show threadchain' could loop forever during a deadlock. Affected files ... .. //depot/projects/smpng/sys/kern/subr_turnstile.c#29 edit Differences ... ==== //depot/projects/smpng/sys/kern/subr_turnstile.c#29 (text+ko) ==== @@ -1046,7 +1046,7 @@ * Follow the chain. We keep walking as long as the thread is * blocked on a turnstile that has an owner. */ - for (;;) { + while (!db_pager_quit) { db_printf("%sthread %d (pid %d, %s) ", prefix, td->td_tid, td->td_proc->p_pid, td->td_name[0] != '\0' ? td->td_name : td->td_proc->p_comm); @@ -1110,6 +1110,8 @@ db_printf("chain %d:\n", i++); print_threadchain(td, " "); } + if (db_pager_quit) + return; } } } @@ -1122,6 +1124,8 @@ struct turnstile *ts; int i; + if (db_pager_quit) + return; for (i = 0; i < indent; i++) db_printf(" "); print_thread(td, "thread "); @@ -1137,6 +1141,8 @@ struct thread *td; int i; + if (db_pager_quit) + return; lock = ts->ts_lockobj; class = LOCK_CLASS(lock); for (i = 0; i < indent; i++) From owner-p4-projects@FreeBSD.ORG Wed Jul 12 13:47:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A3C8B16A4E8; Wed, 12 Jul 2006 13:47:14 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 678FD16A4E5 for ; Wed, 12 Jul 2006 13:47:14 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A22F43D4C for ; Wed, 12 Jul 2006 13:47:12 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CDlCib038477 for ; Wed, 12 Jul 2006 13:47:12 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CDlBKr038473 for perforce@freebsd.org; Wed, 12 Jul 2006 13:47:11 GMT (envelope-from jhb@freebsd.org) Date: Wed, 12 Jul 2006 13:47:11 GMT Message-Id: <200607121347.k6CDlBKr038473@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101378 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 13:47:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=101378 Change 101378 by jhb@jhb_mutex on 2006/07/12 13:46:13 Compile. Affected files ... .. //depot/projects/smpng/sys/ddb/db_command.c#31 edit Differences ... ==== //depot/projects/smpng/sys/ddb/db_command.c#31 (text+ko) ==== @@ -682,7 +682,7 @@ db_printf("\nTracing command %s pid %d tid %ld td %p\n", p->p_comm, p->p_pid, (long)td->td_tid, td); db_trace_thread(td, -1); - if (db_trace_quit) + if (db_pager_quit) return; } } From owner-p4-projects@FreeBSD.ORG Wed Jul 12 13:51:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5E11216A4E0; Wed, 12 Jul 2006 13:51:18 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 34E4516A4DD for ; Wed, 12 Jul 2006 13:51:18 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DB14043D4C for ; Wed, 12 Jul 2006 13:51:17 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CDpHvW038691 for ; Wed, 12 Jul 2006 13:51:17 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CDpHBJ038688 for perforce@freebsd.org; Wed, 12 Jul 2006 13:51:17 GMT (envelope-from bms@freebsd.org) Date: Wed, 12 Jul 2006 13:51:17 GMT Message-Id: <200607121351.k6CDpHBJ038688@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101379 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 13:51:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=101379 Change 101379 by bms@bms_montagne on 2006/07/12 13:51:00 Add the necessary files to build a cross-gdb for FreeBSD/mips. Note that these may not be complete. In particular, the kgdb functions are stubs and need to be written. Affected files ... .. //depot/projects/mips2/src/contrib/gdb/gdb/config/mips/fbsd.mh#1 add .. //depot/projects/mips2/src/contrib/gdb/gdb/config/mips/fbsd.mt#1 add .. //depot/projects/mips2/src/contrib/gdb/gdb/config/mips/nm-fbsd.h#1 add .. //depot/projects/mips2/src/contrib/gdb/gdb/config/mips/tm-fbsd.h#1 add .. //depot/projects/mips2/src/contrib/gdb/gdb/mipsfbsd-nat.c#1 add .. //depot/projects/mips2/src/contrib/gdb/gdb/mipsfbsd-tdep.c#1 add .. //depot/projects/mips2/src/contrib/gdb/gdb/mipsfbsd-tdep.h#1 add .. //depot/projects/mips2/src/gnu/usr.bin/gdb/arch/mips/Makefile#1 add .. //depot/projects/mips2/src/gnu/usr.bin/gdb/arch/mips/config.h#1 add .. //depot/projects/mips2/src/gnu/usr.bin/gdb/arch/mips/init.c#1 add .. //depot/projects/mips2/src/gnu/usr.bin/gdb/kgdb/trgt_mips.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Jul 12 14:03:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E92CA16A4E6; Wed, 12 Jul 2006 14:03:35 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B430C16A4DD for ; Wed, 12 Jul 2006 14:03:35 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 65ABF43D49 for ; Wed, 12 Jul 2006 14:03:35 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CE3Zd5040946 for ; Wed, 12 Jul 2006 14:03:35 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CE3Z7Q040943 for perforce@freebsd.org; Wed, 12 Jul 2006 14:03:35 GMT (envelope-from rdivacky@FreeBSD.org) Date: Wed, 12 Jul 2006 14:03:35 GMT Message-Id: <200607121403.k6CE3Z7Q040943@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101381 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 14:03:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=101381 Change 101381 by rdivacky@rdivacky_witten on 2006/07/12 14:02:49 Make linux_futex.c compilable with -DDEBUG. Similar changes were made to linux_machdep.c but I cannot commit them because I have other changes pending there. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_futex.c#3 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/compat/linux/linux_futex.c#3 (text+ko) ==== @@ -107,9 +107,9 @@ #ifdef DEBUG if (ldebug(sys_futex)) - printf("FUTEX_WAIT %d.%d: val = %d, uaddr = %p, " + printf("FUTEX_WAIT %d: val = %d, uaddr = %p, " "*uaddr = %d, timeout = %d.%09ld\n", - l->l_proc->p_pid, l->l_lid, args->val, + td->td_proc->p_pid, args->val, args->uaddr, val, timeout.tv_sec, timeout.tv_nsec); #endif tv.tv_usec = timeout.tv_sec * 1000 + timeout.tv_nsec / 1000000; @@ -121,9 +121,8 @@ #ifdef DEBUG if (ldebug(sys_futex)) - printf("FUTEX_WAIT %d.%d: uaddr = %p, " - "ret = %d\n", l->l_proc->p_pid, l->l_lid, - args->uaddr, ret); + printf("FUTEX_WAIT %d: uaddr = %p, " + "ret = %d\n", td->td_proc->p_pid, args->uaddr, ret); #endif switch (ret) { @@ -136,8 +135,8 @@ case 0: /* FUTEX_WAKE received */ #ifdef DEBUG if (ldebug(sys_futex)) - printf("FUTEX_WAIT %d.%d: uaddr = %p, got FUTEX_WAKE\n", - l->l_proc->p_pid, l->l_lid, args->uaddr); + printf("FUTEX_WAIT %d: uaddr = %p, got FUTEX_WAKE\n", + td->td_proc->p_pid, args->uaddr); #endif return 0; break; @@ -160,9 +159,8 @@ */ #ifdef DEBUG if (ldebug(sys_futex)) - printf("FUTEX_WAKE %d.%d: uaddr = %p, val = %d\n", - l->l_proc->p_pid, l->l_lid, - args->uaddr, args->val); + printf("FUTEX_WAKE %d: uaddr = %p, val = %d\n", + td->td_proc->p_pid, args->uaddr, args->val); #endif f = futex_get(args->uaddr); td->td_retval[0] = futex_wake(f, args->val, NULL); @@ -256,8 +254,8 @@ #ifdef DEBUG if (ldebug(sys_futex)) - printf("FUTEX --> %d.%d tlseep timeout = %ld\n", l->l_proc->p_pid, - l->l_lid, timeout); + printf("FUTEX --> %d tlseep timeout = %ld\n", td->td_proc->p_pid, + timeout); #endif ret = tsleep(wp, PCATCH|PZERO, "linuxfutex", timeout); From owner-p4-projects@FreeBSD.ORG Wed Jul 12 15:48:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2C30616A4DE; Wed, 12 Jul 2006 15:48:03 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 E6EDA16A4DA for ; Wed, 12 Jul 2006 15:48:02 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8F5BB43D70 for ; Wed, 12 Jul 2006 15:47:59 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CFlxJ5050171 for ; Wed, 12 Jul 2006 15:47:59 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CFlxYg050168 for perforce@freebsd.org; Wed, 12 Jul 2006 15:47:59 GMT (envelope-from jhb@freebsd.org) Date: Wed, 12 Jul 2006 15:47:59 GMT Message-Id: <200607121547.k6CFlxYg050168@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101394 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 15:48:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=101394 Change 101394 by jhb@jhb_mutex on 2006/07/12 15:47:43 Bah, reset db_newlines when the pager finishes. Affected files ... .. //depot/projects/smpng/sys/ddb/db_output.c#18 edit Differences ... ==== //depot/projects/smpng/sys/ddb/db_output.c#18 (text+ko) ==== @@ -248,6 +248,7 @@ } } db_printf(" \r"); + db_newlines = 0; } /* From owner-p4-projects@FreeBSD.ORG Wed Jul 12 16:18:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AE10F16A4DE; Wed, 12 Jul 2006 16:18:40 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 7249B16A4DA for ; Wed, 12 Jul 2006 16:18:40 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2CD4A43D66 for ; Wed, 12 Jul 2006 16:18:38 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CGIcZc052817 for ; Wed, 12 Jul 2006 16:18:38 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CGIb1P052814 for perforce@freebsd.org; Wed, 12 Jul 2006 16:18:37 GMT (envelope-from clem1@FreeBSD.org) Date: Wed, 12 Jul 2006 16:18:37 GMT Message-Id: <200607121618.k6CGIb1P052814@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Clément Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 101395 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 16:18:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101395 Change 101395 by clem1@clem1_ipv6vulns on 2006/07/12 16:18:23 syslog DAD messages and print if the node claims to be a router or not. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/db.c#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/ndpwatch.c#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/report.c#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/report.h#2 edit Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/db.c#2 (text+ko) ==== @@ -90,7 +90,7 @@ register u_int len; u_char *e2; time_t t2; - + /* Lookup ipv6 address */ ap = ainfo_find(a); @@ -99,7 +99,7 @@ ep = ap->elist[0]; if (MEMCMP(e, ep->e, 6) == 0) { if (t - ep->t > NEWACTIVITY_DELTA) { - report("new activity", a, e, NULL, &t, &ep->t); + report("new activity", a, e, NULL, r, &t, &ep->t); } ep->t = t; return (1); @@ -110,7 +110,7 @@ if (ap->ecount == 0) { ap->ecount = 1; ap->elist[0] = elist_alloc(a, e, t, h); - report("new station", a, e, NULL, &t, NULL); + report("new station", a, e, NULL, r, &t, NULL); return (1); } @@ -134,7 +134,7 @@ /* New ether address */ e2 = ap->elist[0]->e; t2 = ap->elist[0]->t; - report("changed ethernet address", a, e, e2, &t, &t2); + report("changed ethernet address", a, e, e2, r, &t, &t2); /* Make room at head of list */ alist_alloc(ap); len = ap->ecount * sizeof(ap->elist[0]); ==== //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/ndpwatch.c#2 (text+ko) ==== @@ -239,6 +239,15 @@ ndp = (struct ndp_header *)(pk + ph->len - NDP_S - NDP_OPT_S); opt = (struct ndp_option *)(pk + ph->len - NDP_OPT_S); + /* is it a DAD message ? */ + if (IN6_IS_ADDR_UNSPECIFIED(&ip6->src) && ndp->type == 135) + { + syslog(LOG_NOTICE, "Duplicated address detection asked for " + "%s from %s\n", inet_ntop(AF_INET6, &ndp->target, ip, + INET6_ADDRSTRLEN), e2str(opt->mac)); + return; + } + if (!sanity_icmp6(ndp, opt)) { /* syslog has been filled */ @@ -254,7 +263,7 @@ return; } t = ph->ts.tv_sec; - if (!ent_add(&ndp->target, opt->mac, ndp->reserved >> 31, t, NULL)) + if (!ent_add(&ndp->target, opt->mac, ndp->reserved >> 7, t, NULL)) { syslog(LOG_ERR, "ent_addr(%s, %s, ...) failed\n", inet_ntop(AF_INET6, &ndp->target, ip, INET6_ADDRSTRLEN), ==== //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/report.c#2 (text+ko) ==== @@ -220,7 +220,8 @@ void report(register char *title, struct in6_addr *a, register u_char *e1, - register u_char *e2, register time_t *t1p, register time_t *t2p) + register u_char *e2, register u_int8_t r, register time_t *t1p, + register time_t *t2p) { register char *cp; register int fd, pid; @@ -293,6 +294,7 @@ (void)fprintf(f, fmt, "ip address", inet_ntop(AF_INET6, a, ip, INET6_ADDRSTRLEN)); (void)fprintf(f, fmt, "ethernet address", e2str(e1)); + (void)fprintf(f, fmt, "router", (r) ? "YES" : "no"); if (e2) (void)fprintf(f, fmt, "old ethernet address", e2str(e2)); if (t1p) ==== //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ndpwatch/report.h#2 (text+ko) ==== @@ -1,2 +1,2 @@ -void report(char *, struct in6_addr *, u_char *, u_char *, time_t *, time_t *); +void report(char *, struct in6_addr *, u_char *, u_char *, u_int8_t r, time_t *, time_t *); From owner-p4-projects@FreeBSD.ORG Wed Jul 12 20:21:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D45AE16A68D; Wed, 12 Jul 2006 20:21:48 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 AA4FC16A684 for ; Wed, 12 Jul 2006 20:21:48 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 739D543D49 for ; Wed, 12 Jul 2006 20:21:48 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CKLm81082687 for ; Wed, 12 Jul 2006 20:21:48 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CKLmhM082684 for perforce@freebsd.org; Wed, 12 Jul 2006 20:21:48 GMT (envelope-from gabor@FreeBSD.org) Date: Wed, 12 Jul 2006 20:21:48 GMT Message-Id: <200607122021.k6CKLmhM082684@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101411 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 20:21:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=101411 Change 101411 by gabor@gabor_spitfire on 2006/07/12 20:21:16 Ports can only be installed with DESTDIR set if DESTDIR_READY is set as well. The DESTDIR implementation is a big change to our ports infrastructure, so we can't just commit these changes to Mk/, ports have to be tested and fixed as well. This macro will help us to accomplish this. Suggested by: sem Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#19 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#19 (text+ko) ==== @@ -502,6 +502,9 @@ # under /bla/var/db/pkg. # Default: / (not set) # +# DESTDIR_READY - You should set this in your port's Makefile if your port is +# ready to be used with DESTDIR set. +# # X11BASE - Where X11 ports install things. # Default: /usr/X11R6 # LOCALBASE - Where non-X11 ports install things. @@ -1518,6 +1521,10 @@ _POSTMKINCLUDED= yes +.if !defined(DESTDIR_READY) +IGNORE= is not ready to be used with DESTDIR +.endif + WRKDIR?= ${WRKDIRPREFIX}${.CURDIR}/work .if defined(NO_WRKSUBDIR) WRKSRC?= ${WRKDIR} From owner-p4-projects@FreeBSD.ORG Wed Jul 12 22:16:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B562F16A4DE; Wed, 12 Jul 2006 22:16:13 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8C99F16A4DA for ; Wed, 12 Jul 2006 22:16:13 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2824543D5C for ; Wed, 12 Jul 2006 22:16:13 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CMGDap099444 for ; Wed, 12 Jul 2006 22:16:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CMGCQp099441 for perforce@freebsd.org; Wed, 12 Jul 2006 22:16:12 GMT (envelope-from imp@freebsd.org) Date: Wed, 12 Jul 2006 22:16:12 GMT Message-Id: <200607122216.k6CMGCQp099441@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101418 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 22:16:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=101418 Change 101418 by imp@imp_lighthouse on 2006/07/12 22:15:25 nits Affected files ... .. //depot/projects/arm/src/sys/dev/pci/pci.c#11 edit .. //depot/projects/arm/src/sys/dev/pci/pci_private.h#6 edit Differences ... ==== //depot/projects/arm/src/sys/dev/pci/pci.c#11 (text+ko) ==== @@ -90,8 +90,6 @@ static void pci_hdrtypedata(device_t pcib, int b, int s, int f, pcicfgregs *cfg); static void pci_read_extcap(device_t pcib, pcicfgregs *cfg); -static void pci_hint_device_unit(device_t bus, device_t child, - int *unit); static device_method_t pci_methods[] = { /* Device interface */ ==== //depot/projects/arm/src/sys/dev/pci/pci_private.h#6 (text+ko) ==== @@ -76,6 +76,8 @@ char *buf, size_t buflen); int pci_child_pnpinfo_str_method(device_t cbdev, device_t child, char *buf, size_t buflen); +void pci_hint_device_unit(device_t bus, device_t child, + int *unit); int pci_assign_interrupt_method(device_t dev, device_t child); int pci_resume(device_t dev); int pci_suspend(device_t dev); From owner-p4-projects@FreeBSD.ORG Wed Jul 12 22:16:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E9B2D16A53A; Wed, 12 Jul 2006 22:16:13 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C788216A501 for ; Wed, 12 Jul 2006 22:16:13 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 83B0543D5E for ; Wed, 12 Jul 2006 22:16:13 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CMGD3Q099450 for ; Wed, 12 Jul 2006 22:16:13 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CMGDdR099447 for perforce@freebsd.org; Wed, 12 Jul 2006 22:16:13 GMT (envelope-from imp@freebsd.org) Date: Wed, 12 Jul 2006 22:16:13 GMT Message-Id: <200607122216.k6CMGDdR099447@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101419 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 22:16:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101419 Change 101419 by imp@imp_lighthouse on 2006/07/12 22:15:41 optimize Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/env_vars.c#6 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/bootspi/env_vars.c#6 (text+ko) ==== @@ -106,23 +106,15 @@ void LoadBootCommands(void) { - int index, j, size; - char *cPtr; + int index, j; + char *cptr; p_memset((char*)boot_commands, 0, sizeof(boot_commands)); - - cPtr = &BootCommandSection; - - size = MAX_ENV_SIZE_BYTES; - - for (index = 0; (index < MAX_BOOT_COMMANDS) && size; ++index) { - for (j = 0; (j < MAX_INPUT_SIZE) && size; ++j) { - size--; - boot_commands[index][j] = *cPtr++; - if (!(boot_commands[index][j])) { - break; - } - } + cptr = &BootCommandSection; + for (index = 0; *cptr; index++) { + for (j = 0; *cptr; j++) + boot_commands[index][j] = *cptr++; + cptr++; } } From owner-p4-projects@FreeBSD.ORG Wed Jul 12 22:30:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4281A16A4E2; Wed, 12 Jul 2006 22:30:32 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 1714E16A4E0 for ; Wed, 12 Jul 2006 22:30:32 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D52F543D45 for ; Wed, 12 Jul 2006 22:30:31 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6CMUVAh000289 for ; Wed, 12 Jul 2006 22:30:31 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6CMUV2D000286 for perforce@freebsd.org; Wed, 12 Jul 2006 22:30:31 GMT (envelope-from imp@freebsd.org) Date: Wed, 12 Jul 2006 22:30:31 GMT Message-Id: <200607122230.k6CMUV2D000286@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101420 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jul 2006 22:30:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=101420 Change 101420 by imp@imp_lighthouse on 2006/07/12 22:29:34 implement set_time Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_rtc.c#5 edit .. //depot/projects/arm/src/sys/arm/at91/at91_rtcreg.h#5 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_rtc.c#5 (text+ko) ==== @@ -223,9 +223,14 @@ static int at91_rtc_settime(device_t dev, struct timespec *ts) { - // XXX UGLY XXX - printf("SET TIME\n"); - return (EINVAL); + struct at91_rtc_softc *sc; + struct clocktime ct; + + sc = device_get_softc(dev); + clock_ts_to_ct(ts, &ct); + WR4(sc, RTC_TIMR, RTC_TIMR_MK(ct.hour, ct.min, ct.sec)); + WR4(sc, RTC_CALR, RTC_CALR_MK(ct.year, ct.mon, ct.day, ct.dow)); + return (0); } static device_method_t at91_rtc_methods[] = { ==== //depot/projects/arm/src/sys/arm/at91/at91_rtcreg.h#5 (text+ko) ==== @@ -74,7 +74,7 @@ #define RTC_CALR_DAY_S 24 #define RTC_CALR_DAY(x) FROMBCD(((x) & RTC_CALR_DAY_M) >> RTC_CALR_DAY_S) #define RTC_CALR_MK(yr, mon, day, dow) \ - ((TOBCD((yr) / 100 + 19) << RTC_CALR_CENTURY_S) | \ + ((TOBCD((yr) / 100 + 19) << RTC_CALR_CEN_S) | \ (TOBCD((yr) % 100) << RTC_CALR_YEAR_S) | \ (TOBCD(mon) << RTC_CALR_MON_S) | \ (TOBCD(dow) << RTC_CALR_DOW_S) | \ From owner-p4-projects@FreeBSD.ORG Thu Jul 13 04:45:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1305916A4E0; Thu, 13 Jul 2006 04:45:29 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C38EE16A4DE for ; Thu, 13 Jul 2006 04:45:28 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F25B43D49 for ; Thu, 13 Jul 2006 04:45:28 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6D4jS6t046585 for ; Thu, 13 Jul 2006 04:45:28 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6D4jSQ3046582 for perforce@freebsd.org; Thu, 13 Jul 2006 04:45:28 GMT (envelope-from jb@freebsd.org) Date: Thu, 13 Jul 2006 04:45:28 GMT Message-Id: <200607130445.k6D4jSQ3046582@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101430 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 04:45:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101430 Change 101430 by jb@jb_freebsd2 on 2006/07/13 04:44:53 Debuging work-in-progress. Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#8 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#9 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.c#4 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_pci.c#6 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#8 (text+ko) ==== @@ -520,7 +520,7 @@ handled += pers->event(mpt, req, msg); if (handled == 0 && mpt->mpt_pers_mask == 0) { - mpt_lprt(mpt, MPT_PRT_INFO, + mpt_lprt(mpt, MPT_PRT_INFO, "No Handlers For Any Event Notify Frames. " "Event %#x (ACK %sequired).\n", msg->Event, msg->AckRequired? "r" : "not r"); @@ -668,7 +668,9 @@ int ntrips = 0; mpt = (struct mpt_softc *)arg; +#ifdef DOODAD mpt_lprt(mpt, MPT_PRT_DEBUG2, "enter mpt_intr\n"); +#endif while ((reply_desc = mpt_pop_reply_queue(mpt)) != MPT_REPLY_EMPTY) { request_t *req; MSG_DEFAULT_REPLY *reply_frame; @@ -784,7 +786,9 @@ break; } } +#ifdef DOODAD mpt_lprt(mpt, MPT_PRT_DEBUG2, "exit mpt_intr\n"); +#endif } /******************************* Error Recovery *******************************/ @@ -1984,6 +1988,7 @@ } } } +mpt_prt(mpt, "attach was successful!\n"); return (0); } @@ -2431,7 +2436,7 @@ pfp.MaxDevices); mpt->mpt_port_type = pfp.PortType; - mpt->mpt_proto_flags = pfp.ProtocolFlags; + mpt->mpt_proto_flags = le16toh(pfp.ProtocolFlags); if (pfp.PortType != MPI_PORTFACTS_PORTTYPE_SCSI && pfp.PortType != MPI_PORTFACTS_PORTTYPE_SAS && pfp.PortType != MPI_PORTFACTS_PORTTYPE_FC) { @@ -2462,10 +2467,10 @@ */ mpt->role = MPT_ROLE_NONE; - if (pfp.ProtocolFlags & MPI_PORTFACTS_PROTOCOL_INITIATOR) { + if (mpt->mpt_proto_flags & MPI_PORTFACTS_PROTOCOL_INITIATOR) { mpt->role |= MPT_ROLE_INITIATOR; } - if (pfp.ProtocolFlags & MPI_PORTFACTS_PROTOCOL_TARGET) { + if (mpt->mpt_proto_flags & MPI_PORTFACTS_PROTOCOL_TARGET) { mpt->role |= MPT_ROLE_TARGET; } if (mpt->role == MPT_ROLE_NONE) { ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.h#9 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.c#4 (text+ko) ==== @@ -188,6 +188,7 @@ if ((mpt->mpt_proto_flags & MPI_PORTFACTS_PROTOCOL_INITIATOR) != 0 || (mpt->mpt_proto_flags & MPI_PORTFACTS_PROTOCOL_TARGET) != 0 || (mpt->ioc_page2 != NULL && mpt->ioc_page2->MaxPhysDisks != 0)) { +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); return (0); } return (ENODEV); @@ -201,10 +202,12 @@ int maxq; int error; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); TAILQ_INIT(&mpt->request_timeout_list); maxq = (mpt->mpt_global_credits < MPT_MAX_REQUESTS(mpt))? mpt->mpt_global_credits : MPT_MAX_REQUESTS(mpt); +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); handler.reply_handler = mpt_scsi_reply_handler; error = mpt_register_handler(mpt, MPT_HANDLER_REPLY, handler, &scsi_io_handler_id); @@ -212,6 +215,7 @@ goto cleanup0; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); handler.reply_handler = mpt_scsi_tmf_reply_handler; error = mpt_register_handler(mpt, MPT_HANDLER_REPLY, handler, &scsi_tmf_handler_id); @@ -219,6 +223,7 @@ goto cleanup0; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * If we're fibre channel and could support target mode, we register * an ELS reply handler and give it resources. @@ -237,6 +242,7 @@ maxq -= mpt->els_cmds_allocated; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * If we support target mode, we register a reply handler for it, * but don't add resources until we actually enable target mode. @@ -250,6 +256,7 @@ } } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * We keep one request reserved for timeout TMF requests. */ @@ -260,6 +267,7 @@ goto cleanup0; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Mark the request as free even though not on the free list. * There is only one TMF request allowed to be outstanding at @@ -275,6 +283,7 @@ goto cleanup0; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * The rest of this is CAM foo, for which we need to drop our lock */ @@ -290,6 +299,7 @@ goto cleanup; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Construct our SIM entry. */ @@ -302,6 +312,7 @@ goto cleanup; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Register exactly this bus. */ @@ -311,6 +322,7 @@ goto cleanup; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (xpt_create_path(&mpt->path, NULL, cam_sim_path(mpt->sim), CAM_TARGET_WILDCARD, CAM_LUN_WILDCARD) != CAM_REQ_CMP) { mpt_prt(mpt, "Unable to allocate Path!\n"); @@ -318,15 +330,18 @@ goto cleanup; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Only register a second bus for RAID physical * devices if the controller supports RAID. */ if (mpt->ioc_page2 == NULL || mpt->ioc_page2->MaxPhysDisks == 0) { CAMLOCK_2_MPTLOCK(mpt); +mpt_prt(mpt, "%s(%d): success\n",__FUNCTION__,__LINE__); return (0); } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Create a "bus" to export all hidden disks to CAM. */ @@ -338,6 +353,7 @@ goto cleanup; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Register this bus. */ @@ -347,6 +363,7 @@ goto cleanup; } +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (xpt_create_path(&mpt->phydisk_path, NULL, cam_sim_path(mpt->phydisk_sim), CAM_TARGET_WILDCARD, CAM_LUN_WILDCARD) != CAM_REQ_CMP) { @@ -355,6 +372,7 @@ goto cleanup; } CAMLOCK_2_MPTLOCK(mpt); +mpt_prt(mpt, "%s(%d): success\n",__FUNCTION__,__LINE__); return (0); cleanup: @@ -436,6 +454,7 @@ static int mpt_set_initial_config_fc(struct mpt_softc *mpt) { +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); #if 0 CONFIG_PAGE_FC_PORT_1 fc; U32 fl; @@ -488,6 +507,7 @@ static int mpt_read_config_info_sas(struct mpt_softc *mpt) { +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); return (0); } @@ -497,6 +517,7 @@ static int mpt_set_initial_config_sas(struct mpt_softc *mpt) { +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); return (0); } @@ -508,6 +529,7 @@ { int rv, i; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); rv = mpt_read_cfg_header(mpt, MPI_CONFIG_PAGETYPE_SCSI_PORT, 0, 0, &mpt->mpt_port_page0.Header, FALSE, 5000); if (rv) { @@ -654,6 +676,7 @@ int i, j, pp1val = ((1 << mpt->mpt_ini_id) << 16) | mpt->mpt_ini_id; int error; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); mpt->mpt_disc_enable = 0xff; mpt->mpt_tag_enable = 0; @@ -711,6 +734,7 @@ int mpt_cam_enable(struct mpt_softc *mpt) { +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (mpt->is_fc) { if (mpt_read_config_info_fc(mpt)) { return (EIO); @@ -733,6 +757,7 @@ return (EIO); } } +mpt_prt(mpt, "%s(%d): succeeded\n",__FUNCTION__,__LINE__); return (0); } @@ -741,6 +766,7 @@ { mpt_handler_t handler; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); mpt_terminate_recovery_thread(mpt); handler.reply_handler = mpt_scsi_reply_handler; @@ -1855,6 +1881,7 @@ uint16_t status; uint8_t response; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); error = mpt_scsi_send_tmf(mpt, (tgt != CAM_TARGET_WILDCARD || lun != CAM_LUN_WILDCARD) ? MPI_SCSITASKMGMT_TASKTYPE_TARGET_RESET : @@ -1914,6 +1941,7 @@ request_t *req; PTR_MSG_FC_PRIMITIVE_SEND_REQUEST fc; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); req = mpt_get_request(mpt, FALSE); if (req == NULL) { return (ENOMEM); @@ -1938,7 +1966,8 @@ mpt_cam_event(struct mpt_softc *mpt, request_t *req, MSG_EVENT_NOTIFY_REPLY *msg) { - switch(msg->Event & 0xFF) { +printf("%s(%d): msg->Event 0x%x\n",__FUNCTION__,__LINE__,le32toh(msg->Event)); + switch(le32toh(msg->Event) & 0xFF) { case MPI_EVENT_UNIT_ATTENTION: mpt_prt(mpt, "Bus: 0x%02x TargetID: 0x%02x\n", (msg->Data[0] >> 8) & 0xff, msg->Data[0] & 0xff); @@ -2054,7 +2083,7 @@ break; default: mpt_lprt(mpt, MPT_PRT_WARN, "mpt_cam_event: 0x%x\n", - msg->Event & 0xFF); + le32toh(msg->Event) & 0xFF); return (0); } return (1); @@ -2166,6 +2195,7 @@ MSG_SCSI_TASK_MGMT_REPLY *tmf_reply; KASSERT(req == mpt->tmf_req, ("TMF Reply not using mpt->tmf_req")); +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); #ifdef INVARIANTS mpt_req_not_spcl(mpt, req, "mpt_scsi_tmf_reply_handler", __LINE__); #endif @@ -2212,6 +2242,7 @@ PTR_MSG_LINK_SERVICE_RSP_REQUEST rsp; uint32_t fl; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * We are going to reuse the ELS request to send this response back. */ @@ -2281,6 +2312,7 @@ int ioindex; int do_refresh = TRUE; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); #ifdef INVARIANTS KASSERT(mpt_req_on_free_list(mpt, req) == 0, ("fc_els_reply_handler: req %p:%u for function %x on freelist!", @@ -2520,6 +2552,7 @@ static void mpt_cam_ioc_reset(struct mpt_softc *mpt, int type) { +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * The pending list is already run down by * the generic handler. Perform the same @@ -3171,6 +3204,7 @@ uint8_t dval, pval, oval; int rv; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (xpt_path_sim(cts->ccb_h.path) == mpt->phydisk_sim) { if (mpt_map_physdisk(mpt, (union ccb *)cts, &tgt)) { return (-1); @@ -3282,6 +3316,7 @@ { PTR_CONFIG_PAGE_SCSI_DEVICE_1 ptr; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); ptr = &mpt->mpt_dev_page1[tgt]; if (onoff) { ptr->RequestedParameters |= MPI_SCSIDEVPAGE1_RP_WIDE; @@ -3295,6 +3330,7 @@ { PTR_CONFIG_PAGE_SCSI_DEVICE_1 ptr; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); ptr = &mpt->mpt_dev_page1[tgt]; ptr->RequestedParameters &= ~MPI_SCSIDEVPAGE1_RP_MIN_SYNC_PERIOD_MASK; ptr->RequestedParameters &= ~MPI_SCSIDEVPAGE1_RP_MAX_SYNC_OFFSET_MASK; @@ -3363,6 +3399,7 @@ { int error; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); error = mpt_kthread_create(mpt_recovery_thread, mpt, &mpt->recovery_thread, /*flags*/0, /*altstack*/0, "mpt_recovery%d", mpt->unit); @@ -3372,6 +3409,7 @@ static void mpt_terminate_recovery_thread(struct mpt_softc *mpt) { +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (mpt->recovery_thread == NULL) { return; } @@ -3421,6 +3459,7 @@ MSG_SCSI_TASK_MGMT *tmf_req; int error; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Wait for any current TMF request to complete. * We're only allowed to issue one TMF at a time. @@ -3489,6 +3528,7 @@ union ccb *ccb; int error; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (TAILQ_EMPTY(&mpt->request_timeout_list) != 0) { /* * No work to do- leave. @@ -3618,6 +3658,7 @@ bus_addr_t paddr; uint32_t fl; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); paddr = req->req_pbuf; paddr += MPT_RQSL(mpt); @@ -3666,6 +3707,7 @@ PTR_CMD_BUFFER_DESCRIPTOR cb; bus_addr_t paddr; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); paddr = req->req_pbuf; paddr += MPT_RQSL(mpt); memset(req->req_vbuf, 0, MPT_REQUEST_AREA); @@ -3689,6 +3731,7 @@ { int i; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (mpt->is_fc == 0) { return (TRUE); } @@ -3736,6 +3779,7 @@ { int i, max; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (mpt->tgt_cmd_ptrs) { return (TRUE); } @@ -3797,6 +3841,7 @@ static int mpt_enable_lun(struct mpt_softc *mpt, target_id_t tgt, lun_id_t lun) { +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (tgt == CAM_TARGET_WILDCARD && lun == CAM_LUN_WILDCARD) { mpt->twildcard = 1; } else if (lun >= MPT_MAX_LUNS) { @@ -3829,6 +3874,7 @@ mpt_disable_lun(struct mpt_softc *mpt, target_id_t tgt, lun_id_t lun) { int i; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (tgt == CAM_TARGET_WILDCARD && lun == CAM_LUN_WILDCARD) { mpt->twildcard = 0; } else if (lun >= MPT_MAX_LUNS) { @@ -3867,6 +3913,7 @@ request_t *cmd_req = MPT_TAG_2_REQ(mpt, csio->tag_id); mpt_tgt_state_t *tgt = MPT_TGT_STATE(mpt, cmd_req); +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); switch (tgt->state) { case TGT_STATE_IN_CAM: break; @@ -4107,6 +4154,7 @@ request_t *req; PTR_MSG_TARGET_MODE_ABORT abtp; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); req = mpt_get_request(mpt, FALSE); if (req == NULL) { return (-1); @@ -4151,6 +4199,7 @@ uint32_t fl; int resplen = 0; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); cmd_vbuf = cmd_req->req_vbuf; cmd_vbuf += MPT_RQSL(mpt); tgt = MPT_TGT_STATE(mpt, cmd_req); @@ -4299,6 +4348,7 @@ struct ccb_immed_notify *inot; mpt_tgt_state_t *tgt; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); tgt = MPT_TGT_STATE(mpt, req); inot = (struct ccb_immed_notify *) STAILQ_FIRST(&trtp->inots); if (inot == NULL) { @@ -4361,6 +4411,7 @@ mpt_task_mgmt_t fct = MPT_NIL_TMT_VALUE; uint8_t *cdbp; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * First, DMA sync the received command- which is in the *request* * phys area. @@ -4585,6 +4636,7 @@ union ccb *ccb; U16 status; +mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (reply_frame == NULL) { /* * Figure out what the state of the command is. ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_pci.c#6 (text+ko) ==== @@ -243,14 +243,28 @@ desc = "LSILogic 1030 Ultra4 Adapter"; break; case PCI_PRODUCT_LSI_SAS1064: + desc = "LSILogic SAS1064 Adapter"; + break; case PCI_PRODUCT_LSI_SAS1064A: + desc = "LSILogic SAS1064A Adapter"; + break; case PCI_PRODUCT_LSI_SAS1064E: + desc = "LSILogic SAS1064E Adapter"; + break; case PCI_PRODUCT_LSI_SAS1066: + desc = "LSILogic SAS1066 Adapter"; + break; case PCI_PRODUCT_LSI_SAS1066E: + desc = "LSILogic SAS1066E Adapter"; + break; case PCI_PRODUCT_LSI_SAS1068: + desc = "LSILogic SAS1068 Adapter"; + break; case PCI_PRODUCT_LSI_SAS1068E: + desc = "LSILogic SAS1068E Adapter"; + break; case PCI_PRODUCT_LSI_SAS1078: - desc = "LSILogic SAS Adapter"; + desc = "LSILogic SAS1078 Adapter"; break; default: return (ENXIO); From owner-p4-projects@FreeBSD.ORG Thu Jul 13 06:02:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 811A116A4E1; Thu, 13 Jul 2006 06:02:13 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 3F64016A4DA for ; Thu, 13 Jul 2006 06:02:13 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CF7A043D4C for ; Thu, 13 Jul 2006 06:02:12 +0000 (GMT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6D62CrY062705 for ; Thu, 13 Jul 2006 06:02:12 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6D627JX062697 for perforce@freebsd.org; Thu, 13 Jul 2006 06:02:07 GMT (envelope-from marcel@freebsd.org) Date: Thu, 13 Jul 2006 06:02:07 GMT Message-Id: <200607130602.k6D627JX062697@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 101433 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 06:02:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=101433 Change 101433 by marcel@marcel_nfs on 2006/07/13 06:01:39 IFC @101431 Affected files ... .. //depot/projects/tty/MAINTAINERS#22 integrate .. //depot/projects/tty/ObsoleteFiles.inc#8 integrate .. //depot/projects/tty/UPDATING#31 integrate .. //depot/projects/tty/bin/dd/Makefile#5 integrate .. //depot/projects/tty/contrib/texinfo/FREEBSD-upgrade#5 integrate .. //depot/projects/tty/etc/rc.d/dhclient#8 integrate .. //depot/projects/tty/etc/rc.d/mountcritlocal#5 integrate .. //depot/projects/tty/etc/rc.d/mountlate#1 branch .. //depot/projects/tty/games/fortune/datfiles/Makefile#4 integrate .. //depot/projects/tty/games/fortune/datfiles/fortunes#26 integrate .. //depot/projects/tty/lib/libc/posix1e/Makefile.inc#6 integrate .. //depot/projects/tty/lib/libc/posix1e/mac_is_present.3#2 integrate .. //depot/projects/tty/lib/libc/posix1e/mac_is_present_np.3#3 delete .. //depot/projects/tty/lib/libc/posix1e/mac_prepare.3#7 integrate .. //depot/projects/tty/lib/libc/posix1e/mac_set.3#4 integrate .. //depot/projects/tty/lib/libc/posix1e/mac_text.3#5 integrate .. //depot/projects/tty/lib/libthr/sys/thr_error.c#3 integrate .. //depot/projects/tty/lib/libthr/thread/thr_attr.c#6 integrate .. //depot/projects/tty/lib/libthr/thread/thr_create.c#11 integrate .. //depot/projects/tty/lib/libthr/thread/thr_getschedparam.c#5 integrate .. //depot/projects/tty/lib/libthr/thread/thr_init.c#11 integrate .. //depot/projects/tty/lib/libthr/thread/thr_private.h#13 integrate .. //depot/projects/tty/lib/libthr/thread/thr_setprio.c#3 integrate .. //depot/projects/tty/lib/libthr/thread/thr_setschedparam.c#7 integrate .. //depot/projects/tty/lib/libutil/kld.3#2 integrate .. //depot/projects/tty/lib/msun/src/e_log.c#4 integrate .. //depot/projects/tty/lib/msun/src/e_logf.c#3 integrate .. //depot/projects/tty/sbin/gpt/gpt.c#7 integrate .. //depot/projects/tty/sbin/ifconfig/ifclone.c#2 integrate .. //depot/projects/tty/sbin/ifconfig/ifconfig.c#13 integrate .. //depot/projects/tty/sbin/ifconfig/ifconfig.h#7 integrate .. //depot/projects/tty/sbin/ifconfig/ifvlan.c#5 integrate .. //depot/projects/tty/sbin/mount/mount.8#14 integrate .. //depot/projects/tty/sbin/mount/mount.c#13 integrate .. //depot/projects/tty/share/man/man4/ipw.4#8 integrate .. //depot/projects/tty/share/man/man4/iwi.4#10 integrate .. //depot/projects/tty/share/man/man7/security.7#9 integrate .. //depot/projects/tty/share/man/man9/Makefile#20 integrate .. //depot/projects/tty/share/man/man9/mac.9#7 integrate .. //depot/projects/tty/share/man/man9/mutex.9#10 integrate .. //depot/projects/tty/share/man/man9/sx.9#7 integrate .. //depot/projects/tty/sys/amd64/amd64/db_trace.c#12 integrate .. //depot/projects/tty/sys/amd64/amd64/identcpu.c#13 integrate .. //depot/projects/tty/sys/amd64/amd64/intr_machdep.c#11 integrate .. //depot/projects/tty/sys/amd64/amd64/local_apic.c#11 integrate .. //depot/projects/tty/sys/amd64/conf/GENERIC#22 integrate .. //depot/projects/tty/sys/amd64/include/specialreg.h#9 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_proto.h#10 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_syscall.h#10 integrate .. //depot/projects/tty/sys/amd64/linux32/linux32_sysent.c#10 integrate .. //depot/projects/tty/sys/amd64/linux32/syscalls.master#10 integrate .. //depot/projects/tty/sys/arm/arm/db_trace.c#7 integrate .. //depot/projects/tty/sys/arm/arm/pmap.c#17 integrate .. //depot/projects/tty/sys/arm/at91/kb920x_machdep.c#3 integrate .. //depot/projects/tty/sys/compat/freebsd32/freebsd32_misc.c#16 integrate .. //depot/projects/tty/sys/compat/linux/linux_file.c#13 integrate .. //depot/projects/tty/sys/compat/linux/linux_ipc.c#13 integrate .. //depot/projects/tty/sys/compat/linux/linux_socket.c#18 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_ipc.c#8 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_misc.c#17 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_proto.h#7 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_stream.c#12 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_syscall.h#7 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_syscallnames.c#7 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_sysent.c#7 integrate .. //depot/projects/tty/sys/compat/svr4/svr4_util.h#6 integrate .. //depot/projects/tty/sys/compat/svr4/syscalls.master#7 integrate .. //depot/projects/tty/sys/conf/NOTES#37 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/Makefile#4 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx.h#5 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_bstream.c#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_bstream.h#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_context.c#5 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_context.h#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_env.c#4 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_env.h#5 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#5 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_self.c#5 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_self.h#4 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_self_context.s#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_step.c#5 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_step.h#4 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_str.c#4 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_str.h#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_swap.c#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_swap.h#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_trace.c#5 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_trace.h#5 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#5 delete .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#4 delete .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#6 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#3 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_utable.c#4 integrate .. //depot/projects/tty/sys/contrib/ia64/libuwx/src/uwx_utable.h#4 integrate .. //depot/projects/tty/sys/contrib/pf/net/if_pflog.c#10 integrate .. //depot/projects/tty/sys/contrib/pf/net/if_pfsync.c#12 integrate .. //depot/projects/tty/sys/ddb/db_command.c#11 integrate .. //depot/projects/tty/sys/ddb/db_output.c#7 integrate .. //depot/projects/tty/sys/ddb/db_output.h#3 integrate .. //depot/projects/tty/sys/ddb/db_ps.c#11 integrate .. //depot/projects/tty/sys/ddb/db_thread.c#4 integrate .. //depot/projects/tty/sys/ddb/ddb.h#10 integrate .. //depot/projects/tty/sys/dev/asr/MAINTAINER#2 delete .. //depot/projects/tty/sys/dev/bce/if_bce.c#3 integrate .. //depot/projects/tty/sys/dev/fdc/fdc.c#8 integrate .. //depot/projects/tty/sys/dev/isp/isp_freebsd.c#13 integrate .. //depot/projects/tty/sys/dev/isp/isp_freebsd.h#13 integrate .. //depot/projects/tty/sys/dev/isp/isp_pci.c#14 integrate .. //depot/projects/tty/sys/dev/isp/isp_sbus.c#8 integrate .. //depot/projects/tty/sys/dev/isp/isp_target.c#9 integrate .. //depot/projects/tty/sys/dev/ispfw/asm_1040.h#3 integrate .. //depot/projects/tty/sys/dev/ispfw/asm_1080.h#3 integrate .. //depot/projects/tty/sys/dev/ispfw/asm_12160.h#4 integrate .. //depot/projects/tty/sys/dev/ispfw/ispfw.c#8 integrate .. //depot/projects/tty/sys/dev/mpt/mpt.c#11 integrate .. //depot/projects/tty/sys/dev/mpt/mpt.h#13 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_cam.c#8 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_debug.c#9 integrate .. //depot/projects/tty/sys/dev/mpt/mpt_pci.c#15 integrate .. //depot/projects/tty/sys/dev/pci/pci.c#19 integrate .. //depot/projects/tty/sys/dev/random/probe.c#4 integrate .. //depot/projects/tty/sys/dev/sound/midi/sequencer.c#7 integrate .. //depot/projects/tty/sys/doc/Doxyfile#2 delete .. //depot/projects/tty/sys/doc/Makefile#2 delete .. //depot/projects/tty/sys/doc/subsys/Dependencies#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-cam#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-crypto#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-dev_pci#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-dev_sound#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-dev_usb#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-geom#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-i4b#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-kern#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-libkern#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-linux#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-net80211#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-netgraph#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-netinet#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-netinet6#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-netipsec#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-opencrypto#2 delete .. //depot/projects/tty/sys/doc/subsys/Doxyfile-vm#2 delete .. //depot/projects/tty/sys/doc/subsys/Makefile#2 delete .. //depot/projects/tty/sys/doc/subsys/README#2 delete .. //depot/projects/tty/sys/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/tty/sys/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/tty/sys/fs/devfs/devfs_vnops.c#17 integrate .. //depot/projects/tty/sys/fs/portalfs/portal_vnops.c#8 integrate .. //depot/projects/tty/sys/geom/geom.h#15 integrate .. //depot/projects/tty/sys/geom/mirror/g_mirror.c#13 integrate .. //depot/projects/tty/sys/geom/raid3/g_raid3.c#12 integrate .. //depot/projects/tty/sys/geom/raid3/g_raid3_ctl.c#6 integrate .. //depot/projects/tty/sys/i386/conf/GENERIC#27 integrate .. //depot/projects/tty/sys/i386/conf/PAE#14 integrate .. //depot/projects/tty/sys/i386/i386/db_trace.c#12 integrate .. //depot/projects/tty/sys/i386/i386/identcpu.c#19 integrate .. //depot/projects/tty/sys/i386/i386/initcpu.c#9 integrate .. //depot/projects/tty/sys/i386/i386/intr_machdep.c#11 integrate .. //depot/projects/tty/sys/i386/i386/local_apic.c#11 integrate .. //depot/projects/tty/sys/i386/i386/machdep.c#22 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_ipc.c#5 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_ipc.h#4 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_misc.c#12 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_other.c#5 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_proto.h#8 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_syscall.h#8 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_sysent.c#9 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_util.h#5 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_xenix.c#7 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_xenix.h#6 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_xenix_syscall.h#6 integrate .. //depot/projects/tty/sys/i386/ibcs2/ibcs2_xenix_sysent.c#7 integrate .. //depot/projects/tty/sys/i386/ibcs2/imgact_coff.c#9 integrate .. //depot/projects/tty/sys/i386/ibcs2/syscalls.master#8 integrate .. //depot/projects/tty/sys/i386/ibcs2/syscalls.xenix#6 integrate .. //depot/projects/tty/sys/i386/include/i4b_ioctl.h#3 integrate .. //depot/projects/tty/sys/i386/include/md_var.h#14 integrate .. //depot/projects/tty/sys/i386/include/specialreg.h#8 integrate .. //depot/projects/tty/sys/i386/linux/linux_proto.h#15 integrate .. //depot/projects/tty/sys/i386/linux/linux_syscall.h#15 integrate .. //depot/projects/tty/sys/i386/linux/linux_sysent.c#16 integrate .. //depot/projects/tty/sys/i386/linux/syscalls.master#15 integrate .. //depot/projects/tty/sys/i4b/layer4/i4b_l4mgmt.c#4 integrate .. //depot/projects/tty/sys/ia64/conf/GENERIC#17 integrate .. //depot/projects/tty/sys/ia64/ia64/db_machdep.c#2 integrate .. //depot/projects/tty/sys/isa/isahint.c#5 integrate .. //depot/projects/tty/sys/kern/bus_if.m#6 integrate .. //depot/projects/tty/sys/kern/init_sysent.c#19 integrate .. //depot/projects/tty/sys/kern/kern_descrip.c#20 integrate .. //depot/projects/tty/sys/kern/kern_environment.c#10 integrate .. //depot/projects/tty/sys/kern/kern_intr.c#18 integrate .. //depot/projects/tty/sys/kern/kern_ktr.c#12 integrate .. //depot/projects/tty/sys/kern/kern_linker.c#15 integrate .. //depot/projects/tty/sys/kern/kern_thr.c#12 integrate .. //depot/projects/tty/sys/kern/subr_bus.c#18 integrate .. //depot/projects/tty/sys/kern/subr_hints.c#5 integrate .. //depot/projects/tty/sys/kern/subr_prf.c#14 integrate .. //depot/projects/tty/sys/kern/subr_turnstile.c#9 integrate .. //depot/projects/tty/sys/kern/sys_generic.c#13 integrate .. //depot/projects/tty/sys/kern/syscalls.c#19 integrate .. //depot/projects/tty/sys/kern/syscalls.master#20 integrate .. //depot/projects/tty/sys/kern/sysv_sem.c#15 integrate .. //depot/projects/tty/sys/kern/uipc_domain.c#7 integrate .. //depot/projects/tty/sys/kern/uipc_socket.c#22 integrate .. //depot/projects/tty/sys/kern/uipc_socket2.c#20 integrate .. //depot/projects/tty/sys/kern/uipc_syscalls.c#21 integrate .. //depot/projects/tty/sys/kern/uipc_usrreq.c#18 integrate .. //depot/projects/tty/sys/kern/vfs_syscalls.c#25 integrate .. //depot/projects/tty/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/tty/sys/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/tty/sys/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/tty/sys/net/if.c#26 integrate .. //depot/projects/tty/sys/net/if_bridge.c#12 integrate .. //depot/projects/tty/sys/net/if_clone.c#7 integrate .. //depot/projects/tty/sys/net/if_clone.h#4 integrate .. //depot/projects/tty/sys/net/if_disc.c#14 integrate .. //depot/projects/tty/sys/net/if_enc.c#2 integrate .. //depot/projects/tty/sys/net/if_faith.c#16 integrate .. //depot/projects/tty/sys/net/if_gif.c#15 integrate .. //depot/projects/tty/sys/net/if_gre.c#16 integrate .. //depot/projects/tty/sys/net/if_loop.c#18 integrate .. //depot/projects/tty/sys/net/if_ppp.c#16 integrate .. //depot/projects/tty/sys/net/if_stf.c#16 integrate .. //depot/projects/tty/sys/net/if_vlan.c#17 integrate .. //depot/projects/tty/sys/netinet/ip_carp.c#9 integrate .. //depot/projects/tty/sys/nfs4client/nfs4_vnops.c#8 integrate .. //depot/projects/tty/sys/nfsclient/nfs_socket.c#22 integrate .. //depot/projects/tty/sys/nfsclient/nfs_vnops.c#19 integrate .. //depot/projects/tty/sys/pc98/conf/GENERIC#20 integrate .. //depot/projects/tty/sys/pc98/pc98/machdep.c#10 integrate .. //depot/projects/tty/sys/posix4/ksched.c#8 integrate .. //depot/projects/tty/sys/posix4/p1003_1b.c#7 integrate .. //depot/projects/tty/sys/posix4/posix4.h#3 integrate .. //depot/projects/tty/sys/powerpc/powerpc/db_trace.c#8 integrate .. //depot/projects/tty/sys/powerpc/powerpc/mmu_oea.c#4 integrate .. //depot/projects/tty/sys/security/mac_biba/mac_biba.c#18 integrate .. //depot/projects/tty/sys/sparc64/conf/GENERIC#22 integrate .. //depot/projects/tty/sys/sparc64/sparc64/db_trace.c#10 integrate .. //depot/projects/tty/sys/sys/bus.h#12 integrate .. //depot/projects/tty/sys/sys/protosw.h#10 integrate .. //depot/projects/tty/sys/sys/sockio.h#6 integrate .. //depot/projects/tty/sys/sys/syscall.h#19 integrate .. //depot/projects/tty/sys/sys/syscall.mk#19 integrate .. //depot/projects/tty/sys/sys/syscallsubr.h#17 integrate .. //depot/projects/tty/sys/sys/sysproto.h#20 integrate .. //depot/projects/tty/sys/sys/systm.h#14 integrate .. //depot/projects/tty/sys/sys/thr.h#7 integrate .. //depot/projects/tty/sys/ufs/ffs/ffs_vfsops.c#23 integrate .. //depot/projects/tty/sys/ufs/ufs/ufs_lookup.c#10 integrate .. //depot/projects/tty/sys/vm/vm_meter.c#11 integrate .. //depot/projects/tty/tools/kerneldoc/Doxyfile#2 integrate .. //depot/projects/tty/tools/kerneldoc/Makefile#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Dependencies#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-cam#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-crypto#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-dev_pci#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-dev_sound#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-dev_usb#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-geom#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-i4b#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-kern#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-libkern#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-linux#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-net80211#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-netgraph#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-netinet#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-netinet6#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-netipsec#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-opencrypto#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Doxyfile-vm#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/Makefile#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/README#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/common-Doxyfile#2 integrate .. //depot/projects/tty/tools/kerneldoc/subsys/notreviewed.dox#2 integrate .. //depot/projects/tty/tools/regression/fifo/fifo_create/Makefile#2 integrate .. //depot/projects/tty/tools/regression/fifo/fifo_io/Makefile#2 integrate .. //depot/projects/tty/tools/regression/fifo/fifo_misc/Makefile#2 integrate .. //depot/projects/tty/tools/regression/fifo/fifo_open/Makefile#2 integrate .. //depot/projects/tty/tools/regression/file/ftruncate/Makefile#1 branch .. //depot/projects/tty/tools/regression/file/ftruncate/ftruncate.c#1 branch .. //depot/projects/tty/tools/regression/netinet/msocket_ifnet_remove/Makefile#3 integrate .. //depot/projects/tty/tools/regression/netinet/tcpdrop/Makefile#2 integrate .. //depot/projects/tty/tools/regression/netinet/tcpsockclosebeforeaccept/Makefile#2 integrate .. //depot/projects/tty/tools/regression/netinet/tcpsocktimewait/Makefile#2 integrate .. //depot/projects/tty/tools/regression/netipx/ipxdgramloopback/Makefile#2 integrate .. //depot/projects/tty/tools/regression/netipx/spxabort/Makefile#2 integrate .. //depot/projects/tty/tools/regression/netipx/spxloopback/Makefile#2 integrate .. //depot/projects/tty/tools/regression/sockets/listen_backlog/Makefile#2 integrate .. //depot/projects/tty/tools/regression/sockets/rtsocket/Makefile#2 integrate .. //depot/projects/tty/tools/regression/sockets/sendfile/Makefile#2 integrate .. //depot/projects/tty/tools/regression/sockets/socketpair/Makefile#4 integrate .. //depot/projects/tty/tools/regression/sockets/unix_bindconnect/Makefile#2 integrate .. //depot/projects/tty/tools/regression/sockets/unix_passfd/Makefile#2 integrate .. //depot/projects/tty/tools/regression/sockets/unix_socket/Makefile#2 integrate .. //depot/projects/tty/tools/regression/ufs/uprintf/Makefile#2 integrate .. //depot/projects/tty/usr.bin/kdump/kdump.c#8 integrate .. //depot/projects/tty/usr.bin/kdump/mksubr#2 integrate .. //depot/projects/tty/usr.sbin/i4b/isdnd/controller.c#3 integrate .. //depot/projects/tty/usr.sbin/i4b/isdnd/main.c#3 integrate .. //depot/projects/tty/usr.sbin/i4b/isdndebug/main.c#2 integrate .. //depot/projects/tty/usr.sbin/i4b/isdnmonitor/main.c#3 integrate .. //depot/projects/tty/usr.sbin/i4b/isdnphone/main.c#2 integrate .. //depot/projects/tty/usr.sbin/i4b/isdntelctl/main.c#2 integrate .. //depot/projects/tty/usr.sbin/i4b/isdntest/main.c#3 integrate .. //depot/projects/tty/usr.sbin/mountd/mountd.c#14 integrate .. //depot/projects/tty/usr.sbin/pkg_install/lib/url.c#5 integrate Differences ... ==== //depot/projects/tty/MAINTAINERS#22 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.137 2006/07/04 02:01:48 brooks Exp $ +$FreeBSD: src/MAINTAINERS,v 1.139 2006/07/11 06:09:54 mjacob Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -51,7 +51,6 @@ pass(4) ken Pre-commit review requested. ch(4) ken Pre-commit review requested. isp(4) mjacob Pre-commit review requested. -mpt(4) mjacob Pre-commit review requested. em(4) tackerman Pre-commit review requested. tdfx(4) cokane Just keep me informed of changes, try not to break it. sendmail gshapiro Pre-commit review requested. @@ -135,11 +134,7 @@ List below generated with: $ cd /usr/src; find */* -type f|xargs egrep 'MAINTAINER[ ]*=' -bin/dd/Makefile:MAINTAINER= green@FreeBSD.org -games/fortune/datfiles/Makefile:MAINTAINER= jkh -gnu/usr.bin/man/apropos/Makefile:MAINTAINER= wosch sys/modules/3dfx/Makefile:MAINTAINER= cokane@FreeBSD.org sys/modules/urio/Makefile:MAINTAINER= Iwasa Kazmi tools/tools/sysdoc/Makefile:MAINTAINER= trhodes@FreeBSD.org -usr.bin/locate/Makefile:MAINTAINER= wosch usr.sbin/zic/Makefile:MAINTAINER= wollman@FreeBSD.org ==== //depot/projects/tty/ObsoleteFiles.inc#8 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.39 2006/07/06 11:43:53 delphij Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.41 2006/07/08 03:22:44 avatar Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -594,6 +594,8 @@ OLD_FILES+=usr/share/man/man1aout/strip.1aout.gz OLD_FILES+=bin/mountd OLD_FILES+=bin/nfsd +# 20020707 sbin/nfsd -> usr.sbin/nfsd +OLD_FILES+=sbin/nfsd # 200206XX OLD_FILES+=usr/lib/libpam_ssh.a OLD_FILES+=usr/lib/libpam_ssh_p.a @@ -622,6 +624,9 @@ OLD_FILES+=usr/bin/find2perl OLD_FILES+=usr/sbin/pkg_update OLD_FILES+=usr/sbin/scriptdump +# 20020409 GC kget(1), userconfig is long dead. +OLD_FILES+=sbin/kget +OLD_FILES+=usr/share/man/man8/kget.8.gz # 200203XX OLD_FILES+=usr/lib/libss.a OLD_FILES+=usr/lib/libss_p.a @@ -649,6 +654,9 @@ OLD_FILES+=usr/sbin/stlstty OLD_FILES+=usr/sbin/ispppcontrol OLD_FILES+=usr/sbin/rndcontrol +# 20010523 mount_portal -> mount_portalfs +OLD_FILES+=sbin/mount_portal +OLD_FILES+=usr/share/man/man8/mount_portal.8.gz # 200104XX OLD_FILES+=usr/lib/libdescrypt.a OLD_FILES+=usr/lib/libscrypt.a ==== //depot/projects/tty/UPDATING#31 (text+ko) ==== @@ -21,6 +21,12 @@ developers choose to disable these features on build machines to maximize performance. +20060709: + The interface version of the i4b kernel part has changed. So + after updating the kernel sources and compiling a new kernel, + the i4b user space tools in "/usr/src/usr.sbin/i4b" must also + be rebuilt, and vice versa. + 20060627: The XBOX kernel now defaults to the nfe(4) driver instead of the nve(4) driver. Please update your configuration @@ -585,4 +591,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.450 2006/06/27 20:22:32 rink Exp $ +$FreeBSD: src/UPDATING,v 1.451 2006/07/09 21:16:06 twinterg Exp $ ==== //depot/projects/tty/bin/dd/Makefile#5 (text+ko) ==== @@ -1,7 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 5/31/93 -# $FreeBSD: src/bin/dd/Makefile,v 1.18 2004/04/09 07:13:27 njl Exp $ - -MAINTAINER= green@FreeBSD.org +# $FreeBSD: src/bin/dd/Makefile,v 1.19 2006/07/09 21:47:37 markm Exp $ PROG= dd SRCS= args.c conv.c conv_tab.c dd.c misc.c position.c ==== //depot/projects/tty/contrib/texinfo/FREEBSD-upgrade#5 (text+ko) ==== @@ -1,5 +1,5 @@ # ex:ts=8 -$FreeBSD: src/contrib/texinfo/FREEBSD-upgrade,v 1.6 2005/05/23 10:55:29 ru Exp $ +$FreeBSD: src/contrib/texinfo/FREEBSD-upgrade,v 1.7 2006/07/08 07:32:41 cperciva Exp $ GNU Texinfo 4.8 originals can be found at: ftp://ftp.gnu.org/gnu/texinfo/ @@ -36,3 +36,7 @@ ru@FreeBSD.org 23-May-2005 + +NOTE: The upstream fix to util/texindex.c which fixes CVE-2005-3011 +(FreeBSD-SA-06:01.texindex) causes temporary files to not be removed +when handling very large inputs. FreeBSD's fix works. ==== //depot/projects/tty/etc/rc.d/dhclient#8 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: dhclient,v 1.8 2002/03/22 04:33:58 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/dhclient,v 1.21 2005/07/26 00:37:19 brooks Exp $ +# $FreeBSD: src/etc/rc.d/dhclient,v 1.22 2006/07/09 06:54:24 stefanf Exp $ # # PROVIDE: dhclient @@ -18,7 +18,7 @@ dhclient_start() { - # prevent unnecessicary restarts + # prevent unnecessary restarts # XXX: should use a pidfile if [ -x /usr/bin/pgrep ]; then pids=`/usr/bin/pgrep -f "dhclient: $ifn(\$| .*)"` ==== //depot/projects/tty/etc/rc.d/mountcritlocal#5 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: mountcritlocal,v 1.7 2002/04/29 12:29:53 lukem Exp $ -# $FreeBSD: src/etc/rc.d/mountcritlocal,v 1.12 2004/10/07 13:55:26 mtm Exp $ +# $FreeBSD: src/etc/rc.d/mountcritlocal,v 1.13 2006/07/12 16:05:51 des Exp $ # # PROVIDE: mountcritlocal @@ -27,6 +27,7 @@ esac # Mount everything except nfs filesystems. + echo -n 'Mounting local file systems:' mount_excludes='no' for i in ${netfs_types}; do fstype=${i%:*} @@ -34,6 +35,7 @@ done mount_excludes=${mount_excludes%,} mount -a -t ${mount_excludes} + echo '.' case $? in 0) ==== //depot/projects/tty/games/fortune/datfiles/Makefile#4 (text+ko) ==== @@ -1,15 +1,10 @@ # @(#)Makefile 8.2 (Berkeley) 4/19/94 -# $FreeBSD: src/games/fortune/datfiles/Makefile,v 1.33 2005/02/03 00:20:36 ru Exp $ +# $FreeBSD: src/games/fortune/datfiles/Makefile,v 1.34 2006/07/09 20:26:36 markm Exp $ FILES= fortunes freebsd-tips murphy startrek zippy BLDS= fortunes.dat murphy.dat startrek.dat zippy.dat \ fortunes-o fortunes-o.dat freebsd-tips.dat -# Pass all new entries by ${MAINTAINER} to preserve some semblance of -# humor in the fortune files. What's funny to you on 6 beers may not -# be funny to anyone else. -MAINTAINER= jkh - # TO AVOID INSTALLING THE POTENTIALLY OFFENSIVE FORTUNES, COMMENT OUT THE # THREE LINES AND UNCOMMENT THE FOURTH LINE. ==== //depot/projects/tty/games/fortune/datfiles/fortunes#26 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.221 2006/06/20 08:34:36 phk Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.223 2006/07/10 16:53:32 phk Exp $ % ======================================================================= @@ -29705,6 +29705,10 @@ remember. -- Eugene McCarthy % +It is difficult to get a man to understand something when his salary +depends upon his not understanding it. + -- Upton Sinclair +% It is difficult to legislate morality in the absence of moral legislators. % It is difficult to produce a television documentary that is both ==== //depot/projects/tty/lib/libc/posix1e/Makefile.inc#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc/posix1e/Makefile.inc,v 1.18 2006/03/13 01:14:58 deischen Exp $ +# $FreeBSD: src/lib/libc/posix1e/Makefile.inc,v 1.19 2006/07/07 14:02:17 rwatson Exp $ .PATH: ${.CURDIR}/posix1e @@ -53,7 +53,7 @@ mac.3 \ mac.conf.5 \ mac_free.3 \ - mac_is_present_np.3 \ + mac_is_present.3 \ mac_get.3 \ mac_prepare.3 \ mac_set.3 \ ==== //depot/projects/tty/lib/libc/posix1e/mac_is_present.3#2 (text+ko) ==== @@ -28,13 +28,13 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/posix1e/mac_is_present.3,v 1.6 2003/08/22 18:01:03 rwatson Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac_is_present.3,v 1.8 2006/07/07 14:02:17 rwatson Exp $ .\" .Dd January 9, 2002 .Dt MAC_IS_PRESENT_NP 3 .Os .Sh NAME -.Nm mac_is_present_np +.Nm mac_is_present .Nd report whether the running system has MAC support .Sh LIBRARY .Lb libc @@ -44,7 +44,7 @@ .Fn mac_is_present "const char *policyname" .Sh DESCRIPTION The -.Fn mac_is_present_np +.Fn mac_is_present function determines whether the currently-running kernel supports MAC for a given policy or not. If ==== //depot/projects/tty/lib/libc/posix1e/mac_prepare.3#7 (text+ko) ==== @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/posix1e/mac_prepare.3,v 1.7 2005/07/31 03:30:44 keramida Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac_prepare.3,v 1.8 2006/07/07 14:02:17 rwatson Exp $ .\" .Dd August 22, 2003 .Os @@ -103,7 +103,7 @@ .Xr mac 3 , .Xr mac_free 3 , .Xr mac_get 3 , -.Xr mac_is_present_np 3 , +.Xr mac_is_present 3 , .Xr mac_set 3 , .Xr mac 4 , .Xr mac.conf 5 , ==== //depot/projects/tty/lib/libc/posix1e/mac_set.3#4 (text+ko) ==== @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/posix1e/mac_set.3,v 1.10 2003/11/16 20:21:21 rwatson Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac_set.3,v 1.11 2006/07/07 14:02:17 rwatson Exp $ .\" .Dd January 14, 2003 .Dt MAC_SET 3 @@ -135,7 +135,7 @@ .Xr mac 3 , .Xr mac_free 3 , .Xr mac_get 3 , -.Xr mac_is_present_np 3 , +.Xr mac_is_present 3 , .Xr mac_prepare 3 , .Xr mac_text 3 , .Xr mac 4 , ==== //depot/projects/tty/lib/libc/posix1e/mac_text.3#5 (text+ko) ==== @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/posix1e/mac_text.3,v 1.11 2004/06/30 20:09:09 ru Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac_text.3,v 1.12 2006/07/07 14:02:17 rwatson Exp $ .\" .Dd December 21, 2001 .Dt MAC_TEXT 3 @@ -95,7 +95,7 @@ .Xr free 3 , .Xr mac 3 , .Xr mac_get 3 , -.Xr mac_is_present_np 3 , +.Xr mac_is_present 3 , .Xr mac_prepare 3 , .Xr mac_set 3 , .Xr mac 4 , ==== //depot/projects/tty/lib/libthr/sys/thr_error.c#3 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/sys/thr_error.c,v 1.2 2005/04/02 01:20:00 davidxu Exp $ + * $FreeBSD: src/lib/libthr/sys/thr_error.c,v 1.3 2006/07/12 03:44:05 davidxu Exp $ */ #include @@ -45,10 +45,12 @@ int * __error(void) { - struct pthread *curthread = _get_curthread(); + struct pthread *curthread; - if (curthread != NULL && curthread != _thr_initial) - return (&curthread->error); - else - return (&errno); + if (_thr_initial != NULL) { + curthread = _get_curthread(); + if (curthread != NULL && curthread != _thr_initial) + return (&curthread->error); + } + return (&errno); } ==== //depot/projects/tty/lib/libthr/thread/thr_attr.c#6 (text+ko) ==== @@ -93,7 +93,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_attr.c,v 1.6 2006/04/27 08:18:23 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_attr.c,v 1.7 2006/07/12 06:13:18 davidxu Exp $ */ #include "namespace.h" @@ -434,9 +434,17 @@ policy = (*attr)->sched_policy; - if (param->sched_priority < _thr_priorities[policy-1].pri_min || - param->sched_priority > _thr_priorities[policy-1].pri_max) + if (policy == SCHED_FIFO || policy == SCHED_RR) { + if (param->sched_priority < _thr_priorities[policy-1].pri_min || + param->sched_priority > _thr_priorities[policy-1].pri_max) return (ENOTSUP); + } else { + /* + * Ignore it for SCHED_OTHER now, patches for glib ports + * are wrongly using M:N thread library's internal macro + * THR_MIN_PRIORITY and THR_MAX_PRIORITY. + */ + } (*attr)->prio = param->sched_priority; ==== //depot/projects/tty/lib/libthr/thread/thr_create.c#11 (text+ko) ==== @@ -24,7 +24,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/lib/libthr/thread/thr_create.c,v 1.29 2006/04/04 02:57:49 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_create.c,v 1.30 2006/07/12 06:13:18 davidxu Exp $ */ #include "namespace.h" @@ -50,6 +50,7 @@ { struct pthread *curthread, *new_thread; struct thr_param param; + struct thr_sched_param sched_param; int ret = 0, locked, create_suspended; sigset_t set, oset; @@ -105,30 +106,6 @@ new_thread->arg = arg; new_thread->cancelflags = PTHREAD_CANCEL_ENABLE | PTHREAD_CANCEL_DEFERRED; - /* - * Check if this thread is to inherit the scheduling - * attributes from its parent: - */ - if (new_thread->attr.sched_inherit == PTHREAD_INHERIT_SCHED) { - /* - * Copy the scheduling attributes. Lock the scheduling - * lock to get consistent scheduling parameters. - */ - THR_LOCK(curthread); - new_thread->base_priority = curthread->base_priority; - new_thread->attr.prio = curthread->base_priority; - new_thread->attr.sched_policy = curthread->attr.sched_policy; - THR_UNLOCK(curthread); - } else { - /* - * Use just the thread priority, leaving the - * other scheduling attributes as their - * default values: - */ - new_thread->base_priority = new_thread->attr.prio; - } - new_thread->active_priority = new_thread->base_priority; - /* Initialize the mutex queue: */ TAILQ_INIT(&new_thread->mutexq); @@ -166,6 +143,13 @@ param.flags = 0; if (new_thread->attr.flags & PTHREAD_SCOPE_SYSTEM) param.flags |= THR_SYSTEM_SCOPE; + if (new_thread->attr.sched_inherit == PTHREAD_INHERIT_SCHED) + param.sched = NULL; + else { + param.sched = &sched_param; + sched_param.policy = new_thread->attr.sched_policy; + sched_param.param.sched_priority = new_thread->attr.prio; + } /* Schedule the new thread. */ if (create_suspended) { @@ -177,6 +161,15 @@ ret = thr_new(¶m, sizeof(param)); + if (ret != 0) { + ret = errno; + /* + * Translate EPROCLIM into well-known POSIX code EAGAIN. + */ + if (ret == EPROCLIM) + ret = EAGAIN; + } + if (create_suspended) __sys_sigprocmask(SIG_SETMASK, &oset, NULL); @@ -196,7 +189,6 @@ _thr_ref_delete_unlocked(curthread, new_thread); THREAD_LIST_UNLOCK(curthread); (*thread) = 0; - ret = EAGAIN; } else if (locked) { _thr_report_creation(curthread, new_thread); THR_THREAD_UNLOCK(curthread, new_thread); ==== //depot/projects/tty/lib/libthr/thread/thr_getschedparam.c#5 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_getschedparam.c,v 1.5 2006/04/27 08:18:23 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_getschedparam.c,v 1.6 2006/07/12 06:13:18 davidxu Exp $ */ #include "namespace.h" @@ -46,32 +46,47 @@ struct sched_param *param) { struct pthread *curthread = _get_curthread(); - int ret, tmp; + int ret; + + if (policy == NULL || param == NULL) + return (EINVAL); - if ((param == NULL) || (policy == NULL)) - /* Return an invalid argument error: */ - ret = EINVAL; - else if (pthread == curthread) { + if (pthread == curthread) { /* * Avoid searching the thread list when it is the current * thread. */ - THR_THREAD_LOCK(curthread, curthread); - param->sched_priority = pthread->base_priority; - tmp = pthread->attr.sched_policy; - THR_THREAD_UNLOCK(curthread, curthread); - *policy = tmp; - ret = 0; + THR_LOCK(curthread); + + /* + * XXX Here we need two separated syscalls, atomic is only + * guaranteed in thread library, a new syscall is needed. + */ + + *policy = sched_getscheduler((pid_t)curthread->tid); + if (*policy == -1) + ret = errno; + else { + ret = sched_getparam((pid_t)curthread->tid, param); + if (ret == -1) + ret = errno; + } + THR_UNLOCK(curthread); } /* Find the thread in the list of active threads. */ else if ((ret = _thr_ref_add(curthread, pthread, /*include dead*/0)) == 0) { THR_THREAD_LOCK(curthread, pthread); - param->sched_priority = pthread->base_priority; - tmp = pthread->attr.sched_policy; + *policy = sched_getscheduler((pid_t)pthread->tid); + if (*policy == -1) + ret = errno; + else { + ret = sched_getparam((pid_t)pthread->tid, param); + if (ret == -1) + ret = errno; + } THR_THREAD_UNLOCK(curthread, pthread); _thr_ref_delete(curthread, pthread); - *policy = tmp; } return (ret); } ==== //depot/projects/tty/lib/libthr/thread/thr_init.c#11 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_init.c,v 1.34 2006/04/27 08:18:23 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_init.c,v 1.35 2006/07/12 06:13:18 davidxu Exp $ */ #include "namespace.h" @@ -40,6 +40,7 @@ #include #include #include +#include #include #include #include @@ -67,14 +68,10 @@ atfork_head _thr_atfork_list = TAILQ_HEAD_INITIALIZER(_thr_atfork_list); umtx_t _thr_atfork_lock; -/* - * XXX these values should be updated from kernel at startup, - * but current they are same. - */ struct pthread_prio _thr_priorities[3] = { - {0, 31, 0}, /* FIF0 */ - {-20, 20, 0}, /* OTHER */ - {0, 31, 0} /* RR */ + {RTP_PRIO_MIN, RTP_PRIO_MAX, 0}, /* FIFO */ + {0, 0, 63}, /* OTHER */ + {RTP_PRIO_MIN, RTP_PRIO_MAX, 0} /* RR */ }; struct pthread_attr _pthread_attr_default = { @@ -156,8 +153,6 @@ STATIC_LIB_REQUIRE(_sigaction); STATIC_LIB_REQUIRE(_sigprocmask); STATIC_LIB_REQUIRE(_sigsuspend); -STATIC_LIB_REQUIRE(_socket); -STATIC_LIB_REQUIRE(_socketpair); STATIC_LIB_REQUIRE(_thread_init_hack); STATIC_LIB_REQUIRE(_wait4); STATIC_LIB_REQUIRE(_write); @@ -407,11 +402,6 @@ thread->cancelflags = PTHREAD_CANCEL_ENABLE | PTHREAD_CANCEL_DEFERRED; thr_set_name(thread->tid, "initial thread"); - /* Default the priority of the initial thread: */ - thread->base_priority = THR_DEF_PRIORITY; - thread->active_priority = THR_DEF_PRIORITY; - thread->inherited_priority = 0; - /* Initialize the mutex queue: */ TAILQ_INIT(&thread->mutexq); ==== //depot/projects/tty/lib/libthr/thread/thr_private.h#13 (text+ko) ==== @@ -26,7 +26,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/lib/libthr/thread/thr_private.h,v 1.65 2006/06/03 00:19:40 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_private.h,v 1.66 2006/07/12 06:13:18 davidxu Exp $ */ #ifndef _THR_PRIVATE_H @@ -262,7 +262,7 @@ * Define priorities returned by kernel. */ #define THR_MIN_PRIORITY (_thr_priorities[SCHED_OTHER-1].pri_min) -#define THR_MAX_PRIORITY (_thr_priorities[SCHED_OTHER-1].pri_min) +#define THR_MAX_PRIORITY (_thr_priorities[SCHED_OTHER-1].pri_max) #define THR_DEF_PRIORITY (_thr_priorities[SCHED_OTHER-1].pri_default) #define THR_MIN_RR_PRIORITY (_thr_priorities[SCHED_RR-1].pri_min) @@ -271,7 +271,7 @@ /* XXX The SCHED_FIFO should have same priority range as SCHED_RR */ #define THR_MIN_FIFO_PRIORITY (_thr_priorities[SCHED_FIFO_1].pri_min) -#define THR_MAX_FIFO_PRIORITY (_thr_priorities[SCHED_FIFO-1].pri_min) +#define THR_MAX_FIFO_PRIORITY (_thr_priorities[SCHED_FIFO-1].pri_max) #define THR_DEF_FIFO_PRIORITY (_thr_priorities[SCHED_FIFO-1].pri_default) struct pthread_prio { @@ -413,32 +413,6 @@ #define TLFLAGS_IN_GCLIST 0x0004 /* thread in gc list */ #define TLFLAGS_DETACHED 0x0008 /* thread is detached */ - /* - * Base priority is the user setable and retrievable priority - * of the thread. It is only affected by explicit calls to - * set thread priority and upon thread creation via a thread - * attribute or default priority. - */ - char base_priority; - - /* - * Inherited priority is the priority a thread inherits by - * taking a priority inheritence or protection mutex. It - * is not affected by base priority changes. Inherited - * priority defaults to and remains 0 until a mutex is taken - * that is being waited on by any other thread whose priority - * is non-zero. - */ - char inherited_priority; - - /* - * Active priority is always the maximum of the threads base - * priority and inherited priority. When there is a change - * in either the base or inherited priority, the active - * priority must be recalculated. - */ - char active_priority; - /* Queue of currently owned simple type mutexes. */ TAILQ_HEAD(, pthread_mutex) mutexq; ==== //depot/projects/tty/lib/libthr/thread/thr_setprio.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Jul 13 08:47:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 736F916A4E0; Thu, 13 Jul 2006 08:47:41 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 4EAAC16A4DA for ; Thu, 13 Jul 2006 08:47:41 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BB85643D53 for ; Thu, 13 Jul 2006 08:47:40 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6D8leLG087167 for ; Thu, 13 Jul 2006 08:47:40 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6D8le7B087164 for perforce@freebsd.org; Thu, 13 Jul 2006 08:47:40 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 13 Jul 2006 08:47:40 GMT Message-Id: <200607130847.k6D8le7B087164@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 101438 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 08:47:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=101438 Change 101438 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/13 08:47:02 Fix endian conversions in event messages, ioc page retrievals, and zero-data-length commands. This appears to be enough to make targets attach and do simple I/O. Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#9 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.c#5 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/conf/GENERIC#6 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/include/bus.h#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/hviommu.c#2 edit .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/nexus.c#2 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#9 (text+ko) ==== @@ -516,6 +516,10 @@ handled = 0; msg = (MSG_EVENT_NOTIFY_REPLY *)reply_frame; + msg->EventDataLength = le16toh(msg->EventDataLength); + msg->IOCStatus = le16toh(msg->IOCStatus); + msg->IOCLogInfo = le32toh(msg->IOCLogInfo); + msg->Event = le32toh(msg->Event); MPT_PERS_FOREACH(mpt, pers) handled += pers->event(mpt, req, msg); @@ -1539,6 +1543,7 @@ ((Action == MPI_CONFIG_ACTION_PAGE_WRITE_CURRENT || Action == MPI_CONFIG_ACTION_PAGE_WRITE_NVRAM) ? MPI_SGE_FLAGS_HOST_TO_IOC : MPI_SGE_FLAGS_IOC_TO_HOST))); + se->FlagsLength = htole32(se->FlagsLength); cfgp->MsgContext = htole32(req->index | MPT_REPLY_HANDLER_CONFIG); mpt_check_doorbell(mpt); ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.c#5 (text+ko) ==== @@ -961,6 +961,7 @@ MPI_pSGE_SET_FLAGS(se1, (MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST)); + se1->FlagsLength = htole32(se1->FlagsLength); goto out; } @@ -1032,6 +1033,7 @@ MPI_SGE_FLAGS_END_OF_BUFFER; } MPI_pSGE_SET_FLAGS(se, tf); + se->FlagsLength = htole32(se->FlagsLength); } if (seg == nseg) { @@ -1149,6 +1151,7 @@ MPI_SGE_FLAGS_END_OF_BUFFER; } MPI_pSGE_SET_FLAGS(se, tf); + se->FlagsLength = htole32(se->FlagsLength); se++; seg++; dm_segs++; @@ -1362,6 +1365,7 @@ MPI_pSGE_SET_FLAGS(se1, (MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST)); + se1->FlagsLength = htole32(se1->FlagsLength); goto out; } @@ -1433,6 +1437,7 @@ MPI_SGE_FLAGS_END_OF_BUFFER; } MPI_pSGE_SET_FLAGS(se, tf); + se->FlagsLength = htole32(se->FlagsLength); } if (seg == nseg) { @@ -1548,6 +1553,7 @@ MPI_SGE_FLAGS_END_OF_BUFFER; } MPI_pSGE_SET_FLAGS(se, tf); + se->FlagsLength = htole32(se->FlagsLength); se++; seg++; dm_segs++; @@ -1966,17 +1972,21 @@ mpt_cam_event(struct mpt_softc *mpt, request_t *req, MSG_EVENT_NOTIFY_REPLY *msg) { + uint32_t data0, data1; + + data0 = le32toh(msg->Data[0]); + data1 = le32toh(msg->Data[1]); printf("%s(%d): msg->Event 0x%x\n",__FUNCTION__,__LINE__,le32toh(msg->Event)); - switch(le32toh(msg->Event) & 0xFF) { + switch(msg->Event & 0xFF) { case MPI_EVENT_UNIT_ATTENTION: mpt_prt(mpt, "Bus: 0x%02x TargetID: 0x%02x\n", - (msg->Data[0] >> 8) & 0xff, msg->Data[0] & 0xff); + (data0 >> 8) & 0xff, data0 & 0xff); break; case MPI_EVENT_IOC_BUS_RESET: /* We generated a bus reset */ mpt_prt(mpt, "IOC Bus Reset Port: %d\n", - (msg->Data[0] >> 8) & 0xff); + (data0 >> 8) & 0xff); xpt_async(AC_BUS_RESET, mpt->path, NULL); break; @@ -1994,81 +2004,81 @@ /* * In general this means a device has been added to the loop. */ - mpt_prt(mpt, "Rescan Port: %d\n", (msg->Data[0] >> 8) & 0xff); + mpt_prt(mpt, "Rescan Port: %d\n", (data0 >> 8) & 0xff); /* xpt_async(AC_FOUND_DEVICE, path, NULL); */ break; case MPI_EVENT_LINK_STATUS_CHANGE: mpt_prt(mpt, "Port %d: LinkState: %s\n", - (msg->Data[1] >> 8) & 0xff, - ((msg->Data[0] & 0xff) == 0)? "Failed" : "Active"); + (data1 >> 8) & 0xff, + ((data0 & 0xff) == 0)? "Failed" : "Active"); break; case MPI_EVENT_LOOP_STATE_CHANGE: - switch ((msg->Data[0] >> 16) & 0xff) { + switch ((data0 >> 16) & 0xff) { case 0x01: mpt_prt(mpt, "Port 0x%x: FC LinkEvent: LIP(%02x,%02x) " "(Loop Initialization)\n", - (msg->Data[1] >> 8) & 0xff, - (msg->Data[0] >> 8) & 0xff, - (msg->Data[0] ) & 0xff); - switch ((msg->Data[0] >> 8) & 0xff) { + (data1 >> 8) & 0xff, + (data0 >> 8) & 0xff, + (data0 ) & 0xff); + switch ((data0 >> 8) & 0xff) { case 0xF7: - if ((msg->Data[0] & 0xff) == 0xF7) { + if ((data0 & 0xff) == 0xF7) { mpt_prt(mpt, "Device needs AL_PA\n"); } else { mpt_prt(mpt, "Device %02x doesn't like " "FC performance\n", - msg->Data[0] & 0xFF); + data0 & 0xFF); } break; case 0xF8: - if ((msg->Data[0] & 0xff) == 0xF7) { + if ((data0 & 0xff) == 0xF7) { mpt_prt(mpt, "Device had loop failure " "at its receiver prior to acquiring" " AL_PA\n"); } else { mpt_prt(mpt, "Device %02x detected loop" " failure at its receiver\n", - msg->Data[0] & 0xFF); + data0 & 0xFF); } break; default: mpt_prt(mpt, "Device %02x requests that device " "%02x reset itself\n", - msg->Data[0] & 0xFF, - (msg->Data[0] >> 8) & 0xFF); + data0 & 0xFF, + (data0 >> 8) & 0xFF); break; } break; case 0x02: mpt_prt(mpt, "Port 0x%x: FC LinkEvent: " "LPE(%02x,%02x) (Loop Port Enable)\n", - (msg->Data[1] >> 8) & 0xff, /* Port */ - (msg->Data[0] >> 8) & 0xff, /* Character 3 */ - (msg->Data[0] ) & 0xff /* Character 4 */); + (data1 >> 8) & 0xff, /* Port */ + (data0 >> 8) & 0xff, /* Character 3 */ + (data0 ) & 0xff /* Character 4 */); break; case 0x03: mpt_prt(mpt, "Port 0x%x: FC LinkEvent: " "LPB(%02x,%02x) (Loop Port Bypass)\n", - (msg->Data[1] >> 8) & 0xff, /* Port */ - (msg->Data[0] >> 8) & 0xff, /* Character 3 */ - (msg->Data[0] ) & 0xff /* Character 4 */); + (data1 >> 8) & 0xff, /* Port */ + (data0 >> 8) & 0xff, /* Character 3 */ + (data0 ) & 0xff /* Character 4 */); break; default: mpt_prt(mpt, "Port 0x%x: FC LinkEvent: Unknown " "FC event (%02x %02x %02x)\n", - (msg->Data[1] >> 8) & 0xff, /* Port */ - (msg->Data[0] >> 16) & 0xff, /* Event */ - (msg->Data[0] >> 8) & 0xff, /* Character 3 */ - (msg->Data[0] ) & 0xff /* Character 4 */); + (data1 >> 8) & 0xff, /* Port */ + (data0 >> 16) & 0xff, /* Event */ + (data0 >> 8) & 0xff, /* Character 3 */ + (data0 ) & 0xff /* Character 4 */); } break; case MPI_EVENT_LOGOUT: mpt_prt(mpt, "FC Logout Port: %d N_PortID: %02x\n", - (msg->Data[1] >> 8) & 0xff, msg->Data[0]); + (data1 >> 8) & 0xff, data0); break; case MPI_EVENT_EVENT_CHANGE: mpt_lprt(mpt, MPT_PRT_DEBUG, ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/conf/GENERIC#6 (text+ko) ==== @@ -98,7 +98,7 @@ #device ahc # AHA2940 and onboard AIC7xxx devices #device isp # Qlogic family #device ispfw # Firmware module for Qlogic host adapters -#device mpt # LSI-Logic MPT-Fusion (not yet) +device mpt # LSI-Logic MPT-Fusion (not yet) #device ncr # NCR/Symbios Logic #device sym # NCR/Symbios Logic (newer chipsets + those of `ncr') #device esp # NCR53c9x (FEPS/FAS366) ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/include/bus.h#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/hviommu.c#2 (text+ko) ==== ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/nexus.c#2 (text+ko) ==== @@ -329,32 +329,30 @@ goto fail; } + if ((rman_get_flags(res) & RF_SHAREABLE) == 0) + flags |= INTR_EXCL; + + /* We depend here on rman_activate_resource() being idempotent. */ + if ((error = rman_activate_resource(res))) + goto fail; + + error = inthand_add(device_get_nameunit(child), ihdl, + intr, arg, flags, cookiep); + cpuid = 0; - if (hvio_intr_settarget(ihdl, cpuid) != H_EOK) { error = ENXIO; goto fail; } - if (hvio_intr_setstate(ihdl, HV_INTR_IDLE_STATE) != H_EOK) { error = ENXIO; goto fail; } - if (hvio_intr_setvalid(ihdl, HV_INTR_VALID) != H_EOK) { error = ENXIO; goto fail; } - if ((rman_get_flags(res) & RF_SHAREABLE) == 0) - flags |= INTR_EXCL; - - /* We depend here on rman_activate_resource() being idempotent. */ - if ((error = rman_activate_resource(res))) - goto fail; - - error = inthand_add(device_get_nameunit(child), ihdl, - intr, arg, flags, cookiep); fail: From owner-p4-projects@FreeBSD.ORG Thu Jul 13 09:24:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 83D0416A4E0; Thu, 13 Jul 2006 09:24:38 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 5F8D916A4DD for ; Thu, 13 Jul 2006 09:24:38 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AB4B843D49 for ; Thu, 13 Jul 2006 09:24:33 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6D9OXL6090511 for ; Thu, 13 Jul 2006 09:24:33 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6D9OXaC090508 for perforce@freebsd.org; Thu, 13 Jul 2006 09:24:33 GMT (envelope-from jb@freebsd.org) Date: Thu, 13 Jul 2006 09:24:33 GMT Message-Id: <200607130924.k6D9OXaC090508@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101447 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 09:24:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=101447 Change 101447 by jb@jb_freebsd2 on 2006/07/13 09:24:02 Remove all my debugging cruft now that mpt works on sun4v. We have disks! We have disks! We have disks! We have disks! (and the crowd cheered!) Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.c#6 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt_cam.c#6 (text+ko) ==== @@ -188,7 +188,6 @@ if ((mpt->mpt_proto_flags & MPI_PORTFACTS_PROTOCOL_INITIATOR) != 0 || (mpt->mpt_proto_flags & MPI_PORTFACTS_PROTOCOL_TARGET) != 0 || (mpt->ioc_page2 != NULL && mpt->ioc_page2->MaxPhysDisks != 0)) { -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); return (0); } return (ENODEV); @@ -202,12 +201,10 @@ int maxq; int error; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); TAILQ_INIT(&mpt->request_timeout_list); maxq = (mpt->mpt_global_credits < MPT_MAX_REQUESTS(mpt))? mpt->mpt_global_credits : MPT_MAX_REQUESTS(mpt); -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); handler.reply_handler = mpt_scsi_reply_handler; error = mpt_register_handler(mpt, MPT_HANDLER_REPLY, handler, &scsi_io_handler_id); @@ -215,7 +212,6 @@ goto cleanup0; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); handler.reply_handler = mpt_scsi_tmf_reply_handler; error = mpt_register_handler(mpt, MPT_HANDLER_REPLY, handler, &scsi_tmf_handler_id); @@ -223,7 +219,6 @@ goto cleanup0; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * If we're fibre channel and could support target mode, we register * an ELS reply handler and give it resources. @@ -242,7 +237,6 @@ maxq -= mpt->els_cmds_allocated; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * If we support target mode, we register a reply handler for it, * but don't add resources until we actually enable target mode. @@ -256,7 +250,6 @@ } } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * We keep one request reserved for timeout TMF requests. */ @@ -267,7 +260,6 @@ goto cleanup0; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Mark the request as free even though not on the free list. * There is only one TMF request allowed to be outstanding at @@ -283,7 +275,6 @@ goto cleanup0; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * The rest of this is CAM foo, for which we need to drop our lock */ @@ -299,7 +290,6 @@ goto cleanup; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Construct our SIM entry. */ @@ -312,7 +302,6 @@ goto cleanup; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Register exactly this bus. */ @@ -322,7 +311,6 @@ goto cleanup; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (xpt_create_path(&mpt->path, NULL, cam_sim_path(mpt->sim), CAM_TARGET_WILDCARD, CAM_LUN_WILDCARD) != CAM_REQ_CMP) { mpt_prt(mpt, "Unable to allocate Path!\n"); @@ -330,18 +318,15 @@ goto cleanup; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Only register a second bus for RAID physical * devices if the controller supports RAID. */ if (mpt->ioc_page2 == NULL || mpt->ioc_page2->MaxPhysDisks == 0) { CAMLOCK_2_MPTLOCK(mpt); -mpt_prt(mpt, "%s(%d): success\n",__FUNCTION__,__LINE__); return (0); } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Create a "bus" to export all hidden disks to CAM. */ @@ -353,7 +338,6 @@ goto cleanup; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Register this bus. */ @@ -363,7 +347,6 @@ goto cleanup; } -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (xpt_create_path(&mpt->phydisk_path, NULL, cam_sim_path(mpt->phydisk_sim), CAM_TARGET_WILDCARD, CAM_LUN_WILDCARD) != CAM_REQ_CMP) { @@ -372,7 +355,6 @@ goto cleanup; } CAMLOCK_2_MPTLOCK(mpt); -mpt_prt(mpt, "%s(%d): success\n",__FUNCTION__,__LINE__); return (0); cleanup: @@ -454,7 +436,6 @@ static int mpt_set_initial_config_fc(struct mpt_softc *mpt) { -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); #if 0 CONFIG_PAGE_FC_PORT_1 fc; U32 fl; @@ -507,7 +488,6 @@ static int mpt_read_config_info_sas(struct mpt_softc *mpt) { -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); return (0); } @@ -517,7 +497,6 @@ static int mpt_set_initial_config_sas(struct mpt_softc *mpt) { -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); return (0); } @@ -529,7 +508,6 @@ { int rv, i; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); rv = mpt_read_cfg_header(mpt, MPI_CONFIG_PAGETYPE_SCSI_PORT, 0, 0, &mpt->mpt_port_page0.Header, FALSE, 5000); if (rv) { @@ -676,7 +654,6 @@ int i, j, pp1val = ((1 << mpt->mpt_ini_id) << 16) | mpt->mpt_ini_id; int error; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); mpt->mpt_disc_enable = 0xff; mpt->mpt_tag_enable = 0; @@ -734,7 +711,6 @@ int mpt_cam_enable(struct mpt_softc *mpt) { -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (mpt->is_fc) { if (mpt_read_config_info_fc(mpt)) { return (EIO); @@ -757,7 +733,6 @@ return (EIO); } } -mpt_prt(mpt, "%s(%d): succeeded\n",__FUNCTION__,__LINE__); return (0); } @@ -766,7 +741,6 @@ { mpt_handler_t handler; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); mpt_terminate_recovery_thread(mpt); handler.reply_handler = mpt_scsi_reply_handler; @@ -1887,7 +1861,6 @@ uint16_t status; uint8_t response; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); error = mpt_scsi_send_tmf(mpt, (tgt != CAM_TARGET_WILDCARD || lun != CAM_LUN_WILDCARD) ? MPI_SCSITASKMGMT_TASKTYPE_TARGET_RESET : @@ -1947,7 +1920,6 @@ request_t *req; PTR_MSG_FC_PRIMITIVE_SEND_REQUEST fc; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); req = mpt_get_request(mpt, FALSE); if (req == NULL) { return (ENOMEM); @@ -1976,7 +1948,6 @@ data0 = le32toh(msg->Data[0]); data1 = le32toh(msg->Data[1]); -printf("%s(%d): msg->Event 0x%x\n",__FUNCTION__,__LINE__,le32toh(msg->Event)); switch(msg->Event & 0xFF) { case MPI_EVENT_UNIT_ATTENTION: mpt_prt(mpt, "Bus: 0x%02x TargetID: 0x%02x\n", @@ -2205,7 +2176,6 @@ MSG_SCSI_TASK_MGMT_REPLY *tmf_reply; KASSERT(req == mpt->tmf_req, ("TMF Reply not using mpt->tmf_req")); -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); #ifdef INVARIANTS mpt_req_not_spcl(mpt, req, "mpt_scsi_tmf_reply_handler", __LINE__); #endif @@ -2252,7 +2222,6 @@ PTR_MSG_LINK_SERVICE_RSP_REQUEST rsp; uint32_t fl; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * We are going to reuse the ELS request to send this response back. */ @@ -2322,7 +2291,6 @@ int ioindex; int do_refresh = TRUE; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); #ifdef INVARIANTS KASSERT(mpt_req_on_free_list(mpt, req) == 0, ("fc_els_reply_handler: req %p:%u for function %x on freelist!", @@ -2562,7 +2530,6 @@ static void mpt_cam_ioc_reset(struct mpt_softc *mpt, int type) { -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * The pending list is already run down by * the generic handler. Perform the same @@ -3214,7 +3181,6 @@ uint8_t dval, pval, oval; int rv; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (xpt_path_sim(cts->ccb_h.path) == mpt->phydisk_sim) { if (mpt_map_physdisk(mpt, (union ccb *)cts, &tgt)) { return (-1); @@ -3326,7 +3292,6 @@ { PTR_CONFIG_PAGE_SCSI_DEVICE_1 ptr; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); ptr = &mpt->mpt_dev_page1[tgt]; if (onoff) { ptr->RequestedParameters |= MPI_SCSIDEVPAGE1_RP_WIDE; @@ -3340,7 +3305,6 @@ { PTR_CONFIG_PAGE_SCSI_DEVICE_1 ptr; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); ptr = &mpt->mpt_dev_page1[tgt]; ptr->RequestedParameters &= ~MPI_SCSIDEVPAGE1_RP_MIN_SYNC_PERIOD_MASK; ptr->RequestedParameters &= ~MPI_SCSIDEVPAGE1_RP_MAX_SYNC_OFFSET_MASK; @@ -3409,7 +3373,6 @@ { int error; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); error = mpt_kthread_create(mpt_recovery_thread, mpt, &mpt->recovery_thread, /*flags*/0, /*altstack*/0, "mpt_recovery%d", mpt->unit); @@ -3419,7 +3382,6 @@ static void mpt_terminate_recovery_thread(struct mpt_softc *mpt) { -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (mpt->recovery_thread == NULL) { return; } @@ -3469,7 +3431,6 @@ MSG_SCSI_TASK_MGMT *tmf_req; int error; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * Wait for any current TMF request to complete. * We're only allowed to issue one TMF at a time. @@ -3538,7 +3499,6 @@ union ccb *ccb; int error; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (TAILQ_EMPTY(&mpt->request_timeout_list) != 0) { /* * No work to do- leave. @@ -3668,7 +3628,6 @@ bus_addr_t paddr; uint32_t fl; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); paddr = req->req_pbuf; paddr += MPT_RQSL(mpt); @@ -3717,7 +3676,6 @@ PTR_CMD_BUFFER_DESCRIPTOR cb; bus_addr_t paddr; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); paddr = req->req_pbuf; paddr += MPT_RQSL(mpt); memset(req->req_vbuf, 0, MPT_REQUEST_AREA); @@ -3741,7 +3699,6 @@ { int i; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (mpt->is_fc == 0) { return (TRUE); } @@ -3789,7 +3746,6 @@ { int i, max; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (mpt->tgt_cmd_ptrs) { return (TRUE); } @@ -3851,7 +3807,6 @@ static int mpt_enable_lun(struct mpt_softc *mpt, target_id_t tgt, lun_id_t lun) { -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (tgt == CAM_TARGET_WILDCARD && lun == CAM_LUN_WILDCARD) { mpt->twildcard = 1; } else if (lun >= MPT_MAX_LUNS) { @@ -3884,7 +3839,6 @@ mpt_disable_lun(struct mpt_softc *mpt, target_id_t tgt, lun_id_t lun) { int i; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (tgt == CAM_TARGET_WILDCARD && lun == CAM_LUN_WILDCARD) { mpt->twildcard = 0; } else if (lun >= MPT_MAX_LUNS) { @@ -3923,7 +3877,6 @@ request_t *cmd_req = MPT_TAG_2_REQ(mpt, csio->tag_id); mpt_tgt_state_t *tgt = MPT_TGT_STATE(mpt, cmd_req); -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); switch (tgt->state) { case TGT_STATE_IN_CAM: break; @@ -4164,7 +4117,6 @@ request_t *req; PTR_MSG_TARGET_MODE_ABORT abtp; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); req = mpt_get_request(mpt, FALSE); if (req == NULL) { return (-1); @@ -4209,7 +4161,6 @@ uint32_t fl; int resplen = 0; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); cmd_vbuf = cmd_req->req_vbuf; cmd_vbuf += MPT_RQSL(mpt); tgt = MPT_TGT_STATE(mpt, cmd_req); @@ -4358,7 +4309,6 @@ struct ccb_immed_notify *inot; mpt_tgt_state_t *tgt; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); tgt = MPT_TGT_STATE(mpt, req); inot = (struct ccb_immed_notify *) STAILQ_FIRST(&trtp->inots); if (inot == NULL) { @@ -4421,7 +4371,6 @@ mpt_task_mgmt_t fct = MPT_NIL_TMT_VALUE; uint8_t *cdbp; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); /* * First, DMA sync the received command- which is in the *request* * phys area. @@ -4646,7 +4595,6 @@ union ccb *ccb; U16 status; -mpt_prt(mpt, "%s(%d):\n",__FUNCTION__,__LINE__); if (reply_frame == NULL) { /* * Figure out what the state of the command is. From owner-p4-projects@FreeBSD.ORG Thu Jul 13 11:26:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0BE2616A4E0; Thu, 13 Jul 2006 11:26:15 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 D769C16A4DD for ; Thu, 13 Jul 2006 11:26:14 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8F27243D45 for ; Thu, 13 Jul 2006 11:26:14 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DBQEdS003393 for ; Thu, 13 Jul 2006 11:26:14 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DBQElJ003390 for perforce@freebsd.org; Thu, 13 Jul 2006 11:26:14 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 13 Jul 2006 11:26:14 GMT Message-Id: <200607131126.k6DBQElJ003390@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101452 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 11:26:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101452 Change 101452 by gabor@gabor_spitfire on 2006/07/13 11:25:28 ${GMAKE} should point to ${LOCALBASE}/bin/gmake, since gmake is installed into DESTDIR as a dependency. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#20 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#20 (text+ko) ==== @@ -2027,7 +2027,7 @@ NONEXISTENT?= /nonexistent # Miscellaneous overridable commands: -GMAKE?= gmake +GMAKE?= ${LOCALBASE}/bin/gmake XMKMF?= xmkmf -a .if exists(/sbin/md5) MD5?= /sbin/md5 From owner-p4-projects@FreeBSD.ORG Thu Jul 13 11:29:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6071516A4E2; Thu, 13 Jul 2006 11:29:19 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 3CC8C16A4E0 for ; Thu, 13 Jul 2006 11:29:19 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E1FD243D49 for ; Thu, 13 Jul 2006 11:29:18 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DBTIPu003533 for ; Thu, 13 Jul 2006 11:29:18 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DBTIS3003530 for perforce@freebsd.org; Thu, 13 Jul 2006 11:29:18 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 13 Jul 2006 11:29:18 GMT Message-Id: <200607131129.k6DBTIS3003530@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101453 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 11:29:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=101453 Change 101453 by gabor@gabor_spitfire on 2006/07/13 11:28:52 Set PORT_DBDIR to ${DESTDIR}/var/db/ports, so that 'make config' save the configurations in the DESTDIR environment. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#21 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#21 (text+ko) ==== @@ -1198,7 +1198,7 @@ .endif # where 'make config' records user configuration options -PORT_DBDIR?= /var/db/ports +PORT_DBDIR?= ${DESTDIR}/var/db/ports LDCONFIG_DIR= libdata/ldconfig LDCONFIG32_DIR= libdata/ldconfig32 From owner-p4-projects@FreeBSD.ORG Thu Jul 13 12:37:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3067716A4FE; Thu, 13 Jul 2006 12:37:47 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 0EF3F16A4FC for ; Thu, 13 Jul 2006 12:37:47 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B472643D55 for ; Thu, 13 Jul 2006 12:37:46 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DCbkHS009333 for ; Thu, 13 Jul 2006 12:37:46 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DCbk6l009330 for perforce@freebsd.org; Thu, 13 Jul 2006 12:37:46 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 13 Jul 2006 12:37:46 GMT Message-Id: <200607131237.k6DCbk6l009330@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101459 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 12:37:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=101459 Change 101459 by gabor@gabor_spitfire on 2006/07/13 12:37:32 Create my branch from porters-handbook to document my ports infrastructure improvements. Affected files ... .. //depot/projects/soc2006/gabor_docs/porters-handbook/Makefile#1 branch .. //depot/projects/soc2006/gabor_docs/porters-handbook/book.sgml#1 branch .. //depot/projects/soc2006/gabor_docs/porters-handbook/freebsd.dsl#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jul 13 12:43:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3B0AA16A4DF; Thu, 13 Jul 2006 12:43:55 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 EDA0516A4DE for ; Thu, 13 Jul 2006 12:43:54 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BA3B143D49 for ; Thu, 13 Jul 2006 12:43:54 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DChsR7009697 for ; Thu, 13 Jul 2006 12:43:54 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DChsFU009694 for perforce@freebsd.org; Thu, 13 Jul 2006 12:43:54 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 13 Jul 2006 12:43:54 GMT Message-Id: <200607131243.k6DChsFU009694@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101460 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 12:43:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=101460 Change 101460 by gabor@gabor_spitfire on 2006/07/13 12:43:51 Add explanation of IA32_BINARY_PORT. PR: 98105 Affected files ... .. //depot/projects/soc2006/gabor_docs/porters-handbook/book.sgml#2 edit Differences ... ==== //depot/projects/soc2006/gabor_docs/porters-handbook/book.sgml#2 (text+ko) ==== @@ -10037,6 +10037,13 @@ NOT_FOR_ARCHS_REASON_ARCH. + + If a port fetches compiled i386 binaries and installs them + IA32_BINARY_PORT should be set. If this variable + is set it will be checked if the kernel has compiled-in IA32 + compatibility and if one of these two dependencies isn't available + IGNORE will be set automatically. + From owner-p4-projects@FreeBSD.ORG Thu Jul 13 14:06:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 19EAF16A4E9; Thu, 13 Jul 2006 14:06:44 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 B37F716A4E2 for ; Thu, 13 Jul 2006 14:06:43 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B4A143D60 for ; Thu, 13 Jul 2006 14:06:42 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DE6gSC026651 for ; Thu, 13 Jul 2006 14:06:42 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DE6gOY026648 for perforce@freebsd.org; Thu, 13 Jul 2006 14:06:42 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 13 Jul 2006 14:06:42 GMT Message-Id: <200607131406.k6DE6gOY026648@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101467 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 14:06:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=101467 Change 101467 by gabor@gabor_spitfire on 2006/07/13 14:06:30 Add some explanation what DESTDIR is for and how to write DESTDIR-compliant ports. Affected files ... .. //depot/projects/soc2006/gabor_docs/porters-handbook/book.sgml#3 edit Differences ... ==== //depot/projects/soc2006/gabor_docs/porters-handbook/book.sgml#3 (text+ko) ==== @@ -4757,7 +4757,7 @@ USE_X_PREFIX - The port installs in X11BASE, not + The port installs in X11BASE_REL, not PREFIX. @@ -6778,17 +6778,33 @@ - <makevar>PREFIX</makevar> + <makevar>PREFIX</makevar> and <makevar>DESTDIR</makevar> + Firstly, you should completely unerstand what these two + variables are for. PREFIX determines the + location where all ports should install in the current environemt. + This is usually /usr/local, or + /opt in other operating systems. You + can set PREFIX to everything you want, See the + . This way it will have a better chance of working if the system administrator has moved the whole /usr/local tree somewhere else. + + For writing DESTDIR-compliant ports, note that + LOCALBASE, LINUXBASE, + X11BASE, DOCSDIR, + EXAMPLESDIR, DESKTOPDIR + variables already contain DESTDIR, so + DESTDIR/LOCALBASE is + definitely wrong, but you can use LOCALBASE_REL if + you need a variable relative to DESTDIR. + Similarly, you can use LINUXBASE_REL and + X11BASE_REL variables as well. + + You have to use these variables correctly + in your ports Makefile, esepecially in + custom targets, to ensure each files are installed to the + corect place. For dependencies, using LOCALBASE + is still correct, since we want to check for dependencies + in DESTDIR. If everything is correct, set + DESTDIR_READY to indicate that your port + is ready to be used with DESTDIR. + + In packing lists, or in pkg-* scripts you + can still use %%LOCALBASE%%, + %%LINUXBASE%% and %%X11BASE%% + expansions, since they represent relative paths here. This ambiguity + can be frustrating at first, but this actually simplifies the process + of writing DESTDIR-compliant ports. We did not use to + have DESTDIR support by our ports infrastructure, + and one of the major goals was to avoid modifying a tons of ports, + so we just changed LOCALBASE in the + infrastructure instead of changing that in tons of individual ports. + With a little workaround, LOCALBASE, + LINUXBASE and X11BASE + are still overrideable, though. From owner-p4-projects@FreeBSD.ORG Thu Jul 13 14:08:49 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EAF9616A4E8; Thu, 13 Jul 2006 14:08:48 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 AB13616A4E5 for ; Thu, 13 Jul 2006 14:08:48 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B5F4943D55 for ; Thu, 13 Jul 2006 14:08:45 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DE8jgR026749 for ; Thu, 13 Jul 2006 14:08:45 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DE8jVO026746 for perforce@freebsd.org; Thu, 13 Jul 2006 14:08:45 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 13 Jul 2006 14:08:45 GMT Message-Id: <200607131408.k6DE8jVO026746@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101468 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 14:08:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=101468 Change 101468 by gabor@gabor_spitfire on 2006/07/13 14:08:24 IFC Affected files ... .. //depot/projects/soc2006/gabor_ports/MOVED#6 integrate .. //depot/projects/soc2006/gabor_ports/Mk/bsd.linux-rpm.mk#2 integrate .. //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/dopackagestats#4 integrate .. //depot/projects/soc2006/gabor_ports/UPDATING#6 integrate Differences ... ==== //depot/projects/soc2006/gabor_ports/MOVED#6 (text+ko) ==== @@ -1,7 +1,7 @@ # # MOVED - a list of (recently) moved or removed ports # -# $FreeBSD: ports/MOVED,v 1.1092 2006/07/09 21:24:25 itetcu Exp $ +# $FreeBSD: ports/MOVED,v 1.1094 2006/07/12 14:15:55 rafan Exp $ # # Each entry consists of a single line containing the following four # fields in the order named, separated with the pipe (`|') character: @@ -2228,7 +2228,6 @@ mail/rmoldmail||2006-04-07|Has expired: mastersite disappeared, no longer maintained by author mail/ruby-mime-types||2006-04-07|Has expired: mastersite disappeared, no longer maintained by author devel/wftk||2006-04-07|master site disappeared -textproc/p5-JSON-Syck|textproc/p5-YAML-Syck|2006-04-07|The textproc/p5-YAML-Syck port now includes JSON functionality www/linux-flashplugin||2006-04-08|Removed due to license problem net/nic||2006-04-08|Deprecated for a long time www/flashpluginwrapper||2006-04-08|Removed as it depends on linux-flashplugin @@ -2410,3 +2409,5 @@ sysutils/lineak_kdeplugins|sysutils/lineak-kdeplugins|2006-07-09|port name changed to match upstream sysutils/lineak_xosdplugin|sysutils/lineak-xosdplugin|2006-07-09|port name changed to match upstream japanese/phpgroupware||2006-04-10|removed at mainter request (because broken and vulnerabilities) +www/p5-Catalyst|www/p5-Catalyst-Runtime|2006-07-10|follow CPAN split of package +textproc/p5-JSON-Syck|textproc/p5-YAML-Syck|2006-07-12|The textproc/p5-YAML-Syck port now includes JSON functionality ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.linux-rpm.mk#2 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: Makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.linux-rpm.mk,v 1.7 2006/06/07 18:47:40 netchild Exp $ +# $FreeBSD: ports/Mk/bsd.linux-rpm.mk,v 1.8 2006/07/13 12:35:12 bsam Exp $ # # Variables: @@ -105,14 +105,14 @@ . if defined(AUTOMATIC_PLIST) -. if ${USE_LINUX} == "8" || ${USE_LINUX:L} == "yes" -_LINUX_BASE_SUFFIX= 8 +. if ${USE_LINUX} == "fc4" || ${USE_LINUX:L} == "yes" +_LINUX_BASE_SUFFIX= fc4 . elif ${USE_LINUX} == "debian" _LINUX_BASE_SUFFIX= debian . elif ${USE_LINUX} == "fc3" _LINUX_BASE_SUFFIX= fc3 -. elif ${USE_LINUX} == "fc4" -_LINUX_BASE_SUFFIX= fc4 +. elif ${USE_LINUX} == "8" +_LINUX_BASE_SUFFIX= 8 . else # other linux_base ports do not provide a pkg-plist file IGNORE= uses AUTOMATIC_PLIST with an unsupported USE_LINUX, \"${USE_LINUX}\". Supported values are \"yes\", \"8\", \"debian\", \"fc3\" and \"fc4\" ==== //depot/projects/soc2006/gabor_ports/Tools/portbuild/scripts/dopackagestats#4 (text+ko) ==== @@ -1,5 +1,5 @@ #!/bin/sh -# $FreeBSD: ports/Tools/portbuild/scripts/dopackagestats,v 1.10 2006/07/08 04:09:42 linimon Exp $ +# $FreeBSD: ports/Tools/portbuild/scripts/dopackagestats,v 1.11 2006/07/13 03:52:28 linimon Exp $ # # create HTML showing numbers of packages vs errors. Run this in a directory # accessible to the web server. @@ -9,7 +9,7 @@ SUPPORTED_ARCHS="amd64 i386 ia64 sparc64" ROOT_DIRECTORY=/var/portbuild -OUTFILE=packagestats.html +OUTFILE=`basename $0 | sed -e "s/^do//"`".html" TMPFILE=.${OUTFILE} # stylesheet seems like overkill for something this simple @@ -35,7 +35,8 @@ echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} @@ -58,6 +59,15 @@ indexfile=$directory/ports/INDEX-$branch fi + # column: date of CVS checkout + cvsdone=" " + if [ -f $directory/cvsdone ]; then + cvsdone="$(cat $directory/cvsdone | awk '{printf("%s %s\n",$2,$3)}')" + if [ -z "$cvsdone" ]; then + cvsdone=" " + fi + fi + # column: datestamp of latest log latest=" " if [ -d $directory/logs ]; then @@ -121,6 +131,7 @@ # now write the row echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "
 as ofcvs datelatest logINDEXpackageserrors
$arch-$build$cvsdone$latest$n_index" >> ${TMPFILE} @@ -143,7 +154,8 @@ write_footer () { echo "

explanation of columns:

" >> ${TMPFILE} echo "
    " >> ${TMPFILE} - echo "
  • as of is the date of the latest logfile.
  • " >> ${TMPFILE} + echo "
  • latest log is the date of the latest logfile.
  • " >> ${TMPFILE} + echo "
  • cvs date is the date of the latest CVS checkout done by the script. It may be inaccurate if a manual checkout was done later.
  • " >> ${TMPFILE} echo "
  • INDEX is number of ports in the INDEX file built from the latest cvs checkout.
  • " >> ${TMPFILE} echo "
  • packages is number of packages successfully built.
  • " >> ${TMPFILE} echo "
  • errors is number of packages that failed.
  • " >> ${TMPFILE} @@ -152,6 +164,11 @@ echo "
  • done is whether that run terminated normally or not.
  • " >> ${TMPFILE} echo "
" >> ${TMPFILE} + echo "

notes:

" >> ${TMPFILE} + echo "
    " >> ${TMPFILE} + echo "
  • on the -exp builds, editors/openoffice.org* are skipped to save time.
  • " >> ${TMPFILE} + echo "
" >> ${TMPFILE} + echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} } ==== //depot/projects/soc2006/gabor_ports/UPDATING#6 (text+ko) ==== @@ -6,6 +6,33 @@ time you update your ports collection, before attempting any port upgrades. +20060713: + AFFECTS: users of x11-fonts/terminus-font + AUTHOR: garga@FreeBSD.org + + Since version 4.20, terminus-font changed place to install fonts to + ${PREFIX}/lib/X11/fonts/terminus-font, please, add this new path to your + font paths. + +20060711: + AFFECTS: users of net/samba3 + AUTHOR: timur@gnu.org + + Starting from version 3.0.23 Samba no longer supports experimental + SQL and XML passdb backends. If you need this functionality, please + visit http://pdbsql.sourceforge.net/ (port is coming soon). + + The default mapping entries for groups such as "Domain Admins" are + no longer created when using an smbpasswd file or a tdbsam passdb + backend. Use 'net groupmap add' rather than 'net groupmap modify' + to set these entries. + + A substring matching rule has been added to the sambaSID attribute + definition. For OpenLDAP servers, this will require the addition + of 'index sambaSID sub' to the slapd.conf configuration file. It + will be necessary to run slapindex after making this change. There + has been no change to actual data storage schema. + 20060707: AFFECTS: users of www/lifetype AUTHOR: clsung@FreeBSD.org @@ -3789,4 +3816,4 @@ 2) Update all p5-* modules. portupgrade -f p5-\* -$FreeBSD: ports/UPDATING,v 1.359 2006/07/08 02:28:49 clsung Exp $ +$FreeBSD: ports/UPDATING,v 1.361 2006/07/13 12:03:50 garga Exp $ From owner-p4-projects@FreeBSD.ORG Thu Jul 13 14:40:34 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3D58F16A4E8; Thu, 13 Jul 2006 14:40:34 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 191A416A4E6 for ; Thu, 13 Jul 2006 14:40:34 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D4F9F43D5A for ; Thu, 13 Jul 2006 14:40:26 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DEeQbK029373 for ; Thu, 13 Jul 2006 14:40:26 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DEeQUI029370 for perforce@freebsd.org; Thu, 13 Jul 2006 14:40:26 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 13 Jul 2006 14:40:26 GMT Message-Id: <200607131440.k6DEeQUI029370@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101471 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 14:40:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=101471 Change 101471 by gabor@gabor_spitfire on 2006/07/13 14:39:29 Disallow setting DESTDIR to /, since it doesn't work as intended. It would be better to undefine it if it's /, but .undef doesn't work in this case, so I haven't found a better solution so far. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#22 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#22 (text+ko) ==== @@ -1281,6 +1281,13 @@ .endif DISTNAME?= ${PORTNAME}-${DISTVERSIONPREFIX}${DISTVERSION:C/:(.)/\1/g}${DISTVERSIONSUFFIX} +# Disallow setting DESTDIR to /. +.if defined(DESTDIR) && ${DESTDIR} == "/" +.BEGIN: + @${ECHO_MSG} "You can't set DESTDIR to /. Unset DESTDIR and re-run make." + @${FALSE} +.endif + # These need to be absolute since we don't know how deep in the ports # tree we are and thus can't go relative. They can, of course, be overridden # by individual Makefiles or local system make configuration. From owner-p4-projects@FreeBSD.ORG Thu Jul 13 14:55:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0D87016A4E0; Thu, 13 Jul 2006 14:55:47 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 DD79D16A4DE for ; Thu, 13 Jul 2006 14:55:46 +0000 (UTC) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C5ED43D46 for ; Thu, 13 Jul 2006 14:55:46 +0000 (GMT) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DEtkc5030184 for ; Thu, 13 Jul 2006 14:55:46 GMT (envelope-from howardsu@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DEtkHH030181 for perforce@freebsd.org; Thu, 13 Jul 2006 14:55:46 GMT (envelope-from howardsu@FreeBSD.org) Date: Thu, 13 Jul 2006 14:55:46 GMT Message-Id: <200607131455.k6DEtkHH030181@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to howardsu@FreeBSD.org using -f From: Howard Su To: Perforce Change Reviews Cc: Subject: PERFORCE change 101472 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 14:55:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=101472 Change 101472 by howardsu@su_laptop on 2006/07/13 14:55:15 Implement SDT in kernel module. Add proc:::exec sdt probe as a sample. I need help to implement other probes as in solaris. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt.c#5 edit .. //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt_subr.c#2 edit .. //depot/projects/dtrace/src/sys/conf/kern.mk#6 edit .. //depot/projects/dtrace/src/sys/i386/i386/elf_machdep.c#4 edit .. //depot/projects/dtrace/src/sys/kern/kern_exec.c#5 edit .. //depot/projects/dtrace/src/sys/kern/link_elf.c#6 edit .. //depot/projects/dtrace/src/sys/sys/sdt.h#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt.c#5 (text+ko) ==== @@ -285,6 +285,7 @@ sdt_probetab[ndx] = sdt->sdp_hashnext; } + free(sdt->sdp_name, M_SDT); next = sdt->sdp_next; free(sdt, M_SDT); ==== //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt_subr.c#2 (text+ko) ==== @@ -89,7 +89,7 @@ { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN }, { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA }, }; - +*/ static dtrace_pattr_t stab_attr = { { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA }, { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN }, @@ -97,7 +97,7 @@ { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA }, { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA }, }; -*/ + static dtrace_pattr_t sdt_attr = { { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA }, { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN }, @@ -107,6 +107,7 @@ }; sdt_provider_t sdt_providers[] = { + { "proc", "__proc_", &stab_attr, 0 }, /* { "vtrace", "__vtrace_", &vtrace_attr, 0 }, { "sysinfo", "__cpu_sysinfo_", &info_attr, 0 }, { "vminfo", "__cpu_vminfo_", &info_attr, 0 }, ==== //depot/projects/dtrace/src/sys/conf/kern.mk#6 (text+ko) ==== @@ -10,7 +10,7 @@ #CWARNFLAGS= -w2 # use this if you are terribly bored CWARNFLAGS= .else -CWARNFLAGS?= -Wall -Wredundant-decls -Wstrict-prototypes \ +CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \ -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \ ${_wundef} -fformat-extensions .if !defined(NO_UNDEF) ==== //depot/projects/dtrace/src/sys/i386/i386/elf_machdep.c#4 (text+ko) ==== @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #include @@ -222,7 +223,6 @@ int elf_cpu_load_file(linker_file_t lf __unused) { - return (0); } @@ -235,16 +235,18 @@ #define SDT_NOP 0x90 #define SDT_NOPS 5 +#define SDT_SIZEOF_CALL 5 int sdt_reloc_resolve(uint8_t *instr, sdt_probedesc_t *sdp) { - int i; - sdp->sdpd_offset = (uintptr_t)instr; - - for(i = 0; i < SDT_NOPS; i++) { - instr[i - 1] = SDT_NOP; - } + int i; + instr -= SDT_SIZEOF_CALL; + sdp->sdpd_offset = (uintptr_t)instr; + + for(i = 0; i < SDT_NOPS; i++) { + instr[i] = SDT_NOP; + } - return (1); + return (1); } ==== //depot/projects/dtrace/src/sys/kern/kern_exec.c#5 (text+ko) ==== @@ -54,6 +54,7 @@ #include #include #include +#include #include #include #include @@ -345,6 +346,7 @@ if (error) goto exec_fail; #endif + DTRACE_PROBE1(__proc_exec, char *, imgp->interpreter_name); imgp->image_header = NULL; ==== //depot/projects/dtrace/src/sys/kern/link_elf.c#6 (text+ko) ==== @@ -225,6 +225,40 @@ printf("kldload: %s\n", s); } +static void +elf_sdt_hook_sweep(linker_file_t lf) +{ + sdt_probedesc_t *sdp; + elf_file_t ef = (elf_file_t)lf; + const Elf_Sym* symp; + linker_symval_t symval; + int i; + uint8_t *instr; + const char *symname; + + for (i = 0, symp = ef->ddbsymtab; i < ef->ddbsymcnt; i++, symp++) { + if (symp->st_value != 0 && + ELF_ST_TYPE(symp->st_info) == STT_NOTYPE) { + link_elf_symbol_values(lf, (c_linker_sym_t)symp, &symval); + if (strncmp(symval.name, sdt_prefix, strlen(sdt_prefix)) == 0) { + instr = (uint8_t *)symval.value; + symname = symval.name; + symname += strlen(sdt_prefix); + sdp = malloc(sizeof(sdt_probedesc_t), M_LINKER, M_WAITOK); + sdp->sdpd_name = malloc(strlen(symname) + 1, M_LINKER, M_WAITOK); + strcpy(sdp->sdpd_name, symname); + if (sdt_reloc_resolve(instr, sdp)) { + sdp->sdpd_next = lf->sdt_probes; + lf->sdt_probes = sdp; + }else{ + free(sdp->sdpd_name, M_LINKER); + free(sdp, M_LINKER); + } + } + } + } +} + /* * Actions performed after linking/loading both the preloaded kernel and any * modules; whether preloaded or dynamicly loaded. @@ -238,10 +272,11 @@ #endif int error; + elf_sdt_hook_sweep(lf); /* Notify MD code that a module is being loaded. */ error = elf_cpu_load_file(lf); if (error) - return (error); + return (error); #ifdef GDB GDB_STATE(RT_ADD); @@ -931,29 +966,6 @@ } static int -sdt_reloc_check(linker_file_t lf, const char *symname, uint8_t * instr) -{ - sdt_probedesc_t *sdp; - if (strncmp(symname, sdt_prefix, strlen(sdt_prefix)) != 0) - return (0); - - symname += strlen(sdt_prefix); - sdp = malloc(sizeof(sdt_probedesc_t), M_LINKER, M_WAITOK); - sdp->sdpd_name = malloc(strlen(symname) + 1, M_LINKER, M_WAITOK); - strcpy(sdp->sdpd_name, symname); - - if (sdt_reloc_resolve(instr, sdp)) { - sdp->sdpd_next = lf->sdt_probes; - lf->sdt_probes = sdp; - return (1); - } else { - free(sdp->sdpd_name, M_LINKER); - free(sdp, M_LINKER); - return (0); - } -} - -static int relocate_file(elf_file_t ef) { const Elf_Rel *rellim; @@ -969,12 +981,9 @@ while (rel < rellim) { if (elf_reloc(&ef->lf, (Elf_Addr)ef->address, rel, ELF_RELOC_REL, elf_lookup)) { - symname = symbol_name(ef, rel->r_info); - if (!sdt_reloc_check(&ef->lf, symname, - (uint8_t *) (ef->address + rel->r_offset))) { + symname = symbol_name(ef, rel->r_info); printf("link_elf: symbol %s undefined\n", symname); return ENOENT; - } } rel++; } @@ -1388,3 +1397,30 @@ } } } + +void +dtrace_sdt_stub0(void) +{ +} + +void +dtrace_sdt_stub1(uintptr_t arg1 __unused) +{ +} + +void +dtrace_sdt_stub2(uintptr_t arg1 __unused, uintptr_t arg2 __unused) +{ +} + +void +dtrace_sdt_stub3(uintptr_t arg1 __unused, uintptr_t arg2 __unused, uintptr_t arg3 __unused) +{ +} + +void +dtrace_sdt_stub4(uintptr_t arg1 __unused, uintptr_t arg2 __unused, uintptr_t arg3 __unused, + uintptr_t arg4 __unused) +{ +} + ==== //depot/projects/dtrace/src/sys/sys/sdt.h#5 (text+ko) ==== @@ -71,33 +71,42 @@ #else /* _KERNEL */ +#define __SDT_LABEL(name) \ + __asm__(".globl __dtrace_probe_" #name); \ + __asm__("__dtrace_probe_"#name ":") + +extern void dtrace_sdt_stub0(void); +extern void dtrace_sdt_stub1(uintptr_t); +extern void dtrace_sdt_stub2(uintptr_t, uintptr_t); +extern void dtrace_sdt_stub3(uintptr_t, uintptr_t, uintptr_t); +extern void dtrace_sdt_stub4(uintptr_t, uintptr_t, uintptr_t, uintptr_t); + #define DTRACE_PROBE(name) { \ - extern void __dtrace_probe_##name(void); \ - __dtrace_probe_##name(); \ + dtrace_sdt_stub0(); \ + __SDT_LABEL(name); \ } #define DTRACE_PROBE1(name, type1, arg1) { \ - extern void __dtrace_probe_##name(uintptr_t); \ - __dtrace_probe_##name((uintptr_t)(arg1)); \ + dtrace_sdt_stub1((uintptr_t)(arg1)); \ + __SDT_LABEL(name); \ } #define DTRACE_PROBE2(name, type1, arg1, type2, arg2) { \ - extern void __dtrace_probe_##name(uintptr_t, uintptr_t); \ - __dtrace_probe_##name((uintptr_t)(arg1), (uintptr_t)(arg2)); \ + dtrace_sdt_stub2((uintptr_t)(arg1), (uintptr_t)(arg2)); \ + __SDT_LABEL(name); \ } #define DTRACE_PROBE3(name, type1, arg1, type2, arg2, type3, arg3) { \ - extern void __dtrace_probe_##name(uintptr_t, uintptr_t, uintptr_t); \ - __dtrace_probe_##name((uintptr_t)(arg1), (uintptr_t)(arg2), \ + dtrace_sdt_stub3((uintptr_t)(arg1), (uintptr_t)(arg2), \ (uintptr_t)(arg3)); \ + __SDT_LABEL(name); \ } #define DTRACE_PROBE4(name, type1, arg1, type2, arg2, \ type3, arg3, type4, arg4) { \ - extern void __dtrace_probe_##name(uintptr_t, uintptr_t, \ - uintptr_t, uintptr_t); \ - __dtrace_probe_##name((uintptr_t)(arg1), (uintptr_t)(arg2), \ + dtrace_sdt_stub4((uintptr_t)(arg1), (uintptr_t)(arg2), \ (uintptr_t)(arg3), (uintptr_t)(arg4)); \ + __SDT_LABEL(name); \ } #endif /* _KERNEL */ @@ -115,5 +124,3 @@ #endif #endif /* _SYS_SDT_H */ - - From owner-p4-projects@FreeBSD.ORG Thu Jul 13 15:01:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1864016A4E1; Thu, 13 Jul 2006 15:01:55 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 E971316A4DF for ; Thu, 13 Jul 2006 15:01:54 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A53AB43D45 for ; Thu, 13 Jul 2006 15:01:54 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DF1sg9030514 for ; Thu, 13 Jul 2006 15:01:54 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DF1sLv030511 for perforce@freebsd.org; Thu, 13 Jul 2006 15:01:54 GMT (envelope-from gabor@FreeBSD.org) Date: Thu, 13 Jul 2006 15:01:54 GMT Message-Id: <200607131501.k6DF1sLv030511@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101473 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 15:01:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=101473 Change 101473 by gabor@gabor_spitfire on 2006/07/13 15:01:43 Sync comments to reflect the current behaviour. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#23 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#23 (text+ko) ==== @@ -472,7 +472,7 @@ # If this is set to a list of files, these files will be # automatically added to ${SUB_FILES}, some %%VAR%%'s will # automatically be expanded, they will be installed in -# ${PREFIX}/etc/rc.d and added to the packing list. +# ${DESTDIR}${PREFIX}/etc/rc.d and added to the packing list. # USE_RCORDER - List of rc.d startup scripts to be called early in the boot # process. This acts exactly like USE_RC_SUBR except that # scripts are installed in /etc/rc.d. @@ -495,25 +495,31 @@ # DESTDIR - The path to the environment we are installing to. Define # this if you want to install packages into a jail # or into an another FreeBSD environment mounted -# elsewhere than /. ${PREFIX}, ${LOCALBASE}, -# ${LINUXBASE} and ${X11BASE} are all relative to -# ${DESTDIR}. E.g. setting DESTDIR=/bla LOCALBASE=/opt -# results packages installed under /bla/opt and registered +# elsewhere than /. ${PREFIX} is relative to +# ${DESTDIR}. E.g. setting DESTDIR=/bla PREFIX=/opt will +# result packages installed under /bla/opt and registered # under /bla/var/db/pkg. -# Default: / (not set) +# Default: not set (means /) # # DESTDIR_READY - You should set this in your port's Makefile if your port is # ready to be used with DESTDIR set. # # X11BASE - Where X11 ports install things. +# Default: ${DESTDIR}/usr/X11R6 +# X11BASE_REL - Same as X11BASE, but relative to DESTDIR # Default: /usr/X11R6 # LOCALBASE - Where non-X11 ports install things. +# Default: ${DESTDIR}/usr/local +# LOCALBASE_REL - Same as LOCALBASE, but relative to DESTDIR # Default: /usr/local # LINUXBASE - Where Linux ports install things. +# Default: ${DESTDIR}/compat/linux +# LINUXBASE_REL - Same as LINUXBASE, but relative to DESTDIR # Default: /compat/linux # PREFIX - Where *this* port installs its files. -# Default: ${X11BASE} if USE_X_PREFIX is set, ${LINUXBASE} if -# USE_LINUX_PREFIX is set, otherwise ${LOCALBASE} +# Default: ${X11BASE_REL} if USE_X_PREFIX is set, +# ${LINUXBASE_REL} if USE_LINUX_PREFIX is set, +# otherwise ${LOCALBASE_REL} # MASTERDIR - Where the port finds patches, package files, etc. Define # this is you have two or more ports that share most of the # files. @@ -580,7 +586,7 @@ # installs its own manpage links so they will show up # correctly in ${PLIST}.) # MANPREFIX - The directory prefix for ${MAN} and ${MLINKS}. -# Default: ${PREFIX} +# Default: ${DESTDIR}${PREFIX} # MANPREFIX # - If manual pages of some sections install in different # locations than others, use these. @@ -867,7 +873,7 @@ # rest of PLIST, so ${PLIST_SUB} substitutions also # apply here. It is recommended that you use # %%PREFIX%% for ${PREFIX}, %%LOCALBASE%% for -# ${LOCALBASE} and %%X11BASE%% for ${X11BASE}. +# ${LOCALBASE_REL} and %%X11BASE%% for ${X11BASE_REL}. # Default: %%PREFIX%%/lib # USE_LDCONFIG - If set to "yes", it replaces the old variable INSTALLS_SHLIB. # Otherwise, it can be set to a list of directories to be added to @@ -881,14 +887,14 @@ # Note: that should only be used on 64-bit architectures. # # DOCSDIR - Name of the directory to install the packages docs in. -# Default: ${PREFIX}/share/doc/${PORTNAME} +# Default: ${DESTDIR}${PREFIX}/share/doc/${PORTNAME} # EXAMPLESDIR - Name of the directory to install the packages examples in. -# Default: ${PREFIX}/share/examples/${PORTNAME} +# Default: ${DESTDIR}${PREFIX}/share/examples/${PORTNAME} # DATADIR - Name of the directory to install the packages shared data in. -# Default: ${PREFIX}/share/${PORTNAME} +# Default: ${DESTDIR}${PREFIX}/share/${PORTNAME} # # DESKTOPDIR - Name of the directory to install ${DESKTOP_ENTRIES} in. -# Default: ${PREFIX}/share/applications +# Default: ${DESTDIR}${PREFIX}/share/applications # DESKTOP_ENTRIES # - List of desktop entry files to generate and install in # ${DESKTOPDIR}. The format is @@ -957,9 +963,9 @@ # it attempts to apply them. # PKG_DBDIR - Where package installation is recorded; this directory # must not contain anything else. -# Default: /var/db/pkg +# Default: ${DESTDIR}/var/db/pkg # PORT_DBDIR - Where port configuration options are recorded. -# Default: /var/db/ports +# Default: ${DESTDIR}/var/db/ports # NO_PKG_REGISTER # - Don't register a port installation as a package. # FORCE_PKG_REGISTER From owner-p4-projects@FreeBSD.ORG Thu Jul 13 15:15:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CE4D116A4E1; Thu, 13 Jul 2006 15:15:14 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A9FB016A4DF for ; Thu, 13 Jul 2006 15:15:14 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0DD5543D68 for ; Thu, 13 Jul 2006 15:15:13 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DFFCxX032223 for ; Thu, 13 Jul 2006 15:15:12 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DFFCKX032220 for perforce@freebsd.org; Thu, 13 Jul 2006 15:15:12 GMT (envelope-from jhb@freebsd.org) Date: Thu, 13 Jul 2006 15:15:12 GMT Message-Id: <200607131515.k6DFFCKX032220@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101475 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 15:15:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101475 Change 101475 by jhb@jhb_mutex on 2006/07/13 15:14:18 Disable the pager for 'panic' and 'call'. Affected files ... .. //depot/projects/smpng/sys/ddb/db_command.c#32 edit Differences ... ==== //depot/projects/smpng/sys/ddb/db_command.c#32 (text+ko) ==== @@ -424,6 +424,7 @@ */ DB_COMMAND(panic, db_panic) { + db_disable_pager(); panic("from debugger"); } @@ -527,6 +528,7 @@ } } db_skip_to_eol(); + db_disable_pager(); if (DB_CALL(fn_addr, &retval, nargs, args)) db_printf("= %#lr\n", (long)retval); From owner-p4-projects@FreeBSD.ORG Thu Jul 13 15:47:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4E86B16A4E0; Thu, 13 Jul 2006 15:47:55 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 151CE16A4DE for ; Thu, 13 Jul 2006 15:47:55 +0000 (UTC) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 600B543D55 for ; Thu, 13 Jul 2006 15:47:54 +0000 (GMT) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DFlsH1035411 for ; Thu, 13 Jul 2006 15:47:54 GMT (envelope-from howardsu@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DFls1C035406 for perforce@freebsd.org; Thu, 13 Jul 2006 15:47:54 GMT (envelope-from howardsu@FreeBSD.org) Date: Thu, 13 Jul 2006 15:47:54 GMT Message-Id: <200607131547.k6DFls1C035406@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to howardsu@FreeBSD.org using -f From: Howard Su To: Perforce Change Reviews Cc: Subject: PERFORCE change 101477 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 15:47:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=101477 Change 101477 by howardsu@su_laptop on 2006/07/13 15:47:35 Fix building. I am not sure how to merge davidxu's scheduling related code. I just comment them out. Affected files ... .. //depot/projects/dtrace/src/sys/kern/kern_thr.c#5 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/kern_thr.c#5 (text+ko) ==== @@ -141,6 +141,7 @@ default: return (EINVAL); } + } /* Initialize our td and new ksegrp.. */ newtd = thread_alloc(); @@ -193,6 +194,7 @@ } } +#if 0 newkg = ksegrp_alloc(); bzero(&newkg->kg_startzero, __rangeof(struct ksegrp, kg_startzero, kg_endzero)); @@ -205,7 +207,16 @@ mtx_lock_spin(&sched_lock); thread_link(newtd, newkg); PROC_UNLOCK(p); +#else + PROC_LOCK(td->td_proc); + td->td_proc->p_flag |= P_HADTHREADS; + newtd->td_sigmask = td->td_sigmask; + mtx_lock_spin(&sched_lock); + thread_link(newtd, p); + PROC_UNLOCK(p); +#endif +#if 0 /* let the scheduler know about these things. */ sched_fork_thread(td, newtd); if (sched != NULL) { @@ -235,6 +246,9 @@ panic("sched policy"); } } +#else + sched_fork(td, newtd); +#endif TD_SET_CAN_RUN(newtd); /* if ((flags & THR_SUSPENDED) == 0) */ setrunqueue(newtd, SRQ_BORING); From owner-p4-projects@FreeBSD.ORG Thu Jul 13 16:12:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9327316A4F3; Thu, 13 Jul 2006 16:12:26 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 7198916A4F1 for ; Thu, 13 Jul 2006 16:12:26 +0000 (UTC) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2797943D49 for ; Thu, 13 Jul 2006 16:12:26 +0000 (GMT) (envelope-from clem1@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DGCQpB043481 for ; Thu, 13 Jul 2006 16:12:26 GMT (envelope-from clem1@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DGCPPQ043478 for perforce@freebsd.org; Thu, 13 Jul 2006 16:12:25 GMT (envelope-from clem1@FreeBSD.org) Date: Thu, 13 Jul 2006 16:12:25 GMT Message-Id: <200607131612.k6DGCPPQ043478@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to clem1@FreeBSD.org using -f From: Clément Lecigne To: Perforce Change Reviews Cc: Subject: PERFORCE change 101479 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 16:12:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=101479 Change 101479 by clem1@clem1_ipv6vulns on 2006/07/13 16:11:41 ddaddos - a tool that can detect duplicate address detection attacks. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ddaddos/DESCRIPTION#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ddaddos/Makefile#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/preventing-tools/ddaddos/ddaddos.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Jul 13 16:16:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9270E16A4E0; Thu, 13 Jul 2006 16:16:32 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 3271D16A4DE for ; Thu, 13 Jul 2006 16:16:32 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EA46A43D49 for ; Thu, 13 Jul 2006 16:16:31 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DGGVUT043619 for ; Thu, 13 Jul 2006 16:16:31 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DGGVeg043616 for perforce@freebsd.org; Thu, 13 Jul 2006 16:16:31 GMT (envelope-from piso@freebsd.org) Date: Thu, 13 Jul 2006 16:16:31 GMT Message-Id: <200607131616.k6DGGVeg043616@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101480 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 16:16:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=101480 Change 101480 by piso@piso_newluxor on 2006/07/13 16:16:08 Please welcome the first driver converted to use a filter+ithread handler. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/bfe/if_bfe.c#3 edit .. //depot/projects/soc2006/intr_filter/dev/bfe/if_bfereg.h#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/bfe/if_bfe.c#3 (text+ko) ==== @@ -88,7 +88,11 @@ static int bfe_attach (device_t); static int bfe_detach (device_t); static void bfe_release_resources (struct bfe_softc *); +#if 0 static void bfe_intr (void *); +#endif +static int bfe_filter (void *); +static void bfe_handler (void *); static void bfe_start (struct ifnet *); static void bfe_start_locked (struct ifnet *); static int bfe_ioctl (struct ifnet *, u_long, caddr_t); @@ -418,8 +422,12 @@ /* * Hook interrupt last to avoid having to lock softc */ +#if 0 error = bus_setup_intr(dev, sc->bfe_irq, INTR_TYPE_NET | INTR_MPSAFE, NULL, bfe_intr, sc, &sc->bfe_intrhand); +#endif + error = bus_setup_intr(dev, sc->bfe_irq, INTR_TYPE_NET | INTR_MPSAFE, + bfe_filter, bfe_handler, sc, &sc->bfe_intrhand); if (error) { printf("bfe%d: couldn't set up irq\n", unit); @@ -1182,6 +1190,95 @@ sc->bfe_rx_cons = cons; } +static int +bfe_filter(void *xsc) +{ + struct bfe_softc *sc = xsc; + u_int32_t imask; + + sc->bfe_istat = CSR_READ_4(sc, BFE_ISTAT); + imask = CSR_READ_4(sc, BFE_IMASK); + + /* + * Defer unsolicited interrupts - This is necessary because setting the + * chips interrupt mask register to 0 doesn't actually stop the + * interrupts + */ + sc->bfe_istat &= imask; + CSR_WRITE_4(sc, BFE_ISTAT, sc->bfe_istat); + CSR_READ_4(sc, BFE_ISTAT); + + /* not expecting this interrupt, disregard it */ + if(sc->bfe_istat == 0) + return (FILTER_STRAY); + + /* disable interrupts - not that it actually does..*/ + CSR_WRITE_4(sc, BFE_IMASK, 0); + CSR_READ_4(sc, BFE_IMASK); + + return (FILTER_SCHEDULE_THREAD); +} + +static void +bfe_handler(void *xsc) +{ + struct bfe_softc *sc = xsc; + struct ifnet *ifp; + u_int32_t istat, flag; + + ifp = sc->bfe_ifp; + + BFE_LOCK(sc); + + istat = sc->bfe_istat; + if(istat & BFE_ISTAT_ERRORS) { + + if (istat & BFE_ISTAT_DSCE) { + printf("if_bfe Descriptor Error\n"); + bfe_stop(sc); + BFE_UNLOCK(sc); + return; + } + + if (istat & BFE_ISTAT_DPE) { + printf("if_bfe Descriptor Protocol Error\n"); + bfe_stop(sc); + BFE_UNLOCK(sc); + return; + } + + flag = CSR_READ_4(sc, BFE_DMATX_STAT); + if(flag & BFE_STAT_EMASK) + ifp->if_oerrors++; + + flag = CSR_READ_4(sc, BFE_DMARX_STAT); + if(flag & BFE_RX_FLAG_ERRORS) + ifp->if_ierrors++; + + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + bfe_init_locked(sc); + } + + /* A packet was received */ + if(istat & BFE_ISTAT_RX) + bfe_rxeof(sc); + + /* A packet was sent */ + if(istat & BFE_ISTAT_TX) + bfe_txeof(sc); + + /* We have packets pending, fire them out */ + if (ifp->if_drv_flags & IFF_DRV_RUNNING && + !IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + bfe_start_locked(ifp); + + BFE_UNLOCK(sc); + + /* Enable interrupts */ + CSR_WRITE_4(sc, BFE_IMASK, BFE_IMASK_DEF); +} + +#if 0 static void bfe_intr(void *xsc) { @@ -1254,6 +1351,7 @@ BFE_UNLOCK(sc); } +#endif static int bfe_encap(struct bfe_softc *sc, struct mbuf **m_head, u_int32_t *txidx) ==== //depot/projects/soc2006/intr_filter/dev/bfe/if_bfereg.h#2 (text+ko) ==== @@ -510,6 +510,7 @@ struct bfe_data bfe_tx_ring[BFE_TX_LIST_CNT]; /* XXX */ struct bfe_data bfe_rx_ring[BFE_RX_LIST_CNT]; /* XXX */ struct mtx bfe_mtx; + u_int32_t bfe_istat; u_int32_t bfe_flags; u_int32_t bfe_imask; u_int32_t bfe_dma_offset; From owner-p4-projects@FreeBSD.ORG Thu Jul 13 17:11:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 52AD616A4DF; Thu, 13 Jul 2006 17:11:40 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 2E8E016A4DA for ; Thu, 13 Jul 2006 17:11:40 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EDB2143D4C for ; Thu, 13 Jul 2006 17:11:39 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DHBdM6054984 for ; Thu, 13 Jul 2006 17:11:39 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DHBdVG054981 for perforce@freebsd.org; Thu, 13 Jul 2006 17:11:39 GMT (envelope-from imp@freebsd.org) Date: Thu, 13 Jul 2006 17:11:39 GMT Message-Id: <200607131711.k6DHBdVG054981@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101481 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 17:11:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101481 Change 101481 by imp@imp_lighthouse on 2006/07/13 17:11:17 rename... got tons of datasheets for the other at45 and family members, and they are mostly basically kinda the same. Affected files ... .. //depot/projects/arm/src/sys/arm/conf/TSC4370#5 edit .. //depot/projects/arm/src/sys/conf/files#35 edit .. //depot/projects/arm/src/sys/dev/flash/at45.c#1 branch .. //depot/projects/arm/src/sys/dev/flash/at45db642.c#2 delete Differences ... ==== //depot/projects/arm/src/sys/arm/conf/TSC4370#5 (text+ko) ==== @@ -104,4 +104,4 @@ device iicbus # SPI bus device spibus -device at45db642 # at45db642 and maybe others +device at45 # at45db642 and maybe others ==== //depot/projects/arm/src/sys/conf/files#35 (text+ko) ==== @@ -607,7 +607,7 @@ dev/firewire/if_fwip.c optional fwip dev/firewire/sbp.c optional sbp dev/firewire/sbp_targ.c optional sbp_targ -dev/flash/at45db642.c optional at45db642 +dev/flash/at45.c optional at45 dev/fxp/if_fxp.c optional fxp dev/gem/if_gem.c optional gem dev/gem/if_gem_pci.c optional gem pci From owner-p4-projects@FreeBSD.ORG Thu Jul 13 17:13:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1BF9C16A4E2; Thu, 13 Jul 2006 17:13:06 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 D2E8C16A4DD; Thu, 13 Jul 2006 17:13:05 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4F53B43D45; Thu, 13 Jul 2006 17:12:58 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k6DHCvjI098599; Thu, 13 Jul 2006 13:12:57 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Paolo Pisati Date: Thu, 13 Jul 2006 12:47:01 -0400 User-Agent: KMail/1.9.1 References: <200607131616.k6DGGVeg043616@repoman.freebsd.org> In-Reply-To: <200607131616.k6DGGVeg043616@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607131247.01523.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Thu, 13 Jul 2006 13:12:57 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1598/Thu Jul 13 07:38:16 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 101480 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 17:13:06 -0000 On Thursday 13 July 2006 12:16, Paolo Pisati wrote: > http://perforce.freebsd.org/chv.cgi?CH=101480 > > Change 101480 by piso@piso_newluxor on 2006/07/13 16:16:08 > > Please welcome the first driver converted to use a filter+ithread > handler. Hmm, I would have thought that you would have converted em(4) first. In this case you have races with access to sc->bfe_istat, and it looks like you should be returning FILTER_HANDLED | FILTER_SCHEDULE_THREAD. > Affected files ... > > .. //depot/projects/soc2006/intr_filter/dev/bfe/if_bfe.c#3 edit > .. //depot/projects/soc2006/intr_filter/dev/bfe/if_bfereg.h#2 edit > > Differences ... > > ==== //depot/projects/soc2006/intr_filter/dev/bfe/if_bfe.c#3 (text+ko) ==== > > @@ -88,7 +88,11 @@ > static int bfe_attach (device_t); > static int bfe_detach (device_t); > static void bfe_release_resources (struct bfe_softc *); > +#if 0 > static void bfe_intr (void *); > +#endif > +static int bfe_filter (void *); > +static void bfe_handler (void *); > static void bfe_start (struct ifnet *); > static void bfe_start_locked (struct ifnet *); > static int bfe_ioctl (struct ifnet *, u_long, caddr_t); > @@ -418,8 +422,12 @@ > /* > * Hook interrupt last to avoid having to lock softc > */ > +#if 0 > error = bus_setup_intr(dev, sc->bfe_irq, INTR_TYPE_NET | INTR_MPSAFE, > NULL, bfe_intr, sc, &sc->bfe_intrhand); > +#endif > + error = bus_setup_intr(dev, sc->bfe_irq, INTR_TYPE_NET | INTR_MPSAFE, > + bfe_filter, bfe_handler, sc, &sc->bfe_intrhand); > > if (error) { > printf("bfe%d: couldn't set up irq\n", unit); > @@ -1182,6 +1190,95 @@ > sc->bfe_rx_cons = cons; > } > > +static int > +bfe_filter(void *xsc) > +{ > + struct bfe_softc *sc = xsc; > + u_int32_t imask; > + > + sc->bfe_istat = CSR_READ_4(sc, BFE_ISTAT); > + imask = CSR_READ_4(sc, BFE_IMASK); > + > + /* > + * Defer unsolicited interrupts - This is necessary because setting the > + * chips interrupt mask register to 0 doesn't actually stop the > + * interrupts > + */ > + sc->bfe_istat &= imask; > + CSR_WRITE_4(sc, BFE_ISTAT, sc->bfe_istat); > + CSR_READ_4(sc, BFE_ISTAT); > + > + /* not expecting this interrupt, disregard it */ > + if(sc->bfe_istat == 0) > + return (FILTER_STRAY); > + > + /* disable interrupts - not that it actually does..*/ > + CSR_WRITE_4(sc, BFE_IMASK, 0); > + CSR_READ_4(sc, BFE_IMASK); > + > + return (FILTER_SCHEDULE_THREAD); > +} > + > +static void > +bfe_handler(void *xsc) > +{ > + struct bfe_softc *sc = xsc; > + struct ifnet *ifp; > + u_int32_t istat, flag; > + > + ifp = sc->bfe_ifp; > + > + BFE_LOCK(sc); > + > + istat = sc->bfe_istat; > + if(istat & BFE_ISTAT_ERRORS) { > + > + if (istat & BFE_ISTAT_DSCE) { > + printf("if_bfe Descriptor Error\n"); > + bfe_stop(sc); > + BFE_UNLOCK(sc); > + return; > + } > + > + if (istat & BFE_ISTAT_DPE) { > + printf("if_bfe Descriptor Protocol Error\n"); > + bfe_stop(sc); > + BFE_UNLOCK(sc); > + return; > + } > + > + flag = CSR_READ_4(sc, BFE_DMATX_STAT); > + if(flag & BFE_STAT_EMASK) > + ifp->if_oerrors++; > + > + flag = CSR_READ_4(sc, BFE_DMARX_STAT); > + if(flag & BFE_RX_FLAG_ERRORS) > + ifp->if_ierrors++; > + > + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; > + bfe_init_locked(sc); > + } > + > + /* A packet was received */ > + if(istat & BFE_ISTAT_RX) > + bfe_rxeof(sc); > + > + /* A packet was sent */ > + if(istat & BFE_ISTAT_TX) > + bfe_txeof(sc); > + > + /* We have packets pending, fire them out */ > + if (ifp->if_drv_flags & IFF_DRV_RUNNING && > + !IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > + bfe_start_locked(ifp); > + > + BFE_UNLOCK(sc); > + > + /* Enable interrupts */ > + CSR_WRITE_4(sc, BFE_IMASK, BFE_IMASK_DEF); > +} > + > +#if 0 > static void > bfe_intr(void *xsc) > { > @@ -1254,6 +1351,7 @@ > > BFE_UNLOCK(sc); > } > +#endif > > static int > bfe_encap(struct bfe_softc *sc, struct mbuf **m_head, u_int32_t *txidx) > > ==== //depot/projects/soc2006/intr_filter/dev/bfe/if_bfereg.h#2 (text+ko) ==== > > @@ -510,6 +510,7 @@ > struct bfe_data bfe_tx_ring[BFE_TX_LIST_CNT]; /* XXX */ > struct bfe_data bfe_rx_ring[BFE_RX_LIST_CNT]; /* XXX */ > struct mtx bfe_mtx; > + u_int32_t bfe_istat; > u_int32_t bfe_flags; > u_int32_t bfe_imask; > u_int32_t bfe_dma_offset; > -- John Baldwin From owner-p4-projects@FreeBSD.ORG Thu Jul 13 17:50:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 10EF116A4E1; Thu, 13 Jul 2006 17:50:29 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C8D1C16A4DD for ; Thu, 13 Jul 2006 17:50:28 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9427B43D49 for ; Thu, 13 Jul 2006 17:50:28 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DHoSCC056572 for ; Thu, 13 Jul 2006 17:50:28 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DHoS5x056569 for perforce@freebsd.org; Thu, 13 Jul 2006 17:50:28 GMT (envelope-from jhb@freebsd.org) Date: Thu, 13 Jul 2006 17:50:28 GMT Message-Id: <200607131750.k6DHoS5x056569@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101482 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 17:50:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101482 Change 101482 by jhb@jhb_mutex on 2006/07/13 17:50:17 Don't free sa in kern_bind() as this breaks the svr4 case. Make the caller responsible for managing the sockaddr lifetime. Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_socket.c#33 edit .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#88 edit Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_socket.c#33 (text+ko) ==== @@ -609,7 +609,9 @@ if (error) return (error); - return (kern_bind(td, linux_args.s, sa)); + error = kern_bind(td, linux_args.s, sa); + free(sa, M_SONAME); + return (error); } struct linux_connect_args { ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#88 (text+ko) ==== @@ -209,7 +209,9 @@ if ((error = getsockaddr(&sa, uap->name, uap->namelen)) != 0) return (error); - return (kern_bind(td, uap->s, sa)); + error = kern_bind(td, uap->s, sa); + free(sa, M_SONAME); + return (error); } int @@ -241,7 +243,6 @@ fdrop(fp, td); done2: NET_UNLOCK_GIANT(); - FREE(sa, M_SONAME); return (error); } From owner-p4-projects@FreeBSD.ORG Thu Jul 13 17:53:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3D27A16A4E7; Thu, 13 Jul 2006 17:53:33 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 F2CCF16A4E5 for ; Thu, 13 Jul 2006 17:53:32 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF77D43D45 for ; Thu, 13 Jul 2006 17:53:32 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DHrWvT056679 for ; Thu, 13 Jul 2006 17:53:32 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DHrWLq056676 for perforce@freebsd.org; Thu, 13 Jul 2006 17:53:32 GMT (envelope-from jhb@freebsd.org) Date: Thu, 13 Jul 2006 17:53:32 GMT Message-Id: <200607131753.k6DHrWLq056676@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101483 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 17:53:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=101483 Change 101483 by jhb@jhb_mutex on 2006/07/13 17:53:11 Move free() of sa out of kern_connect(). Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_socket.c#34 edit .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#89 edit Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_socket.c#34 (text+ko) ==== @@ -640,6 +640,7 @@ return (error); error = kern_connect(td, linux_args.s, sa); + free(sa, M_SONAME); if (error != EISCONN) return (error); ==== //depot/projects/smpng/sys/kern/uipc_syscalls.c#89 (text+ko) ==== @@ -535,7 +535,9 @@ if (error) return (error); - return (kern_connect(td, uap->s, sa)); + error = kern_connect(td, uap->s, sa); + free(sa, M_SONAME); + return (error); } @@ -597,7 +599,6 @@ fdrop(fp, td); done2: NET_UNLOCK_GIANT(); - FREE(sa, M_SONAME); return (error); } From owner-p4-projects@FreeBSD.ORG Thu Jul 13 18:13:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DE56616A4E1; Thu, 13 Jul 2006 18:13:20 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 A052516A4DF for ; Thu, 13 Jul 2006 18:13:20 +0000 (UTC) (envelope-from adamartin@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B24B43D67 for ; Thu, 13 Jul 2006 18:12:56 +0000 (GMT) (envelope-from adamartin@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DICuYC058698 for ; Thu, 13 Jul 2006 18:12:56 GMT (envelope-from adamartin@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DICu6P058695 for perforce@freebsd.org; Thu, 13 Jul 2006 18:12:56 GMT (envelope-from adamartin@FreeBSD.org) Date: Thu, 13 Jul 2006 18:12:56 GMT Message-Id: <200607131812.k6DICu6P058695@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to adamartin@FreeBSD.org using -f From: Adam Martin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101484 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 18:13:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=101484 Change 101484 by adamartin@adamartin_tethys on 2006/07/13 18:12:14 Updates to the protocol description. Also moved protocol_datatypes.h to style( 9 ) and improved documentation of the file. Later today I will submit some of the initial development implementation. Affected files ... .. //depot/projects/soc2006/adamartin_autofs/AutoFS-Proposal/AutoFS.protocol#2 edit .. //depot/projects/soc2006/adamartin_autofs/AutoFS-Proposal/protocol_datatypes.h#3 edit Differences ... ==== //depot/projects/soc2006/adamartin_autofs/AutoFS-Proposal/AutoFS.protocol#2 (text+ko) ==== ==== //depot/projects/soc2006/adamartin_autofs/AutoFS-Proposal/protocol_datatypes.h#3 (text+ko) ==== @@ -1,71 +1,34 @@ #ifndef AUTOFS_PROTOCOL_HEADER #define AUTOFS_PROTOCOL_HEADER -/***** The protocol between AutoFS and Automounter consists of these data types, -strung together, as explained below. *****/ +/* + * The protocol between AutoFS and Automounter consists of these data types, + * strung together, as explained below. + */ - -struct message_header -{ - uint64_t flags; /** 64 bits of flags, for some future usage, yet to - be determined. **/ - uint64_t transaction_id; /** negative 1 and 0 are reserved tid's **/ - uint32_t message_type; - void message_data[]; /** You re-cast this handle to the - structure type as needed. **/ +/* + * This is the protocol message header. All messages between AutoFS + * and Automounter start with this header. Transaction id's, and other + * pertinent information is encoded into this header. + */ +struct message_header { + uint64_t flags; /* flags, for some usage, yet to be determined. */ + uint64_t transaction_id; /* Used to identify which transaction + the message pertains to. */ + uint32_t message_type; /* Used to identify which command is issued in + this packet. COMMAND_* constants are used to fill these */ + void message_data[]; /* The rest of the message data, as an + indeterminate length. */ }; -#define COMMAND_ACK ( 0x20 ) - -#define COMMAND_ACKNOWLEDGE ( COMMAND_ACK ) - -/** The ACK command can be sent by either party, AutoFS or Automounter, to -terminate a transaction. Question: Should all transactions end with an ACK? -Further Question: Should all commands end on the AutoFS side? **/ - - - -#define COMMAND_MOUNT_REQUEST ( 0x01 ) - -struct mount_request -/** This is normally sent by AutoFS to Automounter, except under one specific -circumstance, where Automounter can send an unmount request to AutoFS. This is -explained in the examples file. **/ -{ - uint32_t action; /** Mount or unmount **/ -# define ACTION_MOUNT ( 0x01 ) -# define ACTION_UNMOUNT ( 0x02 ) - char mountpoint[]; -}; - - - - -#define COMMAND_MOUNT_DONE ( 0x02 ) - -struct mount_done -/** Automounter returns this after any mount command **/ -{ - uint32_t status; /** Failed, succeeded, etc. **/ -}; - -#define COMMAND_HELLO ( 0x03 ) - -struct hello -/** Automounter sends this command to initiate a session with the AutoFS **/ -{ - uint32_t proto_ver; -}; - - - -struct managed_mount -/** This structure is supplemental to mount management commands. Both AutoFS -and Automounter commands use this format to encode the mountpoints that will -be managed. **/ -{ +/* + * This structure is supplemental to mount management commands. Both AutoFS + * and Automounter commands use this format to encode the mountpoints that + * will be managed. + */ +struct managed_mount { uint32_t status; /** Automounter uses the status field to encode the action to perform, (add or remove from the list) at current. AutoFS will report the @@ -74,145 +37,157 @@ uint32_t timeout; /** In seconds? **/ uint32_t type; /** Network, local, etc. We can define several types later. **/ + uint32_t mountpoint_len; char mountpoint[]; -} +}; -#define COMMAND_AUTOFS_GREETING ( 0x04 ) -struct greeting -/** AutoFS sends this command to Automounter, after getting the "Hello" -command. Automounter should parse the mount management list, to check any -state it must record, and to take any appropriate actions. **/ -{ - uint32_t status; - uint32_t proto_ver; - uint32_t n_mounts; - struct managed_mount mounts[]; -}; + + +/* + * The commands for the protocol and their attendant argument structures + * are all detailed below. + */ + + +/* + * ACK is the acknowledge command. It can be sent by either the Kernel + * or the Automounter, in specific circumstances. + * + * Question: Should all transactions end with an ACK? + * Further Question: Should all commands end on the AutoFS side? + */ +#define COMMAND_ACK ( 0x20 ) -#define COMMAND_GREETING_RESPONSE ( 0x05 ) +/* + * There is no further structure for an ACK command + */ -struct greeting_response -/** Automounter will send this command to finish an initialization transaction. -AutoFS will modify its internal mount management table to reflect Automounter's wishes, and handle the new mountpoints **/ -{ - uint32_t session_id; - uint32_t n_mounts; - struct managed_mount mounts[]; -}; -#define COMMAND_MODIFY_MOUNTS ( 0x06 ) +/* + * This is normally sent by AutoFS to Automounter, except under one + * specific circumstance, where Automounter can send an unmount request + * to AutoFS. This is explained in the examples file. + */ +#define COMMAND_MOUNT_REQUEST ( 0x01 ) -struct modify_mounts -/** Automounter can send this command at any time, to re-initialize, or modify -mounts. Automounter should never have more than ONE mount-modification request -in flight at any given time, as TID's are only generated by AutoFS.**/ +struct mount_request { + uint32_t action; /* The ACTION_* constants defined below are + used to specify the kind of action being requested */ + #define ACTION_MOUNT ( 0x01 ) /* Mount a path */ + #define ACTION_UNMOUNT ( 0x02 ) /* Unmount a path */ + uint32_t mountpoint_len; /* Length of mountpoint field that follows */ + char mountpoint[]; /* Location to perform this mount-related action */ +}; -/** Question for FreeBSD folk, and Prof. Zadok: What if we let Automounter -generate the TID field here, and AutoFS merely copies that field back, when -replying? We cannot guarantee the isolation of these transactions, but -Automounter can re-use TID's from transactions it wants to interlace with -modify_mount actions? **/ -{ - uint32_t n_mounts; - struct managed_mount mounts[]; -} -#define COMMAND_MODIFY_MOUNTS_ACKNOWLEDGE ( 0x07 ) -struct modify_mounts_acknowledge -/** AutoFS will issue this command in response to either of a modify_mounts -command, or a greetings_response command. The status field of mounts, in this -case, is the success or failure of modifying the mount table as requested by -the matching slot in the modify_mounts or greetings_response command. **/ -{ - uint32_t n_mounts; - struct managed_mounts mounts[]; -} +/* + * The Automounter will return this after any mount command. The mount-related + * action may have succeeded or failed. The Automounter should report this + * status, and perhaps detail reasons for failure (EBUSY, etc.?) + */ +#define COMMAND_MOUNT_DONE ( 0x02 ) -/**** -How it all works: (See AutoFS.protocol for a detailed explanation) +struct mount_done { + uint32_t status; /* Status of the mount-related attempt */ + +}; -Each side drops raw data into the data-pipe (a pseudo-device) and picks it up -from this data-pipe. From the perspective of the protocol handler, on either -end, this data is a raw stream of bytes. Starting from the first byte, ever -received, the handler should first apply the "protocol_header" struct to the -bytes. From that point, a switch statement on the "type" field in the header -determines the next structure to use, attached to the next field of bytes. On -unknown types, AutoFS should send a response back to Automounter, and request -Automounter to restart? Similarly so with Automounter. This part I suppose -could be made better? -Generally, the nature of interaction goes something like this: -Automounter AutoFS -Hello, -I would like to talk -protocol version XYZZY +/* + * Automounter sends this command to initiate a session with the AutoFS. + * Further interaction is used to determine the specific kind of protocol + * to speak. In this message, the Automounter suggests to AutoFS a protocol + * version that will be spoken. + */ +#define COMMAND_HELLO ( 0x03 ) - Greetings, - The version I can talk is PLOVER - here is the list of filesystems I currently - manage, and their individual states. +struct hello { + uint32_t proto_ver; /* The requested version to speak */ +}; -Greetings back, please -modify your management list -to include these filesystems. -Any mounted filesystems will -preclude the capability to -replace the existing list in -AutoFS. Automounter must be -instructed to unmount those -filesystems. - modify_mounts_acknowledge +/* + * AutoFS sends this command to Automounter, after getting the "Hello" + * command. The Automounter should parse the mount management list, to + * check any state it must record, and to take any appropriate actions. + * The reported protocol version is the highest version of the protocol + * which the kernel can support. It is expected that the kernel suggested + * version will be adopted by the userspace. (If a user client supports + * X+3 it implicitly supports X, X+1 and X+2 as well. + */ +#define COMMAND_AUTOFS_GREETING ( 0x04 ) ------------------- sometime later a mount is requested -------------------- +struct greeting { + uint32_t status; /* The status of the greeting. This may have future + use. */ + uint32_t proto_ver; /* Kernel supported protocol. */ + uint32_t n_mounts; /* Number of mounts to report */ + struct managed_mount mounts[]; /* current notion of mount state */ +}; - Please mount filesystem xyzzy -Automounter will perform -the mounting, and then -when finished, will -notfiy AutoFS of the -status of the attempt -(fail or succeed.) - Acknowledge +/* + * Automounter will send this command to finish an initialization + * transaction. AutoFS will modify its internal mount management + * table to reflect Automounter's wishes, and handle the new + * mountpoints. + */ +#define COMMAND_GREETING_RESPONSE ( 0x05 ) +struct greeting_response { + uint32_t session_id; + uint32_t n_mounts; + struct managed_mount mounts[]; +}; ------------------ a similar process is incurred for unmount -------------- -Additionally for unmount, Automounter my request that AutoFS be notified of an -unmount attempt. Such a transaction will look like this: -Automounter will send an -unmount request for xyzzy, -without a TID stamp. (use -a 0 perhaps?) +/* + * Automounter can send this command at any time, to re-initialize, or modify + * mounts. Automounter should never have more than ONE mount-modification + * request in flight at any given time, as TID's are only generated by + * AutoFS. + * + * Question for FreeBSD folk, and Prof. Zadok: What if we let Automounter + * generate the TID field here, and AutoFS merely copies that field back, + * when replying? We cannot guarantee the isolation of these transactions, + * but Automounter can re-use TID's from transactions it wants to interlace + * with modify_mount actions? + * + * Erez has suggested letting User and Kernel TID's share the TID space, but + * have all high-bit set TID's be user, and clear be kernel. + */ - AutoFS will send back an identical request - with a generated timestamp. +#define COMMAND_MODIFY_MOUNTS ( 0x06 ) -Automounter will perform the -unmount and then notify as -normal. +struct modify_mounts { + uint32_t n_mounts; /* Number of managed_mount entries in payload */ + struct managed_mount mounts[]; /* the mounts to be changed */ +}; - Acknowledge. ----------------------------------------------------------------------- -If AutoFS receives a greeting request from an already established Automounter -session, AutoFS will interpret this as an attempt to re-synchronize the state -between the two entities. All the primary rules apply. -The AutoFS devices will only allow ONE process to be connected to them at -any given time. (This obviously precludes child-processes, which AutoFS will -believe are the same as the parent perhaps, to facilitate communications?) +/* + * AutoFS will issue this command in response to either of a modify_mounts + * command, or a greetings_response command. The status field of mounts, + * in this case, is the success or failure of modifying the mount table as + * requested by the matching slot in the modify_mounts or greetings_response + * command. + */ +#define COMMAND_MODIFY_MOUNTS_ACKNOWLEDGE ( 0x07 ) -*****/ +struct modify_mounts_acknowledge { + uint32_t n_mounts; /* Number of entries that are in response */ + struct managed_mounts mounts[]; /* The mount entries, and correspondant + status of action */ +}; #endif /*** AUTOFS_PROTOCOL_HEADER ***/ From owner-p4-projects@FreeBSD.ORG Thu Jul 13 20:05:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 381F316A4E8; Thu, 13 Jul 2006 20:05:16 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 ECE2D16A4DF for ; Thu, 13 Jul 2006 20:05:15 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 706E043D49 for ; Thu, 13 Jul 2006 20:05:15 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DK5FeM065941 for ; Thu, 13 Jul 2006 20:05:15 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DK5FBH065938 for perforce@freebsd.org; Thu, 13 Jul 2006 20:05:15 GMT (envelope-from jhb@freebsd.org) Date: Thu, 13 Jul 2006 20:05:15 GMT Message-Id: <200607132005.k6DK5FBH065938@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101486 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 20:05:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=101486 Change 101486 by jhb@jhb_mutex on 2006/07/13 20:05:10 Update. Affected files ... .. //depot/projects/smpng/sys/notes#78 edit Differences ... ==== //depot/projects/smpng/sys/notes#78 (text+ko) ==== @@ -93,11 +93,9 @@ - linux - linux_uselib() - ibcs2 - + ibcs2_read() - ibcs2_mount() - ibcs2_umount() - ibcs2_ioctl() - + ibcs2_getdents() - ibcs2_sigprocmask() - don't mess with td_retval in any kern_foo() functions From owner-p4-projects@FreeBSD.ORG Thu Jul 13 20:50:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0DCCF16A4E8; Thu, 13 Jul 2006 20:50:16 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C294E16A4E6 for ; Thu, 13 Jul 2006 20:50:15 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 37A8B43D46 for ; Thu, 13 Jul 2006 20:50:13 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DKoDTl076084 for ; Thu, 13 Jul 2006 20:50:13 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DKoCaP076081 for perforce@freebsd.org; Thu, 13 Jul 2006 20:50:12 GMT (envelope-from jhb@freebsd.org) Date: Thu, 13 Jul 2006 20:50:12 GMT Message-Id: <200607132050.k6DKoCaP076081@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101488 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 20:50:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=101488 Change 101488 by jhb@jhb_mutex on 2006/07/13 20:50:08 - Add conditional VFS Giant locking to linux_uselib() and mark it MPSAFE. - Remove a Doesn't-Ever-Happen(tm) error case. - Hold the vnode lock longer to protect setting VV_TEXT and note that we don't clear it later on if we get an error. - Document where the error return values differ from exec_check_permissions() and add a competing XXX to rwatson's explaining that vn_open() would be a poor choice here. This code is much closer to exec_check_permissions(). - Audit the pathname lookup for the library. Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_misc.c#66 edit .. //depot/projects/smpng/sys/i386/linux/syscalls.master#35 edit .. //depot/projects/smpng/sys/notes#79 edit Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_misc.c#66 (text+ko) ==== @@ -229,7 +229,7 @@ unsigned long bss_size; char *library; int error; - int locked; + int locked, vfslocked; LCONVPATHEXIST(td, args->library, &library); @@ -239,32 +239,24 @@ #endif a_out = NULL; + vfslocked = 0; locked = 0; vp = NULL; - /* - * XXX: This code should make use of vn_open(), rather than doing - * all this stuff itself. - */ - NDINIT(&ni, LOOKUP, ISOPEN|FOLLOW|LOCKLEAF, UIO_SYSSPACE, library, td); + NDINIT(&ni, LOOKUP, ISOPEN | FOLLOW | LOCKLEAF | MPSAFE | AUDITVNODE1, + UIO_SYSSPACE, library, td); error = namei(&ni); LFREEPATH(library); if (error) goto cleanup; vp = ni.ni_vp; - /* - * XXX - This looks like a bogus check. A LOCKLEAF namei should not - * succeed without returning a vnode. - */ - if (vp == NULL) { - error = ENOEXEC; /* ?? */ - goto cleanup; - } + vfslocked = NDHASGIANT(&ni); NDFREE(&ni, NDF_ONLY_PNBUF); /* * From here on down, we have a locked vnode that must be unlocked. + * XXX: The code below largely duplicates exec_check_permissions(). */ locked++; @@ -281,6 +273,7 @@ if ((vp->v_mount->mnt_flag & MNT_NOEXEC) || ((attr.va_mode & 0111) == 0) || (attr.va_type != VREG)) { + /* EACCESS is what exec(2) returns. */ error = ENOEXEC; goto cleanup; } @@ -299,6 +292,8 @@ /* * XXX: This should use vn_open() so that it is properly authorized, * and to reduce code redundancy all over the place here. + * XXX: Not really, it duplicates far more of exec_check_permissions() + * than vn_open(). */ #ifdef MAC error = mac_check_vnode_open(td->td_ucred, vp, FREAD); @@ -312,12 +307,6 @@ /* Pull in executable header into kernel_map */ error = vm_mmap(kernel_map, (vm_offset_t *)&a_out, PAGE_SIZE, VM_PROT_READ, VM_PROT_READ, 0, OBJT_VNODE, vp, 0); - /* - * Lock no longer needed - */ - locked = 0; - VOP_UNLOCK(vp, 0, td); - if (error) goto cleanup; @@ -372,11 +361,21 @@ } PROC_UNLOCK(td->td_proc); - mp_fixme("Unlocked vflags access."); - /* prevent more writers */ + /* + * Prevent more writers. + * XXX: Note that if any of the VM operations fail below we don't + * clear this flag. + */ vp->v_vflag |= VV_TEXT; /* + * Lock no longer needed + */ + locked = 0; + VOP_UNLOCK(vp, 0, td); + VFS_UNLOCK_GIANT(vfslocked); + + /* * Check if file_offset page aligned. Currently we cannot handle * misalinged file offsets, and so we read in the entire image * (what a waste). @@ -453,8 +452,10 @@ cleanup: /* Unlock vnode if needed */ - if (locked) + if (locked) { VOP_UNLOCK(vp, 0, td); + VFS_UNLOCK_GIANT(vfslocked); + } /* Release the kernel mapping. */ if (a_out) ==== //depot/projects/smpng/sys/i386/linux/syscalls.master#35 (text+ko) ==== @@ -165,7 +165,7 @@ 84 AUE_LSTAT MSTD { int linux_lstat(char *path, struct ostat *up); } 85 AUE_READLINK MSTD { int linux_readlink(char *name, char *buf, \ l_int count); } -86 AUE_USELIB STD { int linux_uselib(char *library); } +86 AUE_USELIB MSTD { int linux_uselib(char *library); } 87 AUE_SWAPON MNOPROTO { int swapon(char *name); } 88 AUE_REBOOT MSTD { int linux_reboot(l_int magic1, \ l_int magic2, l_uint cmd, void *arg); } ==== //depot/projects/smpng/sys/notes#79 (text+ko) ==== @@ -90,8 +90,8 @@ - svr4_sys_waitsys() - svr4_sys_fchroot() - svr4_sys_resolvepath() - - linux - - linux_uselib() + + linux + + linux_uselib() - ibcs2 - ibcs2_mount() - ibcs2_umount() From owner-p4-projects@FreeBSD.ORG Thu Jul 13 21:42:19 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AA0FF16A4E8; Thu, 13 Jul 2006 21:42:19 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 6CE3016A4DA for ; Thu, 13 Jul 2006 21:42:19 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2831143D46 for ; Thu, 13 Jul 2006 21:42:19 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DLgJvh079751 for ; Thu, 13 Jul 2006 21:42:19 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DLgI3H079748 for perforce@freebsd.org; Thu, 13 Jul 2006 21:42:18 GMT (envelope-from imp@freebsd.org) Date: Thu, 13 Jul 2006 21:42:18 GMT Message-Id: <200607132142.k6DLgI3H079748@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101489 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 21:42:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=101489 Change 101489 by imp@imp_lighthouse on 2006/07/13 21:42:16 WIP for cognet Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_tc.c#5 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_tc.c#5 (text+ko) ==== @@ -66,10 +66,10 @@ int overflows; }; -#define RD4(counter, off) \ - bus_read_4((counter)->sc->mem_res, (off) + (counter)->offset) -#define WR4(counter, off, val) \ - bus_write_4((counter)->sc->mem_res, (off) + (counter)->offset, (val)) +#define RD4(tc, off) \ + bus_read_4((tc)->sc->mem_res, (off) + (tc)->offset) +#define WR4(tc, off, val) \ + bus_write_4((tc)->sc->mem_res, (off) + (tc)->offset, (val)) #define RD4sc(sc, off) \ bus_read_4(sc->mem_res, (off)) #define WR4sc(sc, off, val) \ @@ -104,9 +104,10 @@ at91_tc_get_timecount, /* get_timecount */ NULL, /* no poll_pps */ 0xfffffu, /* counter_mask */ - 5000000, /* frequency */ +// 5000000, /* frequency */ + 60000000 / 8, /* frequency */ "5MHz", /* name */ - 20000 /* quality */ + 2000 /* quality */ }; #endif @@ -142,6 +143,7 @@ // On the TSC board, we have 5MHz going into TIOA2. Setup // TC1's XC1 to use this. WR4sc(sc, TC_BMR, TC_BMR_XC1_TIOA2); + printf("BMR: %x\n", RD4sc(sc, TC_BMR)); #endif for (i = 0; i < MAX_COUNTER; i++) at91_tc_counter_init(sc, &sc->tc[i], i); @@ -149,7 +151,7 @@ if (device_get_unit(dev) == 0) { // XXX need cdev // Init our timecounter. - at91_tc_tc = &sc->tc[0]; + at91_tc_tc = &sc->tc[1]; tc_init(&at91_tc_timecounter); } #endif @@ -213,12 +215,13 @@ #endif tc->sc = sc; + printf("tc%d offset %x\n", unit, (uint32_t)tc->offset); #ifdef AT91_TSC // Only TC1 is needed. All others are disabled. if (unit != 1 || device_get_unit(sc->dev) != 0) { #endif + WR4(tc, TC_IDR, 0xffffffff); WR4(tc, TC_CCR, TC_CCR_CLKDIS); - WR4(tc, TC_IDR, 0xffffffff); return; #ifdef AT91_TSC } @@ -234,14 +237,22 @@ // Setup TC1 into Capture Mode (WAVE=0), clocked by our external // 5MHz, loading RA on rise and RB on falling edge - WR4(tc, TC_CMR, TC_CMR_XC1 | TC_CMR_BURST_NONE | TC_CMR_ETRGEDG_NONE | +// WR4(tc, TC_CMR, TC_CMR_XC1 | TC_CMR_BURST_NONE | TC_CMR_ETRGEDG_NONE | +// TC_CMR_LDRA_RISE | TC_CMR_LDRB_FALL); + WR4(tc, TC_CMR, TC_CMR_TIMER_CLOCK2 | TC_CMR_BURST_NONE | TC_CMR_ETRGEDG_NONE | TC_CMR_LDRA_RISE | TC_CMR_LDRB_FALL); - + printf("CMR: %x\n", RD4(tc, TC_CMR)); WR4(tc, TC_IDR, 0xffffffff); WR4(tc, TC_IER, TC_SR_COVFS | TC_SR_LOVRS | TC_SR_LDRAS | TC_SR_LDRBS); + printf("IMR: %x\n", RD4(tc, TC_IMR)); // Now that we have ISR setup, we can enable clocks and go! WR4(tc, TC_CCR, TC_CCR_SWTRG | TC_CCR_CLKEN); + { + uint32_t last; + last = RD4(tc, TC_CV); + printf("Last is %x and %x SR %x\n", last, RD4(tc, TC_CV), RD4(tc, TC_SR)); + } #endif } @@ -252,9 +263,11 @@ struct at91_tc_counter *tc = argp; uint32_t status; +printf("Howdy!\n"); status = RD4(tc, TC_SR); - if (status & TC_SR_COVFS) + if (status & TC_SR_COVFS) { tc->sc->overflows++; + } if (status & TC_SR_LOVRS) printf("Didn't read RA or RB in time\n"); if (status & TC_SR_LDRAS) From owner-p4-projects@FreeBSD.ORG Thu Jul 13 21:44:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B59A116A4E0; Thu, 13 Jul 2006 21:44:22 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8900C16A4DE for ; Thu, 13 Jul 2006 21:44:22 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 57F5243D46 for ; Thu, 13 Jul 2006 21:44:22 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DLiMh7079842 for ; Thu, 13 Jul 2006 21:44:22 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DLiMMo079839 for perforce@freebsd.org; Thu, 13 Jul 2006 21:44:22 GMT (envelope-from imp@freebsd.org) Date: Thu, 13 Jul 2006 21:44:22 GMT Message-Id: <200607132144.k6DLiMMo079839@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101490 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 21:44:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=101490 Change 101490 by imp@imp_lighthouse on 2006/07/13 21:44:07 Refine Affected files ... .. //depot/projects/arm/src/sys/boot/arm/at91/bootspi/env_vars.c#7 edit Differences ... ==== //depot/projects/arm/src/sys/boot/arm/at91/bootspi/env_vars.c#7 (text+ko) ==== @@ -79,17 +79,10 @@ void DumpBootCommands(void) { - int i, j; + int i; - for (i = 0; i < MAX_BOOT_COMMANDS; ++i) { - printf("0x%x : ", i); - for (j = 0; j < MAX_INPUT_SIZE; ++j) { - putchar(boot_commands[i][j]); - if (!(boot_commands[i][j])) - break; - } - printf("[E]\n\r"); - } + for (i = 0; boot_commands[i][0]; i++) + printf("0x%x : %s[E]\r\n", i, boot_commands[i]); } From owner-p4-projects@FreeBSD.ORG Thu Jul 13 21:45:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8CABD16A4E1; Thu, 13 Jul 2006 21:45:24 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 537EE16A4E0 for ; Thu, 13 Jul 2006 21:45:24 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2169F43D45 for ; Thu, 13 Jul 2006 21:45:24 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6DLjOe0079941 for ; Thu, 13 Jul 2006 21:45:24 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6DLjNCh079938 for perforce@freebsd.org; Thu, 13 Jul 2006 21:45:23 GMT (envelope-from imp@freebsd.org) Date: Thu, 13 Jul 2006 21:45:23 GMT Message-Id: <200607132145.k6DLjNCh079938@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101491 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jul 2006 21:45:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=101491 Change 101491 by imp@imp_lighthouse on 2006/07/13 21:44:46 Use the right clock rate for TSC board. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_pmc.c#18 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_pmc.c#18 (text+ko) ==== @@ -22,6 +22,8 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#include "opt_at91.h" + #include __FBSDID("$FreeBSD: src/sys/arm/at91/at91_pmc.c,v 1.2 2006/06/17 23:22:10 imp Exp $"); @@ -397,7 +399,11 @@ pmc_softc->dev = dev; if ((err = at91_pmc_activate(dev)) != 0) return err; +#ifdef AT91_TSC + at91_pmc_init_clock(pmc_softc, 16000000); +#else at91_pmc_init_clock(pmc_softc, 10000000); +#endif return (0); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 00:54:23 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CE8E916A4E0; Fri, 14 Jul 2006 00:54:23 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 7523B16A4DE for ; Fri, 14 Jul 2006 00:54:23 +0000 (UTC) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F1DC543D45 for ; Fri, 14 Jul 2006 00:54:22 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E0sMO8099843 for ; Fri, 14 Jul 2006 00:54:22 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E0sMFF099840 for perforce@freebsd.org; Fri, 14 Jul 2006 00:54:22 GMT (envelope-from cognet@freebsd.org) Date: Fri, 14 Jul 2006 00:54:22 GMT Message-Id: <200607140054.k6E0sMFF099840@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 101496 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 00:54:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=101496 Change 101496 by cognet@cognet on 2006/07/14 00:53:49 #ifndef CROSS_DEBUGGER any MD bits in trgt_arm.c, to be able to build a cross-kgdb. Affected files ... .. //depot/projects/arm/gnu-arm.diff#13 edit Differences ... ==== //depot/projects/arm/gnu-arm.diff#13 (text+ko) ==== @@ -1016,8 +1016,8 @@ RCS file: gnu/usr.bin/gdb/kgdb/trgt_arm.c diff -N gnu/usr.bin/gdb/kgdb/trgt_arm.c --- /dev/null 1 Jan 1970 00:00:00 -0000 -+++ gnu/usr.bin/gdb/kgdb/trgt_arm.c 6 Jul 2006 23:54:06 -0000 -@@ -0,0 +1,224 @@ ++++ gnu/usr.bin/gdb/kgdb/trgt_arm.c 14 Jul 2006 00:49:04 -0000 +@@ -0,0 +1,232 @@ +/* + * Copyright (c) 2004 Marcel Moolenaar + * All rights reserved. @@ -1048,9 +1048,11 @@ +__FBSDID("$FreeBSD$"); + +#include ++#ifndef CROSS_DEBUGGER +#include +#include +#include ++#endif +#include +#include +#include @@ -1068,6 +1070,7 @@ +void +kgdb_trgt_fetch_registers(int regno __unused) +{ ++#ifndef CROSS_DEBUGGER + struct kthr *kt; + struct pcb pcb; + int i, reg; @@ -1097,6 +1100,7 @@ + else + supply_register(ARM_PC_REGNUM, (char *)®); + } ++#endif +} + +void @@ -1105,6 +1109,7 @@ + fprintf_unfiltered(gdb_stderr, "XXX: %s\n", __func__); +} + ++#ifndef CROSS_DEBUGGER +struct kgdb_frame_cache { + CORE_ADDR fp; + CORE_ADDR sp; @@ -1214,10 +1219,12 @@ + &kgdb_trgt_trapframe_this_id, + &kgdb_trgt_trapframe_prev_register +}; ++#endif + +const struct frame_unwind * +kgdb_trgt_trapframe_sniffer(struct frame_info *next_frame) +{ ++#ifndef CROSS_DEBUGGER + char *pname; + CORE_ADDR pc; + @@ -1240,5 +1247,6 @@ + is_undef = 1; + else + is_undef = 0; ++#endif + return (NULL); +} From owner-p4-projects@FreeBSD.ORG Fri Jul 14 03:11:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 126D416A4E7; Fri, 14 Jul 2006 03:11:17 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C5F4916A4DD for ; Fri, 14 Jul 2006 03:11:16 +0000 (UTC) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 93D3243D49 for ; Fri, 14 Jul 2006 03:11:16 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E3BG6X013411 for ; Fri, 14 Jul 2006 03:11:16 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E3BGUv013408 for perforce@freebsd.org; Fri, 14 Jul 2006 03:11:16 GMT (envelope-from scottl@freebsd.org) Date: Fri, 14 Jul 2006 03:11:16 GMT Message-Id: <200607140311.k6E3BGUv013408@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 101501 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 03:11:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=101501 Change 101501 by scottl@scottl-x64 on 2006/07/14 03:10:59 Re-allow anonymous CCB's. Affected files ... .. //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#41 edit .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_low.c#9 edit Differences ... ==== //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#41 (text+ko) ==== @@ -4981,9 +4981,11 @@ union ccb *new_ccb; new_ccb = malloc(sizeof(*new_ccb), M_CAMXPT, M_WAITOK); - callout_handle_init(&new_ccb->ccb_h.timeout_ch); - callout_init(&new_ccb->ccb_h.callout, - (sim->flags & CAM_SIM_MPSAFE) ? 1 : 0); + if (sim != NULL) { + callout_handle_init(&new_ccb->ccb_h.timeout_ch); + callout_init(&new_ccb->ccb_h.callout, + (sim->flags & CAM_SIM_MPSAFE) ? 1 : 0); + } return (new_ccb); } ==== //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_low.c#9 (text+ko) ==== @@ -966,7 +966,7 @@ struct scsi_low_softc *slp; { struct cam_path *path; - union ccb *ccb = xpt_alloc_ccb(path->sim); + union ccb *ccb = xpt_alloc_ccb(NULL); cam_status status; bzero(ccb, sizeof(union ccb)); From owner-p4-projects@FreeBSD.ORG Fri Jul 14 03:22:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7B96816A4E5; Fri, 14 Jul 2006 03:22:32 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 57A0416A4DE for ; Fri, 14 Jul 2006 03:22:32 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D74C043D45 for ; Fri, 14 Jul 2006 03:22:31 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E3MVHw016627 for ; Fri, 14 Jul 2006 03:22:31 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E3MVSD016621 for perforce@freebsd.org; Fri, 14 Jul 2006 03:22:31 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 03:22:31 GMT Message-Id: <200607140322.k6E3MVSD016621@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101502 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 03:22:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=101502 Change 101502 by jb@jb_freebsd2 on 2006/07/14 03:22:27 Default threads in libc to off. POLA. Affected files ... .. //depot/projects/dtrace/src/share/mk/bsd.own.mk#6 edit Differences ... ==== //depot/projects/dtrace/src/share/mk/bsd.own.mk#6 (text+ko) ==== @@ -321,7 +321,6 @@ KERBEROS \ LIB32 \ LIBC_R \ - LIBC_THREADS \ LIBPTHREAD \ LIBTHR \ LOCALES \ @@ -370,7 +369,8 @@ .for var in \ BIND_LIBS \ HESIOD \ - IDEA + IDEA \ + LIBC_THREADS .if defined(WITH_${var}) && defined(WITHOUT_${var}) .error WITH_${var} and WITHOUT_${var} can't both be set. .endif From owner-p4-projects@FreeBSD.ORG Fri Jul 14 04:26:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5E8A916A4E6; Fri, 14 Jul 2006 04:26:56 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 357EC16A4DA for ; Fri, 14 Jul 2006 04:26:56 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2996C43D49 for ; Fri, 14 Jul 2006 04:26:55 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E4QtUD022340 for ; Fri, 14 Jul 2006 04:26:55 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E4QrEr022309 for perforce@freebsd.org; Fri, 14 Jul 2006 04:26:53 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 04:26:53 GMT Message-Id: <200607140426.k6E4QrEr022309@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101503 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 04:26:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=101503 Change 101503 by jb@jb_freebsd2 on 2006/07/14 04:25:57 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#15 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#13 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.develalumni.sgml#9 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/config/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/desktop/chapter.sgml#2 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/davidxu.key#1 branch .. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys-developers.sgml#9 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys.ent#9 integrate .. //depot/projects/dtrace/doc/share/sgml/trademarks.ent#2 integrate .. //depot/projects/dtrace/ports/MOVED#5 integrate .. //depot/projects/dtrace/ports/Mk/bsd.linux-rpm.mk#2 integrate .. //depot/projects/dtrace/ports/Mk/bsd.scons.mk#3 integrate .. //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackagestats#3 integrate .. //depot/projects/dtrace/ports/Tools/scripts/addport#3 integrate .. //depot/projects/dtrace/ports/UPDATING#5 integrate .. //depot/projects/dtrace/src/etc/rc.d/mountcritlocal#3 integrate .. //depot/projects/dtrace/src/etc/rc.d/mountlate#1 branch .. //depot/projects/dtrace/src/lib/libthr/thread/thr_attr.c#4 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_create.c#3 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_getschedparam.c#4 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_init.c#4 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_private.h#5 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_setprio.c#3 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_setschedparam.c#4 integrate .. //depot/projects/dtrace/src/lib/libutil/kld.3#2 integrate .. //depot/projects/dtrace/src/sbin/mount/mount.8#4 integrate .. //depot/projects/dtrace/src/sbin/mount/mount.c#5 integrate .. //depot/projects/dtrace/src/share/man/man4/ipw.4#3 integrate .. //depot/projects/dtrace/src/share/man/man4/iwi.4#3 integrate .. //depot/projects/dtrace/src/share/man/man7/security.7#4 integrate .. //depot/projects/dtrace/src/share/man/man9/Makefile#5 integrate .. //depot/projects/dtrace/src/share/man/man9/sx.9#4 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/db_trace.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/intr_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/local_apic.c#3 integrate .. //depot/projects/dtrace/src/sys/amd64/include/specialreg.h#5 integrate .. //depot/projects/dtrace/src/sys/arm/arm/db_trace.c#3 integrate .. //depot/projects/dtrace/src/sys/arm/arm/gdb_machdep.c#1 branch .. //depot/projects/dtrace/src/sys/arm/include/gdb_machdep.h#1 branch .. //depot/projects/dtrace/src/sys/compat/freebsd32/syscalls.master#3 integrate .. //depot/projects/dtrace/src/sys/conf/files.arm#3 integrate .. //depot/projects/dtrace/src/sys/crypto/via/padlock.c#6 integrate .. //depot/projects/dtrace/src/sys/ddb/db_command.c#4 integrate .. //depot/projects/dtrace/src/sys/ddb/db_output.c#3 integrate .. //depot/projects/dtrace/src/sys/ddb/db_output.h#3 integrate .. //depot/projects/dtrace/src/sys/ddb/db_ps.c#6 integrate .. //depot/projects/dtrace/src/sys/ddb/db_thread.c#4 integrate .. //depot/projects/dtrace/src/sys/ddb/ddb.h#4 integrate .. //depot/projects/dtrace/src/sys/dev/bce/if_bce.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt.c#8 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt.h#10 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_cam.c#10 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_debug.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_pci.c#9 integrate .. //depot/projects/dtrace/src/sys/dev/pci/pci.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/random/probe.c#3 integrate .. //depot/projects/dtrace/src/sys/fs/devfs/devfs_vnops.c#4 integrate .. //depot/projects/dtrace/src/sys/geom/geom.h#4 integrate .. //depot/projects/dtrace/src/sys/geom/mirror/g_mirror_ctl.c#4 integrate .. //depot/projects/dtrace/src/sys/geom/raid3/g_raid3_ctl.c#5 integrate .. //depot/projects/dtrace/src/sys/i386/i386/db_trace.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/i386/identcpu.c#5 integrate .. //depot/projects/dtrace/src/sys/i386/i386/initcpu.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/i386/intr_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/i386/i386/local_apic.c#4 integrate .. //depot/projects/dtrace/src/sys/i386/i386/machdep.c#5 integrate .. //depot/projects/dtrace/src/sys/i386/include/md_var.h#4 integrate .. //depot/projects/dtrace/src/sys/i386/include/specialreg.h#5 integrate .. //depot/projects/dtrace/src/sys/ia64/ia64/db_machdep.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/init_sysent.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/kern_intr.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/kern_ktr.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/kern_thr.c#6 integrate .. //depot/projects/dtrace/src/sys/kern/subr_prf.c#3 integrate .. //depot/projects/dtrace/src/sys/kern/subr_turnstile.c#5 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.c#6 integrate .. //depot/projects/dtrace/src/sys/kern/syscalls.master#6 integrate .. //depot/projects/dtrace/src/sys/kern/sysv_sem.c#4 integrate .. //depot/projects/dtrace/src/sys/nfs4client/nfs4_vnops.c#3 integrate .. //depot/projects/dtrace/src/sys/pc98/pc98/machdep.c#6 integrate .. //depot/projects/dtrace/src/sys/posix4/p1003_1b.c#5 integrate .. //depot/projects/dtrace/src/sys/powerpc/powerpc/db_trace.c#3 integrate .. //depot/projects/dtrace/src/sys/sparc64/sparc64/db_trace.c#3 integrate .. //depot/projects/dtrace/src/sys/sys/syscall.h#6 integrate .. //depot/projects/dtrace/src/sys/sys/syscall.mk#6 integrate .. //depot/projects/dtrace/src/sys/sys/sysproto.h#6 integrate .. //depot/projects/dtrace/src/sys/sys/thr.h#4 integrate .. //depot/projects/dtrace/src/tools/tools/nanobsd/nanobsd.sh#3 integrate .. //depot/projects/dtrace/src/usr.bin/kdump/kdump.c#5 integrate .. //depot/projects/dtrace/src/usr.bin/kdump/mksubr#2 integrate .. //depot/projects/dtrace/www/en/advocacy/myths.sgml#2 integrate .. //depot/projects/dtrace/www/en/donations/wantlist.sgml#7 integrate .. //depot/projects/dtrace/www/en/news/news.xml#14 integrate .. //depot/projects/dtrace/www/en/projects/Makefile#3 integrate .. //depot/projects/dtrace/www/en/projects/gnats4/Makefile#2 delete .. //depot/projects/dtrace/www/en/projects/gnats4/index.sgml#2 delete .. //depot/projects/dtrace/www/en/projects/gnats4/style.css#2 delete .. //depot/projects/dtrace/www/en/projects/nanobsd/Makefile#2 delete .. //depot/projects/dtrace/www/en/projects/nanobsd/index.sgml#2 delete .. //depot/projects/dtrace/www/en/projects/nanobsd/style.css#2 delete .. //depot/projects/dtrace/www/en/projects/projects.sgml#5 integrate .. //depot/projects/dtrace/www/share/sgml/advisories.xml#5 integrate .. //depot/projects/dtrace/www/zh_CN/Makefile#2 integrate .. //depot/projects/dtrace/www/zh_CN/news/news-rdf.xsl#2 integrate .. //depot/projects/dtrace/www/zh_CN/news/news.xml#2 integrate .. //depot/projects/dtrace/www/zh_CN/news/press.xml#2 integrate .. //depot/projects/dtrace/www/zh_TW/Makefile#2 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#15 (text+ko) ==== @@ -1,4 +1,4 @@ - + + + + &a.tmm; (2001 - 2006) + + + &a.hanai; (1997 - 2006) ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/config/chapter.sgml#3 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -690,7 +690,7 @@ - Using rc under &os; 5.X and newer + Using rc under &os; In 2002 &os; integrated the NetBSD rc.d system for system initialization. @@ -2022,8 +2022,8 @@ require many thousands of file descriptors, depending on the kind and number of services running concurrently. - kern.maxfile's default value is - dictated by the option in your + In older FreeBSD releases, kern.maxfile's default + value is derived from the option in your kernel configuration file. kern.maxfiles grows proportionally to the value of . When compiling a custom kernel, it is a good idea to set this kernel @@ -2033,7 +2033,24 @@ connected at once, the resources needed may be similar to a high-scale web server. - The system will auto-tune + As of FreeBSD 4.5, kern.maxusers is + automatically sized at boot based on the amount of memory available + in the system, and may be determined at run-time by inspecting the + value of the read-only kern.maxusers sysctl. + Some sites will require larger or smaller values of + kern.maxusers and may set it as a loader tunable; + values of 64, 128, and 256 are not uncommon. We do not recommend + going above 256 unless you need a huge number of file descriptors; + many of the tunable values set to their defaults by + kern.maxusers may be individually overridden at + boot-time or run-time in /boot/loader.conf (see + the &man.loader.conf.5; man page or the + /boot/defaults/loader.conf file for some hints) + or as described elsewhere in this document. Systems older than + FreeBSD 4.4 must set this value via the kernel &man.config.8; + option instead. + + In older releases, the system will auto-tune maxusers for you if you explicitly set it to 0 The auto-tuning algorithm sets ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/desktop/chapter.sgml#2 (text+ko) ==== @@ -1,6 +1,6 @@ @@ -228,59 +228,67 @@ &prompt.user; mozilla -mail + + Firefox + + Firefox + + + Firefox is the next-generation + browser based on the Mozilla + codebase. Mozilla is a complete + suite of applications, such as a browser, a mail client, a chat + client and much more. Firefox is + just a browser, which makes it smaller and faster. + + Install the package by typing: + + &prompt.root; pkg_add -r firefox + + You can also use the Ports Collection if you + prefer to compile from source code: + + &prompt.root; cd /usr/ports/www/firefox +&prompt.root; make install clean + + - - - - Tom - Rhodes - Contributed by - - - + Firefox, Mozilla and &java; plugin + + + In this section and in the next one, we assume you + already installed Firefox or + Mozilla. + - Mozilla and &java; plugin - - Installing Mozilla is simple, but - unfortunately installing Mozilla with - support for add-ons like &java; and - ¯omedia; &flash; - consumes both time and disk - space. + The &os; Foundation has a license with Sun Microsystems to + distribute &os; binaries for the Java Runtime Environment + (&jre;) and Java Development Kit (&jdk;). Binary packages for + &os; are available on the &os; + Foundation web site. - The first thing is to download the files which will be used - with Mozilla. Take your current web - browser up to - and - create an account on their website. Remember to save the username - and password from here as it may be needed in the future. Download - the jdk-1_5_0-bin-scsl.zip (JDK 5.0 - SCSL Binaries) and jdk-1_5_0-src-scsl.zip (JDK 5.0 - SCSL Source) files and place them in - /usr/ports/distfiles as the port will not - fetch them automatically. This is due to license restrictions. While - we are here, download the java environment from - . - The filename is j2sdk-1_4_2_08-linux-i586.bin. - Like before, this file must be placed into - /usr/ports/distfiles. Download a copy - of the java patchkit from - - and place it - into /usr/ports/distfiles. Finally, install the - java/jdk15 port - with the standard make install clean. + To add &java; support to + Firefox or + Mozilla, you have to install, at + first, the java/javavmwrapper port. Then, + download the Diablo &jre; package + from , + and install it with &man.pkg.add.1;. - Start Mozilla and access the - About Plug-ins option from the - Help menu. &java; + Start your browser, enter + about:plugins in the location bar and press + Enter. A page regarding installed plugins + will be displayed, the &java; plugin should be listed there now. - Mozilla and ¯omedia; &flash; plugin + Firefox, Mozilla and ¯omedia; &flash; plugin ¯omedia; &flash; plugin is not available for &os;. However, a software layer (wrapper) for running the Linux version of the plugin @@ -296,16 +304,38 @@ /usr/local/share/examples/linuxpluginwrapper/ directory. - Install the www/mozilla port, - if Mozilla is not already installed. + The next step is to install the www/linux-flashplugin7 port. Once + the plugin is installed, start your browser, enter + about:plugins in the location bar and press + Enter. + A list should appear with all the currently + available plugins. + + If the &flash; plugin is not listed, this is, most of time, + caused by a missing symlink. As root, + run the following commands: + + &prompt.root; ln -s /usr/X11R6/lib/linux-flashplugin7/libflashplayer.so \ + /usr/X11R6/lib/browser_plugins/ +&prompt.root; ln -s /usr/X11R6/lib/linux-flashplugin7/flashplayer.xpt \ + /usr/X11R6/lib/browser_plugins/ - Now just start Mozilla with: + If you restart your browser the plugin should now appears + in the previously mentioned list. Your browser may also crash + when playing some &flash; animations, in this case a patch + can help you: - &prompt.user; mozilla & + &prompt.root; cd /usr/src +&prompt.root; fetch http://people.FreeBSD.org/~nork/rtld_dlsym_hack.diff +&prompt.root; patch < rtld_dlsym_hack.diff +&prompt.root; cd libexec/rtld-elf/ +&prompt.root; make clean +&prompt.root; make obj +&prompt.root; make depend +&prompt.root; make && make install - And access the About Plug-ins option from the - Help menu. A list should appear with all the currently - available plugins. + Then reboot your machine. The linuxpluginwrapper only works on @@ -354,29 +384,6 @@ - Firefox - - Firefox - - - Firefox is the next-generation - browser based on the Mozilla - codebase. Mozilla is a complete - suite of applications, such as a browser, a mail client, a chat - client and much more. Firefox is - just a browser, which makes it smaller and faster. - - Install the package by typing: - - &prompt.root; pkg_add -r firefox - - You can also use the Ports Collection if you - prefer to compile from source code: - - &prompt.root; cd /usr/ports/www/firefox -&prompt.root; make install clean - - Konqueror Konqueror ==== //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys-developers.sgml#9 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -1048,3 +1048,9 @@ &a.phantom; &pgpkey.phantom; + + + &a.davidxu; + &pgpkey.davidxu; + + ==== //depot/projects/dtrace/doc/share/pgpkeys/pgpkeys.ent#9 (text+ko) ==== @@ -1,5 +1,5 @@ - + @@ -50,6 +50,7 @@ + ==== //depot/projects/dtrace/doc/share/sgml/trademarks.ent#2 (text+ko) ==== @@ -8,7 +8,7 @@ Please keep this file sorted. - $FreeBSD: doc/share/sgml/trademarks.ent,v 1.30 2005/09/11 07:43:18 yar Exp $ + $FreeBSD: doc/share/sgml/trademarks.ent,v 1.31 2006/07/13 09:44:21 blackend Exp $ --> 3Com and HomeConnect are registered @@ -305,6 +305,7 @@ Java Virtual Machine"> JavaServer Pages"> JDK"> +JRE"> JSP"> JVM"> Netra"> ==== //depot/projects/dtrace/ports/MOVED#5 (text+ko) ==== @@ -1,7 +1,7 @@ # # MOVED - a list of (recently) moved or removed ports # -# $FreeBSD: ports/MOVED,v 1.1093 2006/07/11 17:52:45 lbr Exp $ +# $FreeBSD: ports/MOVED,v 1.1094 2006/07/12 14:15:55 rafan Exp $ # # Each entry consists of a single line containing the following four # fields in the order named, separated with the pipe (`|') character: @@ -2228,7 +2228,6 @@ mail/rmoldmail||2006-04-07|Has expired: mastersite disappeared, no longer maintained by author mail/ruby-mime-types||2006-04-07|Has expired: mastersite disappeared, no longer maintained by author devel/wftk||2006-04-07|master site disappeared -textproc/p5-JSON-Syck|textproc/p5-YAML-Syck|2006-04-07|The textproc/p5-YAML-Syck port now includes JSON functionality www/linux-flashplugin||2006-04-08|Removed due to license problem net/nic||2006-04-08|Deprecated for a long time www/flashpluginwrapper||2006-04-08|Removed as it depends on linux-flashplugin @@ -2411,3 +2410,4 @@ sysutils/lineak_xosdplugin|sysutils/lineak-xosdplugin|2006-07-09|port name changed to match upstream japanese/phpgroupware||2006-04-10|removed at mainter request (because broken and vulnerabilities) www/p5-Catalyst|www/p5-Catalyst-Runtime|2006-07-10|follow CPAN split of package +textproc/p5-JSON-Syck|textproc/p5-YAML-Syck|2006-07-12|The textproc/p5-YAML-Syck port now includes JSON functionality ==== //depot/projects/dtrace/ports/Mk/bsd.linux-rpm.mk#2 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: Makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.linux-rpm.mk,v 1.7 2006/06/07 18:47:40 netchild Exp $ +# $FreeBSD: ports/Mk/bsd.linux-rpm.mk,v 1.8 2006/07/13 12:35:12 bsam Exp $ # # Variables: @@ -105,14 +105,14 @@ . if defined(AUTOMATIC_PLIST) -. if ${USE_LINUX} == "8" || ${USE_LINUX:L} == "yes" -_LINUX_BASE_SUFFIX= 8 +. if ${USE_LINUX} == "fc4" || ${USE_LINUX:L} == "yes" +_LINUX_BASE_SUFFIX= fc4 . elif ${USE_LINUX} == "debian" _LINUX_BASE_SUFFIX= debian . elif ${USE_LINUX} == "fc3" _LINUX_BASE_SUFFIX= fc3 -. elif ${USE_LINUX} == "fc4" -_LINUX_BASE_SUFFIX= fc4 +. elif ${USE_LINUX} == "8" +_LINUX_BASE_SUFFIX= 8 . else # other linux_base ports do not provide a pkg-plist file IGNORE= uses AUTOMATIC_PLIST with an unsupported USE_LINUX, \"${USE_LINUX}\". Supported values are \"yes\", \"8\", \"debian\", \"fc3\" and \"fc4\" ==== //depot/projects/dtrace/ports/Mk/bsd.scons.mk#3 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: Makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.scons.mk,v 1.3 2006/07/05 19:53:27 linimon Exp $ +# $FreeBSD: ports/Mk/bsd.scons.mk,v 1.4 2006/07/13 22:10:39 alepulver Exp $ # # bsd.scons.mk - Python-based SCons build system interface. # Author: Alexander Botero-Lowry @@ -30,14 +30,16 @@ # Some scons projects may honor PKGCONFIGDIR, which tells them where to # look for, and install, pkgconfig files. # +# LIBPATH is the search path for libraries. Bring in some safe defaults. +# +# CPPPATH is the search path for includes, Again, bring in some safe defaults. +# CCFLAGS?= ${CFLAGS} LINKFLAGS?= ${LDFLAGS} PKGCONFIGDIR?= ${LOCALBASE}/libdata/pkgconfig +LIBPATH= ${LOCALBASE}/lib ${X11BASE}/lib +CPPPATH= ${LOCALBASE}/include ${X11BASE}/include -CCFLAGS+= -I${LOCALBASE}/include -CXXFLAGS+= -I${LOCALBASE}/include -LINKFLAGS+= -L${LOCALBASE}/lib - # # SCONS_ENV is where we pass all the stuff that should be the # same for any scons port to scons. Things like CCFLAGS, and LINKFLAGS @@ -53,8 +55,9 @@ # argument to scons. # SCONS_ENV?= CCFLAGS="${CCFLAGS}" CXXFLAGS="${CXXFLAGS}" \ - LINKFLAGS="${LINKFLAGS}" PKGCONFIGDIR="${PKGCONFIGDIR}" \ - PREFIX="${PREFIX}" CC="${CC}" CXX="${CXX}" + LINKFLAGS="${LINKFLAGS}" PKGCONFIGDIR="${PKGCONFIGDIR}" \ + CPPPATH="${CPPPATH}" LIBPATH="${LIBPATH}" PREFIX="${PREFIX}" \ + CC="${CC}" CXX="${CXX}" SCONS_ARGS?= SCONS_BUILDENV?= SCONS_TARGET?= ==== //depot/projects/dtrace/ports/Tools/portbuild/scripts/dopackagestats#3 (text+ko) ==== @@ -1,5 +1,5 @@ #!/bin/sh -# $FreeBSD: ports/Tools/portbuild/scripts/dopackagestats,v 1.10 2006/07/08 04:09:42 linimon Exp $ +# $FreeBSD: ports/Tools/portbuild/scripts/dopackagestats,v 1.11 2006/07/13 03:52:28 linimon Exp $ # # create HTML showing numbers of packages vs errors. Run this in a directory # accessible to the web server. @@ -9,7 +9,7 @@ SUPPORTED_ARCHS="amd64 i386 ia64 sparc64" ROOT_DIRECTORY=/var/portbuild -OUTFILE=packagestats.html +OUTFILE=`basename $0 | sed -e "s/^do//"`".html" TMPFILE=.${OUTFILE} # stylesheet seems like overkill for something this simple @@ -35,7 +35,8 @@ echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} - echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} @@ -58,6 +59,15 @@ indexfile=$directory/ports/INDEX-$branch fi + # column: date of CVS checkout + cvsdone=" " + if [ -f $directory/cvsdone ]; then + cvsdone="$(cat $directory/cvsdone | awk '{printf("%s %s\n",$2,$3)}')" + if [ -z "$cvsdone" ]; then + cvsdone=" " + fi + fi + # column: datestamp of latest log latest=" " if [ -d $directory/logs ]; then @@ -121,6 +131,7 @@ # now write the row echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} + echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} echo "
 as ofcvs datelatest logINDEXpackageserrors
$arch-$build$cvsdone$latest$n_index" >> ${TMPFILE} @@ -143,7 +154,8 @@ write_footer () { echo "

explanation of columns:

" >> ${TMPFILE} echo "
    " >> ${TMPFILE} - echo "
  • as of is the date of the latest logfile.
  • " >> ${TMPFILE} + echo "
  • latest log is the date of the latest logfile.
  • " >> ${TMPFILE} + echo "
  • cvs date is the date of the latest CVS checkout done by the script. It may be inaccurate if a manual checkout was done later.
  • " >> ${TMPFILE} echo "
  • INDEX is number of ports in the INDEX file built from the latest cvs checkout.
  • " >> ${TMPFILE} echo "
  • packages is number of packages successfully built.
  • " >> ${TMPFILE} echo "
  • errors is number of packages that failed.
  • " >> ${TMPFILE} @@ -152,6 +164,11 @@ echo "
  • done is whether that run terminated normally or not.
  • " >> ${TMPFILE} echo "
" >> ${TMPFILE} + echo "

notes:

" >> ${TMPFILE} + echo "
    " >> ${TMPFILE} + echo "
  • on the -exp builds, editors/openoffice.org* are skipped to save time.
  • " >> ${TMPFILE} + echo "
" >> ${TMPFILE} + echo "" >> ${TMPFILE} echo "" >> ${TMPFILE} } ==== //depot/projects/dtrace/ports/Tools/scripts/addport#3 (text+ko) ==== @@ -32,7 +32,7 @@ # # Id: addport,v 1.2 2000/04/02 06:21:13 will Exp (original shell script) # Id: addport,v 1.5 2000/04/22 22:19:43 mharo Exp (perl conversion) -# $FreeBSD: ports/Tools/scripts/addport,v 1.49 2006/07/04 23:12:10 garga Exp $ +# $FreeBSD: ports/Tools/scripts/addport,v 1.50 2006/07/14 01:49:35 shaun Exp $ # # MAINTAINER= garga@FreeBSD.org # @@ -57,12 +57,13 @@ my %opts; -getopts('ac:d:fgh:il:L:M:mns:tu:', \%opts); +getopts('abc:d:fgh:il:L:M:mns:tu:', \%opts); my $autofill_l = $opts{'l'}; my $autofill_L = $opts{'L'}; my $autofill = ($autofill_l ? $autofill_l : $autofill_L); my $c = $opts{'c'} if ($opts{'c'} ne ""); +my $binfiles = $opts{'b'}; my $nomodules = $opts{'g'}; my $distdir = $opts{'s'} if ($opts{'s'} ne ""); my $dir = $opts{'d'}; @@ -321,7 +322,23 @@ chdir $category or err(1,"$category"); system("$cp -PRp $thisdir ."); system("$cvs $n add `find $portname -type d | grep -v CVS`") && errx(1, "cvs add for dirs failed, aborting."); - system("$cvs $n add `find $portname -type f | grep -v CVS`") && errx(1, "cvs add for files failed, aborting."); + + my $gotfiles = 0; + if ($binfiles) { + if (-d "$portname/files") { + my (@pf, $fd); + opendir($fd, "$portname/files") and + @pf = grep { /^.*patch-.*$/ } readdir($fd); + $gotfiles = ++$#pf; + } + } + + if ($binfiles && $gotfiles > 0) { + system("$cvs $n add `find $portname -type f | grep -v CVS | grep -v '^$portname/files/.*patch-.*'`") && errx(1, "cvs add for files failed, aborting."); + system("$cvs $n add -ko `find $portname -type f | grep -v CVS | grep '^$portname/files/.*patch-.*'`") && errx(1, "cvs add for files failed, aborting."); + } else { + system("$cvs $n add `find $portname -type f | grep -v CVS`") && errx(1, "cvs add for files failed, aborting."); + } # figure out where the port name belongs in category Makefile my @ports = &lsports; @@ -417,7 +434,7 @@ SYNOPSIS $0 [-c commitfile] [-h host] [-l PR number] [-s distdir] [-u user] - [-afgimnt] -d directory + [-abfgimnt] -d directory Where "directory" contains the comma-delimited list of root directories of new ports that you wish to @@ -427,6 +444,8 @@ OPTIONS -a Perform checks on the port to make sure there are no problems. Recommended. + -b Add all patch-* files in \${FILESDIR} as binary + files (i.e. don't expand CVS tags) -c file Use file in place of normal log message. -f Do not fetch the distfile. -g Do not commit to CVSROOT/modules. ==== //depot/projects/dtrace/ports/UPDATING#5 (text+ko) ==== @@ -6,6 +6,14 @@ time you update your ports collection, before attempting any port upgrades. +20060713: + AFFECTS: users of x11-fonts/terminus-font + AUTHOR: garga@FreeBSD.org + + Since version 4.20, terminus-font changed place to install fonts to + ${PREFIX}/lib/X11/fonts/terminus-font, please, add this new path to your + font paths. + 20060711: AFFECTS: users of net/samba3 AUTHOR: timur@gnu.org @@ -3808,4 +3816,4 @@ 2) Update all p5-* modules. portupgrade -f p5-\* -$FreeBSD: ports/UPDATING,v 1.360 2006/07/12 00:16:31 kuriyama Exp $ +$FreeBSD: ports/UPDATING,v 1.361 2006/07/13 12:03:50 garga Exp $ ==== //depot/projects/dtrace/src/etc/rc.d/mountcritlocal#3 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: mountcritlocal,v 1.7 2002/04/29 12:29:53 lukem Exp $ -# $FreeBSD: src/etc/rc.d/mountcritlocal,v 1.12 2004/10/07 13:55:26 mtm Exp $ +# $FreeBSD: src/etc/rc.d/mountcritlocal,v 1.13 2006/07/12 16:05:51 des Exp $ # # PROVIDE: mountcritlocal @@ -27,6 +27,7 @@ esac # Mount everything except nfs filesystems. + echo -n 'Mounting local file systems:' mount_excludes='no' for i in ${netfs_types}; do fstype=${i%:*} @@ -34,6 +35,7 @@ done mount_excludes=${mount_excludes%,} mount -a -t ${mount_excludes} + echo '.' case $? in 0) ==== //depot/projects/dtrace/src/lib/libthr/thread/thr_attr.c#4 (text+ko) ==== @@ -93,7 +93,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_attr.c,v 1.6 2006/04/27 08:18:23 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_attr.c,v 1.7 2006/07/12 06:13:18 davidxu Exp $ */ #include "namespace.h" @@ -434,9 +434,17 @@ policy = (*attr)->sched_policy; - if (param->sched_priority < _thr_priorities[policy-1].pri_min || - param->sched_priority > _thr_priorities[policy-1].pri_max) + if (policy == SCHED_FIFO || policy == SCHED_RR) { + if (param->sched_priority < _thr_priorities[policy-1].pri_min || + param->sched_priority > _thr_priorities[policy-1].pri_max) return (ENOTSUP); + } else { + /* + * Ignore it for SCHED_OTHER now, patches for glib ports + * are wrongly using M:N thread library's internal macro + * THR_MIN_PRIORITY and THR_MAX_PRIORITY. + */ + } (*attr)->prio = param->sched_priority; ==== //depot/projects/dtrace/src/lib/libthr/thread/thr_create.c#3 (text+ko) ==== @@ -24,7 +24,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/lib/libthr/thread/thr_create.c,v 1.29 2006/04/04 02:57:49 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_create.c,v 1.32 2006/07/13 22:45:19 davidxu Exp $ */ #include "namespace.h" @@ -50,6 +50,7 @@ { struct pthread *curthread, *new_thread; struct thr_param param; + struct thr_sched_param sched_param; int ret = 0, locked, create_suspended; sigset_t set, oset; @@ -78,10 +79,9 @@ new_thread->attr.flags |= PTHREAD_SCOPE_SYSTEM; else new_thread->attr.flags &= ~PTHREAD_SCOPE_SYSTEM; - /* - * scheduling policy and scheduling parameters will be - * inherited in following code. - */ + + new_thread->attr.prio = curthread->attr.prio; + new_thread->attr.sched_policy = curthread->attr.sched_policy; } if (_thr_scope_system > 0) @@ -105,30 +105,6 @@ new_thread->arg = arg; new_thread->cancelflags = PTHREAD_CANCEL_ENABLE | PTHREAD_CANCEL_DEFERRED; - /* - * Check if this thread is to inherit the scheduling - * attributes from its parent: - */ - if (new_thread->attr.sched_inherit == PTHREAD_INHERIT_SCHED) { - /* - * Copy the scheduling attributes. Lock the scheduling - * lock to get consistent scheduling parameters. - */ - THR_LOCK(curthread); - new_thread->base_priority = curthread->base_priority; - new_thread->attr.prio = curthread->base_priority; - new_thread->attr.sched_policy = curthread->attr.sched_policy; - THR_UNLOCK(curthread); - } else { - /* - * Use just the thread priority, leaving the - * other scheduling attributes as their - * default values: - */ - new_thread->base_priority = new_thread->attr.prio; - } - new_thread->active_priority = new_thread->base_priority; - /* Initialize the mutex queue: */ TAILQ_INIT(&new_thread->mutexq); @@ -166,6 +142,14 @@ param.flags = 0; if (new_thread->attr.flags & PTHREAD_SCOPE_SYSTEM) param.flags |= THR_SYSTEM_SCOPE; + if (new_thread->attr.sched_inherit == PTHREAD_INHERIT_SCHED) + param.sched_param = NULL; + else { + param.sched_param = &sched_param; + param.sched_param_size = sizeof(sched_param); + sched_param.policy = new_thread->attr.sched_policy; + sched_param.param.sched_priority = new_thread->attr.prio; + } /* Schedule the new thread. */ if (create_suspended) { @@ -177,6 +161,15 @@ ret = thr_new(¶m, sizeof(param)); + if (ret != 0) { + ret = errno; + /* + * Translate EPROCLIM into well-known POSIX code EAGAIN. + */ + if (ret == EPROCLIM) + ret = EAGAIN; + } + if (create_suspended) __sys_sigprocmask(SIG_SETMASK, &oset, NULL); @@ -196,7 +189,6 @@ _thr_ref_delete_unlocked(curthread, new_thread); THREAD_LIST_UNLOCK(curthread); (*thread) = 0; - ret = EAGAIN; } else if (locked) { _thr_report_creation(curthread, new_thread); THR_THREAD_UNLOCK(curthread, new_thread); ==== //depot/projects/dtrace/src/lib/libthr/thread/thr_getschedparam.c#4 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_getschedparam.c,v 1.5 2006/04/27 08:18:23 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_getschedparam.c,v 1.8 2006/07/13 22:45:19 davidxu Exp $ */ #include "namespace.h" @@ -46,32 +46,30 @@ struct sched_param *param) { struct pthread *curthread = _get_curthread(); - int ret, tmp; + int ret; + + if (policy == NULL || param == NULL) + return (EINVAL); - if ((param == NULL) || (policy == NULL)) - /* Return an invalid argument error: */ - ret = EINVAL; - else if (pthread == curthread) { + if (pthread == curthread) { /* * Avoid searching the thread list when it is the current * thread. */ - THR_THREAD_LOCK(curthread, curthread); - param->sched_priority = pthread->base_priority; - tmp = pthread->attr.sched_policy; - THR_THREAD_UNLOCK(curthread, curthread); - *policy = tmp; + THR_LOCK(curthread); + *policy = curthread->attr.sched_policy; + param->sched_priority = curthread->attr.prio; + THR_UNLOCK(curthread); ret = 0; } /* Find the thread in the list of active threads. */ else if ((ret = _thr_ref_add(curthread, pthread, /*include dead*/0)) == 0) { THR_THREAD_LOCK(curthread, pthread); - param->sched_priority = pthread->base_priority; - tmp = pthread->attr.sched_policy; + *policy = pthread->attr.sched_policy; + param->sched_priority = pthread->attr.prio; THR_THREAD_UNLOCK(curthread, pthread); _thr_ref_delete(curthread, pthread); - *policy = tmp; } return (ret); } ==== //depot/projects/dtrace/src/lib/libthr/thread/thr_init.c#4 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_init.c,v 1.34 2006/04/27 08:18:23 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_init.c,v 1.36 2006/07/13 22:45:19 davidxu Exp $ */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 14 04:28:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8942216A4E2; Fri, 14 Jul 2006 04:28:58 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 656C916A4E0 for ; Fri, 14 Jul 2006 04:28:58 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 338FD43D46 for ; Fri, 14 Jul 2006 04:28:58 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E4SwKQ022727 for ; Fri, 14 Jul 2006 04:28:58 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E4SvQU022724 for perforce@freebsd.org; Fri, 14 Jul 2006 04:28:57 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 04:28:57 GMT Message-Id: <200607140428.k6E4SvQU022724@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101504 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 04:28:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=101504 Change 101504 by jb@jb_freebsd2 on 2006/07/14 04:28:52 Reset to the -current version. Affected files ... .. //depot/projects/dtrace/src/lib/libthr/Makefile#5 edit Differences ... ==== //depot/projects/dtrace/src/lib/libthr/Makefile#5 (text+ko) ==== @@ -42,6 +42,7 @@ .include "${.CURDIR}/sys/Makefile.inc" .include "${.CURDIR}/thread/Makefile.inc" +.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64" SYMLINKS+=lib${LIB}.a ${LIBDIR}/libpthread.a .if !defined(NO_PIC) SYMLINKS+=lib${LIB}.so ${LIBDIR}/libpthread.so @@ -49,5 +50,6 @@ .if ${MK_PROFILE} != "no" SYMLINKS+=lib${LIB}_p.a ${LIBDIR}/libpthread_p.a .endif +.endif .include From owner-p4-projects@FreeBSD.ORG Fri Jul 14 04:46:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 22ED516A4E1; Fri, 14 Jul 2006 04:46:22 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 EFE5E16A4DE for ; Fri, 14 Jul 2006 04:46:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BE2FC43D49 for ; Fri, 14 Jul 2006 04:46:21 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E4kLf7023847 for ; Fri, 14 Jul 2006 04:46:21 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E4kLN5023844 for perforce@freebsd.org; Fri, 14 Jul 2006 04:46:21 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 04:46:21 GMT Message-Id: <200607140446.k6E4kLN5023844@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101507 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 04:46:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=101507 Change 101507 by jb@jb_freebsd2 on 2006/07/14 04:46:05 Only build in the jump table if threads aren't being built into libc. Affected files ... .. //depot/projects/dtrace/src/lib/libc/include/libc_private.h#3 edit Differences ... ==== //depot/projects/dtrace/src/lib/libc/include/libc_private.h#3 (text+ko) ==== @@ -63,6 +63,7 @@ #define FLOCKFILE(fp) if (__isthreaded) _FLOCKFILE(fp) #define FUNLOCKFILE(fp) if (__isthreaded) _funlockfile(fp) +#ifndef LIBC_THREADS /* * Indexes into the pthread jump table. * @@ -136,6 +137,7 @@ typedef pthread_func_t pthread_func_entry_t[2]; extern pthread_func_entry_t __thr_jtable[]; +#endif /* * yplib internal interfaces From owner-p4-projects@FreeBSD.ORG Fri Jul 14 04:50:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D6B4B16A4DE; Fri, 14 Jul 2006 04:50:28 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 9AD7816A4DA for ; Fri, 14 Jul 2006 04:50:28 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6778A43D46 for ; Fri, 14 Jul 2006 04:50:28 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E4oSwS031864 for ; Fri, 14 Jul 2006 04:50:28 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E4oSwM031861 for perforce@freebsd.org; Fri, 14 Jul 2006 04:50:28 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 04:50:28 GMT Message-Id: <200607140450.k6E4oSwM031861@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101508 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 04:50:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101508 Change 101508 by jb@jb_freebsd2 on 2006/07/14 04:50:25 Bump the libc version just for this prototype project. If building threads into libc, include the makefile that sucks them in. Affected files ... .. //depot/projects/dtrace/src/lib/libc/Makefile#5 edit Differences ... ==== //depot/projects/dtrace/src/lib/libc/Makefile#5 (text+ko) ==== @@ -12,7 +12,7 @@ # To include legacy CSRG sccsid strings, add -DLIBC_SCCS and -DSYSLIBC_SCCS # to CFLAGS below. -DSYSLIBC_SCCS affects just the system call stubs. LIB=c -SHLIB_MAJOR= 7 +SHLIB_MAJOR= 8 WARNS?= 2 CFLAGS+=-I${.CURDIR}/include -I${.CURDIR}/../../include CFLAGS+=-I${.CURDIR}/${MACHINE_ARCH} @@ -74,6 +74,10 @@ CFLAGS+= -DNS_CACHING .endif +.if ${MK_THREADS_IN_LIBC} != "no" +.include "${.CURDIR}/thread/Makefile.inc" +.endif + .if defined(SYMVER_ENABLED) VERSION_DEF=${.CURDIR}/Versions.def SYMBOL_MAPS=${SYM_MAPS} From owner-p4-projects@FreeBSD.ORG Fri Jul 14 04:53:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 74A9416A4E5; Fri, 14 Jul 2006 04:53:33 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 3567716A4E1 for ; Fri, 14 Jul 2006 04:53:33 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EB22B43D53 for ; Fri, 14 Jul 2006 04:53:32 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E4rW0P032046 for ; Fri, 14 Jul 2006 04:53:32 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E4rWEq032043 for perforce@freebsd.org; Fri, 14 Jul 2006 04:53:32 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 04:53:32 GMT Message-Id: <200607140453.k6E4rWEq032043@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101509 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 04:53:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=101509 Change 101509 by jb@jb_freebsd2 on 2006/07/14 04:53:25 Only build in the spinlock stubs if not building threads into libc. Affected files ... .. //depot/projects/dtrace/src/lib/libc/gen/Makefile.inc#3 edit Differences ... ==== //depot/projects/dtrace/src/lib/libc/gen/Makefile.inc#3 (text+ko) ==== @@ -4,7 +4,7 @@ # machine-independent gen sources .PATH: ${.CURDIR}/${MACHINE_ARCH}/gen ${.CURDIR}/gen -SRCS+= __xuname.c _pthread_stubs.c _rand48.c _spinlock_stub.c _thread_init.c \ +SRCS+= __xuname.c _rand48.c _spinlock_stub.c _thread_init.c \ alarm.c arc4random.c assert.c basename.c check_utility_compat.c \ clock.c closedir.c confstr.c \ crypt.c ctermid.c daemon.c devname.c dirname.c disklabel.c \ @@ -33,6 +33,10 @@ usleep.c utime.c valloc.c vis.c wait.c wait3.c waitpid.c \ wordexp.c +.if ${MK_LIBC_THREADS} == "no" +SRCS+= _spinlock_stub.c +.endif + SYM_MAPS+=${.CURDIR}/gen/Symbol.map # machine-dependent gen sources From owner-p4-projects@FreeBSD.ORG Fri Jul 14 04:59:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8264B16A4DF; Fri, 14 Jul 2006 04:59:41 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 5AA9816A4DD for ; Fri, 14 Jul 2006 04:59:41 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 27E5643D45 for ; Fri, 14 Jul 2006 04:59:41 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E4xffc032367 for ; Fri, 14 Jul 2006 04:59:41 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E4xe4E032364 for perforce@freebsd.org; Fri, 14 Jul 2006 04:59:40 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 04:59:40 GMT Message-Id: <200607140459.k6E4xe4E032364@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101510 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 04:59:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=101510 Change 101510 by jb@jb_freebsd2 on 2006/07/14 04:59:22 If threads are built into libc, then still define the -pthread argument (because ports expect that), but always link just libc no matter what. Affected files ... .. //depot/projects/dtrace/src/contrib/gcc/config/freebsd-spec.h#3 edit Differences ... ==== //depot/projects/dtrace/src/contrib/gcc/config/freebsd-spec.h#3 (text+ko) ==== @@ -156,13 +156,26 @@ %{pthread:-lc_r_p}} \ }" #else +#ifdef FBSD_LIBC_THREADS +/* Leave the -pthread option defined, but link libc no matter what. */ #define FBSD_LIB_SPEC " \ %{!shared: \ + %{!pg: \ + %{!pthread:-lc} \ + %{pthread:-lc}} \ + %{pg: \ + %{!pthread:-lc_p} \ + %{pthread:-lc_p}} \ + }" +#else +#define FBSD_LIB_SPEC " \ + %{!shared: \ %{!pg: %{pthread:-lpthread} -lc} \ %{pg: %{pthread:-lpthread_p} -lc_p} \ }" #endif #endif +#endif #if FBSD_MAJOR < 5 #define FBSD_DYNAMIC_LINKER "/usr/libexec/ld-elf.so.1" From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:01:44 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8C8AD16A4E2; Fri, 14 Jul 2006 05:01:44 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 680F016A4E0 for ; Fri, 14 Jul 2006 05:01:44 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2C18843D46 for ; Fri, 14 Jul 2006 05:01:44 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E51iB0032586 for ; Fri, 14 Jul 2006 05:01:44 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E51hnE032581 for perforce@freebsd.org; Fri, 14 Jul 2006 05:01:43 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 05:01:43 GMT Message-Id: <200607140501.k6E51hnE032581@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101511 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:01:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=101511 Change 101511 by jb@jb_freebsd2 on 2006/07/14 05:01:32 libthr works on sparc, so libc_r is never made the default. Affected files ... .. //depot/projects/dtrace/src/lib/libc_r/Makefile#4 edit Differences ... ==== //depot/projects/dtrace/src/lib/libc_r/Makefile#4 (text+ko) ==== @@ -1,4 +1,7 @@ # $FreeBSD: src/lib/libc_r/Makefile,v 1.44 2006/04/12 19:51:14 ru Exp $ + +.include + # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -25,7 +28,7 @@ .include "${.CURDIR}/uthread/Makefile.inc" .include "${.CURDIR}/sys/Makefile.inc" -.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "sparc64" +.if ${MACHINE_ARCH} == "alpha" SYMLINKS+=lib${LIB}.a ${LIBDIR}/libpthread.a .if !defined(NO_PIC) SYMLINKS+=lib${LIB}.so ${LIBDIR}/libpthread.so From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:06:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C38116A4DD; Fri, 14 Jul 2006 05:06:51 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 2900216A4DE for ; Fri, 14 Jul 2006 05:06:51 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E6C3C43D49 for ; Fri, 14 Jul 2006 05:06:50 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E56oq2034079 for ; Fri, 14 Jul 2006 05:06:50 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E56odA034076 for perforce@freebsd.org; Fri, 14 Jul 2006 05:06:50 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 05:06:50 GMT Message-Id: <200607140506.k6E56odA034076@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101512 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:06:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=101512 Change 101512 by jb@jb_freebsd2 on 2006/07/14 05:06:23 Use the proper way to tell gcc to link threaded. Note that there isn't a _single_ place in the FreeBSD source tree where threaded programs are built properly. No wonder that the ports people often get it wrong too! Affected files ... .. //depot/projects/dtrace/src/tools/tools/netrate/http/Makefile#3 edit .. //depot/projects/dtrace/src/tools/tools/netrate/httpd/Makefile#3 edit .. //depot/projects/dtrace/src/tools/tools/netrate/juggle/Makefile#3 edit Differences ... ==== //depot/projects/dtrace/src/tools/tools/netrate/http/Makefile#3 (text+ko) ==== @@ -3,7 +3,7 @@ PROG= http WARNS= 3 NO_MAN= -DPADD= ${LIBPTHREAD} -LDADD= -lpthread +CFLAGS+=-pthread +DPADD+= ${LIBPTHREAD} .include ==== //depot/projects/dtrace/src/tools/tools/netrate/httpd/Makefile#3 (text+ko) ==== @@ -3,7 +3,7 @@ PROG= httpd WARNS= 3 NO_MAN= -DPADD= ${LIBPTHREAD} -LDADD= -lpthread +CFLAGS+=-pthread +DPADD+= ${LIBPTHREAD} .include ==== //depot/projects/dtrace/src/tools/tools/netrate/juggle/Makefile#3 (text+ko) ==== @@ -3,8 +3,7 @@ PROG= juggle NO_MAN= WARNS= 3 - -LDADD= -lpthread -DPADD= ${LIBPTHREAD} +CFLAGS+=-pthread +DPADD+= ${LIBPTHREAD} .include From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:15:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1BCF016A52E; Fri, 14 Jul 2006 05:15:22 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C66B816A504 for ; Fri, 14 Jul 2006 05:15:21 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 454C043D4C for ; Fri, 14 Jul 2006 05:15:01 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E5F1A0034488 for ; Fri, 14 Jul 2006 05:15:01 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E5F1bD034485 for perforce@freebsd.org; Fri, 14 Jul 2006 05:15:01 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 05:15:01 GMT Message-Id: <200607140515.k6E5F1bD034485@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101513 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:15:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=101513 Change 101513 by jb@jb_freebsd2 on 2006/07/14 05:14:34 Allow for threads built into libc. Affected files ... .. //depot/projects/dtrace/src/sbin/ggate/ggatec/Makefile#3 edit .. //depot/projects/dtrace/src/sbin/ggate/ggated/Makefile#3 edit Differences ... ==== //depot/projects/dtrace/src/sbin/ggate/ggatec/Makefile#3 (text+ko) ==== @@ -1,5 +1,7 @@ # $FreeBSD: src/sbin/ggate/ggatec/Makefile,v 1.6 2005/07/10 21:10:20 pjd Exp $ +.include + .PATH: ${.CURDIR}/../shared PROG= ggatec @@ -9,7 +11,12 @@ CFLAGS+= -DLIBGEOM CFLAGS+= -I${.CURDIR}/../shared -DPADD= ${LIBGEOM} ${LIBSBUF} ${LIBBSDXML} ${LIBUTIL} ${LIBPTHREAD} -LDADD= -lgeom -lsbuf -lbsdxml -lutil -lpthread +DPADD= ${LIBGEOM} ${LIBSBUF} ${LIBBSDXML} ${LIBUTIL} +LDADD= -lgeom -lsbuf -lbsdxml -lutil + +.if ${MK_LIB_THREADS} == "no" +DPADD+= ${LIBPTHREAD} +LDADD+= -lpthread +.endif .include ==== //depot/projects/dtrace/src/sbin/ggate/ggated/Makefile#3 (text+ko) ==== @@ -1,13 +1,17 @@ # $FreeBSD: src/sbin/ggate/ggated/Makefile,v 1.5 2005/07/10 21:10:20 pjd Exp $ +.include + .PATH: ${.CURDIR}/../shared PROG= ggated MAN= ggated.8 SRCS= ggated.c ggate.c +.if ${MK_LIB_THREADS} == "no" DPADD= ${LIBPTHREAD} LDADD= -lpthread +.endif CFLAGS+= -I${.CURDIR}/../shared From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:21:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8783116A4E1; Fri, 14 Jul 2006 05:21:10 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 4A1E716A4DA for ; Fri, 14 Jul 2006 05:21:10 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 05A5943D49 for ; Fri, 14 Jul 2006 05:21:10 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E5L9k2034978 for ; Fri, 14 Jul 2006 05:21:09 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E5L9G8034975 for perforce@freebsd.org; Fri, 14 Jul 2006 05:21:09 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 05:21:09 GMT Message-Id: <200607140521.k6E5L9G8034975@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101515 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:21:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=101515 Change 101515 by jb@jb_freebsd2 on 2006/07/14 05:20:11 Allow for threads built into libc. Affected files ... .. //depot/projects/dtrace/src/usr.sbin/cached/Makefile#2 edit .. //depot/projects/dtrace/src/usr.sbin/pppctl/Makefile#3 edit Differences ... ==== //depot/projects/dtrace/src/usr.sbin/cached/Makefile#2 (text) ==== @@ -1,5 +1,7 @@ # $FreeBSD: src/usr.sbin/cached/Makefile,v 1.1 2006/04/28 12:03:37 ume Exp $ +.include + PROG=cached PROGNAME=cached MAN=cached.conf.5 cached.8 @@ -9,8 +11,14 @@ config.c query.c mp_ws_query.c mp_rs_query.c singletons.c protocol.c \ parser.c CFLAGS+= -DCONFIG_PATH="\"${PREFIX}/etc/cached.conf\"" -DPADD+=${LIBM} ${LIBPTHREAD} ${LIBUTIL} -LDADD+=${LIBM} ${LIBPTHREAD} ${LIBUTIL} +DPADD+=${LIBM} ${LIBUTIL} +LDADD+=${LIBM} ${LIBUTIL} + +.if ${MK_LIBC_THREADS} == "no" +DPADD+=${LIBPTHREAD} +LDADD+=${LIBPTHREAD} +.endif + LDFLAGS+= -Xlinker --export-dynamic .PATH: ${.CURDIR}/agents ==== //depot/projects/dtrace/src/usr.sbin/pppctl/Makefile#3 (text+ko) ==== @@ -1,9 +1,16 @@ # $FreeBSD: src/usr.sbin/pppctl/Makefile,v 1.16 2004/01/31 17:28:09 marcel Exp $ +.include + PROG= pppctl MAN= pppctl.8 -DPADD= ${LIBPTHREAD} ${LIBEDIT} ${LIBTERMCAP} -LDADD= -lpthread -ledit -ltermcap +DPADD= ${LIBEDIT} ${LIBTERMCAP} +LDADD= -ledit -ltermcap + +.if ${MK_LIBC_THREADS} == "no" +DPADD= ${LIBPTHREAD} +LDADD= -lpthread +.endif .include From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:24:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7474316A4E5; Fri, 14 Jul 2006 05:24:15 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 532D316A4E0 for ; Fri, 14 Jul 2006 05:24:15 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 10B6B43D4C for ; Fri, 14 Jul 2006 05:24:15 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E5OEID035281 for ; Fri, 14 Jul 2006 05:24:14 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E5OElT035278 for perforce@freebsd.org; Fri, 14 Jul 2006 05:24:14 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 05:24:14 GMT Message-Id: <200607140524.k6E5OElT035278@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101518 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:24:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101518 Change 101518 by jb@jb_freebsd2 on 2006/07/14 05:23:34 Allow for threads built into libc. Affected files ... .. //depot/projects/dtrace/src/tools/regression/tls/ttls2/Makefile#3 edit .. //depot/projects/dtrace/src/tools/regression/tls/ttls3/Makefile#3 edit .. //depot/projects/dtrace/src/tools/regression/tls/ttls4/Makefile#3 edit Differences ... ==== //depot/projects/dtrace/src/tools/regression/tls/ttls2/Makefile#3 (text+ko) ==== @@ -1,8 +1,14 @@ # $FreeBSD: src/tools/regression/tls/ttls2/Makefile,v 1.4 2004/12/21 08:47:25 ru Exp $ +.include + PROG= ttls2 -LDADD+= -lpthread NO_MAN= DEBUG_FLAGS= -g +.if ${MK_LIBC_THREADS} == "no" +DPADD+= ${LIBPTHREAD} +LDADD+= -lpthread +.endif + .include ==== //depot/projects/dtrace/src/tools/regression/tls/ttls3/Makefile#3 (text+ko) ==== @@ -1,11 +1,16 @@ # $FreeBSD: src/tools/regression/tls/ttls3/Makefile,v 1.2 2004/08/16 09:35:49 dfr Exp $ +.include + all: ttls3 LDFLAGS=-shared -Bsymbolic --allow-shlib-undefined -CFLAGS+= -lpthread CFLAGS+= -Wl,--rpath=${.OBJDIR} +.if ${MK_LIBC_THREADS} == "no" +CFLAGS+= -lpthread +.endif + tls-lib: elftls.S gcc -c -o elftls.o ${.CURDIR}/elftls.S ld $(LDFLAGS) elftls.o -soname libtls.so.1 -o libtls.so.1 ==== //depot/projects/dtrace/src/tools/regression/tls/ttls4/Makefile#3 (text+ko) ==== @@ -1,8 +1,14 @@ # $FreeBSD: src/tools/regression/tls/ttls4/Makefile,v 1.1 2005/04/23 23:47:58 davidxu Exp $ +.include + PROG= ttls4 -LDADD+= -lpthread NO_MAN= DEBUG_FLAGS= -g +.if ${MK_LIBC_THREADS} == "no" +DPADD+= ${LIBPTHREAD} +LDADD+= -lpthread +.endif + .include From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:28:21 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E50C916A4E8; Fri, 14 Jul 2006 05:28:20 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 BC86916A4E6 for ; Fri, 14 Jul 2006 05:28:20 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8524043D46 for ; Fri, 14 Jul 2006 05:28:20 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E5SKIi035480 for ; Fri, 14 Jul 2006 05:28:20 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E5SKYH035477 for perforce@freebsd.org; Fri, 14 Jul 2006 05:28:20 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 05:28:20 GMT Message-Id: <200607140528.k6E5SKYH035477@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101519 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:28:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=101519 Change 101519 by imp@imp_lighthouse on 2006/07/14 05:27:23 Minor style nits Revert part of 1.132: better to put the card in reset than to write a 0 to EXCA_INTR. Writing 0 seems to cause problems on TI bridges (it worked on my Sony with a Ricoh bridge). Affected files ... .. //depot/projects/arm/src/sys/dev/pccbb/pccbb.c#13 edit Differences ... ==== //depot/projects/arm/src/sys/dev/pccbb/pccbb.c#13 (text+ko) ==== @@ -1165,13 +1165,11 @@ int err; DPRINTF(("cbb_pcic_socket_enable:\n")); - /* power down/up the socket to reset */ err = cbb_do_power(brdev); if (err) return (err); exca_reset(&sc->exca[0], child); - return (0); } @@ -1181,15 +1179,12 @@ struct cbb_softc *sc = device_get_softc(brdev); DPRINTF(("cbb_pcic_socket_disable\n")); - - /* Turn off the card's interrupt and leave it in reset */ - exca_putb(&sc->exca[0], EXCA_INTR, 0); + /* reset signal asserting... */ + exca_clrb(&sc->exca[0], EXCA_INTR, EXCA_INTR_RESET); tsleep(sc, PZERO, "cbbP1", hz / 100); - /* power down the socket */ cbb_power(brdev, CARD_OFF); exca_putb(&sc->exca[0], EXCA_PWRCTL, 0); - /* wait 300ms until power fails (Tpf). */ tsleep(sc, PZERO, "cbbP1", hz * 300 / 1000); } @@ -1213,6 +1208,7 @@ cbb_power_disable_socket(device_t brdev, device_t child) { struct cbb_softc *sc = device_get_softc(brdev); + if (sc->flags & CBB_16BIT_CARD) cbb_pcic_power_disable_socket(brdev, child); else @@ -1224,6 +1220,7 @@ struct resource *res) { struct cbb_softc *sc = device_get_softc(brdev); + return (exca_activate_resource(&sc->exca[0], child, type, rid, res)); } @@ -1232,6 +1229,7 @@ int rid, struct resource *res) { struct cbb_softc *sc = device_get_softc(brdev); + return (exca_deactivate_resource(&sc->exca[0], child, type, rid, res)); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:33:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2B95016A4E1; Fri, 14 Jul 2006 05:33:28 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C9FE616A4DF for ; Fri, 14 Jul 2006 05:33:27 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 811FB43D46 for ; Fri, 14 Jul 2006 05:33:27 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E5XRWM035722 for ; Fri, 14 Jul 2006 05:33:27 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E5XRRi035719 for perforce@freebsd.org; Fri, 14 Jul 2006 05:33:27 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 05:33:27 GMT Message-Id: <200607140533.k6E5XRRi035719@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101520 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:33:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=101520 Change 101520 by jb@jb_freebsd2 on 2006/07/14 05:33:07 Fix an integration mishap. Affected files ... .. //depot/projects/dtrace/src/lib/libthr/sys/thr_error.c#5 edit Differences ... ==== //depot/projects/dtrace/src/lib/libthr/sys/thr_error.c#5 (text+ko) ==== @@ -51,7 +51,6 @@ curthread = _get_curthread(); if (curthread != NULL && curthread != _thr_initial) return (&curthread->error); - } else } return (&errno); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:42:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E8BA616A4DF; Fri, 14 Jul 2006 05:42:40 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8CAF516A4DD for ; Fri, 14 Jul 2006 05:42:40 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 447AE43D4C for ; Fri, 14 Jul 2006 05:42:40 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E5geTB036184 for ; Fri, 14 Jul 2006 05:42:40 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E5geJ5036175 for perforce@freebsd.org; Fri, 14 Jul 2006 05:42:40 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 05:42:40 GMT Message-Id: <200607140542.k6E5geJ5036175@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101521 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:42:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=101521 Change 101521 by jb@jb_freebsd2 on 2006/07/14 05:42:03 Fix the MK_ name used to toggle building thread support into libc. Affected files ... .. //depot/projects/dtrace/src/lib/libc/Makefile#6 edit Differences ... ==== //depot/projects/dtrace/src/lib/libc/Makefile#6 (text+ko) ==== @@ -74,7 +74,7 @@ CFLAGS+= -DNS_CACHING .endif -.if ${MK_THREADS_IN_LIBC} != "no" +.if ${MK_LIBC_THREADS} != "no" .include "${.CURDIR}/thread/Makefile.inc" .endif From owner-p4-projects@FreeBSD.ORG Fri Jul 14 05:43:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E9E6D16A4DD; Fri, 14 Jul 2006 05:43:42 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A369F16A4DF for ; Fri, 14 Jul 2006 05:43:42 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1714D43D55 for ; Fri, 14 Jul 2006 05:43:42 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E5hfxZ036234 for ; Fri, 14 Jul 2006 05:43:41 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E5hfOw036231 for perforce@freebsd.org; Fri, 14 Jul 2006 05:43:41 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 05:43:41 GMT Message-Id: <200607140543.k6E5hfOw036231@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101522 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 05:43:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=101522 Change 101522 by imp@imp_lighthouse on 2006/07/14 05:43:35 Newer machines don't assign PCI bus numbers to the cardbus bridges. Cope better with this. # waiting to hear back folks with this problem to see if it solves it. Affected files ... .. //depot/projects/arm/src/sys/dev/pccbb/pccbb_pci.c#7 edit Differences ... ==== //depot/projects/arm/src/sys/dev/pccbb/pccbb_pci.c#7 (text+ko) ==== @@ -302,10 +302,11 @@ { static int curr_bus_number = 2; /* XXX EVILE BAD (see below) */ struct cbb_softc *sc = (struct cbb_softc *)device_get_softc(brdev); + struct sysctl_ctx_list *sctx; + struct sysctl_oid *soid; int rid; device_t parent; - struct sysctl_ctx_list *sctx; - struct sysctl_oid *soid; + uint32_t pribus; parent = device_get_parent(brdev); mtx_init(&sc->mtx, device_get_nameunit(brdev), "cbb", MTX_DEF); @@ -317,7 +318,7 @@ sc->exca[0].pccarddev = NULL; sc->secbus = pci_read_config(brdev, PCIR_SECBUS_2, 1); sc->subbus = pci_read_config(brdev, PCIR_SUBBUS_2, 1); - sc->pribus = pci_read_config(brdev, PCIR_PRIBUS_2, 1); + sc->pribus = pcib_get_bus(parent); SLIST_INIT(&sc->rl); cbb_powerstate_d0(brdev); @@ -359,10 +360,11 @@ * are in an appropriate range. */ DEVPRINTF((brdev, "Secondary bus is %d\n", sc->secbus)); - if (sc->secbus == 0) { + pribus = pci_read_config(brdev, PCIR_PRIBUS_2, 1); + if (sc->secbus == 0 || sc->pribus != pribus) { if (curr_bus_number <= sc->pribus) curr_bus_number = sc->pribus + 1; - if (pci_read_config(brdev, PCIR_PRIBUS_2, 1) != sc->pribus) { + if (pribus != sc->pribus) { DEVPRINTF((brdev, "Setting primary bus to %d\n", sc->pribus)); pci_write_config(brdev, PCIR_PRIBUS_2, sc->pribus, 1); From owner-p4-projects@FreeBSD.ORG Fri Jul 14 07:08:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 295A316A4E1; Fri, 14 Jul 2006 07:08:36 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 059BB16A4DD for ; Fri, 14 Jul 2006 07:08:36 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 942BE43D70 for ; Fri, 14 Jul 2006 07:08:31 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E78VIJ042961 for ; Fri, 14 Jul 2006 07:08:31 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E78Ui7042958 for perforce@freebsd.org; Fri, 14 Jul 2006 07:08:30 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 07:08:30 GMT Message-Id: <200607140708.k6E78Ui7042958@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101527 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 07:08:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=101527 Change 101527 by imp@imp_lighthouse on 2006/07/14 07:08:16 The TSC board has TIOA1 and TIOA2 connected, so wire them up. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#29 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#29 (text+ko) ==== @@ -223,6 +223,11 @@ /* PIOA's B periph: Turn USART 3's TX/RX pins */ at91_pio_use_periph_b(AT91RM92_PIOA_BASE, AT91C_PA6_RXD3, 0); at91_pio_use_periph_b(AT91RM92_PIOA_BASE, AT91C_PA5_TXD3, 1); +#if AT91_TSC + /* We're using TC0's A1 and A2 input */ + at91_pio_use_periph_b(AT91RM92_PIOA_BASE, + AT91C_PA19_TIOA1 | AT91C_PA21_TIOA2, 0); +#endif /* PIOB's A periph: Turn USART 1's TX/RX pins */ at91_pio_use_periph_a(AT91RM92_PIOB_BASE, AT91C_PB21_RXD1, 0); at91_pio_use_periph_a(AT91RM92_PIOB_BASE, AT91C_PB20_TXD1, 1); From owner-p4-projects@FreeBSD.ORG Fri Jul 14 07:11:36 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3AC1A16A4E6; Fri, 14 Jul 2006 07:11:36 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 F026D16A4DF for ; Fri, 14 Jul 2006 07:11:35 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A1D5C43D53 for ; Fri, 14 Jul 2006 07:11:35 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E7BZNM043226 for ; Fri, 14 Jul 2006 07:11:35 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E7BZOb043223 for perforce@freebsd.org; Fri, 14 Jul 2006 07:11:35 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 07:11:35 GMT Message-Id: <200607140711.k6E7BZOb043223@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101528 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 07:11:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=101528 Change 101528 by imp@imp_lighthouse on 2006/07/14 07:10:50 Merge from TSC sources. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_st.c#9 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_st.c#9 (text+ko) ==== @@ -79,7 +79,7 @@ #endif 32768, /* frequency */ "AT91RM9200 timer", /* name */ - 0 /* quality */ + 1000 /* quality */ }; static int From owner-p4-projects@FreeBSD.ORG Fri Jul 14 07:16:43 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9910C16A4E0; Fri, 14 Jul 2006 07:16:43 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 5C12216A4DD for ; Fri, 14 Jul 2006 07:16:43 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 064D043D55 for ; Fri, 14 Jul 2006 07:16:43 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6E7Ggv9043561 for ; Fri, 14 Jul 2006 07:16:42 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6E7GgAE043558 for perforce@freebsd.org; Fri, 14 Jul 2006 07:16:42 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 07:16:42 GMT Message-Id: <200607140716.k6E7GgAE043558@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101529 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 07:16:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=101529 Change 101529 by imp@imp_lighthouse on 2006/07/14 07:15:44 Start to implement a pps driver connected to TC1. This allows us to run ntp with a better refclock. Also use a timecounter for TC1. We can likely enable much of this for non-tsc users too, since it will give us a clock resolution of 133ns in the timing rather than 30517.5ns, which would be 200 times better than the SCK. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_tc.c#6 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_tc.c#6 (text+ko) ==== @@ -30,13 +30,21 @@ #include #include #include +#include +#include +#include #include #include #include #include +#include +#include +#include +#include #include +#include #include -#include +#include #include #include @@ -55,13 +63,23 @@ struct resource *irq_res; /* IRQ resource */ struct at91_tc_softc *sc; bus_size_t offset; +#ifdef AT91_TSC + struct pps_state pps; + struct selinfo selp; + struct cdev *pdev; + struct cdev *cdev; + uint32_t pps_seen; + uint32_t pps_read; + struct task task; + int cnonblock; +#endif }; struct at91_tc_softc { struct resource *mem_res; /* Memory resource */ device_t dev; struct at91_tc_counter tc[MAX_COUNTER]; - struct mtx sc_mtx; /* basically a perimeter lock */ + struct mtx mtx; /* basically a perimeter lock */ struct cdev *cdev; int overflows; }; @@ -75,13 +93,40 @@ #define WR4sc(sc, off, val) \ bus_write_4(sc->mem_res, (off), (val)) -#define AT91_TC_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) -#define AT91_TC_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) -#define AT91_TC_LOCK_INIT(_sc) \ - mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->dev), "tc", MTX_DEF) -#define AT91_TC_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); -#define AT91_TC_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); -#define AT91_TC_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); +#define AT91_TC_ASSERT_LOCKED(_sc) mtx_assert(&_sc->mtx, MA_OWNED); +#define AT91_TC_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->mtx, MA_NOTOWNED); + +#ifdef AT91_TSC +static d_open_t at91_tc_open; +static d_close_t at91_tc_close; +static d_ioctl_t at91_tc_ioctl; + +static d_open_t at91_tc_ctl_open; +static d_close_t at91_tc_ctl_close; +static d_read_t at91_tc_ctl_read; +static d_ioctl_t at91_tc_ctl_ioctl; +static d_poll_t at91_tc_ctl_poll; + +static task_fn_t at91_tc_tq_wakeup; + +static struct cdevsw pps_cdevsw = { + .d_version = D_VERSION, + .d_open = at91_tc_open, + .d_close = at91_tc_close, + .d_ioctl = at91_tc_ioctl, + .d_name = "pps", +}; + +static struct cdevsw pps_ctl_cdevsw = { + .d_version = D_VERSION, + .d_open = at91_tc_ctl_open, + .d_read = at91_tc_ctl_read, + .d_close = at91_tc_ctl_close, + .d_ioctl = at91_tc_ctl_ioctl, + .d_poll = at91_tc_ctl_poll, + .d_name = "pps", +}; +#endif /* helper routines */ static int at91_tc_activate(device_t dev); @@ -103,7 +148,7 @@ static struct timecounter at91_tc_timecounter = { at91_tc_get_timecount, /* get_timecount */ NULL, /* no poll_pps */ - 0xfffffu, /* counter_mask */ + 0xffffu, /* counter_mask */ // 5000000, /* frequency */ 60000000 / 8, /* frequency */ "5MHz", /* name */ @@ -132,7 +177,7 @@ err = at91_tc_activate(dev); if (err) goto out; - AT91_TC_LOCK_INIT(sc); + mtx_init(&sc->mtx, device_get_nameunit(sc->dev), "tc", MTX_DEF); sc->tc[0].offset = TC_TC0_OFFSET; sc->tc[1].offset = TC_TC1_OFFSET; @@ -143,7 +188,6 @@ // On the TSC board, we have 5MHz going into TIOA2. Setup // TC1's XC1 to use this. WR4sc(sc, TC_BMR, TC_BMR_XC1_TIOA2); - printf("BMR: %x\n", RD4sc(sc, TC_BMR)); #endif for (i = 0; i < MAX_COUNTER; i++) at91_tc_counter_init(sc, &sc->tc[i], i); @@ -212,10 +256,10 @@ { #ifdef AT91_TSC int rid; + struct cdev *d; #endif tc->sc = sc; - printf("tc%d offset %x\n", unit, (uint32_t)tc->offset); #ifdef AT91_TSC // Only TC1 is needed. All others are disabled. if (unit != 1 || device_get_unit(sc->dev) != 0) { @@ -226,7 +270,7 @@ #ifdef AT91_TSC } - rid = 0; + rid = unit; tc->irq_res = bus_alloc_resource_any(sc->dev, SYS_RES_IRQ, &rid, RF_ACTIVE); if (tc->irq_res == NULL) @@ -235,45 +279,212 @@ at91_tc_counter_isr, tc, &tc->intrhand) != 0) return; + TASK_INIT(&tc->task, 0, at91_tc_tq_wakeup, tc); + rid = 0; + d = make_dev(&pps_cdevsw, unit, UID_ROOT, GID_WHEEL, 0600, + "pps%d", rid); + d->si_drv1 = tc; + d->si_drv2 = (void *)0; + tc->pdev = d; + tc->pps.ppscap = PPS_CAPTUREASSERT; + pps_init(&tc->pps); + d = make_dev(&pps_ctl_cdevsw, unit, UID_ROOT, GID_WHEEL, 0600, + "pps%d.ctl", rid); + d->si_drv1 = tc; + d->si_drv2 = (void *)1; + tc->cdev = d; + // Setup TC1 into Capture Mode (WAVE=0), clocked by our external - // 5MHz, loading RA on rise and RB on falling edge -// WR4(tc, TC_CMR, TC_CMR_XC1 | TC_CMR_BURST_NONE | TC_CMR_ETRGEDG_NONE | -// TC_CMR_LDRA_RISE | TC_CMR_LDRB_FALL); - WR4(tc, TC_CMR, TC_CMR_TIMER_CLOCK2 | TC_CMR_BURST_NONE | TC_CMR_ETRGEDG_NONE | + // 5MHz, loading RA on rise and RB on falling edge. For some reason, + // we seem to need to enable both of these captures and throw away + // the one we don't need, otherwise neither happens. + WR4(tc, TC_CMR, +#if 0 + TC_CMR_XC1 | +#else + TC_CMR_TIMER_CLOCK2 | +#endif + TC_CMR_BURST_NONE | TC_CMR_ETRGEDG_NONE | TC_CMR_LDRA_RISE | TC_CMR_LDRB_FALL); - printf("CMR: %x\n", RD4(tc, TC_CMR)); WR4(tc, TC_IDR, 0xffffffff); WR4(tc, TC_IER, TC_SR_COVFS | TC_SR_LOVRS | TC_SR_LDRAS | TC_SR_LDRBS); - printf("IMR: %x\n", RD4(tc, TC_IMR)); // Now that we have ISR setup, we can enable clocks and go! WR4(tc, TC_CCR, TC_CCR_SWTRG | TC_CCR_CLKEN); - { - uint32_t last; - last = RD4(tc, TC_CV); - printf("Last is %x and %x SR %x\n", last, RD4(tc, TC_CV), RD4(tc, TC_SR)); +#endif +} + +#ifdef AT91_TSC +static int +at91_tc_open(struct cdev *dev, int flags, int fmt, struct thread *td) +{ + return(0); +} + +static int +at91_tc_close(struct cdev *dev, int flags, int fmt, struct thread *td) +{ + struct at91_tc_counter *tc = dev->si_drv1; + + mtx_lock(&tc->sc->mtx); + tc->pps.ppsparam.mode = 0; /* PHK ??? */ + mtx_unlock(&tc->sc->mtx); + return(0); +} + +static int +at91_tc_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int flags, + struct thread *td) +{ + struct at91_tc_counter *tc = dev->si_drv1; + int err; + + mtx_lock(&tc->sc->mtx); + err = pps_ioctl(cmd, data, &tc->pps); + mtx_unlock(&tc->sc->mtx); + return (err); +} + +static int +at91_tc_ctl_open(struct cdev *dev, int flags, int fmt, struct thread *td) +{ + struct at91_tc_counter *tc = dev->si_drv1; + mtx_lock(&tc->sc->mtx); + if (flags & O_NONBLOCK) + tc->cnonblock = 1; + else + tc->cnonblock = 0; + tc->pps_read = tc->pps_seen; + mtx_unlock(&tc->sc->mtx); + return(0); +} + +static int +at91_tc_ctl_close(struct cdev *dev, int flags, int fmt, struct thread *td) +{ + return(0); +} + +static int +at91_tc_ctl_poll(struct cdev *dev, int events, struct thread *td) +{ + struct at91_tc_counter *tc = dev->si_drv1; + int revents = 0; + + mtx_lock(&tc->sc->mtx); + if (events & (POLLIN | POLLRDNORM)) { + if (tc->pps_seen != tc->pps_read) + revents |= events & (POLLIN | POLLRDNORM); + else + selrecord(td, &tc->selp); } + mtx_unlock(&tc->sc->mtx); + + return (revents); +} + +static int +at91_tc_ctl_ioctl(struct cdev *dev, u_long cmd, caddr_t arg, int flags, + struct thread *td) +{ + struct at91_tc_counter *tc = dev->si_drv1; + + mtx_lock(&tc->sc->mtx); + switch (cmd) { + case FIONBIO: + if (*(int*)arg) + tc->cnonblock = 1; + else + tc->cnonblock = 0; + break; + +#if 0 + case TSCPPSIOC_FLUSH: + tc->pps_read = tc->pps_seen; + break; + + case TSCPPSIOC_GET_COUNT: + *(int *)arg = tc->pps_seen; + break; #endif + + default: + mtx_unlock(&tc->sc->mtx); + return (ENOTTY); + } + mtx_unlock(&tc->sc->mtx); + return (0); +} + +static int +at91_tc_ctl_read(struct cdev *dev, struct uio *uio, int ioflag) +{ + struct at91_tc_counter *tc = dev->si_drv1; + uint8_t val; + int err = 0; + + mtx_lock(&tc->sc->mtx); + while (err == 0) { + if (tc->pps_seen != tc->pps_read) { + tc->pps_read++; + mtx_unlock(&tc->sc->mtx); + val = 'p'; + return (uiomove(&val, 1, uio)); + } + if (tc->cnonblock) { + mtx_unlock(&tc->sc->mtx); + return EWOULDBLOCK; + } + err = msleep(tc, &tc->sc->mtx, PZERO, "ctlread", 0); + } + mtx_unlock(&tc->sc->mtx); + return (err); +} + +static void +at91_tc_tq_wakeup(void *arg, int pending) +{ + struct at91_tc_counter *tc = (struct at91_tc_counter *)arg; + + /* + * pps_even modifies ppsinfo. This is also accessed and modified + * by the ioctl routines, so we need an interlock. We use the same + * interlock to proect pps_seen. The read code interlocks against + * this. Given the low data rate for this driver (pps), contention + * is not a consideration. + */ + mtx_lock(&tc->sc->mtx); + pps_event(&tc->pps, PPS_CAPTUREASSERT); + + /* + * create a PPS event so that the ctl driver can return it via the + * read channel. + */ + tc->pps_seen++; + mtx_unlock(&tc->sc->mtx); + selwakeup(&tc->selp); + wakeup(tc); } -#ifdef AT91_TSC static void at91_tc_counter_isr(void *argp) { struct at91_tc_counter *tc = argp; - uint32_t status; + uint32_t status, r; -printf("Howdy!\n"); status = RD4(tc, TC_SR); - if (status & TC_SR_COVFS) { + if (status & TC_SR_COVFS) tc->sc->overflows++; - } if (status & TC_SR_LOVRS) printf("Didn't read RA or RB in time\n"); - if (status & TC_SR_LDRAS) - printf("RA loaded at 0x%x\n", RD4(tc, TC_RA) & 0xffff); + if (status & TC_SR_LDRAS) { + r = RD4(tc, TC_RA) & 0xffff; + pps_capture(&tc->pps); + tc->pps.capcount = r; + taskqueue_enqueue_fast(taskqueue_swi, &tc->task); + } if (status & TC_SR_LDRBS) - printf("RB loaded at 0x%x\n", RD4(tc, TC_RB) & 0xffff); + RD4(tc, TC_RB); } #endif From owner-p4-projects@FreeBSD.ORG Fri Jul 14 07:50:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C796B16A4E6; Fri, 14 Jul 2006 07:50:07 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8C30716A4DE; Fri, 14 Jul 2006 07:50:07 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe01.swip.net [212.247.154.1]) by mx1.FreeBSD.org (Postfix) with ESMTP id B449543D49; Fri, 14 Jul 2006 07:50:06 +0000 (GMT) (envelope-from hselasky@c2i.net) X-T2-Posting-ID: gvlK0tOCzrqh9CPROFOFPw== X-Cloudmark-Score: 0.000000 [] Received: from [193.217.134.164] (HELO [10.0.0.249]) by mailfe01.swip.net (CommuniGate Pro SMTP 5.0.8) with ESMTP id 214322305; Fri, 14 Jul 2006 09:50:04 +0200 From: Hans Petter Selasky To: Scott Long Date: Fri, 14 Jul 2006 09:50:11 +0200 User-Agent: KMail/1.7 References: <200607140311.k6E3BGUv013408@repoman.freebsd.org> In-Reply-To: <200607140311.k6E3BGUv013408@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607140950.12582.hselasky@c2i.net> Cc: Perforce Change Reviews Subject: Re: PERFORCE change 101501 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 07:50:08 -0000 On Friday 14 July 2006 05:11, Scott Long wrote: > http://perforce.freebsd.org/chv.cgi?CH=101501 > > Change 101501 by scottl@scottl-x64 on 2006/07/14 03:10:59 > > Re-allow anonymous CCB's. > > Affected files ... > > .. //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#41 edit > .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_low.c#9 edit > > Differences ... > > ==== //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#41 (text+ko) > ==== > > @@ -4981,9 +4981,11 @@ > union ccb *new_ccb; > > new_ccb = malloc(sizeof(*new_ccb), M_CAMXPT, M_WAITOK); > - callout_handle_init(&new_ccb->ccb_h.timeout_ch); > - callout_init(&new_ccb->ccb_h.callout, > - (sim->flags & CAM_SIM_MPSAFE) ? 1 : 0); > + if (sim != NULL) { > + callout_handle_init(&new_ccb->ccb_h.timeout_ch); > + callout_init(&new_ccb->ccb_h.callout, > + (sim->flags & CAM_SIM_MPSAFE) ? 1 : 0); > + } > return (new_ccb); > } > Shouldn't you use "callout_init_mtx()", when dropping Giant, to avoid timout after timeout stop situations ? --HPS From owner-p4-projects@FreeBSD.ORG Fri Jul 14 10:04:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B718E16A4E0; Fri, 14 Jul 2006 10:04:41 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 7D6EC16A4DD for ; Fri, 14 Jul 2006 10:04:41 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4709643D46 for ; Fri, 14 Jul 2006 10:04:41 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EA4f0E062043 for ; Fri, 14 Jul 2006 10:04:41 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EA4eoL062040 for perforce@freebsd.org; Fri, 14 Jul 2006 10:04:40 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 10:04:40 GMT Message-Id: <200607141004.k6EA4eoL062040@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101533 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 10:04:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=101533 Change 101533 by jb@jb_freebsd2 on 2006/07/14 10:04:38 Comment out KSE-specific code in the new syscalls. Sigh. Affected files ... .. //depot/projects/dtrace/src/sys/kern/kern_thr.c#7 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/kern_thr.c#7 (text+ko) ==== @@ -449,6 +449,7 @@ int thr_setscheduler(struct thread *td, struct thr_setscheduler_args *uap) { +#ifdef DOODAD struct proc *p; struct thread *ttd; struct rtprio rtp; @@ -505,11 +506,15 @@ mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); return (ret); +#else + return(0); +#endif } int thr_getscheduler(struct thread *td, struct thr_getscheduler_args *uap) { +#ifdef DOODAD struct proc *p; struct thread *ttd; struct rtprio rtp; @@ -550,11 +555,15 @@ if (ret == 0) ret = copyout(¶m, uap->param, sizeof(param)); return (ret); +#else + return (0); +#endif } int thr_setschedparam(struct thread *td, struct thr_setschedparam_args *uap) { +#ifdef DOODAD struct proc *p; struct thread *ttd; struct rtprio rtp; @@ -595,4 +604,7 @@ mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); return (ret); +#else + return (0); +#endif } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 10:07:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 620D316A4E9; Fri, 14 Jul 2006 10:07:46 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 2647D16A4E7 for ; Fri, 14 Jul 2006 10:07:46 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E369843D45 for ; Fri, 14 Jul 2006 10:07:45 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EA7jQv062224 for ; Fri, 14 Jul 2006 10:07:45 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EA7js7062221 for perforce@freebsd.org; Fri, 14 Jul 2006 10:07:45 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 10:07:45 GMT Message-Id: <200607141007.k6EA7js7062221@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101535 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 10:07:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=101535 Change 101535 by jb@jb_freebsd2 on 2006/07/14 10:06:59 Fix typos. Affected files ... .. //depot/projects/dtrace/src/sbin/ggate/ggatec/Makefile#4 edit .. //depot/projects/dtrace/src/sbin/ggate/ggated/Makefile#4 edit Differences ... ==== //depot/projects/dtrace/src/sbin/ggate/ggatec/Makefile#4 (text+ko) ==== @@ -14,7 +14,7 @@ DPADD= ${LIBGEOM} ${LIBSBUF} ${LIBBSDXML} ${LIBUTIL} LDADD= -lgeom -lsbuf -lbsdxml -lutil -.if ${MK_LIB_THREADS} == "no" +.if ${MK_LIBC_THREADS} == "no" DPADD+= ${LIBPTHREAD} LDADD+= -lpthread .endif ==== //depot/projects/dtrace/src/sbin/ggate/ggated/Makefile#4 (text+ko) ==== @@ -8,7 +8,7 @@ MAN= ggated.8 SRCS= ggated.c ggate.c -.if ${MK_LIB_THREADS} == "no" +.if ${MK_LIBC_THREADS} == "no" DPADD= ${LIBPTHREAD} LDADD= -lpthread .endif From owner-p4-projects@FreeBSD.ORG Fri Jul 14 10:24:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 65ADF16A4DF; Fri, 14 Jul 2006 10:24:07 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 29E2916A4DD for ; Fri, 14 Jul 2006 10:24:07 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E688C43D53 for ; Fri, 14 Jul 2006 10:24:06 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EAO6og062936 for ; Fri, 14 Jul 2006 10:24:06 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EAO6ZG062933 for perforce@freebsd.org; Fri, 14 Jul 2006 10:24:06 GMT (envelope-from gabor@FreeBSD.org) Date: Fri, 14 Jul 2006 10:24:06 GMT Message-Id: <200607141024.k6EAO6ZG062933@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101537 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 10:24:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=101537 Change 101537 by gabor@gabor_spitfire on 2006/07/14 10:24:01 Add DATADIR to the list of DESTDIR-compliant variables as well. Affected files ... .. //depot/projects/soc2006/gabor_docs/porters-handbook/book.sgml#4 edit Differences ... ==== //depot/projects/soc2006/gabor_docs/porters-handbook/book.sgml#4 (text+ko) ==== @@ -6859,8 +6859,9 @@ For writing DESTDIR-compliant ports, note that LOCALBASE, LINUXBASE, X11BASE, DOCSDIR, - EXAMPLESDIR, DESKTOPDIR - variables already contain DESTDIR, so + EXAMPLESDIR, DATADIR, + DESKTOPDIR variables already contain + DESTDIR, so DESTDIR/LOCALBASE is definitely wrong, but you can use LOCALBASE_REL if you need a variable relative to DESTDIR. From owner-p4-projects@FreeBSD.ORG Fri Jul 14 11:10:05 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E631416A4E1; Fri, 14 Jul 2006 11:10:04 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 9072B16A4DE for ; Fri, 14 Jul 2006 11:10:04 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1523C43D4C for ; Fri, 14 Jul 2006 11:10:04 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EBA3fH070455 for ; Fri, 14 Jul 2006 11:10:03 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EBA3u2070452 for perforce@freebsd.org; Fri, 14 Jul 2006 11:10:03 GMT (envelope-from piso@freebsd.org) Date: Fri, 14 Jul 2006 11:10:03 GMT Message-Id: <200607141110.k6EBA3u2070452@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101538 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 11:10:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=101538 Change 101538 by piso@piso_newluxor on 2006/07/14 11:09:25 Convert em to use system's interrupt filter framework instead of private taskqueue. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/em/if_em.c#6 edit .. //depot/projects/soc2006/intr_filter/dev/em/if_em.h#2 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/em/if_em.c#6 (text+ko) ==== @@ -260,7 +260,7 @@ static int em_intr_fast(void *); static void em_add_int_process_limit(struct em_softc *, const char *, const char *, int *, int); -static void em_handle_rxtx(void *context, int pending); +static void em_handle_rxtx(void *context); static void em_handle_link(void *context, int pending); #endif @@ -1170,7 +1170,7 @@ } static void -em_handle_rxtx(void *context, int pending) +em_handle_rxtx(void *context) { struct em_softc *sc = context; struct ifnet *ifp; @@ -1183,8 +1183,7 @@ * It should be possible to run the tx clean loop without the lock. */ if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - if (em_rxeof(sc, sc->rx_process_limit) != 0) - taskqueue_enqueue(sc->tq, &sc->rxtx_task); + em_rxeof(sc, sc->rx_process_limit); EM_LOCK(sc); em_txeof(sc); @@ -1215,11 +1214,11 @@ /* Hot eject? */ if (reg_icr == 0xffffffff) - return(FILTER_STRAY); + return (FILTER_STRAY); /* Definitely not our interrupt. */ if (reg_icr == 0x0) - return(FILTER_STRAY); + return (FILTER_STRAY); /* * Starting with the 82571 chip, bit 31 should be used to @@ -1227,7 +1226,7 @@ */ if (sc->hw.mac_type >= em_82571 && (reg_icr & E1000_ICR_INT_ASSERTED) == 0) - return(FILTER_STRAY); + return (FILTER_STRAY); /* * Mask interrupts until the taskqueue is finished running. This is @@ -1235,7 +1234,6 @@ * MSI message reordering errata on certain systems. */ em_disable_intr(sc); - taskqueue_enqueue(sc->tq, &sc->rxtx_task); /* Link status change */ if (reg_icr & (E1000_ICR_RXSEQ | E1000_ICR_LSC)) @@ -1243,7 +1241,7 @@ if (reg_icr & E1000_ICR_RXO) sc->rx_overruns++; - return(FILTER_HANDLED); + return (FILTER_HANDLED | FILTER_SCHEDULE_THREAD); } #endif /* ! DEVICE_POLLING */ @@ -1986,19 +1984,12 @@ * Try allocating a fast interrupt and the associated deferred * processing contexts. */ - TASK_INIT(&sc->rxtx_task, 0, em_handle_rxtx, sc); TASK_INIT(&sc->link_task, 0, em_handle_link, sc); - sc->tq = taskqueue_create_fast("em_taskq", M_NOWAIT, - taskqueue_thread_enqueue, &sc->tq); - taskqueue_start_threads(&sc->tq, 1, PI_NET, "%s taskq", - device_get_nameunit(sc->dev)); if ((error = bus_setup_intr(dev, sc->res_interrupt, - INTR_TYPE_NET | INTR_FAST, em_intr_fast, NULL, sc, + INTR_TYPE_NET | INTR_FAST, em_intr_fast, em_handle_rxtx, sc, &sc->int_handler_tag)) != 0) { device_printf(dev, "Failed to register fast interrupt " "handler: %d\n", error); - taskqueue_free(sc->tq); - sc->tq = NULL; return (error); } #endif @@ -2016,12 +2007,7 @@ bus_teardown_intr(dev, sc->res_interrupt, sc->int_handler_tag); sc->int_handler_tag = NULL; } - if (sc->tq != NULL) { - taskqueue_drain(sc->tq, &sc->rxtx_task); - taskqueue_drain(taskqueue_fast, &sc->link_task); - taskqueue_free(sc->tq); - sc->tq = NULL; - } + taskqueue_drain(taskqueue_fast, &sc->link_task); } static void ==== //depot/projects/soc2006/intr_filter/dev/em/if_em.h#2 (text+ko) ==== @@ -262,8 +262,6 @@ struct mtx mtx; int em_insert_vlan_header; struct task link_task; - struct task rxtx_task; - struct taskqueue *tq; /* private task queue */ /* Info about the board itself */ uint32_t part_num; From owner-p4-projects@FreeBSD.ORG Fri Jul 14 11:36:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C134216A4E2; Fri, 14 Jul 2006 11:36:37 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 9BD0C16A4DA for ; Fri, 14 Jul 2006 11:36:37 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2FB0243D46 for ; Fri, 14 Jul 2006 11:36:37 +0000 (GMT) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EBabIE071767 for ; Fri, 14 Jul 2006 11:36:37 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EBabZX071764 for perforce@freebsd.org; Fri, 14 Jul 2006 11:36:37 GMT (envelope-from piso@freebsd.org) Date: Fri, 14 Jul 2006 11:36:37 GMT Message-Id: <200607141136.k6EBabZX071764@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 101539 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 11:36:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=101539 Change 101539 by piso@piso_newluxor on 2006/07/14 11:36:18 We don't need to mask the irq, just eoi it. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/bfe/if_bfe.c#4 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/bfe/if_bfe.c#4 (text+ko) ==== @@ -1216,7 +1216,7 @@ CSR_WRITE_4(sc, BFE_IMASK, 0); CSR_READ_4(sc, BFE_IMASK); - return (FILTER_SCHEDULE_THREAD); + return (FILTER_HANDLED | FILTER_SCHEDULE_THREAD); } static void From owner-p4-projects@FreeBSD.ORG Fri Jul 14 12:04:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD10416A4E5; Fri, 14 Jul 2006 12:04:14 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8A06316A4E1 for ; Fri, 14 Jul 2006 12:04:14 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E6F3D43D53 for ; Fri, 14 Jul 2006 12:04:11 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EC4BHH076729 for ; Fri, 14 Jul 2006 12:04:11 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EC4BaO076726 for perforce@freebsd.org; Fri, 14 Jul 2006 12:04:11 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 12:04:11 GMT Message-Id: <200607141204.k6EC4BaO076726@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101540 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 12:04:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101540 Change 101540 by bms@bms_montagne on 2006/07/14 12:03:42 Add first cut userland compiler flags. Add the use of the cpu keyword to kernel configuration files. Add cpu compile-time flags CPU_MIPS32 and CPU_MIPS64. Add explicit ARCH_FLAGS for the compiler to kernel configuration files. There is currently no cleaner way of doing this. Add explicit makeoptions for MIPS_LITTLE_ENDIAN which causes Makefile.mips to use the -EL flag for generating little endian code. Update the config(5) man page. Remove -mno-abicalls from kern.mk as it belongs in Makefile.mips, where it exists as -fno-pic. Affected files ... .. //depot/projects/mips2/src/share/mk/bsd.cpu.mk#2 edit .. //depot/projects/mips2/src/sys/conf/Makefile.mips#7 edit .. //depot/projects/mips2/src/sys/conf/kern.mk#6 edit .. //depot/projects/mips2/src/sys/conf/options.mips#2 edit .. //depot/projects/mips2/src/sys/mips/conf/MALTA#2 edit .. //depot/projects/mips2/src/sys/mips/conf/QEMU#5 edit .. //depot/projects/mips2/src/usr.sbin/config/config.5#2 edit Differences ... ==== //depot/projects/mips2/src/share/mk/bsd.cpu.mk#2 (text+ko) ==== @@ -18,6 +18,8 @@ . elif ${MACHINE_ARCH} == "sparc64" . elif ${MACHINE_ARCH} == "arm" MACHINE_CPU = arm +. elif ${MACHINE_ARCH} == "mips" +MACHINE_CPU = mips . endif .else @@ -112,6 +114,14 @@ . else _CPUCFLAGS = -mcpu=${CPUTYPE} . endif +. elif ${MACHINE_ARCH} == "mips" +. if ${CPUTYPE} == "mips32" +_CPUCFLAGS = -march=mips32 +. elif ${CPUTYPE} == "mips64" +_CPUCFLAGS = -march=mips64 +. elif ${CPUTYPE} == "mipsr4kc" +_CPUCFLAGS = -march=r4kc +. endif . endif # Set up the list of CPU features based on the CPU type. This is an ==== //depot/projects/mips2/src/sys/conf/Makefile.mips#7 (text+ko) ==== @@ -28,19 +28,15 @@ .endif .include "$S/conf/kern.pre.mk" +# XXX: Such sweeping assumptions... MACHINE=mips MACHINE_ARCH=mips MKMODULESENV+= MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE_ARCH} -# -# XXXMIPS: Without it, you'll be bombed by warnings. -# -ARCH_FLAGS=-march=mips32 -CFLAGS+=-fno-pic $(ARCH_FLAGS) -SYSTEM_LD+= -Ttext 0x80100000 -HACK_EXTRA_FLAGS+=-fno-pic $(ARCH_FLAGS) -ASM_FLAGS+=${CFLAGS} -D_LOCORE -DLOCORE +# We default to the MIPS32 ISA, if none specified in the +# kernel configuration file. +ARCH_FLAGS?=-march=mips32 .if defined(MIPS_LITTLE_ENDIAN) CFLAGS+=-EL @@ -48,6 +44,15 @@ HACK_EXTRA_FLAGS+=-EL -Wl,-EL .endif +# We add the -fno-pic flag to kernels because otherwise performance +# is extremely poor. (XXX: Can replace with -mno-abicalls). +CFLAGS+=-fno-pic $(ARCH_FLAGS) +HACK_EXTRA_FLAGS+=-fno-pic $(ARCH_FLAGS) + +# XXX hardcoded kernel entry point +SYSTEM_LD+= -Ttext 0x80100000 +ASM_FLAGS+=${CFLAGS} -D_LOCORE -DLOCORE + %BEFORE_DEPEND %OBJS ==== //depot/projects/mips2/src/sys/conf/kern.mk#6 (text+ko) ==== @@ -83,12 +83,9 @@ # # For MIPS we also tell gcc to use floating point emulation. -# We also force a non-PIC kernel to be built (-mno-abicalls). # .if ${MACHINE_ARCH} == "mips" -CFLAGS+= -msoft-float -mno-abicalls -# XXX for debugging the build -#CFLAGS+= -save-temps +CFLAGS+= -msoft-float INLINE_LIMIT?= 15000 .endif ==== //depot/projects/mips2/src/sys/conf/options.mips#2 (text+ko) ==== @@ -1,6 +1,8 @@ # $FreeBSD$ CPU_MIPS4KC opt_global.h +CPU_MIPS32 opt_global.h +CPU_MIPS64 opt_global.h KERNPHYSADDR opt_global.h KERNVIRTADDR opt_global.h PHYSADDR opt_global.h ==== //depot/projects/mips2/src/sys/mips/conf/MALTA#2 (text+ko) ==== @@ -18,8 +18,11 @@ # $FreeBSD$ machine mips +cpu CPU_R4KC ident MALTA +makeoptions ARCH_FLAGS=-march=r4kc + # Don't build any modules yet. makeoptions MODULES_OVERRIDE="" ==== //depot/projects/mips2/src/sys/mips/conf/QEMU#5 (text+ko) ==== @@ -18,8 +18,13 @@ # $FreeBSD$ machine mips +cpu CPU_MIPS32 ident QEMU +# XXX: These two options must be defined in MIPS kernel configs. +makeoptions MIPS_LITTLE_ENDIAN=defined +makeoptions ARCH_FLAGS=-march=mips32 + # Don't build any modules yet. makeoptions MODULES_OVERRIDE="" ==== //depot/projects/mips2/src/usr.sbin/config/config.5#2 (text+ko) ==== @@ -23,7 +23,7 @@ .\" .\" $FreeBSD: src/usr.sbin/config/config.5,v 1.9 2006/02/12 07:56:11 jkoshy Exp $ .\" -.Dd December 3, 2005 +.Dd July 14, 2006 .Dt CONFIG 5 .Os .Sh NAME @@ -180,6 +180,8 @@ The Intel x86 based PC architecture. .It Cm ia64 The Intel IA64 architecture. +.It Cm mips +The MIPS architecture. .It Cm pc98 The PC98 architecture. .It Cm powerpc From owner-p4-projects@FreeBSD.ORG Fri Jul 14 12:27:41 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C885016A4E0; Fri, 14 Jul 2006 12:27:41 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A4ADC16A4DE for ; Fri, 14 Jul 2006 12:27:41 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 59B3143D45 for ; Fri, 14 Jul 2006 12:27:41 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ECRfpm077754 for ; Fri, 14 Jul 2006 12:27:41 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ECRfgL077751 for perforce@freebsd.org; Fri, 14 Jul 2006 12:27:41 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 12:27:41 GMT Message-Id: <200607141227.k6ECRfgL077751@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101541 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 12:27:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=101541 Change 101541 by bms@bms_montagne on 2006/07/14 12:27:35 Typo Affected files ... .. //depot/projects/mips2/src/sys/mips/conf/MALTA#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/conf/MALTA#3 (text+ko) ==== @@ -18,7 +18,7 @@ # $FreeBSD$ machine mips -cpu CPU_R4KC +cpu CPU_MIPS4KC ident MALTA makeoptions ARCH_FLAGS=-march=r4kc From owner-p4-projects@FreeBSD.ORG Fri Jul 14 12:37:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B4B3C16A4E1; Fri, 14 Jul 2006 12:37:54 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 78C0316A4E6 for ; Fri, 14 Jul 2006 12:37:54 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2E70F43D46 for ; Fri, 14 Jul 2006 12:37:54 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ECbsX0078181 for ; Fri, 14 Jul 2006 12:37:54 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ECbrHE078178 for perforce@freebsd.org; Fri, 14 Jul 2006 12:37:53 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 12:37:53 GMT Message-Id: <200607141237.k6ECbrHE078178@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101542 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 12:37:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=101542 Change 101542 by bms@bms_montagne on 2006/07/14 12:37:17 Add libkvm stubs for mips. Affected files ... .. //depot/projects/mips2/src/lib/libkvm/kvm_mips.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jul 14 12:49:09 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4BBF716A4DE; Fri, 14 Jul 2006 12:49:09 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 F081A16A4DA for ; Fri, 14 Jul 2006 12:49:08 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A726943D53 for ; Fri, 14 Jul 2006 12:49:08 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ECn8Nh086375 for ; Fri, 14 Jul 2006 12:49:08 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ECn8SR086372 for perforce@freebsd.org; Fri, 14 Jul 2006 12:49:08 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 12:49:08 GMT Message-Id: <200607141249.k6ECn8SR086372@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101543 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 12:49:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=101543 Change 101543 by bms@bms_montagne on 2006/07/14 12:48:13 MALTA is little endian. Affected files ... .. //depot/projects/mips2/src/sys/mips/conf/MALTA#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/conf/MALTA#4 (text+ko) ==== @@ -22,6 +22,7 @@ ident MALTA makeoptions ARCH_FLAGS=-march=r4kc +makeoptions MIPS_LITTLE_ENDIAN=defined # Don't build any modules yet. makeoptions MODULES_OVERRIDE="" From owner-p4-projects@FreeBSD.ORG Fri Jul 14 13:03:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0E55316A4DF; Fri, 14 Jul 2006 13:03:29 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C453516A4E2 for ; Fri, 14 Jul 2006 13:03:28 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0A20043D49 for ; Fri, 14 Jul 2006 13:03:27 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ED3Qgh088604 for ; Fri, 14 Jul 2006 13:03:26 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ED3QKE088601 for perforce@freebsd.org; Fri, 14 Jul 2006 13:03:26 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 13:03:26 GMT Message-Id: <200607141303.k6ED3QKE088601@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101544 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 13:03:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101544 Change 101544 by bms@bms_montagne on 2006/07/14 13:02:33 Lost in the mists of time: the soft-reset bit. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cpuregs.h#4 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cpuregs.h#4 (text+ko) ==== @@ -232,7 +232,7 @@ #define MIPS_SR_INT_IE 0x00010001 /* XXX */ #endif -#define MIPS_SR_SOFT_RESET MIPS3_SR_SOFT_RESET +#define MIPS_SR_SOFT_RESET MIPS3_SR_SR #define MIPS_SR_DIAG_CH MIPS3_SR_DIAG_CH #define MIPS_SR_DIAG_CE MIPS3_SR_DIAG_CE #define MIPS_SR_DIAG_PE MIPS3_SR_DIAG_PE From owner-p4-projects@FreeBSD.ORG Fri Jul 14 13:20:50 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 28C9116A4E0; Fri, 14 Jul 2006 13:20:50 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 045C416A4DE for ; Fri, 14 Jul 2006 13:20:50 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BEA2643D49 for ; Fri, 14 Jul 2006 13:20:49 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EDKnK8089452 for ; Fri, 14 Jul 2006 13:20:49 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EDKnTk089449 for perforce@freebsd.org; Fri, 14 Jul 2006 13:20:49 GMT (envelope-from gabor@FreeBSD.org) Date: Fri, 14 Jul 2006 13:20:49 GMT Message-Id: <200607141320.k6EDKnTk089449@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101545 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 13:20:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=101545 Change 101545 by gabor@gabor_spitfire on 2006/07/14 13:20:45 Fix typos, a comma has to be before which. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#24 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#24 (text+ko) ==== @@ -3958,18 +3958,18 @@ ${ECHO_MSG} "===> SECURITY REPORT: "; \ fi; \ if [ -s ${WRKDIR}/.PLIST.setuid ] ; then \ - ${ECHO_MSG} " This port has installed the following binaries which execute with"; \ + ${ECHO_MSG} " This port has installed the following binaries, which execute with"; \ ${ECHO_MSG} " increased privileges."; \ ${CAT} ${WRKDIR}/.PLIST.setuid; \ ${ECHO_MSG}; \ fi; \ if [ -s ${WRKDIR}/.PLIST.network ] ; then \ - ${ECHO_MSG} " This port has installed the following files which may act as network"; \ + ${ECHO_MSG} " This port has installed the following files, which may act as network"; \ ${ECHO_MSG} " servers and may therefore pose a remote security risk to the system."; \ ${CAT} ${WRKDIR}/.PLIST.network; \ ${ECHO_MSG}; \ if [ -s ${WRKDIR}/.PLIST.startup ] ; then \ - ${ECHO_MSG} " This port has installed the following startup scripts which may cause"; \ + ${ECHO_MSG} " This port has installed the following startup scripts, which may cause"; \ ${ECHO_MSG} " these network services to be started at boot time."; \ ${SED} s,^,${PREFIX}/, < ${WRKDIR}/.PLIST.startup; \ ${ECHO_MSG}; \ From owner-p4-projects@FreeBSD.ORG Fri Jul 14 13:33:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0A78416A4DE; Fri, 14 Jul 2006 13:33:07 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 C245816A4DA for ; Fri, 14 Jul 2006 13:33:06 +0000 (UTC) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EA1EF43D5F for ; Fri, 14 Jul 2006 13:33:05 +0000 (GMT) (envelope-from howardsu@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EDX5E5089945 for ; Fri, 14 Jul 2006 13:33:05 GMT (envelope-from howardsu@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EDX5on089942 for perforce@freebsd.org; Fri, 14 Jul 2006 13:33:05 GMT (envelope-from howardsu@FreeBSD.org) Date: Fri, 14 Jul 2006 13:33:05 GMT Message-Id: <200607141333.k6EDX5on089942@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to howardsu@FreeBSD.org using -f From: Howard Su To: Perforce Change Reviews Cc: Subject: PERFORCE change 101546 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 13:33:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=101546 Change 101546 by howardsu@su_laptop on 2006/07/14 13:32:18 Fix SDT bugs. kldload/unload SDT provider works now. Affected files ... .. //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt.c#6 edit .. //depot/projects/dtrace/src/sys/i386/i386/elf_machdep.c#5 edit .. //depot/projects/dtrace/src/sys/sys/kernel.h#7 edit Differences ... ==== //depot/projects/dtrace/src/sys/cddl/dev/sdt/sdt.c#6 (text+ko) ==== @@ -1,4 +1,3 @@ - /* * CDDL HEADER START * @@ -94,7 +93,7 @@ sdt_disable, sdt_suspend, sdt_resume, - NULL, + sdt_getargdesc, NULL, NULL, sdt_destroy @@ -141,9 +140,8 @@ } static int -sdt_provide_module_function(linker_file_t lf, linker_symval_t *symval, void *opaque) +sdt_create_module_probes(linker_file_t lf, char *modname) { - char *modname = opaque; sdt_probedesc_t *sdpd; sdt_probe_t *sdp, *old; sdt_provider_t *prov; @@ -162,77 +160,74 @@ return (0); for (; sdpd != NULL; sdpd = sdpd->sdpd_next) { - char *name = sdpd->sdpd_name, *func, *nname; + char *name = sdpd->sdpd_name, *nname; int i, j; sdt_provider_t *prov; dtrace_id_t id; for (prov = sdt_providers; prov->sdtp_prefix != NULL; prov++) { - char *prefix = prov->sdtp_prefix; + char *prefix = prov->sdtp_prefix; - if (strncmp(name, prefix, strlen(prefix)) == 0) { - name += strlen(prefix); - break; + if (strncmp(name, prefix, strlen(prefix)) == 0) { + name += strlen(prefix); + break; + } } - } + + while (*name != '\0') { + if (*name <= '9' && *name>='0') + name++; + else + break; + } + + nname = malloc(len = strlen(name) + 1, M_SDT, M_WAITOK); - nname = malloc(len = strlen(name) + 1, M_SDT, M_WAITOK); + for (i = 0, j = 0; name[j] != '\0'; i++) { + if (name[j] == '_' && name[j + 1] == '_') { + nname[i] = '-'; + j += 2; + } else { + nname[i] = name[j++]; + } + } - for (i = 0, j = 0; name[j] != '\0'; i++) { - if (name[j] == '_' && name[j + 1] == '_') { - nname[i] = '-'; - j += 2; - } else { - nname[i] = name[j++]; - } - } + nname[i] = '\0'; - nname[i] = '\0'; + sdp = malloc(sizeof (sdt_probe_t), M_SDT, M_WAITOK | M_ZERO); + sdp->sdp_loadcnt = lf->loadcnt; + sdp->sdp_ctl = lf; + sdp->sdp_name = nname; + sdp->sdp_namelen = len; + sdp->sdp_provider = prov; - sdp = malloc(sizeof (sdt_probe_t), M_SDT, M_WAITOK | M_ZERO); - sdp->sdp_loadcnt = lf->loadcnt; - sdp->sdp_ctl = lf; - sdp->sdp_name = nname; - sdp->sdp_namelen = len; - sdp->sdp_provider = prov; - - if (symval->name == NULL) - func = ""; - else { - /* HACK: we need change prototype of _probe_lookup */ - func = malloc(strlen(symval->name) + 1, M_SDT, M_WAITOK); - strcpy(func, symval->name); - } - - /* - * We have our provider. Now create the probe. - */ - if ((id = dtrace_probe_lookup(prov->sdtp_id, modname, - func, nname)) != DTRACE_IDNONE) { - old = dtrace_probe_arg(prov->sdtp_id, id); - ASSERT(old != NULL); + /* + * We have our provider. Now create the probe. + */ + if ((id = dtrace_probe_lookup(prov->sdtp_id, modname, + NULL, nname)) != DTRACE_IDNONE) { + old = dtrace_probe_arg(prov->sdtp_id, id); + ASSERT(old != NULL); - sdp->sdp_next = old->sdp_next; - sdp->sdp_id = id; - old->sdp_next = sdp; - } else { - sdp->sdp_id = dtrace_probe_create(prov->sdtp_id, - modname, func, nname, 3, sdp); + sdp->sdp_next = old->sdp_next; + sdp->sdp_id = id; + old->sdp_next = sdp; + } else { + sdp->sdp_id = dtrace_probe_create(prov->sdtp_id, + modname, NULL, nname, 3, sdp); - lf->sdt_nprobes++; - } + lf->sdt_nprobes++; + } - sdp->sdp_hashnext = - sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)]; - sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)] = sdp; + sdp->sdp_hashnext = + sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)]; + sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)] = sdp; - sdp->sdp_patchval = SDT_PATCHVAL; - sdp->sdp_patchpoint = (uint8_t *)sdpd->sdpd_offset; - sdp->sdp_savedval = *sdp->sdp_patchpoint; - if (symval->name != NULL) - free(func, M_SDT); + sdp->sdp_patchval = SDT_PATCHVAL; + sdp->sdp_patchpoint = (uint8_t *)sdpd->sdpd_offset; + sdp->sdp_savedval = *sdp->sdp_patchpoint; } - return (0); + return (0); } /*ARGSUSED*/ @@ -246,11 +241,8 @@ len = strlen(modname); if (len > 3 && strcmp(modname + len - 3, ".ko") == 0) modname[len - 3] = '\0'; - - /* - * List the functions in the module and the symbol values. - */ - linker_file_function_listall(lf, sdt_provide_module_function, modname); + + sdt_create_module_probes(lf, modname); } /* ARGSUSED */ @@ -258,14 +250,13 @@ sdt_destroy(void *arg, dtrace_id_t id, void *parg) { sdt_probe_t *sdt = parg, *next, *hash, *last; - modctl_t *ctl; + modctl_t *ctl = sdt->sdp_ctl; int ndx; + if (ctl->loadcnt == sdt->sdp_loadcnt) + ctl->sdt_nprobes--; + do { - ctl = sdt->sdp_ctl; - - ctl->sdt_nentries--; - /* * Now we need to remove this probe from the sdt_probetab. */ ==== //depot/projects/dtrace/src/sys/i386/i386/elf_machdep.c#5 (text+ko) ==== @@ -241,11 +241,11 @@ sdt_reloc_resolve(uint8_t *instr, sdt_probedesc_t *sdp) { int i; - instr -= SDT_SIZEOF_CALL; + instr -= SDT_SIZEOF_CALL - 1; sdp->sdpd_offset = (uintptr_t)instr; for(i = 0; i < SDT_NOPS; i++) { - instr[i] = SDT_NOP; + instr[i - 1] = SDT_NOP; } return (1); ==== //depot/projects/dtrace/src/sys/sys/kernel.h#7 (text+ko) ==== @@ -112,7 +112,6 @@ SI_SUB_WITNESS = 0x1A80000, /* witness initialization */ SI_SUB_MTX_POOL_DYNAMIC = 0x1AC0000, /* dynamic mutex pool */ SI_SUB_LOCK = 0x1B00000, /* various locks */ - SI_SUB_SDT = 0x1B80000, /* statically defined tracing */ SI_SUB_EVENTHANDLER = 0x1C00000, /* eventhandler init */ SI_SUB_KLD = 0x2000000, /* KLD and module setup */ SI_SUB_CPU = 0x2100000, /* CPU resource(s)*/ From owner-p4-projects@FreeBSD.ORG Fri Jul 14 13:37:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D043916A4DF; Fri, 14 Jul 2006 13:37:11 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 ACD8116A4DD for ; Fri, 14 Jul 2006 13:37:11 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 77A5943D45 for ; Fri, 14 Jul 2006 13:37:11 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EDbBbf090222 for ; Fri, 14 Jul 2006 13:37:11 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EDbBUc090219 for perforce@freebsd.org; Fri, 14 Jul 2006 13:37:11 GMT (envelope-from gabor@FreeBSD.org) Date: Fri, 14 Jul 2006 13:37:11 GMT Message-Id: <200607141337.k6EDbBUc090219@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101547 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 13:37:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=101547 Change 101547 by gabor@gabor_spitfire on 2006/07/14 13:36:36 Fix plist corruptions with DOCSDIR. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#25 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#25 (text+ko) ==== @@ -5361,14 +5361,14 @@ @if ${ECHO_CMD} "${x}"| ${AWK} '$$1 ~ /(\*|\||\[|\]|\?|\{|\}|\$$)/ { exit 1};'; then \ if [ ! -e ${DOCSDIR}/${x} ]; then \ ${ECHO_CMD} ${DOCSDIR}/${x} | \ - ${SED} -e 's,^${PREFIX}/,,' >> ${TMPPLIST}; \ + ${SED} -e 's,^${DESTDIR}${PREFIX}/,,' >> ${TMPPLIST}; \ fi;fi .endfor @${FIND} -P ${PORTDOCS:S/^/${DOCSDIR}\//} ! -type d 2>/dev/null | \ - ${SED} -ne 's,^${PREFIX}/,,p' >> ${TMPPLIST} + ${SED} -ne 's,^${DESTDIR}${PREFIX}/,,p' >> ${TMPPLIST} @${FIND} -P -d ${PORTDOCS:S/^/${DOCSDIR}\//} -type d 2>/dev/null | \ - ${SED} -ne 's,^${PREFIX}/,@dirrm ,p' >> ${TMPPLIST} - @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}" >> ${TMPPLIST} + ${SED} -ne 's,^${DESTDIR}${PREFIX}/,@dirrm ,p' >> ${TMPPLIST} + @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${DESTDIR}${PREFIX}/,,}" >> ${TMPPLIST} .else @${DO_NADA} .endif From owner-p4-projects@FreeBSD.ORG Fri Jul 14 13:43:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1C0A716A4E1; Fri, 14 Jul 2006 13:43:22 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 EF1E716A4DF for ; Fri, 14 Jul 2006 13:43:21 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 917E543D4C for ; Fri, 14 Jul 2006 13:43:21 +0000 (GMT) (envelope-from gabor@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EDhL4o090670 for ; Fri, 14 Jul 2006 13:43:21 GMT (envelope-from gabor@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EDhLQS090667 for perforce@freebsd.org; Fri, 14 Jul 2006 13:43:21 GMT (envelope-from gabor@FreeBSD.org) Date: Fri, 14 Jul 2006 13:43:21 GMT Message-Id: <200607141343.k6EDhLQS090667@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@FreeBSD.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 101549 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 13:43:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=101549 Change 101549 by gabor@gabor_spitfire on 2006/07/14 13:42:37 Make security report work with DESTDIR. Affected files ... .. //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#26 edit Differences ... ==== //depot/projects/soc2006/gabor_ports/Mk/bsd.port.mk#26 (text+ko) ==== @@ -3872,7 +3872,7 @@ # 5. world-writable files/dirs # -@${RM} -f ${WRKDIR}/.PLIST.setuid ${WRKDIR}/.PLIST.writable ${WRKDIR}/.PLIST.objdump; \ - ${AWK} -v prefix='${PREFIX}' ' \ + ${AWK} -v prefix='${DESTDIR}${PREFIX}' ' \ match($$0, /^@cwd /) { prefix = substr($$0, RSTART + RLENGTH); if (prefix == "/") prefix=""; next; } \ /^@/ { next; } \ /^\// { print; next; } \ From owner-p4-projects@FreeBSD.ORG Fri Jul 14 14:00:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 97AE216A593; Fri, 14 Jul 2006 14:00:46 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 4E10116A590 for ; Fri, 14 Jul 2006 14:00:46 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D845B43D46 for ; Fri, 14 Jul 2006 14:00:45 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EE0jvE091470 for ; Fri, 14 Jul 2006 14:00:45 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EE0jHv091458 for perforce@freebsd.org; Fri, 14 Jul 2006 14:00:45 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 14:00:45 GMT Message-Id: <200607141400.k6EE0jHv091458@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101550 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 14:00:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=101550 Change 101550 by bms@bms_montagne on 2006/07/14 14:00:13 Put -mno-abicalls in the right place and use it consistently. Affected files ... .. //depot/projects/mips2/src/sys/conf/Makefile.mips#8 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/Makefile.mips#8 (text+ko) ==== @@ -45,9 +45,9 @@ .endif # We add the -fno-pic flag to kernels because otherwise performance -# is extremely poor. (XXX: Can replace with -mno-abicalls). -CFLAGS+=-fno-pic $(ARCH_FLAGS) -HACK_EXTRA_FLAGS+=-fno-pic $(ARCH_FLAGS) +# is extremely poor, as well as -mno-abicalls to force no ABI usage. +CFLAGS+=-fno-pic -mno-abicalls $(ARCH_FLAGS) +HACK_EXTRA_FLAGS+=-fno-pic -mno-abicalls $(ARCH_FLAGS) # XXX hardcoded kernel entry point SYSTEM_LD+= -Ttext 0x80100000 From owner-p4-projects@FreeBSD.ORG Fri Jul 14 14:00:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F27A116A602; Fri, 14 Jul 2006 14:00:46 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A501A16A5A2 for ; Fri, 14 Jul 2006 14:00:46 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3493B43D4C for ; Fri, 14 Jul 2006 14:00:46 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EE0kmI091476 for ; Fri, 14 Jul 2006 14:00:46 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EE0jDE091473 for perforce@freebsd.org; Fri, 14 Jul 2006 14:00:45 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 14:00:45 GMT Message-Id: <200607141400.k6EE0jDE091473@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101551 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 14:00:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=101551 Change 101551 by bms@bms_montagne on 2006/07/14 14:00:38 Add hard-wired hints for the MALTA board. Affected files ... .. //depot/projects/mips2/src/sys/mips/conf/MALTA.hints#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jul 14 14:01:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6700D16A4DF; Fri, 14 Jul 2006 14:01:48 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 45AD516A4DD for ; Fri, 14 Jul 2006 14:01:48 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E75FA43D45 for ; Fri, 14 Jul 2006 14:01:47 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EE1lrr091542 for ; Fri, 14 Jul 2006 14:01:47 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EE1lG9091539 for perforce@freebsd.org; Fri, 14 Jul 2006 14:01:47 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 14:01:47 GMT Message-Id: <200607141401.k6EE1lG9091539@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101552 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 14:01:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=101552 Change 101552 by bms@bms_montagne on 2006/07/14 14:01:31 The R4KC *is* a MIPS32 processor; so comment out ARCH_FLAGS Also reference the hardwired device hints we added as we currently have no loader and are in bringup. Affected files ... .. //depot/projects/mips2/src/sys/mips/conf/MALTA#5 edit .. //depot/projects/mips2/src/sys/mips/mips/locore.S#10 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/conf/MALTA#5 (text+ko) ==== @@ -21,7 +21,7 @@ cpu CPU_MIPS4KC ident MALTA -makeoptions ARCH_FLAGS=-march=r4kc +#makeoptions ARCH_FLAGS=-march=mips32 makeoptions MIPS_LITTLE_ENDIAN=defined # Don't build any modules yet. @@ -32,7 +32,7 @@ options PHYSADDR=0xc0000000 include "../mips4k/malta/std.malta" -#hints "GENERIC.hints" #Default places to look for devices. +hints "MALTA.hints" #Default places to look for devices. makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols @@ -58,3 +58,4 @@ device mem device md device uart +device uart_ns8250 ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#10 (text+ko) ==== @@ -48,31 +48,14 @@ * Soft reset * Boot exception vectors (firmware-provided) */ -/* - * XXXMIPS: I get absolute expression required `li' with this below. - * Probably because cpuregs.h from NetBSD defines MIPS_SR_SOFT_RESET as - * another macro which is not defined. - */ -#if 0 li t0, (MIPS_SR_BEV | MIPS_SR_SOFT_RESET) -#endif - li t0, MIPS_SR_BEV /* * t1: Bits to set explicitly: - * Kernel mode is 64-bit * Enable FPU */ -/* - * XXXMIPS: look at this. I think "Kernel mode is 64-bit" == MIPS_SR_KX, so - * it's probably worth to remove it soon. - */ -#if 0 - li t1, MIPS_SR_KX | MIPS_SR_COP_1_BIT -#endif li t1, MIPS_SR_COP_1_BIT - /* * Read coprocessor 0 status register, clear bits not * preserved (namely, clearing interrupt bits), and set @@ -97,18 +80,14 @@ /* * Set up the GP. - * XXMIPS: I did 'dla' -> 'la' conversion here. */ la gp, _gp /* * Set up our temporary stack. - * XXMIPS: I did 'dla' -> 'la' conversion here. */ la sp, topstack - - /* Call the platform-specific startup code. */ jal platform_start nop From owner-p4-projects@FreeBSD.ORG Fri Jul 14 14:32:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2267F16A4E0; Fri, 14 Jul 2006 14:32:48 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 EFB1916A4DD; Fri, 14 Jul 2006 14:32:47 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 712EF43D45; Fri, 14 Jul 2006 14:32:47 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k6EEWh9e006267; Fri, 14 Jul 2006 10:32:45 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: John Birrell Date: Fri, 14 Jul 2006 09:59:56 -0400 User-Agent: KMail/1.9.1 References: <200607140506.k6E56odA034076@repoman.freebsd.org> In-Reply-To: <200607140506.k6E56odA034076@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607140959.56995.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Fri, 14 Jul 2006 10:32:46 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1599/Fri Jul 14 01:35:31 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 101512 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 14:32:48 -0000 On Friday 14 July 2006 01:06, John Birrell wrote: > http://perforce.freebsd.org/chv.cgi?CH=101512 > > Change 101512 by jb@jb_freebsd2 on 2006/07/14 05:06:23 > > Use the proper way to tell gcc to link threaded. > > Note that there isn't a _single_ place in the FreeBSD source tree > where threaded programs are built properly. No wonder that the > ports people often get it wrong too! That's because the proper way currently defined in is "-lpthread" rather than "-pthread" :-P -- John Baldwin From owner-p4-projects@FreeBSD.ORG Fri Jul 14 14:32:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3D52316A4E5; Fri, 14 Jul 2006 14:32:54 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 02F7616A4E0; Fri, 14 Jul 2006 14:32:54 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 61EE943D45; Fri, 14 Jul 2006 14:32:53 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k6EEWh9d006267; Fri, 14 Jul 2006 10:32:44 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Hans Petter Selasky Date: Fri, 14 Jul 2006 09:58:15 -0400 User-Agent: KMail/1.9.1 References: <200607140311.k6E3BGUv013408@repoman.freebsd.org> <200607140950.12582.hselasky@c2i.net> In-Reply-To: <200607140950.12582.hselasky@c2i.net> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607140958.15594.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Fri, 14 Jul 2006 10:32:45 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1599/Fri Jul 14 01:35:31 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews , Scott Long Subject: Re: PERFORCE change 101501 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 14:32:54 -0000 On Friday 14 July 2006 03:50, Hans Petter Selasky wrote: > On Friday 14 July 2006 05:11, Scott Long wrote: > > http://perforce.freebsd.org/chv.cgi?CH=101501 > > > > Change 101501 by scottl@scottl-x64 on 2006/07/14 03:10:59 > > > > Re-allow anonymous CCB's. > > > > Affected files ... > > > > .. //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#41 edit > > .. //depot/projects/scottl-camlock/src/sys/cam/scsi/scsi_low.c#9 edit > > > > Differences ... > > > > ==== //depot/projects/scottl-camlock/src/sys/cam/cam_xpt.c#41 (text+ko) > > ==== > > > > @@ -4981,9 +4981,11 @@ > > union ccb *new_ccb; > > > > new_ccb = malloc(sizeof(*new_ccb), M_CAMXPT, M_WAITOK); > > - callout_handle_init(&new_ccb->ccb_h.timeout_ch); > > - callout_init(&new_ccb->ccb_h.callout, > > - (sim->flags & CAM_SIM_MPSAFE) ? 1 : 0); > > + if (sim != NULL) { > > + callout_handle_init(&new_ccb->ccb_h.timeout_ch); > > + callout_init(&new_ccb->ccb_h.callout, > > + (sim->flags & CAM_SIM_MPSAFE) ? 1 : 0); > > + } > > return (new_ccb); > > } > > > > Shouldn't you use "callout_init_mtx()", when dropping Giant, to avoid timout > after timeout stop situations ? Depends. callout_init_mtx() implies MPSAFE, and Scott only wants to have MPSAFE callouts with MPSAFE sims. It is true that callout_init_mtx() makes callout_stop() race-free when you hold the mutex though which is nice. -- John Baldwin From owner-p4-projects@FreeBSD.ORG Fri Jul 14 14:33:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B905816A4E1; Fri, 14 Jul 2006 14:33:28 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 967D016A4DF for ; Fri, 14 Jul 2006 14:33:28 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3E6B543D55 for ; Fri, 14 Jul 2006 14:33:28 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EEXS1n094165 for ; Fri, 14 Jul 2006 14:33:28 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EEXRl5094162 for perforce@freebsd.org; Fri, 14 Jul 2006 14:33:27 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 14 Jul 2006 14:33:27 GMT Message-Id: <200607141433.k6EEXRl5094162@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101554 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 14:33:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101554 Change 101554 by hselasky@hselasky_mini_itx on 2006/07/14 14:32:45 Finished reworking the Bluetooth USB driver, UBT. Please test. Affected files ... .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/TODO#2 edit .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#2 edit .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_var.h#2 edit Differences ... ==== //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/TODO#2 (text+ko) ==== @@ -6,25 +6,13 @@ The code makes use of ng_send_fn() whenever possible. Just need to verify and make sure i did it right -2) Review USB ATTACH function - - It is a bit ugly now. Probably need a better way to discover - USB device configuration. - 2) Firmware upgrade According to Bluetooth spec device may present third interface to perform firmware upgrade. 3Com USB Bluetooth dongle has such interface. Need to implement set of Netgraph messages. -3) Understand and fix isoc. USB transfers (SCO data) +3) Isochronous USB transfers (SCO data) - Currenty device reports that is got zero bytes and calls - isoc_in_complete callback over and over again. Why? - Also might need to setup at least two isoc. transfers in - both directions and switch them on the fly. Just to ensure - there at least one transfer at any time ready to run. - -4) Currently interrupt transfers are done as bulk-in transfers - - Need to check if that is allowed. + Tried to fix isochrounous transfers, which are still disabled + by default. ==== //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#2 (text+ko) ==== @@ -31,25 +31,17 @@ * $FreeBSD: src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c,v 1.26 2005/12/04 10:06:05 ru Exp $ */ +#include #include #include -#include -#include +#include +#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include #include -#include -#include -#include +#include +#include #include #include @@ -65,68 +57,51 @@ * USB methods */ -USB_DECLARE_DRIVER(ubt); +static device_probe_t ubt_probe; +static device_attach_t ubt_attach; +static device_detach_t ubt_detach; -Static int ubt_modevent (module_t, int, void *); +static devclass_t ubt_devclass; -Static usbd_status ubt_request_start (ubt_softc_p); -Static void ubt_request_complete (usbd_xfer_handle, - usbd_private_handle, usbd_status); -Static void ubt_request_complete2 (node_p, hook_p, void *, int); +static device_method_t ubt_methods[] = { + DEVMETHOD(device_probe, ubt_probe), + DEVMETHOD(device_attach, ubt_attach), + DEVMETHOD(device_detach, ubt_detach), + { 0, 0 } +}; -Static usbd_status ubt_intr_start (ubt_softc_p); -Static void ubt_intr_complete (usbd_xfer_handle, - usbd_private_handle, usbd_status); -Static void ubt_intr_complete2 (node_p, hook_p, void *, int); +static driver_t ubt_driver = { + .name = "ubt", + .methods = ubt_methods, + .size = sizeof(struct ubt_softc), +}; -Static usbd_status ubt_bulk_in_start (ubt_softc_p); -Static void ubt_bulk_in_complete (usbd_xfer_handle, - usbd_private_handle, usbd_status); -Static void ubt_bulk_in_complete2 (node_p, hook_p, void *, int); - -Static usbd_status ubt_bulk_out_start (ubt_softc_p); -Static void ubt_bulk_out_complete (usbd_xfer_handle, - usbd_private_handle, usbd_status); -Static void ubt_bulk_out_complete2 (node_p, hook_p, void *, int); - -Static usbd_status ubt_isoc_in_start (ubt_softc_p); -Static void ubt_isoc_in_complete (usbd_xfer_handle, - usbd_private_handle, usbd_status); -Static void ubt_isoc_in_complete2 (node_p, hook_p, void *, int); - -Static usbd_status ubt_isoc_out_start (ubt_softc_p); -Static void ubt_isoc_out_complete (usbd_xfer_handle, - usbd_private_handle, usbd_status); -Static void ubt_isoc_out_complete2 (node_p, hook_p, void *, int); - -Static void ubt_reset (ubt_softc_p); - /* * Netgraph methods */ -Static ng_constructor_t ng_ubt_constructor; -Static ng_shutdown_t ng_ubt_shutdown; -Static ng_newhook_t ng_ubt_newhook; -Static ng_connect_t ng_ubt_connect; -Static ng_disconnect_t ng_ubt_disconnect; -Static ng_rcvmsg_t ng_ubt_rcvmsg; -Static ng_rcvdata_t ng_ubt_rcvdata; +static ng_constructor_t ng_ubt_constructor; +static ng_shutdown_t ng_ubt_shutdown; +static ng_newhook_t ng_ubt_newhook; +static ng_connect_t ng_ubt_connect; +static ng_disconnect_t ng_ubt_disconnect; +static ng_rcvmsg_t ng_ubt_rcvmsg; +static ng_rcvdata_t ng_ubt_rcvdata; /* Queue length */ -Static const struct ng_parse_struct_field ng_ubt_node_qlen_type_fields[] = +static const struct ng_parse_struct_field ng_ubt_node_qlen_type_fields[] = { { "queue", &ng_parse_int32_type, }, { "qlen", &ng_parse_int32_type, }, { NULL, } }; -Static const struct ng_parse_type ng_ubt_node_qlen_type = { +static const struct ng_parse_type ng_ubt_node_qlen_type = { &ng_parse_struct_type, &ng_ubt_node_qlen_type_fields }; /* Stat info */ -Static const struct ng_parse_struct_field ng_ubt_node_stat_type_fields[] = +static const struct ng_parse_struct_field ng_ubt_node_stat_type_fields[] = { { "pckts_recv", &ng_parse_uint32_type, }, { "bytes_recv", &ng_parse_uint32_type, }, @@ -136,13 +111,13 @@ { "ierrors", &ng_parse_uint32_type, }, { NULL, } }; -Static const struct ng_parse_type ng_ubt_node_stat_type = { +static const struct ng_parse_type ng_ubt_node_stat_type = { &ng_parse_struct_type, &ng_ubt_node_stat_type_fields }; /* Netgraph node command list */ -Static const struct ng_cmdlist ng_ubt_cmdlist[] = { +static const struct ng_cmdlist ng_ubt_cmdlist[] = { { NGM_UBT_COOKIE, NGM_UBT_NODE_SET_DEBUG, @@ -189,7 +164,7 @@ }; /* Netgraph node type */ -Static struct ng_type typestruct = { +static struct ng_type typestruct = { .version = NG_ABI_VERSION, .name = NG_UBT_NODE_TYPE, .constructor = ng_ubt_constructor, @@ -202,6 +177,200 @@ .cmdlist = ng_ubt_cmdlist }; +/* USB methods */ + +static int +ubt_modevent(module_t mod, int event, void *data); + +static void +ubt_ctrl_write_callback(struct usbd_xfer *xfer); + +static void +ubt_intr_read_callback(struct usbd_xfer *xfer); + +static void +ubt_intr_read_clear_stall_callback(struct usbd_xfer *xfer); + +static void +ubt_intr_read_complete(node_p node, hook_p hook, void *arg1, int arg2); + +static void +ubt_bulk_read_callback(struct usbd_xfer *xfer); + +static void +ubt_bulk_read_clear_stall_callback(struct usbd_xfer *xfer); + +static void +ubt_bulk_read_complete(node_p node, hook_p hook, void *arg1, int arg2); + +static void +ubt_bulk_write_callback(struct usbd_xfer *xfer); + +static void +ubt_bulk_write_clear_stall_callback(struct usbd_xfer *xfer); + +static void +ubt_isoc_read_callback(struct usbd_xfer *xfer); + +static void +ubt_isoc_read_complete(node_p node, hook_p hook, void *arg1, int arg2); + +static void +ubt_isoc_write_callback(struct usbd_xfer *xfer); + +/* USB config */ +static const struct usbd_config ubt_config_if_0[UBT_IF_0_N_TRANSFER] = { + + [0] = { + .type = UE_BULK, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = UBT_BULK_WRITE_BUFFER_SIZE, + .flags = 0, + .callback = &ubt_bulk_write_callback, + }, + + [1] = { + .type = UE_BULK, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = UBT_BULK_READ_BUFFER_SIZE, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_bulk_read_callback, + }, + + [2] = { + .type = UE_INTERRUPT, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .flags = USBD_SHORT_XFER_OK, + .bufsize = 0, /* use wMaxPacketSize */ + .callback = &ubt_intr_read_callback, + }, + + [3] = { + .type = UE_CONTROL, + .endpoint = 0x00, /* Control pipe */ + .direction = -1, + .bufsize = (sizeof(usb_device_request_t) + UBT_CTRL_BUFFER_SIZE), + .callback = &ubt_ctrl_write_callback, + .timeout = 5000, /* 5 seconds */ + }, + + [4] = { + .type = UE_CONTROL, + .endpoint = 0x00, /* Control pipe */ + .direction = -1, + .bufsize = sizeof(usb_device_request_t), + .callback = &ubt_bulk_write_clear_stall_callback, + .timeout = 1000, /* 1 second */ + }, + + [5] = { + .type = UE_CONTROL, + .endpoint = 0x00, /* Control pipe */ + .direction = -1, + .bufsize = sizeof(usb_device_request_t), + .callback = &ubt_bulk_read_clear_stall_callback, + .timeout = 1000, /* 1 second */ + }, + + [6] = { + .type = UE_CONTROL, + .endpoint = 0x00, /* Control pipe */ + .direction = -1, + .bufsize = sizeof(usb_device_request_t), + .callback = &ubt_intr_read_clear_stall_callback, + .timeout = 1000, /* 1 second */ + }, +}; + +/* USB config */ +static const struct usbd_config ubt_config_if_1_full_speed[UBT_IF_1_N_TRANSFER] = { + [0] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UBT_ISOC_NFRAMES, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_isoc_read_callback, + }, + + [1] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UBT_ISOC_NFRAMES, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_isoc_read_callback, + }, + + [2] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UBT_ISOC_NFRAMES, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_isoc_write_callback, + }, + + [3] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UBT_ISOC_NFRAMES, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_isoc_write_callback, + }, +}; + +/* USB config */ +static const struct usbd_config ubt_config_if_1_high_speed[UBT_IF_1_N_TRANSFER] = { + [0] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UBT_ISOC_NFRAMES * 8, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_isoc_read_callback, + }, + + [1] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_IN, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UBT_ISOC_NFRAMES * 8, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_isoc_read_callback, + }, + + [2] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UBT_ISOC_NFRAMES * 8, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_isoc_write_callback, + }, + + [3] = { + .type = UE_ISOCHRONOUS, + .endpoint = -1, /* any */ + .direction = UE_DIR_OUT, + .bufsize = 0, /* use "wMaxPacketSize * frames" */ + .frames = UBT_ISOC_NFRAMES * 8, + .flags = USBD_SHORT_XFER_OK, + .callback = &ubt_isoc_write_callback, + }, +}; + /* * Module */ @@ -220,7 +389,7 @@ * Load/Unload the driver module */ -Static int +static int ubt_modevent(module_t mod, int event, void *data) { int error; @@ -228,10 +397,11 @@ switch (event) { case MOD_LOAD: error = ng_newtype(&typestruct); - if (error != 0) - printf( -"%s: Could not register Netgraph node type, error=%d\n", - NG_UBT_NODE_TYPE, error); + if (error != 0) { + printf("%s: Could not register " + "Netgraph node type, error=%d\n", + NG_UBT_NODE_TYPE, error); + } else error = usbd_driver_load(mod, event, data); break; @@ -254,7 +424,8 @@ * Probe for a USB Bluetooth device */ -USB_MATCH(ubt) +static int32_t +ubt_probe(device_t dev) { /* * If for some reason device should not be attached then put @@ -266,8 +437,10 @@ * where VENDOR_ID and PRODUCT_ID are hex numbers. */ - Static struct usb_devno const ubt_ignored_devices[] = { - { USB_VENDOR_AVM, 0x2200 }, /* AVM USB Bluetooth-Adapter BlueFritz! v1.0 */ + static struct usb_devno const ubt_ignored_devices[] = { + { USB_VENDOR_AVM, 0x2200 }, /* AVM USB Bluetooth-Adapter + * BlueFritz! v1.0 + */ { 0, 0 } /* This should be the last item in the list */ }; @@ -279,108 +452,84 @@ * to attach to the broken device. */ - Static struct usb_devno const ubt_broken_devices[] = { - { USB_VENDOR_AVM, 0x3800 }, /* AVM USB Bluetooth-Adapter BlueFritz! v2.0 */ + static struct usb_devno const ubt_broken_devices[] = { + { USB_VENDOR_AVM, 0x3800 }, /* AVM USB Bluetooth-Adapter + * BlueFritz! v2.0 + */ { 0, 0 } /* This should be the last item in the list */ }; - USB_MATCH_START(ubt, uaa); - + struct usb_attach_arg *uaa = device_get_ivars(dev); usb_device_descriptor_t *dd = usbd_get_device_descriptor(uaa->device); - if (uaa->iface == NULL || - usb_lookup(ubt_ignored_devices, uaa->vendor, uaa->product)) - return (UMATCH_NONE); + if ((uaa->iface == NULL) || + usb_lookup(ubt_ignored_devices, uaa->vendor, uaa->product)) { + return (UMATCH_NONE); + } - if (dd->bDeviceClass == UDCLASS_WIRELESS && - dd->bDeviceSubClass == UDSUBCLASS_RF && - dd->bDeviceProtocol == UDPROTO_BLUETOOTH) - return (UMATCH_DEVCLASS_DEVSUBCLASS); + if ((dd->bDeviceClass == UDCLASS_WIRELESS) && + (dd->bDeviceSubClass == UDSUBCLASS_RF) && + (dd->bDeviceProtocol == UDPROTO_BLUETOOTH)) { + return (UMATCH_DEVCLASS_DEVSUBCLASS); + } - if (usb_lookup(ubt_broken_devices, uaa->vendor, uaa->product)) - return (UMATCH_VENDOR_PRODUCT); + if (usb_lookup(ubt_broken_devices, uaa->vendor, uaa->product)) { + return (UMATCH_VENDOR_PRODUCT); + } return (UMATCH_NONE); -} /* USB_MATCH(ubt) */ +} /* * Attach the device */ -USB_ATTACH(ubt) +static int32_t +ubt_attach(device_t dev) { - USB_ATTACH_START(ubt, sc, uaa); - usb_config_descriptor_t *cd = NULL; - usb_interface_descriptor_t *id = NULL; - usb_endpoint_descriptor_t *ed = NULL; - char devinfo[1024]; - usbd_status error; - int i, ai, alt_no, isoc_in, isoc_out, - isoc_isize, isoc_osize; + struct usb_attach_arg *uaa = device_get_ivars(dev); + struct ubt_softc *sc = device_get_softc(dev); + u_int8_t i; + + usbd_set_desc(dev, uaa->device); - /* Get USB device info */ - sc->sc_udev = uaa->device; - usbd_devinfo(sc->sc_udev, 0, devinfo); - USB_ATTACH_SETUP; - printf("%s: %s\n", USBDEVNAME(sc->sc_dev), devinfo); + snprintf(sc->sc_name, sizeof(sc->sc_name), + "%s", device_get_nameunit(dev)); /* * Initialize device softc structure */ - /* State */ + /* state */ sc->sc_debug = NG_UBT_WARN_LEVEL; sc->sc_flags = 0; NG_UBT_STAT_RESET(sc->sc_stat); - /* Interfaces */ - sc->sc_iface0 = sc->sc_iface1 = NULL; - - /* Interrupt pipe */ - sc->sc_intr_ep = -1; - sc->sc_intr_pipe = NULL; - sc->sc_intr_xfer = NULL; - sc->sc_intr_buffer = NULL; - - /* Control pipe */ - sc->sc_ctrl_xfer = NULL; - sc->sc_ctrl_buffer = NULL; + /* control pipe */ NG_BT_MBUFQ_INIT(&sc->sc_cmdq, UBT_DEFAULT_QLEN); - /* Bulk-in pipe */ - sc->sc_bulk_in_ep = -1; - sc->sc_bulk_in_pipe = NULL; - sc->sc_bulk_in_xfer = NULL; - sc->sc_bulk_in_buffer = NULL; - - /* Bulk-out pipe */ - sc->sc_bulk_out_ep = -1; - sc->sc_bulk_out_pipe = NULL; - sc->sc_bulk_out_xfer = NULL; - sc->sc_bulk_out_buffer = NULL; + /* bulk-out pipe */ NG_BT_MBUFQ_INIT(&sc->sc_aclq, UBT_DEFAULT_QLEN); - /* Isoc-in pipe */ - sc->sc_isoc_in_ep = -1; - sc->sc_isoc_in_pipe = NULL; - sc->sc_isoc_in_xfer = NULL; + /* isoc-out pipe */ + NG_BT_MBUFQ_INIT(&sc->sc_scoq, + (usbd_get_speed(uaa->device) == USB_SPEED_HIGH) ? + (2 * UBT_ISOC_NFRAMES * 8) : + (2 * UBT_ISOC_NFRAMES)); - /* Isoc-out pipe */ - sc->sc_isoc_out_ep = -1; - sc->sc_isoc_out_pipe = NULL; - sc->sc_isoc_out_xfer = NULL; - sc->sc_isoc_size = -1; - NG_BT_MBUFQ_INIT(&sc->sc_scoq, UBT_DEFAULT_QLEN); + /* isoc-in pipe */ + NG_BT_MBUFQ_INIT(&sc->sc_sciq, + (usbd_get_speed(uaa->device) == USB_SPEED_HIGH) ? + (2 * UBT_ISOC_NFRAMES * 8) : + (2 * UBT_ISOC_NFRAMES)); - /* Netgraph part */ + /* netgraph part */ sc->sc_node = NULL; sc->sc_hook = NULL; - /* - * XXX set configuration? - * - * Configure Bluetooth USB device. Discover all required USB interfaces - * and endpoints. + /* + * Configure Bluetooth USB device. Discover all required USB + * interfaces and endpoints. * * USB device must present two interfaces: * 1) Interface 0 that has 3 endpoints @@ -400,1405 +549,812 @@ * Interface 0 */ - error = usbd_device2interface_handle(sc->sc_udev, 0, &sc->sc_iface0); - if (error || sc->sc_iface0 == NULL) { - printf("%s: Could not get interface 0 handle. %s (%d), " \ - "handle=%p\n", USBDEVNAME(sc->sc_dev), - usbd_errstr(error), error, sc->sc_iface0); - goto bad; - } + mtx_init(&(sc->sc_mtx), "ubt lock", NULL, MTX_DEF|MTX_RECURSE); - id = usbd_get_interface_descriptor(sc->sc_iface0); - if (id == NULL) { - printf("%s: Could not get interface 0 descriptor\n", - USBDEVNAME(sc->sc_dev)); - goto bad; + if(usbd_transfer_setup + (uaa->device, 0, + sc->sc_xfer_if_0, ubt_config_if_0, UBT_IF_0_N_TRANSFER, + sc, &(sc->sc_mtx), &(sc->sc_mem_wait))) { + goto detach; } - for (i = 0; i < id->bNumEndpoints; i ++) { - ed = usbd_interface2endpoint_descriptor(sc->sc_iface0, i); - if (ed == NULL) { - printf("%s: Could not read endpoint descriptor for " \ - "interface 0, i=%d\n", USBDEVNAME(sc->sc_dev), - i); - goto bad; - } - - switch (UE_GET_XFERTYPE(ed->bmAttributes)) { - case UE_BULK: - if (UE_GET_DIR(ed->bEndpointAddress) == UE_DIR_IN) - sc->sc_bulk_in_ep = ed->bEndpointAddress; - else - sc->sc_bulk_out_ep = ed->bEndpointAddress; - break; - - case UE_INTERRUPT: - sc->sc_intr_ep = ed->bEndpointAddress; - break; - } - } - - /* Check if we got everything we wanted on Interface 0 */ - if (sc->sc_intr_ep == -1) { - printf("%s: Could not detect interrupt endpoint\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - if (sc->sc_bulk_in_ep == -1) { - printf("%s: Could not detect bulk-in endpoint\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - if (sc->sc_bulk_out_ep == -1) { - printf("%s: Could not detect bulk-out endpoint\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - - printf("%s: Interface 0 endpoints: interrupt=%#x, bulk-in=%#x, " \ - "bulk-out=%#x\n", USBDEVNAME(sc->sc_dev), - sc->sc_intr_ep, sc->sc_bulk_in_ep, sc->sc_bulk_out_ep); - /* - * Interface 1 + * Interface 1 (search alternate settings) */ - cd = usbd_get_config_descriptor(sc->sc_udev); - if (cd == NULL) { - printf("%s: Could not get device configuration descriptor\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } + for (i = 0; ; i++) { - error = usbd_device2interface_handle(sc->sc_udev, 1, &sc->sc_iface1); - if (error || sc->sc_iface1 == NULL) { - printf("%s: Could not get interface 1 handle. %s (%d), " \ - "handle=%p\n", USBDEVNAME(sc->sc_dev), - usbd_errstr(error), error, sc->sc_iface1); - goto bad; - } + if (usbreq_set_interface(uaa->device, 1, i)) { + break; + } - id = usbd_get_interface_descriptor(sc->sc_iface1); - if (id == NULL) { - printf("%s: Could not get interface 1 descriptor\n", - USBDEVNAME(sc->sc_dev)); - goto bad; + if(usbd_transfer_setup + (uaa->device, 1, + sc->sc_xfer_if_1, + (usbd_get_speed(uaa->device) == USB_SPEED_HIGH) ? + ubt_config_if_1_high_speed : + ubt_config_if_1_full_speed, UBT_IF_1_N_TRANSFER, + sc, &(sc->sc_mtx), &(sc->sc_mem_wait)) == 0) { + goto found; + } } - /* - * Scan all alternate configurations for interface 1 - */ + goto detach; - alt_no = -1; + found: - for (ai = 0; ai < usbd_get_no_alts(cd, 1); ai++) { - error = usbd_set_interface(sc->sc_iface1, ai); - if (error) { - printf("%s: [SCAN] Could not set alternate " \ - "configuration %d for interface 1. %s (%d)\n", - USBDEVNAME(sc->sc_dev), ai, usbd_errstr(error), - error); - goto bad; - } - id = usbd_get_interface_descriptor(sc->sc_iface1); - if (id == NULL) { - printf("%s: Could not get interface 1 descriptor for " \ - "alternate configuration %d\n", - USBDEVNAME(sc->sc_dev), ai); - goto bad; - } - - isoc_in = isoc_out = -1; - isoc_isize = isoc_osize = 0; - - for (i = 0; i < id->bNumEndpoints; i ++) { - ed = usbd_interface2endpoint_descriptor(sc->sc_iface1, i); - if (ed == NULL) { - printf("%s: Could not read endpoint " \ - "descriptor for interface 1, " \ - "alternate configuration %d, i=%d\n", - USBDEVNAME(sc->sc_dev), ai, i); - goto bad; - } - - if (UE_GET_XFERTYPE(ed->bmAttributes) != UE_ISOCHRONOUS) - continue; - - if (UE_GET_DIR(ed->bEndpointAddress) == UE_DIR_IN) { - isoc_in = ed->bEndpointAddress; - isoc_isize = UGETW(ed->wMaxPacketSize); - } else { - isoc_out = ed->bEndpointAddress; - isoc_osize = UGETW(ed->wMaxPacketSize); - } - } + /* create Netgraph node */ - /* - * Make sure that configuration looks sane and if so - * update current settings - */ - - if (isoc_in != -1 && isoc_out != -1 && - isoc_isize > 0 && isoc_osize > 0 && - isoc_isize == isoc_osize && isoc_isize > sc->sc_isoc_size) { - sc->sc_isoc_in_ep = isoc_in; - sc->sc_isoc_out_ep = isoc_out; - sc->sc_isoc_size = isoc_isize; - alt_no = ai; - } - } - - /* Check if we got everything we wanted on Interface 0 */ - if (sc->sc_isoc_in_ep == -1) { - printf("%s: Could not detect isoc-in endpoint\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - if (sc->sc_isoc_out_ep == -1) { - printf("%s: Could not detect isoc-out endpoint\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - if (sc->sc_isoc_size <= 0) { - printf("%s: Invalid isoc. packet size=%d\n", - USBDEVNAME(sc->sc_dev), sc->sc_isoc_size); - goto bad; - } - - error = usbd_set_interface(sc->sc_iface1, alt_no); - if (error) { - printf("%s: Could not set alternate configuration " \ - "%d for interface 1. %s (%d)\n", USBDEVNAME(sc->sc_dev), - alt_no, usbd_errstr(error), error); - goto bad; - } - - /* Allocate USB transfer handles and buffers */ - sc->sc_ctrl_xfer = usbd_alloc_xfer(sc->sc_udev); - if (sc->sc_ctrl_xfer == NULL) { - printf("%s: Could not allocate control xfer handle\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - sc->sc_ctrl_buffer = usbd_alloc_buffer(sc->sc_ctrl_xfer, - UBT_CTRL_BUFFER_SIZE); - if (sc->sc_ctrl_buffer == NULL) { - printf("%s: Could not allocate control buffer\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - - sc->sc_intr_xfer = usbd_alloc_xfer(sc->sc_udev); - if (sc->sc_intr_xfer == NULL) { - printf("%s: Could not allocate interrupt xfer handle\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - - sc->sc_bulk_in_xfer = usbd_alloc_xfer(sc->sc_udev); - if (sc->sc_bulk_in_xfer == NULL) { - printf("%s: Could not allocate bulk-in xfer handle\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - - sc->sc_bulk_out_xfer = usbd_alloc_xfer(sc->sc_udev); - if (sc->sc_bulk_out_xfer == NULL) { - printf("%s: Could not allocate bulk-out xfer handle\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - sc->sc_bulk_out_buffer = usbd_alloc_buffer(sc->sc_bulk_out_xfer, - UBT_BULK_BUFFER_SIZE); - if (sc->sc_bulk_out_buffer == NULL) { - printf("%s: Could not allocate bulk-out buffer\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - - /* - * Allocate buffers for isoc. transfers - */ - - sc->sc_isoc_nframes = (UBT_ISOC_BUFFER_SIZE / sc->sc_isoc_size) + 1; - - sc->sc_isoc_in_xfer = usbd_alloc_xfer(sc->sc_udev); - if (sc->sc_isoc_in_xfer == NULL) { - printf("%s: Could not allocate isoc-in xfer handle\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - sc->sc_isoc_in_buffer = usbd_alloc_buffer(sc->sc_isoc_in_xfer, - sc->sc_isoc_nframes * sc->sc_isoc_size); - if (sc->sc_isoc_in_buffer == NULL) { - printf("%s: Could not allocate isoc-in buffer\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - sc->sc_isoc_in_frlen = malloc(sizeof(u_int16_t) * sc->sc_isoc_nframes, - M_USBDEV, M_NOWAIT); - if (sc->sc_isoc_in_frlen == NULL) { - printf("%s: Could not allocate isoc-in frame sizes buffer\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - - sc->sc_isoc_out_xfer = usbd_alloc_xfer(sc->sc_udev); - if (sc->sc_isoc_out_xfer == NULL) { - printf("%s: Could not allocate isoc-out xfer handle\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - sc->sc_isoc_out_buffer = usbd_alloc_buffer(sc->sc_isoc_out_xfer, - sc->sc_isoc_nframes * sc->sc_isoc_size); - if (sc->sc_isoc_out_buffer == NULL) { - printf("%s: Could not allocate isoc-out buffer\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - sc->sc_isoc_out_frlen = malloc(sizeof(u_int16_t) * sc->sc_isoc_nframes, - M_USBDEV, M_NOWAIT); - if (sc->sc_isoc_out_frlen == NULL) { - printf("%s: Could not allocate isoc-out frame sizes buffer\n", - USBDEVNAME(sc->sc_dev)); - goto bad; - } - - printf("%s: Interface 1 (alt.config %d) endpoints: isoc-in=%#x, " \ - "isoc-out=%#x; wMaxPacketSize=%d; nframes=%d, buffer size=%d\n", - USBDEVNAME(sc->sc_dev), alt_no, sc->sc_isoc_in_ep, - sc->sc_isoc_out_ep, sc->sc_isoc_size, sc->sc_isoc_nframes, - (sc->sc_isoc_nframes * sc->sc_isoc_size)); - - /* - * Open pipes - */ - - /* Interrupt */ - error = usbd_open_pipe(sc->sc_iface0, sc->sc_intr_ep, - USBD_EXCLUSIVE_USE, &sc->sc_intr_pipe); - if (error != USBD_NORMAL_COMPLETION) { - printf("%s: %s - Could not open interrupt pipe. %s (%d)\n", - __func__, USBDEVNAME(sc->sc_dev), usbd_errstr(error), - error); - goto bad; - } - - /* Bulk-in */ - error = usbd_open_pipe(sc->sc_iface0, sc->sc_bulk_in_ep, - USBD_EXCLUSIVE_USE, &sc->sc_bulk_in_pipe); - if (error != USBD_NORMAL_COMPLETION) { - printf("%s: %s - Could not open bulk-in pipe. %s (%d)\n", - __func__, USBDEVNAME(sc->sc_dev), usbd_errstr(error), - error); - goto bad; - } - - /* Bulk-out */ - error = usbd_open_pipe(sc->sc_iface0, sc->sc_bulk_out_ep, - USBD_EXCLUSIVE_USE, &sc->sc_bulk_out_pipe); - if (error != USBD_NORMAL_COMPLETION) { - printf("%s: %s - Could not open bulk-out pipe. %s (%d)\n", - __func__, USBDEVNAME(sc->sc_dev), usbd_errstr(error), - error); - goto bad; - } - -#if 0 /* XXX FIXME */ - /* Isoc-in */ - error = usbd_open_pipe(sc->sc_iface1, sc->sc_isoc_in_ep, - USBD_EXCLUSIVE_USE, &sc->sc_isoc_in_pipe); - if (error != USBD_NORMAL_COMPLETION) { - printf("%s: %s - Could not open isoc-in pipe. %s (%d)\n", - __func__, USBDEVNAME(sc->sc_dev), usbd_errstr(error), - error); - goto bad; - } - - /* Isoc-out */ - error = usbd_open_pipe(sc->sc_iface1, sc->sc_isoc_out_ep, - USBD_EXCLUSIVE_USE, &sc->sc_isoc_out_pipe); - if (error != USBD_NORMAL_COMPLETION) { - printf("%s: %s - Could not open isoc-out pipe. %s (%d)\n", - __func__, USBDEVNAME(sc->sc_dev), usbd_errstr(error), - error); - goto bad; - } -#endif - - /* Create Netgraph node */ if (ng_make_node_common(&typestruct, &sc->sc_node) != 0) { printf("%s: Could not create Netgraph node\n", - USBDEVNAME(sc->sc_dev)); + sc->sc_name); sc->sc_node = NULL; - goto bad; + goto detach; } - /* Name node */ - if (ng_name_node(sc->sc_node, USBDEVNAME(sc->sc_dev)) != 0) { + /* name node */ + + if (ng_name_node(sc->sc_node, sc->sc_name) != 0) { printf("%s: Could not name Netgraph node\n", - USBDEVNAME(sc->sc_dev)); + sc->sc_name); NG_NODE_UNREF(sc->sc_node); sc->sc_node = NULL; - goto bad; + goto detach; } NG_NODE_SET_PRIVATE(sc->sc_node, sc); NG_NODE_FORCE_WRITER(sc->sc_node); - /* Claim all interfaces on the device */ - for (i = 0; i < uaa->nifaces; i++) - uaa->ifaces[i] = NULL; + /* claim all interfaces on the device */ + + for (i = 0; ; i++) { + + if (usbd_get_iface(uaa->device, i) == NULL) { + break; + } + + USBD_SET_IFACE_NO_PROBE(uaa->device, i); + } - usbd_add_drv_event(USB_EVENT_DRIVER_ATTACH, sc->sc_udev, - USBDEV(sc->sc_dev)); + return 0; /* success */ - USB_ATTACH_SUCCESS_RETURN; -bad: >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 14 15:10:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 889F616A4E1; Fri, 14 Jul 2006 15:10:14 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 4908B16A4DD for ; Fri, 14 Jul 2006 15:10:14 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0B8C943D45 for ; Fri, 14 Jul 2006 15:10:14 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EFADTX098366 for ; Fri, 14 Jul 2006 15:10:13 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EFADVD098363 for perforce@freebsd.org; Fri, 14 Jul 2006 15:10:13 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 15:10:13 GMT Message-Id: <200607141510.k6EFADVD098363@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101555 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 15:10:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=101555 Change 101555 by jhb@jhb_mutex on 2006/07/14 15:10:11 ibcs2_sigprocmask() is already marked MPSAFE in syscalls.xenix. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.isc#7 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/syscalls.isc#7 (text+ko) ==== @@ -14,7 +14,7 @@ 3 AUE_NULL MNOPROTO { int ibcs2_sigaction(int sig, \ struct ibcs2_sigaction *act, \ struct ibcs2_sigaction *oact); } -4 AUE_NULL NOPROTO { int ibcs2_sigprocmask(int how, \ +4 AUE_NULL MNOPROTO { int ibcs2_sigprocmask(int how, \ ibcs2_sigset_t *set, \ ibcs2_sigset_t *oset); } 5 AUE_NULL MNOPROTO { int ibcs2_sigpending(ibcs2_sigset_t *mask); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 15:14:20 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6976516A4E0; Fri, 14 Jul 2006 15:14:20 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 42C2C16A4DE for ; Fri, 14 Jul 2006 15:14:20 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0BA8B43D49 for ; Fri, 14 Jul 2006 15:14:20 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EFEJvx098810 for ; Fri, 14 Jul 2006 15:14:19 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EFEJU4098807 for perforce@freebsd.org; Fri, 14 Jul 2006 15:14:19 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 15:14:19 GMT Message-Id: <200607141514.k6EFEJU4098807@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101556 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 15:14:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=101556 Change 101556 by bms@bms_montagne on 2006/07/14 15:13:50 Fold 64-bit stuff under #ifdef MIPS64. Cut down comments Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/tlb.c#5 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/tlb.c#5 (text+ko) ==== @@ -107,22 +107,19 @@ * Initialise ASID and clear TLB and set up for 4K pages. */ mips_wr_entryhi(0); + mips_wr_pagemask(0); /* XXX 4K */ tlb_invalidate_all(); - mips_wr_pagemask(0); /* XXX 4K */ /* * Just one wired TLB entry. */ mips_wr_wired(1); - /* - * XXXMIPS: Does xcontext exist on mips32? - */ -#if 0 +#ifdef CPU_MIPS64 /* * Set up page table. */ - mips_wr_xcontext((uintptr_t)kptmap); /* XXX: mips64 */ + mips_wr_xcontext((uintptr_t)kptmap); #endif } @@ -175,9 +172,6 @@ tlb_remove_pages(pmap, va, eva - va); } -/* - * XXXMIPS: Check this one. - */ void tlb_update(vm_offset_t va, pt_entry_t pte0, pt_entry_t pte1) { @@ -185,11 +179,7 @@ int i; va &= ~PAGE_MASK; - /* - * XXXMIPS: This will probably mean bringing stuff from NetBSD, as - * juli's code has offsets and sizes for mips64. - */ -#if 0 +#ifdef CPU_MIPS64 ehi = MIPS_HI_ENTRY(va, /*asid*/0); #endif ehi = 0; @@ -225,9 +215,9 @@ /* Bogus VPN2. */ ehi = MIPS_KSEG1_END + 2 * i * PAGE_SIZE; mips_wr_index(i); -#if 0 +#ifdef CPU_MIPS64 mips_wr_entrylo0(0); - mips_wr_entrylo1(0); /* XXX mips64 */ + mips_wr_entrylo1(0); #else mips_wr_entrylow(0); #endif @@ -235,9 +225,6 @@ mips_tlbwi(); } -/* - * XXXMIPS: Check this one. - */ void tlb_invalidate_page(vm_offset_t va) { @@ -245,11 +232,7 @@ int i; va &= ~PAGE_MASK; - /* - * XXXMIPS: This will probably mean bringing stuff from NetBSD, as - * juli's code has offsets and sizes for mips64. - */ -#if 0 +#ifdef CPU_MIPS64 ehi = MIPS_HI_ENTRY(va, /*asid*/0); #endif ehi = 0; From owner-p4-projects@FreeBSD.ORG Fri Jul 14 15:15:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 733D616A4E2; Fri, 14 Jul 2006 15:15:27 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 1B64A16A4DD for ; Fri, 14 Jul 2006 15:15:27 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A135B43D45 for ; Fri, 14 Jul 2006 15:15:26 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EFFQHD098906 for ; Fri, 14 Jul 2006 15:15:26 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EFFLgm098903 for perforce@freebsd.org; Fri, 14 Jul 2006 15:15:21 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 15:15:21 GMT Message-Id: <200607141515.k6EFFLgm098903@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101557 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 15:15:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=101557 Change 101557 by bms@bms_montagne on 2006/07/14 15:14:21 Don't touch the tlb before it has been initialized. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#8 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#8 (text+ko) ==== @@ -221,10 +221,15 @@ /* XXX PCPU */ mips_wtf(&wtf); + +#if 0 mips_num_tlb_entries = wtf.wtf_ntlbs; +#endif mips_config_cache(); +#if 0 tlb_invalidate_all(); +#endif mips_vector_init(); /* * XXXMIPS: Leave touching cache until we decide, how we're going to From owner-p4-projects@FreeBSD.ORG Fri Jul 14 15:29:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 06A8616A4E5; Fri, 14 Jul 2006 15:29:47 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C580D16A4DE for ; Fri, 14 Jul 2006 15:29:46 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9365243D45 for ; Fri, 14 Jul 2006 15:29:46 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EFTkI6099944 for ; Fri, 14 Jul 2006 15:29:46 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EFTkOD099941 for perforce@freebsd.org; Fri, 14 Jul 2006 15:29:46 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 15:29:46 GMT Message-Id: <200607141529.k6EFTkOD099941@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101561 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 15:29:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=101561 Change 101561 by jhb@jhb_mutex on 2006/07/14 15:29:39 mount and unmount are MPSAFE. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#17 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#17 (text+ko) ==== @@ -64,10 +64,10 @@ 19 AUE_LSEEK MSTD { long ibcs2_lseek(int fd, long offset, \ int whence); } 20 AUE_NULL MNOPROTO { pid_t getpid(void); } -21 AUE_MOUNT STD { int ibcs2_mount(char *special, char *dir, \ +21 AUE_MOUNT MSTD { int ibcs2_mount(char *special, char *dir, \ int flags, int fstype, char *data, \ int len); } -22 AUE_UMOUNT STD { int ibcs2_umount(char *name); } +22 AUE_UMOUNT MSTD { int ibcs2_umount(char *name); } 23 AUE_SETUID MSTD { int ibcs2_setuid(int uid); } 24 AUE_GETUID MNOPROTO { uid_t getuid(void); } 25 AUE_SETTIMEOFDAY MSTD { int ibcs2_stime(long *timep); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 15:42:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0520016A4E5; Fri, 14 Jul 2006 15:42:07 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 D4BEC16A4E2 for ; Fri, 14 Jul 2006 15:42:06 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A0BF643D77 for ; Fri, 14 Jul 2006 15:42:03 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EFg3bY001001 for ; Fri, 14 Jul 2006 15:42:03 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EFg3Tf000998 for perforce@freebsd.org; Fri, 14 Jul 2006 15:42:03 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 15:42:03 GMT Message-Id: <200607141542.k6EFg3Tf000998@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101564 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 15:42:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=101564 Change 101564 by jhb@jhb_mutex on 2006/07/14 15:41:14 Surprisingly, ibcs2_ioctl() is MPSAFE as is. Affected files ... .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#18 edit Differences ... ==== //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#18 (text+ko) ==== @@ -114,7 +114,7 @@ int a3, int a4); } 53 AUE_SEMSYS MSTD { int ibcs2_semsys(int which, int a2, \ int a3, int a4, int a5); } -54 AUE_IOCTL STD { int ibcs2_ioctl(int fd, int cmd, \ +54 AUE_IOCTL MSTD { int ibcs2_ioctl(int fd, int cmd, \ caddr_t data); } 55 AUE_NULL MSTD { int ibcs2_uadmin(int cmd, int func, \ caddr_t data); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 15:44:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E206616A4E1; Fri, 14 Jul 2006 15:44:09 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 B6FFE16A4DD for ; Fri, 14 Jul 2006 15:44:09 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D730A43D5D for ; Fri, 14 Jul 2006 15:44:06 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EFi6OD001229 for ; Fri, 14 Jul 2006 15:44:06 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EFi6JE001226 for perforce@freebsd.org; Fri, 14 Jul 2006 15:44:06 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 15:44:06 GMT Message-Id: <200607141544.k6EFi6JE001226@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101565 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 15:44:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=101565 Change 101565 by jhb@jhb_mutex on 2006/07/14 15:43:09 Update. Affected files ... .. //depot/projects/smpng/sys/notes#80 edit Differences ... ==== //depot/projects/smpng/sys/notes#80 (text+ko) ==== @@ -92,11 +92,7 @@ - svr4_sys_resolvepath() + linux + linux_uselib() - - ibcs2 - - ibcs2_mount() - - ibcs2_umount() - - ibcs2_ioctl() - - ibcs2_sigprocmask() + + ibcs2 - don't mess with td_retval in any kern_foo() functions Active child branches: From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:01:30 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C3AD16A4E1; Fri, 14 Jul 2006 16:01:30 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 0DEDB16A4DF for ; Fri, 14 Jul 2006 16:01:30 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B2EF443D45 for ; Fri, 14 Jul 2006 16:01:29 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EG1TuM002708 for ; Fri, 14 Jul 2006 16:01:29 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EG1TJf002705 for perforce@freebsd.org; Fri, 14 Jul 2006 16:01:29 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 16:01:29 GMT Message-Id: <200607141601.k6EG1TJf002705@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101567 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:01:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=101567 Change 101567 by jhb@jhb_mutex on 2006/07/14 16:01:09 Use change_dir() in fchdir() instead of duplicating the logic. Affected files ... .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#50 edit .. //depot/projects/smpng/sys/compat/svr4/syscalls.master#18 edit .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#111 edit Differences ... ==== //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#50 (text+ko) ==== @@ -606,34 +606,31 @@ struct svr4_sys_fchroot_args *uap; { struct filedesc *fdp = td->td_proc->p_fd; - struct vnode *vp, *vpold; + struct vnode *vp; struct file *fp; - int error; + int error, vfslocked; if ((error = suser(td)) != 0) return error; + AUDIT_ARG(fd, uap->fd); if ((error = getvnode(fdp, uap->fd, &fp)) != 0) return error; vp = fp->f_vnode; + VREF(vp); + fdrop(fp, td); + vfslocked = VFS_LOCK_GIANT(vp->v_mount); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - if (vp->v_type != VDIR) - error = ENOTDIR; - else - error = VOP_ACCESS(vp, VEXEC, td->td_ucred, td); + AUDIT_ARG(vnode, vp, ARG_VNODE1); + error = change_dir(vp, td); +#ifdef MAC + if (error == 0) + error = mac_check_vnode_chroot(td->td_ucred, vp); +#endif VOP_UNLOCK(vp, 0, td); - if (error) { - fdrop(fp, td); - return error; - } - VREF(vp); - FILEDESC_LOCK_FAST(fdp); - vpold = fdp->fd_rdir; - fdp->fd_rdir = vp; - FILEDESC_UNLOCK_FAST(fdp); - if (vpold != NULL) - vrele(vpold); - fdrop(fp, td); - return 0; + if (error == 0) + error = change_root(vp, td); + VFS_UNLOCK_GIANT(vfslocked); + return (error); } ==== //depot/projects/smpng/sys/compat/svr4/syscalls.master#18 (text+ko) ==== @@ -250,7 +250,7 @@ 150 AUE_NULL UNIMPL notused 151 AUE_NULL UNIMPL notused 152 AUE_NULL UNIMPL modctl -153 AUE_NULL STD { int svr4_sys_fchroot(int fd); } +153 AUE_NULL MSTD { int svr4_sys_fchroot(int fd); } 154 AUE_NULL MSTD { int svr4_sys_utimes(char *path, \ struct timeval *tptr); } 155 AUE_NULL MSTD { int svr4_sys_vhangup(void); } ==== //depot/projects/smpng/sys/kern/vfs_syscalls.c#111 (text+ko) ==== @@ -697,14 +697,7 @@ vfslocked = VFS_LOCK_GIANT(vp->v_mount); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); AUDIT_ARG(vnode, vp, ARG_VNODE1); - if (vp->v_type != VDIR) - error = ENOTDIR; -#ifdef MAC - else if ((error = mac_check_vnode_chdir(td->td_ucred, vp)) != 0) { - } -#endif - else - error = VOP_ACCESS(vp, VEXEC, td->td_ucred, td); + error = change_dir(vp, td); while (!error && (mp = vp->v_mountedhere) != NULL) { int tvfslocked; if (vfs_busy(mp, 0, 0, td)) From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:08:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7253A16A4DF; Fri, 14 Jul 2006 16:08:40 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 4F63416A4DD for ; Fri, 14 Jul 2006 16:08:40 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1E34043D45 for ; Fri, 14 Jul 2006 16:08:40 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EG8dQs004489 for ; Fri, 14 Jul 2006 16:08:39 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EG8d4i004486 for perforce@freebsd.org; Fri, 14 Jul 2006 16:08:39 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 16:08:39 GMT Message-Id: <200607141608.k6EG8d4i004486@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101568 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:08:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101568 Change 101568 by jhb@jhb_mutex on 2006/07/14 16:08:10 Drop AUDIT stuff for now since it doesn't compile and it's not my bailiwick. Affected files ... .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#51 edit Differences ... ==== //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#51 (text+ko) ==== @@ -612,7 +612,6 @@ if ((error = suser(td)) != 0) return error; - AUDIT_ARG(fd, uap->fd); if ((error = getvnode(fdp, uap->fd, &fp)) != 0) return error; vp = fp->f_vnode; @@ -620,7 +619,6 @@ fdrop(fp, td); vfslocked = VFS_LOCK_GIANT(vp->v_mount); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - AUDIT_ARG(vnode, vp, ARG_VNODE1); error = change_dir(vp, td); #ifdef MAC if (error == 0) From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:11:45 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F2D5C16A4E5; Fri, 14 Jul 2006 16:11:44 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 CEA0B16A4E1 for ; Fri, 14 Jul 2006 16:11:44 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6727943D46 for ; Fri, 14 Jul 2006 16:11:44 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EGBi0c005046 for ; Fri, 14 Jul 2006 16:11:44 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EGBifR005043 for perforce@freebsd.org; Fri, 14 Jul 2006 16:11:44 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 16:11:44 GMT Message-Id: <200607141611.k6EGBifR005043@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101569 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:11:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=101569 Change 101569 by jhb@jhb_mutex on 2006/07/14 16:11:31 Add conditional VFS Giant locking to svr4_sys_resolvepath() and mark MPSAFE. Affected files ... .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#52 edit .. //depot/projects/smpng/sys/compat/svr4/syscalls.master#19 edit .. //depot/projects/smpng/sys/notes#81 edit Differences ... ==== //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#52 (text+ko) ==== @@ -1601,12 +1601,14 @@ struct nameidata nd; int error, *retval = td->td_retval; unsigned int ncopy; + int vfslocked; - NDINIT(&nd, LOOKUP, NOFOLLOW | SAVENAME, UIO_USERSPACE, + NDINIT(&nd, LOOKUP, NOFOLLOW | SAVENAME | MPSAFE, UIO_USERSPACE, uap->path, td); if ((error = namei(&nd)) != 0) return error; + vfslocked = NDHASGIANT(&nd); ncopy = min(uap->bufsiz, strlen(nd.ni_cnd.cn_pnbuf) + 1); if ((error = copyout(nd.ni_cnd.cn_pnbuf, uap->buf, ncopy)) != 0) @@ -1616,5 +1618,6 @@ bad: NDFREE(&nd, NDF_ONLY_PNBUF); vput(nd.ni_vp); + VFS_UNLOCK_GIANT(vfslocked); return error; } ==== //depot/projects/smpng/sys/compat/svr4/syscalls.master#19 (text+ko) ==== @@ -320,7 +320,7 @@ 206 AUE_NULL UNIMPL schedctl 207 AUE_NULL UNIMPL pset 208 AUE_NULL UNIMPL whoknows -209 AUE_NULL STD { int svr4_sys_resolvepath(const char *path, \ +209 AUE_NULL MSTD { int svr4_sys_resolvepath(const char *path, \ char *buf, size_t bufsiz); } 210 AUE_NULL UNIMPL signotifywait 211 AUE_NULL UNIMPL lwp_sigredirect ==== //depot/projects/smpng/sys/notes#81 (text+ko) ==== @@ -88,8 +88,8 @@ - svr4_sys_getmsg() - svr4_sys_putmsg() - svr4_sys_waitsys() - - svr4_sys_fchroot() - - svr4_sys_resolvepath() + + svr4_sys_fchroot() + + svr4_sys_resolvepath() + linux + linux_uselib() + ibcs2 From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:17:54 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 09C5E16A4E6; Fri, 14 Jul 2006 16:17:54 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 9091A16A4DA for ; Fri, 14 Jul 2006 16:17:53 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 344E943D64 for ; Fri, 14 Jul 2006 16:17:52 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EGHqu9005334 for ; Fri, 14 Jul 2006 16:17:52 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EGHqFv005330 for perforce@freebsd.org; Fri, 14 Jul 2006 16:17:52 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 16:17:52 GMT Message-Id: <200607141617.k6EGHqFv005330@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101570 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:17:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=101570 Change 101570 by bms@bms_montagne on 2006/07/14 16:17:47 Add a basic timecounter wrapper for the MIPS32 Count register so we can tell the time. Depends on a deterministic DELAY() for calibration, which I haven't done yet. While we're here update clock.h to what is needed for mips. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/clock.h#2 edit .. //depot/projects/mips2/src/sys/mips/mips/tick.c#1 add Differences ... ==== //depot/projects/mips2/src/sys/mips/include/clock.h#2 (text+ko) ==== @@ -1,42 +1,38 @@ /*- - * Kernel interface to machine-dependent clock driver. - * Garrett Wollman, September 1994. - * This file is in the public domain. + * Copyright (c) 2006 Bruce M. Simpson + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (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/sys/amd64/include/clock.h,v 1.51 2005/12/22 22:16:05 jhb Exp $ + * $FreeBSD$ */ #ifndef _MACHINE_CLOCK_H_ #define _MACHINE_CLOCK_H_ -#ifdef _KERNEL -/* - * i386 to clock driver interface. - * XXX large parts of the driver and its interface are misplaced. - */ -extern int adjkerntz; -extern int clkintr_pending; -extern int disable_rtc_set; -extern int pscnt; -extern int psdiv; -extern int statclock_disable; -extern u_int timer_freq; -extern int timer0_max_count; -extern uint64_t tsc_freq; -extern int tsc_is_broken; -extern int wall_cmos_clock; +#define wall_cmos_clock 0 +#define adjkerntz 0 -/* - * Driver to clock driver interface. - */ - -int acquire_timer2(int mode); -int release_timer2(void); -int rtcin(int val); +void tick_init(void); int sysbeep(int pitch, int period); -void init_TSC(void); -void init_TSC_tc(void); - -#endif /* _KERNEL */ #endif /* !_MACHINE_CLOCK_H_ */ From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:37:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C53A316A61F; Fri, 14 Jul 2006 16:37:22 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 843DA16A612 for ; Fri, 14 Jul 2006 16:37:22 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C8EA943D58 for ; Fri, 14 Jul 2006 16:37:18 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EGbIon006303 for ; Fri, 14 Jul 2006 16:37:18 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EGbIkS006300 for perforce@freebsd.org; Fri, 14 Jul 2006 16:37:18 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 14 Jul 2006 16:37:18 GMT Message-Id: <200607141637.k6EGbIkS006300@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101571 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:37:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=101571 Change 101571 by gonzo@gonzo_hq on 2006/07/14 16:36:42 o Intergarted @101401, @101410. o Hardocded TLB/memory values for gxemul/malta "device". o stole cpu_thread_setup from juli's code. o Add panic() string to stub functions in vm_panic.c. Makes life easier, a lot. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/cache.h#2 integrate .. //depot/projects/mips2/src/sys/mips/include/pte.h#2 integrate .. //depot/projects/mips2/src/sys/mips/include/tlb.h#3 integrate .. //depot/projects/mips2/src/sys/mips/include/vmparam.h#5 integrate .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#9 edit .. //depot/projects/mips2/src/sys/mips/mips/exception.S#3 integrate .. //depot/projects/mips2/src/sys/mips/mips/machdep.c#15 edit .. //depot/projects/mips2/src/sys/mips/mips/pmap.c#5 integrate .. //depot/projects/mips2/src/sys/mips/mips/support.S#5 edit .. //depot/projects/mips2/src/sys/mips/mips/tlb.c#6 integrate .. //depot/projects/mips2/src/sys/mips/mips/vm_machdep.c#3 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/cache.h#2 (text+ko) ==== @@ -204,6 +204,10 @@ (*mips_cache_ops.mco_ ## prefix ## s ## x )((a), (b)); \ } while (/*CONSTCOND*/0) +/* + * XXXMIPS: remove this calles while mipc cache ops are not defined + */ +#ifdef notyet #define mips_icache_sync_all() \ (*mips_cache_ops.mco_icache_sync_all)() @@ -227,6 +231,18 @@ #define mips_dcache_wb_range(v, s) \ __mco_2args(, dcache_wb_range, (v), (s)) +#else +#define mips_icache_sync_all() +#define mips_icache_sync_range(v, s) +#define mips_icache_sync_range_index(v, s) +#define mips_dcache_wbinv_all() +#define mips_dcache_wbinv_range(v, s) +#define mips_dcache_wbinv_range_index(v, s) +#define mips_dcache_inv_range(v, s) +#define mips_dcache_wb_range(v, s) +#endif + + void mips_config_cache(void); void mips_dcache_compute_align(void); ==== //depot/projects/mips2/src/sys/mips/include/pte.h#2 (text+ko) ==== @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2006 Oleksandr Tymoshenko * Copyright (c) 2003-2004 Juli Mallett * All rights reserved. * @@ -23,14 +24,14 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/mips2/src/sys/mips/include/pte.h#1 $ + * $P4: //depot/projects/mips2/src/sys/mips/include/pte.h#2 $ */ #ifndef _MACHINE_PTE_H_ #define _MACHINE_PTE_H_ /* - * 64-bit PTE. + * 32-bit PTE. */ #ifndef LOCORE typedef unsigned long pt_entry_t; @@ -44,55 +45,31 @@ /* * PFN for EntryLo register. Upper bits are 0, which is to say that - * bit 29 is the last hardware bit; Bits 30 and upwards (EntryLo is - * 64 bit though it can be referred to in 32-bits providing 2 software - * bits safely. We use it as 64 bits to get many software bits, and - * god knows what else.) are unacknowledged by hardware. They may be - * written as anything, but otherwise they have as much meaning as - * other 0 fields. + * bit 29 is the last hardware bit; Bits 30 and upwards are + * unacknowledged by hardware. They may be written as anything, but + * otherwise they have as much meaning as other 0 fields. * * Given this, we just shift the PA right a little. */ #define MIPS_TLB_SWSHIFT 30 #define MIPS_PFN_SHIFT 6 -#define MIPS_PFN_MASK 0x3FFFFFC0 +#define MIPS_PFN_MASK 0xFFFFFF #define MIPS_PA_TO_PFN(pa) (((pa) >> MIPS_PFN_SHIFT) & MIPS_PFN_MASK) #define MIPS_PFN_TO_PA(pfn) ((pfn) << MIPS_PFN_SHIFT) #define MIPS_PTE_TO_PFN(pte) ((pte) & MIPS_PFN_MASK) #define MIPS_PTE_TO_PA(pte) (MIPS_PFN_TO_PA(MIPS_PTE_TO_PFN((pte)))) /* - * VPN for EntryHi register. Upper two bits select user, supervisor, - * or kernel. Bits 61 to 40 copy bit 63. VPN2 is bits 39 and down to - * as low as 13, down to PAGE_SHIFT + 1, to index 2 pages. From bit 12 - * to bit 8 there is a 5-bit 0 field. Low byte is ASID. + * VPN for EntryHi register. Upper upper 19 bits are VPN2 - VA[31..13] + * or PFN/2. EntryHi[12..11] - VPN2X field for Release 2 architecture + * to support 1Kb pages. Bits 10..8 shoud be set to zero. Bits 7..0 - + * contains ASID. VPN2X bits should be set to zero in Release 1. + * XXX: add support for VPN2X(?) */ -#define MIPS_HI_R_SHIFT 62 -#ifdef LOCORE -#define MIPS_HI_R_USER (0x00 << MIPS_HI_R_SHIFT) -#define MIPS_HI_R_SUPERVISOR (0x01 << MIPS_HI_R_SHIFT) -#define MIPS_HI_R_KERNEL (0x03 << MIPS_HI_R_SHIFT) -#define MIPS_HI_R_MASK (0x03 << MIPS_HI_R_SHIFT) -#else -#define MIPS_HI_R_USER (0x00UL << MIPS_HI_R_SHIFT) -#define MIPS_HI_R_SUPERVISOR (0x01UL << MIPS_HI_R_SHIFT) -#define MIPS_HI_R_KERNEL (0x03UL << MIPS_HI_R_SHIFT) -#define MIPS_HI_R_MASK (0x03UL << MIPS_HI_R_SHIFT) -#endif -#define MIPS_HI_VA_R(va) ((va) & MIPS_HI_R_MASK) -#define MIPS_HI_FILL_SHIFT 40 -#define MIPS_HI_FILL_MASK ((0x7FFFFFUL) << MIPS_HI_FILL_SHIFT) -#define MIPS_HI_VA_FILL(va) ((((va) & (1UL << 63)) != 0 ? MIPS_HI_FILL_MASK : 0)) #define MIPS_HI_VPN2_SHIFT (PAGE_SHIFT + 1) -#ifdef LOCORE -#define MIPS_HI_VPN2_MASK (((~((1 << MIPS_HI_VPN2_SHIFT) - 1)) << (63 - MIPS_HI_FILL_SHIFT)) >> (63 - MIPS_HI_FILL_SHIFT)) -#else -#define MIPS_HI_VPN2_MASK (((~((1UL << MIPS_HI_VPN2_SHIFT) - 1)) << (63 - MIPS_HI_FILL_SHIFT)) >> (63 - MIPS_HI_FILL_SHIFT)) -#endif +#define MIPS_HI_VPN2_MASK (0xffffffff << MIPS_HI_VPN2_SHIFT) #define MIPS_HI_VA_TO_VPN2(va) ((va) & MIPS_HI_VPN2_MASK) -#define MIPS_HI_ENTRY(va, asid) ((MIPS_HI_VA_R((va))) /* Region. */ | \ - (MIPS_HI_VA_FILL((va))) /* Fill. */ | \ - (MIPS_HI_VA_TO_VPN2((va))) /* VPN2. */ | \ +#define MIPS_HI_ENTRY(va, asid) ((MIPS_HI_VA_TO_VPN2((va))) /* VPN2. */ | \ ((asid))) /* @@ -108,10 +85,7 @@ */ #define PG_C(attr) ((attr & 0x07) << 3) #define PG_C_UNCACHED (PG_C(0x02)) -#define PG_C_CNC (PG_C(0x03)) -#define PG_C_CCE (PG_C(0x04)) -#define PG_C_CCEOW (PG_C(0x05)) -#define PG_C_CCUOW (PG_C(0x06)) +#define PG_C_CACHED (PG_C(0x03)) #define PG_D 0x04 #define PG_V 0x02 #define PG_G 0x01 ==== //depot/projects/mips2/src/sys/mips/include/tlb.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/mips2/src/sys/mips/include/tlb.h#2 $ + * $P4: //depot/projects/mips2/src/sys/mips/include/tlb.h#3 $ */ #ifndef _MACHINE_TLB_H_ @@ -32,7 +32,7 @@ extern pt_entry_t *kptmap; extern vm_size_t kptsize; -#define tlb_pte_index(va) (((va) - (MIPS_KSEG2_START)) >> PAGE_SHIFT) +#define tlb_pte_index(va) (((va) - (VM_MIN_KERNEL_ADDRESS)) >> PAGE_SHIFT) #define tlb_pte_find(t,va) (&(t)[tlb_pte_index((va))]) void tlb_bootstrap(vm_size_t, vm_offset_t (*)(vm_size_t)); ==== //depot/projects/mips2/src/sys/mips/include/vmparam.h#5 (text+ko) ==== @@ -99,11 +99,15 @@ #ifndef VM_INITIAL_PAGEIN #define VM_INITIAL_PAGEIN 16 #endif -#define VM_MIN_ADDRESS ((vm_offset_t)0x0000000000001000) + +/* + * XXXMIPS: This values need to be changed!!! + */ +#define VM_MIN_ADDRESS ((vm_offset_t)0x0000000000010000) #define VM_MAXUSER_ADDRESS ((vm_offset_t)0x0000000100000000) #define VM_MAX_ADDRESS ((vm_offset_t)0x0000000100000000) -#define VM_MIN_KERNEL_ADDRESS ((vm_offset_t)MIPS_KSEG0_START) -#define VM_MAX_KERNEL_ADDRESS ((vm_offset_t)MIPS_KSEG1_START-1) +#define VM_MIN_KERNEL_ADDRESS ((vm_offset_t)0x0000000000010000) +#define VM_MAX_KERNEL_ADDRESS ((vm_offset_t)MIPS_KSEG0_START-1) #define KERNBASE (VM_MIN_KERNEL_ADDRESS) /* virtual sizes (bytes) for various kernel submaps */ ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#9 (text+ko) ==== @@ -125,7 +125,7 @@ { VECI(MIPS_UTLB_MISS, TLBMiss); - VECI(MIPS3_XTLB_MISS, XTLBMiss); + VECI(MIPS3_XTLB_MISS, TLBMiss); VECI(MIPS3_CACHE_ERR, Cache); VECI(MIPS3_GEN, Exception); @@ -156,7 +156,7 @@ */ wtf->wtf_class = MIPS_R4000; wtf->wtf_type = "XZ"; - wtf->wtf_ntlbs = 2; /* XX Find the right value. */ + wtf->wtf_ntlbs = 16; /* XX Find the right value. */ wtf->wtf_fpu = "YC"; #if 0 unsigned long cpu_class; ==== //depot/projects/mips2/src/sys/mips/mips/exception.S#3 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/mips2/src/sys/mips/mips/exception.S#2 $ + * $P4: //depot/projects/mips2/src/sys/mips/mips/exception.S#3 $ */ #include "opt_ddb.h" @@ -213,13 +213,20 @@ */ /* VPN2 = (VA >> page_shift) / 2 */ - la k1, VM_MIN_ADDRESS + la k1, VM_MIN_KERNEL_ADDRESS subu k0, k0, k1 srl k0, PAGE_SHIFT + 1 + + /* + * XXXMIPS: + * offset == VPN2 * sizeof(pt_entry_t) * 2 + * dividing by 2 and multiplying by 2 we're + * getting even page number. MIPS TLB stuff + * works with couples of VP. + */ sll k0, 2 + 1 la k1, kptmap - /* * Find the page table, and index it. */ ==== //depot/projects/mips2/src/sys/mips/mips/machdep.c#15 (text+ko) ==== @@ -74,6 +74,7 @@ int cold = 1; int clocks_running; long realmem = 0; +extern int *end; static struct pcpu pcpu0; struct pcpu *pcpup = &pcpu0; @@ -90,10 +91,28 @@ void mips_init(void) { + int i; + printf("mips_init() executed!\n"); + /* + * "memsize" env variable is in megabytes. + * realmem is in pages. + */ + realmem = btoc(64 << 20); + + for(i = 0; i<10; i++) + phys_avail[i] = 0; + + /* phys_avail regions are in bytes */ + phys_avail[0] = MIPS_KSEG0_TO_PHYS((vm_offset_t)&end); + phys_avail[1] = ctob(realmem); + + physmem = realmem; + /* * This one is called from subr_param.c. */ + init_param1(); init_param2(physmem); /* * This one lies in cpu.c. @@ -102,14 +121,11 @@ /* * This is from pmap.c. */ -#if 0 pmap_bootstrap(); -#endif /* * XXXMIPS: Change this once I'll make sure pagetables are working * correctly. */ -#if 0 proc_linkup(&proc0, &ksegrp0, &thread0); thread0.td_kstack = kstack0; pcpu_init(pcpup, 0, sizeof(struct pcpu)); @@ -120,7 +136,6 @@ #ifdef DDB kdb_init(); #endif -#endif } void ==== //depot/projects/mips2/src/sys/mips/mips/pmap.c#5 (text+ko) ==== @@ -208,15 +208,11 @@ static pt_entry_t* pmap_pte(pmap_t pmap, vm_offset_t va) { -#ifdef notyet if (pmap != kernel_pmap) panic("non kernel pmap unsupported"); if (pmap == NULL || pmap->pm_lev1 == NULL) return NULL; return tlb_pte_find(pmap->pm_lev1, va); -#else - return NULL; -#endif } @@ -304,14 +300,13 @@ /* * Initialise TLB management, and have it allocate page tables. */ -#ifdef notyet tlb_bootstrap(realmem, pmap_steal_memory); -#endif for (i = 0; phys_avail[i+2]; i+= 2) /* find non-empty ones */; virtual_avail = VM_MIN_KERNEL_ADDRESS; - virtual_end = virtual_avail + (phys_avail[i+1] - phys_avail[0]); + virtual_end = VM_MAX_KERNEL_ADDRESS; + kernel_vm_end = virtual_end; /* @@ -370,7 +365,7 @@ { vm_page_t m; - m = PHYS_TO_VM_PAGE(MIPS_KSEG1_TO_PHYS((vm_offset_t)mem)); + m = PHYS_TO_VM_PAGE(MIPS_KSEG0_TO_PHYS((vm_offset_t)mem)); vm_page_lock_queues(); vm_page_free(m); vm_page_unlock_queues(); @@ -676,7 +671,16 @@ vm_offset_t pmap_map(vm_offset_t *virt, vm_offset_t start, vm_offset_t end, int prot) { - return MIPS_PHYS_TO_KSEG1(start); + vm_offset_t sva = *virt; + vm_offset_t va = sva; + while (start < end) { + pmap_kenter(va, start); + va += PAGE_SIZE; + start += PAGE_SIZE; + } + *virt = va; + + return (sva); } void @@ -726,7 +730,7 @@ vm_page_unlock_queues(); VM_OBJECT_UNLOCK(pmap->pm_pteobj); - pmap->pm_lev1 = (pt_entry_t*) MIPS_PHYS_TO_KSEG1(VM_PAGE_TO_PHYS(lev1pg)); + pmap->pm_lev1 = (pt_entry_t*) MIPS_PHYS_TO_KSEG0(VM_PAGE_TO_PHYS(lev1pg)); /* install self-referential address mapping entry (not PG_ASM) */ pmap->pm_lev1[PTLEV1I] = pmap_phys_to_pte(VM_PAGE_TO_PHYS(lev1pg)) @@ -1646,7 +1650,8 @@ void * pmap_mapdev(vm_offset_t pa, vm_size_t size) { - return (void *)MIPS_PHYS_TO_KSEG1(pa); + /* XXXMIPS: return (void *)MIPS_PHYS_TO_KSEG1(pa); */ + return 0; } void @@ -1735,10 +1740,7 @@ if (pmap->pm_asidgen != PCPU_GET(current_asidgen)) pmap_get_asid(pmap); -#ifdef notyet - /* XXX: we need mips32-friendly register macros */ mips_wr_entryhi(pmap->pm_asid); -#endif pmap_active = pmap; atomic_set_int(&pmap->pm_active, PCPU_GET(cpumask)); ==== //depot/projects/mips2/src/sys/mips/mips/support.S#5 (text+ko) ==== @@ -27,120 +27,300 @@ */ #include #include +#include __FBSDID("$FreeBSD$"); #include "assym.s" /* - * XXXMIPS: Implement these routines + * If an unaligned access occurs, someone is doing something wrong, don't + * fixup here, let things happen elsewhere, if at all. We shouldn't suck. + * We should also use the BD slot properly, so this whole file is covered + * by a .set noreorder */ -ENTRY(bcmp) - break -END(bcmp) + .set noreorder +/* + * The normal C bcopy(3), + * void bcopy(const void *src, void *dst, size_t len) + */ ENTRY(bcopy) - break + beqz a2, 2f + nop +1: subu a2, 1 + lbu t0, 0(a0) + addu a0, 1 + sb t0, 0(a1) + bnezl a2, 1b + addu a1, 1 +2: jr ra + nop END(bcopy) -ENTRY(bintr) - break -END(bintr) +/* XXXMIPS: test/optimize this function. + * The normal C bcmp(3), + * int bcmp(const void *b1, const void *b2, size_t len) + */ +ENTRY(bcmp) + beqz a2, 2f + li v0, 0 +1: subu a2, 1 + lbu t0, 0(a0) + lbu t1, 0(a1) + bne t0, t1, 3f + addu a0, 1 + addu a1, 1 + bnezl a2, 1b + nop +2: li v0, 1 +3: jr ra + nop +END(bcmp) -ENTRY(btrap) - break -END(btrap) - +/* + * The normal C bzero(3), + * void bzero(void *str, size_t len) + */ ENTRY(bzero) - break + beqz a1, 2f + nop +1: subu a1, 1 + sb zero, 0(a0) + bnezl a1, 1b + addu a0, 1 +2: jr ra + nop END(bzero) -ENTRY(eintr) - break -END(eintr) - -ENTRY(etrap) - break -END(etrap) - +/* + * The normal C memcpy(3), + * void *memcpy(void *dst, const void *src, size_t len) + */ ENTRY(memcpy) - break + beqz a2, 2f + move v0, a0 +1: subu a2, 1 + lbu t0, 0(a1) + addu a1, 1 + sb t0, 0(a0) + bnezl a2, 1b + addu a0, 1 +2: jr ra + nop END(memcpy) -ENTRY(memmove) - break -END(memmove) +/* + * Stubs for store(9) XXX + subyte() Stores a byte of data to the user-space address base. -ENTRY(memset) - break -END(memset) + susword() Stores a short word of data to the user-space address base. -ENTRY(user) - break -END(user) + suswintr() Stores a short word of data to the user-space address base. + This function is safe to call during an interrupt context. -ENTRY(setjmp) - break -END(setjmp) + suword() Stores a word of data to the user-space address base. + */ -ENTRY(longjmp) - break -END(longjmp) - +/* + * subyte(9) + * int subyte(void *addr, int byte) + */ ENTRY(subyte) - break + li v0, -1 + jr ra + nop END(subyte) +/* + * susword(9) + * int susword(void *addr, int shortword) + */ ENTRY(susword) - break + li v0, -1 + jr ra + nop END(susword) +/* + * suswintr(9) + * int suswintr(void *addr, int shortword) + */ ENTRY(suswintr) - break + li v0, -1 + jr ra + nop END(suswintr) +/* + * suword(9) + * int suword(void *addr, long word) + */ ENTRY(suword) - break + li v0, -1 + jr ra + nop END(suword) +/* + * suword32(9) + * int suword32(void *addr, int word) + */ ENTRY(suword32) - break + li v0, -1 + jr ra + nop END(suword32) +/* + * suword64(9) + * int suword64(void *addr, long word) + */ ENTRY(suword64) - break + li v0, -1 + jr ra + nop END(suword64) +/* + * Stubs for fetch(9) XXX + fubyte() Fetches a byte of data from the user-space address base. + + fusword() Fetches a short word of data from the user-space address + base. + + fuswintr() Fetches a short word of data from the user-space address + base. This function is safe to call during an interrupt con- + text. + + fuword() Fetches a word (long) of data from the user-space address base. + fuword32() Fetches a word (int, 32-bits) of data from the user-space address base. + */ + +/* + * fubyte(9) + * int fubyte(const void *addr) + */ ENTRY(fubyte) - break + li v0, -1 + jr ra + nop END(fubyte) +/* + * fusword(9) + * int fusword(const void *addr) + */ ENTRY(fusword) - break + li v0, -1 + jr ra + nop END(fusword) +/* + * fuswintr(9) + * int fuswintr(const void *addr) + */ ENTRY(fuswintr) - break + li v0, -1 + jr ra + nop END(fuswintr) +/* + * fuword(9) + * long fuword(const void *addr) + */ ENTRY(fuword) - break + li v0, -1 + jr ra + nop END(fuword) +/* + * fuword32(9) + * int fuword32(const void *addr) + */ ENTRY(fuword32) - break + li v0, -1 + jr ra + nop END(fuword32) +/* + * Stubs for copy(9) XXX + copyin() Copies len bytes of data from the user-space address uaddr + to the kernel-space address kaddr. + + copyout() Copies len bytes of data from the kernel-space address + kaddr to the user-space address uaddr. + */ +/* + * copyin(9) + * int copyin(const void *useraddr, void *kernaddr, size_t len) + */ ENTRY(copyin) - break + jr ra + nop END(copyin) +/* + * copyout(9) + * int copyout(const void *kernaddr, void *useraddr, size_t len) + */ ENTRY(copyout) - break + jr ra + nop END(copyout) +/* + * setjmp(9) + * int setjmp(jmp_buf) + */ +ENTRY(setjmp) + mfc0 t0, MIPS_COP_0_STATUS + sw s0, PCB_REG_S0(a0) + sw s1, PCB_REG_S1(a0) + sw s2, PCB_REG_S2(a0) + sw s3, PCB_REG_S3(a0) + sw s4, PCB_REG_S4(a0) + sw s5, PCB_REG_S5(a0) + sw s6, PCB_REG_S6(a0) + sw s7, PCB_REG_S7(a0) + sw s8, PCB_REG_S8(a0) + sw sp, PCB_REG_SP(a0) + sw t0, PCB_REG_SR(a0) + sw ra, PCB_REG_RA(a0) + li v0, 0 + jr ra + nop +END(setjmp) + +/* + * longjmp(9) + * void longjmp(jmp_buf, retval) + */ +ENTRY(longjmp) + lw s0, PCB_REG_S0(a0) + lw s1, PCB_REG_S1(a0) + lw s2, PCB_REG_S2(a0) + lw s3, PCB_REG_S3(a0) + lw s4, PCB_REG_S4(a0) + lw s5, PCB_REG_S5(a0) + lw s6, PCB_REG_S6(a0) + lw s7, PCB_REG_S7(a0) + lw s8, PCB_REG_S8(a0) + lw sp, PCB_REG_SP(a0) + lw ra, PCB_REG_RA(a0) + lw t0, PCB_REG_SR(a0) + mtc0 t0, MIPS_COP_0_STATUS + move v0, a1 + jr ra + nop +END(longjmp) + /* * XXXMIPS: ==== //depot/projects/mips2/src/sys/mips/mips/tlb.c#6 (text+ko) ==== @@ -83,8 +83,10 @@ /* * Set up KPT. + * XXXMIPS: Direct-mapped page table. Interim solution while getting + * new pmap on it's way. */ - kptsize = pages; + kptsize = (VM_MAX_KERNEL_ADDRESS - VM_MIN_KERNEL_ADDRESS) >> PAGE_SHIFT; kptmap = (pt_entry_t *) (*ptalloc)(kptsize * sizeof (pt_entry_t)); /* @@ -141,7 +143,7 @@ pmap, (u_long)va, (u_long)pa, (u_long)bits); *pte &= PG_G; *pte |= MIPS_PA_TO_PFN(pa) | bits; - *pte |= PG_C_CNC; /* Cacheable noncoherent. */ + *pte |= PG_C_UNCACHED; } void @@ -179,10 +181,7 @@ int i; va &= ~PAGE_MASK; -#ifdef CPU_MIPS64 ehi = MIPS_HI_ENTRY(va, /*asid*/0); -#endif - ehi = 0; mips_wr_entryhi(ehi); mips_tlbp(); i = mips_rd_index(); @@ -215,12 +214,8 @@ /* Bogus VPN2. */ ehi = MIPS_KSEG1_END + 2 * i * PAGE_SIZE; mips_wr_index(i); -#ifdef CPU_MIPS64 mips_wr_entrylo0(0); mips_wr_entrylo1(0); -#else - mips_wr_entrylow(0); -#endif mips_wr_entryhi(ehi); mips_tlbwi(); } @@ -232,10 +227,7 @@ int i; va &= ~PAGE_MASK; -#ifdef CPU_MIPS64 ehi = MIPS_HI_ENTRY(va, /*asid*/0); -#endif - ehi = 0; mips_wr_entryhi(ehi); mips_tlbp(); i = mips_rd_index(); ==== //depot/projects/mips2/src/sys/mips/mips/vm_machdep.c#3 (text+ko) ==== @@ -45,6 +45,10 @@ #include #include +#include +#include +#include + #include #include #include @@ -58,25 +62,25 @@ cpu_fork(register struct thread *td1, register struct proc *p2, struct thread *td2, int flags) { - + panic("%s", __func__); } void cpu_thread_swapin(struct thread *td) { - + panic("%s", __func__); } void cpu_thread_swapout(struct thread *td) { - + panic("%s", __func__); } void sf_buf_free(struct sf_buf *sf) { - + panic("%s", __func__); } #if 0 static void @@ -89,61 +93,68 @@ struct sf_buf * sf_buf_alloc(struct vm_page *m, int flags) { + panic("%s", __func__); return (NULL); } void cpu_set_upcall(struct thread *td, struct thread *td0) { - + panic("%s", __func__); } void cpu_set_upcall_kse(struct thread *td, void (*entry)(void *), void *arg, stack_t *stack) { - + panic("%s", __func__); } int cpu_set_user_tls(struct thread *td, void *tls_base) { + panic("%s", __func__); return (0); } void cpu_thread_exit(struct thread *td) { - + panic("%s", __func__); } void cpu_thread_setup(struct thread *td) { - + td->td_pcb = + (struct pcb *)(td->td_kstack + KSTACK_PAGES * PAGE_SIZE) - 1; + td->td_frame = (struct trapframe *)td->td_pcb - 1; + td->td_pcb->pcb_regs[PCB_REG_SR] = MIPS_SR_KX | MIPS_SR_INT_IE; + /* Stack pointer. */ + td->td_pcb->pcb_regs[PCB_REG_SP] = (register_t)_ALIGN(td->td_frame - 1); } void cpu_thread_clean(struct thread *td) { - + panic("%s", __func__); } void cpu_set_fork_handler(struct thread *td, void (*func)(void *), void *arg) { - + panic("%s", __func__); } void swi_vm(void *dummy) { - + panic("%s", __func__); } void cpu_exit(struct thread *td) { - + panic("%s", __func__); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:40:28 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E5C3A16A505; Fri, 14 Jul 2006 16:40:27 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8AB4B16A4DD for ; Fri, 14 Jul 2006 16:40:27 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D9EF43D45 for ; Fri, 14 Jul 2006 16:40:23 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EGeNjS006474 for ; Fri, 14 Jul 2006 16:40:23 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EGeMRN006471 for perforce@freebsd.org; Fri, 14 Jul 2006 16:40:22 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 16:40:22 GMT Message-Id: <200607141640.k6EGeMRN006471@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101572 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:40:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=101572 Change 101572 by jhb@jhb_mutex on 2006/07/14 16:39:44 Use a mutex to protect the list of config_intr_hook's. In order to handle the case where a driver might get an interrupt and ask to remove its handler while the previous handler in the list is running, fixup the next_entry handler if needed when a handler is disestablished. To make that work, use an sx lock to ensure only one thread can run the current list of hooks at a time. Affected files ... .. //depot/projects/smpng/sys/kern/subr_autoconf.c#7 edit Differences ... ==== //depot/projects/smpng/sys/kern/subr_autoconf.c#7 (text+ko) ==== @@ -39,7 +39,10 @@ #include #include +#include +#include #include +#include /* * Autoconfiguration subroutines. @@ -50,26 +53,49 @@ */ static TAILQ_HEAD(, intr_config_hook) intr_config_hook_list = TAILQ_HEAD_INITIALIZER(intr_config_hook_list); +static struct mtx intr_config_hook_lock; +MTX_SYSINIT(intr_config_hook, &intr_config_hook_lock, "intr config", MTX_DEF); +static struct sx intr_config_run_lock; +SX_SYSINIT(intr_config_run, &intr_config_run_lock, "intr config run"); +/* + * The current location in the list when a thread is executing the current + * hooks. If this hook is removed we advance it to the next entry. + */ +static struct intr_config_hook *next_entry; /* ARGSUSED */ static void run_interrupt_driven_config_hooks(void *dummy); + static void run_interrupt_driven_config_hooks(dummy) void *dummy; { - struct intr_config_hook *hook_entry, *next_entry; + struct intr_config_hook *hook_entry; + + /* + * Because of the special care for next_entry, we can only allow one + * thread at a time to run through the list. + */ + sx_xlock(&intr_config_run_lock); + mtx_lock(&intr_config_hook_lock); for (hook_entry = TAILQ_FIRST(&intr_config_hook_list); hook_entry != NULL; hook_entry = next_entry) { next_entry = TAILQ_NEXT(hook_entry, ich_links); + mtx_unlock(&intr_config_hook_lock); (*hook_entry->ich_func)(hook_entry->ich_arg); + mtx_lock(&intr_config_hook_lock); } while (!TAILQ_EMPTY(&intr_config_hook_list)) { - tsleep(&intr_config_hook_list, PCONFIG, "conifhk", 0); + msleep(&intr_config_hook_list, &intr_config_hook_lock, PCONFIG, + "conifhk", 0); } + mtx_unlock(&intr_config_hook_lock); + + sx_xunlock(&intr_config_run_lock); } SYSINIT(intr_config_hooks, SI_SUB_INT_CONFIG_HOOKS, SI_ORDER_FIRST, run_interrupt_driven_config_hooks, NULL) @@ -85,17 +111,18 @@ { struct intr_config_hook *hook_entry; - for (hook_entry = TAILQ_FIRST(&intr_config_hook_list); - hook_entry != NULL; - hook_entry = TAILQ_NEXT(hook_entry, ich_links)) + mtx_lock(&intr_config_hook_lock); + TAILQ_FOREACH(hook_entry, &intr_config_hook_list, ich_links) if (hook_entry == hook) break; if (hook_entry != NULL) { + mtx_unlock(&intr_config_hook_lock); printf("config_intrhook_establish: establishing an " "already established hook.\n"); return (1); } TAILQ_INSERT_TAIL(&intr_config_hook_list, hook, ich_links); + mtx_unlock(&intr_config_hook_lock); if (cold == 0) /* XXX Sufficient for modules loaded after initial config??? */ run_interrupt_driven_config_hooks(NULL); @@ -108,16 +135,23 @@ { struct intr_config_hook *hook_entry; - for (hook_entry = TAILQ_FIRST(&intr_config_hook_list); - hook_entry != NULL; - hook_entry = TAILQ_NEXT(hook_entry, ich_links)) + mtx_lock(&intr_config_hook_lock); + TAILQ_FOREACH(hook_entry, &intr_config_hook_list, ich_links) if (hook_entry == hook) break; if (hook_entry == NULL) panic("config_intrhook_disestablish: disestablishing an " "unestablished hook"); + /* + * If a thread is going to run this hook next, advance it's next + * pointer. + */ + if (hook == next_entry) + next_entry = TAILQ_NEXT(next_entry, ich_links); TAILQ_REMOVE(&intr_config_hook_list, hook, ich_links); + /* Wakeup anyone watching the list */ wakeup(&intr_config_hook_list); + mtx_unlock(&intr_config_hook_lock); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:42:26 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BF69616A526; Fri, 14 Jul 2006 16:42:26 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 8889D16A524 for ; Fri, 14 Jul 2006 16:42:26 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 379A243D45 for ; Fri, 14 Jul 2006 16:42:26 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EGgQEE006599 for ; Fri, 14 Jul 2006 16:42:26 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EGgQRm006596 for perforce@freebsd.org; Fri, 14 Jul 2006 16:42:26 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 16:42:26 GMT Message-Id: <200607141642.k6EGgQRm006596@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101573 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:42:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=101573 Change 101573 by bms@bms_montagne on 2006/07/14 16:41:35 add timecounter code Affected files ... .. //depot/projects/mips2/src/sys/conf/files.mips#12 edit Differences ... ==== //depot/projects/mips2/src/sys/conf/files.mips#12 (text+ko) ==== @@ -19,6 +19,7 @@ mips/mips/support.S standard mips/mips/swtch.S standard mips/mips/sys_machdep.c standard +mips/mips/tick.c standard mips/mips/tlb.c standard mips/mips/trap.c standard mips/mips/uio_machdep.c standard From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:42:56 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EFF2016A4E5; Fri, 14 Jul 2006 16:42:55 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 9E19A16A4E1 for ; Fri, 14 Jul 2006 16:42:55 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF9F743D45 for ; Fri, 14 Jul 2006 16:42:54 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k6EGgqMX014388 for ; Fri, 14 Jul 2006 12:42:53 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Perforce Change Reviews Date: Fri, 14 Jul 2006 12:05:02 -0400 User-Agent: KMail/1.9.1 References: <200607141601.k6EG1TJf002705@repoman.freebsd.org> In-Reply-To: <200607141601.k6EG1TJf002705@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607141205.02412.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Fri, 14 Jul 2006 12:42:53 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1599/Fri Jul 14 01:35:31 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Subject: Re: PERFORCE change 101567 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:42:56 -0000 On Friday 14 July 2006 12:01, John Baldwin wrote: > http://perforce.freebsd.org/chv.cgi?CH=101567 > > Change 101567 by jhb@jhb_mutex on 2006/07/14 16:01:09 > > Use change_dir() in fchdir() instead of duplicating the logic. This submit also changes svr4_sys_fchroot() to use change_dir() and change_root() and add conditional VFS Giant locking and mark it MPSAFE. It also adds audit stuff and I need to get Robert to review it. > Affected files ... > > .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#50 edit > .. //depot/projects/smpng/sys/compat/svr4/syscalls.master#18 edit > .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#111 edit > > Differences ... > > ==== //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#50 (text+ko) ==== > > @@ -606,34 +606,31 @@ > struct svr4_sys_fchroot_args *uap; > { > struct filedesc *fdp = td->td_proc->p_fd; > - struct vnode *vp, *vpold; > + struct vnode *vp; > struct file *fp; > - int error; > + int error, vfslocked; > > if ((error = suser(td)) != 0) > return error; > + AUDIT_ARG(fd, uap->fd); > if ((error = getvnode(fdp, uap->fd, &fp)) != 0) > return error; > vp = fp->f_vnode; > + VREF(vp); > + fdrop(fp, td); > + vfslocked = VFS_LOCK_GIANT(vp->v_mount); > vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); > - if (vp->v_type != VDIR) > - error = ENOTDIR; > - else > - error = VOP_ACCESS(vp, VEXEC, td->td_ucred, td); > + AUDIT_ARG(vnode, vp, ARG_VNODE1); > + error = change_dir(vp, td); > +#ifdef MAC > + if (error == 0) > + error = mac_check_vnode_chroot(td->td_ucred, vp); > +#endif > VOP_UNLOCK(vp, 0, td); > - if (error) { > - fdrop(fp, td); > - return error; > - } > - VREF(vp); > - FILEDESC_LOCK_FAST(fdp); > - vpold = fdp->fd_rdir; > - fdp->fd_rdir = vp; > - FILEDESC_UNLOCK_FAST(fdp); > - if (vpold != NULL) > - vrele(vpold); > - fdrop(fp, td); > - return 0; > + if (error == 0) > + error = change_root(vp, td); > + VFS_UNLOCK_GIANT(vfslocked); > + return (error); > } > > > > ==== //depot/projects/smpng/sys/compat/svr4/syscalls.master#18 (text+ko) ==== > > @@ -250,7 +250,7 @@ > 150 AUE_NULL UNIMPL notused > 151 AUE_NULL UNIMPL notused > 152 AUE_NULL UNIMPL modctl > -153 AUE_NULL STD { int svr4_sys_fchroot(int fd); } > +153 AUE_NULL MSTD { int svr4_sys_fchroot(int fd); } > 154 AUE_NULL MSTD { int svr4_sys_utimes(char *path, \ > struct timeval *tptr); } > 155 AUE_NULL MSTD { int svr4_sys_vhangup(void); } > > ==== //depot/projects/smpng/sys/kern/vfs_syscalls.c#111 (text+ko) ==== > > @@ -697,14 +697,7 @@ > vfslocked = VFS_LOCK_GIANT(vp->v_mount); > vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); > AUDIT_ARG(vnode, vp, ARG_VNODE1); > - if (vp->v_type != VDIR) > - error = ENOTDIR; > -#ifdef MAC > - else if ((error = mac_check_vnode_chdir(td->td_ucred, vp)) != 0) { > - } > -#endif > - else > - error = VOP_ACCESS(vp, VEXEC, td->td_ucred, td); > + error = change_dir(vp, td); > while (!error && (mp = vp->v_mountedhere) != NULL) { > int tvfslocked; > if (vfs_busy(mp, 0, 0, td)) > -- John Baldwin From owner-p4-projects@FreeBSD.ORG Fri Jul 14 16:43:29 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 01B8116A4E1; Fri, 14 Jul 2006 16:43:29 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A450C16A4E0 for ; Fri, 14 Jul 2006 16:43:28 +0000 (UTC) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5AC5C43D45 for ; Fri, 14 Jul 2006 16:43:28 +0000 (GMT) (envelope-from bms@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EGhS0t006643 for ; Fri, 14 Jul 2006 16:43:28 GMT (envelope-from bms@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EGhRgm006640 for perforce@freebsd.org; Fri, 14 Jul 2006 16:43:27 GMT (envelope-from bms@freebsd.org) Date: Fri, 14 Jul 2006 16:43:27 GMT Message-Id: <200607141643.k6EGhRgm006640@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bms@freebsd.org using -f From: Bruce M Simpson To: Perforce Change Reviews Cc: Subject: PERFORCE change 101574 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 16:43:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=101574 Change 101574 by bms@bms_montagne on 2006/07/14 16:42:27 The instructions referencing k0 work for -march=mips32 (the default). Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/locore.S#11 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/locore.S#11 (text+ko) ==== @@ -92,19 +92,13 @@ jal platform_start nop - /* - * XXXMIPS: invalid opcodes here. - */ -#if 0 lw k0, pcpup lw k0, PC_CURTHREAD(k0) lw k0, TD_PCB(k0) lw k0, PCB_REG_SP(k0) -#endif /* Start MI things rolling. */ jal mi_startup nop /* NOTREACHED */ -END(start) From owner-p4-projects@FreeBSD.ORG Fri Jul 14 17:13:06 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1FEEB16A4E6; Fri, 14 Jul 2006 17:13:06 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 D73C016A4E2 for ; Fri, 14 Jul 2006 17:13:05 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A4D3043D5A for ; Fri, 14 Jul 2006 17:13:05 +0000 (GMT) (envelope-from gonzo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EHD594017102 for ; Fri, 14 Jul 2006 17:13:05 GMT (envelope-from gonzo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EHD5lO017099 for perforce@freebsd.org; Fri, 14 Jul 2006 17:13:05 GMT (envelope-from gonzo@FreeBSD.org) Date: Fri, 14 Jul 2006 17:13:05 GMT Message-Id: <200607141713.k6EHD5lO017099@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gonzo@FreeBSD.org using -f From: Oleksandr Tymoshenko To: Perforce Change Reviews Cc: Subject: PERFORCE change 101575 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 17:13:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=101575 Change 101575 by gonzo@gonzo_hq on 2006/07/14 17:12:20 o Uncomment TLB initialization. Affected files ... .. //depot/projects/mips2/src/sys/mips/mips/cpu.c#10 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/mips/cpu.c#10 (text+ko) ==== @@ -222,24 +222,18 @@ /* XXX PCPU */ mips_wtf(&wtf); -#if 0 mips_num_tlb_entries = wtf.wtf_ntlbs; -#endif mips_config_cache(); -#if 0 tlb_invalidate_all(); -#endif mips_vector_init(); /* * XXXMIPS: Leave touching cache until we decide, how we're going to * manage differences between icache and dcache handling between * processors. */ -#if 0 mips_icache_sync_all(); mips_dcache_wbinv_all(); -#endif } void From owner-p4-projects@FreeBSD.ORG Fri Jul 14 18:49:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 210A216A4E1; Fri, 14 Jul 2006 18:49:17 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 E781416A4DE for ; Fri, 14 Jul 2006 18:49:16 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9BF5C43D4C for ; Fri, 14 Jul 2006 18:49:16 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EInG7w025446 for ; Fri, 14 Jul 2006 18:49:16 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EInGRL025443 for perforce@freebsd.org; Fri, 14 Jul 2006 18:49:16 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 18:49:16 GMT Message-Id: <200607141849.k6EInGRL025443@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101582 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 18:49:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=101582 Change 101582 by jhb@jhb_mutex on 2006/07/14 18:48:39 Assume that the only entry that's going to be removed while running the list of handlers is the current one. Affected files ... .. //depot/projects/smpng/sys/kern/subr_autoconf.c#8 edit Differences ... ==== //depot/projects/smpng/sys/kern/subr_autoconf.c#8 (text+ko) ==== @@ -55,14 +55,6 @@ TAILQ_HEAD_INITIALIZER(intr_config_hook_list); static struct mtx intr_config_hook_lock; MTX_SYSINIT(intr_config_hook, &intr_config_hook_lock, "intr config", MTX_DEF); -static struct sx intr_config_run_lock; -SX_SYSINIT(intr_config_run, &intr_config_run_lock, "intr config run"); - -/* - * The current location in the list when a thread is executing the current - * hooks. If this hook is removed we advance it to the next entry. - */ -static struct intr_config_hook *next_entry; /* ARGSUSED */ static void run_interrupt_driven_config_hooks(void *dummy); @@ -71,18 +63,11 @@ run_interrupt_driven_config_hooks(dummy) void *dummy; { - struct intr_config_hook *hook_entry; + struct intr_config_hook *hook_entry, *next_entry; - /* - * Because of the special care for next_entry, we can only allow one - * thread at a time to run through the list. - */ - sx_xlock(&intr_config_run_lock); - mtx_lock(&intr_config_hook_lock); - for (hook_entry = TAILQ_FIRST(&intr_config_hook_list); - hook_entry != NULL; - hook_entry = next_entry) { + TAILQ_FOREACH_SAFE(hook_entry, &intr_config_hook_list, ich_links, + next_entry) { next_entry = TAILQ_NEXT(hook_entry, ich_links); mtx_unlock(&intr_config_hook_lock); (*hook_entry->ich_func)(hook_entry->ich_arg); @@ -94,8 +79,6 @@ "conifhk", 0); } mtx_unlock(&intr_config_hook_lock); - - sx_xunlock(&intr_config_run_lock); } SYSINIT(intr_config_hooks, SI_SUB_INT_CONFIG_HOOKS, SI_ORDER_FIRST, run_interrupt_driven_config_hooks, NULL) @@ -143,12 +126,6 @@ panic("config_intrhook_disestablish: disestablishing an " "unestablished hook"); - /* - * If a thread is going to run this hook next, advance it's next - * pointer. - */ - if (hook == next_entry) - next_entry = TAILQ_NEXT(next_entry, ich_links); TAILQ_REMOVE(&intr_config_hook_list, hook, ich_links); /* Wakeup anyone watching the list */ From owner-p4-projects@FreeBSD.ORG Fri Jul 14 18:50:18 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D0E7916A4E0; Fri, 14 Jul 2006 18:50:18 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 AB6FE16A4DA for ; Fri, 14 Jul 2006 18:50:18 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6579343D46 for ; Fri, 14 Jul 2006 18:50:18 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EIoIWd025534 for ; Fri, 14 Jul 2006 18:50:18 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EIoIWI025531 for perforce@freebsd.org; Fri, 14 Jul 2006 18:50:18 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 18:50:18 GMT Message-Id: <200607141850.k6EIoIWI025531@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101583 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 18:50:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=101583 Change 101583 by jhb@jhb_mutex on 2006/07/14 18:49:51 Bah. Affected files ... .. //depot/projects/smpng/sys/kern/subr_autoconf.c#9 edit Differences ... ==== //depot/projects/smpng/sys/kern/subr_autoconf.c#9 (text+ko) ==== @@ -42,7 +42,6 @@ #include #include #include -#include /* * Autoconfiguration subroutines. From owner-p4-projects@FreeBSD.ORG Fri Jul 14 19:20:39 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E6B6416A4E7; Fri, 14 Jul 2006 19:20:38 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C4E8616A4DE; Fri, 14 Jul 2006 19:20:38 +0000 (UTC) (envelope-from jb@what-creek.com) Received: from what-creek.com (what-creek.com [66.111.37.70]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5EF8E43D46; Fri, 14 Jul 2006 19:20:38 +0000 (GMT) (envelope-from jb@what-creek.com) Received: by what-creek.com (Postfix, from userid 102) id 9AB1E78C1D; Fri, 14 Jul 2006 19:20:35 +0000 (GMT) Date: Fri, 14 Jul 2006 19:20:35 +0000 From: John Birrell To: John Baldwin Message-ID: <20060714192035.GA10850@what-creek.com> References: <200607140506.k6E56odA034076@repoman.freebsd.org> <200607140959.56995.jhb@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200607140959.56995.jhb@freebsd.org> User-Agent: Mutt/1.4.2.1i Cc: Perforce Change Reviews Subject: Re: PERFORCE change 101512 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 19:20:39 -0000 On Fri, Jul 14, 2006 at 09:59:56AM -0400, John Baldwin wrote: > On Friday 14 July 2006 01:06, John Birrell wrote: > > http://perforce.freebsd.org/chv.cgi?CH=101512 > > > > Change 101512 by jb@jb_freebsd2 on 2006/07/14 05:06:23 > > > > Use the proper way to tell gcc to link threaded. > > > > Note that there isn't a _single_ place in the FreeBSD source tree > > where threaded programs are built properly. No wonder that the > > ports people often get it wrong too! > > That's because the proper way currently defined in is "-lpthread" rather > than "-pthread" :-P Not according to the gcc developers. This was an issue discussed back when deischen proposed to get rid of the -pthread option. It was strongly opposed bu the gcc people because they wanted -pthread to be used so that gcc would just DTRT. There have been so many instances of ople attempting to mix the thread libraries over the years, causing strange link senarios -- none of which would have happeneded if -pthread had been used. -- John Birrell From owner-p4-projects@FreeBSD.ORG Fri Jul 14 19:39:31 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 677A716A4E2; Fri, 14 Jul 2006 19:39:31 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 3E23216A4DE for ; Fri, 14 Jul 2006 19:39:31 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EB43F43D49 for ; Fri, 14 Jul 2006 19:39:30 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EJdUAP029081 for ; Fri, 14 Jul 2006 19:39:30 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EJdUtp029077 for perforce@freebsd.org; Fri, 14 Jul 2006 19:39:30 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 19:39:30 GMT Message-Id: <200607141939.k6EJdUtp029077@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101588 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 19:39:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=101588 Change 101588 by jb@jb_freebsd2 on 2006/07/14 19:39:26 Add the pthread subs if not building threads into libc. Affected files ... .. //depot/projects/dtrace/src/lib/libc/gen/Makefile.inc#4 edit Differences ... ==== //depot/projects/dtrace/src/lib/libc/gen/Makefile.inc#4 (text+ko) ==== @@ -34,7 +34,7 @@ wordexp.c .if ${MK_LIBC_THREADS} == "no" -SRCS+= _spinlock_stub.c +SRCS+= _pthread_stubs.c _spinlock_stub.c .endif SYM_MAPS+=${.CURDIR}/gen/Symbol.map From owner-p4-projects@FreeBSD.ORG Fri Jul 14 19:44:38 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7AE8216A4E1; Fri, 14 Jul 2006 19:44:38 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 22F2516A4DF for ; Fri, 14 Jul 2006 19:44:38 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C834743D49 for ; Fri, 14 Jul 2006 19:44:37 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EJibmv029389 for ; Fri, 14 Jul 2006 19:44:37 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EJibDM029386 for perforce@freebsd.org; Fri, 14 Jul 2006 19:44:37 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 19:44:37 GMT Message-Id: <200607141944.k6EJibDM029386@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101589 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 19:44:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=101589 Change 101589 by jhb@jhb_mutex on 2006/07/14 19:44:24 Make svr4_sys_waitsys() suck less. In the case that NOWAIT is clear and either WEXITED or WTRAPPED is set, call kern_wait() to do all the work. Handle the other cases directly, but now we don't have to duplicate the code to harvest zombies, so the code duplication is far less. Also, mark it MPSAFE now. Affected files ... .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#53 edit .. //depot/projects/smpng/sys/compat/svr4/syscalls.master#20 edit .. //depot/projects/smpng/sys/notes#82 edit Differences ... ==== //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#53 (text+ko) ==== @@ -104,7 +104,7 @@ svr4_mode_t, svr4_dev_t); static __inline clock_t timeval_to_clock_t(struct timeval *); -static int svr4_setinfo (struct proc *, int, svr4_siginfo_t *); +static int svr4_setinfo (pid_t , struct rusage *, int, svr4_siginfo_t *); struct svr4_hrtcntl_args; static int svr4_hrtcntl (struct thread *, struct svr4_hrtcntl_args *, @@ -1078,12 +1078,12 @@ static int -svr4_setinfo(p, st, s) - struct proc *p; +svr4_setinfo(pid, ru, st, s) + pid_t pid; + struct rusage *ru; int st; svr4_siginfo_t *s; { - struct timeval utime, stime; svr4_siginfo_t i; int sig; @@ -1092,13 +1092,10 @@ i.svr4_si_signo = SVR4_SIGCHLD; i.svr4_si_errno = 0; /* XXX? */ - if (p) { - i.svr4_si_pid = p->p_pid; - PROC_LOCK(p); - calcru(p, &utime, &stime); - PROC_UNLOCK(p); - i.svr4_si_stime = stime.tv_sec; - i.svr4_si_utime = utime.tv_sec; + i.svr4_si_pid = pid; + if (ru) { + i.svr4_si_stime = ru->ru_stime.tv_sec; + i.svr4_si_utime = ru->ru_utime.tv_sec; } if (WIFEXITED(st)) { @@ -1137,188 +1134,184 @@ struct thread *td; struct svr4_sys_waitsys_args *uap; { - int nfound; + struct rusage ru; + pid_t pid; + int nfound, status; int error, *retval = td->td_retval; struct proc *p, *q, *t; - p = td->td_proc; + DPRINTF(("waitsys(%d, %d, %p, %x)\n", + uap->grp, uap->id, + uap->info, uap->options)); + + q = td->td_proc; switch (uap->grp) { - case SVR4_P_PID: + case SVR4_P_PID: + pid = uap->id; break; case SVR4_P_PGID: PROC_LOCK(p); - uap->id = -p->p_pgid; + pid = -q->p_pgid; PROC_UNLOCK(p); break; case SVR4_P_ALL: - uap->id = WAIT_ANY; + pid = WAIT_ANY; break; default: return EINVAL; } - DPRINTF(("waitsys(%d, %d, %p, %x)\n", - uap->grp, uap->id, - uap->info, uap->options)); + /* Hand off the easy cases to kern_wait(). */ + if (!(uap->options & (SVR4_WNOWAIT)) && + (uap->options & (SVR4_WEXITED | SVR4_WTRAPPED))) { + int options; + + options = 0; + if (uap->options & SVR4_WSTOPPED) + options |= WUNTRACED; + if (uap->options & SVR4_WCONTINUED) + options |= WCONTINUED; + if (uap->options & SVR4_WNOHANG) + options |= WNOHANG; + + error = kern_wait(td, pid, &status, options, &ru); + if (error) + return (error); + if (uap->options & SVR4_WNOHANG && *retval == 0) + error = svr4_setinfo(*retval, NULL, 0, uap->info); + else + error = svr4_setinfo(*retval, &ru, status, uap->info); + *retval = 0; + return (error); + } + /* + * Ok, handle the weird cases. Either WNOWAIT is set (meaning we + * just want to see if there is a process to harvest, we dont' + * want to actually harvest it), or WEXIT and WTRAPPED are clear + * meaning we want to ignore zombies. Either way, we don't have + * to handle harvesting zombies here. We do have to duplicate the + * other portions of kern_wait() though, especially for the + * WCONTINUED and WSTOPPED. + */ loop: nfound = 0; sx_slock(&proctree_lock); - LIST_FOREACH(q, &p->p_children, p_sibling) { - PROC_LOCK(q); - if (uap->id != WAIT_ANY && - q->p_pid != uap->id && - q->p_pgid != -uap->id) { + LIST_FOREACH(p, &q->p_children, p_sibling) { + PROC_LOCK(p); + if (pid != WAIT_ANY && + p->p_pid != pid && p->p_pgid != -pid) { PROC_UNLOCK(q); - DPRINTF(("pid %d pgid %d != %d\n", q->p_pid, - q->p_pgid, uap->id)); + DPRINTF(("pid %d pgid %d != %d\n", p->p_pid, + p->p_pgid, pid)); + continue; + } + if (p_canwait(td, p)) { + PROC_UNLOCK(p); continue; } + nfound++; - if ((q->p_state == PRS_ZOMBIE) && + + /* + * See if we have a zombie. If so, WNOWAIT should be set, + * as otherwise we should have called kern_wait() up above. + */ + if ((p->p_state == PRS_ZOMBIE) && ((uap->options & (SVR4_WEXITED|SVR4_WTRAPPED)))) { - PROC_UNLOCK(q); + KASSERT(uap->options & SVR4_WNOWAIT, + ("WNOWAIT is clear")); + + /* Found a zombie, so cache info in local variables. */ + pid = p->p_pid; + status = p->p_xstat; + ru = p->p_ru; + calcru(p, &ru->ru_utime, &ru->ru_stime); + PROC_UNLOCK(p); sx_sunlock(&proctree_lock); + + /* Copy the info out to userland. */ *retval = 0; - DPRINTF(("found %d\n", q->p_pid)); - error = svr4_setinfo(q, q->p_xstat, uap->info); - if (error != 0) - return error; + DPRINTF(("found %d\n", pid)); + return (svr4_setinfo(pid, &ru, status, uap->info)); + } + /* + * See if we have a stopped or continued process. + * XXX: This duplicates the same code in kern_wait(). + */ + mtx_lock_spin(&sched_lock); + if ((p->p_flag & P_STOPPED_SIG) && + (p->p_suspcount == p->p_numthreads) && + (p->p_flag & P_WAITED) == 0 && + (p->p_flag & P_TRACED || uap->options & SVR4_WSTOPPED)) { + mtx_unlock_spin(&sched_lock); + if (((uap->options & SVR4_WNOWAIT)) == 0) + p->p_flag |= P_WAITED; + sx_sunlock(&proctree_lock); + pid = p->p_pid; + status = W_STOPCODE(p->p_xstat); + ru = p->p_ru; + calcru(p, &ru->ru_utime, &ru->ru_stime); + PROC_UNLOCK(p); - if ((uap->options & SVR4_WNOWAIT)) { - DPRINTF(("Don't wait\n")); - return 0; + if (((uap->options & SVR4_WNOWAIT)) == 0) { + PROC_LOCK(q); + sigqueue_take(p->p_ksi); + PROC_UNLOCK(q); } - /* - * If we got the child via ptrace(2) or procfs, and - * the parent is different (meaning the process was - * attached, rather than run as a child), then we need - * to give it back to the old parent, and send the - * parent a SIGCHLD. The rest of the cleanup will be - * done when the old parent waits on the child. - */ - sx_xlock(&proctree_lock); - PROC_LOCK(q); - if (q->p_flag & P_TRACED) { - if (q->p_oppid != q->p_pptr->p_pid) { - PROC_UNLOCK(q); - t = pfind(q->p_oppid); - if (t == NULL) { - t = initproc; - PROC_LOCK(initproc); - } - PROC_LOCK(q); - proc_reparent(q, t); - q->p_oppid = 0; - q->p_flag &= ~(P_TRACED | P_WAITED); - PROC_UNLOCK(q); - psignal(t, SIGCHLD); - wakeup(t); - PROC_UNLOCK(t); - sx_xunlock(&proctree_lock); - return 0; - } + *retval = 0; + DPRINTF(("jobcontrol %d\n", pid)); + return (svr4_setinfo(pid, &ru, status, uap->info)); + } + mtx_unlock_spin(&sched_lock); + if (uap->options & SVR4_WCONTINUED && + (p->p_flag & P_CONTINUED)) { + sx_sunlock(&proctree_lock); + if (((uap->options & SVR4_WNOWAIT)) == 0) + p->p_flag &= ~P_CONTINUED; + pid = p->p_pid; + ru = p->p_ru; + status = SIGCONT; + calcru(p, &ru->ru_utime, &ru->ru_stime); + PROC_UNLOCK(p); + + if (((uap->options & SVR4_WNOWAIT)) == 0) { + PROC_LOCK(q); + sigqueue_take(p->p_ksi); + PROC_UNLOCK(q); } - PROC_UNLOCK(q); - sx_xunlock(&proctree_lock); - q->p_xstat = 0; - ruadd(&p->p_stats->p_cru, &p->p_crux, q->p_ru, - &q->p_rux); - FREE(q->p_ru, M_ZOMBIE); - q->p_ru = NULL; - - /* - * Decrement the count of procs running with this uid. - */ - (void)chgproccnt(q->p_ucred->cr_ruidinfo, -1, 0); - - /* - * Release reference to text vnode. - */ - if (q->p_textvp) - vrele(q->p_textvp); - - /* - * Free up credentials. - */ - crfree(q->p_ucred); - q->p_ucred = NULL; - - /* - * Remove unused arguments - */ - pargs_drop(q->p_args); - PROC_UNLOCK(q); - /* - * Finally finished with old proc entry. - * Unlink it from its process group and free it. - */ - sx_xlock(&proctree_lock); - leavepgrp(q); - - sx_xlock(&allproc_lock); - LIST_REMOVE(q, p_list); /* off zombproc */ - sx_xunlock(&allproc_lock); - - LIST_REMOVE(q, p_sibling); - sx_xunlock(&proctree_lock); - - PROC_LOCK(q); - sigacts_free(q->p_sigacts); - q->p_sigacts = NULL; - PROC_UNLOCK(q); - - /* - * Give machine-dependent layer a chance - * to free anything that cpu_exit couldn't - * release while still running in process context. - */ - vm_waitproc(q); -#if defined(__NetBSD__) - pool_put(&proc_pool, q); -#endif -#ifdef __FreeBSD__ - mtx_destroy(&q->p_mtx); -#ifdef MAC - mac_destroy_proc(q); -#endif - uma_zfree(proc_zone, q); -#endif - nprocs--; - return 0; - } - /* XXXKSE this needs clarification */ - if (P_SHOULDSTOP(q) && ((q->p_flag & P_WAITED) == 0) && - (q->p_flag & P_TRACED || - (uap->options & (SVR4_WSTOPPED|SVR4_WCONTINUED)))) { - DPRINTF(("jobcontrol %d\n", q->p_pid)); - if (((uap->options & SVR4_WNOWAIT)) == 0) - q->p_flag |= P_WAITED; - PROC_UNLOCK(q); *retval = 0; - return svr4_setinfo(q, W_STOPCODE(q->p_xstat), - uap->info); + DPRINTF(("jobcontrol %d\n", pid)); + return (svr4_setinfo(pid, &ru, status, uap->info)); } - PROC_UNLOCK(q); + PROC_UNLOCK(p); } - if (nfound == 0) - return ECHILD; + if (nfound == 0) { + sx_sunlock(&proctree_lock); + return (ECHILD); + } if (uap->options & SVR4_WNOHANG) { + sx_sunlock(&proctree_lock); *retval = 0; - if ((error = svr4_setinfo(NULL, 0, uap->info)) != 0) - return error; - return 0; + return (svr4_setinfo(0, NULL, 0, uap->info)); } - if ((error = tsleep(p, PWAIT | PCATCH, "svr4_wait", 0)) != 0) + PROC_LOCK(q); + if (q->p_flag & P_STATCHILD) { + q->p_flag &= ~P_STATCHILD; + error = 0; + } else + error = msleep(q, &q->p_mtx, PWAIT | PCATCH, "svr4_wait", 0); + PROC_UNLOCK(q); + if (error) return error; goto loop; } ==== //depot/projects/smpng/sys/compat/svr4/syscalls.master#20 (text+ko) ==== @@ -183,7 +183,7 @@ struct svr4_statvfs *fs); } 105 AUE_NULL UNIMPL whoknows 106 AUE_NULL UNIMPL nfssvc -107 AUE_NULL STD { int svr4_sys_waitsys(int grp, int id, \ +107 AUE_NULL MSTD { int svr4_sys_waitsys(int grp, int id, \ union svr4_siginfo *info, int options); } 108 AUE_NULL UNIMPL sigsendsys 109 AUE_NULL MSTD { int svr4_sys_hrtsys(int cmd, int fun, \ ==== //depot/projects/smpng/sys/notes#82 (text+ko) ==== @@ -87,7 +87,7 @@ - svr4_sys_ioctl() - svr4_sys_getmsg() - svr4_sys_putmsg() - - svr4_sys_waitsys() + + svr4_sys_waitsys() + svr4_sys_fchroot() + svr4_sys_resolvepath() + linux From owner-p4-projects@FreeBSD.ORG Fri Jul 14 19:52:48 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 61FE716A4DE; Fri, 14 Jul 2006 19:52:48 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 3B3A616A4DA for ; Fri, 14 Jul 2006 19:52:48 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0A20B43D45 for ; Fri, 14 Jul 2006 19:52:48 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EJql05029832 for ; Fri, 14 Jul 2006 19:52:47 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EJqlSJ029829 for perforce@freebsd.org; Fri, 14 Jul 2006 19:52:47 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 19:52:47 GMT Message-Id: <200607141952.k6EJqlSJ029829@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101590 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 19:52:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=101590 Change 101590 by jhb@jhb_mutex on 2006/07/14 19:52:30 Use TAILQ_HEAD_INITIALIZER() to avoid pain. Affected files ... .. //depot/projects/smpng/sys/dev/streams/streams.c#23 edit Differences ... ==== //depot/projects/smpng/sys/dev/streams/streams.c#23 (text+ko) ==== @@ -68,11 +68,8 @@ static int svr4_ptm_alloc(struct thread *); static d_open_t streamsopen; -struct svr4_sockcache_head svr4_head; +struct svr4_sockcache_head svr4_head = TAILQ_HEAD_INITIALIZER(svr4_head); -/* Initialization flag (set/queried by svr4_mod LKM) */ -int svr4_str_initialized = 0; - /* * Device minor numbers */ @@ -390,14 +387,6 @@ struct svr4_sockcache_entry *e; void *cookie = ((struct socket *)fp->f_data)->so_emuldata; - while (svr4_str_initialized != 2) { - if (atomic_cmpset_acq_int(&svr4_str_initialized, 0, 1)) { - TAILQ_INIT(&svr4_head); - atomic_store_rel_int(&svr4_str_initialized, 2); - } - return; - } - TAILQ_FOREACH(e, &svr4_head, entries) if (e->p == p && e->cookie == cookie) { TAILQ_REMOVE(&svr4_head, e, entries); From owner-p4-projects@FreeBSD.ORG Fri Jul 14 19:55:53 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0945F16A4E6; Fri, 14 Jul 2006 19:55:53 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A14BD16A4E2 for ; Fri, 14 Jul 2006 19:55:52 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5B5A243D45 for ; Fri, 14 Jul 2006 19:55:52 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EJtqeK029986 for ; Fri, 14 Jul 2006 19:55:52 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EJtqTr029983 for perforce@freebsd.org; Fri, 14 Jul 2006 19:55:52 GMT (envelope-from jhb@freebsd.org) Date: Fri, 14 Jul 2006 19:55:52 GMT Message-Id: <200607141955.k6EJtqTr029983@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 101591 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 19:55:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=101591 Change 101591 by jhb@jhb_mutex on 2006/07/14 19:55:09 Don't need this. Affected files ... .. //depot/projects/smpng/sys/dev/streams/streams.c#24 edit Differences ... ==== //depot/projects/smpng/sys/dev/streams/streams.c#24 (text+ko) ==== @@ -195,12 +195,9 @@ int family; struct proc *p = td->td_proc; - PROC_LOCK(p); if (td->td_dupfd >= 0) { - PROC_UNLOCK(p); return ENODEV; } - PROC_UNLOCK(p); switch (minor(dev)) { case dev_udp: From owner-p4-projects@FreeBSD.ORG Fri Jul 14 20:12:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3473016A4E1; Fri, 14 Jul 2006 20:12:13 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 EC82016A4DF for ; Fri, 14 Jul 2006 20:12:12 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BCE4443D46 for ; Fri, 14 Jul 2006 20:12:12 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EKCCjB036856 for ; Fri, 14 Jul 2006 20:12:12 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EKCCco036853 for perforce@freebsd.org; Fri, 14 Jul 2006 20:12:12 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 20:12:12 GMT Message-Id: <200607142012.k6EKCCco036853@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101592 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 20:12:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=101592 Change 101592 by jb@jb_freebsd2 on 2006/07/14 20:11:35 Only define LIBPTHREAD when not building threads into libc. Affected files ... .. //depot/projects/dtrace/src/share/mk/bsd.libnames.mk#3 edit Differences ... ==== //depot/projects/dtrace/src/share/mk/bsd.libnames.mk#3 (text+ko) ==== @@ -119,7 +119,11 @@ LIBPANEL?= ${DESTDIR}${LIBDIR}/libpanel.a LIBPCAP?= ${DESTDIR}${LIBDIR}/libpcap.a LIBPMC?= ${DESTDIR}${LIBDIR}/libpmc.a +.if ${MK_LIBC_THREADS} != "no" +LIBPTHREAD?= +.else LIBPTHREAD?= ${DESTDIR}${LIBDIR}/libpthread.a +.endif LIBRADIUS?= ${DESTDIR}${LIBDIR}/libradius.a LIBREADLINE?= ${DESTDIR}${LIBDIR}/libreadline.a LIBROKEN?= ${DESTDIR}${LIBDIR}/libroken.a From owner-p4-projects@FreeBSD.ORG Fri Jul 14 20:13:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 24AE016A4DE; Fri, 14 Jul 2006 20:13:15 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 DF37D16A4DA for ; Fri, 14 Jul 2006 20:13:14 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9ADB443D49 for ; Fri, 14 Jul 2006 20:13:14 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EKDE01036916 for ; Fri, 14 Jul 2006 20:13:14 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EKDEoN036913 for perforce@freebsd.org; Fri, 14 Jul 2006 20:13:14 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 20:13:14 GMT Message-Id: <200607142013.k6EKDEoN036913@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101593 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 20:13:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101593 Change 101593 by jb@jb_freebsd2 on 2006/07/14 20:12:36 From the last regen. Affected files ... .. //depot/projects/dtrace/src/sys/kern/systrace_args.c#3 edit Differences ... ==== //depot/projects/dtrace/src/sys/kern/systrace_args.c#3 (text+ko) ==== @@ -2705,6 +2705,35 @@ *n_args = 2; break; } + /* thr_setscheduler */ + case 466: { + struct thr_setscheduler_args *p = params; + iarg[0] = p->id; /* long */ + iarg[1] = p->policy; /* int */ + uarg[2] = (intptr_t) p->param; /* const struct sched_param * */ + iarg[3] = p->param_size; /* int */ + *n_args = 4; + break; + } + /* thr_getscheduler */ + case 467: { + struct thr_getscheduler_args *p = params; + iarg[0] = p->id; /* long */ + uarg[1] = (intptr_t) p->policy; /* int * */ + uarg[2] = (intptr_t) p->param; /* struct sched_param * */ + iarg[3] = p->param_size; /* int */ + *n_args = 4; + break; + } + /* thr_setschedparam */ + case 468: { + struct thr_setschedparam_args *p = params; + iarg[0] = p->id; /* long */ + uarg[1] = (intptr_t) p->param; /* const struct sched_param * */ + iarg[2] = p->param_size; /* int */ + *n_args = 3; + break; + } default: *n_args = 0; break; From owner-p4-projects@FreeBSD.ORG Fri Jul 14 20:14:17 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F1B5816A4E2; Fri, 14 Jul 2006 20:14:16 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 AA27D16A4DA for ; Fri, 14 Jul 2006 20:14:16 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 68ADC43D45 for ; Fri, 14 Jul 2006 20:14:16 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EKEGSS037001 for ; Fri, 14 Jul 2006 20:14:16 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EKEGgu036998 for perforce@freebsd.org; Fri, 14 Jul 2006 20:14:16 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 20:14:16 GMT Message-Id: <200607142014.k6EKEGgu036998@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101594 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 20:14:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=101594 Change 101594 by jb@jb_freebsd2 on 2006/07/14 20:14:13 Merge kmacy's debugging printfs. Affected files ... .. //depot/projects/dtrace/src/lib/libstand/ufs.c#4 edit Differences ... ==== //depot/projects/dtrace/src/lib/libstand/ufs.c#4 (text+ko) ==== @@ -279,7 +279,7 @@ * i_number. */ -#if defined(__sparc64__) && defined(T1_SIMULATOR) +#ifdef DEBUG static void hdump(uint8_t *bp, int size) { int i; @@ -334,6 +334,13 @@ if (fs == NULL) panic("fs == NULL"); +#ifdef DEBUG + printf("read_inode : inumber=0x%llx fsba=0x%llx dba=0x%llx\n", + (uint64_t)inumber, + (uint64_t)ino_to_fsba(fs, inumber), + (uint64_t)fsbtodb(fs, ino_to_fsba(fs, inumber)) ); +#endif + /* * Read inode and save it. */ @@ -579,6 +586,14 @@ file_block = lblkno(fs, fp->f_seekp); file_size = DIP(fp, di_size); block_size = sblksize(fs, file_size, file_block); +#ifdef DEBUG + printf("buf_read_file: fs->f_seekp=0x%llx : off=0x%lx : file_block=0x%lx : block_size=0x%llx\n", + (uint64_t)fp->f_seekp, off, file_block, (uint64_t)block_size); + printf("\tfile_size=0x%llx : fs_bsize=0x%llx\n", (uint64_t)file_size, (uint64_t)fs->fs_bsize); + printf("fragroundup[blkoff[%lld]=%lld]=%lld\n", file_size, blkoff(fs, file_size), + fragroundup(fs, blkoff(fs, file_size))); + printf("fs->fs_qbmask=%llx fs->fs_qfmask=%llx fs->fs_fmask=%lx\n", fs->fs_qbmask, fs->fs_qfmask, fs->fs_fmask); +#endif #if defined(__sparc64__) && defined(T1_SIMULATOR) if (block_size > 8192) { @@ -586,6 +601,9 @@ printf("FORCE ROUND block_size\n"); } #endif +#ifdef DEBUG + printf("\tfp->f_buf_blkno = 0x%lx\n", fp->f_buf_blkno); +#endif if (file_block != fp->f_buf_blkno) { if (fp->f_buf == (char *)0) fp->f_buf = malloc(fs->fs_bsize); @@ -593,16 +611,27 @@ rc = block_map(f, file_block, &disk_block); if (rc) return (rc); +#ifdef DEBUG + printf("\tblock_map : disk_block = 0x%lx\n", disk_block); +#endif if (disk_block == 0) { bzero(fp->f_buf, block_size); fp->f_buf_size = block_size; } else { twiddle(); +#ifdef DEBUG + printf("\tcalling dev_strategy for block read fsbtodb[0x%lx]=0x%lx\n", + disk_block, fsbtodb(fs, disk_block)); +#endif rc = (f->f_dev->dv_strategy)(f->f_devdata, F_READ, fsbtodb(fs, disk_block), block_size, fp->f_buf, &fp->f_buf_size); if (rc) return (rc); +#ifdef DEBUG + printf("\treturned from block read with 0x%lx bytes\n", fp->f_buf_size); + hdump(fp->f_buf, fp->f_buf_size); +#endif } fp->f_buf_blkno = file_block; @@ -646,6 +675,11 @@ if (rc || read_size != 512) printf("strategy failed\n"); +#ifdef DEBUG + printf("%04d\n", i); + hdump(buf, 512); +#endif + } } @@ -664,17 +698,34 @@ size_t buf_size; int namlen, length; int rc; +#if defined(__sparc64__) && defined(T1_SIMULATOR) + test_disk(f); +#endif length = strlen(name); +#ifdef DEBUG + printf("search_directory: name=%s\n", name); +#endif fp->f_seekp = 0; while (fp->f_seekp < DIP(fp, di_size)) { int i; rc = buf_read_file(f, &buf, &buf_size); if (rc) return (rc); +#ifdef DEBUG + printf("scan directory entries: @ 0x%llx (size=0x%llx)\n", + (uint64_t)buf, (uint64_t)buf_size); +#endif dp = (struct direct *)buf; edp = (struct direct *)(buf + buf_size); i = 0; +#ifdef DEBUG + hdump(buf, buf_size); +#endif while (dp < edp) { +#ifdef DEBUG + printf("\tdirent# %d (dp=0x%llx edp=0x%llx\n", i, + (uint64_t)dp, (uint64_t)edp); +#endif if (dp->d_ino == (ino_t)0) goto next; #if BYTE_ORDER == LITTLE_ENDIAN @@ -683,6 +734,9 @@ else #endif namlen = dp->d_namlen; +#ifdef DEBUG + printf("namlen: %d dp->d_name: %s\n", namlen, dp->d_name); +#endif if (namlen == length && !strcmp(name, dp->d_name)) { /* found entry */ @@ -699,19 +753,33 @@ } static int sblock_try[] = SBLOCKSEARCH; - #if defined(__sparc64__) && defined(T1_SIMULATOR) #define SOLARIS_SBLOCK_CONVERT 1 void map_sblock(struct fs *fsp) { struct solaris_fs sfs = *(struct solaris_fs *)fsp; +#ifdef DEBUG + printf("fbsd fs_qfmask offset %lx solaris fs_qfmask offset %lx\n", + offsetof(struct fs, fs_qfmask), offsetof(struct solaris_fs, fs_qfmask)); + printf("fbsd fs_qbmask offset %lx solaris fs_qbmask offset %lx\n", + offsetof(struct fs, fs_qbmask), offsetof(struct solaris_fs, fs_qbmask)); + + printf(" fsp->fs_qbmask: %llx = sfs.fs_qbmask %08lx%08lx;\n", + fsp->fs_qbmask, sfs.fs_qbmask.val[0], sfs.fs_qbmask.val[1]); + printf(" fsp->fs_qfmask: %llx = sfs.fs_qfmask %08lx%08lx;\n", + fsp->fs_qfmask, sfs.fs_qfmask.val[0], sfs.fs_qfmask.val[1]); +#endif fsp->fs_qbmask = ((uint64_t)sfs.fs_qbmask.val[0]) << 32 | sfs.fs_qbmask.val[1]; fsp->fs_qfmask = ((uint64_t)sfs.fs_qfmask.val[0]) << 32 | sfs.fs_qfmask.val[1]; } #endif + + + + /* * Open a file. */ @@ -751,6 +819,15 @@ if (rc) goto out; + + + +#ifdef DEBUG + printf("fs->fs_magic: %x fs->fs_bsize: %x fs->fs_sblockloc: %lx\n", + fs->fs_magic, fs->fs_bsize, fs->fs_sblockloc); + printf("sblock_try[i]: %x buf_size %lx\n", + sblock_try[i], buf_size); +#endif if ((fs->fs_magic == FS_UFS1_MAGIC || (fs->fs_magic == FS_UFS2_MAGIC && fs->fs_sblockloc == sblock_try[i])) && @@ -786,6 +863,9 @@ goto out; } +#ifdef DEBUG + printf("read root inode \n"); +#endif cp = path = strdup(upath); if (path == NULL) { rc = ENOMEM; @@ -832,6 +912,10 @@ * symbolic link. */ parent_inumber = inumber; +#ifdef DEBUG + printf("-- searching %s @ inode = 0x%x - found @ 0x%x\n", + ncp, parent_inumber, inumber); +#endif rc = search_directory(ncp, f, &inumber); *cp = c; if (rc) From owner-p4-projects@FreeBSD.ORG Fri Jul 14 20:23:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 34D1616A4DF; Fri, 14 Jul 2006 20:23:32 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 117C816A4DA for ; Fri, 14 Jul 2006 20:23:32 +0000 (UTC) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B42C943D49 for ; Fri, 14 Jul 2006 20:23:31 +0000 (GMT) (envelope-from bushman@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EKNV24037488 for ; Fri, 14 Jul 2006 20:23:31 GMT (envelope-from bushman@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EKNVDq037485 for perforce@freebsd.org; Fri, 14 Jul 2006 20:23:31 GMT (envelope-from bushman@freebsd.org) Date: Fri, 14 Jul 2006 20:23:31 GMT Message-Id: <200607142023.k6EKNVDq037485@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bushman@freebsd.org using -f From: Michael Bushkov To: Perforce Change Reviews Cc: Subject: PERFORCE change 101596 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 20:23:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=101596 Change 101596 by bushman@bushman_nss_ldap_cached on 2006/07/14 20:22:37 nss_ldap initial files added. These files contain mostly stubs - proper implementation is on the way. Affected files ... .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/Makefile#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldap_passwd.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldap_passwd.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldapconf.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldapconf.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldapconn.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldapconn.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldapschema.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldapschema.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldaputil.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/ldaputil.h#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/nss_ldap.c#1 add .. //depot/projects/soc2006/nss_ldap_cached/src/lib/nss_ldap/nss_ldap.h#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jul 14 20:23:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AD9E916A577; Fri, 14 Jul 2006 20:23:32 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 71C2116A574 for ; Fri, 14 Jul 2006 20:23:32 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6399143D46 for ; Fri, 14 Jul 2006 20:23:31 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EKNVNh037482 for ; Fri, 14 Jul 2006 20:23:31 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EKNRF5037479 for perforce@freebsd.org; Fri, 14 Jul 2006 20:23:27 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 20:23:27 GMT Message-Id: <200607142023.k6EKNRF5037479@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101595 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 20:23:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=101595 Change 101595 by imp@imp_harmony on 2006/07/14 20:22:32 IFC @101584 Affected files ... .. //depot/projects/arm/src/sys/Makefile#7 integrate .. //depot/projects/arm/src/sys/amd64/amd64/db_trace.c#7 integrate .. //depot/projects/arm/src/sys/amd64/amd64/identcpu.c#7 integrate .. //depot/projects/arm/src/sys/amd64/amd64/intr_machdep.c#6 integrate .. //depot/projects/arm/src/sys/amd64/amd64/local_apic.c#10 integrate .. //depot/projects/arm/src/sys/amd64/amd64/pmap.c#18 integrate .. //depot/projects/arm/src/sys/amd64/conf/GENERIC#14 integrate .. //depot/projects/arm/src/sys/amd64/include/specialreg.h#4 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#10 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#10 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#10 integrate .. //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#10 integrate .. //depot/projects/arm/src/sys/arm/arm/db_trace.c#3 integrate .. //depot/projects/arm/src/sys/arm/arm/gdb_machdep.c#1 branch .. //depot/projects/arm/src/sys/arm/arm/pmap.c#21 integrate .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#30 integrate .. //depot/projects/arm/src/sys/arm/at91/std.at91#2 integrate .. //depot/projects/arm/src/sys/arm/at91/std.kb920x#4 integrate .. //depot/projects/arm/src/sys/arm/conf/KB920X#37 integrate .. //depot/projects/arm/src/sys/arm/include/gdb_machdep.h#1 branch .. //depot/projects/arm/src/sys/arm/xscale/i80321/i80321_timer.c#6 integrate .. //depot/projects/arm/src/sys/bsm/audit_kevents.h#6 integrate .. //depot/projects/arm/src/sys/bsm/audit_record.h#4 integrate .. //depot/projects/arm/src/sys/cam/scsi/scsi_cd.c#5 integrate .. //depot/projects/arm/src/sys/cam/scsi/scsi_da.c#10 integrate .. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_misc.c#11 integrate .. //depot/projects/arm/src/sys/compat/freebsd32/syscalls.master#12 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_file.c#5 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_ioctl.c#7 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_ipc.c#5 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_socket.c#9 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_ipc.c#4 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_misc.c#5 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_proto.h#5 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_stream.c#4 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_syscall.h#5 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_syscallnames.c#5 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_sysent.c#5 integrate .. //depot/projects/arm/src/sys/compat/svr4/svr4_util.h#3 integrate .. //depot/projects/arm/src/sys/compat/svr4/syscalls.master#5 integrate .. //depot/projects/arm/src/sys/conf/NOTES#26 integrate .. //depot/projects/arm/src/sys/conf/files#36 integrate .. //depot/projects/arm/src/sys/conf/files.arm#4 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_bstream.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_bstream.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_context.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_env.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_self.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_self_context.s#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_step.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_str.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_str.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_swap.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_swap.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#2 delete .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#2 delete .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_utable.c#2 integrate .. //depot/projects/arm/src/sys/contrib/ia64/libuwx/src/uwx_utable.h#2 integrate .. //depot/projects/arm/src/sys/contrib/pf/net/if_pflog.c#5 integrate .. //depot/projects/arm/src/sys/contrib/pf/net/if_pfsync.c#5 integrate .. //depot/projects/arm/src/sys/crypto/via/padlock.c#5 integrate .. //depot/projects/arm/src/sys/ddb/db_command.c#5 integrate .. //depot/projects/arm/src/sys/ddb/db_output.c#3 integrate .. //depot/projects/arm/src/sys/ddb/db_output.h#2 integrate .. //depot/projects/arm/src/sys/ddb/db_ps.c#3 integrate .. //depot/projects/arm/src/sys/ddb/db_thread.c#3 integrate .. //depot/projects/arm/src/sys/ddb/ddb.h#5 integrate .. //depot/projects/arm/src/sys/dev/aac/aac_cam.c#3 integrate .. //depot/projects/arm/src/sys/dev/asr/MAINTAINER#2 delete .. //depot/projects/arm/src/sys/dev/ata/ata-chipset.c#19 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-lowlevel.c#9 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-pci.h#10 integrate .. //depot/projects/arm/src/sys/dev/atkbdc/atkbdc_isa.c#4 integrate .. //depot/projects/arm/src/sys/dev/bce/if_bce.c#4 integrate .. //depot/projects/arm/src/sys/dev/fdc/fdc.c#5 integrate .. //depot/projects/arm/src/sys/dev/ic/nec765.h#2 integrate .. //depot/projects/arm/src/sys/dev/isp/isp.c#7 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_freebsd.c#11 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_freebsd.h#10 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_pci.c#10 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_sbus.c#6 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_target.c#5 integrate .. //depot/projects/arm/src/sys/dev/isp/ispmbox.h#6 integrate .. //depot/projects/arm/src/sys/dev/isp/ispreg.h#4 integrate .. //depot/projects/arm/src/sys/dev/isp/ispvar.h#9 integrate .. //depot/projects/arm/src/sys/dev/ispfw/asm_1040.h#2 integrate .. //depot/projects/arm/src/sys/dev/ispfw/asm_1080.h#2 integrate .. //depot/projects/arm/src/sys/dev/ispfw/asm_12160.h#2 integrate .. //depot/projects/arm/src/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/arm/src/sys/dev/ispfw/ispfw.c#3 integrate .. //depot/projects/arm/src/sys/dev/mii/brgphy.c#8 integrate .. //depot/projects/arm/src/sys/dev/mii/mii_physubr.c#4 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt.c#16 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt.h#16 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt_cam.c#19 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt_debug.c#10 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt_pci.c#14 integrate .. //depot/projects/arm/src/sys/dev/ncv/ncr53c500_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/pccard/pccarddevs#5 integrate .. //depot/projects/arm/src/sys/dev/pci/pci.c#12 integrate .. //depot/projects/arm/src/sys/dev/random/probe.c#3 integrate .. //depot/projects/arm/src/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/sequencer.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/solo.c#5 integrate .. //depot/projects/arm/src/sys/dev/stg/tmc18c30_subr.c#3 integrate .. //depot/projects/arm/src/sys/dev/usb/if_aue.c#4 integrate .. //depot/projects/arm/src/sys/doc/Doxyfile#2 delete .. //depot/projects/arm/src/sys/doc/Makefile#2 delete .. //depot/projects/arm/src/sys/doc/subsys/Dependencies#2 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-cam#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-crypto#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-dev_pci#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-dev_sound#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-dev_usb#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-geom#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-i4b#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-kern#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-libkern#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-linux#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-net80211#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-netgraph#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-netinet#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-netinet6#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-netipsec#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-opencrypto#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Doxyfile-vm#3 delete .. //depot/projects/arm/src/sys/doc/subsys/Makefile#3 delete .. //depot/projects/arm/src/sys/doc/subsys/README#2 delete .. //depot/projects/arm/src/sys/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/arm/src/sys/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/arm/src/sys/fs/devfs/devfs_vfsops.c#3 integrate .. //depot/projects/arm/src/sys/fs/devfs/devfs_vnops.c#7 integrate .. //depot/projects/arm/src/sys/fs/portalfs/portal_vnops.c#3 integrate .. //depot/projects/arm/src/sys/fs/unionfs/union_vnops.c#4 integrate .. //depot/projects/arm/src/sys/geom/geom.h#5 integrate .. //depot/projects/arm/src/sys/geom/mirror/g_mirror.c#14 integrate .. //depot/projects/arm/src/sys/geom/mirror/g_mirror_ctl.c#7 integrate .. //depot/projects/arm/src/sys/geom/raid3/g_raid3.c#17 integrate .. //depot/projects/arm/src/sys/geom/raid3/g_raid3_ctl.c#7 integrate .. //depot/projects/arm/src/sys/i386/conf/GENERIC#13 integrate .. //depot/projects/arm/src/sys/i386/conf/PAE#6 integrate .. //depot/projects/arm/src/sys/i386/i386/db_trace.c#6 integrate .. //depot/projects/arm/src/sys/i386/i386/identcpu.c#14 integrate .. //depot/projects/arm/src/sys/i386/i386/initcpu.c#4 integrate .. //depot/projects/arm/src/sys/i386/i386/intr_machdep.c#6 integrate .. //depot/projects/arm/src/sys/i386/i386/local_apic.c#9 integrate .. //depot/projects/arm/src/sys/i386/i386/machdep.c#14 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_ipc.c#3 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_ipc.h#2 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_isc_syscall.h#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_isc_sysent.c#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_misc.c#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_msg.c#3 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_other.c#2 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_poll.h#2 delete .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_proto.h#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_syscall.h#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_sysent.c#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_util.h#2 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_xenix.c#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_xenix.h#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_xenix_syscall.h#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_xenix_sysent.c#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/imgact_coff.c#3 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/syscalls.isc#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/syscalls.master#4 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/syscalls.xenix#4 integrate .. //depot/projects/arm/src/sys/i386/include/i4b_ioctl.h#2 integrate .. //depot/projects/arm/src/sys/i386/include/md_var.h#5 integrate .. //depot/projects/arm/src/sys/i386/include/specialreg.h#5 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_proto.h#11 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_syscall.h#11 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_sysent.c#11 integrate .. //depot/projects/arm/src/sys/i386/linux/syscalls.master#11 integrate .. //depot/projects/arm/src/sys/i4b/layer4/i4b_l4mgmt.c#2 integrate .. //depot/projects/arm/src/sys/ia64/conf/GENERIC#9 integrate .. //depot/projects/arm/src/sys/ia64/ia64/db_machdep.c#2 integrate .. //depot/projects/arm/src/sys/ia64/include/ieeefp.h#2 integrate .. //depot/projects/arm/src/sys/isa/isahint.c#3 integrate .. //depot/projects/arm/src/sys/kern/bus_if.m#4 integrate .. //depot/projects/arm/src/sys/kern/init_sysent.c#11 integrate .. //depot/projects/arm/src/sys/kern/kern_acl.c#3 integrate .. //depot/projects/arm/src/sys/kern/kern_descrip.c#11 integrate .. //depot/projects/arm/src/sys/kern/kern_environment.c#6 integrate .. //depot/projects/arm/src/sys/kern/kern_intr.c#5 integrate .. //depot/projects/arm/src/sys/kern/kern_ktr.c#4 integrate .. //depot/projects/arm/src/sys/kern/kern_linker.c#7 integrate .. //depot/projects/arm/src/sys/kern/kern_lock.c#5 integrate .. //depot/projects/arm/src/sys/kern/kern_prot.c#5 integrate .. //depot/projects/arm/src/sys/kern/kern_thr.c#7 integrate .. //depot/projects/arm/src/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/arm/src/sys/kern/subr_bus.c#13 integrate .. //depot/projects/arm/src/sys/kern/subr_hints.c#4 integrate .. //depot/projects/arm/src/sys/kern/subr_prf.c#5 integrate .. //depot/projects/arm/src/sys/kern/subr_turnstile.c#7 integrate .. //depot/projects/arm/src/sys/kern/sys_generic.c#5 integrate .. //depot/projects/arm/src/sys/kern/syscalls.c#11 integrate .. //depot/projects/arm/src/sys/kern/syscalls.master#14 integrate .. //depot/projects/arm/src/sys/kern/sysv_sem.c#5 integrate .. //depot/projects/arm/src/sys/kern/uipc_domain.c#4 integrate .. //depot/projects/arm/src/sys/kern/uipc_socket.c#15 integrate .. //depot/projects/arm/src/sys/kern/uipc_socket2.c#12 integrate .. //depot/projects/arm/src/sys/kern/uipc_syscalls.c#12 integrate .. //depot/projects/arm/src/sys/kern/uipc_usrreq.c#13 integrate .. //depot/projects/arm/src/sys/kern/vfs_subr.c#20 integrate .. //depot/projects/arm/src/sys/kern/vfs_syscalls.c#15 integrate .. //depot/projects/arm/src/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/arm/src/sys/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/arm/src/sys/net/bpf.c#10 integrate .. //depot/projects/arm/src/sys/net/if.c#13 integrate .. //depot/projects/arm/src/sys/net/if_bridge.c#16 integrate .. //depot/projects/arm/src/sys/net/if_clone.c#6 integrate .. //depot/projects/arm/src/sys/net/if_clone.h#3 integrate .. //depot/projects/arm/src/sys/net/if_disc.c#5 integrate .. //depot/projects/arm/src/sys/net/if_enc.c#2 integrate .. //depot/projects/arm/src/sys/net/if_faith.c#5 integrate .. //depot/projects/arm/src/sys/net/if_gif.c#7 integrate .. //depot/projects/arm/src/sys/net/if_gre.c#7 integrate .. //depot/projects/arm/src/sys/net/if_loop.c#6 integrate .. //depot/projects/arm/src/sys/net/if_ppp.c#6 integrate .. //depot/projects/arm/src/sys/net/if_stf.c#6 integrate .. //depot/projects/arm/src/sys/net/if_vlan.c#12 integrate .. //depot/projects/arm/src/sys/net/rtsock.c#6 integrate .. //depot/projects/arm/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#3 integrate .. //depot/projects/arm/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 integrate .. //depot/projects/arm/src/sys/netinet/in_rmx.c#3 integrate .. //depot/projects/arm/src/sys/netinet/ip_carp.c#7 integrate .. //depot/projects/arm/src/sys/netinet/ip_ipsec.c#3 integrate .. //depot/projects/arm/src/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/arm/src/sys/netinet6/in6_rmx.c#3 integrate .. //depot/projects/arm/src/sys/nfs4client/nfs4_vnops.c#6 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_socket.c#11 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_vnops.c#10 integrate .. //depot/projects/arm/src/sys/pc98/conf/GENERIC#8 integrate .. //depot/projects/arm/src/sys/pc98/pc98/machdep.c#8 integrate .. //depot/projects/arm/src/sys/posix4/ksched.c#5 integrate .. //depot/projects/arm/src/sys/posix4/p1003_1b.c#6 integrate .. //depot/projects/arm/src/sys/posix4/posix4.h#2 integrate .. //depot/projects/arm/src/sys/powerpc/powerpc/db_trace.c#4 integrate .. //depot/projects/arm/src/sys/powerpc/powerpc/mmu_oea.c#6 integrate .. //depot/projects/arm/src/sys/security/audit/audit.h#4 integrate .. //depot/projects/arm/src/sys/security/audit/audit_arg.c#4 integrate .. //depot/projects/arm/src/sys/security/audit/audit_bsm.c#5 integrate .. //depot/projects/arm/src/sys/security/mac_biba/mac_biba.c#4 integrate .. //depot/projects/arm/src/sys/sparc64/conf/GENERIC#16 integrate .. //depot/projects/arm/src/sys/sparc64/sparc64/db_trace.c#4 integrate .. //depot/projects/arm/src/sys/sys/bus.h#7 integrate .. //depot/projects/arm/src/sys/sys/protosw.h#7 integrate .. //depot/projects/arm/src/sys/sys/sockio.h#5 integrate .. //depot/projects/arm/src/sys/sys/syscall.h#11 integrate .. //depot/projects/arm/src/sys/sys/syscall.mk#11 integrate .. //depot/projects/arm/src/sys/sys/syscallsubr.h#8 integrate .. //depot/projects/arm/src/sys/sys/sysproto.h#12 integrate .. //depot/projects/arm/src/sys/sys/systm.h#11 integrate .. //depot/projects/arm/src/sys/sys/thr.h#4 integrate .. //depot/projects/arm/src/sys/ufs/ffs/ffs_vfsops.c#15 integrate .. //depot/projects/arm/src/sys/ufs/ufs/ufs_lookup.c#4 integrate .. //depot/projects/arm/src/sys/vm/vm_meter.c#5 integrate Differences ... ==== //depot/projects/arm/src/sys/Makefile#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/arm/src/sys/amd64/amd64/db_trace.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.74 2006/03/13 23:56:44 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.75 2006/07/12 21:22:42 jhb Exp $"); #include #include @@ -390,16 +390,14 @@ long *argp; db_expr_t offset; c_db_sym_t sym; - int narg, quit; + int narg; boolean_t first; if (count == -1) count = 1024; first = TRUE; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && !quit) { + while (count-- && !db_pager_quit) { sym = db_search_symbol(pc, DB_STGY_ANY, &offset); db_symbol_values(sym, &name, NULL); ==== //depot/projects/arm/src/sys/amd64/amd64/identcpu.c#7 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.146 2006/04/24 22:56:57 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.147 2006/07/12 06:04:11 jkim Exp $"); #include "opt_cpu.h" @@ -306,8 +306,8 @@ "\020" "\001LAHF" /* LAHF/SAHF in long mode */ "\002CMP" /* CMP legacy */ - "\003" - "\004" + "\003SVM" /* Secure Virtual Mode */ + "\004ExtAPIC" /* Extended APIC register */ "\005CR8" /* CR8 in legacy mode */ "\006" "\007" ==== //depot/projects/arm/src/sys/amd64/amd64/intr_machdep.c#6 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.19 2006/02/28 22:24:54 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.20 2006/07/12 21:22:42 jhb Exp $ */ /* @@ -338,16 +338,14 @@ DB_SHOW_COMMAND(irqs, db_show_irqs) { struct intsrc **isrc; - int i, quit, verbose; + int i, verbose; - quit = 0; if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; isrc = interrupt_sources; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < NUM_IO_INTS && !quit; i++, isrc++) + for (i = 0; i < NUM_IO_INTS && !db_pager_quit; i++, isrc++) if (*isrc != NULL) db_dump_intr_event((*isrc)->is_event, verbose); } ==== //depot/projects/arm/src/sys/amd64/amd64/local_apic.c#10 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.25 2006/03/20 19:39:07 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.26 2006/07/12 21:22:42 jhb Exp $"); #include "opt_hwpmc_hooks.h" @@ -755,18 +755,16 @@ DB_SHOW_COMMAND(apic, db_show_apic) { struct intsrc *isrc; - int quit, i, verbose; + int i, verbose; u_int irq; - quit = 0; if (strcmp(modif, "vv") == 0) verbose = 2; else if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < APIC_NUM_IOINTS + 1 && !quit; i++) { + for (i = 0; i < APIC_NUM_IOINTS + 1 && !db_pager_quit; i++) { irq = ioint_irqs[i]; if (irq != 0 && irq != IRQ_SYSCALL) { db_printf("vec 0x%2x -> ", i + APIC_IO_INTS); ==== //depot/projects/arm/src/sys/amd64/amd64/pmap.c#18 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.563 2006/07/02 18:22:46 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -2969,47 +2969,36 @@ } /* - * Clear the given bit in each of the given page's ptes. + * Clear the write and modified bits in each of the given page's mappings. */ static __inline void -pmap_clear_ptes(vm_page_t m, long bit) +pmap_clear_write(vm_page_t m) { pv_entry_t pv; pmap_t pmap; - pt_entry_t pbits, *pte; + pt_entry_t oldpte, *pte; - if ((m->flags & PG_FICTITIOUS) || - (bit == PG_RW && (m->flags & PG_WRITEABLE) == 0)) + if ((m->flags & PG_FICTITIOUS) != 0 || + (m->flags & PG_WRITEABLE) == 0) return; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); - /* - * Loop over all current mappings setting/clearing as appropos If - * setting RO do we need to clear the VAC? - */ TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); retry: - pbits = *pte; - if (pbits & bit) { - if (bit == PG_RW) { - if (!atomic_cmpset_long(pte, pbits, - pbits & ~(PG_RW | PG_M))) - goto retry; - if (pbits & PG_M) { - vm_page_dirty(m); - } - } else { - atomic_clear_long(pte, bit); - } + oldpte = *pte; + if (oldpte & PG_RW) { + if (!atomic_cmpset_long(pte, oldpte, oldpte & + ~(PG_RW | PG_M))) + goto retry; + if ((oldpte & PG_M) != 0) + vm_page_dirty(m); pmap_invalidate_page(pmap, pv->pv_va); } PMAP_UNLOCK(pmap); } - if (bit == PG_RW) - vm_page_flag_clear(m, PG_WRITEABLE); + vm_page_flag_clear(m, PG_WRITEABLE); } /* @@ -3022,7 +3011,7 @@ { if ((prot & VM_PROT_WRITE) == 0) { if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { - pmap_clear_ptes(m, PG_RW); + pmap_clear_write(m); } else { pmap_remove_all(m); } @@ -3061,14 +3050,12 @@ pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - if (pte != NULL && (*pte & PG_A) != 0) { + if ((*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); rtval++; - if (rtval > 4) { - PMAP_UNLOCK(pmap); - break; - } + if (rtval > 4) + pvn = NULL; } PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); @@ -3082,7 +3069,23 @@ void pmap_clear_modify(vm_page_t m) { - pmap_clear_ptes(m, PG_M); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_M) { + atomic_clear_long(pte, PG_M); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* @@ -3093,7 +3096,23 @@ void pmap_clear_reference(vm_page_t m) { - pmap_clear_ptes(m, PG_A); + pv_entry_t pv; + pmap_t pmap; + pt_entry_t *pte; + + if ((m->flags & PG_FICTITIOUS) != 0) + return; + mtx_assert(&vm_page_queue_mtx, MA_OWNED); + TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { + pmap = PV_PMAP(pv); + PMAP_LOCK(pmap); + pte = pmap_pte(pmap, pv->pv_va); + if (*pte & PG_A) { + atomic_clear_long(pte, PG_A); + pmap_invalidate_page(pmap, pv->pv_va); + } + PMAP_UNLOCK(pmap); + } } /* ==== //depot/projects/arm/src/sys/amd64/conf/GENERIC#14 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.462 2006/06/26 22:03:20 babkin Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.464 2006/07/09 16:39:21 mjacob Exp $ cpu HAMMER ident GENERIC @@ -28,7 +28,6 @@ #options SCHED_ULE # ULE scheduler options SCHED_4BSD # 4BSD scheduler -#options SCHED_CORE # CORE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols @@ -252,6 +251,7 @@ device md # Memory "disks" device gif # IPv6 and IPv4 tunneling device faith # IPv6-to-IPv4 relaying (translation) +device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! ==== //depot/projects/arm/src/sys/amd64/include/specialreg.h#4 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * from: @(#)specialreg.h 7.1 (Berkeley) 5/9/91 - * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.33 2006/05/01 22:07:00 jhb Exp $ + * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.35 2006/07/13 16:09:40 jkim Exp $ */ #ifndef _MACHINE_SPECIALREG_H_ @@ -109,16 +109,18 @@ #define CPUID_SS 0x08000000 #define CPUID_HTT 0x10000000 #define CPUID_TM 0x20000000 -#define CPUID_B30 0x40000000 +#define CPUID_IA64 0x40000000 #define CPUID_PBE 0x80000000 #define CPUID2_SSE3 0x00000001 #define CPUID2_MON 0x00000008 #define CPUID2_DS_CPL 0x00000010 +#define CPUID2_VMX 0x00000020 #define CPUID2_EST 0x00000080 #define CPUID2_TM2 0x00000100 #define CPUID2_CNTXID 0x00000400 #define CPUID2_CX16 0x00002000 +#define CPUID2_XTPR 0x00004000 /* * Important bits in the AMD extended cpuid flags @@ -135,6 +137,8 @@ #define AMDID2_LAHF 0x00000001 #define AMDID2_CMP 0x00000002 +#define AMDID2_SVM 0x00000004 +#define AMDID2_EXT_APIC 0x00000008 #define AMDID2_CR8 0x00000010 /* @@ -188,6 +192,7 @@ #define MSR_THERM_CONTROL 0x19a #define MSR_THERM_INTERRUPT 0x19b #define MSR_THERM_STATUS 0x19c +#define MSR_IA32_MISC_ENABLE 0x1a0 #define MSR_DEBUGCTLMSR 0x1d9 #define MSR_LASTBRANCHFROMIP 0x1db #define MSR_LASTBRANCHTOIP 0x1dc @@ -356,7 +361,7 @@ #define AMD_WT_ALLOC_PRE 0x20000 /* programmable range enable */ #define AMD_WT_ALLOC_FRE 0x10000 /* fixed (A0000-FFFFF) range enable */ -/* X86-64 MSR's */ +/* AMD64 MSR's */ #define MSR_EFER 0xc0000080 /* extended features */ #define MSR_STAR 0xc0000081 /* legacy mode SYSCALL target/cs/ss */ #define MSR_LSTAR 0xc0000082 /* long mode SYSCALL target rip */ ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#10 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#10 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#10 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #include @@ -74,7 +74,7 @@ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ @@ -109,7 +109,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 86 = linux_uselib */ { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon, AUE_SWAPON }, /* 87 = swapon */ { SYF_MPSAFE | AS(linux_reboot_args), (sy_call_t *)linux_reboot, AUE_REBOOT }, /* 88 = linux_reboot */ - { AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ + { SYF_MPSAFE | AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ { SYF_MPSAFE | AS(linux_mmap_args), (sy_call_t *)linux_mmap, AUE_MMAP }, /* 90 = linux_mmap */ { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap, AUE_MUNMAP }, /* 91 = munmap */ { SYF_MPSAFE | AS(linux_truncate_args), (sy_call_t *)linux_truncate, AUE_TRUNCATE }, /* 92 = linux_truncate */ @@ -161,7 +161,7 @@ { SYF_MPSAFE | AS(linux_setfsuid16_args), (sy_call_t *)linux_setfsuid16, AUE_SETFSUID }, /* 138 = linux_setfsuid16 */ { SYF_MPSAFE | AS(linux_setfsgid16_args), (sy_call_t *)linux_setfsgid16, AUE_SETFSGID }, /* 139 = linux_setfsgid16 */ { SYF_MPSAFE | AS(linux_llseek_args), (sy_call_t *)linux_llseek, AUE_LSEEK }, /* 140 = linux_llseek */ - { AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ + { SYF_MPSAFE | AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ { SYF_MPSAFE | AS(linux_select_args), (sy_call_t *)linux_select, AUE_SELECT }, /* 142 = linux_select */ { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock, AUE_FLOCK }, /* 143 = flock */ { SYF_MPSAFE | AS(linux_msync_args), (sy_call_t *)linux_msync, AUE_MSYNC }, /* 144 = linux_msync */ @@ -240,7 +240,7 @@ { SYF_MPSAFE | AS(linux_pivot_root_args), (sy_call_t *)linux_pivot_root, AUE_PIVOT_ROOT }, /* 217 = linux_pivot_root */ { SYF_MPSAFE | AS(linux_mincore_args), (sy_call_t *)linux_mincore, AUE_MINCORE }, /* 218 = linux_mincore */ { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise, AUE_MADVISE }, /* 219 = madvise */ - { AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ + { SYF_MPSAFE | AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ { SYF_MPSAFE | AS(linux_fcntl64_args), (sy_call_t *)linux_fcntl64, AUE_FCNTL }, /* 221 = linux_fcntl64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 222 = */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 223 = */ ==== //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#10 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -113,7 +113,7 @@ 51 AUE_ACCT MNOPROTO { int acct(char *path); } 52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -169,7 +169,7 @@ 87 AUE_SWAPON MNOPROTO { int swapon(char *name); } 88 AUE_REBOOT MSTD { int linux_reboot(l_int magic1, \ l_int magic2, l_uint cmd, void *arg); } -89 AUE_O_GETDENTS STD { int linux_readdir(l_uint fd, \ +89 AUE_O_GETDENTS MSTD { int linux_readdir(l_uint fd, \ struct l_dirent *dent, l_uint count); } 90 AUE_MMAP MSTD { int linux_mmap(struct l_mmap_argv *ptr); } 91 AUE_MUNMAP MNOPROTO { int munmap(caddr_t addr, int len); } @@ -246,7 +246,7 @@ 140 AUE_LSEEK MSTD { int linux_llseek(l_int fd, l_ulong ohigh, \ l_ulong olow, l_loff_t *res, \ l_uint whence); } -141 AUE_O_GETDENTS STD { int linux_getdents(l_uint fd, void *dent, \ +141 AUE_O_GETDENTS MSTD { int linux_getdents(l_uint fd, void *dent, \ l_uint count); } 142 AUE_SELECT MSTD { int linux_select(l_int nfds, \ l_fd_set *readfds, l_fd_set *writefds, \ @@ -381,7 +381,7 @@ l_size_t len, u_char *vec); } 219 AUE_MADVISE MNOPROTO { int madvise(void *addr, size_t len, \ int behav); } -220 AUE_O_GETDENTS STD { int linux_getdents64(l_uint fd, \ +220 AUE_O_GETDENTS MSTD { int linux_getdents64(l_uint fd, \ void *dirent, l_uint count); } 221 AUE_FCNTL MSTD { int linux_fcntl64(l_uint fd, l_uint cmd, \ uintptr_t arg); } ==== //depot/projects/arm/src/sys/arm/arm/db_trace.c#3 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/db_trace.c,v 1.12 2005/09/10 03:01:24 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/db_trace.c,v 1.13 2006/07/12 21:22:42 jhb Exp $"); #include #include @@ -93,15 +93,13 @@ db_expr_t value; db_expr_t offset; boolean_t kernel_only = TRUE; - int scp_offset, quit; + int scp_offset; frame = (u_int32_t *)addr; lastframe = NULL; scp_offset = -(get_pc_str_offset() >> 2); - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && frame != NULL && !quit) { + while (count-- && frame != NULL && !db_pager_quit) { db_addr_t scp; u_int32_t savecode; int r; ==== //depot/projects/arm/src/sys/arm/arm/pmap.c#21 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.64 2006/06/15 01:01:05 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.65 2006/07/11 11:22:06 cognet Exp $"); #include #include #include @@ -199,7 +199,7 @@ static pv_entry_t pmap_get_pv_entry(void); static void pmap_enter_locked(pmap_t, vm_offset_t, vm_page_t, - vm_prot_t, boolean_t); + vm_prot_t, boolean_t, int); static void pmap_vac_me_harder(struct vm_page *, pmap_t, vm_offset_t); static void pmap_vac_me_kpmap(struct vm_page *, pmap_t, @@ -373,7 +373,7 @@ * L2 allocation. */ #define pmap_alloc_l2_dtable() \ - (void*)uma_zalloc(l2table_zone, M_NOWAIT) + (void*)uma_zalloc(l2table_zone, M_NOWAIT|M_USE_RESERVE) #define pmap_free_l2_dtable(l2) \ uma_zfree(l2table_zone, l2) @@ -952,7 +952,7 @@ again_ptep: PMAP_UNLOCK(pm); vm_page_unlock_queues(); - ptep = (void*)uma_zalloc(l2zone, M_NOWAIT); + ptep = (void*)uma_zalloc(l2zone, M_NOWAIT|M_USE_RESERVE); vm_page_lock_queues(); PMAP_LOCK(pm); if (l2b->l2b_kva != 0) { @@ -3312,7 +3312,7 @@ vm_page_lock_queues(); PMAP_LOCK(pmap); - pmap_enter_locked(pmap, va, m, prot, wired); + pmap_enter_locked(pmap, va, m, prot, wired, M_WAITOK); vm_page_unlock_queues(); PMAP_UNLOCK(pmap); } @@ -3322,7 +3322,7 @@ */ static void pmap_enter_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - boolean_t wired) + boolean_t wired, int flags) { struct l2_bucket *l2b = NULL; struct vm_page *opg; @@ -3353,10 +3353,22 @@ l2b = pmap_get_l2_bucket(pmap, va); if (l2b == NULL) l2b = pmap_grow_l2_bucket(pmap, va); - } else + } else { +do_l2b_alloc: l2b = pmap_alloc_l2_bucket(pmap, va); - KASSERT(l2b != NULL, - ("pmap_enter: failed to allocate l2 bucket")); + if (l2b == NULL) { + if (flags & M_WAITOK) { + PMAP_UNLOCK(pmap); + vm_page_unlock_queues(); + VM_WAIT; + vm_page_lock_queues(); + PMAP_LOCK(pmap); + goto do_l2b_alloc; + } + return; + } + } + ptep = &l2b->l2b_kva[l2pte_index(va)]; opte = *ptep; @@ -3563,7 +3575,7 @@ PMAP_LOCK(pmap); while (m != NULL && (diff = m->pindex - m_start->pindex) < psize) { pmap_enter_locked(pmap, start + ptoa(diff), m, prot & - (VM_PROT_READ | VM_PROT_EXECUTE), FALSE); + (VM_PROT_READ | VM_PROT_EXECUTE), FALSE, M_NOWAIT); m = TAILQ_NEXT(m, listq); } PMAP_UNLOCK(pmap); @@ -3584,7 +3596,7 @@ PMAP_LOCK(pmap); pmap_enter_locked(pmap, va, m, prot & (VM_PROT_READ | VM_PROT_EXECUTE), - FALSE); + FALSE, M_NOWAIT); PMAP_UNLOCK(pmap); } ==== //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#30 (text+ko) ==== @@ -48,7 +48,7 @@ #include "opt_at91.h" #include -__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.8 2006/06/20 23:40:04 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.9 2006/07/12 00:48:50 cognet Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include @@ -159,6 +159,7 @@ VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, }, +#if 0 { /* * Add the ohci controller, and anything else that might be @@ -170,6 +171,7 @@ VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, }, +#endif { 0, 0, ==== //depot/projects/arm/src/sys/arm/at91/std.at91#2 (text) ==== @@ -1,4 +1,5 @@ -# $FreeBSD: src/sys/arm/at91/std.at91,v 1.1 2006/02/17 22:33:13 imp Exp $ +# $FreeBSD: src/sys/arm/at91/std.at91,v 1.2 2006/07/14 15:20:31 imp Exp $ files "../at91/files.at91" cpu CPU_ARM9 +makeoptions CONF_CFLAGS=-mcpu=arm9 ==== //depot/projects/arm/src/sys/arm/at91/std.kb920x#4 (text+ko) ==== @@ -1,6 +1,10 @@ -#$FreeBSD: src/sys/arm/at91/std.kb920x,v 1.2 2006/02/17 22:33:13 imp Exp $ +#$FreeBSD: src/sys/arm/at91/std.kb920x,v 1.3 2006/07/14 15:20:31 imp Exp $ include "../at91/std.at91" files "../at91/files.kb920x" makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 +options KERNPHYSADDR=0x20000000 +options KERNVIRTADDR=0xc0000000 +options PHYSADDR=0x20000000 +options STARTUP_PAGETABLE_ADDR=0x20800000 ==== //depot/projects/arm/src/sys/arm/conf/KB920X#37 (text+ko) ==== @@ -16,15 +16,11 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/arm/conf/KB920X,v 1.7 2006/06/17 23:34:59 imp Exp $ +# $FreeBSD: src/sys/arm/conf/KB920X,v 1.8 2006/07/14 15:20:31 imp Exp $ machine arm ident KB920X -options KERNPHYSADDR=0x20000000 -options KERNVIRTADDR=0xc0000000 -options PHYSADDR=0x20000000 -options STARTUP_PAGETABLE_ADDR=0x20800000 options AT91_KWIKBYTE >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 14 20:25:37 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E9E7616A4DF; Fri, 14 Jul 2006 20:25:36 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 C467416A4DA for ; Fri, 14 Jul 2006 20:25:36 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DA73643D72 for ; Fri, 14 Jul 2006 20:25:35 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EKPZEP037579 for ; Fri, 14 Jul 2006 20:25:35 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EKPYW7037576 for perforce@freebsd.org; Fri, 14 Jul 2006 20:25:34 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 20:25:34 GMT Message-Id: <200607142025.k6EKPYW7037576@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101597 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 20:25:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=101597 Change 101597 by jb@jb_freebsd2 on 2006/07/14 20:25:16 IFsun4v_stable. These are the changes that make mpt work on big endian architectures like sun4v. Affected files ... .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_cnfg.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_fc.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_inb.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_init.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_ioc.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_lan.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_log_fc.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_log_sas.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_raid.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_sas.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_targ.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_tool.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_type.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt.c#9 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt.h#11 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_cam.c#11 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_cam.h#3 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_debug.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_pci.c#10 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_raid.c#5 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_raid.h#4 integrate .. //depot/projects/dtrace/src/sys/dev/mpt/mpt_reg.h#3 integrate Differences ... ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_cnfg.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_fc.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_inb.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_init.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_ioc.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_lan.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_log_fc.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_log_sas.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_raid.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_sas.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_targ.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_tool.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpilib/mpi_type.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt.c#9 (text+ko) ==== @@ -516,11 +516,15 @@ handled = 0; msg = (MSG_EVENT_NOTIFY_REPLY *)reply_frame; + msg->EventDataLength = le16toh(msg->EventDataLength); + msg->IOCStatus = le16toh(msg->IOCStatus); + msg->IOCLogInfo = le32toh(msg->IOCLogInfo); + msg->Event = le32toh(msg->Event); MPT_PERS_FOREACH(mpt, pers) handled += pers->event(mpt, req, msg); if (handled == 0 && mpt->mpt_pers_mask == 0) { - mpt_lprt(mpt, MPT_PRT_INFO, + mpt_lprt(mpt, MPT_PRT_INFO, "No Handlers For Any Event Notify Frames. " "Event %#x (ACK %sequired).\n", msg->Event, msg->AckRequired? "r" : "not r"); @@ -535,7 +539,7 @@ request_t *ack_req; uint32_t context; - context = htole32(req->index|MPT_REPLY_HANDLER_EVENTS); + context = req->index | MPT_REPLY_HANDLER_EVENTS; ack_req = mpt_get_request(mpt, FALSE); if (ack_req == NULL) { struct mpt_evtf_record *evtf; @@ -652,9 +656,9 @@ ackp = (MSG_EVENT_ACK *)ack_req->req_vbuf; memset(ackp, 0, sizeof (*ackp)); ackp->Function = MPI_FUNCTION_EVENT_ACK; - ackp->Event = msg->Event; - ackp->EventContext = msg->EventContext; - ackp->MsgContext = context; + ackp->Event = htole32(msg->Event); + ackp->EventContext = htole32(msg->EventContext); + ackp->MsgContext = htole32(context); mpt_check_doorbell(mpt); mpt_send_cmd(mpt, ack_req); } @@ -825,7 +829,7 @@ /******************************* Doorbell Access ******************************/ static __inline uint32_t mpt_rd_db(struct mpt_softc *mpt); -static __inline uint32_t mpt_rd_intr(struct mpt_softc *mpt); +static __inline uint32_t mpt_rd_intr(struct mpt_softc *mpt); static __inline uint32_t mpt_rd_db(struct mpt_softc *mpt) @@ -1343,7 +1347,7 @@ /* Send the command */ for (i = 0; i < len; i++) { - mpt_write(mpt, MPT_OFFSET_DOORBELL, *data32++); + mpt_write(mpt, MPT_OFFSET_DOORBELL, htole32(*data32++)); if (mpt_wait_db_ack(mpt) != MPT_OK) { mpt_prt(mpt, "mpt_send_handshake_cmd timeout! index = %d\n", @@ -1359,12 +1363,13 @@ mpt_recv_handshake_reply(struct mpt_softc *mpt, size_t reply_len, void *reply) { int left, reply_left; - u_int16_t *data16; + uint16_t *data16; + uint32_t data; MSG_DEFAULT_REPLY *hdr; /* We move things out in 16 bit chunks */ reply_len >>= 1; - data16 = (u_int16_t *)reply; + data16 = (uint16_t *)reply; hdr = (MSG_DEFAULT_REPLY *)reply; @@ -1373,7 +1378,9 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout1\n"); return ETIMEDOUT; } - *data16++ = mpt_read(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; + data = mpt_read(mpt, MPT_OFFSET_DOORBELL); + + *data16++ = le16toh(data & MPT_DB_DATA_MASK); mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); /* Get Second Word */ @@ -1381,15 +1388,16 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout2\n"); return ETIMEDOUT; } - *data16++ = mpt_read(mpt, MPT_OFFSET_DOORBELL) & MPT_DB_DATA_MASK; + data = mpt_read(mpt, MPT_OFFSET_DOORBELL); + *data16++ = le16toh(data & MPT_DB_DATA_MASK); mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); /* * With the second word, we can now look at the length. * Warn about a reply that's too short (except for IOC FACTS REPLY) */ - if ((reply_len >> 1) != hdr->MsgLength && - (hdr->Function != MPI_FUNCTION_IOC_FACTS)){ + if ((reply_len >> 1) != hdr->MsgLength && + (hdr->Function != MPI_FUNCTION_IOC_FACTS)) { #if __FreeBSD_version >= 500000 mpt_prt(mpt, "reply length does not match message length: " "got %x; expected %zx for function %x\n", @@ -1411,10 +1419,11 @@ mpt_prt(mpt, "mpt_recv_handshake_cmd timeout3\n"); return ETIMEDOUT; } - datum = mpt_read(mpt, MPT_OFFSET_DOORBELL); + data = mpt_read(mpt, MPT_OFFSET_DOORBELL); + datum = le16toh(data & MPT_DB_DATA_MASK); if (reply_left-- > 0) - *data16++ = datum & MPT_DB_DATA_MASK; + *data16++ = datum; mpt_write(mpt, MPT_OFFSET_INTR_STATUS, 0); } @@ -1456,7 +1465,6 @@ { MSG_PORT_FACTS f_req; int error; - /* XXX: Only getting PORT FACTS for Port 0 */ memset(&f_req, 0, sizeof f_req); f_req.Function = MPI_FUNCTION_PORT_FACTS; @@ -1521,9 +1529,9 @@ cfgp->Header.PageLength = PageLength; cfgp->Header.PageNumber = PageNumber; cfgp->Header.PageType = PageType; - cfgp->PageAddress = PageAddress; + cfgp->PageAddress = htole32(PageAddress); se = (SGE_SIMPLE32 *)&cfgp->PageBufferSGE; - se->Address = addr; + se->Address = htole32(addr); MPI_pSGE_SET_LENGTH(se, len); MPI_pSGE_SET_FLAGS(se, (MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | @@ -1531,6 +1539,7 @@ ((Action == MPI_CONFIG_ACTION_PAGE_WRITE_CURRENT || Action == MPI_CONFIG_ACTION_PAGE_WRITE_NVRAM) ? MPI_SGE_FLAGS_HOST_TO_IOC : MPI_SGE_FLAGS_IOC_TO_HOST))); + se->FlagsLength = htole32(se->FlagsLength); cfgp->MsgContext = htole32(req->index | MPT_REPLY_HANDLER_CONFIG); mpt_check_doorbell(mpt); @@ -2450,7 +2459,7 @@ pfp.MaxDevices); mpt->mpt_port_type = pfp.PortType; - mpt->mpt_proto_flags = pfp.ProtocolFlags; + mpt->mpt_proto_flags = le16toh(pfp.ProtocolFlags); if (pfp.PortType != MPI_PORTFACTS_PORTTYPE_SCSI && pfp.PortType != MPI_PORTFACTS_PORTTYPE_SAS && pfp.PortType != MPI_PORTFACTS_PORTTYPE_FC) { @@ -2483,10 +2492,10 @@ * if this is different from what is wanted. */ mpt->role = MPT_ROLE_NONE; - if (pfp.ProtocolFlags & MPI_PORTFACTS_PROTOCOL_INITIATOR) { + if (mpt->mpt_proto_flags & MPI_PORTFACTS_PROTOCOL_INITIATOR) { mpt->role |= MPT_ROLE_INITIATOR; } - if (pfp.ProtocolFlags & MPI_PORTFACTS_PROTOCOL_TARGET) { + if (mpt->mpt_proto_flags & MPI_PORTFACTS_PROTOCOL_TARGET) { mpt->role |= MPT_ROLE_TARGET; } if (mpt_enable_ioc(mpt, 0) != MPT_OK) { ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt.h#11 (text+ko) ==== @@ -120,6 +120,7 @@ #include #include #include +#include #include #include @@ -625,6 +626,8 @@ struct req_queue request_pending_list; struct req_queue request_timeout_list; + struct task intr_task; + struct taskqueue *tq; struct cam_sim *sim; struct cam_path *path; @@ -841,13 +844,15 @@ static __inline void mpt_pio_write(struct mpt_softc *mpt, size_t offset, uint32_t val) { - bus_space_write_4(mpt->pci_pio_st, mpt->pci_pio_sh, offset, val); + bus_space_write_4(mpt->pci_pio_st, mpt->pci_pio_sh, offset, + val); } static __inline uint32_t mpt_pio_read(struct mpt_softc *mpt, int offset) { - return (bus_space_read_4(mpt->pci_pio_st, mpt->pci_pio_sh, offset)); + return (bus_space_read_4(mpt->pci_pio_st, mpt->pci_pio_sh, + offset)); } /*********************** Reply Frame/Request Management ***********************/ /* Max MPT Reply we are willing to accept (must be power of 2) */ @@ -1008,7 +1013,7 @@ static __inline request_t * mpt_tag_2_req(struct mpt_softc *mpt, uint32_t tag) { - uint16_t rtg = (tag >> 18); + uint16_t rtg = tag >> 18; KASSERT(rtg < mpt->tgt_cmds_allocated, ("bad tag %d\n", tag)); KASSERT(mpt->tgt_cmd_ptrs, ("no cmd backpointer array")); KASSERT(mpt->tgt_cmd_ptrs[rtg], ("no cmd backpointer")); ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt_cam.c#11 (text+ko) ==== @@ -982,6 +982,7 @@ MPI_pSGE_SET_FLAGS(se1, (MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST)); + se1->FlagsLength = htole32(se1->FlagsLength); goto out; } @@ -1039,9 +1040,9 @@ uint32_t tf; memset(se, 0, sizeof (*se)); - se->Address.Low = dm_segs->ds_addr; + se->Address.Low = htole32(dm_segs->ds_addr & 0xffffffff); if (sizeof(bus_addr_t) > 4) { - se->Address.High = ((uint64_t) dm_segs->ds_addr) >> 32; + se->Address.High = ((uint64_t)dm_segs->ds_addr) >> 32; } MPI_pSGE_SET_LENGTH(se, dm_segs->ds_len); tf = flags; @@ -1053,6 +1054,7 @@ MPI_SGE_FLAGS_END_OF_BUFFER; } MPI_pSGE_SET_FLAGS(se, tf); + se->FlagsLength = htole32(se->FlagsLength); } if (seg == nseg) { @@ -1115,9 +1117,9 @@ chain_list_addr += cur_off; if (sizeof (bus_addr_t) > 4) { ce->Address.High = - (uint32_t) ((uint64_t)chain_list_addr >> 32); + htole32((uint64_t)chain_list_addr >> 32); } - ce->Address.Low = (uint32_t) chain_list_addr; + ce->Address.Low = htole32(chain_list_addr & 0xffffffff); ce->Flags = MPI_SGE_FLAGS_CHAIN_ELEMENT | MPI_SGE_FLAGS_64_BIT_ADDRESSING; @@ -1154,10 +1156,11 @@ */ while (seg < this_seg_lim) { memset(se, 0, sizeof (*se)); - se->Address.Low = dm_segs->ds_addr; + se->Address.Low = + htole32(dm_segs->ds_addr & 0xffffffff); if (sizeof (bus_addr_t) > 4) { se->Address.High = - ((uint64_t)dm_segs->ds_addr) >> 32; + htole32(((uint64_t)dm_segs->ds_addr) >>32); } MPI_pSGE_SET_LENGTH(se, dm_segs->ds_len); tf = flags; @@ -1169,6 +1172,7 @@ MPI_SGE_FLAGS_END_OF_BUFFER; } MPI_pSGE_SET_FLAGS(se, tf); + se->FlagsLength = htole32(se->FlagsLength); se++; seg++; dm_segs++; @@ -1382,6 +1386,7 @@ MPI_pSGE_SET_FLAGS(se1, (MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST)); + se1->FlagsLength = htole32(se1->FlagsLength); goto out; } @@ -1453,6 +1458,7 @@ MPI_SGE_FLAGS_END_OF_BUFFER; } MPI_pSGE_SET_FLAGS(se, tf); + se->FlagsLength = htole32(se->FlagsLength); } if (seg == nseg) { @@ -1568,6 +1574,7 @@ MPI_SGE_FLAGS_END_OF_BUFFER; } MPI_pSGE_SET_FLAGS(se, tf); + se->FlagsLength = htole32(se->FlagsLength); se++; seg++; dm_segs++; @@ -1812,8 +1819,8 @@ } mpt_req->CDBLength = csio->cdb_len; - mpt_req->DataLength = csio->dxfer_len; - mpt_req->SenseBufferLowAddr = req->sense_pbuf; + mpt_req->DataLength = htole32((uint32_t)csio->dxfer_len); + mpt_req->SenseBufferLowAddr = htole32(req->sense_pbuf & 0xffffffff); /* * Do a *short* print here if we're set to MPT_PRT_DEBUG @@ -1984,16 +1991,20 @@ mpt_cam_event(struct mpt_softc *mpt, request_t *req, MSG_EVENT_NOTIFY_REPLY *msg) { + uint32_t data0, data1; + + data0 = le32toh(msg->Data[0]); + data1 = le32toh(msg->Data[1]); switch(msg->Event & 0xFF) { case MPI_EVENT_UNIT_ATTENTION: mpt_prt(mpt, "Bus: 0x%02x TargetID: 0x%02x\n", - (msg->Data[0] >> 8) & 0xff, msg->Data[0] & 0xff); + (data0 >> 8) & 0xff, data0 & 0xff); break; case MPI_EVENT_IOC_BUS_RESET: /* We generated a bus reset */ mpt_prt(mpt, "IOC Bus Reset Port: %d\n", - (msg->Data[0] >> 8) & 0xff); + (data0 >> 8) & 0xff); xpt_async(AC_BUS_RESET, mpt->path, NULL); break; @@ -2011,81 +2022,81 @@ /* * In general this means a device has been added to the loop. */ - mpt_prt(mpt, "Rescan Port: %d\n", (msg->Data[0] >> 8) & 0xff); + mpt_prt(mpt, "Rescan Port: %d\n", (data0 >> 8) & 0xff); /* xpt_async(AC_FOUND_DEVICE, path, NULL); */ break; case MPI_EVENT_LINK_STATUS_CHANGE: mpt_prt(mpt, "Port %d: LinkState: %s\n", - (msg->Data[1] >> 8) & 0xff, - ((msg->Data[0] & 0xff) == 0)? "Failed" : "Active"); + (data1 >> 8) & 0xff, + ((data0 & 0xff) == 0)? "Failed" : "Active"); break; case MPI_EVENT_LOOP_STATE_CHANGE: - switch ((msg->Data[0] >> 16) & 0xff) { + switch ((data0 >> 16) & 0xff) { case 0x01: mpt_prt(mpt, "Port 0x%x: FC LinkEvent: LIP(%02x,%02x) " "(Loop Initialization)\n", - (msg->Data[1] >> 8) & 0xff, - (msg->Data[0] >> 8) & 0xff, - (msg->Data[0] ) & 0xff); - switch ((msg->Data[0] >> 8) & 0xff) { + (data1 >> 8) & 0xff, + (data0 >> 8) & 0xff, + (data0 ) & 0xff); + switch ((data0 >> 8) & 0xff) { case 0xF7: - if ((msg->Data[0] & 0xff) == 0xF7) { + if ((data0 & 0xff) == 0xF7) { mpt_prt(mpt, "Device needs AL_PA\n"); } else { mpt_prt(mpt, "Device %02x doesn't like " "FC performance\n", - msg->Data[0] & 0xFF); + data0 & 0xFF); } break; case 0xF8: - if ((msg->Data[0] & 0xff) == 0xF7) { + if ((data0 & 0xff) == 0xF7) { mpt_prt(mpt, "Device had loop failure " "at its receiver prior to acquiring" " AL_PA\n"); } else { mpt_prt(mpt, "Device %02x detected loop" " failure at its receiver\n", - msg->Data[0] & 0xFF); + data0 & 0xFF); } break; default: mpt_prt(mpt, "Device %02x requests that device " "%02x reset itself\n", - msg->Data[0] & 0xFF, - (msg->Data[0] >> 8) & 0xFF); + data0 & 0xFF, + (data0 >> 8) & 0xFF); break; } break; case 0x02: mpt_prt(mpt, "Port 0x%x: FC LinkEvent: " "LPE(%02x,%02x) (Loop Port Enable)\n", - (msg->Data[1] >> 8) & 0xff, /* Port */ - (msg->Data[0] >> 8) & 0xff, /* Character 3 */ - (msg->Data[0] ) & 0xff /* Character 4 */); + (data1 >> 8) & 0xff, /* Port */ + (data0 >> 8) & 0xff, /* Character 3 */ + (data0 ) & 0xff /* Character 4 */); break; case 0x03: mpt_prt(mpt, "Port 0x%x: FC LinkEvent: " "LPB(%02x,%02x) (Loop Port Bypass)\n", - (msg->Data[1] >> 8) & 0xff, /* Port */ - (msg->Data[0] >> 8) & 0xff, /* Character 3 */ - (msg->Data[0] ) & 0xff /* Character 4 */); + (data1 >> 8) & 0xff, /* Port */ + (data0 >> 8) & 0xff, /* Character 3 */ + (data0 ) & 0xff /* Character 4 */); break; default: mpt_prt(mpt, "Port 0x%x: FC LinkEvent: Unknown " "FC event (%02x %02x %02x)\n", - (msg->Data[1] >> 8) & 0xff, /* Port */ - (msg->Data[0] >> 16) & 0xff, /* Event */ - (msg->Data[0] >> 8) & 0xff, /* Character 3 */ - (msg->Data[0] ) & 0xff /* Character 4 */); + (data1 >> 8) & 0xff, /* Port */ + (data0 >> 16) & 0xff, /* Event */ + (data0 >> 8) & 0xff, /* Character 3 */ + (data0 ) & 0xff /* Character 4 */); } break; case MPI_EVENT_LOGOUT: mpt_prt(mpt, "FC Logout Port: %d N_PortID: %02x\n", - (msg->Data[1] >> 8) & 0xff, msg->Data[0]); + (data1 >> 8) & 0xff, data0); break; case MPI_EVENT_EVENT_CHANGE: mpt_lprt(mpt, MPT_PRT_DEBUG, @@ -2100,7 +2111,7 @@ break; default: mpt_lprt(mpt, MPT_PRT_WARN, "mpt_cam_event: 0x%x\n", - msg->Event & 0xFF); + le32toh(msg->Event) & 0xFF); return (0); } return (1); @@ -2256,6 +2267,7 @@ { MSG_LINK_SERVICE_RSP_REQUEST tmp; PTR_MSG_LINK_SERVICE_RSP_REQUEST rsp; + uint32_t fl; /* * We are going to reuse the ELS request to send this response back. @@ -2293,15 +2305,16 @@ bus_addr_t paddr = req->req_pbuf; paddr += MPT_RQSL(mpt); - se->FlagsLength = + fl = MPI_SGE_FLAGS_HOST_TO_IOC | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST | MPI_SGE_FLAGS_END_OF_BUFFER; - se->FlagsLength <<= MPI_SGE_FLAGS_SHIFT; - se->FlagsLength |= (length); - se->Address = (uint32_t) paddr; + fl <<= MPI_SGE_FLAGS_SHIFT; + fl |= (length); + se->FlagsLength = htole32(fl); + se->Address = htole32(paddr & 0xffffffff); } #endif @@ -3660,6 +3673,7 @@ PTR_SGE_TRANSACTION32 tep; PTR_SGE_SIMPLE32 se; bus_addr_t paddr; + uint32_t fl; paddr = req->req_pbuf; paddr += MPT_RQSL(mpt); @@ -3684,15 +3698,16 @@ tep->TransactionContext[0] = htole32(ioindex); se = (PTR_SGE_SIMPLE32) &tep->TransactionDetails[0]; - se->FlagsLength = + fl = MPI_SGE_FLAGS_HOST_TO_IOC | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST | MPI_SGE_FLAGS_END_OF_BUFFER; - se->FlagsLength <<= MPI_SGE_FLAGS_SHIFT; - se->FlagsLength |= (MPT_NRFM(mpt) - MPT_RQSL(mpt)); - se->Address = (uint32_t) paddr; + fl <<= MPI_SGE_FLAGS_SHIFT; + fl |= (MPT_NRFM(mpt) - MPT_RQSL(mpt)); + se->FlagsLength = htole32(fl); + se->Address = htole32(paddr & 0xffffffff); mpt_lprt(mpt, MPT_PRT_DEBUG, "add ELS index %d ioindex %d for %p:%u\n", req->index, ioindex, req, req->serno); @@ -3720,7 +3735,7 @@ cb = &fc->Buffer[0]; cb->IoIndex = htole16(ioindex); - cb->u.PhysicalAddress32 = (U32) paddr; + cb->u.PhysicalAddress32 = htole32(paddr & 0xffffffff); mpt_check_doorbell(mpt); mpt_send_cmd(mpt, req); @@ -4190,6 +4205,7 @@ PTR_MSG_TARGET_STATUS_SEND_REQUEST tp; request_t *req; bus_addr_t paddr; + uint32_t fl; int resplen = 0; cmd_vbuf = cmd_req->req_vbuf; @@ -4310,15 +4326,16 @@ if (status == SCSI_STATUS_OK && resplen == 0) { tp->MsgFlags |= TARGET_STATUS_SEND_FLAGS_AUTO_GOOD_STATUS; } else { - tp->StatusDataSGE.u.Address32 = (uint32_t) paddr; - tp->StatusDataSGE.FlagsLength = + tp->StatusDataSGE.u.Address32 = htole32(paddr & 0xffffffff); + fl = MPI_SGE_FLAGS_HOST_TO_IOC | MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_LIST | MPI_SGE_FLAGS_END_OF_BUFFER; - tp->StatusDataSGE.FlagsLength <<= MPI_SGE_FLAGS_SHIFT; - tp->StatusDataSGE.FlagsLength |= resplen; + fl <<= MPI_SGE_FLAGS_SHIFT; + fl |= resplen; + tp->StatusDataSGE.FlagsLength = htole32(fl); } mpt_lprt(mpt, MPT_PRT_DEBUG, ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt_cam.h#3 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt_debug.c#5 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt_pci.c#10 (text+ko) ==== @@ -190,7 +190,8 @@ static int mpt_dma_mem_alloc(struct mpt_softc *mpt); static void mpt_dma_mem_free(struct mpt_softc *mpt); static void mpt_read_config_regs(struct mpt_softc *mpt); -static void mpt_pci_intr(void *); +static void mpt_pci_fastintr(void *); +static void mpt_pci_handle_intr(void *, int); static device_method_t mpt_methods[] = { /* Device interface */ @@ -243,14 +244,28 @@ desc = "LSILogic 1030 Ultra4 Adapter"; break; case PCI_PRODUCT_LSI_SAS1064: + desc = "LSILogic SAS1064 Adapter"; + break; case PCI_PRODUCT_LSI_SAS1064A: + desc = "LSILogic SAS1064A Adapter"; + break; case PCI_PRODUCT_LSI_SAS1064E: + desc = "LSILogic SAS1064E Adapter"; + break; case PCI_PRODUCT_LSI_SAS1066: + desc = "LSILogic SAS1066 Adapter"; + break; case PCI_PRODUCT_LSI_SAS1066E: + desc = "LSILogic SAS1066E Adapter"; + break; case PCI_PRODUCT_LSI_SAS1068: + desc = "LSILogic SAS1068 Adapter"; + break; case PCI_PRODUCT_LSI_SAS1068E: + desc = "LSILogic SAS1068E Adapter"; + break; case PCI_PRODUCT_LSI_SAS1078: - desc = "LSILogic SAS Adapter"; + desc = "LSILogic SAS1078 Adapter"; break; default: return (ENXIO); @@ -521,8 +536,13 @@ mpt_disable_ints(mpt); /* Register the interrupt handler */ - if (bus_setup_intr(dev, mpt->pci_irq, MPT_IFLAGS, mpt_pci_intr, - mpt, &mpt->ih)) { + TASK_INIT(&mpt->intr_task, 0, mpt_pci_handle_intr, mpt); + mpt->tq = taskqueue_create_fast("mpt_taskq", M_NOWAIT, + taskqueue_thread_enqueue, &mpt->tq); + taskqueue_start_threads(&mpt->tq, 1, PI_DISK, "%s taskq", + device_get_nameunit(dev)); + if (bus_setup_intr(dev, mpt->pci_irq, INTR_TYPE_CAM|INTR_FAST, + mpt_pci_fastintr, mpt, &mpt->ih)) { device_printf(dev, "could not setup interrupt\n"); goto bad; } @@ -704,7 +724,7 @@ * Align at byte boundaries, * Limit to 32-bit addressing for request/reply queues. */ - if (mpt_dma_tag_create(mpt, /*parent*/ NULL /* XXX bus_get_dma_tag(dev) */, + if (mpt_dma_tag_create(mpt, /*parent*/bus_get_dma_tag(mpt->dev), /*alignment*/1, /*boundary*/0, /*lowaddr*/BUS_SPACE_MAXADDR, /*highaddr*/BUS_SPACE_MAXADDR, /*filter*/NULL, /*filterarg*/NULL, /*maxsize*/BUS_SPACE_MAXSIZE_32BIT, @@ -918,12 +938,26 @@ } static void -mpt_pci_intr(void *arg) +mpt_pci_fastintr(void *arg) +{ + struct mpt_softc *mpt; + + mpt = (struct mpt_softc *)arg; + mpt_disable_ints(mpt); + taskqueue_enqueue(mpt->tq, &mpt->intr_task); + return; +} + +static void +mpt_pci_handle_intr(void *arg, int pending) { struct mpt_softc *mpt; mpt = (struct mpt_softc *)arg; + mtx_lock(&Giant); MPT_LOCK(mpt); mpt_intr(mpt); MPT_UNLOCK(mpt); + mtx_unlock(&Giant); + mpt_enable_ints(mpt); } ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt_raid.c#5 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt_raid.h#4 (text+ko) ==== ==== //depot/projects/dtrace/src/sys/dev/mpt/mpt_reg.h#3 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Fri Jul 14 20:29:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0D14E16A4DA; Fri, 14 Jul 2006 20:29:42 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 BBC5F16A4DF for ; Fri, 14 Jul 2006 20:29:41 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7CFB843D46 for ; Fri, 14 Jul 2006 20:29:41 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EKTflK037765 for ; Fri, 14 Jul 2006 20:29:41 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EKTflK037762 for perforce@freebsd.org; Fri, 14 Jul 2006 20:29:41 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 20:29:41 GMT Message-Id: <200607142029.k6EKTflK037762@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101598 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 20:29:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=101598 Change 101598 by jb@jb_freebsd2 on 2006/07/14 20:29:11 Remove some debugging cruft. Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#10 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/dev/mpt/mpt.c#10 (text+ko) ==== @@ -672,9 +672,7 @@ int ntrips = 0; mpt = (struct mpt_softc *)arg; -#ifdef DOODAD mpt_lprt(mpt, MPT_PRT_DEBUG2, "enter mpt_intr\n"); -#endif while ((reply_desc = mpt_pop_reply_queue(mpt)) != MPT_REPLY_EMPTY) { request_t *req; MSG_DEFAULT_REPLY *reply_frame; @@ -790,9 +788,7 @@ break; } } -#ifdef DOODAD mpt_lprt(mpt, MPT_PRT_DEBUG2, "exit mpt_intr\n"); -#endif } /******************************* Error Recovery *******************************/ @@ -1993,7 +1989,6 @@ } } } -mpt_prt(mpt, "attach was successful!\n"); return (0); } From owner-p4-projects@FreeBSD.ORG Fri Jul 14 21:58:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 94D7216A4E0; Fri, 14 Jul 2006 21:58:47 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 5569716A4DE for ; Fri, 14 Jul 2006 21:58:47 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2C45543D60 for ; Fri, 14 Jul 2006 21:58:36 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ELwakv051097 for ; Fri, 14 Jul 2006 21:58:36 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ELwX6K051094 for perforce@freebsd.org; Fri, 14 Jul 2006 21:58:33 GMT (envelope-from peter@freebsd.org) Date: Fri, 14 Jul 2006 21:58:33 GMT Message-Id: <200607142158.k6ELwX6K051094@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 Cc: Subject: PERFORCE change 101602 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 21:58:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=101602 Change 101602 by peter@peter_daintree on 2006/07/14 21:57:56 IFC @101601 Untested Affected files ... .. //depot/projects/bike_sched/sys/amd64/amd64/db_trace.c#2 integrate .. //depot/projects/bike_sched/sys/amd64/amd64/identcpu.c#2 integrate .. //depot/projects/bike_sched/sys/amd64/amd64/intr_machdep.c#2 integrate .. //depot/projects/bike_sched/sys/amd64/amd64/local_apic.c#2 integrate .. //depot/projects/bike_sched/sys/amd64/amd64/pmap.c#5 integrate .. //depot/projects/bike_sched/sys/amd64/conf/GENERIC#4 integrate .. //depot/projects/bike_sched/sys/amd64/include/specialreg.h#2 integrate .. //depot/projects/bike_sched/sys/amd64/linux32/linux32_proto.h#3 integrate .. //depot/projects/bike_sched/sys/amd64/linux32/linux32_syscall.h#3 integrate .. //depot/projects/bike_sched/sys/amd64/linux32/linux32_sysent.c#3 integrate .. //depot/projects/bike_sched/sys/amd64/linux32/syscalls.master#3 integrate .. //depot/projects/bike_sched/sys/arm/arm/db_trace.c#2 integrate .. //depot/projects/bike_sched/sys/arm/arm/gdb_machdep.c#1 branch .. //depot/projects/bike_sched/sys/arm/arm/pmap.c#3 integrate .. //depot/projects/bike_sched/sys/arm/at91/at91_rtc.c#2 integrate .. //depot/projects/bike_sched/sys/arm/at91/at91_spi.c#2 integrate .. //depot/projects/bike_sched/sys/arm/at91/at91_spiio.h#2 delete .. //depot/projects/bike_sched/sys/arm/at91/at91_spireg.h#2 integrate .. //depot/projects/bike_sched/sys/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/bike_sched/sys/arm/at91/std.at91#2 integrate .. //depot/projects/bike_sched/sys/arm/at91/std.kb920x#2 integrate .. //depot/projects/bike_sched/sys/arm/at91/uart_dev_at91usart.c#3 integrate .. //depot/projects/bike_sched/sys/arm/conf/KB920X#3 integrate .. //depot/projects/bike_sched/sys/arm/include/gdb_machdep.h#1 branch .. //depot/projects/bike_sched/sys/arm/xscale/i80321/i80321_timer.c#2 integrate .. //depot/projects/bike_sched/sys/cam/scsi/scsi_cd.c#2 integrate .. //depot/projects/bike_sched/sys/cam/scsi/scsi_da.c#2 integrate .. //depot/projects/bike_sched/sys/compat/freebsd32/freebsd32_misc.c#3 integrate .. //depot/projects/bike_sched/sys/compat/freebsd32/syscalls.master#3 integrate .. //depot/projects/bike_sched/sys/compat/linux/linux_file.c#2 integrate .. //depot/projects/bike_sched/sys/compat/linux/linux_ioctl.c#2 integrate .. //depot/projects/bike_sched/sys/compat/linux/linux_ipc.c#3 integrate .. //depot/projects/bike_sched/sys/compat/linux/linux_socket.c#2 integrate .. //depot/projects/bike_sched/sys/compat/svr4/svr4_ipc.c#3 integrate .. //depot/projects/bike_sched/sys/compat/svr4/svr4_misc.c#3 integrate .. //depot/projects/bike_sched/sys/compat/svr4/svr4_proto.h#3 integrate .. //depot/projects/bike_sched/sys/compat/svr4/svr4_stream.c#2 integrate .. //depot/projects/bike_sched/sys/compat/svr4/svr4_syscall.h#3 integrate .. //depot/projects/bike_sched/sys/compat/svr4/svr4_syscallnames.c#3 integrate .. //depot/projects/bike_sched/sys/compat/svr4/svr4_sysent.c#3 integrate .. //depot/projects/bike_sched/sys/compat/svr4/svr4_util.h#2 integrate .. //depot/projects/bike_sched/sys/compat/svr4/syscalls.master#3 integrate .. //depot/projects/bike_sched/sys/conf/NOTES#3 integrate .. //depot/projects/bike_sched/sys/conf/files#4 integrate .. //depot/projects/bike_sched/sys/conf/files.arm#3 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_bstream.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_bstream.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_context.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_env.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_self.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_self_context.s#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_step.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_str.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_str.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_swap.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_swap.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#2 delete .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#2 delete .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_utable.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/ia64/libuwx/src/uwx_utable.h#2 integrate .. //depot/projects/bike_sched/sys/contrib/pf/net/if_pflog.c#2 integrate .. //depot/projects/bike_sched/sys/contrib/pf/net/if_pfsync.c#3 integrate .. //depot/projects/bike_sched/sys/crypto/via/padlock.c#3 integrate .. //depot/projects/bike_sched/sys/ddb/db_command.c#2 integrate .. //depot/projects/bike_sched/sys/ddb/db_output.c#2 integrate .. //depot/projects/bike_sched/sys/ddb/db_output.h#2 integrate .. //depot/projects/bike_sched/sys/ddb/db_ps.c#3 integrate .. //depot/projects/bike_sched/sys/ddb/db_thread.c#2 integrate .. //depot/projects/bike_sched/sys/ddb/ddb.h#2 integrate .. //depot/projects/bike_sched/sys/dev/aac/aac_cam.c#2 integrate .. //depot/projects/bike_sched/sys/dev/asr/MAINTAINER#2 delete .. //depot/projects/bike_sched/sys/dev/bce/if_bce.c#3 integrate .. //depot/projects/bike_sched/sys/dev/fdc/fdc.c#2 integrate .. //depot/projects/bike_sched/sys/dev/ic/nec765.h#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/isp.c#3 integrate .. //depot/projects/bike_sched/sys/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/isp_pci.c#3 integrate .. //depot/projects/bike_sched/sys/dev/isp/isp_sbus.c#2 integrate .. //depot/projects/bike_sched/sys/dev/isp/isp_target.c#2 integrate .. //depot/projects/bike_sched/sys/dev/ispfw/asm_1040.h#2 integrate .. //depot/projects/bike_sched/sys/dev/ispfw/asm_1080.h#2 integrate .. //depot/projects/bike_sched/sys/dev/ispfw/asm_12160.h#2 integrate .. //depot/projects/bike_sched/sys/dev/ispfw/ispfw.c#3 integrate .. //depot/projects/bike_sched/sys/dev/mpt/mpt.c#3 integrate .. //depot/projects/bike_sched/sys/dev/mpt/mpt.h#3 integrate .. //depot/projects/bike_sched/sys/dev/mpt/mpt_cam.c#3 integrate .. //depot/projects/bike_sched/sys/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/bike_sched/sys/dev/mpt/mpt_pci.c#3 integrate .. //depot/projects/bike_sched/sys/dev/ncv/ncr53c500_pccard.c#2 integrate .. //depot/projects/bike_sched/sys/dev/pccard/pccarddevs#2 integrate .. //depot/projects/bike_sched/sys/dev/pci/pci.c#2 integrate .. //depot/projects/bike_sched/sys/dev/random/probe.c#2 integrate .. //depot/projects/bike_sched/sys/dev/sound/midi/sequencer.c#3 integrate .. //depot/projects/bike_sched/sys/dev/sound/pci/solo.c#2 integrate .. //depot/projects/bike_sched/sys/dev/stg/tmc18c30_subr.c#2 integrate .. //depot/projects/bike_sched/sys/doc/Doxyfile#2 delete .. //depot/projects/bike_sched/sys/doc/Makefile#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Dependencies#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-cam#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-crypto#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-dev_pci#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-dev_sound#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-dev_usb#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-geom#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-i4b#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-kern#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-libkern#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-linux#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-net80211#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-netgraph#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-netinet#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-netinet6#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-netipsec#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-opencrypto#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Doxyfile-vm#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/Makefile#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/README#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/bike_sched/sys/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/bike_sched/sys/fs/devfs/devfs_vfsops.c#2 integrate .. //depot/projects/bike_sched/sys/fs/devfs/devfs_vnops.c#2 integrate .. //depot/projects/bike_sched/sys/fs/portalfs/portal_vnops.c#2 integrate .. //depot/projects/bike_sched/sys/fs/unionfs/union_vnops.c#2 integrate .. //depot/projects/bike_sched/sys/geom/geom.h#3 integrate .. //depot/projects/bike_sched/sys/geom/mirror/g_mirror.c#3 integrate .. //depot/projects/bike_sched/sys/geom/mirror/g_mirror_ctl.c#2 integrate .. //depot/projects/bike_sched/sys/geom/raid3/g_raid3.c#3 integrate .. //depot/projects/bike_sched/sys/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/bike_sched/sys/i386/conf/GENERIC#4 integrate .. //depot/projects/bike_sched/sys/i386/conf/PAE#2 integrate .. //depot/projects/bike_sched/sys/i386/i386/db_trace.c#3 integrate .. //depot/projects/bike_sched/sys/i386/i386/identcpu.c#3 integrate .. //depot/projects/bike_sched/sys/i386/i386/initcpu.c#2 integrate .. //depot/projects/bike_sched/sys/i386/i386/intr_machdep.c#5 integrate .. //depot/projects/bike_sched/sys/i386/i386/local_apic.c#5 integrate .. //depot/projects/bike_sched/sys/i386/i386/machdep.c#3 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_ipc.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_ipc.h#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_isc_syscall.h#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_isc_sysent.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_misc.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_msg.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_other.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_poll.h#2 delete .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_proto.h#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_syscall.h#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_sysent.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_util.h#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_xenix.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_xenix.h#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_xenix_syscall.h#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/ibcs2_xenix_sysent.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/imgact_coff.c#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/syscalls.isc#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/syscalls.master#2 integrate .. //depot/projects/bike_sched/sys/i386/ibcs2/syscalls.xenix#2 integrate .. //depot/projects/bike_sched/sys/i386/include/i4b_ioctl.h#2 integrate .. //depot/projects/bike_sched/sys/i386/include/md_var.h#2 integrate .. //depot/projects/bike_sched/sys/i386/include/specialreg.h#3 integrate .. //depot/projects/bike_sched/sys/i386/linux/linux_proto.h#3 integrate .. //depot/projects/bike_sched/sys/i386/linux/linux_syscall.h#3 integrate .. //depot/projects/bike_sched/sys/i386/linux/linux_sysent.c#3 integrate .. //depot/projects/bike_sched/sys/i386/linux/syscalls.master#3 integrate .. //depot/projects/bike_sched/sys/i4b/layer4/i4b_l4mgmt.c#2 integrate .. //depot/projects/bike_sched/sys/ia64/conf/GENERIC#3 integrate .. //depot/projects/bike_sched/sys/ia64/ia64/db_machdep.c#2 integrate .. //depot/projects/bike_sched/sys/isa/isahint.c#2 integrate .. //depot/projects/bike_sched/sys/kern/bus_if.m#2 integrate .. //depot/projects/bike_sched/sys/kern/init_sysent.c#4 integrate .. //depot/projects/bike_sched/sys/kern/kern_acl.c#2 integrate .. //depot/projects/bike_sched/sys/kern/kern_descrip.c#3 integrate .. //depot/projects/bike_sched/sys/kern/kern_environment.c#2 integrate .. //depot/projects/bike_sched/sys/kern/kern_intr.c#4 integrate .. //depot/projects/bike_sched/sys/kern/kern_ktr.c#2 integrate .. //depot/projects/bike_sched/sys/kern/kern_linker.c#3 integrate .. //depot/projects/bike_sched/sys/kern/kern_lock.c#2 integrate .. //depot/projects/bike_sched/sys/kern/kern_prot.c#2 integrate .. //depot/projects/bike_sched/sys/kern/kern_thr.c#3 integrate .. //depot/projects/bike_sched/sys/kern/subr_acl_posix1e.c#2 integrate .. //depot/projects/bike_sched/sys/kern/subr_bus.c#3 integrate .. //depot/projects/bike_sched/sys/kern/subr_hints.c#2 integrate .. //depot/projects/bike_sched/sys/kern/subr_prf.c#2 integrate .. //depot/projects/bike_sched/sys/kern/subr_turnstile.c#2 integrate .. //depot/projects/bike_sched/sys/kern/sys_generic.c#2 integrate .. //depot/projects/bike_sched/sys/kern/syscalls.c#4 integrate .. //depot/projects/bike_sched/sys/kern/syscalls.master#5 integrate .. //depot/projects/bike_sched/sys/kern/sysv_sem.c#3 integrate .. //depot/projects/bike_sched/sys/kern/uipc_domain.c#2 integrate .. //depot/projects/bike_sched/sys/kern/uipc_socket.c#3 integrate .. //depot/projects/bike_sched/sys/kern/uipc_socket2.c#3 integrate .. //depot/projects/bike_sched/sys/kern/uipc_syscalls.c#3 integrate .. //depot/projects/bike_sched/sys/kern/uipc_usrreq.c#3 integrate .. //depot/projects/bike_sched/sys/kern/vfs_syscalls.c#3 integrate .. //depot/projects/bike_sched/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/bike_sched/sys/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/bike_sched/sys/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/bike_sched/sys/net/if.c#3 integrate .. //depot/projects/bike_sched/sys/net/if_bridge.c#3 integrate .. //depot/projects/bike_sched/sys/net/if_clone.c#3 integrate .. //depot/projects/bike_sched/sys/net/if_clone.h#2 integrate .. //depot/projects/bike_sched/sys/net/if_disc.c#2 integrate .. //depot/projects/bike_sched/sys/net/if_enc.c#3 integrate .. //depot/projects/bike_sched/sys/net/if_faith.c#2 integrate .. //depot/projects/bike_sched/sys/net/if_gif.c#3 integrate .. //depot/projects/bike_sched/sys/net/if_gre.c#2 integrate .. //depot/projects/bike_sched/sys/net/if_loop.c#2 integrate .. //depot/projects/bike_sched/sys/net/if_ppp.c#2 integrate .. //depot/projects/bike_sched/sys/net/if_stf.c#3 integrate .. //depot/projects/bike_sched/sys/net/if_vlan.c#3 integrate .. //depot/projects/bike_sched/sys/net/rtsock.c#2 integrate .. //depot/projects/bike_sched/sys/netinet/ip_carp.c#2 integrate .. //depot/projects/bike_sched/sys/netinet/ip_ipsec.c#2 integrate .. //depot/projects/bike_sched/sys/nfs4client/nfs4_vnops.c#2 integrate .. //depot/projects/bike_sched/sys/nfsclient/nfs_socket.c#2 integrate .. //depot/projects/bike_sched/sys/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/bike_sched/sys/pc98/conf/GENERIC#3 integrate .. //depot/projects/bike_sched/sys/pc98/pc98/machdep.c#4 integrate .. //depot/projects/bike_sched/sys/posix4/ksched.c#4 integrate .. //depot/projects/bike_sched/sys/posix4/p1003_1b.c#2 integrate .. //depot/projects/bike_sched/sys/posix4/posix4.h#2 integrate .. //depot/projects/bike_sched/sys/powerpc/powerpc/db_trace.c#2 integrate .. //depot/projects/bike_sched/sys/powerpc/powerpc/mmu_oea.c#4 integrate .. //depot/projects/bike_sched/sys/security/audit/audit_bsm.c#3 integrate .. //depot/projects/bike_sched/sys/security/mac_biba/mac_biba.c#2 integrate .. //depot/projects/bike_sched/sys/sparc64/conf/GENERIC#3 integrate .. //depot/projects/bike_sched/sys/sparc64/sparc64/db_trace.c#2 integrate .. //depot/projects/bike_sched/sys/sys/bus.h#2 integrate .. //depot/projects/bike_sched/sys/sys/protosw.h#3 integrate .. //depot/projects/bike_sched/sys/sys/sockio.h#3 integrate .. //depot/projects/bike_sched/sys/sys/syscall.h#4 integrate .. //depot/projects/bike_sched/sys/sys/syscall.mk#4 integrate .. //depot/projects/bike_sched/sys/sys/syscallsubr.h#3 integrate .. //depot/projects/bike_sched/sys/sys/sysproto.h#4 integrate .. //depot/projects/bike_sched/sys/sys/systm.h#2 integrate .. //depot/projects/bike_sched/sys/sys/thr.h#2 integrate .. //depot/projects/bike_sched/sys/ufs/ffs/ffs_vfsops.c#2 integrate .. //depot/projects/bike_sched/sys/ufs/ufs/ufs_lookup.c#2 integrate .. //depot/projects/bike_sched/sys/vm/vm_meter.c#3 integrate Differences ... ==== //depot/projects/bike_sched/sys/amd64/amd64/db_trace.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.74 2006/03/13 23:56:44 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.75 2006/07/12 21:22:42 jhb Exp $"); #include #include @@ -390,16 +390,14 @@ long *argp; db_expr_t offset; c_db_sym_t sym; - int narg, quit; + int narg; boolean_t first; if (count == -1) count = 1024; first = TRUE; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && !quit) { + while (count-- && !db_pager_quit) { sym = db_search_symbol(pc, DB_STGY_ANY, &offset); db_symbol_values(sym, &name, NULL); ==== //depot/projects/bike_sched/sys/amd64/amd64/identcpu.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.146 2006/04/24 22:56:57 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.147 2006/07/12 06:04:11 jkim Exp $"); #include "opt_cpu.h" @@ -306,8 +306,8 @@ "\020" "\001LAHF" /* LAHF/SAHF in long mode */ "\002CMP" /* CMP legacy */ - "\003" - "\004" + "\003SVM" /* Secure Virtual Mode */ + "\004ExtAPIC" /* Extended APIC register */ "\005CR8" /* CR8 in legacy mode */ "\006" "\007" ==== //depot/projects/bike_sched/sys/amd64/amd64/intr_machdep.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.19 2006/02/28 22:24:54 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.20 2006/07/12 21:22:42 jhb Exp $ */ /* @@ -338,16 +338,14 @@ DB_SHOW_COMMAND(irqs, db_show_irqs) { struct intsrc **isrc; - int i, quit, verbose; + int i, verbose; - quit = 0; if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; isrc = interrupt_sources; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < NUM_IO_INTS && !quit; i++, isrc++) + for (i = 0; i < NUM_IO_INTS && !db_pager_quit; i++, isrc++) if (*isrc != NULL) db_dump_intr_event((*isrc)->is_event, verbose); } ==== //depot/projects/bike_sched/sys/amd64/amd64/local_apic.c#2 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.25 2006/03/20 19:39:07 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.26 2006/07/12 21:22:42 jhb Exp $"); #include "opt_hwpmc_hooks.h" @@ -755,18 +755,16 @@ DB_SHOW_COMMAND(apic, db_show_apic) { struct intsrc *isrc; - int quit, i, verbose; + int i, verbose; u_int irq; - quit = 0; if (strcmp(modif, "vv") == 0) verbose = 2; else if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < APIC_NUM_IOINTS + 1 && !quit; i++) { + for (i = 0; i < APIC_NUM_IOINTS + 1 && !db_pager_quit; i++) { irq = ioint_irqs[i]; if (irq != 0 && irq != IRQ_SYSCALL) { db_printf("vec 0x%2x -> ", i + APIC_IO_INTS); ==== //depot/projects/bike_sched/sys/amd64/amd64/pmap.c#5 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.564 2006/07/05 07:04:31 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -3050,14 +3050,12 @@ pmap = PV_PMAP(pv); PMAP_LOCK(pmap); pte = pmap_pte(pmap, pv->pv_va); - if (pte != NULL && (*pte & PG_A) != 0) { + if ((*pte & PG_A) != 0) { atomic_clear_long(pte, PG_A); pmap_invalidate_page(pmap, pv->pv_va); rtval++; - if (rtval > 4) { - PMAP_UNLOCK(pmap); - break; - } + if (rtval > 4) + pvn = NULL; } PMAP_UNLOCK(pmap); } while ((pv = pvn) != NULL && pv != pvf); ==== //depot/projects/bike_sched/sys/amd64/conf/GENERIC#4 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.463 2006/07/05 02:32:55 davidxu Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.464 2006/07/09 16:39:21 mjacob Exp $ cpu HAMMER ident GENERIC @@ -251,6 +251,7 @@ device md # Memory "disks" device gif # IPv6 and IPv4 tunneling device faith # IPv6-to-IPv4 relaying (translation) +device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! ==== //depot/projects/bike_sched/sys/amd64/include/specialreg.h#2 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * from: @(#)specialreg.h 7.1 (Berkeley) 5/9/91 - * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.33 2006/05/01 22:07:00 jhb Exp $ + * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.35 2006/07/13 16:09:40 jkim Exp $ */ #ifndef _MACHINE_SPECIALREG_H_ @@ -109,16 +109,18 @@ #define CPUID_SS 0x08000000 #define CPUID_HTT 0x10000000 #define CPUID_TM 0x20000000 -#define CPUID_B30 0x40000000 +#define CPUID_IA64 0x40000000 #define CPUID_PBE 0x80000000 #define CPUID2_SSE3 0x00000001 #define CPUID2_MON 0x00000008 #define CPUID2_DS_CPL 0x00000010 +#define CPUID2_VMX 0x00000020 #define CPUID2_EST 0x00000080 #define CPUID2_TM2 0x00000100 #define CPUID2_CNTXID 0x00000400 #define CPUID2_CX16 0x00002000 +#define CPUID2_XTPR 0x00004000 /* * Important bits in the AMD extended cpuid flags @@ -135,6 +137,8 @@ #define AMDID2_LAHF 0x00000001 #define AMDID2_CMP 0x00000002 +#define AMDID2_SVM 0x00000004 +#define AMDID2_EXT_APIC 0x00000008 #define AMDID2_CR8 0x00000010 /* @@ -188,6 +192,7 @@ #define MSR_THERM_CONTROL 0x19a #define MSR_THERM_INTERRUPT 0x19b #define MSR_THERM_STATUS 0x19c +#define MSR_IA32_MISC_ENABLE 0x1a0 #define MSR_DEBUGCTLMSR 0x1d9 #define MSR_LASTBRANCHFROMIP 0x1db #define MSR_LASTBRANCHTOIP 0x1dc @@ -356,7 +361,7 @@ #define AMD_WT_ALLOC_PRE 0x20000 /* programmable range enable */ #define AMD_WT_ALLOC_FRE 0x10000 /* fixed (A0000-FFFFF) range enable */ -/* X86-64 MSR's */ +/* AMD64 MSR's */ #define MSR_EFER 0xc0000080 /* extended features */ #define MSR_STAR 0xc0000081 /* legacy mode SYSCALL target/cs/ss */ #define MSR_LSTAR 0xc0000082 /* long mode SYSCALL target rip */ ==== //depot/projects/bike_sched/sys/amd64/linux32/linux32_proto.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/bike_sched/sys/amd64/linux32/linux32_syscall.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/bike_sched/sys/amd64/linux32/linux32_sysent.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.16 2006/06/27 18:32:16 jhb Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.18 2006/07/11 20:55:22 jhb Exp $ + * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp */ #include @@ -74,7 +74,7 @@ { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ { SYF_MPSAFE | AS(linux_umount_args), (sy_call_t *)linux_umount, AUE_UMOUNT }, /* 52 = linux_umount */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = lock */ - { AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ + { SYF_MPSAFE | AS(linux_ioctl_args), (sy_call_t *)linux_ioctl, AUE_IOCTL }, /* 54 = linux_ioctl */ { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl, AUE_FCNTL }, /* 55 = linux_fcntl */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = mpx */ { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 57 = setpgid */ @@ -109,7 +109,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 86 = linux_uselib */ { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon, AUE_SWAPON }, /* 87 = swapon */ { SYF_MPSAFE | AS(linux_reboot_args), (sy_call_t *)linux_reboot, AUE_REBOOT }, /* 88 = linux_reboot */ - { AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ + { SYF_MPSAFE | AS(linux_readdir_args), (sy_call_t *)linux_readdir, AUE_O_GETDENTS }, /* 89 = linux_readdir */ { SYF_MPSAFE | AS(linux_mmap_args), (sy_call_t *)linux_mmap, AUE_MMAP }, /* 90 = linux_mmap */ { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap, AUE_MUNMAP }, /* 91 = munmap */ { SYF_MPSAFE | AS(linux_truncate_args), (sy_call_t *)linux_truncate, AUE_TRUNCATE }, /* 92 = linux_truncate */ @@ -161,7 +161,7 @@ { SYF_MPSAFE | AS(linux_setfsuid16_args), (sy_call_t *)linux_setfsuid16, AUE_SETFSUID }, /* 138 = linux_setfsuid16 */ { SYF_MPSAFE | AS(linux_setfsgid16_args), (sy_call_t *)linux_setfsgid16, AUE_SETFSGID }, /* 139 = linux_setfsgid16 */ { SYF_MPSAFE | AS(linux_llseek_args), (sy_call_t *)linux_llseek, AUE_LSEEK }, /* 140 = linux_llseek */ - { AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ + { SYF_MPSAFE | AS(linux_getdents_args), (sy_call_t *)linux_getdents, AUE_O_GETDENTS }, /* 141 = linux_getdents */ { SYF_MPSAFE | AS(linux_select_args), (sy_call_t *)linux_select, AUE_SELECT }, /* 142 = linux_select */ { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock, AUE_FLOCK }, /* 143 = flock */ { SYF_MPSAFE | AS(linux_msync_args), (sy_call_t *)linux_msync, AUE_MSYNC }, /* 144 = linux_msync */ @@ -240,7 +240,7 @@ { SYF_MPSAFE | AS(linux_pivot_root_args), (sy_call_t *)linux_pivot_root, AUE_PIVOT_ROOT }, /* 217 = linux_pivot_root */ { SYF_MPSAFE | AS(linux_mincore_args), (sy_call_t *)linux_mincore, AUE_MINCORE }, /* 218 = linux_mincore */ { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise, AUE_MADVISE }, /* 219 = madvise */ - { AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ + { SYF_MPSAFE | AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_O_GETDENTS }, /* 220 = linux_getdents64 */ { SYF_MPSAFE | AS(linux_fcntl64_args), (sy_call_t *)linux_fcntl64, AUE_FCNTL }, /* 221 = linux_fcntl64 */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 222 = */ { 0, (sy_call_t *)nosys, AUE_NULL }, /* 223 = */ ==== //depot/projects/bike_sched/sys/amd64/linux32/syscalls.master#3 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.14 2006/06/27 18:28:49 jhb Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.16 2006/07/11 20:52:07 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -113,7 +113,7 @@ 51 AUE_ACCT MNOPROTO { int acct(char *path); } 52 AUE_UMOUNT MSTD { int linux_umount(char *path, l_int flags); } 53 AUE_NULL UNIMPL lock -54 AUE_IOCTL STD { int linux_ioctl(l_uint fd, l_uint cmd, \ +54 AUE_IOCTL MSTD { int linux_ioctl(l_uint fd, l_uint cmd, \ uintptr_t arg); } 55 AUE_FCNTL MSTD { int linux_fcntl(l_uint fd, l_uint cmd, \ uintptr_t arg); } @@ -169,7 +169,7 @@ 87 AUE_SWAPON MNOPROTO { int swapon(char *name); } 88 AUE_REBOOT MSTD { int linux_reboot(l_int magic1, \ l_int magic2, l_uint cmd, void *arg); } -89 AUE_O_GETDENTS STD { int linux_readdir(l_uint fd, \ +89 AUE_O_GETDENTS MSTD { int linux_readdir(l_uint fd, \ struct l_dirent *dent, l_uint count); } 90 AUE_MMAP MSTD { int linux_mmap(struct l_mmap_argv *ptr); } 91 AUE_MUNMAP MNOPROTO { int munmap(caddr_t addr, int len); } @@ -246,7 +246,7 @@ 140 AUE_LSEEK MSTD { int linux_llseek(l_int fd, l_ulong ohigh, \ l_ulong olow, l_loff_t *res, \ l_uint whence); } -141 AUE_O_GETDENTS STD { int linux_getdents(l_uint fd, void *dent, \ +141 AUE_O_GETDENTS MSTD { int linux_getdents(l_uint fd, void *dent, \ l_uint count); } 142 AUE_SELECT MSTD { int linux_select(l_int nfds, \ l_fd_set *readfds, l_fd_set *writefds, \ @@ -381,7 +381,7 @@ l_size_t len, u_char *vec); } 219 AUE_MADVISE MNOPROTO { int madvise(void *addr, size_t len, \ int behav); } -220 AUE_O_GETDENTS STD { int linux_getdents64(l_uint fd, \ +220 AUE_O_GETDENTS MSTD { int linux_getdents64(l_uint fd, \ void *dirent, l_uint count); } 221 AUE_FCNTL MSTD { int linux_fcntl64(l_uint fd, l_uint cmd, \ uintptr_t arg); } ==== //depot/projects/bike_sched/sys/arm/arm/db_trace.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/db_trace.c,v 1.12 2005/09/10 03:01:24 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/db_trace.c,v 1.13 2006/07/12 21:22:42 jhb Exp $"); #include #include @@ -93,15 +93,13 @@ db_expr_t value; db_expr_t offset; boolean_t kernel_only = TRUE; - int scp_offset, quit; + int scp_offset; frame = (u_int32_t *)addr; lastframe = NULL; scp_offset = -(get_pc_str_offset() >> 2); - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && frame != NULL && !quit) { + while (count-- && frame != NULL && !db_pager_quit) { db_addr_t scp; u_int32_t savecode; int r; ==== //depot/projects/bike_sched/sys/arm/arm/pmap.c#3 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.64 2006/06/15 01:01:05 ups Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.65 2006/07/11 11:22:06 cognet Exp $"); #include #include #include @@ -199,7 +199,7 @@ static pv_entry_t pmap_get_pv_entry(void); static void pmap_enter_locked(pmap_t, vm_offset_t, vm_page_t, - vm_prot_t, boolean_t); + vm_prot_t, boolean_t, int); static void pmap_vac_me_harder(struct vm_page *, pmap_t, vm_offset_t); static void pmap_vac_me_kpmap(struct vm_page *, pmap_t, @@ -373,7 +373,7 @@ * L2 allocation. */ #define pmap_alloc_l2_dtable() \ - (void*)uma_zalloc(l2table_zone, M_NOWAIT) + (void*)uma_zalloc(l2table_zone, M_NOWAIT|M_USE_RESERVE) #define pmap_free_l2_dtable(l2) \ uma_zfree(l2table_zone, l2) @@ -952,7 +952,7 @@ again_ptep: PMAP_UNLOCK(pm); vm_page_unlock_queues(); - ptep = (void*)uma_zalloc(l2zone, M_NOWAIT); + ptep = (void*)uma_zalloc(l2zone, M_NOWAIT|M_USE_RESERVE); vm_page_lock_queues(); PMAP_LOCK(pm); if (l2b->l2b_kva != 0) { @@ -3306,7 +3306,7 @@ vm_page_lock_queues(); PMAP_LOCK(pmap); - pmap_enter_locked(pmap, va, m, prot, wired); + pmap_enter_locked(pmap, va, m, prot, wired, M_WAITOK); vm_page_unlock_queues(); PMAP_UNLOCK(pmap); } @@ -3316,7 +3316,7 @@ */ static void pmap_enter_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, - boolean_t wired) + boolean_t wired, int flags) { struct l2_bucket *l2b = NULL; struct vm_page *opg; @@ -3347,10 +3347,22 @@ l2b = pmap_get_l2_bucket(pmap, va); if (l2b == NULL) l2b = pmap_grow_l2_bucket(pmap, va); - } else + } else { +do_l2b_alloc: l2b = pmap_alloc_l2_bucket(pmap, va); - KASSERT(l2b != NULL, - ("pmap_enter: failed to allocate l2 bucket")); + if (l2b == NULL) { + if (flags & M_WAITOK) { + PMAP_UNLOCK(pmap); + vm_page_unlock_queues(); + VM_WAIT; + vm_page_lock_queues(); + PMAP_LOCK(pmap); + goto do_l2b_alloc; + } + return; + } + } + ptep = &l2b->l2b_kva[l2pte_index(va)]; opte = *ptep; @@ -3557,7 +3569,7 @@ PMAP_LOCK(pmap); while (m != NULL && (diff = m->pindex - m_start->pindex) < psize) { pmap_enter_locked(pmap, start + ptoa(diff), m, prot & - (VM_PROT_READ | VM_PROT_EXECUTE), FALSE); + (VM_PROT_READ | VM_PROT_EXECUTE), FALSE, M_NOWAIT); m = TAILQ_NEXT(m, listq); } PMAP_UNLOCK(pmap); @@ -3578,7 +3590,7 @@ PMAP_LOCK(pmap); pmap_enter_locked(pmap, va, m, prot & (VM_PROT_READ | VM_PROT_EXECUTE), - FALSE); + FALSE, M_NOWAIT); PMAP_UNLOCK(pmap); } ==== //depot/projects/bike_sched/sys/arm/at91/at91_rtc.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_rtc.c,v 1.1 2006/03/24 07:35:30 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_rtc.c,v 1.2 2006/07/14 21:37:19 imp Exp $"); #include #include @@ -223,9 +223,14 @@ static int at91_rtc_settime(device_t dev, struct timespec *ts) { - // XXX UGLY XXX - printf("SET TIME\n"); - return (EINVAL); + struct at91_rtc_softc *sc; + struct clocktime ct; + + sc = device_get_softc(dev); + clock_ts_to_ct(ts, &ct); + WR4(sc, RTC_TIMR, RTC_TIMR_MK(ct.hour, ct.min, ct.sec)); + WR4(sc, RTC_CALR, RTC_CALR_MK(ct.year, ct.mon, ct.day, ct.dow)); + return (0); } static device_method_t at91_rtc_methods[] = { ==== //depot/projects/bike_sched/sys/arm/at91/at91_spi.c#2 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_spi.c,v 1.1 2006/02/04 23:32:13 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_spi.c,v 1.2 2006/07/14 21:35:59 imp Exp $"); #include #include @@ -39,7 +39,10 @@ #include #include -#include +#include + +#include +#include "spibus_if.h" struct at91_spi_softc { @@ -48,13 +51,8 @@ struct resource *irq_res; /* IRQ resource */ struct resource *mem_res; /* Memory resource */ struct mtx sc_mtx; /* basically a perimeter lock */ - int flags; -#define XFER_PENDING 1 /* true when transfer taking place */ -#define OPENED 2 /* Device opened */ -#define RXRDY 4 -#define TXCOMP 8 -#define TXRDY 0x10 - struct cdev *cdev; + bus_dma_tag_t dmatag; /* bus dma tag for mbufs */ + bus_dmamap_t map[4]; /* Maps for the transaction */ }; static inline uint32_t @@ -77,7 +75,6 @@ #define AT91_SPI_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); #define AT91_SPI_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); #define AT91_SPI_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); -#define CDEV2SOFTC(dev) ((dev)->si_drv1) static devclass_t at91_spi_devclass; @@ -86,25 +83,11 @@ static int at91_spi_probe(device_t dev); static int at91_spi_attach(device_t dev); static int at91_spi_detach(device_t dev); -static void at91_spi_intr(void *); /* helper routines */ static int at91_spi_activate(device_t dev); static void at91_spi_deactivate(device_t dev); -/* cdev routines */ -static d_open_t at91_spi_open; -static d_close_t at91_spi_close; -static d_ioctl_t at91_spi_ioctl; - -static struct cdevsw at91_spi_cdevsw = -{ - .d_version = D_VERSION, - .d_open = at91_spi_open, - .d_close = at91_spi_close, - .d_ioctl = at91_spi_ioctl -}; - static int at91_spi_probe(device_t dev) { @@ -116,7 +99,7 @@ at91_spi_attach(device_t dev) { struct at91_spi_softc *sc = device_get_softc(dev); - int err; + int err, i; sc->dev = dev; err = at91_spi_activate(dev); @@ -126,31 +109,45 @@ AT91_SPI_LOCK_INIT(sc); /* - * Activate the interrupt + * Allocate DMA tags and maps */ - err = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_MISC | INTR_MPSAFE, - at91_spi_intr, sc, &sc->intrhand); - if (err) { - AT91_SPI_LOCK_DESTROY(sc); + err = bus_dma_tag_create(NULL, 1, 0, BUS_SPACE_MAXADDR_32BIT, + BUS_SPACE_MAXADDR, NULL, NULL, 2058, 1, 2048, BUS_DMA_ALLOCNOW, + NULL, NULL, &sc->dmatag); + if (err != 0) goto out; + for (i = 0; i < 4; i++) { + err = bus_dmamap_create(sc->dmatag, 0, &sc->map[i]); + if (err != 0) + goto out; } - sc->cdev = make_dev(&at91_spi_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600, - "spi%d", device_get_unit(dev)); - if (sc->cdev == NULL) { - err = ENOMEM; - goto out; - } - sc->cdev->si_drv1 = sc; -#if 0 - /* init */ - sc->cwgr = SPI_CWGR_CKDIV(1) | - SPI_CWGR_CHDIV(SPI_CWGR_DIV(SPI_DEF_CLK)) | - SPI_CWGR_CLDIV(SPI_CWGR_DIV(SPI_DEF_CLK)); + // reset the SPI WR4(sc, SPI_CR, SPI_CR_SWRST); - WR4(sc, SPI_CR, SPI_CR_MSEN | SPI_CR_SVDIS); - WR4(sc, SPI_CWGR, sc->cwgr); -#endif + + WR4(sc, SPI_MR, (0xf << 24) | SPI_MR_MSTR | SPI_MR_MODFDIS | + (0xE << 16)); + + WR4(sc, SPI_CSR0, SPI_CSR_CPOL | (4 << 16) | (2 << 8)); + WR4(sc, SPI_CR, SPI_CR_SPIEN); + + WR4(sc, PDC_PTCR, PDC_PTCR_TXTDIS); + WR4(sc, PDC_PTCR, PDC_PTCR_RXTDIS); + WR4(sc, PDC_RNPR, 0); + WR4(sc, PDC_RNCR, 0); + WR4(sc, PDC_TNPR, 0); + WR4(sc, PDC_TNCR, 0); + WR4(sc, PDC_RPR, 0); + WR4(sc, PDC_RCR, 0); + WR4(sc, PDC_TPR, 0); + WR4(sc, PDC_TCR, 0); + WR4(sc, PDC_PTCR, PDC_PTCR_RXTEN); + WR4(sc, PDC_PTCR, PDC_PTCR_TXTEN); + RD4(sc, SPI_RDR); + RD4(sc, SPI_SR); + + device_add_child(dev, "spibus", -1); + bus_generic_attach(dev); out:; if (err) at91_spi_deactivate(dev); @@ -208,229 +205,70 @@ } static void -at91_spi_intr(void *xsc) +at91_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error) { - struct at91_spi_softc *sc = xsc; -#if 0 - uint32_t status; - - /* Reading the status also clears the interrupt */ - status = RD4(sc, SPI_SR); - if (status == 0) + if (error != 0) return; - AT91_SPI_LOCK(sc); - if (status & SPI_SR_RXRDY) - sc->flags |= RXRDY; - if (status & SPI_SR_TXCOMP) - sc->flags |= TXCOMP; - if (status & SPI_SR_TXRDY) - sc->flags |= TXRDY; - AT91_SPI_UNLOCK(sc); -#endif - wakeup(sc); - return; -} - -static int -at91_spi_open(struct cdev *dev, int oflags, int devtype, struct thread *td) -{ - struct at91_spi_softc *sc; - - sc = CDEV2SOFTC(dev); - AT91_SPI_LOCK(sc); - if (!(sc->flags & OPENED)) { - sc->flags |= OPENED; -#if 0 - WR4(sc, SPI_IER, SPI_SR_TXCOMP | SPI_SR_RXRDY | SPI_SR_TXRDY | - SPI_SR_OVRE | SPI_SR_UNRE | SPI_SR_NACK); -#endif - } - AT91_SPI_UNLOCK(sc); - return (0); + *(bus_addr_t *)arg = segs[0].ds_addr; } static int -at91_spi_close(struct cdev *dev, int fflag, int devtype, struct thread *td) +at91_spi_transfer(device_t dev, device_t child, struct spi_command *cmd) { struct at91_spi_softc *sc; + int i; + bus_addr_t addr; - sc = CDEV2SOFTC(dev); - AT91_SPI_LOCK(sc); - sc->flags &= ~OPENED; -#if 0 - WR4(sc, SPI_IDR, SPI_SR_TXCOMP | SPI_SR_RXRDY | SPI_SR_TXRDY | - SPI_SR_OVRE | SPI_SR_UNRE | SPI_SR_NACK); -#endif - AT91_SPI_UNLOCK(sc); - return (0); -} >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Jul 14 22:11:58 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E11AB16A4E8; Fri, 14 Jul 2006 22:11:57 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A79A816A4DA for ; Fri, 14 Jul 2006 22:11:57 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BA30443D46 for ; Fri, 14 Jul 2006 22:11:56 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EMBuvl053490 for ; Fri, 14 Jul 2006 22:11:56 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EMBuo5053486 for perforce@freebsd.org; Fri, 14 Jul 2006 22:11:56 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 22:11:56 GMT Message-Id: <200607142211.k6EMBuo5053486@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101609 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 22:11:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=101609 Change 101609 by imp@imp_harmony on 2006/07/14 22:11:37 IFC @101606 + fixups (this is loopback from FreeBSD) Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_pdcreg.h#5 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_pio_rm9200.h#2 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_piovar.h#3 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_pmc.c#19 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_rtc.c#6 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_spi.c#7 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_spireg.h#6 integrate .. //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#37 integrate .. //depot/projects/arm/src/sys/boot/arm/at91/boot0iic/Makefile#6 integrate .. //depot/projects/arm/src/sys/boot/arm/at91/boot0iic/doit.c#5 integrate .. //depot/projects/arm/src/sys/boot/arm/at91/boot0iic/main.c#3 integrate .. //depot/projects/arm/src/sys/boot/arm/at91/boot0spi/Makefile#6 integrate .. //depot/projects/arm/src/sys/boot/arm/at91/boot0spi/main.c#12 integrate .. //depot/projects/arm/src/sys/boot/arm/at91/bootiic/arm_init.S#5 integrate .. //depot/projects/arm/src/sys/boot/arm/at91/libat91/loader_prompt.c#14 branch .. //depot/projects/arm/src/sys/conf/options.arm#13 integrate Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_pdcreg.h#5 (text+ko) ==== ==== //depot/projects/arm/src/sys/arm/at91/at91_pio_rm9200.h#2 (text+ko) ==== ==== //depot/projects/arm/src/sys/arm/at91/at91_piovar.h#3 (text+ko) ==== ==== //depot/projects/arm/src/sys/arm/at91/at91_pmc.c#19 (text+ko) ==== @@ -25,7 +25,7 @@ #include "opt_at91.h" #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pmc.c,v 1.2 2006/06/17 23:22:10 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pmc.c,v 1.3 2006/07/14 22:01:51 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/arm/at91/at91_rtc.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_rtc.c,v 1.1 2006/03/24 07:35:30 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_rtc.c,v 1.2 2006/07/14 21:37:19 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/arm/at91/at91_spi.c#7 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_spi.c,v 1.1 2006/02/04 23:32:13 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_spi.c,v 1.2 2006/07/14 21:35:59 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/arm/at91/at91_spireg.h#6 (text+ko) ==== @@ -22,7 +22,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* $FreeBSD: src/sys/arm/at91/at91_spireg.h,v 1.1 2006/02/04 23:32:13 imp Exp $ */ +/* $FreeBSD: src/sys/arm/at91/at91_spireg.h,v 1.2 2006/07/14 21:35:59 imp Exp $ */ #ifndef ARM_AT91_AT91_SPIREG_H #define ARM_AT91_AT91_SPIREG_H ==== //depot/projects/arm/src/sys/arm/at91/uart_dev_at91usart.c#37 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.7 2006/07/02 03:45:33 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.8 2006/07/14 21:33:04 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/boot/arm/at91/boot0iic/Makefile#6 (text) ==== ==== //depot/projects/arm/src/sys/boot/arm/at91/boot0iic/doit.c#5 (text+ko) ==== ==== //depot/projects/arm/src/sys/boot/arm/at91/boot0iic/main.c#3 (text) ==== ==== //depot/projects/arm/src/sys/boot/arm/at91/boot0spi/Makefile#6 (text) ==== ==== //depot/projects/arm/src/sys/boot/arm/at91/boot0spi/main.c#12 (text) ==== ==== //depot/projects/arm/src/sys/boot/arm/at91/bootiic/arm_init.S#5 (text+ko) ==== ==== //depot/projects/arm/src/sys/conf/options.arm#13 (text+ko) ==== @@ -1,4 +1,4 @@ -#$FreeBSD: src/sys/conf/options.arm,v 1.10 2006/06/06 21:06:57 cognet Exp $ +#$FreeBSD: src/sys/conf/options.arm,v 1.11 2006/07/14 21:59:54 imp Exp $ ARM9_CACHE_WRITE_THROUGH opt_global.h ARM_CACHE_LOCK_ENABLE opt_global.h ARMFPE opt_global.h From owner-p4-projects@FreeBSD.ORG Fri Jul 14 22:24:13 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EE23516A4DE; Fri, 14 Jul 2006 22:24:12 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 B173A16A4E0 for ; Fri, 14 Jul 2006 22:24:12 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6322C43D46 for ; Fri, 14 Jul 2006 22:24:12 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EMOCxP054085 for ; Fri, 14 Jul 2006 22:24:12 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EMOCb2054082 for perforce@freebsd.org; Fri, 14 Jul 2006 22:24:12 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 22:24:12 GMT Message-Id: <200607142224.k6EMOCb2054082@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101610 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 22:24:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=101610 Change 101610 by imp@imp_bugs on 2006/07/14 22:23:48 Somehow the merge from current missed this. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_pio_rm9200.h#3 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_pio_rm9200.h#3 (text+ko) ==== @@ -1,3 +1,10 @@ +/* $FreeBSD: src/sys/arm/at91/at91_pio_rm9200.h,v 1.1 2006/07/02 03:50:44 imp Exp $ */ + +/* + * These defines come from an atmel file that says specifically that it + * has no copyright. + */ + //***************************************************************************** // PIO DEFINITIONS FOR AT91RM9200 //***************************************************************************** From owner-p4-projects@FreeBSD.ORG Fri Jul 14 22:25:14 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A3C4016A4DE; Fri, 14 Jul 2006 22:25:14 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 6A6ED16A4DA for ; Fri, 14 Jul 2006 22:25:14 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 241B943D46 for ; Fri, 14 Jul 2006 22:25:14 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EMPEoL054174 for ; Fri, 14 Jul 2006 22:25:14 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EMPDlS054171 for perforce@freebsd.org; Fri, 14 Jul 2006 22:25:13 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 22:25:13 GMT Message-Id: <200607142225.k6EMPDlS054171@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101611 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 22:25:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=101611 Change 101611 by jb@jb_freebsd2 on 2006/07/14 22:24:20 Copy thr_self.c to pthread_self.c because thr_self is the name of a syscall and the file names clash when threads are built into libc. Affected files ... .. //depot/projects/dtrace/src/lib/libthr/thread/pthread_self.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Jul 14 22:26:16 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 43D8516A4FC; Fri, 14 Jul 2006 22:26:16 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 229AA16A4FA for ; Fri, 14 Jul 2006 22:26:16 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CB6F343D46 for ; Fri, 14 Jul 2006 22:26:15 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EMQFdQ054277 for ; Fri, 14 Jul 2006 22:26:15 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EMQFEq054274 for perforce@freebsd.org; Fri, 14 Jul 2006 22:26:15 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 22:26:15 GMT Message-Id: <200607142226.k6EMQFEq054274@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101612 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 22:26:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=101612 Change 101612 by jb@jb_freebsd2 on 2006/07/14 22:25:13 Avoid clashing with a syscall object file name. Affected files ... .. //depot/projects/dtrace/src/lib/libthr/thread/Makefile.inc#3 edit Differences ... ==== //depot/projects/dtrace/src/lib/libthr/thread/Makefile.inc#3 (text+ko) ==== @@ -4,6 +4,7 @@ .PATH: ${.CURDIR}/thread SRCS+= \ + pthread_self.c \ thr_attr.c \ thr_barrier.c \ thr_barrierattr.c \ @@ -37,7 +38,6 @@ thr_rtld.c \ thr_rwlock.c \ thr_rwlockattr.c \ - thr_self.c \ thr_sem.c \ thr_setprio.c \ thr_setschedparam.c \ From owner-p4-projects@FreeBSD.ORG Fri Jul 14 22:29:27 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5B32F16A4E0; Fri, 14 Jul 2006 22:29:27 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 216C316A4DD for ; Fri, 14 Jul 2006 22:29:27 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 81B4443D5E for ; Fri, 14 Jul 2006 22:29:22 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EMTM5O054464 for ; Fri, 14 Jul 2006 22:29:22 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EMTLh4054460 for perforce@freebsd.org; Fri, 14 Jul 2006 22:29:21 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 22:29:21 GMT Message-Id: <200607142229.k6EMTLh4054460@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101616 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 22:29:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=101616 Change 101616 by imp@imp_harmony on 2006/07/14 22:28:43 IFC @101615 Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_pio.c#15 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_piovar.h#4 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_rtcreg.h#6 integrate .. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#31 integrate Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_pio.c#15 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.2 2006/07/02 03:50:44 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_pio.c,v 1.3 2006/07/14 22:22:57 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/arm/at91/at91_piovar.h#4 (text+ko) ==== @@ -22,7 +22,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* $FreeBSD$ */ +/* $FreeBSD: src/sys/arm/at91/at91_piovar.h,v 1.2 2006/07/14 22:22:57 imp Exp $ */ #ifndef ARM_AT91_AT91_PIOVAR_H #define ARM_AT91_AT91_PIOVAR_H ==== //depot/projects/arm/src/sys/arm/at91/at91_rtcreg.h#6 (text+ko) ==== @@ -22,7 +22,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* $FreeBSD: src/sys/arm/at91/at91_rtcreg.h,v 1.1 2006/03/24 07:35:30 imp Exp $ */ +/* $FreeBSD: src/sys/arm/at91/at91_rtcreg.h,v 1.2 2006/07/14 22:06:01 imp Exp $ */ #ifndef ARM_AT91_AT91_RTCREG_H #define ARM_AT91_AT91_RTCREG_H ==== //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#31 (text+ko) ==== @@ -48,7 +48,7 @@ #include "opt_at91.h" #include -__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.9 2006/07/12 00:48:50 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.10 2006/07/14 22:22:57 imp Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include From owner-p4-projects@FreeBSD.ORG Fri Jul 14 22:45:46 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0910216A503; Fri, 14 Jul 2006 22:45:46 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 CA9F516A500 for ; Fri, 14 Jul 2006 22:45:45 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9863043D45 for ; Fri, 14 Jul 2006 22:45:45 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6EMjjra055568 for ; Fri, 14 Jul 2006 22:45:45 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6EMjjdB055562 for perforce@freebsd.org; Fri, 14 Jul 2006 22:45:45 GMT (envelope-from jb@freebsd.org) Date: Fri, 14 Jul 2006 22:45:45 GMT Message-Id: <200607142245.k6EMjjdB055562@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101619 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 22:45:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=101619 Change 101619 by jb@jb_freebsd2 on 2006/07/14 22:45:25 Allow this file to be compiled into libc. Affected files ... .. //depot/projects/dtrace/src/lib/libthr/thread/thr_init.c#5 edit Differences ... ==== //depot/projects/dtrace/src/lib/libthr/thread/thr_init.c#5 (text+ko) ==== @@ -119,6 +119,7 @@ static void init_private(void); static void init_main_thread(struct pthread *thread); +#ifndef LIBC_THREADS /* * All weak references used within libc should be in this table. * This is so that static libraries will work. @@ -246,6 +247,7 @@ {DUAL_ENTRY(_pthread_sigmask)}, /* PJT_SIGMASK */ {DUAL_ENTRY(_pthread_testcancel)} /* PJT_TESTCANCEL */ }; +#endif static int init_once = 0; @@ -292,6 +294,7 @@ /* Only initialize the threaded application once. */ return; +#ifndef LIBC_THREADS /* * Check the size of the jump table to make sure it is preset * with the correct number of entries. @@ -299,6 +302,7 @@ if (sizeof(jmp_table) != (sizeof(pthread_func_t) * PJT_MAX * 2)) PANIC("Thread jump table not properly initialized"); memcpy(__thr_jtable, jmp_table, sizeof(jmp_table)); +#endif /* * Check for the special case of this process running as From owner-p4-projects@FreeBSD.ORG Fri Jul 14 23:25:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7CF5B16A4E2; Fri, 14 Jul 2006 23:25:40 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 575AC16A4E0 for ; Fri, 14 Jul 2006 23:25:40 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E16EE43D4C for ; Fri, 14 Jul 2006 23:25:39 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6ENPdnJ059032 for ; Fri, 14 Jul 2006 23:25:39 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6ENPcvV059029 for perforce@freebsd.org; Fri, 14 Jul 2006 23:25:38 GMT (envelope-from imp@freebsd.org) Date: Fri, 14 Jul 2006 23:25:38 GMT Message-Id: <200607142325.k6ENPcvV059029@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 101626 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jul 2006 23:25:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101626 Change 101626 by imp@imp_harmony on 2006/07/14 23:25:06 IFC @101625 Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91_ssc.c#7 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_st.c#10 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_twi.c#19 integrate .. //depot/projects/arm/src/sys/arm/at91/files.at91#10 integrate .. //depot/projects/arm/src/sys/conf/files#37 integrate .. //depot/projects/arm/src/sys/dev/iicbus/iic.c#4 integrate .. //depot/projects/arm/src/sys/dev/iicbus/iic.h#3 integrate .. //depot/projects/arm/src/sys/dev/iicbus/iicbus.c#5 integrate .. //depot/projects/arm/src/sys/dev/iicbus/iicbus.h#4 integrate .. //depot/projects/arm/src/sys/dev/iicbus/iicbus_if.m#3 integrate .. //depot/projects/arm/src/sys/dev/iicbus/iiconf.c#3 integrate .. //depot/projects/arm/src/sys/dev/iicbus/iiconf.h#3 integrate .. //depot/projects/arm/src/sys/dev/spibus/spi.h#2 integrate .. //depot/projects/arm/src/sys/dev/spibus/spibus.c#4 integrate .. //depot/projects/arm/src/sys/dev/spibus/spibus_if.m#3 integrate .. //depot/projects/arm/src/sys/dev/spibus/spibusvar.h#2 integrate .. //depot/projects/arm/src/sys/kern/link_elf.c#5 integrate Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91_ssc.c#7 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_ssc.c,v 1.1 2006/03/24 07:42:33 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_ssc.c,v 1.2 2006/07/14 22:30:44 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/arm/at91/at91_st.c#10 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_st.c,v 1.3 2006/05/13 23:41:15 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_st.c,v 1.4 2006/07/14 22:31:12 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/arm/at91/at91_twi.c#19 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91_twi.c,v 1.2 2006/04/06 04:31:19 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91_twi.c,v 1.3 2006/07/14 22:40:24 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/arm/at91/files.at91#10 (text) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/arm/at91/files.at91,v 1.5 2006/06/23 23:07:11 cognet Exp $ +# $FreeBSD: src/sys/arm/at91/files.at91,v 1.6 2006/07/14 22:41:54 imp Exp $ arm/arm/cpufunc_asm_arm9.S standard arm/arm/irq_dispatch.S standard arm/at91/at91.c standard ==== //depot/projects/arm/src/sys/conf/files#37 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1128 2006/07/06 23:37:39 rwatson Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1129 2006/07/14 22:50:46 imp Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and ==== //depot/projects/arm/src/sys/dev/iicbus/iic.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/dev/iicbus/iic.c,v 1.34 2006/04/04 23:29:17 imp Exp $ + * $FreeBSD: src/sys/dev/iicbus/iic.c,v 1.35 2006/07/14 23:15:06 imp Exp $ * */ #include ==== //depot/projects/arm/src/sys/dev/iicbus/iic.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/dev/iicbus/iic.h,v 1.3 1999/08/28 00:44:16 peter Exp $ + * $FreeBSD: src/sys/dev/iicbus/iic.h,v 1.4 2006/07/14 23:15:06 imp Exp $ * */ #ifndef __IIC_H ==== //depot/projects/arm/src/sys/dev/iicbus/iicbus.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/iicbus/iicbus.c,v 1.21 2006/04/17 22:33:42 jmg Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/iicbus/iicbus.c,v 1.22 2006/07/14 23:15:06 imp Exp $"); /* * Autoconfiguration and support routines for the Philips serial I2C bus ==== //depot/projects/arm/src/sys/dev/iicbus/iicbus.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/dev/iicbus/iicbus.h,v 1.5 2005/08/10 07:10:01 obrien Exp $ + * $FreeBSD: src/sys/dev/iicbus/iicbus.h,v 1.6 2006/07/14 23:15:06 imp Exp $ * */ #ifndef __IICBUS_H ==== //depot/projects/arm/src/sys/dev/iicbus/iicbus_if.m#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/dev/iicbus/iicbus_if.m,v 1.6 2005/01/06 01:42:47 imp Exp $ +# $FreeBSD: src/sys/dev/iicbus/iicbus_if.m,v 1.7 2006/07/14 23:15:06 imp Exp $ # #include ==== //depot/projects/arm/src/sys/dev/iicbus/iiconf.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/iicbus/iiconf.c,v 1.14 2003/08/24 17:49:13 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/iicbus/iiconf.c,v 1.15 2006/07/14 23:15:06 imp Exp $"); #include #include ==== //depot/projects/arm/src/sys/dev/iicbus/iiconf.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/dev/iicbus/iiconf.h,v 1.8 2003/06/19 02:50:08 jmg Exp $ + * $FreeBSD: src/sys/dev/iicbus/iiconf.h,v 1.9 2006/07/14 23:15:06 imp Exp $ */ #ifndef __IICONF_H #define __IICONF_H ==== //depot/projects/arm/src/sys/dev/spibus/spi.h#2 (text+ko) ==== ==== //depot/projects/arm/src/sys/dev/spibus/spibus.c#4 (text+ko) ==== ==== //depot/projects/arm/src/sys/dev/spibus/spibus_if.m#3 (text+ko) ==== ==== //depot/projects/arm/src/sys/dev/spibus/spibusvar.h#2 (text+ko) ==== ==== //depot/projects/arm/src/sys/kern/link_elf.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/link_elf.c,v 1.89 2006/06/21 20:42:08 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/link_elf.c,v 1.90 2006/07/14 22:39:18 jkim Exp $"); #include "opt_gdb.h" #include "opt_mac.h" @@ -307,7 +307,7 @@ (void)link_elf_link_common_finish(linker_kernel_file); } -SYSINIT(link_elf, SI_SUB_KLD, SI_ORDER_SECOND, link_elf_init, 0); +SYSINIT(link_elf, SI_SUB_KLD, SI_ORDER_THIRD, link_elf_init, 0); static int link_elf_preload_parse_symbols(elf_file_t ef) From owner-p4-projects@FreeBSD.ORG Sat Jul 15 01:10:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5186016A4DD; Sat, 15 Jul 2006 01:10:57 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 153DB16A4E0 for ; Sat, 15 Jul 2006 01:10:57 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73B1043D58 for ; Sat, 15 Jul 2006 01:10:56 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6F1Auie079052 for ; Sat, 15 Jul 2006 01:10:56 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6F1AuKB079047 for perforce@freebsd.org; Sat, 15 Jul 2006 01:10:56 GMT (envelope-from jb@freebsd.org) Date: Sat, 15 Jul 2006 01:10:56 GMT Message-Id: <200607150110.k6F1AuKB079047@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101631 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 01:10:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=101631 Change 101631 by jb@jb_freebsd2 on 2006/07/15 01:10:24 To boot from disk on sun4v, you need the disk driver. Funny that. Affected files ... .. //depot/projects/dtrace/src/sys/sun4v/conf/GENERIC#4 edit Differences ... ==== //depot/projects/dtrace/src/sys/sun4v/conf/GENERIC#4 (text+ko) ==== @@ -101,7 +101,7 @@ #device ahc # AHA2940 and onboard AIC7xxx devices #device isp # Qlogic family #device ispfw # Firmware module for Qlogic host adapters -#device mpt # LSI-Logic MPT-Fusion (not yet) +device mpt # LSI-Logic MPT-Fusion (not yet) #device ncr # NCR/Symbios Logic #device sym # NCR/Symbios Logic (newer chipsets + those of `ncr') #device esp # NCR53c9x (FEPS/FAS366) From owner-p4-projects@FreeBSD.ORG Sat Jul 15 04:04:47 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 03F0416A4E0; Sat, 15 Jul 2006 04:04:47 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 D0DD916A4DA for ; Sat, 15 Jul 2006 04:04:46 +0000 (UTC) (envelope-from gnn@neville-neil.com) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6C0EC43D45 for ; Sat, 15 Jul 2006 04:04:46 +0000 (GMT) (envelope-from gnn@neville-neil.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6F44kc5092781 for ; Sat, 15 Jul 2006 04:04:46 GMT (envelope-from gnn@neville-neil.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6F44a5f092778 for perforce@freebsd.org; Sat, 15 Jul 2006 04:04:36 GMT (envelope-from gnn@neville-neil.com) Date: Sat, 15 Jul 2006 04:04:36 GMT Message-Id: <200607150404.k6F44a5f092778@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gnn@neville-neil.com using -f From: "George V. Neville-Neil" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101636 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 04:04:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=101636 Change 101636 by gnn@fast_ipsec_integ on 2006/07/15 04:04:06 Integrage fast_ipsec from HEAD Affected files ... .. //depot/projects/fast_ipsec/src/sys/Makefile#5 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/db_trace.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/fpu.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/identcpu.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/initcpu.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/intr_machdep.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/local_apic.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/machdep.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/pmap.c#12 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/amd64/trap.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/conf/DEFAULTS#3 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/conf/GENERIC#8 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/conf/NOTES#10 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/include/md_var.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/include/specialreg.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/linux32/linux32_proto.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/linux32/linux32_syscall.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/linux32/linux32_sysent.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/amd64/linux32/syscalls.master#4 integrate .. //depot/projects/fast_ipsec/src/sys/arm/arm/db_trace.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/arm/elf_trampoline.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/arm/arm/gdb_machdep.c#1 branch .. //depot/projects/fast_ipsec/src/sys/arm/arm/inckern.S#3 integrate .. //depot/projects/fast_ipsec/src/sys/arm/arm/locore.S#4 integrate .. //depot/projects/fast_ipsec/src/sys/arm/arm/pmap.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_pmc.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_rtc.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_rtcreg.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_spi.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_spiio.h#2 delete .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_spireg.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_ssc.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_st.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91_twi.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/files.at91#3 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/if_ate.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/kb920x_machdep.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/std.at91#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/std.kb920x#2 integrate .. //depot/projects/fast_ipsec/src/sys/arm/at91/uart_dev_at91usart.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/arm/conf/IQ31244#3 integrate .. //depot/projects/fast_ipsec/src/sys/arm/conf/KB920X#3 integrate .. //depot/projects/fast_ipsec/src/sys/arm/conf/SIMICS#4 integrate .. //depot/projects/fast_ipsec/src/sys/arm/conf/SKYEYE#3 integrate .. //depot/projects/fast_ipsec/src/sys/arm/include/gdb_machdep.h#1 branch .. //depot/projects/fast_ipsec/src/sys/arm/sa11x0/uart_cpu_sa1110.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/arm/xscale/i80321/i80321_timer.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/boot/Makefile#4 integrate .. //depot/projects/fast_ipsec/src/sys/bsm/audit_kevents.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/bsm/audit_record.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/cam/cam_xpt.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/cam/scsi/scsi_cd.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/cam/scsi/scsi_da.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/compat/freebsd32/freebsd32_misc.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/compat/freebsd32/freebsd32_proto.h#8 integrate .. //depot/projects/fast_ipsec/src/sys/compat/freebsd32/freebsd32_syscall.h#8 integrate .. //depot/projects/fast_ipsec/src/sys/compat/freebsd32/freebsd32_syscalls.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/compat/freebsd32/freebsd32_sysent.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/compat/freebsd32/syscalls.master#8 integrate .. //depot/projects/fast_ipsec/src/sys/compat/linprocfs/linprocfs.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/compat/linux/linux_file.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/compat/linux/linux_ioctl.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/compat/linux/linux_ipc.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/compat/linux/linux_misc.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/compat/linux/linux_socket.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/compat/linux/linux_util.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/compat/ndis/kern_ndis.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/compat/ndis/subr_ndis.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/compat/ndis/winx32_wrap.S#4 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/svr4_ipc.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/svr4_misc.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/svr4_proto.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/svr4_stream.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/svr4_syscall.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/svr4_syscallnames.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/svr4_sysent.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/svr4_util.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/compat/svr4/syscalls.master#2 integrate .. //depot/projects/fast_ipsec/src/sys/conf/Makefile.arm#9 integrate .. //depot/projects/fast_ipsec/src/sys/conf/NOTES#10 integrate .. //depot/projects/fast_ipsec/src/sys/conf/files#15 integrate .. //depot/projects/fast_ipsec/src/sys/conf/files.amd64#7 integrate .. //depot/projects/fast_ipsec/src/sys/conf/files.arm#4 integrate .. //depot/projects/fast_ipsec/src/sys/conf/files.i386#8 integrate .. //depot/projects/fast_ipsec/src/sys/conf/files.ia64#5 integrate .. //depot/projects/fast_ipsec/src/sys/conf/files.powerpc#6 integrate .. //depot/projects/fast_ipsec/src/sys/conf/kern.mk#4 integrate .. //depot/projects/fast_ipsec/src/sys/conf/kern.post.mk#5 integrate .. //depot/projects/fast_ipsec/src/sys/conf/kern.pre.mk#5 integrate .. //depot/projects/fast_ipsec/src/sys/conf/kmod.mk#8 integrate .. //depot/projects/fast_ipsec/src/sys/conf/options#13 integrate .. //depot/projects/fast_ipsec/src/sys/conf/options.arm#6 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_bstream.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_bstream.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_context.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_env.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self_context.s#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_step.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_str.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_str.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_swap.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_swap.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#2 delete .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#2 delete .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_utable.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_utable.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/pf/net/if_pflog.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/contrib/pf/net/if_pfsync.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/crypto/via/padlock.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/ddb/db_command.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/ddb/db_output.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/ddb/db_output.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/ddb/db_ps.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/ddb/db_sym.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/ddb/db_thread.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/ddb/ddb.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/aac/aac_cam.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/aac/aac_pci.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/acpica/acpi.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/dev/acpica/acpi_battery.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/acpica/acpi_dock.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/acpica/acpivar.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/asr/MAINTAINER#2 delete .. //depot/projects/fast_ipsec/src/sys/dev/ata/ata-all.h#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ata/ata-chipset.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ata/ata-lowlevel.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ata/ata-pci.h#7 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ata/atapi-cd.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ath/if_ath.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ath/if_ath_pci.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ath/if_athioctl.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ath/if_athvar.h#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/bge/if_bge.c#11 integrate .. //depot/projects/fast_ipsec/src/sys/dev/bge/if_bgereg.h#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/cardbus/cardbus.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/cardbus/cardbus_cis.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/cm/if_cm_isa.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/cm/smc90cx6var.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/dc/if_dc.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/dev/dc/if_dcreg.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/digi/digi.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ed/if_ed.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ed/if_ed_novell.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ed/if_edvar.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/fdc/fdc.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ic/nec765.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/iicbus/iic.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/iicbus/iic.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/iicbus/iicbus.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/iicbus/iicbus.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/iicbus/iicbus_if.m#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/iicbus/iiconf.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/iicbus/iiconf.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ipw/if_ipw.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ipw/if_ipwvar.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/isp.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/isp_freebsd.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/isp_freebsd.h#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/isp_pci.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/isp_sbus.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/isp_target.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/ispmbox.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/ispreg.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/isp/ispvar.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ispfw/asm_1040.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ispfw/asm_1080.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ispfw/asm_12160.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/ispfw/ispfw.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/lmc/if_lmc.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mfi/mfi.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mfi/mfi_disk.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mfi/mfi_pci.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mfi/mfireg.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mfi/mfivar.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/acphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/amphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/brgphy.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/ciphy.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/e1000phy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/exphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/lxtphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/mii_physubr.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/nsgphy.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/nsphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/pnaphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/qsphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/rgephy.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/rlphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/tdkphy.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/tlphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/ukphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mii/xmphy.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mpt/mpt.c#11 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mpt/mpt.h#12 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mpt/mpt_cam.c#12 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mpt/mpt_debug.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mpt/mpt_pci.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/fast_ipsec/src/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/fast_ipsec/src/sys/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/fast_ipsec/src/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/fast_ipsec/src/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/fast_ipsec/src/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/fast_ipsec/src/sys/dev/ncv/ncr53c500_pccard.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/nfe/if_nfe.c#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/pccard/pccarddevs#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/pci/pci.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/puc/puc.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/puc/puc_pccard.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/puc/puc_pci.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/puc/pucdata.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/random/probe.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/re/if_re.c#10 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sio/sio.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sk/if_sk.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/driver.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/midi/midi.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/midi/sequencer.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/cmi.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/es137x.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/ich.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/maestro.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/solo.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pci/via8233.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pcm/feeder_rate.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pcm/sound.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/sound/pcm/vchan.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/dev/spibus/spi.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/spibus/spibus.c#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/spibus/spibus_if.m#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/spibus/spibusvar.h#1 branch .. //depot/projects/fast_ipsec/src/sys/dev/stg/tmc18c30_subr.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/usb/if_aue.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/usb/if_ural.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/usb/uhid.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/usb/umodem.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/dev/usb/uplcom.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/dev/usb/usbdevs#8 integrate .. //depot/projects/fast_ipsec/src/sys/dev/usb/uscanner.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/dev/usb/uvisor.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/dev/wl/if_wl.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/doc/Doxyfile#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/Makefile#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Dependencies#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-cam#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-crypto#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-dev_pci#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-dev_sound#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-dev_usb#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-geom#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-i4b#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-kern#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-libkern#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-linux#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-net80211#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-netgraph#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-netinet#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-netinet6#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-netipsec#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-opencrypto#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Doxyfile-vm#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/Makefile#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/README#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/common-Doxyfile#2 delete .. //depot/projects/fast_ipsec/src/sys/doc/subsys/notreviewed.dox#2 delete .. //depot/projects/fast_ipsec/src/sys/fs/devfs/devfs_vfsops.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/fs/devfs/devfs_vnops.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/fs/portalfs/portal_vnops.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/fs/pseudofs/pseudofs_vnops.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/fs/udf/udf_vfsops.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/fs/unionfs/union_vnops.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/geom/geom.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/geom/geom_dev.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/geom/geom_gpt.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/geom/mirror/g_mirror.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/geom/mirror/g_mirror_ctl.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/geom/raid3/g_raid3.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/geom/raid3/g_raid3_ctl.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_frw.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_iget.c#3 delete .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_super.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_bit.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dfrag.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_trace.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_inode.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_iomap.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_macros.c#2 delete .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_macros.h#2 delete .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_vfsops.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfs_vnodeops.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/acpica/acpi_machdep.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/acpica/acpi_wakecode.S#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/conf/DEFAULTS#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/conf/GENERIC#8 integrate .. //depot/projects/fast_ipsec/src/sys/i386/conf/NOTES#10 integrate .. //depot/projects/fast_ipsec/src/sys/i386/conf/PAE#5 integrate .. //depot/projects/fast_ipsec/src/sys/i386/conf/XBOX#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/i386/db_trace.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/i386/identcpu.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/i386/i386/initcpu.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/i386/i386/intr_machdep.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/i386/i386/local_apic.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/i386/i386/machdep.c#11 integrate .. //depot/projects/fast_ipsec/src/sys/i386/i386/pmap.c#12 integrate .. //depot/projects/fast_ipsec/src/sys/i386/i386/trap.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_ipc.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_ipc.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_isc_syscall.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_isc_sysent.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_misc.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_msg.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_other.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_poll.h#2 delete .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_proto.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_syscall.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_sysent.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_util.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_xenix.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_xenix.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_xenix_syscall.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/ibcs2_xenix_sysent.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/imgact_coff.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/syscalls.isc#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/syscalls.master#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/ibcs2/syscalls.xenix#3 integrate .. //depot/projects/fast_ipsec/src/sys/i386/include/i4b_ioctl.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/i386/include/md_var.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/i386/include/specialreg.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/i386/linux/linux_dummy.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/i386/linux/linux_proto.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/i386/linux/linux_syscall.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/i386/linux/linux_sysent.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/i386/linux/syscalls.master#5 integrate .. //depot/projects/fast_ipsec/src/sys/i4b/layer4/i4b_l4mgmt.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/conf/DEFAULTS#3 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/conf/GENERIC#5 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/conf/SKI#4 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/disasm/disasm.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/disasm/disasm_decode.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/disasm/disasm_extract.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/disasm/disasm_format.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/disasm/disasm_int.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/ia64/db_machdep.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/fast_ipsec/src/sys/ia64/ia64/machdep.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/ia64/pmap.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/ia64/trap.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/include/ieeefp.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/ia64/include/md_var.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/isa/isa_common.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/isa/isahint.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/kern/bus_if.m#2 integrate .. //depot/projects/fast_ipsec/src/sys/kern/init_sysent.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_acl.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_clock.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_descrip.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_environment.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_event.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_fork.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_intr.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_ktr.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_ktrace.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_linker.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_lock.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_mbuf.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_module.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_prot.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_switch.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_synch.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_sysctl.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_tc.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_thr.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/kern/kern_thread.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/kern/link_elf.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/link_elf_obj.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/kern/sched_4bsd.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/sched_core.c#1 branch .. //depot/projects/fast_ipsec/src/sys/kern/sched_ule.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/fast_ipsec/src/sys/kern/subr_bus.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/subr_firmware.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/kern/subr_hints.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/kern/subr_kdb.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/subr_prf.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/subr_rman.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/kern/subr_turnstile.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/kern/sys_generic.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/sys_pipe.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/syscalls.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/kern/syscalls.master#9 integrate .. //depot/projects/fast_ipsec/src/sys/kern/sysv_msg.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/kern/sysv_sem.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/kern/sysv_shm.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/uipc_domain.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/uipc_mbuf.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/kern/uipc_socket.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/kern/uipc_socket2.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/kern/uipc_syscalls.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/kern/uipc_usrreq.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/kern/vfs_cache.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/kern/vfs_init.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/kern/vfs_mount.c#10 integrate .. //depot/projects/fast_ipsec/src/sys/kern/vfs_subr.c#13 integrate .. //depot/projects/fast_ipsec/src/sys/kern/vfs_syscalls.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/kern/vfs_vnops.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/modules/Makefile#11 integrate .. //depot/projects/fast_ipsec/src/sys/modules/ath_hal/Makefile#3 integrate .. //depot/projects/fast_ipsec/src/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/fast_ipsec/src/sys/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/fast_ipsec/src/sys/modules/if_bridge/Makefile#4 integrate .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/mxge/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/mxge/mxge/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/mxge/mxge_eth_z8e/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/mxge/mxge_ethp_z8e/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/myri10ge/Makefile#2 delete .. //depot/projects/fast_ipsec/src/sys/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/fast_ipsec/src/sys/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/fast_ipsec/src/sys/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/fast_ipsec/src/sys/modules/netgraph/Makefile#3 integrate .. //depot/projects/fast_ipsec/src/sys/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/nfe/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/ppc/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/sound/driver/Makefile#3 integrate .. //depot/projects/fast_ipsec/src/sys/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/fast_ipsec/src/sys/modules/streams/Makefile#2 integrate .. //depot/projects/fast_ipsec/src/sys/modules/svr4/Makefile#4 integrate .. //depot/projects/fast_ipsec/src/sys/modules/xfs/Makefile#3 integrate .. //depot/projects/fast_ipsec/src/sys/net/bpf.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/net/bpf.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/net/if.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/net/if.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_atmsubr.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_bridge.c#10 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_clone.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_clone.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_disc.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_enc.c#1 branch .. //depot/projects/fast_ipsec/src/sys/net/if_faith.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_gif.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_gre.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_loop.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_ppp.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_spppsubr.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_stf.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_tap.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_tun.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_types.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_var.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/net/if_vlan.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/net/rtsock.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/net80211/ieee80211_freebsd.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/netatalk/COPYRIGHT#2 integrate .. //depot/projects/fast_ipsec/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/netgraph/ng_socket.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/netgraph/ng_tag.c#1 branch .. //depot/projects/fast_ipsec/src/sys/netgraph/ng_tag.h#1 branch .. //depot/projects/fast_ipsec/src/sys/netinet/if_ether.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/in_pcb.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/in_rmx.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/ip_carp.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/ip_divert.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/ip_dummynet.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/ip_fw2.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/ip_ipsec.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/ip_output.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/tcp_input.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/tcp_seq.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/tcp_syncache.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/tcp_usrreq.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/netinet/tcp_var.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/netinet6/in6.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/netinet6/in6_cksum.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/netinet6/in6_pcb.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/netinet6/in6_rmx.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/netinet6/in6_var.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/netinet6/ipsec.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/netinet6/nd6.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/netinet6/raw_ip6.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/netipsec/ipsec.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/netipsec/ipsec_input.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/netipsec/ipsec_output.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/netipsec/xform_ipip.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/nfs4client/nfs4_vnops.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/nfsclient/nfs_diskless.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/nfsclient/nfs_socket.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/nfsclient/nfs_vnops.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/nfsserver/nfs_srvcache.c#2 integrate .. //depot/projects/fast_ipsec/src/sys/nfsserver/nfsrvcache.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/pc98/conf/DEFAULTS#3 integrate .. //depot/projects/fast_ipsec/src/sys/pc98/conf/GENERIC#6 integrate .. //depot/projects/fast_ipsec/src/sys/pc98/conf/NOTES#8 integrate .. //depot/projects/fast_ipsec/src/sys/pc98/pc98/machdep.c#12 integrate .. //depot/projects/fast_ipsec/src/sys/pci/agp_i810.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/pci/if_rlreg.h#6 integrate .. //depot/projects/fast_ipsec/src/sys/posix4/ksched.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/posix4/p1003_1b.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/posix4/posix4.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/fast_ipsec/src/sys/powerpc/conf/GENERIC#5 integrate .. //depot/projects/fast_ipsec/src/sys/powerpc/powerpc/db_trace.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/powerpc/powerpc/mmu_if.m#4 integrate .. //depot/projects/fast_ipsec/src/sys/powerpc/powerpc/mmu_oea.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/powerpc/powerpc/pmap_dispatch.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/security/audit/audit.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/security/audit/audit.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/security/audit/audit_arg.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/security/audit/audit_bsm.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/security/audit/audit_bsm_token.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/security/audit/audit_trigger.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/security/mac_biba/mac_biba.c#4 integrate .. //depot/projects/fast_ipsec/src/sys/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/fast_ipsec/src/sys/sparc64/conf/GENERIC#8 integrate .. //depot/projects/fast_ipsec/src/sys/sparc64/include/_bus.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/sparc64/include/bus.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/sparc64/sbus/sbus.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/sparc64/sparc64/db_trace.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/sparc64/sparc64/pmap.c#7 integrate .. //depot/projects/fast_ipsec/src/sys/sys/bus.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/sys/firmware.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/sys/gpt.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/sys/linker.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/sys/protosw.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/sys/rman.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/sys/rwlock.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/sys/sched.h#2 integrate .. //depot/projects/fast_ipsec/src/sys/sys/socketvar.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/sys/sockio.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/sys/sx.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/sys/syscall.h#8 integrate .. //depot/projects/fast_ipsec/src/sys/sys/syscall.mk#8 integrate .. //depot/projects/fast_ipsec/src/sys/sys/syscallsubr.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/sys/sysctl.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/sys/sysproto.h#9 integrate .. //depot/projects/fast_ipsec/src/sys/sys/systm.h#4 integrate .. //depot/projects/fast_ipsec/src/sys/sys/thr.h#3 integrate .. //depot/projects/fast_ipsec/src/sys/tools/fw_stub.awk#2 integrate .. //depot/projects/fast_ipsec/src/sys/ufs/ffs/ffs_vfsops.c#12 integrate .. //depot/projects/fast_ipsec/src/sys/ufs/ufs/ufs_lookup.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/vm/pmap.h#5 integrate .. //depot/projects/fast_ipsec/src/sys/vm/vm_fault.c#6 integrate .. //depot/projects/fast_ipsec/src/sys/vm/vm_map.c#8 integrate .. //depot/projects/fast_ipsec/src/sys/vm/vm_meter.c#3 integrate .. //depot/projects/fast_ipsec/src/sys/vm/vm_mmap.c#5 integrate .. //depot/projects/fast_ipsec/src/sys/vm/vm_page.c#9 integrate .. //depot/projects/fast_ipsec/src/sys/vm/vm_pageq.c#6 integrate Differences ... ==== //depot/projects/fast_ipsec/src/sys/Makefile#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.36 2006/05/29 19:29:41 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.37 2006/07/04 14:14:16 maxim Exp $ .include @@ -10,7 +10,7 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs gnu i4b isa \ +CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \ isofs kern libkern modules net net80211 netatalk netatm \ netgraph netinet netinet6 netipx netkey netnatm netncp \ netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \ ==== //depot/projects/fast_ipsec/src/sys/amd64/amd64/db_trace.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.74 2006/03/13 23:56:44 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.75 2006/07/12 21:22:42 jhb Exp $"); #include #include @@ -390,16 +390,14 @@ long *argp; db_expr_t offset; c_db_sym_t sym; - int narg, quit; + int narg; boolean_t first; if (count == -1) count = 1024; first = TRUE; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && !quit) { + while (count-- && !db_pager_quit) { sym = db_search_symbol(pc, DB_STGY_ANY, &offset); db_symbol_values(sym, &name, NULL); ==== //depot/projects/fast_ipsec/src/sys/amd64/amd64/fpu.c#3 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/fast_ipsec/src/sys/amd64/amd64/identcpu.c#8 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.146 2006/04/24 22:56:57 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.147 2006/07/12 06:04:11 jkim Exp $"); #include "opt_cpu.h" @@ -306,8 +306,8 @@ "\020" "\001LAHF" /* LAHF/SAHF in long mode */ "\002CMP" /* CMP legacy */ - "\003" - "\004" + "\003SVM" /* Secure Virtual Mode */ + "\004ExtAPIC" /* Extended APIC register */ "\005CR8" /* CR8 in legacy mode */ "\006" "\007" ==== //depot/projects/fast_ipsec/src/sys/amd64/amd64/initcpu.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/fast_ipsec/src/sys/amd64/amd64/intr_machdep.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.19 2006/02/28 22:24:54 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.20 2006/07/12 21:22:42 jhb Exp $ */ /* @@ -338,16 +338,14 @@ DB_SHOW_COMMAND(irqs, db_show_irqs) { struct intsrc **isrc; - int i, quit, verbose; + int i, verbose; - quit = 0; if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; isrc = interrupt_sources; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < NUM_IO_INTS && !quit; i++, isrc++) + for (i = 0; i < NUM_IO_INTS && !db_pager_quit; i++, isrc++) if (*isrc != NULL) db_dump_intr_event((*isrc)->is_event, verbose); } ==== //depot/projects/fast_ipsec/src/sys/amd64/amd64/local_apic.c#6 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.25 2006/03/20 19:39:07 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.26 2006/07/12 21:22:42 jhb Exp $"); #include "opt_hwpmc_hooks.h" @@ -755,18 +755,16 @@ DB_SHOW_COMMAND(apic, db_show_apic) { struct intsrc *isrc; - int quit, i, verbose; + int i, verbose; u_int irq; - quit = 0; if (strcmp(modif, "vv") == 0) verbose = 2; else if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < APIC_NUM_IOINTS + 1 && !quit; i++) { + for (i = 0; i < APIC_NUM_IOINTS + 1 && !db_pager_quit; i++) { irq = ioint_irqs[i]; if (irq != 0 && irq != IRQ_SYSCALL) { db_printf("vec 0x%2x -> ", i + APIC_IO_INTS); ==== //depot/projects/fast_ipsec/src/sys/amd64/amd64/machdep.c#9 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.649 2006/05/11 17:29:22 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.650 2006/06/19 22:36:01 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1507,7 +1507,7 @@ penv_xmm->en_rip = penv_fpreg->en_rip; penv_xmm->en_rdp = penv_fpreg->en_rdp; penv_xmm->en_mxcsr = penv_fpreg->en_mxcsr; - penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask; + penv_xmm->en_mxcsr_mask = penv_fpreg->en_mxcsr_mask & cpu_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) @@ -1634,6 +1634,7 @@ static int set_fpcontext(struct thread *td, const mcontext_t *mcp) { + struct savefpu *fpstate; if (mcp->mc_fpformat == _MC_FPFMT_NODEV) return (0); @@ -1649,7 +1650,9 @@ * be called with interrupts disabled. * XXX obsolete on trap-16 systems? */ - fpusetregs(td, (struct savefpu *)&mcp->mc_fpstate); + fpstate = (struct savefpu *)&mcp->mc_fpstate; + fpstate->sv_env.en_mxcsr &= cpu_mxcsr_mask; + fpusetregs(td, fpstate); } else return (EINVAL); return (0); ==== //depot/projects/fast_ipsec/src/sys/amd64/amd64/pmap.c#12 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.555 2006/06/05 20:35:25 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.565 2006/07/06 06:17:08 alc Exp $"); /* * Manages physical address maps. @@ -207,7 +207,7 @@ static void free_pv_entry(pmap_t pmap, pv_entry_t pv); static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try); -static void pmap_clear_ptes(vm_page_t m, long bit); +static void pmap_clear_write(vm_page_t m); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); @@ -490,8 +490,7 @@ * (physical) address starting relative to 0] */ void -pmap_bootstrap(firstaddr) - vm_paddr_t *firstaddr; +pmap_bootstrap(vm_paddr_t *firstaddr) { vm_offset_t va; pt_entry_t *pte, *unused; @@ -1006,17 +1005,22 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 15 04:07:51 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 169BE16A4E0; Sat, 15 Jul 2006 04:07:51 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 E751E16A4DD for ; Sat, 15 Jul 2006 04:07:50 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B307B43D45 for ; Sat, 15 Jul 2006 04:07:50 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6F47oMg092952 for ; Sat, 15 Jul 2006 04:07:50 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6F47oeQ092949 for perforce@freebsd.org; Sat, 15 Jul 2006 04:07:50 GMT (envelope-from jb@freebsd.org) Date: Sat, 15 Jul 2006 04:07:50 GMT Message-Id: <200607150407.k6F47oeQ092949@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 101637 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 04:07:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=101637 Change 101637 by jb@jb_freebsd2 on 2006/07/15 04:07:18 More file names that clash with syscall names, resulting in only one object being built in the library (libc). This is kind of sub-optimal and ends in tears. Affected files ... .. //depot/projects/dtrace/src/lib/libthr/thread/Makefile.inc#4 edit .. //depot/projects/dtrace/src/lib/libthr/thread/pthread_create.c#1 add .. //depot/projects/dtrace/src/lib/libthr/thread/pthread_exit.c#1 add .. //depot/projects/dtrace/src/lib/libthr/thread/pthread_kill.c#1 add Differences ... ==== //depot/projects/dtrace/src/lib/libthr/thread/Makefile.inc#4 (text+ko) ==== @@ -4,6 +4,9 @@ .PATH: ${.CURDIR}/thread SRCS+= \ + pthread_create.c \ + pthread_exit.c \ + pthread_kill.c \ pthread_self.c \ thr_attr.c \ thr_barrier.c \ @@ -13,11 +16,9 @@ thr_concurrency.c \ thr_cond.c \ thr_condattr.c \ - thr_create.c \ thr_detach.c \ thr_equal.c \ thr_event.c \ - thr_exit.c \ thr_fork.c \ thr_getprio.c \ thr_getschedparam.c \ @@ -26,7 +27,6 @@ thr_join.c \ thr_list.c \ thr_kern.c \ - thr_kill.c \ thr_main_np.c \ thr_multi_np.c \ thr_mutex.c \ From owner-p4-projects@FreeBSD.ORG Sat Jul 15 04:44:42 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D4FC316A4DF; Sat, 15 Jul 2006 04:44:41 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A2B4516A4DD for ; Sat, 15 Jul 2006 04:44:41 +0000 (UTC) (envelope-from gnn@neville-neil.com) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3D64543D45 for ; Sat, 15 Jul 2006 04:44:41 +0000 (GMT) (envelope-from gnn@neville-neil.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6F4ifxc094645 for ; Sat, 15 Jul 2006 04:44:41 GMT (envelope-from gnn@neville-neil.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6F4hZv6094612 for perforce@freebsd.org; Sat, 15 Jul 2006 04:43:35 GMT (envelope-from gnn@neville-neil.com) Date: Sat, 15 Jul 2006 04:43:35 GMT Message-Id: <200607150443.k6F4hZv6094612@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gnn@neville-neil.com using -f From: "George V. Neville-Neil" To: Perforce Change Reviews Cc: Subject: PERFORCE change 101638 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 04:44:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=101638 Change 101638 by gnn@gnn_devbox_fast_ipsec on 2006/07/15 04:42:36 Integrate from HEAD Affected files ... .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/db_trace.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/fpu.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/identcpu.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/initcpu.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/intr_machdep.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/local_apic.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/machdep.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/pmap.c#9 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/trap.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/conf/DEFAULTS#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/conf/GENERIC#8 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/conf/NOTES#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/include/md_var.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/include/specialreg.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/linux32/linux32_dummy.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/linux32/linux32_proto.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/linux32/linux32_syscall.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/linux32/linux32_sysent.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/amd64/linux32/syscalls.master#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/arm/busdma_machdep.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/arm/db_trace.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/arm/gdb_machdep.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/arm/arm/inckern.S#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/arm/locore.S#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/arm/pmap.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/arm/vm_machdep.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_pio.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_pmc.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_rtc.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_rtcreg.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_spi.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_spiio.h#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_spireg.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_ssc.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_st.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91_twi.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/at91rm92reg.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/files.at91#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/if_ate.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/kb920x_machdep.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/std.at91#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/std.kb920x#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/at91/uart_dev_at91usart.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/conf/IQ31244#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/conf/KB920X#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/conf/SIMICS#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/conf/SKYEYE#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/include/cpuconf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/include/cpufunc.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/include/gdb_machdep.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/arm/include/pmap.h#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/arm/xscale/i80321/i80321_timer.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/boot/Makefile#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/boot/i386/libi386/biosdisk.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/bsm/audit.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/bsm/audit_kevents.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/bsm/audit_record.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/cam/cam_xpt.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/cam/scsi/scsi_cd.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/cam/scsi/scsi_da.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/freebsd32/freebsd32_misc.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/freebsd32/freebsd32_proto.h#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/freebsd32/freebsd32_syscall.h#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/freebsd32/freebsd32_syscalls.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/freebsd32/freebsd32_sysent.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/freebsd32/syscalls.master#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/linprocfs/linprocfs.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/linux/linux_file.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/linux/linux_ioctl.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/linux/linux_ipc.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/linux/linux_misc.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/linux/linux_socket.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/linux/linux_util.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/ndis/kern_ndis.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/ndis/subr_ndis.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/ndis/winx32_wrap.S#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/svr4_ipc.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/svr4_misc.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/svr4_proto.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/svr4_stream.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/svr4_syscall.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/svr4_syscallnames.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/svr4_sysent.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/svr4_util.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/compat/svr4/syscalls.master#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/Makefile.arm#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/NOTES#8 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/files.amd64#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/files.arm#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/files.i386#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/files.ia64#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/files.powerpc#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/kern.mk#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/kern.post.mk#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/kern.pre.mk#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/options#10 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/conf/options.arm#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/COPYRIGHT#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/README#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/ah_desc.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/ah_devid.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/ah_soc.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/freebsd/ah_if.m#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/freebsd/ah_osdep.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/freebsd/ah_osdep.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/alpha-elf.hal.o.uu#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap30.hal.o.uu#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap30.inc#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap30.opt_ah.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap43.hal.o.uu#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap43.inc#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap43.opt_ah.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap51.hal.o.uu#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap51.inc#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap51.opt_ah.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap61.hal.o.uu#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap61.inc#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/ap61.opt_ah.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/arm9-le-thumb-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/arm9-le-thumb-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/armv4-be-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/armv4-be-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/armv4-be-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/armv4-le-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/armv4-le-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/armv4-le-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/i386-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/i386-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips-be-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips-be-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips-be-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips-le-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips-le-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips-le-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips1-be-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips1-be-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips1-be-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips1-le-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips1-le-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mips1-le-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mipsisa32-be-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mipsisa32-be-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mipsisa32-be-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mipsisa32-le-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mipsisa32-le-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/mipsisa32-le-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-be-eabi.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-be-eabi.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-be-eabi.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-be-elf.hal.o.uu#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-be-elf.inc#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-be-elf.opt_ah.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-le-eabi.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-le-eabi.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/powerpc-le-eabi.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/sh4-le-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/sh4-le-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/sparc-be-elf.hal.o.uu#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/sparc-be-elf.inc#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/sparc-be-elf.opt_ah.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/sparc64-be-elf.hal.o.uu#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/sparc64-be-elf.inc#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/x86_64-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/x86_64-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/xscale-be-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/xscale-be-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/xscale-be-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/xscale-le-elf.hal.o.uu#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/xscale-le-elf.inc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/public/xscale-le-elf.opt_ah.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/dev/ath/version.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src.diff#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_bstream.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_bstream.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_context.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_env.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self-new.c#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self_context.s#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_self_info.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_step.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_str.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_str.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_swap.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_swap.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_symbols.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_symbols.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_utable.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/ia64/libuwx/src/uwx_utable.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/pf/net/if_pflog.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/contrib/pf/net/if_pfsync.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/crypto/via/padlock.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ddb/db_command.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ddb/db_output.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ddb/db_output.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ddb/db_ps.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ddb/db_sym.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ddb/db_thread.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ddb/ddb.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/aac/aac_cam.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/aac/aac_pci.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/acpi_support/acpi_panasonic.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/acpica/acpi.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/acpica/acpi_battery.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/acpica/acpi_dock.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/acpica/acpivar.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ahb/ahb.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/asr/MAINTAINER#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ata/ata-all.h#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ata/ata-chipset.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ata/ata-lowlevel.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ata/ata-pci.h#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ata/atapi-cd.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ath/if_ath.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ath/if_ath_pci.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ath/if_athioctl.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ath/if_athvar.h#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/atkbdc/atkbdc_isa.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/awi/awi.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/bce/if_bce.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/bge/if_bge.c#9 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/bge/if_bgereg.h#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/bktr/CHANGELOG.TXT#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/cardbus/cardbus.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/cardbus/cardbus_cis.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ciss/ciss.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/cm/smc90cx6reg.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/cm/smc90cx6var.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/dc/dcphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/dc/if_dc.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/dc/if_dcreg.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ed/if_ed.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ed/if_ed_novell.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ed/if_edvar.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/em/if_em.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/fdc/fdc.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/gem/if_gem.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ic/nec765.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/iicbus/iic.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/iicbus/iic.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/iicbus/iicbus.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/iicbus/iicbus.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/iicbus/iicbus_if.m#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/iicbus/iiconf.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/iicbus/iiconf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ipw/if_ipw.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ipw/if_ipwvar.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/isp/isp.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/isp/isp_sbus.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/isp/isp_target.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/isp/ispmbox.h#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/isp/ispreg.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ispfw/asm_1040.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ispfw/asm_1080.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ispfw/asm_12160.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ispfw/asm_2322.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ispfw/ispfw.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/iwi/if_iwi.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/le/if_le_pci.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/lmc/if_lmc.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/lmc/if_lmc.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mfi/mfi.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mfi/mfi_disk.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mfi/mfi_pci.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mfi/mfireg.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mfi/mfivar.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/brgphy.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/ciphy.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/e1000phy.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/mii_physubr.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/nsgphy.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/rgephy.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/tdkphy.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mxge/eth_z8e.dat.gz.uu#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mxge/ethp_z8e.dat.gz.uu#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mxge/if_mxge.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mxge/if_mxge_var.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mxge/mcp_gen_header.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/mxge/mxge_mcp.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/my/if_my.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/myri10ge/eth_z8e.dat.gz.uu#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/dev/myri10ge/ethp_z8e.dat.gz.uu#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/dev/myri10ge/if_myri10ge.c#3 delete .. //depot/projects/gnn_fast_ipsec/src/sys/dev/myri10ge/if_myri10ge_var.h#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/dev/myri10ge/mcp_gen_header.h#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/dev/myri10ge/myri10ge_mcp.h#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ncv/ncr53c500_pccard.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/nfe/if_nfe.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/nfe/if_nfereg.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/nfe/if_nfevar.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/pccard/pccarddevs#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/pccbb/pccbb_isa.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/pci/pci.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/pci/pcireg.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/puc/puc.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/puc/puc_cfg.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/puc/puc_pccard.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/puc/puc_pci.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/puc/pucdata.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ral/rt2560.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/ral/rt2661.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/random/probe.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sk/if_sk.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/driver.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/ak452x.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/ak452x.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/envy24.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/envy24.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/es137x.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/ich.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/maestro.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/solo.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pci/via8233.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pcm/feeder_rate.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pcm/sound.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/sound/pcm/vchan.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/spibus/spi.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/spibus/spibus.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/spibus/spibus_if.m#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/spibus/spibusvar.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/dev/stg/tmc18c30_subr.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/if_aue.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/if_ural.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/ugen.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/uhid.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/umodem.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/uplcom.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/usbdevs#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/uscanner.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/usb/uvisor.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/wi/if_wi.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/dev/wl/if_wl.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/doc/Doxyfile#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/doc/Makefile#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/fs/devfs/devfs_vfsops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/fs/devfs/devfs_vnops.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/fs/portalfs/portal_vnops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/fs/pseudofs/pseudofs_vnops.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/fs/smbfs/smbfs_vnops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/fs/unionfs/union_vnops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/eli/g_eli.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/eli/g_eli.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/eli/g_eli_ctl.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/geom/eli/g_eli_key.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/geom/geom.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/geom_dev.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/geom_gpt.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/geom_io.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/mirror/g_mirror.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/mirror/g_mirror_ctl.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/raid3/g_raid3.c#8 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/geom/raid3/g_raid3_ctl.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/atomic.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/kmem.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/ktrace.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/rwlock.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/spin.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/support/sv.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_buf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_dmistubs.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_frw.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_frw.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_fs_subr.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_globals.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_iget.c#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_ioctl.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_iops.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_super.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_super.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_sysctl.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vfs.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnode.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_acl.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_acl.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_ag.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_alloc.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_alloc.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_alloc_btree.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_alloc_btree.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_arch.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr_leaf.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr_leaf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_attr_sf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_behavior.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_behavior.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_bit.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_bit.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_bmap.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_bmap.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_bmap_btree.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_bmap_btree.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_btree.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_btree.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_buf_item.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_buf_item.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_cap.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_clnt.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_da_btree.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_da_btree.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dfrag.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dfrag.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dinode.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_block.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_block.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_data.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_data.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_leaf.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_leaf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_node.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_node.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_sf.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_sf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_trace.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir2_trace.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir_leaf.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir_leaf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dir_sf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dmapi.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_dmops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_error.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_error.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_extfree_item.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_extfree_item.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_fs.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_fsops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_fsops.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_ialloc.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_ialloc.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_ialloc_btree.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_ialloc_btree.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_iget.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_imap.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_inode.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_inode.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_inode_item.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_inode_item.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_inum.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_iocore.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_iomap.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_iomap.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_itable.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_itable.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_log.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_log.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_log_priv.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_log_recover.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_log_recover.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_mac.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_macros.c#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_macros.h#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_mount.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_mount.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_qmops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_quota.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_refcache.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_refcache.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_rename.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_rtalloc.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_rtalloc.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_rw.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_rw.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_sb.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_ail.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_buf.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_extfree.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_inode.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_item.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_priv.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_trans_space.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_types.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_utils.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_utils.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_vfsops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfs_vnodeops.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/gnu/fs/xfs/xfsidbg.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/acpica/acpi_machdep.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/acpica/acpi_wakecode.S#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/conf/DEFAULTS#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/conf/GENERIC#8 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/conf/NOTES#8 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/conf/PAE#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/conf/XBOX#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/i386/db_trace.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/i386/identcpu.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/i386/initcpu.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/i386/intr_machdep.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/i386/local_apic.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/i386/minidump_machdep.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/i386/pmap.c#10 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/i386/trap.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_ipc.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_ipc.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_isc_syscall.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_isc_sysent.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_misc.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_msg.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_other.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_poll.h#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_proto.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_syscall.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_sysent.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_util.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_xenix.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_xenix.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_xenix_syscall.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/ibcs2_xenix_sysent.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/imgact_coff.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/syscalls.isc#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/syscalls.master#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/ibcs2/syscalls.xenix#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/include/i4b_ioctl.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/include/md_var.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/include/specialreg.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/linux/linux_dummy.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/linux/linux_proto.h#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/linux/linux_syscall.h#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/linux/linux_sysent.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i386/linux/syscalls.master#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/i4b/layer4/i4b_l4mgmt.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/conf/DEFAULTS#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/conf/GENERIC#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/conf/NOTES#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/conf/SKI#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/disasm/disasm.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/disasm/disasm_decode.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/disasm/disasm_extract.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/disasm/disasm_format.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/disasm/disasm_int.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/ia64/busdma_machdep.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/ia64/db_machdep.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/ia64/emulate.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/ia64/machdep.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/ia64/pmap.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/ia64/trap.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/include/ieeefp.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ia64/include/md_var.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/isa/isa_common.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/isa/isahint.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/bus_if.m#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/init_sysent.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_acct.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_acl.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_clock.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_descrip.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_environment.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_event.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_fork.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_intr.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_ktr.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_ktrace.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_lock.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_mbuf.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_module.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_mutex.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_prot.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_switch.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_synch.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_sysctl.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_tc.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_thr.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/kern_thread.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/link_elf.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/link_elf_obj.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/sched_4bsd.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/sched_core.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/kern/sched_ule.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/subr_acl_posix1e.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/kern/subr_bus.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/subr_firmware.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/subr_hints.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/subr_kdb.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/subr_prf.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/subr_rman.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/subr_turnstile.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/sys_generic.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/sys_pipe.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/syscalls.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/syscalls.master#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/sysv_msg.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/sysv_sem.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/sysv_shm.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/uipc_domain.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/uipc_mbuf.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/uipc_socket.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/uipc_socket2.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/uipc_usrreq.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/vfs_aio.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/vfs_cache.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/vfs_init.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/vfs_syscalls.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/kern/vfs_vnops.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/acpi/acpi/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/acpi/acpi_asus/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/acpi/acpi_panasonic/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/acpi/acpi_toshiba/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/acpi/acpi_video/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ath_hal/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/bktr/bktr_mem/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/cpufreq/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/fdc/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/geom/geom_eli/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/if_bridge/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_1000/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_1040/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_1040_it/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_1080/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_1080_it/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_12160/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_12160_it/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_2100/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_2200/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_2300/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/isp_2322/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ispfw/ispfw/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/mxge/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/mxge/mxge/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/mxge/mxge_eth_z8e/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/mxge/mxge_ethp_z8e/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/myri10ge/Makefile#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/modules/myri10ge/myri10ge/Makefile#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/modules/myri10ge/myri10ge_eth_z8e/Makefile#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/modules/myri10ge/myri10ge_ethp_z8e/Makefile#2 delete .. //depot/projects/gnn_fast_ipsec/src/sys/modules/netgraph/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/netgraph/tag/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/nfe/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/ppc/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/sound/driver/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/sound/driver/ak452x/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/sound/driver/envy24/Makefile#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/modules/streams/Makefile#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/svr4/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/modules/xfs/Makefile#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/bpf.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/bpf.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/bpfdesc.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_atmsubr.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_bridge.c#8 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_clone.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_clone.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_disc.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_enc.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_faith.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_fwsubr.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_gif.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_gre.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_loop.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_media.h#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_ppp.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_sl.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_spppsubr.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_stf.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_tap.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_tun.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_types.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_var.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/if_vlan.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/raw_cb.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/raw_usrreq.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/route.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net/rtsock.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net80211/ieee80211_freebsd.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net80211/ieee80211_input.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/net80211/ieee80211_node.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netatalk/COPYRIGHT#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/atm/uni/ng_uni_cust.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_var.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/netgraph.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/ng_base.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/ng_iface.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/ng_socket.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/ng_tag.c#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/netgraph/ng_tag.h#1 branch .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/if_ether.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/in_pcb.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/in_rmx.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/ip_carp.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/ip_divert.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/ip_dummynet.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/ip_gre.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/ip_ipsec.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/ip_output.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/libalias/libalias.3#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/tcp_input.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/tcp_seq.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/tcp_syncache.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/tcp_timer.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/tcp_usrreq.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/tcp_var.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet/udp_usrreq.c#8 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet6/in6.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet6/in6_cksum.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet6/in6_pcb.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet6/in6_rmx.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet6/in6_var.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet6/ipsec.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet6/nd6.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netinet6/raw_ip6.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netipsec/ipsec.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netipsec/ipsec.h#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netipsec/ipsec_input.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netipsec/ipsec_output.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/netipsec/xform_ipip.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/nfsclient/nfs_diskless.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/nfsclient/nfs_vnops.c#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/nfsserver/nfs_serv.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/nfsserver/nfs_srvcache.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/nfsserver/nfs_srvsubs.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/nfsserver/nfsrvcache.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/opencrypto/criov.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/opencrypto/cryptosoft.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/opencrypto/xform.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/pc98/conf/DEFAULTS#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/pc98/conf/GENERIC#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/pc98/conf/NOTES#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/pc98/pc98/machdep.c#8 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/pci/agp_amd64.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/pci/agp_i810.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/pci/agp_sis.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/posix4/ksched.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/posix4/p1003_1b.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/posix4/posix4.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/powerpc/conf/GENERIC#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/powerpc/powerpc/db_trace.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/powerpc/powerpc/mmu_if.m#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/powerpc/powerpc/mmu_oea.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/powerpc/powerpc/pmap_dispatch.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_arg.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_bsm.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_bsm_klib.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_ioctl.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_pipe.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_private.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_syscalls.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_trigger.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/audit/audit_worker.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/security/mac_biba/mac_biba.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sparc64/conf/DEFAULTS#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sparc64/conf/GENERIC#7 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sparc64/include/_bus.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sparc64/include/bus.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sparc64/isa/isa.c#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sparc64/sbus/sbus.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sparc64/sparc64/db_trace.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/bus.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/elf_common.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/firmware.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/gpt.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/linker.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/mutex.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/protosw.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/rman.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/rwlock.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/sched.h#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/socketvar.h#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/sockio.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/sx.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/syscall.h#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/syscall.mk#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/syscallsubr.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/sysctl.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/sysproto.h#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/systm.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/sys/thr.h#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/tools/fw_stub.awk#2 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ufs/ufs/ufs_lookup.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/ufs/ufs/ufs_vnops.c#3 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/vm/pmap.h#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/vm/vm_fault.c#5 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/vm/vm_mmap.c#4 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/vm/vm_page.c#6 integrate .. //depot/projects/gnn_fast_ipsec/src/sys/vm/vm_pageq.c#5 integrate Differences ... ==== //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/db_trace.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.74 2006/03/13 23:56:44 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.75 2006/07/12 21:22:42 jhb Exp $"); #include #include @@ -390,16 +390,14 @@ long *argp; db_expr_t offset; c_db_sym_t sym; - int narg, quit; + int narg; boolean_t first; if (count == -1) count = 1024; first = TRUE; - quit = 0; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - while (count-- && !quit) { + while (count-- && !db_pager_quit) { sym = db_search_symbol(pc, DB_STGY_ANY, &offset); db_symbol_values(sym, &name, NULL); ==== //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/fpu.c#3 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.158 2006/04/19 07:00:19 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.159 2006/06/19 22:36:01 davidxu Exp $"); #include #include @@ -125,6 +125,10 @@ mxcsr = __INITIAL_MXCSR__; ldmxcsr(mxcsr); fxsave(&fpu_cleanstate); + if (fpu_cleanstate.sv_env.en_mxcsr_mask) + cpu_mxcsr_mask = fpu_cleanstate.sv_env.en_mxcsr_mask; + else + cpu_mxcsr_mask = 0xFFBF; start_emulating(); bzero(fpu_cleanstate.sv_fp, sizeof(fpu_cleanstate.sv_fp)); bzero(fpu_cleanstate.sv_xmm, sizeof(fpu_cleanstate.sv_xmm)); ==== //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/identcpu.c#6 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.146 2006/04/24 22:56:57 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.147 2006/07/12 06:04:11 jkim Exp $"); #include "opt_cpu.h" @@ -306,8 +306,8 @@ "\020" "\001LAHF" /* LAHF/SAHF in long mode */ "\002CMP" /* CMP legacy */ - "\003" - "\004" + "\003SVM" /* Secure Virtual Mode */ + "\004ExtAPIC" /* Extended APIC register */ "\005CR8" /* CR8 in legacy mode */ "\006" "\007" ==== //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/initcpu.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.49 2005/10/14 22:52:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/initcpu.c,v 1.50 2006/06/19 22:59:28 davidxu Exp $"); #include "opt_cpu.h" @@ -60,6 +60,7 @@ u_int cpu_procinfo2; /* Multicore info */ char cpu_vendor[20]; /* CPU Origin code */ u_int cpu_fxsr; /* SSE enabled */ +u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ /* * Initialize CPU control registers ==== //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/intr_machdep.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.19 2006/02/28 22:24:54 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.20 2006/07/12 21:22:42 jhb Exp $ */ /* @@ -338,16 +338,14 @@ DB_SHOW_COMMAND(irqs, db_show_irqs) { struct intsrc **isrc; - int i, quit, verbose; + int i, verbose; - quit = 0; if (strcmp(modif, "v") == 0) verbose = 1; else verbose = 0; isrc = interrupt_sources; - db_setup_paging(db_simple_pager, &quit, db_lines_per_page); - for (i = 0; i < NUM_IO_INTS && !quit; i++, isrc++) + for (i = 0; i < NUM_IO_INTS && !db_pager_quit; i++, isrc++) if (*isrc != NULL) db_dump_intr_event((*isrc)->is_event, verbose); } ==== //depot/projects/gnn_fast_ipsec/src/sys/amd64/amd64/local_apic.c#6 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.25 2006/03/20 19:39:07 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.26 2006/07/12 21:22:42 jhb Exp $"); #include "opt_hwpmc_hooks.h" @@ -755,18 +755,16 @@ DB_SHOW_COMMAND(apic, db_show_apic) { struct intsrc *isrc; - int quit, i, verbose; + int i, verbose; u_int irq; - quit = 0; if (strcmp(modif, "vv") == 0) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jul 15 07:55:40 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7348E16A4E1; Sat, 15 Jul 2006 07:55:40 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 4DBF616A4DA for ; Sat, 15 Jul 2006 07:55:40 +0000 (UTC) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1B7A343D46 for ; Sat, 15 Jul 2006 07:55:40 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6F7tdGq015738 for ; Sat, 15 Jul 2006 07:55:39 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6F7tdpM015735 for perforce@freebsd.org; Sat, 15 Jul 2006 07:55:39 GMT (envelope-from kmacy@freebsd.org) Date: Sat, 15 Jul 2006 07:55:39 GMT Message-Id: <200607150755.k6F7tdpM015735@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 101641 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 07:55:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=101641 Change 101641 by kmacy@kmacy_storage:sun4v_work_stable on 2006/07/15 07:54:51 fix handling of alignment faults on user addresses in copyin and umtx Affected files ... .. //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/trap.c#3 edit Differences ... ==== //depot/projects/kmacy_sun4v_stable/src/sys/sun4v/sun4v/trap.c#3 (text+ko) ==== @@ -380,6 +380,31 @@ printf("trap: %ld=%s: 0x%lx at 0x%lx:0x%lx\n", trapno, trap_msg[trap_conversion[trapno]], data, tf->tf_tpc, tf->tf_tnpc); case T_DATA_ERROR: case T_MEM_ADDRESS_NOT_ALIGNED: + if (tf->tf_asi == ASI_AIUP) { + if (tf->tf_tpc >= (u_long)copy_nofault_begin && + tf->tf_tpc <= (u_long)copy_nofault_end) { + tf->tf_tpc = (u_long)copy_fault; + tf->tf_tnpc = tf->tf_tpc + 4; + error = 0; + break; + } + if (tf->tf_tpc >= (u_long)fs_nofault_begin && + tf->tf_tpc <= (u_long)fs_nofault_end) { + tf->tf_tpc = (u_long)fs_fault; + tf->tf_tnpc = tf->tf_tpc + 4; + error = 0; + break; + } + /* this is really too permissive, but it is needed to cope with umtx's + * casuptr + */ + tf->tf_tpc = (u_long)fs_fault; + tf->tf_tnpc = tf->tf_tpc + 4; + error = 0; + break; + + + } error = 1; break; From owner-p4-projects@FreeBSD.ORG Sat Jul 15 09:05:10 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3D4C516A4E1; Sat, 15 Jul 2006 09:05:10 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 F2FC316A4DD for ; Sat, 15 Jul 2006 09:05:09 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8F36543D46 for ; Sat, 15 Jul 2006 09:05:09 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6F959n6031115 for ; Sat, 15 Jul 2006 09:05:09 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6F959IT031112 for perforce@freebsd.org; Sat, 15 Jul 2006 09:05:09 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 15 Jul 2006 09:05:09 GMT Message-Id: <200607150905.k6F959IT031112@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101643 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 09:05:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=101643 Change 101643 by rdivacky@rdivacky_witten on 2006/07/15 09:04:22 Several things at once: o Change process_exit and process_exec function handlers prototype to include struct image_params arg. o Change struct image_params to include struct sysentvec pointer and initialize it. o Change all consumers of process_exit/process_exec eventhandlers to new prototypes o Change ifdef DEBUG code to actually compile (same was done in linux_futex) o Move some code from under DEBUG and keep only printfs in DEBUG o Add eventhandler to userret o Implement hooks using eventhandlers as jhb suggested o Remove P_LINUX process flag and its handling Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/dev/hwpmc/hwpmc_mod.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/fs/pseudofs/pseudofs_vncache.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#13 edit .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#8 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exec.c#3 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exit.c#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_time.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_trap.c#3 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/sysv_sem.c#4 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_mqueue.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_sem.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_aio.c#3 edit .. //depot/projects/soc2006/rdivacky_linuxolator/netncp/ncp_subr.c#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/sys/eventhandler.h#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/sys/imgact.h#2 edit .. //depot/projects/soc2006/rdivacky_linuxolator/sys/proc.h#3 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/dev/hwpmc/hwpmc_mod.c#2 (text+ko) ==== @@ -182,7 +182,7 @@ static void pmc_maybe_remove_owner(struct pmc_owner *po); static void pmc_process_csw_in(struct thread *td); static void pmc_process_csw_out(struct thread *td); -static void pmc_process_exit(void *arg, struct proc *p); +static void pmc_process_exit(void *arg, struct proc *p, struct image_params *imgp); static void pmc_process_fork(void *arg, struct proc *p1, struct proc *p2, int n); static void pmc_process_samples(int cpu); @@ -3814,7 +3814,7 @@ */ static void -pmc_process_exit(void *arg __unused, struct proc *p) +pmc_process_exit(void *arg __unused, struct proc *p, struct image_params *imgp __unused) { int is_using_hwpmcs; int cpu; ==== //depot/projects/soc2006/rdivacky_linuxolator/fs/pseudofs/pseudofs_vncache.c#2 (text+ko) ==== @@ -50,7 +50,7 @@ static struct mtx pfs_vncache_mutex; static struct pfs_vdata *pfs_vncache; static eventhandler_tag pfs_exit_tag; -static void pfs_exit(void *arg, struct proc *p); +static void pfs_exit(void *arg, struct proc *p, struct image_params *imgp); SYSCTL_NODE(_vfs_pfs, OID_AUTO, vncache, CTLFLAG_RW, 0, "pseudofs vnode cache"); @@ -224,7 +224,7 @@ * isn't mounted. */ static void -pfs_exit(void *arg, struct proc *p) +pfs_exit(void *arg, struct proc *p, struct image_params *imgp __unused) { struct pfs_vdata *pvd; struct vnode *vnp; ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#13 (text+ko) ==== @@ -69,8 +69,9 @@ struct rwlock emul_lock; static int linux_proc_init(struct thread *, pid_t); -int linux_proc_exit(struct thread *); -int linux_userret(struct thread *); +void linux_proc_exit(void *, struct proc *, struct image_params *); +void linux_userret(void *, struct proc *); +void linux_proc_exec(void *, struct proc *, struct image_params *); static struct linux_emuldata *em_find(pid_t pid, int locked); struct l_descriptor { @@ -384,10 +385,9 @@ #ifdef DEBUG if (ldebug(clone)) { - printf(ARGS(clone, "flags %x, stack %x, parent tid: %x, - child tid: %x"), - (unsigned int)args->flags, (unsigned int)args->stack, - (unsigned int) args->parent_tidptr, (unsigned int)args->child_tidptr); + printf(ARGS(clone, "flags %x, stack %x, parent tid: %x, child tid: %x"), + (unsigned int)args->flags, (unsigned int)args->stack, + (unsigned int)args->parent_tidptr, (unsigned int)args->child_tidptr); if (args->flags & CLONE_PID) printf(LMSG("CLONE_PID not yet supported")); } @@ -948,10 +948,10 @@ #ifdef DEBUG if (ldebug(set_thread_area)) - printf("Args passed to the set_thread_area:\n - entry number: %i, base address: %i, limit: %i, - seg32bit: %i, contents: %i, read_exec_only: %i, - limit in pages: %i, seg_not_present: %i, useable: %i\n", + printf(ARGS(set_thread_area, "Args passed to the set_thread_area:\n \ + entry number: %i, base address: %i, limit: %i, \ + seg32bit: %i, contents: %i, read_exec_only: %i, \ + limit in pages: %i, seg_not_present: %i, useable: %i\n"), info.entry_number, info.base_addr, info.limit, @@ -1006,10 +1006,10 @@ memcpy(&sd, &a, sizeof(a)); #ifdef DEBUG if (ldebug(set_thread_area)) - printf("Segment created in set_thread_area: \n - lobase: %x, hibase: %x, lolimit: %x, - hilimit: %x, type: %i, dpl: %i, - p: %i, xx: %i, def32: %i, gran: %i\n", sd.sd_lobase, + printf(ARGS(set_thread_area, "Segment created in set_thread_area: \n \ + lobase: %x, hibase: %x, lolimit: %x, \ + hilimit: %x, type: %i, dpl: %i, \ + p: %i, xx: %i, def32: %i, gran: %i\n"), sd.sd_lobase, sd.sd_hibase, sd.sd_lolimit, sd.sd_hilimit, @@ -1093,7 +1093,6 @@ linux_proc_init(struct thread *td, pid_t child) { struct linux_emuldata *em, *p_em; - struct proc *p; /* XXX: locking? */ if (child != 0) { @@ -1109,7 +1108,7 @@ if (em == NULL) { /* this should not happen */ #ifdef DEBUG - printf("emuldata not found in exec case.\n"); + printf(LMSG("emuldata not found in exec case.\n")); #endif return (0); } @@ -1137,33 +1136,28 @@ EMUL_RUNLOCK(&emul_lock); } - /* XXX: sched_lock locking? */ - - /* find the newly created thread and set the P_LINUX flag */ - if (child != 0) { - p = pfind(child); - p->p_flag |= P_LINUX; - PROC_UNLOCK(p); - } - return (0); } -int -linux_proc_exit(struct thread *td) +void +linux_proc_exit(void *arg __unused, struct proc *p, struct image_params *imgp __unused) { struct linux_emuldata *em; int error; + struct thread *td = FIRST_THREAD_IN_PROC(p); + + if (p->p_sysent != &elf_linux_sysvec) + return; /* find the emuldata */ - em = em_find(td->td_proc->p_pid, EMUL_UNLOCKED); + em = em_find(p->p_pid, EMUL_UNLOCKED); + if (em == NULL) { #ifdef DEBUG - if (em == NULL) { - printf("we didnt find emuldata for the exiting process.\n"); - return (0); + printf(LMSG("we didnt find emuldata for the exiting process.\n")); +#endif + return; } -#endif if (em->clear_tid != NULL) { struct linux_sys_futex_args cup; int null = 0; @@ -1171,7 +1165,7 @@ error = copyout(&null, em->clear_tid, sizeof(null)); if (error) { EMUL_RUNLOCK(&emul_lock); - return (error); + return; } /* futexes stuff */ @@ -1181,9 +1175,9 @@ cup.timeout = NULL; cup.uaddr2 = NULL; cup.val3 = 0; - error = linux_sys_futex(td, &cup); + error = linux_sys_futex(FIRST_THREAD_IN_PROC(p), &cup); if (error) - printf("futex stuff in proc_exit failed.\n"); + printf(LMSG("futex stuff in proc_exit failed.\n")); } EMUL_RUNLOCK(&emul_lock); @@ -1197,32 +1191,47 @@ /* clean the stuff up */ FREE(em, M_LINUX); - - return (0); +} + +extern struct sysentvec elf32_freebsd_sysvec; /* defined in i386/i386/elf_machdep.c */ +/* This is used in a case of transition from FreeBSD binary execing to linux binary + * in this case we create linux emuldata proc entry with the pid of the currently running + * process. + */ +void linux_proc_exec(void *arg __unused, struct proc *p, struct image_params *imgp) +{ + if (__predict_false(imgp->sysent == &elf_linux_sysvec + && p->p_sysent == &elf32_freebsd_sysvec)) + linux_proc_init(FIRST_THREAD_IN_PROC(p), p->p_pid); } -int -linux_userret(struct thread *td) +void +linux_userret(void *arg __unused, struct proc *p) { struct linux_emuldata *em; int error = 0; + //struct thread *td = FIRST_THREAD_IN_PROC(p); - /* find the emuldata */ - em = em_find(td->td_proc->p_pid, EMUL_UNLOCKED); + if (p->p_sysent != &elf_linux_sysvec) + return; + + //printf("XXX: %i\n", p->p_pid); + /* find the emuldata */ + em = em_find(p->p_pid, EMUL_UNLOCKED); -#ifdef DEBUG - if (child == NULL) { - printf("we didnt find emuldata for the userreting process.\n"); - EMUL_RUNLOCK(&emul_lock); - return (0); + if (em == NULL) { +#ifdef DEBUG + // printf(LMSG("we didnt find emuldata for the userreting process.\n")); +#endif + return; } -#endif - if (em->set_tid != NULL) - error = copyout(&td->td_proc->p_pid, em->set_tid, sizeof(td->td_proc->p_pid)); + if (em->set_tid != NULL) { + error = copyout(&p->p_pid, em->set_tid, sizeof(p->p_pid)); + } EMUL_RUNLOCK(&emul_lock); - return (error); + return; } int @@ -1233,13 +1242,13 @@ /* find the emuldata */ em = em_find(td->td_proc->p_pid, EMUL_UNLOCKED); + if (em == NULL) { #ifdef DEBUG - if (child == NULL) { - printf("we didnt find emuldata for the userreting process.\n"); + printf(LMSG("we didnt find emuldata for the userreting process.\n")); +#endif EMUL_RUNLOCK(&emul_lock); return (0); } -#endif em->clear_tid = args->tidptr; td->td_retval[0] = td->td_proc->p_pid; ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_sysvec.c#8 (text+ko) ==== @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -106,15 +107,17 @@ static void exec_linux_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings); -extern int (*linux_proc_exit_p)(struct thread *); -extern int (*linux_userret_p)(struct thread *); - -extern int linux_userret(struct thread *); -extern int linux_proc_exit(struct thread *); +extern void linux_proc_exit(void *, struct proc *, struct image_params *); +extern void linux_proc_exec(void *, struct proc *, struct image_params *); +extern void linux_userret(void *, struct proc *); extern struct rwlock emul_lock; extern LIST_HEAD(futex_list, futex) futex_list; extern struct mtx futex_mtx; +static eventhandler_tag linux_exit_tag; +static eventhandler_tag linux_userret_tag; +static eventhandler_tag linux_exec_tag; + /* * Linux syscalls return negative errno's, we do positive and map them */ @@ -918,11 +921,15 @@ } else printf("cannot insert Linux ELF brand handler\n"); SLIST_INIT(&emuldata_head); - linux_proc_exit_p = linux_proc_exit; - linux_userret_p = linux_userret; rw_init(&emul_lock, "emuldata lock"); LIST_INIT(&futex_list); mtx_init(&futex_mtx, "futex protection lock", NULL, MTX_DEF); + linux_exit_tag = EVENTHANDLER_REGISTER(process_exit, linux_proc_exit, + NULL, 1000); + linux_userret_tag = EVENTHANDLER_REGISTER(userret, linux_userret, + NULL, 1000); + linux_exec_tag = EVENTHANDLER_REGISTER(process_exec, linux_proc_exec, + NULL, 1000); break; case MOD_UNLOAD: for (brandinfo = &linux_brandlist[0]; *brandinfo != NULL; @@ -944,10 +951,11 @@ printf("Linux ELF exec handler removed\n"); } else printf("Could not deinstall ELF interpreter entry\n"); - linux_proc_exit_p = NULL; - linux_userret_p = NULL; rw_destroy(&emul_lock); mtx_destroy(&futex_mtx); + EVENTHANDLER_DEREGISTER(process_exit, linux_exit_tag); + EVENTHANDLER_DEREGISTER(userret, linux_userret_tag); + EVENTHANDLER_DEREGISTER(process_exec, linux_exec_tag); break; default: return EOPNOTSUPP; ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exec.c#3 (text+ko) ==== @@ -889,9 +889,10 @@ vm_map_t map; imgp->vmspace_destroyed = 1; + imgp->sysent = sv; /* Called with Giant held, do not depend on it! */ - EVENTHANDLER_INVOKE(process_exec, p); + EVENTHANDLER_INVOKE(process_exec, p, imgp); /* * Here is as good a place as any to do any resource limit cleanups. ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_exit.c#4 (text+ko) ==== @@ -87,7 +87,6 @@ /* Hook for NFS teardown procedure. */ void (*nlminfo_release_p)(struct proc *p); -int (*linux_proc_exit_p)(struct thread *) = NULL; /* necessary for linuxolator */ /* * exit -- @@ -235,11 +234,8 @@ * E.g. SYSV IPC stuff * XXX what if one of these generates an error? */ - EVENTHANDLER_INVOKE(process_exit, p); + EVENTHANDLER_INVOKE(process_exit, p, NULL); - /* we have to call linux exit hook */ - if (p->p_flag & P_LINUX && linux_proc_exit_p != NULL) - (linux_proc_exit_p)(td); MALLOC(p->p_ru, struct rusage *, sizeof(struct rusage), M_ZOMBIE, M_WAITOK); /* ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/kern_time.c#2 (text+ko) ==== @@ -87,7 +87,7 @@ static void itimer_leave(struct itimer *); static struct itimer *itimer_find(struct proc *, int, int); static void itimers_alloc(struct proc *); -static void itimers_event_hook(void *arg, struct proc *p); +static void itimers_event_hook(void *arg, struct proc *p, struct image_params *imgp); static int realtimer_create(struct itimer *); static int realtimer_gettime(struct itimer *, struct itimerspec *); static int realtimer_settime(struct itimer *, int, @@ -1511,7 +1511,7 @@ /* Clean up timers when some process events are being triggered. */ static void -itimers_event_hook(void *arg, struct proc *p) +itimers_event_hook(void *arg, struct proc *p, struct image_params *imgp __unused) { struct itimers *its; struct itimer *it; ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/subr_trap.c#3 (text+ko) ==== @@ -59,6 +59,7 @@ #include #include #include +#include #ifdef KTRACE #include #include @@ -67,8 +68,6 @@ #include #include -int (*linux_userret_p)(struct thread *) = NULL; /* for linuxolator */ - /* * Define the code needed before returning to user mode, for * trap and syscall. @@ -130,9 +129,7 @@ addupc_task(td, TRAPF_PC(frame), td->td_pticks * psratio); } - /* linux userret */ - if (p->p_flag & P_LINUX && linux_userret_p != NULL) - (linux_userret_p)(td); + EVENTHANDLER_INVOKE(userret, p); /* * Let the scheduler adjust our priority etc. ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/sysv_sem.c#4 (text+ko) ==== @@ -77,7 +77,7 @@ static void seminit(void); static int sysvsem_modload(struct module *, int, void *); static int semunload(void); -static void semexit_myhook(void *arg, struct proc *p); +static void semexit_myhook(void *arg, struct proc *p, struct image_params *imgp); static int sysctl_sema(SYSCTL_HANDLER_ARGS); static int semvalid(int semid, struct semid_kernel *semakptr); @@ -1299,9 +1299,10 @@ * semaphores. */ static void -semexit_myhook(arg, p) +semexit_myhook(arg, p, imgp) void *arg; struct proc *p; + struct image_params *imgp; { struct sem_undo *suptr; struct sem_undo **supptr; ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_mqueue.c#2 (text+ko) ==== @@ -247,7 +247,7 @@ int timo); static void mqueue_send_notification(struct mqueue *mq); static void mqueue_fdclose(struct thread *td, int fd, struct file *fp); -static void mq_proc_exit(void *arg, struct proc *p); +static void mq_proc_exit(void *arg, struct proc *p, struct image_params *imgp); /* * kqueue filters @@ -2280,7 +2280,7 @@ } static void -mq_proc_exit(void *arg __unused, struct proc *p) +mq_proc_exit(void *arg __unused, struct proc *p, struct image_params *imgp __unused) { struct filedesc *fdp; struct file *fp; ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/uipc_sem.c#2 (text+ko) ==== @@ -71,7 +71,7 @@ static int sem_perm(struct thread *td, struct ksem *ks); static void sem_enter(struct proc *p, struct ksem *ks); static int sem_leave(struct proc *p, struct ksem *ks); -static void sem_exithook(void *arg, struct proc *p); +static void sem_exithook(void *arg, struct proc *p, struct image_params *imgp); static void sem_forkhook(void *arg, struct proc *p1, struct proc *p2, int flags); static int sem_hasopen(struct thread *td, struct ksem *ks); @@ -919,7 +919,7 @@ } static void -sem_exithook(void *arg, struct proc *p) +sem_exithook(void *arg, struct proc *p, struct image_params *imgp __unused) { struct ksem *ks, *ksnext; ==== //depot/projects/soc2006/rdivacky_linuxolator/kern/vfs_aio.c#3 (text+ko) ==== @@ -321,7 +321,7 @@ static int aio_aqueue(struct thread *td, struct aiocb *job, struct aioliojob *lio, int type, int osigev); static void aio_physwakeup(struct buf *bp); -static void aio_proc_rundown(void *arg, struct proc *p); +static void aio_proc_rundown(void *arg, struct proc *p, struct image_params *imgp); static int aio_qphysio(struct proc *p, struct aiocblist *iocb); static void biohelper(void *, int); static void aio_daemon(void *param); @@ -634,7 +634,7 @@ * Rundown the jobs for a given process. */ static void -aio_proc_rundown(void *arg, struct proc *p) +aio_proc_rundown(void *arg, struct proc *p, struct image_params *imgp __unused) { struct kaioinfo *ki; struct aioliojob *lj; ==== //depot/projects/soc2006/rdivacky_linuxolator/netncp/ncp_subr.c#2 (text+ko) ==== @@ -57,7 +57,7 @@ struct callout_handle ncp_timer_handle; static eventhandler_tag ncp_exit_tag; -static void ncp_at_exit(void *arg, struct proc *p); +static void ncp_at_exit(void *arg, struct proc *p, struct image_params *imgp); static void ncp_timer(void *arg); /* @@ -80,7 +80,7 @@ void -ncp_at_exit(void *arg, struct proc *p) +ncp_at_exit(void *arg, struct proc *p, struct image_params *imgp __unused) { struct ncp_conn *ncp, *nncp; struct thread *td; ==== //depot/projects/soc2006/rdivacky_linuxolator/sys/eventhandler.h#2 (text+ko) ==== @@ -162,10 +162,11 @@ * exec handlers are called with Giant, but that is by accident. */ struct proc; +struct image_params; -typedef void (*exitlist_fn)(void *, struct proc *); +typedef void (*exitlist_fn)(void *, struct proc *, struct image_params *); typedef void (*forklist_fn)(void *, struct proc *, struct proc *, int); -typedef void (*execlist_fn)(void *, struct proc *); +typedef void (*execlist_fn)(void *, struct proc *, struct image_params *); EVENTHANDLER_DECLARE(process_exit, exitlist_fn); EVENTHANDLER_DECLARE(process_fork, forklist_fn); @@ -174,4 +175,7 @@ typedef void (*uma_zone_chfn)(void *); EVENTHANDLER_DECLARE(nmbclusters_change, uma_zone_chfn); EVENTHANDLER_DECLARE(maxsockets_change, uma_zone_chfn); + +typedef void(*userret_fn)(void *, struct proc *); +EVENTHANDLER_DECLARE(userret, userret_fn); #endif /* SYS_EVENTHANDLER_H */ ==== //depot/projects/soc2006/rdivacky_linuxolator/sys/imgact.h#2 (text+ko) ==== @@ -63,6 +63,7 @@ unsigned long ps_strings; /* PS_STRINGS for BSD/OS binaries */ size_t auxarg_size; struct image_args *args; /* system call arguments */ + struct sysentvec *sysent; /* system entry vector */ }; #ifdef _KERNEL ==== //depot/projects/soc2006/rdivacky_linuxolator/sys/proc.h#3 (text+ko) ==== @@ -655,7 +655,6 @@ #define P_HWPMC 0x800000 /* Process is using HWPMCs */ #define P_JAILED 0x1000000 /* Process is in jail. */ -#define P_LINUX 0x2000000 /* linux binary */ #define P_INEXEC 0x4000000 /* Process is in execve(). */ #define P_STATCHILD 0x8000000 /* Child process stopped or exited. */ From owner-p4-projects@FreeBSD.ORG Sat Jul 15 09:08:15 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F158D16A4E6; Sat, 15 Jul 2006 09:08:14 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 CA80416A4DF for ; Sat, 15 Jul 2006 09:08:14 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5E7FF43D58 for ; Sat, 15 Jul 2006 09:08:14 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6F98EhU031357 for ; Sat, 15 Jul 2006 09:08:14 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6F98EX8031354 for perforce@freebsd.org; Sat, 15 Jul 2006 09:08:14 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 15 Jul 2006 09:08:14 GMT Message-Id: <200607150908.k6F98EX8031354@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101645 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 09:08:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=101645 Change 101645 by rdivacky@rdivacky_witten on 2006/07/15 09:07:39 Forced commit - last commit also added process_exec handler which handles the case when FreeBSD binary is execing to linux one. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#14 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#14 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Sat Jul 15 09:42:57 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AEB5D16A4DE; Sat, 15 Jul 2006 09:42:57 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 8AE5616A4DA for ; Sat, 15 Jul 2006 09:42:57 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5849743D45 for ; Sat, 15 Jul 2006 09:42:57 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6F9gvE8033046 for ; Sat, 15 Jul 2006 09:42:57 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6F9gv2m033043 for perforce@freebsd.org; Sat, 15 Jul 2006 09:42:57 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sat, 15 Jul 2006 09:42:57 GMT Message-Id: <200607150942.k6F9gv2m033043@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 09:42:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=101646 Change 101646 by rdivacky@rdivacky_witten on 2006/07/15 09:42:33 Make debug messages in set_thread_area a bit more sane. Affected files ... .. //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#15 edit Differences ... ==== //depot/projects/soc2006/rdivacky_linuxolator/i386/linux/linux_machdep.c#15 (text+ko) ==== @@ -948,10 +948,7 @@ #ifdef DEBUG if (ldebug(set_thread_area)) - printf(ARGS(set_thread_area, "Args passed to the set_thread_area:\n \ - entry number: %i, base address: %i, limit: %i, \ - seg32bit: %i, contents: %i, read_exec_only: %i, \ - limit in pages: %i, seg_not_present: %i, useable: %i\n"), + printf(ARGS(set_thread_area, "%i, %i, %i, %i, %i, %i, %i, %i, %i\n"), info.entry_number, info.base_addr, info.limit, @@ -1006,10 +1003,7 @@ memcpy(&sd, &a, sizeof(a)); #ifdef DEBUG if (ldebug(set_thread_area)) - printf(ARGS(set_thread_area, "Segment created in set_thread_area: \n \ - lobase: %x, hibase: %x, lolimit: %x, \ - hilimit: %x, type: %i, dpl: %i, \ - p: %i, xx: %i, def32: %i, gran: %i\n"), sd.sd_lobase, + printf("Segment created in set_thread_area: lobase: %x, hibase: %x, lolimit: %x, hilimit: %x, type: %i, dpl: %i, p: %i, xx: %i, def32: %i, gran: %i\n", sd.sd_lobase, sd.sd_hibase, sd.sd_lolimit, sd.sd_hilimit, From owner-p4-projects@FreeBSD.ORG Sat Jul 15 14:09:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C9E0316A4DF; Sat, 15 Jul 2006 14:09:24 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 A2C0D16A4DA; Sat, 15 Jul 2006 14:09:24 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2954843D45; Sat, 15 Jul 2006 14:09:24 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k6FE9MIP022462; Sat, 15 Jul 2006 10:09:22 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Roman Divacky Date: Sat, 15 Jul 2006 10:03:28 -0400 User-Agent: KMail/1.9.1 References: <200607150905.k6F959IT031112@repoman.freebsd.org> In-Reply-To: <200607150905.k6F959IT031112@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200607151003.28710.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [192.168.0.1]); Sat, 15 Jul 2006 10:09:23 -0400 (EDT) X-Virus-Scanned: ClamAV 0.87.1/1599/Fri Jul 14 01:35:31 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 101643 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 14:09:25 -0000 On Saturday 15 July 2006 05:05, Roman Divacky wrote: > http://perforce.freebsd.org/chv.cgi?CH=101643 > > Change 101643 by rdivacky@rdivacky_witten on 2006/07/15 09:04:22 > > Several things at once: > > o Change process_exit and process_exec function handlers prototype > to include struct image_params arg. Why did you add it to process_exit()? exit() doesn't have an imgp to pass, so this doesn't make sense. If you are doing it so you can use the same function for both, then use a wrapper in the exit() case or some such. -- John Baldwin From owner-p4-projects@FreeBSD.ORG Sat Jul 15 14:35:11 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2D99216A4E9; Sat, 15 Jul 2006 14:35:11 +0000 (UTC) X-Original-To: perforce@freebsd.org 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 080B816A4E6; Sat, 15 Jul 2006 14:35:08 +0000 (UTC) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (eva.fit.vutbr.cz [147.229.10.14]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4FD4243D46; Sat, 15 Jul 2006 14:35:08 +0000 (GMT) (envelope-from xdivac02@stud.fit.vutbr.cz) Received: from eva.fit.vutbr.cz (localhost [127.0.0.1]) by eva.fit.vutbr.cz (envelope-from xdivac02@eva.fit.vutbr.cz) (8.13.7/8.13.7) with ESMTP id k6FEZ3k0077396 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Sat, 15 Jul 2006 16:35:03 +0200 (CEST) Received: (from xdivac02@localhost) by eva.fit.vutbr.cz (8.13.7/8.13.3/Submit) id k6FEZ3vH077395; Sat, 15 Jul 2006 16:35:03 +0200 (CEST) Date: Sat, 15 Jul 2006 16:35:03 +0200 From: Divacky Roman To: John Baldwin Message-ID: <20060715143502.GA77297@stud.fit.vutbr.cz> References: <200607150905.k6F959IT031112@repoman.freebsd.org> <200607151003.28710.jhb@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200607151003.28710.jhb@freebsd.org> User-Agent: Mutt/1.4.2i X-Scanned-By: MIMEDefang 2.54 on 147.229.10.14 Cc: Perforce Change Reviews Subject: Re: PERFORCE change 101643 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 14:35:11 -0000 On Sat, Jul 15, 2006 at 10:03:28AM -0400, John Baldwin wrote: > On Saturday 15 July 2006 05:05, Roman Divacky wrote: > > http://perforce.freebsd.org/chv.cgi?CH=101643 > > > > Change 101643 by rdivacky@rdivacky_witten on 2006/07/15 09:04:22 > > > > Several things at once: > > > > o Change process_exit and process_exec function handlers prototype > > to include struct image_params arg. > > Why did you add it to process_exit()? exit() doesn't have an imgp to > pass, so this doesn't make sense. If you are doing it so you can use > the same function for both, then use a wrapper in the exit() case or some > such. because most users of process_exec eventhandler use the same function both for process_exit and process_exec. I didnt know how to solve that otherwise. in the process_exit case I pass in NULL and I change all the other users to foo(void *arg, struct proc *p, struct image_params *imgp __unused) if its not ok tell me how to change that From owner-p4-projects@FreeBSD.ORG Sat Jul 15 16:03:59 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CD98316A4E8; Sat, 15 Jul 2006 16:03:58 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 A8D9816A4E6 for ; Sat, 15 Jul 2006 16:03:58 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1000943D78 for ; Sat, 15 Jul 2006 16:03:56 +0000 (GMT) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6FG3tGV079327 for ; Sat, 15 Jul 2006 16:03:55 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6FG3tXb079324 for perforce@freebsd.org; Sat, 15 Jul 2006 16:03:55 GMT (envelope-from hselasky@FreeBSD.org) Date: Sat, 15 Jul 2006 16:03:55 GMT Message-Id: <200607151603.k6FG3tXb079324@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 101655 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 16:03:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=101655 Change 101655 by hselasky@hselasky_mini_itx on 2006/07/15 16:02:55 Make sure that the 'ng_ubt' module depends on the 'usb' module. Change module name from 'ubt' to 'ng_ubt'. Affected files ... .. //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#3 edit Differences ... ==== //depot/projects/usb/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#3 (text+ko) ==== @@ -375,9 +375,10 @@ * Module */ -DRIVER_MODULE(ubt, uhub, ubt_driver, ubt_devclass, ubt_modevent, 0); +DRIVER_MODULE(ng_ubt, uhub, ubt_driver, ubt_devclass, ubt_modevent, 0); MODULE_VERSION(ng_ubt, NG_BLUETOOTH_VERSION); MODULE_DEPEND(ng_ubt, netgraph, NG_ABI_VERSION, NG_ABI_VERSION, NG_ABI_VERSION); +MODULE_DEPEND(ng_ubt, usb, 1, 1, 1); /**************************************************************************** **************************************************************************** From owner-p4-projects@FreeBSD.ORG Sat Jul 15 16:31:32 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AF28F16A4E6; Sat, 15 Jul 2006 16:31:32 +0000 (UTC) X-Original-To: perforce@FreeBSD.org 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 5A7A016A4E1 for ; Sat, 15 Jul 2006 16:31:32 +0000 (UTC) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 111A843D45 for ; Sat, 15 Jul 2006 16:31:32 +0000 (GMT) (envelope-from swhitman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6FGVVqI082392 for ; Sat, 15 Jul 2006 16:31:31 GMT (envelope-from swhitman@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6FGVVDK082389 for perforce@freebsd.org; Sat, 15 Jul 2006 16:31:31 GMT (envelope-from swhitman@FreeBSD.org) Date: Sat, 15 Jul 2006 16:31:31 GMT Message-Id: <200607151631.k6FGVVDK082389@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to swhitman@FreeBSD.org using -f From: Spencer Whitman To: Perforce Change Reviews Cc: Subject: PERFORCE change 101656 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Jul 2006 16:31:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=101656 Change 101656 by swhitman@swhitman_joethecat on 2006/07/15 16:30:42 More work on #define and #undef. Also added function shell for define and include list initail population (for defaults). Affected files ... .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#11 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#11 edit .. //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.h#8 edit Differences ... ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/cpp.c#11 (text+ko) ==== @@ -44,11 +44,15 @@ struct ref *r; }; +#define OBJ_MAC_TYPE 0 /* For object like macros (no paraens, no arguments) */ +#define FUNC_MAC_TYPE 1 /* For function like macros (paraens and arguments) */ + struct define { - const char *name; /* Name of the macro */ - /* Arguments of the macro */ - /* Value of the macro */ - TAILQ_ENTRY(defines) list; /* Link to list of macros */ + const char *name; /* Name of the macro */ + int mac_type; /* Object or function like macro */ + /* Arguments of the macro */ + /* Value of the macro */ + TAILQ_ENTRY(defines) list; /* Link to list of macros */ }; static TAILQ_HEAD(,iarg) iarg = TAILQ_HEAD_INITIALIZER(iarg); @@ -171,7 +175,7 @@ /* -------------------------------------------------------------------*/ static struct sourcefile * -cpp_include_path(const char *fn) +cpp_include_path(const char *filename) { struct iarg *ap; struct sourcefile *sf; @@ -179,7 +183,7 @@ sf = NULL; TAILQ_FOREACH(ap, &iarg, list) { - asprintf(&q, "%s/%s", ap->dir, fn); + asprintf(&q, "%s/%s", ap->dir, filename); assert(q != NULL); sf = LoadFile(q); free(q); @@ -189,6 +193,16 @@ return (sf); } +/* + * Initalize the include list (if necessary) and add default include paths + */ +static void +cpp_init_includes(void) +{ + +} + + static void cpp_include(CPP_ARGS) { @@ -229,42 +243,91 @@ cppfile(cfs->h, r); } + /* + * This function attempts to add a define specified by b and e to the define list * Define statment should be of the form: * #define NAME(vars) value - * If it continues along more than one line, the line should end with a \\n - * (this may already be taken care of). vars and value are both optional. + * If it continues along more than one line, the line should end with a \\n (backslash + * newline) (this may already be taken care of ?). vars and value are both optional. */ static void -cpp_define(CPP_ARGS) +cpp_add_define(const char *b, const char *e) { - /* struct cppfilestate *cfs __unused, const char *h __unused, - const char *b __unused, const char *e __unused */ - const char * name_b; + struct define *mac; + + const char * name_b = b; const char * name_e; - - printf("#define of %V\n",String(b,e)); - - /* The first token is the macro name */ - name_b = skipspace(cfs, b, e); - + const char * p = b; + + mac = malloc(sizeof *mac); + assert(mac != NULL); + /* Find the end of the name by finding the first white space char or '(' */ for(name_e = name_b; (name_e < e); name_e++) { /* Object like macro */ if ((isspace(*name_e)) || /* XXX This is ugly; any better way to do this? */ ((name_e + 1 < e) && ((name_e[1] == '\\') && (name_e[2] == 's')))) { - - printf("Defining object macro name %V\n",String(name_b,name_e)); + printf("Defining object macro name %V\n",p); + mac->mac_type = OBJ_MAC_TYPE; + break; } /* Function like macro */ else if (*name_e == '(') { printf("Defining function macro name %V\n",String(name_b,name_e)); + mac->mac_type = FUNC_MAC_TYPE; + break; } else continue; } + /* XXX check for failure of either case */ + p = String(name_b,name_e); + mac->name = p; + switch (mac->mac_type) { + case OBJ_MAC_TYPE: + + case FUNC_MAC_TYPE: + /* Make sure function macro is wellformed (has a matching ')', arguments are correct, + * etc.) Add arguments to mac. + */ + default: + break; + } + +} + + +static void +cpp_remove_define(const char *name) +{ + printf("Removing macro %s\n",name); +} + +/* + * Initalize the define list (if necessary) and add built in #defines + */ +static void +cpp_init_defines(void) +{ + + +} + + +static void +cpp_define(CPP_ARGS) +{ + /* struct cppfilestate *cfs __unused, const char *h __unused, + const char *b __unused, const char *e __unused */ + + printf("#define of %V\n",String(b,e)); + + /* The first token is the macro name */ + cpp_add_define(skipspace(cfs, b, e),e); + } static void @@ -274,6 +337,7 @@ const char *b __unused, const char *e __unused */ printf("#undef of %V\n",String(b,e)); + cpp_remove_define(String(b,e)); } static void @@ -431,7 +495,7 @@ } /* -------------------------------------------------------------------*/ - +/* XXX What if -I is used for a file not just a directory? */ void CppIarg(const char *incldir) { @@ -449,9 +513,27 @@ } void -CppDUarg(struct h *h __unused, const char *defn __unused, int def __unused) +CppDUarg(struct h *h __unused, const char *defn, int def) { + const char *p; + assert(defn != NULL); + + p = defn; + if (p[0] == '-' && (p[1] == 'D' || p[1] == 'U')) + p += 2; + /* Find the begining and end of defn */ + + switch(def) { + case DEF: + /* Send it to cpp_add_define() */ + break; + case UNDEF: + /* Send it to cpp_remove_define() */ + break; + default: + errx(1,"Unkown option %i passed as def to CppDUarg", def); + } } @@ -466,6 +548,13 @@ } + /* XXX Should these be here? or maybe in k, only want to do this once ever */ + /* Initalize the include list */ + cpp_init_includes(); + + /* Initalize the define list */ + cpp_init_defines(); + h->r = NewRef(h); h->r->type = ARG; h->r->sf = LoadFile(filename); ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.c#11 (text+ko) ==== @@ -130,8 +130,8 @@ CppIarg("-I/usr/include"); #endif /* Get command line arguments - * D: Not implemented - * U: Not implemented + * D: Define macro optarg + * U: Undefine macro optarg * I: Include file optarg * W: Not implemented * c: Not implemented @@ -139,8 +139,8 @@ */ while ((ch = getopt(argc, argv, "cD:U:I:W:")) != -1) { switch (ch) { - case 'D': CppDUarg(hg, optarg, 1); break; - case 'U': CppDUarg(hg, optarg, 0); break; + case 'D': CppDUarg(hg, optarg, DEF); break; + case 'U': CppDUarg(hg, optarg, UNDEF); break; case 'I': CppIarg(optarg); break; case 'W': case 'c': ==== //depot/projects/soc2006/swhitman-K_Kernel_Meta-Language/k/k.h#8 (text+ko) ==== @@ -110,6 +110,10 @@ /* -------------------------------------------------------------------*/ +/* def flags for CppDUarg function */ +#define UNDEF 0 +#define DEF 1 + /* cpp.c */ void CppIarg(const char *incldir); void CppDUarg(struct h *, const char *defn, int def);