From owner-p4-projects@FreeBSD.ORG Sun Apr 20 01:50:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3318537B404; Sun, 20 Apr 2003 01:50:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C2A5637B401 for ; Sun, 20 Apr 2003 01:50:03 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A854043FA3 for ; Sun, 20 Apr 2003 01:50:02 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3K8o20U084853 for ; Sun, 20 Apr 2003 01:50:02 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3K8o2t9084849 for perforce@freebsd.org; Sun, 20 Apr 2003 01:50:02 -0700 (PDT) Date: Sun, 20 Apr 2003 01:50:02 -0700 (PDT) Message-Id: <200304200850.h3K8o2t9084849@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 Subject: PERFORCE change 29294 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Apr 2003 08:50:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29294 Change 29294 by marcel@marcel_pluto1 on 2003/04/20 01:49:39 IFC @29293 Affected files ... .. //depot/projects/ia64/etc/mac.conf#2 integrate .. //depot/projects/ia64/include/pthread.h#5 integrate .. //depot/projects/ia64/lib/libc/gen/getgrent.c#6 integrate .. //depot/projects/ia64/lib/libc/posix1e/Makefile.inc#9 integrate .. //depot/projects/ia64/lib/libc/posix1e/mac.3#9 integrate .. //depot/projects/ia64/lib/libc/posix1e/mac.conf.5#1 branch .. //depot/projects/ia64/lib/libc/posix1e/mac_prepare.3#3 integrate .. //depot/projects/ia64/lib/libc/stdio/vfprintf.c#17 integrate .. //depot/projects/ia64/lib/libc/stdio/vfwprintf.c#7 integrate .. //depot/projects/ia64/lib/libc_r/man/Makefile.inc#5 integrate .. //depot/projects/ia64/lib/libc_r/man/pthread_getconcurrency.3#1 branch .. //depot/projects/ia64/lib/libc_r/uthread/Makefile.inc#7 integrate .. //depot/projects/ia64/lib/libc_r/uthread/uthread_concurrency.c#1 branch .. //depot/projects/ia64/lib/libthr/thread/Makefile.inc#2 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_concurrency.c#1 branch .. //depot/projects/ia64/lib/libthr/thread/thr_create.c#3 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_gc.c#3 integrate .. //depot/projects/ia64/lib/libthr/thread/thr_kern.c#3 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/errata/article.sgml#16 integrate .. //depot/projects/ia64/sys/dev/sound/pci/emu10k1.c#9 integrate .. //depot/projects/ia64/sys/dev/tx/if_txreg.h#3 integrate .. //depot/projects/ia64/sys/i386/include/cpufunc.h#13 integrate .. //depot/projects/ia64/sys/kern/vfs_bio.c#49 integrate .. //depot/projects/ia64/sys/kern/vfs_cluster.c#20 integrate .. //depot/projects/ia64/sys/vm/swap_pager.c#22 integrate .. //depot/projects/ia64/sys/vm/vm_fault.c#29 integrate .. //depot/projects/ia64/sys/vm/vm_map.c#49 integrate .. //depot/projects/ia64/sys/vm/vm_object.c#44 integrate .. //depot/projects/ia64/sys/vm/vm_pageout.c#32 integrate .. //depot/projects/ia64/tools/regression/lib/libc/stdio/test-printfloat.c#3 integrate .. //depot/projects/ia64/usr.sbin/raycontrol/raycontrol.c#3 integrate Differences ... ==== //depot/projects/ia64/etc/mac.conf#2 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/etc/mac.conf,v 1.1 2002/10/22 14:38:49 rwatson Exp $ +# $FreeBSD: src/etc/mac.conf,v 1.2 2003/04/20 03:09:35 rwatson Exp $ # # TrustedBSD MAC userland policy configuration file. Kernel modules # export label information, and mac.conf indicates to userland @@ -11,7 +11,7 @@ # Default label set to be used by simple MAC applications # -default_file_labels ?biba,?mls,?sebsd,?te -default_ifnet_labels ?biba,?mls,?sebsd,?te -default_process_labels ?biba,?mls,?partition,?sebsd,?te +default_file_labels ?biba,?mls,?sebsd +default_ifnet_labels ?biba,?mls,?sebsd +default_process_labels ?biba,?mls,?partition,?sebsd ==== //depot/projects/ia64/include/pthread.h#5 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/pthread.h,v 1.27 2003/02/10 08:48:03 alfred Exp $ + * $FreeBSD: src/include/pthread.h,v 1.28 2003/04/20 01:53:12 jdp Exp $ */ #ifndef _PTHREAD_H_ #define _PTHREAD_H_ @@ -288,6 +288,8 @@ struct sched_param *); int pthread_setschedparam(pthread_t, int, const struct sched_param *); +int pthread_getconcurrency(void); +int pthread_setconcurrency(int); __END_DECLS #endif ==== //depot/projects/ia64/lib/libc/gen/getgrent.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.26 2003/04/18 01:00:37 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.27 2003/04/20 01:12:00 nectar Exp $"); #include "namespace.h" #include @@ -500,7 +500,6 @@ if (rv & NS_TERMINATE) break; } -fin: if (!stayopen && st->fp != NULL) { fclose(st->fp); st->fp = NULL; @@ -1083,7 +1082,7 @@ __gr_parse_entry(char *line, size_t linesize, struct group *grp, char *membuf, size_t membufsize, int *errnop) { - char *s_gid, *s_mem, **members; + char *s_gid, *s_mem, *p, **members; unsigned long n; int maxmembers; @@ -1104,13 +1103,12 @@ return (NS_NOTFOUND); grp->gr_gid = (gid_t)n; grp->gr_mem = members; - if (s_mem[0] == '\0') { - *members = NULL; - return (NS_SUCCESS); - } while (maxmembers > 1 && s_mem != NULL) { - *members++ = strsep(&s_mem, ","); - maxmembers--; + p = strsep(&s_mem, ","); + if (p != NULL && *p != '\0') { + *members++ = p; + maxmembers--; + } } *members = NULL; if (s_mem == NULL) ==== //depot/projects/ia64/lib/libc/posix1e/Makefile.inc#9 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc/posix1e/Makefile.inc,v 1.14 2003/01/15 00:45:31 chris Exp $ +# $FreeBSD: src/lib/libc/posix1e/Makefile.inc,v 1.15 2003/04/20 03:18:44 rwatson Exp $ MAINTAINER= rwatson@FreeBSD.org @@ -51,6 +51,7 @@ acl_valid.3 \ extattr.3 \ mac.3 \ + mac.conf.5 \ mac_free.3 \ mac_is_present_np.3 \ mac_get.3 \ ==== //depot/projects/ia64/lib/libc/posix1e/mac.3#9 (text+ko) ==== @@ -28,9 +28,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/posix1e/mac.3,v 1.10 2003/04/16 20:40:34 rwatson Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac.3,v 1.12 2003/04/20 04:43:56 rwatson Exp $ .\" -.Dd December 21, 2001 +.Dd April 19, 2003 .Dt MAC 3 .Os .Sh NAME @@ -112,6 +112,17 @@ a text-form MAC label into a working .Vt mac_t . +.It Fn mac_prepare +.It Fn mac_prepare_file_label +.It Fn mac_prepare_ifnet_label +.It Fn mac_prepare_process_label +These functions are described in +.Xr mac_prepare 3 , +and may be used to preallocate storage for MAC label retrieval. +.Xr mac_prepare 3 +prepares a label based on caller-specified label names; the other calls +rely on the default configuration specified in +.Xr mac.conf 5 . .It Fn mac_to_text This function is described in .Xr mac_text 3 , @@ -119,6 +130,18 @@ .Vt mac_t into a text-form MAC label. .El +The behavior of some of these calls is influenced by the configuration +settings found in +.Xr mac.conf 5 , +the MAC library run-time configuration file. +.Sh FILES +.Bl -tag -width ".Pa /etc/mac.conf" -compact +.It Pa /etc/mac.conf +MAC library configuration file, documented in +.Xr mac.conf 5 . +Provides default behavior for applications aware of MAC labels on +system objects, but without policy-specific knowledge. +.El .Sh IMPLEMENTATION NOTES .Fx Ns 's support for POSIX.1e interfaces and features @@ -131,6 +154,7 @@ .Xr mac_set 3 , .Xr mac_text 3 , .Xr mac 4 , +.Xr mac.conf 5 , .Xr mac 9 .Sh STANDARDS These APIs are loosely based on the APIs described in POSIX.1e. ==== //depot/projects/ia64/lib/libc/posix1e/mac_prepare.3#3 (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.2 2003/02/24 22:53:20 ru Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac_prepare.3,v 1.3 2003/04/20 04:43:56 rwatson Exp $ .\" .Dd December 12, 2002 .Os @@ -68,6 +68,8 @@ .Fn mac_prepare_process_label functions allocate the storage to fit file, network interface, and process labels, respectively. +The default label elements employed by these APIs is configured in +.Xr mac.conf 5 . .Sh RETURN VALUES .Rv -std .Sh SEE ALSO @@ -77,6 +79,7 @@ .Xr mac_is_present_np 3 , .Xr mac_set 3 , .Xr mac 4 , +.Xr mac.conf 5 , .Xr maclabel 7 .Sh STANDARDS POSIX.1e is described in IEEE POSIX.1e draft 17. ==== //depot/projects/ia64/lib/libc/stdio/vfprintf.c#17 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)vfprintf.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.58 2003/04/14 11:24:53 das Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.59 2003/04/19 23:53:19 das Exp $"); /* * Actual printf innards. @@ -920,6 +920,13 @@ prec = ndig - expt; if (prec < 0) prec = 0; + } else { + /* + * Make %[gG] smell like %[eE], but + * trim trailing zeroes if no # flag. + */ + if (!(flags & ALT)) + prec = ndig; } } if (expchar) { ==== //depot/projects/ia64/lib/libc/stdio/vfwprintf.c#7 (text+ko) ==== @@ -41,7 +41,7 @@ #endif /* LIBC_SCCS and not lint */ __FBSDID("FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.58 2003/04/14 11:24:53 das Exp"); #endif -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.11 2003/04/14 12:15:59 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.12 2003/04/19 23:53:19 das Exp $"); /* * Actual wprintf innards. @@ -889,6 +889,13 @@ prec = ndig - expt; if (prec < 0) prec = 0; + } else { + /* + * Make %[gG] smell like %[eE], but + * trim trailing zeroes if no # flag. + */ + if (!(flags & ALT)) + prec = ndig; } } if (expchar) { ==== //depot/projects/ia64/lib/libc_r/man/Makefile.inc#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc_r/man/Makefile.inc,v 1.19 2003/02/24 22:59:01 ru Exp $ +# $FreeBSD: src/lib/libc_r/man/Makefile.inc,v 1.20 2003/04/20 01:53:12 jdp Exp $ # POSIX thread man files @@ -10,6 +10,7 @@ pthread_cancel.3 \ pthread_cleanup_pop.3 \ pthread_cleanup_push.3 \ + pthread_getconcurrency.3 \ pthread_condattr.3 \ pthread_cond_broadcast.3 \ pthread_cond_destroy.3 \ @@ -85,6 +86,7 @@ pthread_attr.3 pthread_attr_setstack.3 \ pthread_attr.3 pthread_attr_setstackaddr.3 \ pthread_attr.3 pthread_attr_setstacksize.3 \ + pthread_getconcurrency.3 pthread_setconcurrency.3 \ pthread_condattr.3 pthread_condattr_init.3 \ pthread_condattr.3 pthread_condattr_destroy.3 \ pthread_multi_np.3 pthread_single_np.3 \ ==== //depot/projects/ia64/lib/libc_r/uthread/Makefile.inc#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc_r/uthread/Makefile.inc,v 1.35 2003/02/11 07:28:28 alfred Exp $ +# $FreeBSD: src/lib/libc_r/uthread/Makefile.inc,v 1.36 2003/04/20 01:53:12 jdp Exp $ # uthread sources .PATH: ${.CURDIR}/uthread @@ -37,6 +37,7 @@ uthread_cancel.c \ uthread_clean.c \ uthread_close.c \ + uthread_concurrency.c \ uthread_cond.c \ uthread_condattr_destroy.c \ uthread_condattr_init.c \ ==== //depot/projects/ia64/lib/libthr/thread/Makefile.inc#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libthr/thread/Makefile.inc,v 1.1 2003/04/01 03:46:28 jeff Exp $ +# $FreeBSD: src/lib/libthr/thread/Makefile.inc,v 1.2 2003/04/20 01:53:13 jdp Exp $ # thr sources .PATH: ${.CURDIR}/thread @@ -8,6 +8,7 @@ thr_autoinit.c \ thr_cancel.c \ thr_clean.c \ + thr_concurrency.c \ thr_cond.c \ thr_condattr_destroy.c \ thr_condattr_init.c \ ==== //depot/projects/ia64/lib/libthr/thread/thr_create.c#3 (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_create.c,v 1.3 2003/04/03 03:34:50 jake Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_create.c,v 1.4 2003/04/20 02:56:12 marcel Exp $ */ #include #include ==== //depot/projects/ia64/lib/libthr/thread/thr_gc.c#3 (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_gc.c,v 1.2 2003/04/02 03:05:39 jeff Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_gc.c,v 1.3 2003/04/20 02:56:12 marcel Exp $ * * Garbage collector thread. Frees memory allocated for dead threads. * ==== //depot/projects/ia64/lib/libthr/thread/thr_kern.c#3 (text+ko) ==== @@ -23,7 +23,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_kern.c,v 1.2 2003/04/01 22:41:41 jeff Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_kern.c,v 1.3 2003/04/20 02:58:30 marcel Exp $ */ #include ==== //depot/projects/ia64/release/doc/en_US.ISO8859-1/errata/article.sgml#16 (text+ko) ==== @@ -36,7 +36,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.35 2003/03/31 18:12:56 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.36 2003/04/20 06:17:31 bmah Exp $ 2000 @@ -333,5 +333,12 @@ &release.prev; server. This bug has been fixed in &release.current;. + nsswitch + + The release note documenting the addition of + nsswitch support gave an incorrect + name for the old resolver configuration file. It should have + been listed as /etc/host.conf. + ==== //depot/projects/ia64/sys/dev/sound/pci/emu10k1.c#9 (text+ko) ==== @@ -32,14 +32,14 @@ #include #include -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/emu10k1.c,v 1.34 2003/04/18 04:13:38 obrien Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/emu10k1.c,v 1.36 2003/04/20 08:37:29 obrien Exp $"); /* -------------------------------------------------------------------- */ -#define EMU10K1_PCI_ID 0x00021102 -#define EMU10K2_PCI_ID 0x00041102 -#define EMU_DEFAULT_BUFSZ 4096 -#define EMU_CHANS 4 +#define EMU10K1_PCI_ID 0x00021102 +#define EMU10K2_PCI_ID 0x00041102 +#define EMU_DEFAULT_BUFSZ 4096 +#define EMU_CHANS 4 #undef EMUDEBUG struct emu_memblk { @@ -55,7 +55,7 @@ void *silent_page; bus_addr_t silent_page_addr; bus_addr_t ptb_pages_addr; - SLIST_HEAD(, emu_memblk) blocks; + SLIST_HEAD(, emu_memblk) blocks; }; struct emu_voice { @@ -90,7 +90,7 @@ /* device private data */ struct sc_info { device_t dev; - u_int32_t type, rev; + u_int32_t type, rev; u_int32_t tos_link:1, APS:1; bus_space_tag_t st; @@ -203,37 +203,37 @@ static u_int32_t emu_rdptr(struct sc_info *sc, int chn, int reg) { - u_int32_t ptr, val, mask, size, offset; + u_int32_t ptr, val, mask, size, offset; - ptr = ((reg << 16) & PTR_ADDRESS_MASK) | (chn & PTR_CHANNELNUM_MASK); - emu_wr(sc, PTR, ptr, 4); - val = emu_rd(sc, DATA, 4); - if (reg & 0xff000000) { - size = (reg >> 24) & 0x3f; - offset = (reg >> 16) & 0x1f; - mask = ((1 << size) - 1) << offset; - val &= mask; + ptr = ((reg << 16) & PTR_ADDRESS_MASK) | (chn & PTR_CHANNELNUM_MASK); + emu_wr(sc, PTR, ptr, 4); + val = emu_rd(sc, DATA, 4); + if (reg & 0xff000000) { + size = (reg >> 24) & 0x3f; + offset = (reg >> 16) & 0x1f; + mask = ((1 << size) - 1) << offset; + val &= mask; val >>= offset; } - return val; + return val; } static void emu_wrptr(struct sc_info *sc, int chn, int reg, u_int32_t data) { - u_int32_t ptr, mask, size, offset; + u_int32_t ptr, mask, size, offset; - ptr = ((reg << 16) & PTR_ADDRESS_MASK) | (chn & PTR_CHANNELNUM_MASK); - emu_wr(sc, PTR, ptr, 4); - if (reg & 0xff000000) { - size = (reg >> 24) & 0x3f; - offset = (reg >> 16) & 0x1f; - mask = ((1 << size) - 1) << offset; + ptr = ((reg << 16) & PTR_ADDRESS_MASK) | (chn & PTR_CHANNELNUM_MASK); + emu_wr(sc, PTR, ptr, 4); + if (reg & 0xff000000) { + size = (reg >> 24) & 0x3f; + offset = (reg >> 16) & 0x1f; + mask = ((1 << size) - 1) << offset; data <<= offset; - data &= mask; + data &= mask; data |= emu_rd(sc, DATA, 4) & ~mask; } - emu_wr(sc, DATA, data, 4); + emu_wr(sc, DATA, data, 4); } static void @@ -266,8 +266,8 @@ } static kobj_method_t emu_ac97_methods[] = { - KOBJMETHOD(ac97_read, emu_rdcd), - KOBJMETHOD(ac97_write, emu_wrcd), + KOBJMETHOD(ac97_read, emu_rdcd), + KOBJMETHOD(ac97_write, emu_wrcd), { 0, 0 } }; AC97_DECLARE(emu_ac97); @@ -328,7 +328,7 @@ static void emu_enastop(struct sc_info *sc, char channel, int enable) { - int reg = (channel & 0x20)? SOLEH : SOLEL; + int reg = (channel & 0x20) ? SOLEH : SOLEL; channel &= 0x1f; reg |= 1 << 24; reg |= channel << 16; @@ -392,9 +392,9 @@ for (i = 31; i > 0; i--) { if (rate & 0x80000000) { /* Detect leading "1" */ return (((u_int32_t) (i - 15) << 20) + - logMagTable[0x7f & (rate >> 24)] + - (0x7f & (rate >> 17)) * - logSlopeTable[0x7f & (rate >> 24)]); + logMagTable[0x7f & (rate >> 24)] + + (0x7f & (rate >> 17)) * + logSlopeTable[0x7f & (rate >> 24)]); } rate <<= 1; } @@ -469,8 +469,8 @@ struct emu_voice *v = ch->master; if (ch->fmt) { - v->b16 = (ch->fmt & AFMT_16BIT)? 1 : 0; - v->stereo = (ch->fmt & AFMT_STEREO)? 1 : 0; + v->b16 = (ch->fmt & AFMT_16BIT) ? 1 : 0; + v->stereo = (ch->fmt & AFMT_STEREO) ? 1 : 0; if (v->slave != NULL) { v->slave->b16 = v->b16; v->slave->stereo = v->stereo; @@ -490,20 +490,20 @@ int l, r, x, y; u_int32_t sa, ea, start, val, silent_page; - s = (v->stereo? 1 : 0) + (v->b16? 1 : 0); + s = (v->stereo ? 1 : 0) + (v->b16 ? 1 : 0); sa = v->start >> s; ea = v->end >> s; l = r = x = y = v->vol; if (v->stereo) { - l = v->ismaster? l : 0; - r = v->ismaster? 0 : r; + l = v->ismaster ? l : 0; + r = v->ismaster ? 0 : r; } - emu_wrptr(sc, v->vnum, CPF, v->stereo? CPF_STEREO_MASK : 0); - val = v->stereo? 28 : 30; - val *= v->b16? 1 : 2; + emu_wrptr(sc, v->vnum, CPF, v->stereo ? CPF_STEREO_MASK : 0); + val = v->stereo ? 28 : 30; + val *= v->b16 ? 1 : 2; start = sa + val; emu_wrptr(sc, v->vnum, FXRT, 0xd01c0000); @@ -511,7 +511,7 @@ emu_wrptr(sc, v->vnum, PTRX, (x << 8) | r); emu_wrptr(sc, v->vnum, DSL, ea | (y << 24)); emu_wrptr(sc, v->vnum, PSST, sa | (l << 24)); - emu_wrptr(sc, v->vnum, CCCA, start | (v->b16? 0 : CCCA_8BITSELECT)); + emu_wrptr(sc, v->vnum, CCCA, start | (v->b16 ? 0 : CCCA_8BITSELECT)); emu_wrptr(sc, v->vnum, Z1, 0); emu_wrptr(sc, v->vnum, Z2, 0); @@ -550,10 +550,10 @@ if (go) { cra = 64; - cs = v->stereo? 4 : 2; - ccis = v->stereo? 28 : 30; - ccis *= v->b16? 1 : 2; - sample = v->b16? 0x00000000 : 0x80808080; + cs = v->stereo ? 4 : 2; + ccis = v->stereo ? 28 : 30; + ccis *= v->b16 ? 1 : 2; + sample = v->b16 ? 0x00000000 : 0x80808080; for (i = 0; i < cs; i++) emu_wrptr(sc, v->vnum, CD0 + i, sample); @@ -590,7 +590,7 @@ { int s, ptr; - s = (v->b16? 1 : 0) + (v->stereo? 1 : 0); + s = (v->b16 ? 1 : 0) + (v->stereo ? 1 : 0); ptr = (emu_rdptr(sc, v->vnum, CCCA_CURRADDR) - (v->start >> s)) << s; return ptr & ~0x0000001f; } @@ -612,7 +612,7 @@ if (regname[i] == NULL) continue; printf("%s\t[%08x]", regname[i], emu_rdptr(sc, v->vnum, i)); - printf("%s", (x == 2)? "\n" : "\t"); + printf("%s", (x == 2) ? "\n" : "\t"); x++; if (x > 2) x = 0; @@ -641,7 +641,7 @@ ch->master = emu_valloc(sc); ch->slave = emu_valloc(sc); snd_mtxunlock(sc->lock); - r = (emu_vinit(sc, ch->master, ch->slave, sc->bufsz, ch->buffer))? NULL : ch; + r = (emu_vinit(sc, ch->master, ch->slave, sc->bufsz, ch->buffer)) ? NULL : ch; return r; } @@ -711,14 +711,14 @@ emu_enatimer(sc, 1); #ifdef EMUDEBUG printf("start [%d bit, %s, %d hz]\n", - ch->master->b16? 16 : 8, - ch->master->stereo? "stereo" : "mono", + ch->master->b16 ? 16 : 8, + ch->master->stereo ? "stereo" : "mono", ch->master->speed); emu_vdump(sc, ch->master); emu_vdump(sc, ch->slave); #endif } - ch->run = (go == PCMTRIG_START)? 1 : 0; + ch->run = (go == PCMTRIG_START) ? 1 : 0; emu_vtrigger(sc, ch->master, ch->run); snd_mtxunlock(sc->lock); return 0; @@ -745,14 +745,14 @@ } static kobj_method_t emupchan_methods[] = { - KOBJMETHOD(channel_init, emupchan_init), - KOBJMETHOD(channel_free, emupchan_free), - KOBJMETHOD(channel_setformat, emupchan_setformat), - KOBJMETHOD(channel_setspeed, emupchan_setspeed), - KOBJMETHOD(channel_setblocksize, emupchan_setblocksize), - KOBJMETHOD(channel_trigger, emupchan_trigger), - KOBJMETHOD(channel_getptr, emupchan_getptr), - KOBJMETHOD(channel_getcaps, emupchan_getcaps), + KOBJMETHOD(channel_init, emupchan_init), + KOBJMETHOD(channel_free, emupchan_free), + KOBJMETHOD(channel_setformat, emupchan_setformat), + KOBJMETHOD(channel_setspeed, emupchan_setspeed), + KOBJMETHOD(channel_setblocksize, emupchan_setblocksize), + KOBJMETHOD(channel_trigger, emupchan_trigger), + KOBJMETHOD(channel_getptr, emupchan_getptr), + KOBJMETHOD(channel_getcaps, emupchan_getcaps), { 0, 0 } }; CHANNEL_DECLARE(emupchan); @@ -945,13 +945,13 @@ } static kobj_method_t emurchan_methods[] = { - KOBJMETHOD(channel_init, emurchan_init), - KOBJMETHOD(channel_setformat, emurchan_setformat), - KOBJMETHOD(channel_setspeed, emurchan_setspeed), - KOBJMETHOD(channel_setblocksize, emurchan_setblocksize), - KOBJMETHOD(channel_trigger, emurchan_trigger), - KOBJMETHOD(channel_getptr, emurchan_getptr), - KOBJMETHOD(channel_getcaps, emurchan_getcaps), + KOBJMETHOD(channel_init, emurchan_init), + KOBJMETHOD(channel_setformat, emurchan_setformat), + KOBJMETHOD(channel_setspeed, emurchan_setspeed), + KOBJMETHOD(channel_setblocksize, emurchan_setblocksize), + KOBJMETHOD(channel_trigger, emurchan_trigger), + KOBJMETHOD(channel_getptr, emurchan_getptr), + KOBJMETHOD(channel_getcaps, emurchan_getcaps), { 0, 0 } }; CHANNEL_DECLARE(emurchan); @@ -1024,12 +1024,12 @@ { bus_addr_t *phys = arg; - *phys = error? 0 : (bus_addr_t)segs->ds_addr; + *phys = error ? 0 : (bus_addr_t)segs->ds_addr; if (bootverbose) { printf("emu: setmap (%lx, %lx), nseg=%d, error=%d\n", - (unsigned long)segs->ds_addr, (unsigned long)segs->ds_len, - nseg, error); + (unsigned long)segs->ds_addr, (unsigned long)segs->ds_len, + nseg, error); } } @@ -1242,7 +1242,7 @@ { u_int32_t spcs, ch, tmp, i; - /* disable audio and lock cache */ + /* disable audio and lock cache */ emu_wr(sc, HCFG, HCFG_LOCKSOUNDCACHE | HCFG_LOCKTANKCACHE_MASK | HCFG_MUTEBUTTONENABLE, 4); /* reset recording buffers */ @@ -1304,8 +1304,8 @@ sc->voice[ch].start = 0; sc->voice[ch].end = 0; sc->voice[ch].channel = NULL; - } - sc->pnum = sc->rnum = 0; + } + sc->pnum = sc->rnum = 0; /* * Init to 0x02109204 : @@ -1322,9 +1322,9 @@ * P = 0 (Consumer) */ spcs = SPCS_CLKACCY_1000PPM | SPCS_SAMPLERATE_48 | - SPCS_CHANNELNUM_LEFT | SPCS_SOURCENUM_UNSPEC | - SPCS_GENERATIONSTATUS | 0x00001200 | 0x00000000 | - SPCS_EMPHASIS_NONE | SPCS_COPYRIGHT; + SPCS_CHANNELNUM_LEFT | SPCS_SOURCENUM_UNSPEC | + SPCS_GENERATIONSTATUS | 0x00001200 | 0x00000000 | + SPCS_EMPHASIS_NONE | SPCS_COPYRIGHT; emu_wrptr(sc, 0, SPCS0, spcs); emu_wrptr(sc, 0, SPCS1, spcs); emu_wrptr(sc, 0, SPCS2, spcs); @@ -1398,9 +1398,9 @@ emu_wrptr(sc, ch, CVCF, 0); emu_wrptr(sc, ch, PTRX, 0); emu_wrptr(sc, ch, CPF, 0); - } + } - /* disable audio and lock cache */ + /* disable audio and lock cache */ emu_wr(sc, HCFG, HCFG_LOCKSOUNDCACHE | HCFG_LOCKTANKCACHE_MASK | HCFG_MUTEBUTTONENABLE, 4); emu_wrptr(sc, 0, PTB, 0); @@ -1504,7 +1504,7 @@ codec = AC97_CREATE(dev, sc, emu_ac97); if (codec == NULL) goto bad; - gotmic = (ac97_getcaps(codec) & AC97_CAP_MICCHANNEL)? 1 : 0; + gotmic = (ac97_getcaps(codec) & AC97_CAP_MICCHANNEL) ? 1 : 0; if (mixer_init(dev, ac97_getmixerclass(), codec) == -1) goto bad; i = 0; @@ -1516,10 +1516,10 @@ snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld", rman_get_start(sc->reg), rman_get_start(sc->irq)); - if (pcm_register(dev, sc, EMU_CHANS, gotmic? 3 : 2)) goto bad; + if (pcm_register(dev, sc, EMU_CHANS, gotmic ? 3 : 2)) goto bad; for (i = 0; i < EMU_CHANS; i++) pcm_addchan(dev, PCMDIR_PLAY, &emupchan_class, sc); - for (i = 0; i < (gotmic? 3 : 2); i++) + for (i = 0; i < (gotmic ? 3 : 2); i++) pcm_addchan(dev, PCMDIR_REC, &emurchan_class, sc); pcm_setstatus(dev, status); @@ -1599,7 +1599,7 @@ } if (s) device_set_desc(dev, s); - return s? -1000 : ENXIO; + return s ? -1000 : ENXIO; } static int ==== //depot/projects/ia64/sys/dev/tx/if_txreg.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/tx/if_txreg.h,v 1.12 2002/10/22 00:57:51 semenu Exp $ + * $FreeBSD: src/sys/dev/tx/if_txreg.h,v 1.13 2003/04/20 01:04:04 mux Exp $ */ #define EPIC_MAX_MTU 1600 /* This is experiment-derived value */ @@ -190,12 +190,14 @@ #define EEPROM_SSID 0x0006 /* Subsystem Id */ /* - * Hardware structures + * Hardware structures. */ -/* EPIC's hardware descriptors, must be aligned on dword in memory */ -/* NB: to make driver happy, this two structures MUST have thier sizes */ -/* be divisor of PAGE_SIZE */ +/* + * EPIC's hardware descriptors, must be aligned on dword in memory. + * NB: to make driver happy, this two structures MUST have their sizes + * be divisor of PAGE_SIZE. + */ struct epic_tx_desc { volatile u_int16_t status; volatile u_int16_t txlength; @@ -212,9 +214,11 @@ volatile u_int32_t next; }; -/* This structure defines EPIC's fragment list, maximum number of frags */ -/* is 63. Let use maximum, becouse size of struct MUST be divisor of */ -/* PAGE_SIZE, and sometimes come mbufs with more then 30 frags */ +/* + * This structure defines EPIC's fragment list, maximum number of frags + * is 63. Let's use the maximum, because size of struct MUST be divisor + * of PAGE_SIZE, and sometimes come mbufs with more then 30 frags. + */ #define EPIC_MAX_FRAGS 63 struct epic_frag_list { volatile u_int32_t numfrags; @@ -242,4 +246,3 @@ #define SMC9434TX_XG_ADHOC 0xA021 #define SMC9432FTX_ADHOC 0xA022 #define SMC9432BTX1 0xA024 - ==== //depot/projects/ia64/sys/i386/include/cpufunc.h#13 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/i386/include/cpufunc.h,v 1.131 2003/04/19 02:40:39 davidxu Exp $ + * $FreeBSD: src/sys/i386/include/cpufunc.h,v 1.133 2003/04/20 02:59:13 obrien Exp $ */ /* @@ -444,16 +444,16 @@ static __inline u_int rfs(void) { - u_short sel; - __asm __volatile("movw %%fs,%0" : "=rm" (sel)); + u_int sel; + __asm __volatile("movl %%fs,%0" : "=rm" (sel)); return (sel); } static __inline u_int rgs(void) { - u_short sel; - __asm __volatile("movw %%gs,%0" : "=rm" (sel)); + u_int sel; + __asm __volatile("movl %%gs,%0" : "=rm" (sel)); return (sel); } ==== //depot/projects/ia64/sys/kern/vfs_bio.c#49 (text+ko) ==== @@ -11,7 +11,7 @@ * 2. Absolutely no warranty of function or purpose is made by the author * John S. Dyson. * - * $FreeBSD: src/sys/kern/vfs_bio.c,v 1.386 2003/04/19 21:15:43 alc Exp $ + * $FreeBSD: src/sys/kern/vfs_bio.c,v 1.388 2003/04/20 00:17:05 alc Exp $ */ /* @@ -3106,6 +3106,8 @@ KASSERT(bp->b_offset != NOOFFSET, ("biodone: no buffer offset")); + if (obj != NULL) + VM_OBJECT_LOCK(obj); #if defined(VFS_BIO_DEBUG) if (obj->paging_in_progress < bp->b_npages) { printf("biodone: paging in progress(%d) < bp->b_npages(%d)\n", @@ -3194,7 +3196,6 @@ } vm_page_unlock_queues(); if (obj != NULL) { - VM_OBJECT_LOCK(obj); vm_object_pip_wakeupn(obj, 0); VM_OBJECT_UNLOCK(obj); } @@ -3321,6 +3322,8 @@ KASSERT(bp->b_offset != NOOFFSET, ("vfs_busy_pages: no buffer offset")); vfs_setdirty(bp); + if (obj != NULL) + VM_OBJECT_LOCK(obj); retry: vm_page_lock_queues(); for (i = 0; i < bp->b_npages; i++) { @@ -3364,6 +3367,8 @@ foff = (foff + PAGE_SIZE) & ~(off_t)PAGE_MASK; } vm_page_unlock_queues(); + if (obj != NULL) + VM_OBJECT_UNLOCK(obj); if (bogus) pmap_qenter(trunc_page((vm_offset_t)bp->b_data), bp->b_pages, bp->b_npages); } ==== //depot/projects/ia64/sys/kern/vfs_cluster.c#20 (text+ko) ==== @@ -33,7 +33,7 @@ * SUCH DAMAGE. * * @(#)vfs_cluster.c 8.7 (Berkeley) 2/13/94 - * $FreeBSD: src/sys/kern/vfs_cluster.c,v 1.136 2003/03/30 02:57:32 jeff Exp $ + * $FreeBSD: src/sys/kern/vfs_cluster.c,v 1.137 2003/04/20 07:29:50 alc Exp $ */ #include "opt_debug_cluster.h" @@ -446,6 +446,8 @@ BUF_KERNPROC(tbp); TAILQ_INSERT_TAIL(&bp->b_cluster.cluster_head, tbp, b_cluster.cluster_entry); + if (tbp->b_object != NULL) + VM_OBJECT_LOCK(tbp->b_object); vm_page_lock_queues(); for (j = 0; j < tbp->b_npages; j += 1) { vm_page_t m; @@ -461,6 +463,8 @@ tbp->b_pages[j] = bogus_page; } vm_page_unlock_queues(); + if (tbp->b_object != NULL) + VM_OBJECT_UNLOCK(tbp->b_object); /* * XXX shouldn't this be += size for both, like in * cluster_wbuild()? @@ -928,6 +932,8 @@ } } } + if (tbp->b_object != NULL) + VM_OBJECT_LOCK(tbp->b_object); vm_page_lock_queues(); for (j = 0; j < tbp->b_npages; j += 1) { m = tbp->b_pages[j]; @@ -940,6 +946,8 @@ } } vm_page_unlock_queues(); + if (tbp->b_object != NULL) + VM_OBJECT_UNLOCK(tbp->b_object); } bp->b_bcount += size; bp->b_bufsize += size; ==== //depot/projects/ia64/sys/vm/swap_pager.c#22 (text+ko) ==== @@ -64,7 +64,7 @@ * * @(#)swap_pager.c 8.9 (Berkeley) 3/21/94 * - * $FreeBSD: src/sys/vm/swap_pager.c,v 1.189 2003/04/19 21:15:44 alc Exp $ + * $FreeBSD: src/sys/vm/swap_pager.c,v 1.192 2003/04/20 07:08:30 alc Exp $ */ #include @@ -1002,7 +1002,6 @@ int i; int j; daddr_t blk; - vm_offset_t kva; vm_pindex_t lastpindex; GIANT_REQUIRED; @@ -1077,20 +1076,18 @@ * Get a swap buffer header to perform the IO */ bp = getpbuf(&nsw_rcount); - kva = (vm_offset_t) bp->b_data; /* * map our page(s) into kva for input * * NOTE: B_PAGING is set by pbgetvp() */ - pmap_qenter(kva, m + i, j - i); + pmap_qenter((vm_offset_t)bp->b_data, m + i, j - i); bp->b_iocmd = BIO_READ; bp->b_iodone = swp_pager_async_iodone; bp->b_rcred = crhold(thread0.td_ucred); bp->b_wcred = crhold(thread0.td_ucred); - bp->b_data = (caddr_t) kva; bp->b_blkno = blk - (reqpage - i); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Apr 20 01:51:07 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7F5D337B404; Sun, 20 Apr 2003 01:51:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3489437B401 for ; Sun, 20 Apr 2003 01:51:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 00CDD43FBD for ; Sun, 20 Apr 2003 01:51:05 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3K8p40U085280 for ; Sun, 20 Apr 2003 01:51:04 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3K8p47b085270 for perforce@freebsd.org; Sun, 20 Apr 2003 01:51:04 -0700 (PDT) Date: Sun, 20 Apr 2003 01:51:04 -0700 (PDT) Message-Id: <200304200851.h3K8p47b085270@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 Subject: PERFORCE change 29295 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Apr 2003 08:51:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=29295 Change 29295 by marcel@marcel_pluto1 on 2003/04/20 01:50:53 IFia64 Affected files ... .. //depot/projects/ia64_epc/etc/mac.conf#2 integrate .. //depot/projects/ia64_epc/include/pthread.h#2 integrate .. //depot/projects/ia64_epc/lib/libc/gen/getgrent.c#4 integrate .. //depot/projects/ia64_epc/lib/libc/posix1e/Makefile.inc#2 integrate .. //depot/projects/ia64_epc/lib/libc/posix1e/mac.3#4 integrate .. //depot/projects/ia64_epc/lib/libc/posix1e/mac.conf.5#1 branch .. //depot/projects/ia64_epc/lib/libc/posix1e/mac_prepare.3#3 integrate .. //depot/projects/ia64_epc/lib/libc/stdio/vfprintf.c#5 integrate .. //depot/projects/ia64_epc/lib/libc/stdio/vfwprintf.c#6 integrate .. //depot/projects/ia64_epc/lib/libc_r/man/Makefile.inc#4 integrate .. //depot/projects/ia64_epc/lib/libc_r/man/pthread_getconcurrency.3#1 branch .. //depot/projects/ia64_epc/lib/libc_r/uthread/Makefile.inc#2 integrate .. //depot/projects/ia64_epc/lib/libc_r/uthread/uthread_concurrency.c#1 branch .. //depot/projects/ia64_epc/lib/libthr/thread/Makefile.inc#2 integrate .. //depot/projects/ia64_epc/lib/libthr/thread/thr_concurrency.c#1 branch .. //depot/projects/ia64_epc/lib/libthr/thread/thr_create.c#3 integrate .. //depot/projects/ia64_epc/lib/libthr/thread/thr_gc.c#3 integrate .. //depot/projects/ia64_epc/lib/libthr/thread/thr_kern.c#3 integrate .. //depot/projects/ia64_epc/release/doc/en_US.ISO8859-1/errata/article.sgml#6 integrate .. //depot/projects/ia64_epc/sys/dev/sound/pci/emu10k1.c#4 integrate .. //depot/projects/ia64_epc/sys/dev/tx/if_txreg.h#2 integrate .. //depot/projects/ia64_epc/sys/i386/include/cpufunc.h#3 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_bio.c#9 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_cluster.c#6 integrate .. //depot/projects/ia64_epc/sys/vm/swap_pager.c#4 integrate .. //depot/projects/ia64_epc/sys/vm/vm_fault.c#5 integrate .. //depot/projects/ia64_epc/sys/vm/vm_map.c#7 integrate .. //depot/projects/ia64_epc/sys/vm/vm_object.c#8 integrate .. //depot/projects/ia64_epc/sys/vm/vm_pageout.c#4 integrate .. //depot/projects/ia64_epc/tools/regression/lib/libc/stdio/test-printfloat.c#3 integrate .. //depot/projects/ia64_epc/usr.sbin/raycontrol/raycontrol.c#2 integrate Differences ... ==== //depot/projects/ia64_epc/etc/mac.conf#2 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/etc/mac.conf,v 1.1 2002/10/22 14:38:49 rwatson Exp $ +# $FreeBSD: src/etc/mac.conf,v 1.2 2003/04/20 03:09:35 rwatson Exp $ # # TrustedBSD MAC userland policy configuration file. Kernel modules # export label information, and mac.conf indicates to userland @@ -11,7 +11,7 @@ # Default label set to be used by simple MAC applications # -default_file_labels ?biba,?mls,?sebsd,?te -default_ifnet_labels ?biba,?mls,?sebsd,?te -default_process_labels ?biba,?mls,?partition,?sebsd,?te +default_file_labels ?biba,?mls,?sebsd +default_ifnet_labels ?biba,?mls,?sebsd +default_process_labels ?biba,?mls,?partition,?sebsd ==== //depot/projects/ia64_epc/include/pthread.h#2 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/pthread.h,v 1.27 2003/02/10 08:48:03 alfred Exp $ + * $FreeBSD: src/include/pthread.h,v 1.28 2003/04/20 01:53:12 jdp Exp $ */ #ifndef _PTHREAD_H_ #define _PTHREAD_H_ @@ -288,6 +288,8 @@ struct sched_param *); int pthread_setschedparam(pthread_t, int, const struct sched_param *); +int pthread_getconcurrency(void); +int pthread_setconcurrency(int); __END_DECLS #endif ==== //depot/projects/ia64_epc/lib/libc/gen/getgrent.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.26 2003/04/18 01:00:37 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.27 2003/04/20 01:12:00 nectar Exp $"); #include "namespace.h" #include @@ -500,7 +500,6 @@ if (rv & NS_TERMINATE) break; } -fin: if (!stayopen && st->fp != NULL) { fclose(st->fp); st->fp = NULL; @@ -1083,7 +1082,7 @@ __gr_parse_entry(char *line, size_t linesize, struct group *grp, char *membuf, size_t membufsize, int *errnop) { - char *s_gid, *s_mem, **members; + char *s_gid, *s_mem, *p, **members; unsigned long n; int maxmembers; @@ -1104,13 +1103,12 @@ return (NS_NOTFOUND); grp->gr_gid = (gid_t)n; grp->gr_mem = members; - if (s_mem[0] == '\0') { - *members = NULL; - return (NS_SUCCESS); - } while (maxmembers > 1 && s_mem != NULL) { - *members++ = strsep(&s_mem, ","); - maxmembers--; + p = strsep(&s_mem, ","); + if (p != NULL && *p != '\0') { + *members++ = p; + maxmembers--; + } } *members = NULL; if (s_mem == NULL) ==== //depot/projects/ia64_epc/lib/libc/posix1e/Makefile.inc#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc/posix1e/Makefile.inc,v 1.14 2003/01/15 00:45:31 chris Exp $ +# $FreeBSD: src/lib/libc/posix1e/Makefile.inc,v 1.15 2003/04/20 03:18:44 rwatson Exp $ MAINTAINER= rwatson@FreeBSD.org @@ -51,6 +51,7 @@ acl_valid.3 \ extattr.3 \ mac.3 \ + mac.conf.5 \ mac_free.3 \ mac_is_present_np.3 \ mac_get.3 \ ==== //depot/projects/ia64_epc/lib/libc/posix1e/mac.3#4 (text+ko) ==== @@ -28,9 +28,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/posix1e/mac.3,v 1.10 2003/04/16 20:40:34 rwatson Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac.3,v 1.12 2003/04/20 04:43:56 rwatson Exp $ .\" -.Dd December 21, 2001 +.Dd April 19, 2003 .Dt MAC 3 .Os .Sh NAME @@ -112,6 +112,17 @@ a text-form MAC label into a working .Vt mac_t . +.It Fn mac_prepare +.It Fn mac_prepare_file_label +.It Fn mac_prepare_ifnet_label +.It Fn mac_prepare_process_label +These functions are described in +.Xr mac_prepare 3 , +and may be used to preallocate storage for MAC label retrieval. +.Xr mac_prepare 3 +prepares a label based on caller-specified label names; the other calls +rely on the default configuration specified in +.Xr mac.conf 5 . .It Fn mac_to_text This function is described in .Xr mac_text 3 , @@ -119,6 +130,18 @@ .Vt mac_t into a text-form MAC label. .El +The behavior of some of these calls is influenced by the configuration +settings found in +.Xr mac.conf 5 , +the MAC library run-time configuration file. +.Sh FILES +.Bl -tag -width ".Pa /etc/mac.conf" -compact +.It Pa /etc/mac.conf +MAC library configuration file, documented in +.Xr mac.conf 5 . +Provides default behavior for applications aware of MAC labels on +system objects, but without policy-specific knowledge. +.El .Sh IMPLEMENTATION NOTES .Fx Ns 's support for POSIX.1e interfaces and features @@ -131,6 +154,7 @@ .Xr mac_set 3 , .Xr mac_text 3 , .Xr mac 4 , +.Xr mac.conf 5 , .Xr mac 9 .Sh STANDARDS These APIs are loosely based on the APIs described in POSIX.1e. ==== //depot/projects/ia64_epc/lib/libc/posix1e/mac_prepare.3#3 (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.2 2003/02/24 22:53:20 ru Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac_prepare.3,v 1.3 2003/04/20 04:43:56 rwatson Exp $ .\" .Dd December 12, 2002 .Os @@ -68,6 +68,8 @@ .Fn mac_prepare_process_label functions allocate the storage to fit file, network interface, and process labels, respectively. +The default label elements employed by these APIs is configured in +.Xr mac.conf 5 . .Sh RETURN VALUES .Rv -std .Sh SEE ALSO @@ -77,6 +79,7 @@ .Xr mac_is_present_np 3 , .Xr mac_set 3 , .Xr mac 4 , +.Xr mac.conf 5 , .Xr maclabel 7 .Sh STANDARDS POSIX.1e is described in IEEE POSIX.1e draft 17. ==== //depot/projects/ia64_epc/lib/libc/stdio/vfprintf.c#5 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)vfprintf.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.58 2003/04/14 11:24:53 das Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.59 2003/04/19 23:53:19 das Exp $"); /* * Actual printf innards. @@ -920,6 +920,13 @@ prec = ndig - expt; if (prec < 0) prec = 0; + } else { + /* + * Make %[gG] smell like %[eE], but + * trim trailing zeroes if no # flag. + */ + if (!(flags & ALT)) + prec = ndig; } } if (expchar) { ==== //depot/projects/ia64_epc/lib/libc/stdio/vfwprintf.c#6 (text+ko) ==== @@ -41,7 +41,7 @@ #endif /* LIBC_SCCS and not lint */ __FBSDID("FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.58 2003/04/14 11:24:53 das Exp"); #endif -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.11 2003/04/14 12:15:59 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.12 2003/04/19 23:53:19 das Exp $"); /* * Actual wprintf innards. @@ -889,6 +889,13 @@ prec = ndig - expt; if (prec < 0) prec = 0; + } else { + /* + * Make %[gG] smell like %[eE], but + * trim trailing zeroes if no # flag. + */ + if (!(flags & ALT)) + prec = ndig; } } if (expchar) { ==== //depot/projects/ia64_epc/lib/libc_r/man/Makefile.inc#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc_r/man/Makefile.inc,v 1.19 2003/02/24 22:59:01 ru Exp $ +# $FreeBSD: src/lib/libc_r/man/Makefile.inc,v 1.20 2003/04/20 01:53:12 jdp Exp $ # POSIX thread man files @@ -10,6 +10,7 @@ pthread_cancel.3 \ pthread_cleanup_pop.3 \ pthread_cleanup_push.3 \ + pthread_getconcurrency.3 \ pthread_condattr.3 \ pthread_cond_broadcast.3 \ pthread_cond_destroy.3 \ @@ -85,6 +86,7 @@ pthread_attr.3 pthread_attr_setstack.3 \ pthread_attr.3 pthread_attr_setstackaddr.3 \ pthread_attr.3 pthread_attr_setstacksize.3 \ + pthread_getconcurrency.3 pthread_setconcurrency.3 \ pthread_condattr.3 pthread_condattr_init.3 \ pthread_condattr.3 pthread_condattr_destroy.3 \ pthread_multi_np.3 pthread_single_np.3 \ ==== //depot/projects/ia64_epc/lib/libc_r/uthread/Makefile.inc#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc_r/uthread/Makefile.inc,v 1.35 2003/02/11 07:28:28 alfred Exp $ +# $FreeBSD: src/lib/libc_r/uthread/Makefile.inc,v 1.36 2003/04/20 01:53:12 jdp Exp $ # uthread sources .PATH: ${.CURDIR}/uthread @@ -37,6 +37,7 @@ uthread_cancel.c \ uthread_clean.c \ uthread_close.c \ + uthread_concurrency.c \ uthread_cond.c \ uthread_condattr_destroy.c \ uthread_condattr_init.c \ ==== //depot/projects/ia64_epc/lib/libthr/thread/Makefile.inc#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libthr/thread/Makefile.inc,v 1.1 2003/04/01 03:46:28 jeff Exp $ +# $FreeBSD: src/lib/libthr/thread/Makefile.inc,v 1.2 2003/04/20 01:53:13 jdp Exp $ # thr sources .PATH: ${.CURDIR}/thread @@ -8,6 +8,7 @@ thr_autoinit.c \ thr_cancel.c \ thr_clean.c \ + thr_concurrency.c \ thr_cond.c \ thr_condattr_destroy.c \ thr_condattr_init.c \ ==== //depot/projects/ia64_epc/lib/libthr/thread/thr_create.c#3 (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_create.c,v 1.3 2003/04/03 03:34:50 jake Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_create.c,v 1.4 2003/04/20 02:56:12 marcel Exp $ */ #include #include ==== //depot/projects/ia64_epc/lib/libthr/thread/thr_gc.c#3 (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_gc.c,v 1.2 2003/04/02 03:05:39 jeff Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_gc.c,v 1.3 2003/04/20 02:56:12 marcel Exp $ * * Garbage collector thread. Frees memory allocated for dead threads. * ==== //depot/projects/ia64_epc/lib/libthr/thread/thr_kern.c#3 (text+ko) ==== @@ -23,7 +23,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_kern.c,v 1.2 2003/04/01 22:41:41 jeff Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_kern.c,v 1.3 2003/04/20 02:58:30 marcel Exp $ */ #include ==== //depot/projects/ia64_epc/release/doc/en_US.ISO8859-1/errata/article.sgml#6 (text+ko) ==== @@ -36,7 +36,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.35 2003/03/31 18:12:56 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.36 2003/04/20 06:17:31 bmah Exp $ 2000 @@ -333,5 +333,12 @@ &release.prev; server. This bug has been fixed in &release.current;. + nsswitch + + The release note documenting the addition of + nsswitch support gave an incorrect + name for the old resolver configuration file. It should have + been listed as /etc/host.conf. + ==== //depot/projects/ia64_epc/sys/dev/sound/pci/emu10k1.c#4 (text+ko) ==== @@ -32,14 +32,14 @@ #include #include -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/emu10k1.c,v 1.34 2003/04/18 04:13:38 obrien Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/emu10k1.c,v 1.36 2003/04/20 08:37:29 obrien Exp $"); /* -------------------------------------------------------------------- */ -#define EMU10K1_PCI_ID 0x00021102 -#define EMU10K2_PCI_ID 0x00041102 -#define EMU_DEFAULT_BUFSZ 4096 -#define EMU_CHANS 4 +#define EMU10K1_PCI_ID 0x00021102 +#define EMU10K2_PCI_ID 0x00041102 +#define EMU_DEFAULT_BUFSZ 4096 +#define EMU_CHANS 4 #undef EMUDEBUG struct emu_memblk { @@ -55,7 +55,7 @@ void *silent_page; bus_addr_t silent_page_addr; bus_addr_t ptb_pages_addr; - SLIST_HEAD(, emu_memblk) blocks; + SLIST_HEAD(, emu_memblk) blocks; }; struct emu_voice { @@ -90,7 +90,7 @@ /* device private data */ struct sc_info { device_t dev; - u_int32_t type, rev; + u_int32_t type, rev; u_int32_t tos_link:1, APS:1; bus_space_tag_t st; @@ -203,37 +203,37 @@ static u_int32_t emu_rdptr(struct sc_info *sc, int chn, int reg) { - u_int32_t ptr, val, mask, size, offset; + u_int32_t ptr, val, mask, size, offset; - ptr = ((reg << 16) & PTR_ADDRESS_MASK) | (chn & PTR_CHANNELNUM_MASK); - emu_wr(sc, PTR, ptr, 4); - val = emu_rd(sc, DATA, 4); - if (reg & 0xff000000) { - size = (reg >> 24) & 0x3f; - offset = (reg >> 16) & 0x1f; - mask = ((1 << size) - 1) << offset; - val &= mask; + ptr = ((reg << 16) & PTR_ADDRESS_MASK) | (chn & PTR_CHANNELNUM_MASK); + emu_wr(sc, PTR, ptr, 4); + val = emu_rd(sc, DATA, 4); + if (reg & 0xff000000) { + size = (reg >> 24) & 0x3f; + offset = (reg >> 16) & 0x1f; + mask = ((1 << size) - 1) << offset; + val &= mask; val >>= offset; } - return val; + return val; } static void emu_wrptr(struct sc_info *sc, int chn, int reg, u_int32_t data) { - u_int32_t ptr, mask, size, offset; + u_int32_t ptr, mask, size, offset; - ptr = ((reg << 16) & PTR_ADDRESS_MASK) | (chn & PTR_CHANNELNUM_MASK); - emu_wr(sc, PTR, ptr, 4); - if (reg & 0xff000000) { - size = (reg >> 24) & 0x3f; - offset = (reg >> 16) & 0x1f; - mask = ((1 << size) - 1) << offset; + ptr = ((reg << 16) & PTR_ADDRESS_MASK) | (chn & PTR_CHANNELNUM_MASK); + emu_wr(sc, PTR, ptr, 4); + if (reg & 0xff000000) { + size = (reg >> 24) & 0x3f; + offset = (reg >> 16) & 0x1f; + mask = ((1 << size) - 1) << offset; data <<= offset; - data &= mask; + data &= mask; data |= emu_rd(sc, DATA, 4) & ~mask; } - emu_wr(sc, DATA, data, 4); + emu_wr(sc, DATA, data, 4); } static void @@ -266,8 +266,8 @@ } static kobj_method_t emu_ac97_methods[] = { - KOBJMETHOD(ac97_read, emu_rdcd), - KOBJMETHOD(ac97_write, emu_wrcd), + KOBJMETHOD(ac97_read, emu_rdcd), + KOBJMETHOD(ac97_write, emu_wrcd), { 0, 0 } }; AC97_DECLARE(emu_ac97); @@ -328,7 +328,7 @@ static void emu_enastop(struct sc_info *sc, char channel, int enable) { - int reg = (channel & 0x20)? SOLEH : SOLEL; + int reg = (channel & 0x20) ? SOLEH : SOLEL; channel &= 0x1f; reg |= 1 << 24; reg |= channel << 16; @@ -392,9 +392,9 @@ for (i = 31; i > 0; i--) { if (rate & 0x80000000) { /* Detect leading "1" */ return (((u_int32_t) (i - 15) << 20) + - logMagTable[0x7f & (rate >> 24)] + - (0x7f & (rate >> 17)) * - logSlopeTable[0x7f & (rate >> 24)]); + logMagTable[0x7f & (rate >> 24)] + + (0x7f & (rate >> 17)) * + logSlopeTable[0x7f & (rate >> 24)]); } rate <<= 1; } @@ -469,8 +469,8 @@ struct emu_voice *v = ch->master; if (ch->fmt) { - v->b16 = (ch->fmt & AFMT_16BIT)? 1 : 0; - v->stereo = (ch->fmt & AFMT_STEREO)? 1 : 0; + v->b16 = (ch->fmt & AFMT_16BIT) ? 1 : 0; + v->stereo = (ch->fmt & AFMT_STEREO) ? 1 : 0; if (v->slave != NULL) { v->slave->b16 = v->b16; v->slave->stereo = v->stereo; @@ -490,20 +490,20 @@ int l, r, x, y; u_int32_t sa, ea, start, val, silent_page; - s = (v->stereo? 1 : 0) + (v->b16? 1 : 0); + s = (v->stereo ? 1 : 0) + (v->b16 ? 1 : 0); sa = v->start >> s; ea = v->end >> s; l = r = x = y = v->vol; if (v->stereo) { - l = v->ismaster? l : 0; - r = v->ismaster? 0 : r; + l = v->ismaster ? l : 0; + r = v->ismaster ? 0 : r; } - emu_wrptr(sc, v->vnum, CPF, v->stereo? CPF_STEREO_MASK : 0); - val = v->stereo? 28 : 30; - val *= v->b16? 1 : 2; + emu_wrptr(sc, v->vnum, CPF, v->stereo ? CPF_STEREO_MASK : 0); + val = v->stereo ? 28 : 30; + val *= v->b16 ? 1 : 2; start = sa + val; emu_wrptr(sc, v->vnum, FXRT, 0xd01c0000); @@ -511,7 +511,7 @@ emu_wrptr(sc, v->vnum, PTRX, (x << 8) | r); emu_wrptr(sc, v->vnum, DSL, ea | (y << 24)); emu_wrptr(sc, v->vnum, PSST, sa | (l << 24)); - emu_wrptr(sc, v->vnum, CCCA, start | (v->b16? 0 : CCCA_8BITSELECT)); + emu_wrptr(sc, v->vnum, CCCA, start | (v->b16 ? 0 : CCCA_8BITSELECT)); emu_wrptr(sc, v->vnum, Z1, 0); emu_wrptr(sc, v->vnum, Z2, 0); @@ -550,10 +550,10 @@ if (go) { cra = 64; - cs = v->stereo? 4 : 2; - ccis = v->stereo? 28 : 30; - ccis *= v->b16? 1 : 2; - sample = v->b16? 0x00000000 : 0x80808080; + cs = v->stereo ? 4 : 2; + ccis = v->stereo ? 28 : 30; + ccis *= v->b16 ? 1 : 2; + sample = v->b16 ? 0x00000000 : 0x80808080; for (i = 0; i < cs; i++) emu_wrptr(sc, v->vnum, CD0 + i, sample); @@ -590,7 +590,7 @@ { int s, ptr; - s = (v->b16? 1 : 0) + (v->stereo? 1 : 0); + s = (v->b16 ? 1 : 0) + (v->stereo ? 1 : 0); ptr = (emu_rdptr(sc, v->vnum, CCCA_CURRADDR) - (v->start >> s)) << s; return ptr & ~0x0000001f; } @@ -612,7 +612,7 @@ if (regname[i] == NULL) continue; printf("%s\t[%08x]", regname[i], emu_rdptr(sc, v->vnum, i)); - printf("%s", (x == 2)? "\n" : "\t"); + printf("%s", (x == 2) ? "\n" : "\t"); x++; if (x > 2) x = 0; @@ -641,7 +641,7 @@ ch->master = emu_valloc(sc); ch->slave = emu_valloc(sc); snd_mtxunlock(sc->lock); - r = (emu_vinit(sc, ch->master, ch->slave, sc->bufsz, ch->buffer))? NULL : ch; + r = (emu_vinit(sc, ch->master, ch->slave, sc->bufsz, ch->buffer)) ? NULL : ch; return r; } @@ -711,14 +711,14 @@ emu_enatimer(sc, 1); #ifdef EMUDEBUG printf("start [%d bit, %s, %d hz]\n", - ch->master->b16? 16 : 8, - ch->master->stereo? "stereo" : "mono", + ch->master->b16 ? 16 : 8, + ch->master->stereo ? "stereo" : "mono", ch->master->speed); emu_vdump(sc, ch->master); emu_vdump(sc, ch->slave); #endif } - ch->run = (go == PCMTRIG_START)? 1 : 0; + ch->run = (go == PCMTRIG_START) ? 1 : 0; emu_vtrigger(sc, ch->master, ch->run); snd_mtxunlock(sc->lock); return 0; @@ -745,14 +745,14 @@ } static kobj_method_t emupchan_methods[] = { - KOBJMETHOD(channel_init, emupchan_init), - KOBJMETHOD(channel_free, emupchan_free), - KOBJMETHOD(channel_setformat, emupchan_setformat), - KOBJMETHOD(channel_setspeed, emupchan_setspeed), - KOBJMETHOD(channel_setblocksize, emupchan_setblocksize), - KOBJMETHOD(channel_trigger, emupchan_trigger), - KOBJMETHOD(channel_getptr, emupchan_getptr), - KOBJMETHOD(channel_getcaps, emupchan_getcaps), + KOBJMETHOD(channel_init, emupchan_init), + KOBJMETHOD(channel_free, emupchan_free), + KOBJMETHOD(channel_setformat, emupchan_setformat), + KOBJMETHOD(channel_setspeed, emupchan_setspeed), + KOBJMETHOD(channel_setblocksize, emupchan_setblocksize), + KOBJMETHOD(channel_trigger, emupchan_trigger), + KOBJMETHOD(channel_getptr, emupchan_getptr), + KOBJMETHOD(channel_getcaps, emupchan_getcaps), { 0, 0 } }; CHANNEL_DECLARE(emupchan); @@ -945,13 +945,13 @@ } static kobj_method_t emurchan_methods[] = { - KOBJMETHOD(channel_init, emurchan_init), - KOBJMETHOD(channel_setformat, emurchan_setformat), - KOBJMETHOD(channel_setspeed, emurchan_setspeed), - KOBJMETHOD(channel_setblocksize, emurchan_setblocksize), - KOBJMETHOD(channel_trigger, emurchan_trigger), - KOBJMETHOD(channel_getptr, emurchan_getptr), - KOBJMETHOD(channel_getcaps, emurchan_getcaps), + KOBJMETHOD(channel_init, emurchan_init), + KOBJMETHOD(channel_setformat, emurchan_setformat), + KOBJMETHOD(channel_setspeed, emurchan_setspeed), + KOBJMETHOD(channel_setblocksize, emurchan_setblocksize), + KOBJMETHOD(channel_trigger, emurchan_trigger), + KOBJMETHOD(channel_getptr, emurchan_getptr), + KOBJMETHOD(channel_getcaps, emurchan_getcaps), { 0, 0 } }; CHANNEL_DECLARE(emurchan); @@ -1024,12 +1024,12 @@ { bus_addr_t *phys = arg; - *phys = error? 0 : (bus_addr_t)segs->ds_addr; + *phys = error ? 0 : (bus_addr_t)segs->ds_addr; if (bootverbose) { printf("emu: setmap (%lx, %lx), nseg=%d, error=%d\n", - (unsigned long)segs->ds_addr, (unsigned long)segs->ds_len, - nseg, error); + (unsigned long)segs->ds_addr, (unsigned long)segs->ds_len, + nseg, error); } } @@ -1242,7 +1242,7 @@ { u_int32_t spcs, ch, tmp, i; - /* disable audio and lock cache */ + /* disable audio and lock cache */ emu_wr(sc, HCFG, HCFG_LOCKSOUNDCACHE | HCFG_LOCKTANKCACHE_MASK | HCFG_MUTEBUTTONENABLE, 4); /* reset recording buffers */ @@ -1304,8 +1304,8 @@ sc->voice[ch].start = 0; sc->voice[ch].end = 0; sc->voice[ch].channel = NULL; - } - sc->pnum = sc->rnum = 0; + } + sc->pnum = sc->rnum = 0; /* * Init to 0x02109204 : @@ -1322,9 +1322,9 @@ * P = 0 (Consumer) */ spcs = SPCS_CLKACCY_1000PPM | SPCS_SAMPLERATE_48 | - SPCS_CHANNELNUM_LEFT | SPCS_SOURCENUM_UNSPEC | - SPCS_GENERATIONSTATUS | 0x00001200 | 0x00000000 | - SPCS_EMPHASIS_NONE | SPCS_COPYRIGHT; + SPCS_CHANNELNUM_LEFT | SPCS_SOURCENUM_UNSPEC | + SPCS_GENERATIONSTATUS | 0x00001200 | 0x00000000 | + SPCS_EMPHASIS_NONE | SPCS_COPYRIGHT; emu_wrptr(sc, 0, SPCS0, spcs); emu_wrptr(sc, 0, SPCS1, spcs); emu_wrptr(sc, 0, SPCS2, spcs); @@ -1398,9 +1398,9 @@ emu_wrptr(sc, ch, CVCF, 0); emu_wrptr(sc, ch, PTRX, 0); emu_wrptr(sc, ch, CPF, 0); - } + } - /* disable audio and lock cache */ + /* disable audio and lock cache */ emu_wr(sc, HCFG, HCFG_LOCKSOUNDCACHE | HCFG_LOCKTANKCACHE_MASK | HCFG_MUTEBUTTONENABLE, 4); emu_wrptr(sc, 0, PTB, 0); @@ -1504,7 +1504,7 @@ codec = AC97_CREATE(dev, sc, emu_ac97); if (codec == NULL) goto bad; - gotmic = (ac97_getcaps(codec) & AC97_CAP_MICCHANNEL)? 1 : 0; + gotmic = (ac97_getcaps(codec) & AC97_CAP_MICCHANNEL) ? 1 : 0; if (mixer_init(dev, ac97_getmixerclass(), codec) == -1) goto bad; i = 0; @@ -1516,10 +1516,10 @@ snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld", rman_get_start(sc->reg), rman_get_start(sc->irq)); - if (pcm_register(dev, sc, EMU_CHANS, gotmic? 3 : 2)) goto bad; + if (pcm_register(dev, sc, EMU_CHANS, gotmic ? 3 : 2)) goto bad; for (i = 0; i < EMU_CHANS; i++) pcm_addchan(dev, PCMDIR_PLAY, &emupchan_class, sc); - for (i = 0; i < (gotmic? 3 : 2); i++) + for (i = 0; i < (gotmic ? 3 : 2); i++) pcm_addchan(dev, PCMDIR_REC, &emurchan_class, sc); pcm_setstatus(dev, status); @@ -1599,7 +1599,7 @@ } if (s) device_set_desc(dev, s); - return s? -1000 : ENXIO; + return s ? -1000 : ENXIO; } static int ==== //depot/projects/ia64_epc/sys/dev/tx/if_txreg.h#2 (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/tx/if_txreg.h,v 1.12 2002/10/22 00:57:51 semenu Exp $ + * $FreeBSD: src/sys/dev/tx/if_txreg.h,v 1.13 2003/04/20 01:04:04 mux Exp $ */ #define EPIC_MAX_MTU 1600 /* This is experiment-derived value */ @@ -190,12 +190,14 @@ #define EEPROM_SSID 0x0006 /* Subsystem Id */ /* - * Hardware structures + * Hardware structures. */ -/* EPIC's hardware descriptors, must be aligned on dword in memory */ -/* NB: to make driver happy, this two structures MUST have thier sizes */ -/* be divisor of PAGE_SIZE */ +/* + * EPIC's hardware descriptors, must be aligned on dword in memory. + * NB: to make driver happy, this two structures MUST have their sizes + * be divisor of PAGE_SIZE. + */ struct epic_tx_desc { volatile u_int16_t status; volatile u_int16_t txlength; @@ -212,9 +214,11 @@ volatile u_int32_t next; }; -/* This structure defines EPIC's fragment list, maximum number of frags */ -/* is 63. Let use maximum, becouse size of struct MUST be divisor of */ -/* PAGE_SIZE, and sometimes come mbufs with more then 30 frags */ +/* + * This structure defines EPIC's fragment list, maximum number of frags + * is 63. Let's use the maximum, because size of struct MUST be divisor + * of PAGE_SIZE, and sometimes come mbufs with more then 30 frags. + */ #define EPIC_MAX_FRAGS 63 struct epic_frag_list { volatile u_int32_t numfrags; @@ -242,4 +246,3 @@ #define SMC9434TX_XG_ADHOC 0xA021 #define SMC9432FTX_ADHOC 0xA022 #define SMC9432BTX1 0xA024 - ==== //depot/projects/ia64_epc/sys/i386/include/cpufunc.h#3 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/i386/include/cpufunc.h,v 1.131 2003/04/19 02:40:39 davidxu Exp $ + * $FreeBSD: src/sys/i386/include/cpufunc.h,v 1.133 2003/04/20 02:59:13 obrien Exp $ */ /* @@ -444,16 +444,16 @@ static __inline u_int rfs(void) { - u_short sel; - __asm __volatile("movw %%fs,%0" : "=rm" (sel)); + u_int sel; + __asm __volatile("movl %%fs,%0" : "=rm" (sel)); return (sel); } static __inline u_int rgs(void) { - u_short sel; - __asm __volatile("movw %%gs,%0" : "=rm" (sel)); + u_int sel; + __asm __volatile("movl %%gs,%0" : "=rm" (sel)); return (sel); } ==== //depot/projects/ia64_epc/sys/kern/vfs_bio.c#9 (text+ko) ==== @@ -11,7 +11,7 @@ * 2. Absolutely no warranty of function or purpose is made by the author * John S. Dyson. * - * $FreeBSD: src/sys/kern/vfs_bio.c,v 1.386 2003/04/19 21:15:43 alc Exp $ + * $FreeBSD: src/sys/kern/vfs_bio.c,v 1.388 2003/04/20 00:17:05 alc Exp $ */ /* @@ -3106,6 +3106,8 @@ KASSERT(bp->b_offset != NOOFFSET, ("biodone: no buffer offset")); + if (obj != NULL) + VM_OBJECT_LOCK(obj); #if defined(VFS_BIO_DEBUG) if (obj->paging_in_progress < bp->b_npages) { printf("biodone: paging in progress(%d) < bp->b_npages(%d)\n", @@ -3194,7 +3196,6 @@ } vm_page_unlock_queues(); if (obj != NULL) { - VM_OBJECT_LOCK(obj); vm_object_pip_wakeupn(obj, 0); VM_OBJECT_UNLOCK(obj); } @@ -3321,6 +3322,8 @@ KASSERT(bp->b_offset != NOOFFSET, ("vfs_busy_pages: no buffer offset")); vfs_setdirty(bp); + if (obj != NULL) + VM_OBJECT_LOCK(obj); retry: vm_page_lock_queues(); for (i = 0; i < bp->b_npages; i++) { @@ -3364,6 +3367,8 @@ foff = (foff + PAGE_SIZE) & ~(off_t)PAGE_MASK; } vm_page_unlock_queues(); + if (obj != NULL) + VM_OBJECT_UNLOCK(obj); if (bogus) pmap_qenter(trunc_page((vm_offset_t)bp->b_data), bp->b_pages, bp->b_npages); } ==== //depot/projects/ia64_epc/sys/kern/vfs_cluster.c#6 (text+ko) ==== @@ -33,7 +33,7 @@ * SUCH DAMAGE. * * @(#)vfs_cluster.c 8.7 (Berkeley) 2/13/94 - * $FreeBSD: src/sys/kern/vfs_cluster.c,v 1.136 2003/03/30 02:57:32 jeff Exp $ + * $FreeBSD: src/sys/kern/vfs_cluster.c,v 1.137 2003/04/20 07:29:50 alc Exp $ */ #include "opt_debug_cluster.h" @@ -446,6 +446,8 @@ BUF_KERNPROC(tbp); TAILQ_INSERT_TAIL(&bp->b_cluster.cluster_head, tbp, b_cluster.cluster_entry); + if (tbp->b_object != NULL) + VM_OBJECT_LOCK(tbp->b_object); vm_page_lock_queues(); for (j = 0; j < tbp->b_npages; j += 1) { vm_page_t m; @@ -461,6 +463,8 @@ tbp->b_pages[j] = bogus_page; } vm_page_unlock_queues(); + if (tbp->b_object != NULL) + VM_OBJECT_UNLOCK(tbp->b_object); /* * XXX shouldn't this be += size for both, like in * cluster_wbuild()? @@ -928,6 +932,8 @@ } } } + if (tbp->b_object != NULL) + VM_OBJECT_LOCK(tbp->b_object); vm_page_lock_queues(); for (j = 0; j < tbp->b_npages; j += 1) { m = tbp->b_pages[j]; @@ -940,6 +946,8 @@ } } vm_page_unlock_queues(); + if (tbp->b_object != NULL) + VM_OBJECT_UNLOCK(tbp->b_object); } bp->b_bcount += size; bp->b_bufsize += size; ==== //depot/projects/ia64_epc/sys/vm/swap_pager.c#4 (text+ko) ==== @@ -64,7 +64,7 @@ * * @(#)swap_pager.c 8.9 (Berkeley) 3/21/94 * - * $FreeBSD: src/sys/vm/swap_pager.c,v 1.189 2003/04/19 21:15:44 alc Exp $ + * $FreeBSD: src/sys/vm/swap_pager.c,v 1.192 2003/04/20 07:08:30 alc Exp $ */ #include @@ -1002,7 +1002,6 @@ int i; int j; daddr_t blk; - vm_offset_t kva; vm_pindex_t lastpindex; GIANT_REQUIRED; @@ -1077,20 +1076,18 @@ * Get a swap buffer header to perform the IO */ bp = getpbuf(&nsw_rcount); - kva = (vm_offset_t) bp->b_data; /* * map our page(s) into kva for input * * NOTE: B_PAGING is set by pbgetvp() */ - pmap_qenter(kva, m + i, j - i); + pmap_qenter((vm_offset_t)bp->b_data, m + i, j - i); bp->b_iocmd = BIO_READ; bp->b_iodone = swp_pager_async_iodone; bp->b_rcred = crhold(thread0.td_ucred); bp->b_wcred = crhold(thread0.td_ucred); - bp->b_data = (caddr_t) kva; bp->b_blkno = blk - (reqpage - i); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Apr 20 15:12:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 870A137B404; Sun, 20 Apr 2003 15:12:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2DAF837B401 for ; Sun, 20 Apr 2003 15:12:23 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8B9243FDD for ; Sun, 20 Apr 2003 15:12:21 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3KMCL0U083433 for ; Sun, 20 Apr 2003 15:12:21 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3KMCKua083430 for perforce@freebsd.org; Sun, 20 Apr 2003 15:12:20 -0700 (PDT) Date: Sun, 20 Apr 2003 15:12:20 -0700 (PDT) Message-Id: <200304202212.h3KMCKua083430@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 29315 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Apr 2003 22:12:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=29315 Change 29315 by rwatson@rwatson_paprika on 2003/04/20 15:12:13 Integrate ACL libc branch. Affected files ... .. //depot/projects/trustedbsd/acl/lib/libc/Makefile#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/_fpmath.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/alpha/arith.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/_ctx_start.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/_setjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/fabs.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/getcontext.S#2 delete .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/infinity.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/isinf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/rfork_thread.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/setjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/sigsetjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/net/byte_swap_2.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/net/byte_swap_4.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/net/htonl.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/net/htons.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/net/ntohl.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/net/ntohs.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/stdlib/gdtoa.mk#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/alpha/string/bcopy.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/string/bzero.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/string/ffs.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/string/memcpy.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/string/memmove.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/Ovfork.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/brk.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/cerror.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/exect.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/fork.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/pipe.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/ptrace.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/sbrk.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/setlogin.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/sigreturn.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/compat-43/sigvec.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/db/btree/bt_put.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/db/btree/bt_split.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/db/btree/bt_utils.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/db/hash/hash_bigkey.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/db/hash/hash_func.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/db/man/mpool.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/db/recno/rec_close.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/db/recno/rec_seq.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gdtoa/Makefile.inc#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gdtoa/glue.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gdtoa/machdep_ldisQ.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gdtoa/machdep_ldisd.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gdtoa/machdep_ldisx.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gen/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/_spinlock_stub.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/dlfcn.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/dlinfo.3#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gen/dlopen.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/exec.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/fpclassify.3#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gen/fpclassify.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gen/fts.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getcap.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getcap.c#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getcwd.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getdomainname.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getgrent.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getgrouplist.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getnetgrent.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getosreldate.3#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gen/getpwent.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getusershell.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/getvfsent.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/glob.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/isgreater.3#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gen/isinf.3#2 delete .. //depot/projects/trustedbsd/acl/lib/libc/gen/msgsnd.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/nlist.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/opendir.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/popen.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/popen.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/psignal.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/semctl.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/setmode.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/signbit.3#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gen/signbit.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/gen/stringlist.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/stringlist.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/sysctl.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/sysctlnametomib.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/syslog.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/ulimit.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/ulimit.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/unvis.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/wordexp.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/gen/wordexp.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/_fpmath.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/i386/arith.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/i386/gen/getcontext.S#2 delete .. //depot/projects/trustedbsd/acl/lib/libc/i386/gen/infinity.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/gen/isinf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/gen/signalcontext.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/stdlib/gdtoa.mk#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/i386/string/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/string/swab.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/string/wcscmp.S#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/i386/string/wcslen.S#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/i386/string/wmemchr.S#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/i386/sys/i386_get_ioperm.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/sys/i386_get_ldt.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/sys/i386_set_ioperm.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/sys/i386_set_ldt.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/i386/sys/i386_vm86.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/_fpmath.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/ia64/arith.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__divdf3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__divdi3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__divsf3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__divsi3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__moddi3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__modsi3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__udivdi3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__udivsi3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__umoddi3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/__umodsi3.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/_setjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/fabs.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/fpgetround.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/fpsetround.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/infinity.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/isinf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/setjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/gen/sigsetjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/net/byte_swap_2.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/net/byte_swap_4.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/net/htonl.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/net/htons.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/net/ntohl.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/net/ntohs.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/stdlib/gdtoa.mk#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/ia64/string/bcopy.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/string/bzero.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/string/ffs.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/string/memcpy.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/string/memmove.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/Ovfork.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/brk.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/cerror.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/exect.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/fork.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/pipe.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/ptrace.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/sbrk.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/setlogin.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/ia64/sys/sigreturn.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/include/fpmath.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/include/libc_private.h#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/include/namespace.h#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/include/spinlock.h#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/include/un-namespace.h#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/lnumeric.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/mbrune.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/multibyte.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/setlocale.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/utf8.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/wcstod.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/wcstod.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/wcstof.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/locale/wcstoimax.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/locale/wcstold.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/net/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/getaddrinfo.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/gethostbyname.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/gethostbynis.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/getservent.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/if_nametoindex.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/inet_neta.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/iso_addr.3#3 delete .. //depot/projects/trustedbsd/acl/lib/libc/net/iso_addr.c#2 delete .. //depot/projects/trustedbsd/acl/lib/libc/net/name6.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/ns.3#2 delete .. //depot/projects/trustedbsd/acl/lib/libc/net/ns_addr.c#2 delete .. //depot/projects/trustedbsd/acl/lib/libc/net/ns_name.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/ns_ntoa.c#2 delete .. //depot/projects/trustedbsd/acl/lib/libc/net/ns_ttl.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/nsdispatch.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/nsdispatch.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/nslexer.l#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/rcmd.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/rcmdsh.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/res_debug.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/res_mkupdate.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/net/res_query.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/acl.3#5 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/acl_delete.3#6 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/acl_get.3#6 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/acl_set.3#5 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_exec.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_free.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_get.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_get.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_is_present_np.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_prepare.3#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_set.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_set.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/posix1e/mac_text.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/powerpc/SYS.h#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/powerpc/_fpmath.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/powerpc/arith.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/powerpc/gen/infinity.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/powerpc/gen/isinf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/powerpc/stdlib/gdtoa.mk#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/regex/engine.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/regex/regcomp.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/regex/regexec.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/PSD.doc/rpc.prog.ms#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/PSD.doc/xdr.nts.ms#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/clnt_bcast.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/crypt_client.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/getnetconfig.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/getnetpath.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/getrpcent.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/mt_misc.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/rpc.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/rpc_com.h#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/rpc_generic.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/rpc_soc.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/rpc_svc_calls.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/rpcb_clnt.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/svc.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/svc_dg.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/svc_run.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/rpc/svc_vc.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sparc64/_fpmath.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/sparc64/arith.h#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/sparc64/gen/_setjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sparc64/gen/infinity.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sparc64/gen/isinf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sparc64/gen/setjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sparc64/gen/sigsetjmp.S#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sparc64/stdlib/gdtoa.mk#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/stdio/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/ferror.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/fgetws.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/fileno.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/flockfile.3#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/stdio/fopen.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/fputws.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/freopen.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/fscanf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/getc.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/gets.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/mktemp.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/printf.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/putc.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/scanf.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/scanf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/stdio.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/stdio.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/tmpfile.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/unlocked.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/stdio/vfprintf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/vfwprintf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/vscanf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdio/vswprintf.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/getsubopt.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/grantpt.3#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/grantpt.c#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/hcreate.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/insque.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/insque.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/malloc.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/rand.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/random.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/realpath.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/realpath.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/remque.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/strfmon.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/strfmon.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/strtod.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/strtod.c#2 delete .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/strtoimax.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/tdelete.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/tfind.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/tsearch.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdlib/twalk.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdtime/asctime.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdtime/difftime.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdtime/localtime.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdtime/strftime.3#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdtime/strptime.3#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/stdtime/strptime.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/string/strerror.c#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/string/wcstok.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/aio_cancel.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/aio_error.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/aio_read.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/aio_return.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/aio_suspend.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/aio_write.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/chroot.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/clock_gettime.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/fcntl.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/intro.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/kse.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/lio_listio.2#1 branch .. //depot/projects/trustedbsd/acl/lib/libc/sys/listen.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/madvise.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/mincore.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/mount.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/mprotect.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/nfssvc.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/open.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/pathconf.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/read.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/rfork.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/sem.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/semop.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/sendfile.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/setuid.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/shmat.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/shmget.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/sigaction.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/socket.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/sys/write.2#3 integrate .. //depot/projects/trustedbsd/acl/lib/libc/xdr/xdr_mem.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/xdr/xdr_rec.c#2 integrate .. //depot/projects/trustedbsd/acl/lib/libc/xdr/xdr_sizeof.c#2 integrate Differences ... ==== //depot/projects/trustedbsd/acl/lib/libc/Makefile#2 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 2/3/94 -# $FreeBSD: src/lib/libc/Makefile,v 1.37 2002/11/18 09:50:54 ru Exp $ +# $FreeBSD: src/lib/libc/Makefile,v 1.40 2003/03/13 18:55:14 obrien Exp $ # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -10,8 +10,8 @@ # system call stubs. LIB=c SHLIB_MAJOR= 5 -CFLAGS+=-I${.CURDIR}/include -I${.CURDIR}/../../include AINC= -I${.CURDIR}/${MACHINE_ARCH} +CFLAGS+=-I${.CURDIR}/include -I${.CURDIR}/../../include ${AINC} CLEANFILES+=tags INSTALL_PIC_ARCHIVE= yes PRECIOUSLIB= yes @@ -33,6 +33,7 @@ .include "${.CURDIR}/db/Makefile.inc" .include "${.CURDIR}/compat-43/Makefile.inc" +.include "${.CURDIR}/gdtoa/Makefile.inc" .include "${.CURDIR}/gen/Makefile.inc" .if ${MACHINE_ARCH} != "powerpc" .include "${.CURDIR}/gmon/Makefile.inc" ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/_ctx_start.S#2 (text+ko) ==== @@ -24,12 +24,8 @@ * SUCH DAMAGE. */ -/* - * $FreeBSD: src/lib/libc/alpha/gen/_ctx_start.S,v 1.1 2002/01/10 02:40:53 deischen Exp $ - */ - #include - +__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/_ctx_start.S,v 1.2 2003/01/19 00:17:02 obrien Exp $"); /* * A0-A5 are the first 6 arguments to the start routine with the ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/_setjmp.S#2 (text+ko) ==== @@ -25,11 +25,10 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/gen/_setjmp.S,v 1.8 2001/12/22 06:06:17 deischen Exp $ */ #include +__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/_setjmp.S,v 1.9 2003/01/19 00:17:02 obrien Exp $"); /* * C library -- _setjmp, _longjmp ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/fabs.S#2 (text+ko) ==== @@ -1,5 +1,4 @@ /* $NetBSD: fabs.S,v 1.2 1996/10/17 03:08:05 cgd Exp $ */ -/* $FreeBSD: src/lib/libc/alpha/gen/fabs.S,v 1.2 2000/05/10 19:04:57 obrien Exp $ */ /* * Copyright (c) 1994, 1995 Carnegie-Mellon University. @@ -29,6 +28,7 @@ */ #include +__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/fabs.S,v 1.3 2003/01/19 00:17:02 obrien Exp $"); LEAF(fabs, 1) cpys fzero, fa0, fv0 ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/infinity.c#2 (text+ko) ==== @@ -28,9 +28,12 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/infinity.c,v 1.6 2002/10/31 23:05:19 archie Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/infinity.c,v 1.7 2003/02/08 20:37:48 mike Exp $"); #include /* bytes for +Infinity on an Alpha (IEEE double format) */ const union __infinity_un __infinity = { { 0, 0, 0, 0, 0, 0, 0xf0, 0x7f } }; + +/* bytes for NaN */ +const union __nan_un __nan = { { 0, 0, 0xc0, 0xff } }; ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/isinf.c#2 (text+ko) ==== @@ -27,13 +27,18 @@ * $NetBSD: isinf.c,v 1.1 1995/02/10 17:50:23 cgd Exp $ */ +/* For binary compat; to be removed in FreeBSD 6.0. */ + #include -__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/isinf.c,v 1.4 2002/03/21 18:36:48 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/isinf.c,v 1.5 2003/02/12 20:03:40 mike Exp $"); #include #include #include +#undef isnan +#undef isinf + int isnan(d) double d; ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/rfork_thread.S#2 (text+ko) ==== @@ -22,10 +22,11 @@ * 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/lib/libc/alpha/gen/rfork_thread.S,v 1.1 2000/07/29 11:43:21 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/rfork_thread.S,v 1.2 2003/01/19 00:17:02 obrien Exp $"); + #include "SYS.h" #include /* #include */ ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/setjmp.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/gen/setjmp.S,v 1.15 2001/12/22 06:06:17 deischen Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/setjmp.S,v 1.16 2003/01/19 00:17:02 obrien Exp $"); + #include "SYS.h" /* ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/gen/sigsetjmp.S#2 (text+ko) ==== @@ -25,11 +25,10 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/gen/sigsetjmp.S,v 1.7 2001/01/24 12:58:52 deischen Exp $ */ #include +__FBSDID("$FreeBSD: src/lib/libc/alpha/gen/sigsetjmp.S,v 1.8 2003/01/19 00:17:02 obrien Exp $"); /* * C library -- sigsetjmp, siglongjmp ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/net/byte_swap_2.S#2 (text+ko) ==== @@ -25,11 +25,10 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/net/byte_swap_2.S,v 1.2 2002/02/18 20:35:16 mike Exp $ */ #include +__FBSDID("$FreeBSD: src/lib/libc/alpha/net/byte_swap_2.S,v 1.3 2003/01/19 00:17:02 obrien Exp $"); #if !defined(ALIAS) || !defined(NAME) #error ALIAS or NAME not defined ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/net/byte_swap_4.S#2 (text+ko) ==== @@ -25,11 +25,10 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/net/byte_swap_4.S,v 1.2 2002/02/18 20:35:16 mike Exp $ */ #include +__FBSDID("$FreeBSD: src/lib/libc/alpha/net/byte_swap_4.S,v 1.3 2003/01/19 00:17:02 obrien Exp $"); #if !defined(ALIAS) || !defined(NAME) #error ALIAS or NAME not defined ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/net/htonl.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/net/htonl.S,v 1.2 2002/02/18 20:35:16 mike Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/net/htonl.S,v 1.3 2003/01/19 00:17:02 obrien Exp $"); + #define ALIAS htonl #define NAME __htonl ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/net/htons.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/net/htons.S,v 1.2 2002/02/18 20:35:16 mike Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/net/htons.S,v 1.3 2003/01/19 00:17:02 obrien Exp $"); + #define ALIAS htons #define NAME __htons ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/net/ntohl.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/net/ntohl.S,v 1.2 2002/02/18 20:35:16 mike Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/net/ntohl.S,v 1.3 2003/01/19 00:17:02 obrien Exp $"); + #define ALIAS ntohl #define NAME __ntohl ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/net/ntohs.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/net/ntohs.S,v 1.2 2002/02/18 20:35:16 mike Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/net/ntohs.S,v 1.3 2003/01/19 00:17:02 obrien Exp $"); + #define ALIAS ntohs #define NAME __ntohs ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/string/bcopy.S#2 (text+ko) ==== @@ -29,6 +29,7 @@ */ #include +__FBSDID("$FreeBSD: src/lib/libc/alpha/string/bcopy.S,v 1.2 2003/01/19 00:17:03 obrien Exp $"); #if defined(MEMCOPY) || defined(MEMMOVE) #ifdef MEMCOPY ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/string/bzero.S#2 (text+ko) ==== @@ -28,6 +28,7 @@ */ #include +__FBSDID("$FreeBSD: src/lib/libc/alpha/string/bzero.S,v 1.2 2003/01/19 00:17:03 obrien Exp $"); LEAF(bzero,2) ble a1,bzero_done ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/string/ffs.S#2 (text+ko) ==== @@ -32,6 +32,7 @@ */ #include +__FBSDID("$FreeBSD: src/lib/libc/alpha/string/ffs.S,v 1.2 2003/01/19 00:17:03 obrien Exp $"); LEAF(ffs, 1) addl a0, 0, t0 ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/string/memcpy.S#2 (text+ko) ==== @@ -1,4 +1,8 @@ /* $NetBSD: memcpy.S,v 1.1 1995/08/13 00:40:47 cgd Exp $ */ + +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/string/memcpy.S,v 1.2 2003/01/19 00:17:03 obrien Exp $"); + #define MEMCOPY #include "bcopy.S" ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/string/memmove.S#2 (text+ko) ==== @@ -1,4 +1,7 @@ /* $NetBSD: memmove.S,v 1.1 1995/08/13 00:40:48 cgd Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/string/memmove.S,v 1.2 2003/01/19 00:17:03 obrien Exp $"); + #define MEMMOVE #include "bcopy.S" ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/Ovfork.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/sys/Ovfork.S,v 1.3 2001/01/29 03:23:34 deischen Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/Ovfork.S,v 1.4 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" SYSCALL(vfork) ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/brk.S#2 (text+ko) ==== @@ -27,6 +27,9 @@ * rights to redistribute these changes. */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/brk.S,v 1.2 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" .globl _end ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/cerror.S#2 (text+ko) ==== @@ -1,5 +1,4 @@ -/* $FreeBSD: src/lib/libc/alpha/sys/cerror.S,v 1.5 1999/08/27 23:58:11 peter Exp $ */ -/* From: NetBSD: cerror.S,v 1.4 1996/11/08 00:52:46 cgd Exp */ +/* $NetBSD: cerror.S,v 1.4 1996/11/08 00:52:46 cgd Exp $ */ /* * Copyright (c) 1994, 1995 Carnegie-Mellon University. @@ -28,6 +27,9 @@ * rights to redistribute these changes. */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/cerror.S,v 1.6 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" #define FRAME_SIZE 16 ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/exect.S#2 (text+ko) ==== @@ -27,6 +27,9 @@ * rights to redistribute these changes. */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/exect.S,v 1.2 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" LEAF(exect, 3) ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/fork.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/sys/fork.S,v 1.3 2001/01/29 03:23:34 deischen Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/fork.S,v 1.4 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" SYSCALL(fork) ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/pipe.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/sys/pipe.S,v 1.3 2001/01/29 03:23:34 deischen Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/pipe.S,v 1.4 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" SYSCALL(pipe) ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/ptrace.S#2 (text+ko) ==== @@ -27,6 +27,9 @@ * rights to redistribute these changes. */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/ptrace.S,v 1.2 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" LEAF(ptrace, 4) ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/sbrk.S#2 (text+ko) ==== @@ -27,6 +27,9 @@ * rights to redistribute these changes. */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/sbrk.S,v 1.3 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" .globl _end ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/setlogin.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/sys/setlogin.S,v 1.2 2001/01/24 12:58:56 deischen Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/setlogin.S,v 1.3 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" IMPORT(_logname_valid, 4) /* in _getlogin() */ ==== //depot/projects/trustedbsd/acl/lib/libc/alpha/sys/sigreturn.S#2 (text+ko) ==== @@ -25,10 +25,11 @@ * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. - * - * $FreeBSD: src/lib/libc/alpha/sys/sigreturn.S,v 1.3 2001/01/29 03:23:34 deischen Exp $ */ +#include +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/sigreturn.S,v 1.4 2003/01/19 00:17:03 obrien Exp $"); + #include "SYS.h" /* ==== //depot/projects/trustedbsd/acl/lib/libc/compat-43/sigvec.2#3 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)sigvec.2 8.2 (Berkeley) 4/19/94 -.\" $FreeBSD: src/lib/libc/compat-43/sigvec.2,v 1.21 2002/12/19 09:40:21 ru Exp $ +.\" $FreeBSD: src/lib/libc/compat-43/sigvec.2,v 1.22 2003/02/06 11:04:46 charnier Exp $ .\" .Dd April 19, 1994 .Dt SIGVEC 2 @@ -236,8 +236,9 @@ all signals, the signal mask, the signal stack, and the restart/interrupt flags are inherited by the child. .Pp -.Xr Execve 2 -reinstates the default +The +.Xr execve 2 +system call reinstates the default action for all signals which were caught and resets all signals to be caught on the user stack. Ignored signals remain ignored; ==== //depot/projects/trustedbsd/acl/lib/libc/db/btree/bt_put.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)bt_put.c 8.8 (Berkeley) 7/26/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/db/btree/bt_put.c,v 1.2 2002/03/21 22:46:25 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/db/btree/bt_put.c,v 1.3 2003/02/16 17:29:09 nectar Exp $"); #include @@ -225,7 +225,7 @@ t->bt_cursor.pg.pgno == h->pgno && t->bt_cursor.pg.index >= index) ++t->bt_cursor.pg.index; - if (t->bt_order == NOT) + if (t->bt_order == NOT) { if (h->nextpg == P_INVALID) { if (index == NEXTINDEX(h) - 1) { t->bt_order = FORWARD; @@ -239,6 +239,7 @@ t->bt_last.pgno = h->pgno; } } + } mpool_put(t->bt_mp, h, MPOOL_DIRTY); ==== //depot/projects/trustedbsd/acl/lib/libc/db/btree/bt_split.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)bt_split.c 8.9 (Berkeley) 7/26/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/db/btree/bt_split.c,v 1.4 2002/03/23 18:22:40 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/db/btree/bt_split.c,v 1.5 2003/02/16 17:29:09 nectar Exp $"); #include @@ -672,8 +672,8 @@ * where we decide to try and copy too much onto the left page. * Make sure that doesn't happen. */ - if (skip <= off && - used + nbytes + sizeof(indx_t) >= full || nxt == top - 1) { + if ((skip <= off && used + nbytes + sizeof(indx_t) >= full) + || nxt == top - 1) { --off; break; } ==== //depot/projects/trustedbsd/acl/lib/libc/db/btree/bt_utils.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)bt_utils.c 8.8 (Berkeley) 7/20/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/db/btree/bt_utils.c,v 1.2 2002/03/21 18:47:37 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/db/btree/bt_utils.c,v 1.3 2003/01/01 18:48:42 schweikh Exp $"); #include @@ -224,7 +224,7 @@ /* * XXX * If a size_t doesn't fit in an int, this routine can lose. - * What we need is a integral type which is guaranteed to be + * What we need is an integral type which is guaranteed to be * larger than a size_t, and there is no such thing. */ len = MIN(a->size, b->size); ==== //depot/projects/trustedbsd/acl/lib/libc/db/hash/hash_bigkey.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)hash_bigkey.c 8.3 (Berkeley) 5/31/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/db/hash/hash_bigkey.c,v 1.4 2002/03/21 22:46:26 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/db/hash/hash_bigkey.c,v 1.5 2003/02/16 17:29:09 nectar Exp $"); /* * PACKAGE: hash @@ -123,7 +123,7 @@ if (!bufp) return (-1); n = p[0]; - if (!key_size) + if (!key_size) { if (FREESPACE(p)) { move_bytes = MIN(FREESPACE(p), val_size); off = OFFSET(p) - move_bytes; @@ -136,6 +136,7 @@ OFFSET(p) = off; } else p[n - 2] = FULL_KEY; + } p = (u_int16_t *)bufp->page; cp = bufp->page; bufp->flags |= BUF_MOD; ==== //depot/projects/trustedbsd/acl/lib/libc/db/hash/hash_func.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)hash_func.c 8.2 (Berkeley) 2/21/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/db/hash/hash_func.c,v 1.4 2002/03/22 09:18:22 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/db/hash/hash_func.c,v 1.5 2003/02/16 17:29:09 nectar Exp $"); #include @@ -47,9 +47,9 @@ #include "page.h" #include "extern.h" -static u_int32_t hash1(const void *, size_t); -static u_int32_t hash2(const void *, size_t); -static u_int32_t hash3(const void *, size_t); +static u_int32_t hash1(const void *, size_t) __unused; +static u_int32_t hash2(const void *, size_t) __unused; +static u_int32_t hash3(const void *, size_t) __unused; static u_int32_t hash4(const void *, size_t); /* Global default hash function */ ==== //depot/projects/trustedbsd/acl/lib/libc/db/man/mpool.3#3 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)mpool.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/db/man/mpool.3,v 1.11 2002/12/19 09:40:21 ru Exp $ +.\" $FreeBSD: src/lib/libc/db/man/mpool.3,v 1.12 2003/02/06 11:04:46 charnier Exp $ .\" .Dd June 4, 1993 .Dt MPOOL 3 @@ -61,14 +61,15 @@ .Ft int .Fn mpool_close "MPOOL *mp" .Sh DESCRIPTION -.Nm Mpool -is the library interface intended to provide page oriented buffer management +The +.Nm mpool +library interface is intended to provide page oriented buffer management of files. The buffers may be shared between processes. .Pp -The function +The .Fn mpool_open -initializes a memory pool. +function initializes a memory pool. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Apr 20 17:49:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DD81337B404; Sun, 20 Apr 2003 17:49:36 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 989A737B401 for ; Sun, 20 Apr 2003 17:49:34 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0C53243F75 for ; Sun, 20 Apr 2003 17:49:34 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3L0nX0U003973 for ; Sun, 20 Apr 2003 17:49:33 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3L0nXEY003970 for perforce@freebsd.org; Sun, 20 Apr 2003 17:49:33 -0700 (PDT) Date: Sun, 20 Apr 2003 17:49:33 -0700 (PDT) Message-Id: <200304210049.h3L0nXEY003970@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 Subject: PERFORCE change 29320 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 00:49:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=29320 Change 29320 by marcel@marcel_nfs on 2003/04/20 17:49:18 o execve fix: When we jump to the entry point of the newly loaded program, we still have dirty registers on the kernel stack from when the execve was performed. In exec_setregs we cleared the trapframe, causing us to not completely "unwind" to the bottom of the kernel stack. This caused problems because we assume that when we enter the kernel from user space though a syscall, we start at the bottom of the kernel stack (see cpu_fork()). The fix is to discard a multiple of 512 bytes of the register stack by relocating the current stack base and copying "life" registers. The remaining dirty bytes (<512) are simply discarded by masking of the lower 9 bits of the kernel register stack pointer before we save it in ar.k6. This two part operation guarantees that we keep in sync with the NaT collections (every 512 bytes). o Only define ar.k7 (the kernel memory stack of the thread) when we enter user space. We used to define ar.k7 when we would return to kernel space as well. This is completely harmless, but remove a possible INVARIANTS test. By not defining ar.k7 when we return to kernel space, we have ar.k6 (the saved register stack base) and ar.k7 (the saved memory stack top) at a fixed distance from each other at all times: namely KSTACK_PAGES * PAGE_SIZE - SIZEOF_PCB. Lost or corrupted state is then more easily identified. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/exception.s#14 edit .. //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#14 edit .. //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#9 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/exception.s#14 (text+ko) ==== @@ -354,32 +354,25 @@ * been flushed. */ { .mmi + rsm psr.ic|psr.i + ;; + srlz.d add sp=16,sp ;; - ld8 r9=[sp] // length - add r3=SIZEOF_TRAPFRAME-32,sp - ;; } { .mmi - rsm psr.ic|psr.i + add r3=SIZEOF_TRAPFRAME-32,sp + add r2=SIZEOF_TRAPFRAME-16,sp + add r8=SIZEOF_SPECIAL+16,sp ;; - srlz.d - add r2=16,r3 - ;; } -{ .mmi + ldf.fill f15=[r2],-32 // f15 ldf.fill f14=[r3],-32 // f14 - add r8=SIZEOF_SPECIAL+16,sp ;; -} -{ .mmi ldf.fill f13=[r2],-32 // f13 ldf.fill f12=[r3],-32 // f12 - add r9=r9,sp ;; -} - ldf.fill f11=[r2],-32 // f11 ldf.fill f10=[r3],-32 // f10 ;; @@ -392,96 +385,93 @@ { .mmi ld8 r8=[r8] // unat (after) - mov ar.k7=r9 + ;; + mov ar.unat=r8 nop 0 ;; } -{ .mmi + ld8 r10=[r2],-16 // ssd ld8 r11=[r3],-16 // csd - nop 0 ;; -} -{ .mmi - mov ar.unat=r8 mov ar.ssd=r10 - nop 0 -} -{ .mmi + mov ar.csd=r11 + ld8 r14=[r2],-16 // ccv ld8 r15=[r3],-16 // b7 - nop 0 ;; -} + { .mmi - mov ar.csd=r11 mov ar.ccv=r14 + ld8 r8=[r2],-16 // b6 mov b7=r15 ;; } { .mmi - ld8 r8=[r2],-16 // b6 ld8.fill r31=[r3],-16 // r31 - nop 0 - ;; -} -{ .mmi ld8.fill r30=[r2],-16 // r30 - ld8.fill r29=[r3],-16 // r29 mov b6=r8 ;; } + ld8.fill r29=[r3],-16 // r29 ld8.fill r28=[r2],-16 // r28 + ;; ld8.fill r27=[r3],-16 // r27 + ld8.fill r26=[r2],-16 // r26 ;; - ld8.fill r26=[r2],-16 // r26 ld8.fill r25=[r3],-16 // r25 + ld8.fill r24=[r2],-16 // r24 ;; - ld8.fill r24=[r2],-16 // r24 ld8.fill r23=[r3],-16 // r23 + ld8.fill r22=[r2],-16 // r22 ;; - ld8.fill r22=[r2],-16 // r22 ld8.fill r21=[r3],-16 // r21 + ld8.fill r20=[r2],-16 // r20 ;; - ld8.fill r20=[r2],-16 // r20 ld8.fill r19=[r3],-16 // r19 - ;; ld8.fill r18=[r2],-16 // r18 - ld8.fill r17=[r3],-16 // r17 ;; { .mmb + ld8.fill r17=[r3],-16 // r17 ld8.fill r16=[r2],-16 // r16 - ld8.fill r15=[r3],-16 // r15 bsw.0 ;; } { .mmi + ld8.fill r15=[r3],-16 // r15 ld8.fill r14=[r2],-16 // r14 + add r31=16,sp + ;; +} +{ .mmi + ld8 r16=[sp] // tf_length ld8.fill r11=[r3],-16 // r11 - add r31=16,sp + add r30=24,sp ;; } { .mmi ld8.fill r10=[r2],-16 // r10 ld8.fill r9=[r3],-16 // r9 - add r30=24,sp + add r16=r16,sp // ar.k7 ;; } - +{ .mmi ld8.fill r8=[r2],-16 // r8 ld8.fill r3=[r3] // r3 ;; +} + ld8.fill r2=[r2] // r2 ld8.fill sp=[r31],16 // sp ;; - ld8 r16=[r30],16 // unat - ld8 r17=[r31],16 // rp + ld8 r17=[r30],16 // unat + ld8 r29=[r31],16 // rp ;; ld8 r18=[r30],16 // pr ld8 r19=[r31],16 // pfs - mov rp=r17 + mov rp=r29 ;; ld8 r20=[r30],24 // bspstore ld8 r21=[r31],24 // rnat @@ -521,18 +511,25 @@ nop 0 ;; } +{ .mmi mov r31=ar.bspstore + ;; mov ar.bspstore=r20 + dep r31=0,r31,0,9 ;; +} + mov ar.k6=r31 + mov ar.k7=r16 + ;; mov ar.rnat=r21 mov r13=r29 ;; 1: - mov ar.unat=r16 + mov ar.unat=r17 + mov ar.fpsr=r23 mov ar.pfs=r19 - mov ar.fpsr=r23 mov cr.ipsr=r24 mov cr.ifs=r26 mov cr.iip=r27 ==== //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#14 (text+ko) ==== @@ -851,18 +851,19 @@ mc->mc_flags |= IA64_MC_FLAGS_SCRATCH_VALID; mc->mc_scratch = frame->tf_scratch; mc->mc_scratch_fp = frame->tf_scratch_fp; + /* + * XXX High FP. If the process has never used the high FP, + * mark the high FP as valid (zero defaults). If the process + * did use the high FP, then store them in the PCB if not + * already there (ie get them from the CPU that has them) + * and write them in the context. + */ } + /* * XXX preserved registers. We don't have the preserved registers * in the trapframe. We don't worry about it now. */ - /* - * XXX High FP. If the process has never used the high FP, mark - * the high FP as valid (zero defaults). If the process did use - * the high FP, then store them in the PCB if not already there - * (ie get them from the CPU that has them) and write them in - * the context. - */ /* * Allocate and validate space for the signal handler @@ -1071,14 +1072,45 @@ exec_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings) { struct trapframe *tf; + char *kstack; + uint64_t bspst, ndirty; tf = td->td_frame; + kstack = (char*)td->td_kstack; + + /* + * RSE magic: We have ndirty registers of the process on the kernel + * stack which don't belong to the new image. Discard them. Note + * that for the "legacy" syscall support we need to keep 3 registers + * worth of dirty bytes. These 3 registers are the initial arguments + * to the newly executing program. + * However, we cannot discard all the ndirty registers by simply + * moving the kernel related registers to the bottom of the kernel + * stack and lowering the current bspstore, because we get into + * trouble with the NaT collections. We need to keep that in sync + * with the registers. Hence, we can only copy a multiple of 512 + * bytes. Consequently, we may end up with some registers of the + * previous image on the kernel stack. This we ignore by making + * sure we mask-off the lower 9 bits of the bspstore value just + * prior to saving it in ar.k6. + */ + if ((tf->tf_flags & FRAME_SYSCALL) == 0) + tf->tf_special.ndirty -= 24; + ndirty = tf->tf_special.ndirty & ~0x1ff; + if (ndirty > 0) { + __asm __volatile("mov ar.rsc=0;;"); + __asm __volatile("mov %0=ar.bspstore" : "=r"(bspst)); + bcopy(kstack + ndirty, kstack, ndirty); + bspst -= ndirty; + __asm __volatile("mov ar.bspstore=%0;;" :: "r"(bspst)); + __asm __volatile("mov ar.rsc=3;;"); + tf->tf_special.ndirty -= ndirty; + } + ndirty = tf->tf_special.ndirty; + + bzero(&tf->tf_special, sizeof(tf->tf_special)); + if ((tf->tf_flags & FRAME_SYSCALL) == 0) { /* break syscalls. */ - uint64_t *args; - uint64_t ndirty; - ndirty = tf->tf_special.ndirty; - bzero(&tf->tf_special, sizeof(tf->tf_special)); - tf->tf_special.ndirty = ndirty; bzero(&tf->tf_scratch, sizeof(tf->tf_scratch)); bzero(&tf->tf_scratch_fp, sizeof(tf->tf_scratch_fp)); tf->tf_special.iip = entry; @@ -1086,20 +1118,12 @@ tf->tf_special.bspstore = td->td_md.md_bspstore; /* * Copy the arguments onto the kernel register stack so that - * they get loaded by the loadrs. This involves some NaT - * collection magic. + * they get loaded by the loadrs instruction. */ - args = (uint64_t*)(td->td_kstack + ndirty); - args -= (((uintptr_t)args & 0x1ff) < 24) ? 4 : 3; - *args++ = stack; - if (((uintptr_t)args & 0x1ff) == 0x1f8) - args++; - *args++ = ps_strings; - if (((uintptr_t)args & 0x1ff) == 0x1f8) - args++; - *args = 0; + *(uint64_t*)(kstack + ndirty - 24) = stack; + *(uint64_t*)(kstack + ndirty - 16) = ps_strings; + *(uint64_t*)(kstack + ndirty - 8) = 0; } else { /* epc syscalls (default). */ - bzero(&tf->tf_special, sizeof(tf->tf_special)); tf->tf_special.rp = entry; tf->tf_special.pfs = (3UL<<62) | (3UL<<7) | 3UL; tf->tf_special.bspstore = td->td_md.md_bspstore + 24; @@ -1113,6 +1137,7 @@ suword((caddr_t)tf->tf_special.bspstore - 16, ps_strings); suword((caddr_t)tf->tf_special.bspstore - 8, 0); } + tf->tf_special.sp = (stack & ~15) - 16; tf->tf_special.rsc = 0xf; tf->tf_special.fpsr = IA64_FPSR_DEFAULT; ==== //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#9 (text+ko) ==== @@ -329,20 +329,21 @@ } { .mmi loadrs - mov ar.k7=r31 + mov r14=ar.k5 dep r26=-1,r26,19,1 // Set psr.dfh ;; } { .mmi - mov r31=ar.bspstore + mov r30=ar.bspstore + ;; mov ar.bspstore=r21 - mov r13=r23 + dep r30=0,r30,0,9 ;; } { .mmi - mov r14=ar.k5 - mov ar.k6=r31 - nop 0 + mov ar.k6=r30 + mov ar.k7=r31 + mov r13=r23 ;; } { .mmi From owner-p4-projects@FreeBSD.ORG Sun Apr 20 21:19:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 88D5D37B404; Sun, 20 Apr 2003 21:19:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2401F37B401 for ; Sun, 20 Apr 2003 21:19:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF2EE43F3F for ; Sun, 20 Apr 2003 21:19:50 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3L4Jo0U058742 for ; Sun, 20 Apr 2003 21:19:50 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3L4JoHN058736 for perforce@freebsd.org; Sun, 20 Apr 2003 21:19:50 -0700 (PDT) Date: Sun, 20 Apr 2003 21:19:50 -0700 (PDT) Message-Id: <200304210419.h3L4JoHN058736@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 Subject: PERFORCE change 29326 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 04:19:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=29326 Change 29326 by marcel@marcel_nfs on 2003/04/20 21:18:52 Improve the bundling messed up by the previous change. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/exception.s#15 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/exception.s#15 (text+ko) ==== @@ -527,17 +527,20 @@ ;; 1: +{ .mmi mov ar.unat=r17 - mov ar.fpsr=r23 + mov cr.iip=r27 mov ar.pfs=r19 +} +{ .mmi mov cr.ipsr=r24 mov cr.ifs=r26 - mov cr.iip=r27 + mov pr=r18,0x1fffe ;; - -{ .mib +} +{ .mmb mov ar.rsc=r22 - mov pr=r18,0x1fffe + mov ar.fpsr=r23 rfi ;; } From owner-p4-projects@FreeBSD.ORG Sun Apr 20 21:42:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D618937B404; Sun, 20 Apr 2003 21:42:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7665E37B401 for ; Sun, 20 Apr 2003 21:42:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1D65843F3F for ; Sun, 20 Apr 2003 21:42:19 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3L4gI0U075052 for ; Sun, 20 Apr 2003 21:42:18 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3L4gIfv075045 for perforce@freebsd.org; Sun, 20 Apr 2003 21:42:18 -0700 (PDT) Date: Sun, 20 Apr 2003 21:42:18 -0700 (PDT) Message-Id: <200304210442.h3L4gIfv075045@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 Subject: PERFORCE change 29328 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 04:42:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=29328 Change 29328 by marcel@marcel_nfs on 2003/04/20 21:41:20 Don't use the preserved registers to tell fork_trampoline what the callout function is and what its argument is. The preserved registers are sacred and using them is instant death (due to not preserving the values contained in the preserved registers on entry into the kernel). Use two scratch registers in the trapframe instead. r2 and r3 are "randomly" picked. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/locore.s#14 edit .. //depot/projects/ia64_epc/sys/ia64/ia64/vm_machdep.c#9 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/locore.s#14 (text+ko) ==== @@ -135,7 +135,8 @@ * argument to the callout, and a trapframe pointer. For child processes * returning from fork(2), the argument is a pointer to the child process. * - * The callout function is in r4 and the argument is in r6. + * The callout function and its argument is in the trapframe in scratch + * registers r2 and r3. */ ENTRY(fork_trampoline, 0) .prologue @@ -143,10 +144,15 @@ .body { .mmi alloc r14=ar.pfs,0,0,3,0 - mov out0=r4 - mov out1=r6 + add r15=32+SIZEOF_SPECIAL+8,sp + add r16=32+SIZEOF_SPECIAL+16,sp ;; } +{ .mmi + ld8 out0=[r15] + ld8 out1=[r16] + nop 0 +} { .mfb add out2=16,sp nop 0 ==== //depot/projects/ia64_epc/sys/ia64/ia64/vm_machdep.c#9 (text+ko) ==== @@ -202,8 +202,8 @@ void (*func)(void *); void *arg; { - td->td_pcb->pcb_preserved.gr4 = (u_int64_t)func; - td->td_pcb->pcb_preserved.gr6 = (u_int64_t)arg; + td->td_frame->tf_scratch.gr2 = (u_int64_t)func; + td->td_frame->tf_scratch.gr3 = (u_int64_t)arg; } /* From owner-p4-projects@FreeBSD.ORG Sun Apr 20 22:14:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C7D8337B404; Sun, 20 Apr 2003 22:13:59 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5AF5B37B401 for ; Sun, 20 Apr 2003 22:13:59 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8D23E43F75 for ; Sun, 20 Apr 2003 22:13:58 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3L5Dw0U098369 for ; Sun, 20 Apr 2003 22:13:58 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3L5DwwN098360 for perforce@freebsd.org; Sun, 20 Apr 2003 22:13:58 -0700 (PDT) Date: Sun, 20 Apr 2003 22:13:58 -0700 (PDT) Message-Id: <200304210513.h3L5DwwN098360@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 Subject: PERFORCE change 29330 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 05:14:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=29330 Change 29330 by marcel@marcel_nfs on 2003/04/20 22:13:14 Remove the debugging printf and invert the condition so that the flow of control is slightly less weird. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#11 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#11 (text+ko) ==== @@ -317,12 +317,10 @@ { while (1) { disable_intr(); - if (curthread->td_flags & (TDF_ASTPENDING|TDF_NEEDRESCHED)) { - enable_intr(); - printf("XXX calling ast()\n"); - ast(tf); - } else + if (!(curthread->td_flags & (TDF_ASTPENDING|TDF_NEEDRESCHED))) break; + enable_intr(); + ast(tf); } /* Keep interrupts disabled. */ } From owner-p4-projects@FreeBSD.ORG Sun Apr 20 22:17:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 918F437B404; Sun, 20 Apr 2003 22:17:03 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 48F7A37B401 for ; Sun, 20 Apr 2003 22:17:03 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E411443FAF for ; Sun, 20 Apr 2003 22:17:02 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3L5H20U001211 for ; Sun, 20 Apr 2003 22:17:02 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3L5H20t001205 for perforce@freebsd.org; Sun, 20 Apr 2003 22:17:02 -0700 (PDT) Date: Sun, 20 Apr 2003 22:17:02 -0700 (PDT) Message-Id: <200304210517.h3L5H20t001205@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 Subject: PERFORCE change 29331 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 05:17:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=29331 Change 29331 by marcel@marcel_nfs on 2003/04/20 22:16:02 Fix braino: the size of the register stack we need to copy is not the same as the size of the register stack we want to discard. We also don't need to handle the break based syscall patch any differently. While here, do some slight retyping to make it look slightly better. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#15 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#15 (text+ko) ==== @@ -1072,11 +1072,11 @@ exec_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings) { struct trapframe *tf; - char *kstack; - uint64_t bspst, ndirty; + uint64_t bspst, kstack, ndirty; + size_t rssz; tf = td->td_frame; - kstack = (char*)td->td_kstack; + kstack = td->td_kstack; /* * RSE magic: We have ndirty registers of the process on the kernel @@ -1094,16 +1094,15 @@ * sure we mask-off the lower 9 bits of the bspstore value just * prior to saving it in ar.k6. */ - if ((tf->tf_flags & FRAME_SYSCALL) == 0) - tf->tf_special.ndirty -= 24; ndirty = tf->tf_special.ndirty & ~0x1ff; if (ndirty > 0) { __asm __volatile("mov ar.rsc=0;;"); __asm __volatile("mov %0=ar.bspstore" : "=r"(bspst)); - bcopy(kstack + ndirty, kstack, ndirty); + rssz = bspst - kstack - ndirty; + bcopy((void*)(kstack + ndirty), (void*)kstack, rssz); bspst -= ndirty; __asm __volatile("mov ar.bspstore=%0;;" :: "r"(bspst)); - __asm __volatile("mov ar.rsc=3;;"); + __asm __volatile("mov ar.rsc=3"); tf->tf_special.ndirty -= ndirty; } ndirty = tf->tf_special.ndirty; From owner-p4-projects@FreeBSD.ORG Mon Apr 21 01:34:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0507F37B404; Mon, 21 Apr 2003 01:34:08 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 90BCC37B401 for ; Mon, 21 Apr 2003 01:34:07 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3BCC443FAF for ; Mon, 21 Apr 2003 01:34:07 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3L8Y70U048189 for ; Mon, 21 Apr 2003 01:34:07 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3L8Y6RR048181 for perforce@freebsd.org; Mon, 21 Apr 2003 01:34:06 -0700 (PDT) Date: Mon, 21 Apr 2003 01:34:06 -0700 (PDT) Message-Id: <200304210834.h3L8Y6RR048181@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 Subject: PERFORCE change 29341 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 08:34:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=29341 Change 29341 by marcel@marcel_nfs on 2003/04/21 01:33:49 Fix another breakage caused by the rewrite of exec_setregs: we have to have at least 3 registers worth of dirty bytes in order to have the initial arguments loaded in the stacked registers. This is specific to the break-based syscall path and got axed by accident. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#16 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#16 (text+ko) ==== @@ -1115,6 +1115,7 @@ tf->tf_special.iip = entry; tf->tf_special.cfm = (1UL<<63) | (3UL<<7) | 3UL; tf->tf_special.bspstore = td->td_md.md_bspstore; + tf->tf_special.ndirty = 24; /* * Copy the arguments onto the kernel register stack so that * they get loaded by the loadrs instruction. From owner-p4-projects@FreeBSD.ORG Mon Apr 21 10:22:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1B97B37B43B; Mon, 21 Apr 2003 10:22:02 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8DB2337B425 for ; Mon, 21 Apr 2003 10:22:01 -0700 (PDT) Received: from mail.speakeasy.net (mail14.speakeasy.net [216.254.0.214]) by mx1.FreeBSD.org (Postfix) with ESMTP id 868D743FD7 for ; Mon, 21 Apr 2003 10:22:00 -0700 (PDT) (envelope-from jhb@FreeBSD.org) Received: (qmail 7544 invoked from network); 21 Apr 2003 17:22:03 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender )encrypted SMTP for ; 21 Apr 2003 17:22:03 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.8/8.12.8) with ESMTP id h3LHLuOv090319; Mon, 21 Apr 2003 13:21:56 -0400 (EDT) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.4 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <200304210513.h3L5DwwN098360@repoman.freebsd.org> Date: Mon, 21 Apr 2003 13:22:00 -0400 (EDT) From: John Baldwin To: Marcel Moolenaar cc: Perforce Change Reviews Subject: RE: PERFORCE change 29330 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 17:22:03 -0000 On 21-Apr-2003 Marcel Moolenaar wrote: > http://perforce.freebsd.org/chv.cgi?CH=29330 > > Change 29330 by marcel@marcel_nfs on 2003/04/20 22:13:14 > > Remove the debugging printf and invert the condition so that the > flow of control is slightly less weird. > > Affected files ... > > .. //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#11 edit > > Differences ... > > ==== //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#11 (text+ko) ==== > > @@ -317,12 +317,10 @@ > { > while (1) { > disable_intr(); > - if (curthread->td_flags & (TDF_ASTPENDING|TDF_NEEDRESCHED)) { > - enable_intr(); > - printf("XXX calling ast()\n"); > - ast(tf); > - } else > + if (!(curthread->td_flags & (TDF_ASTPENDING|TDF_NEEDRESCHED))) > break; > + enable_intr(); > + ast(tf); > } > /* Keep interrupts disabled. */ > } Perhaps: disable_intr(); while (curthread->td_flags & (TDF_ASTPENDING|TDF_NEEDRESCHED)) { enable_intr(); ast(tf); disable_intr(); } would be even clearer? :) -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ From owner-p4-projects@FreeBSD.ORG Mon Apr 21 12:35:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5E2C437B404; Mon, 21 Apr 2003 12:35:34 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E8E6737B401 for ; Mon, 21 Apr 2003 12:35:33 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9298B43FDF for ; Mon, 21 Apr 2003 12:35:33 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3LJZX0U039344 for ; Mon, 21 Apr 2003 12:35:33 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3LJZWbg039335 for perforce@freebsd.org; Mon, 21 Apr 2003 12:35:32 -0700 (PDT) Date: Mon, 21 Apr 2003 12:35:32 -0700 (PDT) Message-Id: <200304211935.h3LJZWbg039335@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29357 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 19:35:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=29357 Change 29357 by jmallett@jmallett_dalek on 2003/04/21 12:35:11 Drag in abi64.h, to get proper ABI support. This makes varargs work, most notably. Probably has some effect on passing doubles, too. Affected files ... .. //depot/projects/mips/gnu/usr.bin/cc/cc_tools/Makefile#3 edit Differences ... ==== //depot/projects/mips/gnu/usr.bin/cc/cc_tools/Makefile#3 (text+ko) ==== @@ -151,6 +151,9 @@ .if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" echo '#include "${GCC_CPU}/att.h"' >> ${.TARGET} .endif +.if ${TARGET_ARCH} == "mips" + echo '#include "${GCC_CPU}/abi64.h"' >> ${.TARGET} +.endif .if ${TARGET_ARCH} != "alpha" echo '#include "dbxelf.h"' >> ${.TARGET} echo '#include "elfos.h"' >> ${.TARGET} From owner-p4-projects@FreeBSD.ORG Mon Apr 21 13:18:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D7B2B37B404; Mon, 21 Apr 2003 13:18:30 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8B15D37B401 for ; Mon, 21 Apr 2003 13:18:30 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 36B9F43F3F for ; Mon, 21 Apr 2003 13:18:30 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3LKIU0U075489 for ; Mon, 21 Apr 2003 13:18:30 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3LKITiv075483 for perforce@freebsd.org; Mon, 21 Apr 2003 13:18:29 -0700 (PDT) Date: Mon, 21 Apr 2003 13:18:29 -0700 (PDT) Message-Id: <200304212018.h3LKITiv075483@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 Subject: PERFORCE change 29364 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 20:18:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=29364 Change 29364 by marcel@marcel_nfs on 2003/04/21 13:18:05 Even better logic for do_ast(). Suggested by: jhb Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#12 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#12 (text+ko) ==== @@ -315,12 +315,12 @@ void do_ast(struct trapframe *tf) { - while (1) { - disable_intr(); - if (!(curthread->td_flags & (TDF_ASTPENDING|TDF_NEEDRESCHED))) - break; + + disable_intr(); + while (curthread->td_flags & (TDF_ASTPENDING|TDF_NEEDRESCHED)) { enable_intr(); ast(tf); + disable_intr(); } /* Keep interrupts disabled. */ } From owner-p4-projects@FreeBSD.ORG Mon Apr 21 13:28:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E4A3437B404; Mon, 21 Apr 2003 13:28:43 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9C86D37B401 for ; Mon, 21 Apr 2003 13:28:43 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 25A0043FB1 for ; Mon, 21 Apr 2003 13:28:43 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3LKSg0U082843 for ; Mon, 21 Apr 2003 13:28:42 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3LKSg2v082838 for perforce@freebsd.org; Mon, 21 Apr 2003 13:28:42 -0700 (PDT) Date: Mon, 21 Apr 2003 13:28:42 -0700 (PDT) Message-Id: <200304212028.h3LKSg2v082838@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 Subject: PERFORCE change 29365 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 20:28:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=29365 Change 29365 by marcel@marcel_nfs on 2003/04/21 13:27:48 Use a non-trapping implementation for pmap_kextract. This has been deliberately made non-inlined for now to help profiling, debugging and whatsnot. Be extra careful (probably over-correctingly so :-) with the address passed to us, because it may be an address given to use from user space. Note that an inlined or partially inlined version should be used eventually. It appears that UMA is a regular user of pmap_kextract and rudimentary testing showed that it's mostly for direct mapped KVAs. Doing the test for direct mapped KVAs inlined will probably be worth it. Valuable insights by: jake Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/pmap.c#6 edit .. //depot/projects/ia64_epc/sys/ia64/include/pmap.h#4 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/pmap.c#6 (text+ko) ==== @@ -125,6 +125,9 @@ #include #include +/* XXX move to a header. */ +extern u_int64_t ia64_gateway_page[]; + MALLOC_DEFINE(M_PMAP, "PMAP", "PMAP Structures"); #ifndef KSTACK_MAX_PAGES @@ -1309,6 +1312,37 @@ } /* + * Extract the physical page address associated with a kernel + * virtual address. + */ +vm_paddr_t +pmap_kextract(vm_offset_t va) +{ + struct ia64_lpte *pte; + vm_offset_t gwpage; + + KASSERT(va >= IA64_RR_BASE(5), ("Must be kernel VA")); + + /* Regions 6 and 7 are direct mapped. */ + if (va >= IA64_RR_BASE(6)) + return (IA64_RR_MASK(va)); + + /* EPC gateway page? */ + gwpage = (vm_offset_t)ia64_get_k5(); + if (va >= gwpage && va < gwpage + PAGE_SIZE) + return (IA64_RR_MASK((vm_offset_t)ia64_gateway_page)); + + /* Bail out if the virtual address is beyond our limits. */ + if (IA64_RR_MASK(va) >= nkpt * PAGE_SIZE * NKPTEPG) + return (0); + + pte = pmap_find_kpte(va); + if (!pte->pte_p) + return (0); + return ((pte->pte_ppn << 12) | (va & PAGE_MASK)); +} + +/* * Add a list of wired pages to the kva * this routine is only used for temporary * kernel mappings that do not need to have ==== //depot/projects/ia64_epc/sys/ia64/include/pmap.h#4 (text+ko) ==== @@ -59,14 +59,6 @@ #endif #define MAXKPT (PAGE_SIZE/sizeof(vm_offset_t)) -/* - * Routine: pmap_kextract - * Function: - * Extract the physical page address associated - * kernel virtual address. - */ -#define pmap_kextract ia64_tpa - #define vtophys(va) pmap_kextract(((vm_offset_t) (va))) #endif /* _KERNEL */ @@ -127,6 +119,7 @@ vm_offset_t pmap_steal_memory(vm_size_t); void pmap_bootstrap(void); void pmap_kenter(vm_offset_t va, vm_offset_t pa); +vm_paddr_t pmap_kextract(vm_offset_t va); void pmap_kremove(vm_offset_t); void pmap_setdevram(unsigned long long basea, vm_offset_t sizea); int pmap_uses_prom_console(void); From owner-p4-projects@FreeBSD.ORG Mon Apr 21 13:42:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B06CB37B404; Mon, 21 Apr 2003 13:42:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6664337B401 for ; Mon, 21 Apr 2003 13:42:23 -0700 (PDT) Received: from ns1.xcllnt.net (209-128-86-226.BAYAREA.NET [209.128.86.226]) by mx1.FreeBSD.org (Postfix) with ESMTP id 51A1943FF9 for ; Mon, 21 Apr 2003 13:42:22 -0700 (PDT) (envelope-from marcel@xcllnt.net) Received: from athlon.pn.xcllnt.net (athlon.pn.xcllnt.net [192.168.4.3]) by ns1.xcllnt.net (8.12.9/8.12.9) with ESMTP id h3LKgMwk093375 for ; Mon, 21 Apr 2003 13:42:22 -0700 (PDT) (envelope-from marcel@piii.pn.xcllnt.net) Received: from athlon.pn.xcllnt.net (localhost [127.0.0.1]) by athlon.pn.xcllnt.net (8.12.9/8.12.9) with ESMTP id h3LKgMtc000870 for ; Mon, 21 Apr 2003 13:42:22 -0700 (PDT) (envelope-from marcel@athlon.pn.xcllnt.net) Received: (from marcel@localhost) by athlon.pn.xcllnt.net (8.12.9/8.12.9/Submit) id h3LKgL0M000869 for perforce@freebsd.org; Mon, 21 Apr 2003 13:42:21 -0700 (PDT) Date: Mon, 21 Apr 2003 13:42:21 -0700 From: Marcel Moolenaar To: Perforce Change Reviews Message-ID: <20030421204221.GA830@athlon.pn.xcllnt.net> References: <200304212028.h3LKSg2v082838@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200304212028.h3LKSg2v082838@repoman.freebsd.org> User-Agent: Mutt/1.5.3i Subject: Re: PERFORCE change 29365 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Apr 2003 20:42:24 -0000 On Mon, Apr 21, 2003 at 01:28:42PM -0700, Marcel Moolenaar wrote: > http://perforce.freebsd.org/chv.cgi?CH=29365 > > Change 29365 by marcel@marcel_nfs on 2003/04/21 13:27:48 > > Use a non-trapping implementation for pmap_kextract. > This has been deliberately made non-inlined for now > to help profiling, debugging and whatsnot. Be extra > careful (probably over-correctingly so :-) with the > address passed to us, because it may be an address > given to use from user space. > > Note that an inlined or partially inlined version > should be used eventually. It appears that UMA is > a regular user of pmap_kextract and rudimentary > testing showed that it's mostly for direct mapped > KVAs. Doing the test for direct mapped KVAs inlined > will probably be worth it. > > Valuable insights by: jake JFYI: I noticed a reduction in the number of Nested TLB faults, so it appears that not depending on the cpu's TLB for pmap_kextract has a side-effect of not polluting the translation cache. I also have a nagging suspicion that it may have been the cause of not being able to run a MP kernel on the HP boxes in the FreeBSD cluster, even though SMP works (roughly) on the BigSur. On the HP boxes the BSP and AP get entangled in a life-lock where the AP holds sched_lock, while waiting for Giant that the BSP holds. The BSP is likely in hardclock and the AP is typically in UMA (I may have got the details slightly wrong). Since the AP has mostly a clean translation cache it's probably faulting a lot and may possibly end up in vm_fault. Again, this is just a nagging suspicion... -- Marcel Moolenaar USPA: A-39004 marcel@xcllnt.net From owner-p4-projects@FreeBSD.ORG Mon Apr 21 19:20:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 80AD737B404; Mon, 21 Apr 2003 19:20:53 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1196037B401 for ; Mon, 21 Apr 2003 19:20:53 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8F1F043FA3 for ; Mon, 21 Apr 2003 19:20:51 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3M2Kp0U042879 for ; Mon, 21 Apr 2003 19:20:51 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3M2KoqD042869 for perforce@freebsd.org; Mon, 21 Apr 2003 19:20:50 -0700 (PDT) Date: Mon, 21 Apr 2003 19:20:50 -0700 (PDT) Message-Id: <200304220220.h3M2KoqD042869@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 Subject: PERFORCE change 29371 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 02:20:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=29371 Change 29371 by marcel@marcel_nfs on 2003/04/21 19:20:20 IFC @29370 Affected files ... .. //depot/projects/ia64/etc/rc.d/dhclient#4 integrate .. //depot/projects/ia64/lib/libalias/Makefile#3 integrate .. //depot/projects/ia64/lib/libatm/atm_addr.c#4 integrate .. //depot/projects/ia64/lib/libc/gen/getpwent.c#9 integrate .. //depot/projects/ia64/lib/libc/include/nss_tls.h#2 integrate .. //depot/projects/ia64/lib/libdisk/Makefile#8 integrate .. //depot/projects/ia64/lib/libdisk/write_sparc64_disk.c#4 integrate .. //depot/projects/ia64/lib/libpthread/Makefile#5 integrate .. //depot/projects/ia64/lib/libpthread/arch/i386/i386/thr_switch.S#5 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_cond.c#3 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_create.c#4 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#9 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_private.h#6 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_setschedparam.c#3 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_suspend_np.c#3 integrate .. //depot/projects/ia64/lib/libthr/arch/ia64/Makefile.inc#2 integrate .. //depot/projects/ia64/lib/libthr/arch/ia64/ia64/_curthread.c#2 integrate .. //depot/projects/ia64/release/alpha/drivers.conf#9 integrate .. //depot/projects/ia64/release/alpha/fixit_crunch.conf#4 integrate .. //depot/projects/ia64/release/i386/drivers.conf#17 integrate .. //depot/projects/ia64/release/i386/fixit_crunch.conf#5 integrate .. //depot/projects/ia64/release/pc98/drivers.conf#9 integrate .. //depot/projects/ia64/release/pc98/fixit-small_crunch.conf#2 integrate .. //depot/projects/ia64/release/pc98/fixit_crunch.conf#5 integrate .. //depot/projects/ia64/sbin/devd/devd.8#7 integrate .. //depot/projects/ia64/sbin/devd/devd.cc#5 integrate .. //depot/projects/ia64/sbin/newfs/newfs.8#15 integrate .. //depot/projects/ia64/sbin/newfs/newfs.c#22 integrate .. //depot/projects/ia64/sbin/sunlabel/Makefile#3 integrate .. //depot/projects/ia64/sbin/sunlabel/runtest.sh#1 branch .. //depot/projects/ia64/sbin/sunlabel/sunlabel.c#4 integrate .. //depot/projects/ia64/share/dict/freebsd#3 integrate .. //depot/projects/ia64/share/man/man4/Makefile#41 integrate .. //depot/projects/ia64/share/man/man4/asr.4#2 integrate .. //depot/projects/ia64/share/man/man4/axe.4#1 branch .. //depot/projects/ia64/share/man/man4/isp.4#3 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/Makefile#10 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/asr.4#3 delete .. //depot/projects/ia64/share/man/man4/mlx.4#3 integrate .. //depot/projects/ia64/share/man/man4/smp.4#4 integrate .. //depot/projects/ia64/share/man/man4/sym.4#2 integrate .. //depot/projects/ia64/share/man/man4/syscons.4#4 integrate .. //depot/projects/ia64/share/man/man9/Makefile#19 integrate .. //depot/projects/ia64/share/man/man9/device_get_name.9#1 branch .. //depot/projects/ia64/share/man/man9/device_get_parent.9#1 branch .. //depot/projects/ia64/share/man/man9/device_get_state.9#3 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_2100_a500.c#5 integrate .. //depot/projects/ia64/sys/alpha/conf/GENERIC#21 integrate .. //depot/projects/ia64/sys/conf/files#74 integrate .. //depot/projects/ia64/sys/conf/files.sparc64#29 integrate .. //depot/projects/ia64/sys/contrib/ipfilter/netinet/ip_state.c#9 integrate .. //depot/projects/ia64/sys/crypto/blowfish/arch/i386/bf_enc_586.S#2 integrate .. //depot/projects/ia64/sys/crypto/des/arch/i386/des_enc.S#2 integrate .. //depot/projects/ia64/sys/dev/awi/am79c930.c#3 integrate .. //depot/projects/ia64/sys/dev/firewire/fwdev.c#15 integrate .. //depot/projects/ia64/sys/dev/hea/eni_transmit.c#5 integrate .. //depot/projects/ia64/sys/dev/sound/pci/emu10k1.c#10 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/ac97.c#17 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/buffer.c#9 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/feeder_fmt.c#6 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/feeder_rate.c#8 integrate .. //depot/projects/ia64/sys/dev/tx/if_tx.c#11 integrate .. //depot/projects/ia64/sys/dev/tx/if_txvar.h#6 integrate .. //depot/projects/ia64/sys/dev/usb/if_axe.c#1 branch .. //depot/projects/ia64/sys/dev/usb/if_axereg.h#1 branch .. //depot/projects/ia64/sys/dev/usb/usbdevs#32 integrate .. //depot/projects/ia64/sys/dev/usb/usbdevs.h#31 integrate .. //depot/projects/ia64/sys/dev/usb/usbdevs_data.h#31 integrate .. //depot/projects/ia64/sys/geom/geom_sunlabel.c#18 integrate .. //depot/projects/ia64/sys/geom/geom_sunlabel_enc.c#1 branch .. //depot/projects/ia64/sys/gnu/dev/sound/pci/emu10k1-ac97.h#1 branch .. //depot/projects/ia64/sys/i386/conf/GENERIC#33 integrate .. //depot/projects/ia64/sys/i386/i386/vm_machdep.c#23 integrate .. //depot/projects/ia64/sys/i386/svr4/svr4_locore.s#2 integrate .. //depot/projects/ia64/sys/ia64/conf/GENERIC#29 integrate .. //depot/projects/ia64/sys/ia64/ia64/pmap.c#58 integrate .. //depot/projects/ia64/sys/ia64/include/pmap.h#12 integrate .. //depot/projects/ia64/sys/kern/kern_exit.c#41 integrate .. //depot/projects/ia64/sys/kern/kern_thread.c#39 integrate .. //depot/projects/ia64/sys/kern/subr_bus.c#20 integrate .. //depot/projects/ia64/sys/modules/Makefile#45 integrate .. //depot/projects/ia64/sys/modules/axe/Makefile#1 branch .. //depot/projects/ia64/sys/modules/netgraph/Makefile#5 integrate .. //depot/projects/ia64/sys/netgraph/ng_fec.c#5 integrate .. //depot/projects/ia64/sys/netinet/tcp_input.c#39 integrate .. //depot/projects/ia64/sys/netinet6/icmp6.c#16 integrate .. //depot/projects/ia64/sys/pc98/conf/GENERIC#30 integrate .. //depot/projects/ia64/sys/pci/if_dc.c#32 integrate .. //depot/projects/ia64/sys/pci/if_pcn.c#15 integrate .. //depot/projects/ia64/sys/pci/if_rl.c#30 integrate .. //depot/projects/ia64/sys/pci/if_sf.c#14 integrate .. //depot/projects/ia64/sys/pci/if_sis.c#20 integrate .. //depot/projects/ia64/sys/pci/if_sk.c#14 integrate .. //depot/projects/ia64/sys/pci/if_ste.c#18 integrate .. //depot/projects/ia64/sys/pci/if_ti.c#22 integrate .. //depot/projects/ia64/sys/pci/if_tl.c#13 integrate .. //depot/projects/ia64/sys/pci/if_vr.c#20 integrate .. //depot/projects/ia64/sys/pci/if_wb.c#15 integrate .. //depot/projects/ia64/sys/pci/if_xl.c#31 integrate .. //depot/projects/ia64/sys/powerpc/conf/GENERIC#19 integrate .. //depot/projects/ia64/sys/sparc64/conf/GENERIC#33 integrate .. //depot/projects/ia64/sys/sys/bus.h#8 integrate .. //depot/projects/ia64/sys/sys/kse.h#9 integrate .. //depot/projects/ia64/sys/sys/proc.h#58 integrate .. //depot/projects/ia64/sys/sys/resourcevar.h#10 integrate .. //depot/projects/ia64/sys/sys/sun_disklabel.h#4 integrate .. //depot/projects/ia64/sys/vm/vm_fault.c#30 integrate .. //depot/projects/ia64/sys/vm/vm_map.c#50 integrate .. //depot/projects/ia64/sys/vm/vm_object.c#45 integrate .. //depot/projects/ia64/sys/vm/vm_pageout.c#33 integrate .. //depot/projects/ia64/usr.sbin/config/config.8#7 integrate .. //depot/projects/ia64/usr.sbin/jail/jail.c#6 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/devices.c#11 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/help/partition.hlp#5 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/install.c#17 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/label.c#16 integrate .. //depot/projects/ia64/usr.sbin/sysinstall/sysinstall.h#19 integrate Differences ... ==== //depot/projects/ia64/etc/rc.d/dhclient#4 (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.3 2003/04/18 17:53:02 mtm Exp $ +# $FreeBSD: src/etc/rc.d/dhclient,v 1.4 2003/04/20 19:14:16 mtm Exp $ # # PROVIDE: dhclient @@ -36,6 +36,11 @@ if [ -z "$dhcp_list" ]; then return 1 fi + + for ifn in ${dhcp_list}; do + ifscript_up ${ifn} + done + rc_flags="${rc_flags} ${dhcp_flags} ${dhcp_list}" return 0 } ==== //depot/projects/ia64/lib/libalias/Makefile#3 (text+ko) ==== @@ -1,12 +1,11 @@ -# $FreeBSD: src/lib/libalias/Makefile,v 1.19 2002/09/28 00:25:28 peter Exp $ +# $FreeBSD: src/lib/libalias/Makefile,v 1.20 2003/04/20 18:38:59 obrien Exp $ -LIB= alias +LIB= alias SHLIB_MAJOR= 4 -CFLAGS+= -Wall -Wmissing-prototypes -SRCS= alias.c alias_cuseeme.c alias_db.c alias_ftp.c alias_irc.c \ - alias_nbt.c alias_pptp.c alias_proxy.c alias_smedia.c \ - alias_util.c -INCS= alias.h -MAN= libalias.3 +MAN= libalias.3 +SRCS= alias.c alias_cuseeme.c alias_db.c alias_ftp.c alias_irc.c \ + alias_nbt.c alias_pptp.c alias_proxy.c alias_smedia.c \ + alias_util.c +INCS= alias.h .include ==== //depot/projects/ia64/lib/libatm/atm_addr.c#4 (text+ko) ==== @@ -24,13 +24,13 @@ * notice must be reproduced on all copies. */ -#include -__FBSDID("$FreeBSD: src/lib/libatm/atm_addr.c,v 1.9 2003/03/25 04:29:26 mdodd Exp $"); #ifndef lint #if 0 /* original (broken) import id */ static char *RCSid = "@(#) $Id: atm_addr.c,v 1.1 1998/07/09 21:45:18 johnc Exp $"; #endif #endif +#include +__FBSDID("$FreeBSD: src/lib/libatm/atm_addr.c,v 1.10 2003/04/20 18:41:16 obrien Exp $"); /* * User Space Library Functions ==== //depot/projects/ia64/lib/libc/gen/getpwent.c#9 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getpwent.c,v 1.76 2003/04/18 22:07:30 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getpwent.c,v 1.77 2003/04/21 13:57:58 nectar Exp $"); #include "namespace.h" #include @@ -941,13 +941,15 @@ int rv, order; *master = 0; - if (snprintf(buffer, bufsize, "master.passwd.by%s", - (how == nss_lt_id) ? "uid" : "name") >= bufsize) - return (NS_UNAVAIL); - rv = yp_order(domain, buffer, &order); - if (rv == 0) { - *master = 1; - return (NS_SUCCESS); + if (geteuid() == 0) { + if (snprintf(buffer, bufsize, "master.passwd.by%s", + (how == nss_lt_id) ? "uid" : "name") >= bufsize) + return (NS_UNAVAIL); + rv = yp_order(domain, buffer, &order); + if (rv == 0) { + *master = 1; + return (NS_SUCCESS); + } } if (snprintf(buffer, bufsize, "passwd.by%s", (how == nss_lt_id) ? "uid" : "name") >= bufsize) ==== //depot/projects/ia64/lib/libc/include/nss_tls.h#2 (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/libc/include/nss_tls.h,v 1.1 2003/04/17 14:14:22 nectar Exp $ + * $FreeBSD: src/lib/libc/include/nss_tls.h,v 1.2 2003/04/21 15:44:25 nectar Exp $ * * Macros which generate thread local storage handling code in NSS modules. */ @@ -64,7 +64,7 @@ *p = _pthread_getspecific(name##_state_key); \ if (*p != NULL) \ return (0); \ - *p = calloc(1, sizeof(*p)); \ + *p = calloc(1, sizeof(**p)); \ if (*p == NULL) \ return (ENOMEM); \ rv = _pthread_setspecific(name##_state_key, *p); \ ==== //depot/projects/ia64/lib/libdisk/Makefile#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libdisk/Makefile,v 1.37 2002/10/31 05:43:49 nyan Exp $ +# $FreeBSD: src/lib/libdisk/Makefile,v 1.38 2003/04/21 20:36:44 phk Exp $ LIB= disk SRCS= blocks.c chunk.c disk.c change.c \ @@ -7,6 +7,8 @@ WARNS= 2 +CFLAGS+= -I${.CURDIR}/../../sys/geom + .if ${MACHINE} == "pc98" CFLAGS+= -DPC98 .endif ==== //depot/projects/ia64/lib/libdisk/write_sparc64_disk.c#4 (text+ko) ==== @@ -8,7 +8,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libdisk/write_sparc64_disk.c,v 1.6 2002/11/15 13:24:29 nyan Exp $"); +__FBSDID("$FreeBSD: src/lib/libdisk/write_sparc64_disk.c,v 1.7 2003/04/21 20:36:44 phk Exp $"); #include #include @@ -24,6 +24,8 @@ #include #include "libdisk.h" +#include "geom_sunlabel_enc.c" + int Write_Disk(const struct disk *d1) { @@ -34,6 +36,7 @@ u_long secpercyl; u_short *sp1, *sp2, cksum; char device[64]; + u_char buf[SUN_SIZE]; int fd; strcpy(device, _PATH_DEV); @@ -74,9 +77,11 @@ p = c1->name; p += strlen(p); p--; - if (*p < 'a' || *p > 'h') + if (*p < 'a') continue; i = *p - 'a'; + if (i >= SUN_NPART) + continue; sl->sl_part[i].sdkp_cyloffset = c1->offset / secpercyl; sl->sl_part[i].sdkp_nsectors = c1->size; for (i = 1; i < 16; i++) { @@ -90,17 +95,12 @@ * seems to indicate that this covers the "obviously" visible part * of the disk, ie: sl->sl_ncylinders. */ - sl->sl_part[2].sdkp_cyloffset = 0; - sl->sl_part[2].sdkp_nsectors = sl->sl_ncylinders * secpercyl; + sl->sl_part[SUN_RAWPART].sdkp_cyloffset = 0; + sl->sl_part[SUN_RAWPART].sdkp_nsectors = sl->sl_ncylinders * secpercyl; - sp1 = (u_short *)sl; - sp2 = (u_short *)(sl + 1); - sl->sl_cksum = cksum = 0; - while (sp1 < sp2) - cksum ^= *sp1++; - sl->sl_cksum = cksum; - - write_block(fd, 0, sl, sizeof *sl); + memset(buf, 0, sizeof buf); + sunlabel_enc(buf, &sl); + write_block(fd, 0, buf, sizeof buf); close(fd); return 0; ==== //depot/projects/ia64/lib/libpthread/Makefile#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libpthread/Makefile,v 1.38 2003/04/18 07:09:42 deischen Exp $ +# $FreeBSD: src/lib/libpthread/Makefile,v 1.39 2003/04/21 04:02:56 deischen Exp $ # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -17,7 +17,12 @@ # Uncomment this if you want libpthread to contain debug information for # thread locking. -#CFLAGS+=-D_LOCK_DEBUG -g +CFLAGS+=-D_LOCK_DEBUG +#CFLAGS+= -g + +.if ${MACHINE_ARCH} == "i386" +CFLAGS+=-DGS_HACK +.endif # enable extra internal consistancy checks CFLAGS+=-D_PTHREADS_INVARIANTS -Wall ==== //depot/projects/ia64/lib/libpthread/arch/i386/i386/thr_switch.S#5 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libpthread/arch/i386/i386/thr_switch.S,v 1.4 2003/04/18 05:00:52 deischen Exp $"); +__FBSDID("$FreeBSD: src/lib/libpthread/arch/i386/i386/thr_switch.S,v 1.5 2003/04/21 03:59:07 deischen Exp $"); /* * Where do we define these? @@ -106,6 +106,6 @@ movl %ebx,(%ecx) popl %ecx /* %ecx off stack */ popl %ebx /* %ebx off stack */ - popf /* flags off stack */ + popfl /* flags off stack */ 5: ret /* %eip off stack */ ==== //depot/projects/ia64/lib/libpthread/thread/thr_cond.c#3 (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/libpthread/thread/thr_cond.c,v 1.35 2003/04/18 05:04:15 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_cond.c,v 1.36 2003/04/21 04:02:56 deischen Exp $ */ #include #include @@ -102,7 +102,7 @@ malloc(sizeof(struct pthread_cond))) == NULL) { rval = ENOMEM; } else if (_lock_init(&pcond->c_lock, LCK_ADAPTIVE, - _kse_lock_wait, _kse_lock_wakeup) != 0) { + _thr_lock_wait, _thr_lock_wakeup) != 0) { free(pcond); rval = ENOMEM; } else { ==== //depot/projects/ia64/lib/libpthread/thread/thr_create.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/libpthread/thread/thr_create.c,v 1.39 2003/04/18 07:09:43 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_create.c,v 1.40 2003/04/21 04:02:56 deischen Exp $ */ #include #include @@ -103,11 +103,20 @@ if (_thr_initial == NULL) _libpthread_init(NULL); - crit = _kse_critical_enter(); + /* + * Turn on threaded mode, if failed, it is unnecessary to + * do further work. + */ + if (_kse_isthreaded() == 0 && _kse_setthreaded(1)) { + return (EAGAIN); + } curthread = _get_curthread(); - curkse = curthread->kse; - /* Allocate memory for the thread structure: */ + /* + * Allocate memory for the thread structure. + * Some functions use malloc, so don't put it + * in a critical region. + */ if ((new_thread = _thr_alloc(curthread)) == NULL) { /* Insufficient memory to create a thread: */ ret = EAGAIN; @@ -135,9 +144,13 @@ if (kse != NULL) _kse_free(curthread, kse); if ((new_thread->attr.flags & THR_STACK_USER) == 0) { + crit = _kse_critical_enter(); + curkse = _get_curkse(); KSE_LOCK_ACQUIRE(curkse, &_thread_list_lock); + /* Stack routines don't use malloc/free. */ _thr_stack_free(&new_thread->attr); KSE_LOCK_RELEASE(curkse, &_thread_list_lock); + _kse_critical_leave(crit); } _thr_free(curthread, new_thread); } @@ -169,8 +182,13 @@ /* Initialize the signal frame: */ new_thread->curframe = NULL; - /* Initialize the machine context: */ + /* + * Initialize the machine context. + * Enter a critical region to get consistent context. + */ + crit = _kse_critical_enter(); THR_GETCONTEXT(&new_thread->tmbx.tm_context); + _kse_critical_leave(crit); new_thread->tmbx.tm_udata = new_thread; new_thread->tmbx.tm_context.uc_sigmask = new_thread->sigmask; @@ -178,17 +196,20 @@ new_thread->attr.stacksize_attr; new_thread->tmbx.tm_context.uc_stack.ss_sp = new_thread->attr.stackaddr_attr; - makecontext(&new_thread->tmbx.tm_context, (void (*)(void))thread_start, 4, new_thread, start_routine, arg); - /* * Check if this thread is to inherit the scheduling * attributes from its parent: */ if ((new_thread->attr.flags & PTHREAD_INHERIT_SCHED) != 0) { - /* Copy the scheduling attributes: */ + /* + * Copy the scheduling attributes. + * Lock the scheduling lock to get consistent + * scheduling parameters. + */ + THR_SCHED_LOCK(curthread, curthread); new_thread->base_priority = curthread->base_priority & ~THR_SIGNAL_PRIORITY; @@ -197,6 +218,7 @@ ~THR_SIGNAL_PRIORITY; new_thread->attr.sched_policy = curthread->attr.sched_policy; + THR_SCHED_UNLOCK(curthread, curthread); } else { /* * Use just the thread priority, leaving the @@ -212,7 +234,11 @@ /* Initialize the mutex queue: */ TAILQ_INIT(&new_thread->mutexq); - /* Initialize thread locking. */ + /* + * Initialize thread locking. + * Lock initializing needs malloc, so don't + * enter critical region before doing this! + */ if (_lock_init(&new_thread->lock, LCK_ADAPTIVE, _thr_lock_wait, _thr_lock_wakeup) != 0) PANIC("Cannot initialize thread lock"); @@ -245,23 +271,24 @@ } else { kse->k_curthread = NULL; +#ifdef NOT_YET kse->k_kseg->kg_flags |= KGF_SINGLE_THREAD; +#endif new_thread->kse = kse; new_thread->kseg = kse->k_kseg; kse->k_mbx.km_udata = kse; kse->k_mbx.km_curthread = NULL; } + + crit = _kse_critical_enter(); KSE_LOCK_ACQUIRE(curthread->kse, &_thread_list_lock); - /* * Initialise the unique id which GDB uses to * track threads. */ new_thread->uniqueid = next_uniqueid++; - /* Add the thread to the linked list of all threads: */ THR_LIST_ADD(new_thread); - KSE_LOCK_RELEASE(curthread->kse, &_thread_list_lock); /* @@ -269,15 +296,12 @@ * pair if necessary. */ _thr_schedule_add(curthread, new_thread); + _kse_critical_leave(crit); /* Return a pointer to the thread structure: */ (*thread) = new_thread; } } - _kse_critical_leave(crit); - - if ((ret == 0) && (_kse_isthreaded() == 0)) - _kse_setthreaded(1); /* Return the status: */ return (ret); ==== //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#9 (text+ko) ==== @@ -33,7 +33,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.54 2003/04/18 07:45:03 deischen Exp $"); +__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.55 2003/04/21 04:02:56 deischen Exp $"); #include #include @@ -94,6 +94,14 @@ _pq_remove(&(kse)->k_schedq->sq_runq, thrd) #define KSE_RUNQ_FIRST(kse) _pq_first(&(kse)->k_schedq->sq_runq) +/* + * XXX - Remove when David commits kernel changes to support these. + */ +#ifndef KMF_NOUPCALL +#define KMF_NOUPCALL 0x01 +#define KMF_NOCOMPLETED 0x02 +#endif + /* * We've got to keep track of everything that is allocated, not only @@ -118,15 +126,17 @@ static void kse_check_completed(struct kse *kse); static void kse_check_waitq(struct kse *kse); static void kse_check_signals(struct kse *kse); -static void kse_entry(struct kse_mailbox *mbx); static void kse_fini(struct kse *curkse); static void kse_sched_multi(struct kse *curkse); +#ifdef NOT_YET static void kse_sched_single(struct kse *curkse); +#endif static void kse_switchout_thread(struct kse *kse, struct pthread *thread); -static void kse_wait(struct kse *kse); +static void kse_wait(struct kse *kse, struct pthread *td_wait); static void kse_free_unlocked(struct kse *kse); static void kseg_free(struct kse_group *kseg); static void kseg_init(struct kse_group *kseg); +static void kseg_reinit(struct kse_group *kseg); static void kse_waitq_insert(struct pthread *thread); static void thr_cleanup(struct kse *kse, struct pthread *curthread); #ifdef NOT_YET @@ -203,6 +213,8 @@ while ((kse = TAILQ_FIRST(&free_kseq)) != NULL) { TAILQ_REMOVE(&free_kseq, kse, k_qe); _ksd_destroy(&kse->k_ksd); + if (kse->k_stack.ss_sp != NULL) + free(kse->k_stack.ss_sp); free(kse); } free_kse_count = 0; @@ -214,6 +226,8 @@ for (i = 0; i < MAX_KSE_LOCKLEVEL; i++) { _lockuser_destroy(&kse->k_lockusers[i]); } + if (kse->k_stack.ss_sp != NULL) + free(kse->k_stack.ss_sp); _lock_destroy(&kse->k_lock); free(kse); } @@ -331,7 +345,7 @@ * This is called when the first thread (other than the initial * thread) is created. */ -void +int _kse_setthreaded(int threaded) { if ((threaded != 0) && (__isthreaded == 0)) { @@ -345,9 +359,16 @@ * Tell the kernel to create a KSE for the initial thread * and enable upcalls in it. */ - kse_create(&_kse_initial->k_mbx, 0); + _kse_initial->k_flags |= KF_STARTED; + if (kse_create(&_kse_initial->k_mbx, 0) != 0) { + _kse_initial->k_flags &= ~KF_STARTED; + /* may abort() */ + DBG_MSG("kse_create failed\n"); + return (-1); + } KSE_SET_MBOX(_kse_initial, _thr_initial); } + return (0); } /* @@ -367,8 +388,10 @@ { struct kse *curkse = (struct kse *)_LCK_GET_PRIVATE(lu); struct timespec ts; - kse_critical_t crit; + int saved_flags; + if (curkse->k_mbx.km_curthread != NULL) + PANIC("kse_lock_wait does not disable upcall.\n"); /* * Enter a loop to wait until we get the lock. */ @@ -380,9 +403,10 @@ * Yield the kse and wait to be notified when the lock * is granted. */ - crit = _kse_critical_enter(); - __sys_nanosleep(&ts, NULL); - _kse_critical_leave(crit); + saved_flags = curkse->k_mbx.km_flags; + curkse->k_mbx.km_flags |= KMF_NOUPCALL; + kse_release(&ts); + curkse->k_mbx.km_flags = saved_flags; /* * Make sure that the wait flag is set again in case @@ -537,38 +561,6 @@ } /* - * This is the entry point of the KSE upcall. - */ -static void -kse_entry(struct kse_mailbox *mbx) -{ - struct kse *curkse; - - /* The kernel should always clear this before making the upcall. */ - assert(mbx->km_curthread == NULL); - curkse = (struct kse *)mbx->km_udata; - - /* Check for first time initialization: */ - if ((curkse->k_flags & KF_INITIALIZED) == 0) { - /* Setup this KSEs specific data. */ - _ksd_setprivate(&curkse->k_ksd); - _set_curkse(curkse); - - /* Set this before grabbing the context. */ - curkse->k_flags |= KF_INITIALIZED; - } - - /* Avoid checking the type of KSE more than once. */ - if ((curkse->k_kseg->kg_flags & KGF_SINGLE_THREAD) != 0) { - curkse->k_mbx.km_func = (void *)kse_sched_single; - kse_sched_single(curkse); - } else { - curkse->k_mbx.km_func = (void *)kse_sched_multi; - kse_sched_multi(curkse); - } -} - -/* * This is the scheduler for a KSE which runs a scope system thread. * The multi-thread KSE scheduler should also work for a single threaded * KSE, but we use a separate scheduler so that it can be fine-tuned @@ -577,19 +569,15 @@ * * XXX - This probably needs some work. */ +#ifdef NOT_YET static void kse_sched_single(struct kse *curkse) { - struct pthread *curthread; + struct pthread *curthread = curkse->k_curthread; + struct pthread *td_wait; struct timespec ts; int level; - /* This may have returned from a kse_release(). */ - if (KSE_WAITING(curkse)) - KSE_CLEAR_WAIT(curkse); - - curthread = curkse->k_curthread; - if (curthread->active == 0) { if (curthread->state != PS_RUNNING) { /* Check to see if the thread has timed out. */ @@ -599,68 +587,83 @@ curthread->state = PS_RUNNING; } } - } else if (curthread->need_switchout != 0) { - /* - * This has to do the job of kse_switchout_thread(), only - * for a single threaded KSE/KSEG. - */ + } + + /* This thread no longer needs to yield the CPU: */ + curthread->critical_yield = 0; + curthread->need_switchout = 0; + + /* + * Lock the scheduling queue. + * + * There is no scheduling queue for single threaded KSEs, + * but we need a lock for protection regardless. + */ + KSE_SCHED_LOCK(curkse, curkse->k_kseg); + + /* + * This has to do the job of kse_switchout_thread(), only + * for a single threaded KSE/KSEG. + */ + + switch (curthread->state) { + case PS_DEAD: + /* Unlock the scheduling queue and exit the KSE. */ + KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); + kse_fini(curkse); /* does not return */ + break; + + case PS_COND_WAIT: + case PS_SLEEP_WAIT: + /* Only insert threads that can timeout: */ + if (curthread->wakeup_time.tv_sec != -1) { + /* Insert into the waiting queue: */ + KSE_WAITQ_INSERT(curkse, curthread); + } + break; - /* This thread no longer needs to yield the CPU: */ - curthread->critical_yield = 0; - curthread->need_switchout = 0; + case PS_LOCKWAIT: + level = curthread->locklevel - 1; + if (_LCK_BUSY(&curthread->lockusers[level])) + KSE_WAITQ_INSERT(curkse, curthread); + else + THR_SET_STATE(curthread, PS_RUNNING); + break; + case PS_JOIN: + case PS_MUTEX_WAIT: + case PS_RUNNING: + case PS_SIGSUSPEND: + case PS_SIGWAIT: + case PS_SUSPENDED: + case PS_DEADLOCK: + default: /* - * Lock the scheduling queue. - * - * There is no scheduling queue for single threaded KSEs, - * but we need a lock for protection regardless. + * These states don't timeout and don't need + * to be in the waiting queue. */ - KSE_SCHED_LOCK(curkse, curkse->k_kseg); + break; + } + while (curthread->state != PS_RUNNING) { + curthread->active = 0; + td_wait = KSE_WAITQ_FIRST(curkse); + + kse_wait(curkse, td_wait); - switch (curthread->state) { - case PS_DEAD: - /* Unlock the scheduling queue and exit the KSE. */ - KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); - kse_fini(curkse); /* does not return */ - break; + if (td_wait != NULL) { + KSE_GET_TOD(curkse, &ts); + if (thr_timedout(curthread, &ts)) { + /* Indicate the thread timedout: */ + td_wait->timeout = 1; - case PS_COND_WAIT: - case PS_SLEEP_WAIT: - /* Only insert threads that can timeout: */ - if (curthread->wakeup_time.tv_sec != -1) { - /* Insert into the waiting queue: */ - KSE_WAITQ_INSERT(curkse, curthread); + /* Make the thread runnable. */ + THR_SET_STATE(td_wait, PS_RUNNING); + KSE_WAITQ_REMOVE(curkse, td_wait); } - break; - - case PS_LOCKWAIT: - level = curthread->locklevel - 1; - if (_LCK_BUSY(&curthread->lockusers[level])) - KSE_WAITQ_INSERT(curkse, curthread); - else - THR_SET_STATE(curthread, PS_RUNNING); - break; - - case PS_JOIN: - case PS_MUTEX_WAIT: - case PS_RUNNING: - case PS_SIGSUSPEND: - case PS_SIGWAIT: - case PS_SUSPENDED: - case PS_DEADLOCK: - default: - /* - * These states don't timeout and don't need - * to be in the waiting queue. - */ - break; } - if (curthread->state != PS_RUNNING) - curthread->active = 0; - } - - while (curthread->state != PS_RUNNING) { - kse_wait(curkse); + KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); + kse_check_signals(curkse); + KSE_SCHED_LOCK(curkse, curkse->k_kseg); } /* Remove the frame reference. */ @@ -672,8 +675,11 @@ /* * Continue the thread at its current frame: */ + DBG_MSG("Continuing bound thread %p\n", curthread); _thread_switch(&curthread->tmbx, &curkse->k_mbx.km_curthread); + PANIC("Thread has returned from _thread_switch"); } +#endif void dump_queues(struct kse *curkse) @@ -687,17 +693,26 @@ } } - /* * This is the scheduler for a KSE which runs multiple threads. */ static void kse_sched_multi(struct kse *curkse) { - struct pthread *curthread; + struct pthread *curthread, *td_wait; struct pthread_sigframe *curframe; int ret; + /* Check for first time initialization: */ + if ((curkse->k_flags & KF_INITIALIZED) == 0) { + /* Setup this KSEs specific data. */ + _ksd_setprivate(&curkse->k_ksd); + _set_curkse(curkse); + + /* Set this before grabbing the context. */ + curkse->k_flags |= KF_INITIALIZED; + } + /* This may have returned from a kse_release(). */ if (KSE_WAITING(curkse)) KSE_CLEAR_WAIT(curkse); @@ -774,7 +789,9 @@ * Wait for a thread to become active or until there are * no more threads. */ - kse_wait(curkse); + td_wait = KSE_WAITQ_FIRST(curkse); + kse_wait(curkse, td_wait); + kse_check_completed(curkse); kse_check_waitq(curkse); KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); kse_check_signals(curkse); @@ -852,10 +869,13 @@ (__sighandler_t *)thr_resume_wrapper); } #endif +#ifdef GS_HACK + /* XXX - The kernel sometimes forgets to restore %gs properly. */ + _ksd_setprivate(&curkse->k_ksd); +#endif /* * Continue the thread at its current frame: */ - DBG_MSG("Continuing thread %p\n", curthread); ret = _thread_switch(&curthread->tmbx, &curkse->k_mbx.km_curthread); if (ret != 0) PANIC("Thread has returned from _thread_switch"); @@ -993,8 +1013,9 @@ { struct pthread *td, *td_next; kse_critical_t crit; - int clean; + TAILQ_HEAD(, pthread) worklist; + TAILQ_INIT(&worklist); crit = _kse_critical_enter(); KSE_LOCK_ACQUIRE(curthread->kse, &_thread_list_lock); @@ -1014,28 +1035,45 @@ continue; } #endif + /* + * Remove the thread from the GC list. If the thread + * isn't yet detached, it will get added back to the + * GC list at a later time. + */ THR_GCLIST_REMOVE(td); - clean = ((td->attr.flags & PTHREAD_DETACHED) != 0) && - (td->refcount == 0); + DBG_MSG("Freeing thread %p stack\n", td); + /* + * We can free the thread stack since it's no longer + * in use. + */ _thr_stack_free(&td->attr); - KSE_LOCK_RELEASE(curthread->kse, &_thread_list_lock); - DBG_MSG("Found thread %p in GC list, clean? %d\n", td, clean); + if (((td->attr.flags & PTHREAD_DETACHED) != 0) && + (td->refcount == 0)) { + /* + * The thread has detached and is no longer + * referenced. It is safe to remove all + * remnants of the thread. + */ + TAILQ_INSERT_HEAD(&worklist, td, gcle); + } + } + KSE_LOCK_RELEASE(curthread->kse, &_thread_list_lock); + _kse_critical_leave(crit); + + while ((td = TAILQ_FIRST(&worklist)) != NULL) { + TAILQ_REMOVE(&worklist, td, gcle); if ((td->attr.flags & PTHREAD_SCOPE_PROCESS) != 0) { + crit = _kse_critical_enter(); KSE_LOCK_ACQUIRE(curthread->kse, &kse_lock); kse_free_unlocked(td->kse); kseg_free(td->kseg); KSE_LOCK_RELEASE(curthread->kse, &kse_lock); - } - if (clean != 0) { _kse_critical_leave(crit); - _thr_free(curthread, td); - crit = _kse_critical_enter(); } - KSE_LOCK_ACQUIRE(curthread->kse, &_thread_list_lock); + DBG_MSG("Freeing thread %p\n", td); + _thr_free(curthread, td); } - KSE_LOCK_RELEASE(curthread->kse, &_thread_list_lock); - _kse_critical_leave(crit); } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Apr 21 19:25:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1CA8537B404; Mon, 21 Apr 2003 19:25:00 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ABAF837B401 for ; Mon, 21 Apr 2003 19:24:59 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D88EE43FDF for ; Mon, 21 Apr 2003 19:24:57 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3M2Ov0U047706 for ; Mon, 21 Apr 2003 19:24:57 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3M2OuFl047689 for perforce@freebsd.org; Mon, 21 Apr 2003 19:24:56 -0700 (PDT) Date: Mon, 21 Apr 2003 19:24:56 -0700 (PDT) Message-Id: <200304220224.h3M2OuFl047689@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 Subject: PERFORCE change 29372 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 02:25:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=29372 Change 29372 by marcel@marcel_pluto1 on 2003/04/21 19:24:55 IFia64 Affected files ... .. //depot/projects/ia64_epc/etc/rc.d/dhclient#3 integrate .. //depot/projects/ia64_epc/lib/libalias/Makefile#2 integrate .. //depot/projects/ia64_epc/lib/libatm/atm_addr.c#3 integrate .. //depot/projects/ia64_epc/lib/libc/gen/getpwent.c#5 integrate .. //depot/projects/ia64_epc/lib/libc/include/nss_tls.h#2 integrate .. //depot/projects/ia64_epc/lib/libdisk/Makefile#2 integrate .. //depot/projects/ia64_epc/lib/libdisk/write_sparc64_disk.c#2 integrate .. //depot/projects/ia64_epc/lib/libpthread/Makefile#3 integrate .. //depot/projects/ia64_epc/lib/libpthread/arch/i386/i386/thr_switch.S#3 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_cond.c#3 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_create.c#3 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_kern.c#4 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_private.h#4 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_setschedparam.c#3 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_suspend_np.c#3 integrate .. //depot/projects/ia64_epc/lib/libthr/arch/ia64/Makefile.inc#2 integrate .. //depot/projects/ia64_epc/lib/libthr/arch/ia64/ia64/_curthread.c#2 integrate .. //depot/projects/ia64_epc/release/alpha/drivers.conf#2 integrate .. //depot/projects/ia64_epc/release/alpha/fixit_crunch.conf#2 integrate .. //depot/projects/ia64_epc/release/i386/drivers.conf#5 integrate .. //depot/projects/ia64_epc/release/i386/fixit_crunch.conf#2 integrate .. //depot/projects/ia64_epc/release/pc98/drivers.conf#3 integrate .. //depot/projects/ia64_epc/release/pc98/fixit-small_crunch.conf#2 integrate .. //depot/projects/ia64_epc/release/pc98/fixit_crunch.conf#2 integrate .. //depot/projects/ia64_epc/sbin/devd/devd.8#4 integrate .. //depot/projects/ia64_epc/sbin/devd/devd.cc#2 integrate .. //depot/projects/ia64_epc/sbin/newfs/newfs.8#3 integrate .. //depot/projects/ia64_epc/sbin/newfs/newfs.c#3 integrate .. //depot/projects/ia64_epc/sbin/sunlabel/Makefile#3 integrate .. //depot/projects/ia64_epc/sbin/sunlabel/runtest.sh#1 branch .. //depot/projects/ia64_epc/sbin/sunlabel/sunlabel.c#4 integrate .. //depot/projects/ia64_epc/share/dict/freebsd#2 integrate .. //depot/projects/ia64_epc/share/man/man4/Makefile#7 integrate .. //depot/projects/ia64_epc/share/man/man4/asr.4#2 integrate .. //depot/projects/ia64_epc/share/man/man4/axe.4#1 branch .. //depot/projects/ia64_epc/share/man/man4/isp.4#2 integrate .. //depot/projects/ia64_epc/share/man/man4/man4.i386/Makefile#6 integrate .. //depot/projects/ia64_epc/share/man/man4/man4.i386/asr.4#2 delete .. //depot/projects/ia64_epc/share/man/man4/mlx.4#2 integrate .. //depot/projects/ia64_epc/share/man/man4/smp.4#2 integrate .. //depot/projects/ia64_epc/share/man/man4/sym.4#2 integrate .. //depot/projects/ia64_epc/share/man/man4/syscons.4#2 integrate .. //depot/projects/ia64_epc/share/man/man9/Makefile#3 integrate .. //depot/projects/ia64_epc/share/man/man9/device_get_name.9#1 branch .. //depot/projects/ia64_epc/share/man/man9/device_get_parent.9#1 branch .. //depot/projects/ia64_epc/share/man/man9/device_get_state.9#2 integrate .. //depot/projects/ia64_epc/sys/alpha/alpha/dec_2100_a500.c#2 integrate .. //depot/projects/ia64_epc/sys/alpha/conf/GENERIC#4 integrate .. //depot/projects/ia64_epc/sys/conf/files#11 integrate .. //depot/projects/ia64_epc/sys/conf/files.sparc64#6 integrate .. //depot/projects/ia64_epc/sys/contrib/ipfilter/netinet/ip_state.c#3 integrate .. //depot/projects/ia64_epc/sys/crypto/blowfish/arch/i386/bf_enc_586.S#2 integrate .. //depot/projects/ia64_epc/sys/crypto/des/arch/i386/des_enc.S#2 integrate .. //depot/projects/ia64_epc/sys/dev/awi/am79c930.c#2 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/fwdev.c#5 integrate .. //depot/projects/ia64_epc/sys/dev/hea/eni_transmit.c#2 integrate .. //depot/projects/ia64_epc/sys/dev/sound/pci/emu10k1.c#5 integrate .. //depot/projects/ia64_epc/sys/dev/sound/pcm/ac97.c#6 integrate .. //depot/projects/ia64_epc/sys/dev/sound/pcm/buffer.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/sound/pcm/feeder_fmt.c#4 integrate .. //depot/projects/ia64_epc/sys/dev/sound/pcm/feeder_rate.c#4 integrate .. //depot/projects/ia64_epc/sys/dev/tx/if_tx.c#5 integrate .. //depot/projects/ia64_epc/sys/dev/tx/if_txvar.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/usb/if_axe.c#1 branch .. //depot/projects/ia64_epc/sys/dev/usb/if_axereg.h#1 branch .. //depot/projects/ia64_epc/sys/dev/usb/usbdevs#7 integrate .. //depot/projects/ia64_epc/sys/dev/usb/usbdevs.h#7 integrate .. //depot/projects/ia64_epc/sys/dev/usb/usbdevs_data.h#7 integrate .. //depot/projects/ia64_epc/sys/geom/geom_sunlabel.c#5 integrate .. //depot/projects/ia64_epc/sys/geom/geom_sunlabel_enc.c#1 branch .. //depot/projects/ia64_epc/sys/gnu/dev/sound/pci/emu10k1-ac97.h#1 branch .. //depot/projects/ia64_epc/sys/i386/conf/GENERIC#4 integrate .. //depot/projects/ia64_epc/sys/i386/i386/vm_machdep.c#5 integrate .. //depot/projects/ia64_epc/sys/i386/svr4/svr4_locore.s#2 integrate .. //depot/projects/ia64_epc/sys/ia64/conf/GENERIC#6 integrate .. //depot/projects/ia64_epc/sys/ia64/ia64/pmap.c#7 integrate .. //depot/projects/ia64_epc/sys/ia64/include/pmap.h#5 integrate .. //depot/projects/ia64_epc/sys/kern/kern_exit.c#7 integrate .. //depot/projects/ia64_epc/sys/kern/kern_thread.c#12 integrate .. //depot/projects/ia64_epc/sys/kern/subr_bus.c#5 integrate .. //depot/projects/ia64_epc/sys/modules/Makefile#9 integrate .. //depot/projects/ia64_epc/sys/modules/axe/Makefile#1 branch .. //depot/projects/ia64_epc/sys/modules/netgraph/Makefile#2 integrate .. //depot/projects/ia64_epc/sys/netgraph/ng_fec.c#3 integrate .. //depot/projects/ia64_epc/sys/netinet/tcp_input.c#7 integrate .. //depot/projects/ia64_epc/sys/netinet6/icmp6.c#4 integrate .. //depot/projects/ia64_epc/sys/pc98/conf/GENERIC#4 integrate .. //depot/projects/ia64_epc/sys/pci/if_dc.c#7 integrate .. //depot/projects/ia64_epc/sys/pci/if_pcn.c#6 integrate .. //depot/projects/ia64_epc/sys/pci/if_rl.c#8 integrate .. //depot/projects/ia64_epc/sys/pci/if_sf.c#6 integrate .. //depot/projects/ia64_epc/sys/pci/if_sis.c#6 integrate .. //depot/projects/ia64_epc/sys/pci/if_sk.c#6 integrate .. //depot/projects/ia64_epc/sys/pci/if_ste.c#6 integrate .. //depot/projects/ia64_epc/sys/pci/if_ti.c#7 integrate .. //depot/projects/ia64_epc/sys/pci/if_tl.c#6 integrate .. //depot/projects/ia64_epc/sys/pci/if_vr.c#7 integrate .. //depot/projects/ia64_epc/sys/pci/if_wb.c#6 integrate .. //depot/projects/ia64_epc/sys/pci/if_xl.c#11 integrate .. //depot/projects/ia64_epc/sys/powerpc/conf/GENERIC#4 integrate .. //depot/projects/ia64_epc/sys/sparc64/conf/GENERIC#6 integrate .. //depot/projects/ia64_epc/sys/sys/bus.h#3 integrate .. //depot/projects/ia64_epc/sys/sys/kse.h#4 integrate .. //depot/projects/ia64_epc/sys/sys/proc.h#10 integrate .. //depot/projects/ia64_epc/sys/sys/resourcevar.h#3 integrate .. //depot/projects/ia64_epc/sys/sys/sun_disklabel.h#2 integrate .. //depot/projects/ia64_epc/sys/vm/vm_fault.c#6 integrate .. //depot/projects/ia64_epc/sys/vm/vm_map.c#8 integrate .. //depot/projects/ia64_epc/sys/vm/vm_object.c#9 integrate .. //depot/projects/ia64_epc/sys/vm/vm_pageout.c#5 integrate .. //depot/projects/ia64_epc/usr.sbin/config/config.8#3 integrate .. //depot/projects/ia64_epc/usr.sbin/jail/jail.c#5 integrate .. //depot/projects/ia64_epc/usr.sbin/sysinstall/devices.c#3 integrate .. //depot/projects/ia64_epc/usr.sbin/sysinstall/help/partition.hlp#2 integrate .. //depot/projects/ia64_epc/usr.sbin/sysinstall/install.c#3 integrate .. //depot/projects/ia64_epc/usr.sbin/sysinstall/label.c#2 integrate .. //depot/projects/ia64_epc/usr.sbin/sysinstall/sysinstall.h#4 integrate Differences ... ==== //depot/projects/ia64_epc/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.3 2003/04/18 17:53:02 mtm Exp $ +# $FreeBSD: src/etc/rc.d/dhclient,v 1.4 2003/04/20 19:14:16 mtm Exp $ # # PROVIDE: dhclient @@ -36,6 +36,11 @@ if [ -z "$dhcp_list" ]; then return 1 fi + + for ifn in ${dhcp_list}; do + ifscript_up ${ifn} + done + rc_flags="${rc_flags} ${dhcp_flags} ${dhcp_list}" return 0 } ==== //depot/projects/ia64_epc/lib/libalias/Makefile#2 (text+ko) ==== @@ -1,12 +1,11 @@ -# $FreeBSD: src/lib/libalias/Makefile,v 1.19 2002/09/28 00:25:28 peter Exp $ +# $FreeBSD: src/lib/libalias/Makefile,v 1.20 2003/04/20 18:38:59 obrien Exp $ -LIB= alias +LIB= alias SHLIB_MAJOR= 4 -CFLAGS+= -Wall -Wmissing-prototypes -SRCS= alias.c alias_cuseeme.c alias_db.c alias_ftp.c alias_irc.c \ - alias_nbt.c alias_pptp.c alias_proxy.c alias_smedia.c \ - alias_util.c -INCS= alias.h -MAN= libalias.3 +MAN= libalias.3 +SRCS= alias.c alias_cuseeme.c alias_db.c alias_ftp.c alias_irc.c \ + alias_nbt.c alias_pptp.c alias_proxy.c alias_smedia.c \ + alias_util.c +INCS= alias.h .include ==== //depot/projects/ia64_epc/lib/libatm/atm_addr.c#3 (text+ko) ==== @@ -24,13 +24,13 @@ * notice must be reproduced on all copies. */ -#include -__FBSDID("$FreeBSD: src/lib/libatm/atm_addr.c,v 1.9 2003/03/25 04:29:26 mdodd Exp $"); #ifndef lint #if 0 /* original (broken) import id */ static char *RCSid = "@(#) $Id: atm_addr.c,v 1.1 1998/07/09 21:45:18 johnc Exp $"; #endif #endif +#include +__FBSDID("$FreeBSD: src/lib/libatm/atm_addr.c,v 1.10 2003/04/20 18:41:16 obrien Exp $"); /* * User Space Library Functions ==== //depot/projects/ia64_epc/lib/libc/gen/getpwent.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getpwent.c,v 1.76 2003/04/18 22:07:30 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getpwent.c,v 1.77 2003/04/21 13:57:58 nectar Exp $"); #include "namespace.h" #include @@ -941,13 +941,15 @@ int rv, order; *master = 0; - if (snprintf(buffer, bufsize, "master.passwd.by%s", - (how == nss_lt_id) ? "uid" : "name") >= bufsize) - return (NS_UNAVAIL); - rv = yp_order(domain, buffer, &order); - if (rv == 0) { - *master = 1; - return (NS_SUCCESS); + if (geteuid() == 0) { + if (snprintf(buffer, bufsize, "master.passwd.by%s", + (how == nss_lt_id) ? "uid" : "name") >= bufsize) + return (NS_UNAVAIL); + rv = yp_order(domain, buffer, &order); + if (rv == 0) { + *master = 1; + return (NS_SUCCESS); + } } if (snprintf(buffer, bufsize, "passwd.by%s", (how == nss_lt_id) ? "uid" : "name") >= bufsize) ==== //depot/projects/ia64_epc/lib/libc/include/nss_tls.h#2 (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/libc/include/nss_tls.h,v 1.1 2003/04/17 14:14:22 nectar Exp $ + * $FreeBSD: src/lib/libc/include/nss_tls.h,v 1.2 2003/04/21 15:44:25 nectar Exp $ * * Macros which generate thread local storage handling code in NSS modules. */ @@ -64,7 +64,7 @@ *p = _pthread_getspecific(name##_state_key); \ if (*p != NULL) \ return (0); \ - *p = calloc(1, sizeof(*p)); \ + *p = calloc(1, sizeof(**p)); \ if (*p == NULL) \ return (ENOMEM); \ rv = _pthread_setspecific(name##_state_key, *p); \ ==== //depot/projects/ia64_epc/lib/libdisk/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libdisk/Makefile,v 1.37 2002/10/31 05:43:49 nyan Exp $ +# $FreeBSD: src/lib/libdisk/Makefile,v 1.38 2003/04/21 20:36:44 phk Exp $ LIB= disk SRCS= blocks.c chunk.c disk.c change.c \ @@ -7,6 +7,8 @@ WARNS= 2 +CFLAGS+= -I${.CURDIR}/../../sys/geom + .if ${MACHINE} == "pc98" CFLAGS+= -DPC98 .endif ==== //depot/projects/ia64_epc/lib/libdisk/write_sparc64_disk.c#2 (text+ko) ==== @@ -8,7 +8,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libdisk/write_sparc64_disk.c,v 1.6 2002/11/15 13:24:29 nyan Exp $"); +__FBSDID("$FreeBSD: src/lib/libdisk/write_sparc64_disk.c,v 1.7 2003/04/21 20:36:44 phk Exp $"); #include #include @@ -24,6 +24,8 @@ #include #include "libdisk.h" +#include "geom_sunlabel_enc.c" + int Write_Disk(const struct disk *d1) { @@ -34,6 +36,7 @@ u_long secpercyl; u_short *sp1, *sp2, cksum; char device[64]; + u_char buf[SUN_SIZE]; int fd; strcpy(device, _PATH_DEV); @@ -74,9 +77,11 @@ p = c1->name; p += strlen(p); p--; - if (*p < 'a' || *p > 'h') + if (*p < 'a') continue; i = *p - 'a'; + if (i >= SUN_NPART) + continue; sl->sl_part[i].sdkp_cyloffset = c1->offset / secpercyl; sl->sl_part[i].sdkp_nsectors = c1->size; for (i = 1; i < 16; i++) { @@ -90,17 +95,12 @@ * seems to indicate that this covers the "obviously" visible part * of the disk, ie: sl->sl_ncylinders. */ - sl->sl_part[2].sdkp_cyloffset = 0; - sl->sl_part[2].sdkp_nsectors = sl->sl_ncylinders * secpercyl; + sl->sl_part[SUN_RAWPART].sdkp_cyloffset = 0; + sl->sl_part[SUN_RAWPART].sdkp_nsectors = sl->sl_ncylinders * secpercyl; - sp1 = (u_short *)sl; - sp2 = (u_short *)(sl + 1); - sl->sl_cksum = cksum = 0; - while (sp1 < sp2) - cksum ^= *sp1++; - sl->sl_cksum = cksum; - - write_block(fd, 0, sl, sizeof *sl); + memset(buf, 0, sizeof buf); + sunlabel_enc(buf, &sl); + write_block(fd, 0, buf, sizeof buf); close(fd); return 0; ==== //depot/projects/ia64_epc/lib/libpthread/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libpthread/Makefile,v 1.38 2003/04/18 07:09:42 deischen Exp $ +# $FreeBSD: src/lib/libpthread/Makefile,v 1.39 2003/04/21 04:02:56 deischen Exp $ # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -17,7 +17,12 @@ # Uncomment this if you want libpthread to contain debug information for # thread locking. -#CFLAGS+=-D_LOCK_DEBUG -g +CFLAGS+=-D_LOCK_DEBUG +#CFLAGS+= -g + +.if ${MACHINE_ARCH} == "i386" +CFLAGS+=-DGS_HACK +.endif # enable extra internal consistancy checks CFLAGS+=-D_PTHREADS_INVARIANTS -Wall ==== //depot/projects/ia64_epc/lib/libpthread/arch/i386/i386/thr_switch.S#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libpthread/arch/i386/i386/thr_switch.S,v 1.4 2003/04/18 05:00:52 deischen Exp $"); +__FBSDID("$FreeBSD: src/lib/libpthread/arch/i386/i386/thr_switch.S,v 1.5 2003/04/21 03:59:07 deischen Exp $"); /* * Where do we define these? @@ -106,6 +106,6 @@ movl %ebx,(%ecx) popl %ecx /* %ecx off stack */ popl %ebx /* %ebx off stack */ - popf /* flags off stack */ + popfl /* flags off stack */ 5: ret /* %eip off stack */ ==== //depot/projects/ia64_epc/lib/libpthread/thread/thr_cond.c#3 (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/libpthread/thread/thr_cond.c,v 1.35 2003/04/18 05:04:15 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_cond.c,v 1.36 2003/04/21 04:02:56 deischen Exp $ */ #include #include @@ -102,7 +102,7 @@ malloc(sizeof(struct pthread_cond))) == NULL) { rval = ENOMEM; } else if (_lock_init(&pcond->c_lock, LCK_ADAPTIVE, - _kse_lock_wait, _kse_lock_wakeup) != 0) { + _thr_lock_wait, _thr_lock_wakeup) != 0) { free(pcond); rval = ENOMEM; } else { ==== //depot/projects/ia64_epc/lib/libpthread/thread/thr_create.c#3 (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/libpthread/thread/thr_create.c,v 1.39 2003/04/18 07:09:43 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_create.c,v 1.40 2003/04/21 04:02:56 deischen Exp $ */ #include #include @@ -103,11 +103,20 @@ if (_thr_initial == NULL) _libpthread_init(NULL); - crit = _kse_critical_enter(); + /* + * Turn on threaded mode, if failed, it is unnecessary to + * do further work. + */ + if (_kse_isthreaded() == 0 && _kse_setthreaded(1)) { + return (EAGAIN); + } curthread = _get_curthread(); - curkse = curthread->kse; - /* Allocate memory for the thread structure: */ + /* + * Allocate memory for the thread structure. + * Some functions use malloc, so don't put it + * in a critical region. + */ if ((new_thread = _thr_alloc(curthread)) == NULL) { /* Insufficient memory to create a thread: */ ret = EAGAIN; @@ -135,9 +144,13 @@ if (kse != NULL) _kse_free(curthread, kse); if ((new_thread->attr.flags & THR_STACK_USER) == 0) { + crit = _kse_critical_enter(); + curkse = _get_curkse(); KSE_LOCK_ACQUIRE(curkse, &_thread_list_lock); + /* Stack routines don't use malloc/free. */ _thr_stack_free(&new_thread->attr); KSE_LOCK_RELEASE(curkse, &_thread_list_lock); + _kse_critical_leave(crit); } _thr_free(curthread, new_thread); } @@ -169,8 +182,13 @@ /* Initialize the signal frame: */ new_thread->curframe = NULL; - /* Initialize the machine context: */ + /* + * Initialize the machine context. + * Enter a critical region to get consistent context. + */ + crit = _kse_critical_enter(); THR_GETCONTEXT(&new_thread->tmbx.tm_context); + _kse_critical_leave(crit); new_thread->tmbx.tm_udata = new_thread; new_thread->tmbx.tm_context.uc_sigmask = new_thread->sigmask; @@ -178,17 +196,20 @@ new_thread->attr.stacksize_attr; new_thread->tmbx.tm_context.uc_stack.ss_sp = new_thread->attr.stackaddr_attr; - makecontext(&new_thread->tmbx.tm_context, (void (*)(void))thread_start, 4, new_thread, start_routine, arg); - /* * Check if this thread is to inherit the scheduling * attributes from its parent: */ if ((new_thread->attr.flags & PTHREAD_INHERIT_SCHED) != 0) { - /* Copy the scheduling attributes: */ + /* + * Copy the scheduling attributes. + * Lock the scheduling lock to get consistent + * scheduling parameters. + */ + THR_SCHED_LOCK(curthread, curthread); new_thread->base_priority = curthread->base_priority & ~THR_SIGNAL_PRIORITY; @@ -197,6 +218,7 @@ ~THR_SIGNAL_PRIORITY; new_thread->attr.sched_policy = curthread->attr.sched_policy; + THR_SCHED_UNLOCK(curthread, curthread); } else { /* * Use just the thread priority, leaving the @@ -212,7 +234,11 @@ /* Initialize the mutex queue: */ TAILQ_INIT(&new_thread->mutexq); - /* Initialize thread locking. */ + /* + * Initialize thread locking. + * Lock initializing needs malloc, so don't + * enter critical region before doing this! + */ if (_lock_init(&new_thread->lock, LCK_ADAPTIVE, _thr_lock_wait, _thr_lock_wakeup) != 0) PANIC("Cannot initialize thread lock"); @@ -245,23 +271,24 @@ } else { kse->k_curthread = NULL; +#ifdef NOT_YET kse->k_kseg->kg_flags |= KGF_SINGLE_THREAD; +#endif new_thread->kse = kse; new_thread->kseg = kse->k_kseg; kse->k_mbx.km_udata = kse; kse->k_mbx.km_curthread = NULL; } + + crit = _kse_critical_enter(); KSE_LOCK_ACQUIRE(curthread->kse, &_thread_list_lock); - /* * Initialise the unique id which GDB uses to * track threads. */ new_thread->uniqueid = next_uniqueid++; - /* Add the thread to the linked list of all threads: */ THR_LIST_ADD(new_thread); - KSE_LOCK_RELEASE(curthread->kse, &_thread_list_lock); /* @@ -269,15 +296,12 @@ * pair if necessary. */ _thr_schedule_add(curthread, new_thread); + _kse_critical_leave(crit); /* Return a pointer to the thread structure: */ (*thread) = new_thread; } } - _kse_critical_leave(crit); - - if ((ret == 0) && (_kse_isthreaded() == 0)) - _kse_setthreaded(1); /* Return the status: */ return (ret); ==== //depot/projects/ia64_epc/lib/libpthread/thread/thr_kern.c#4 (text+ko) ==== @@ -33,7 +33,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.54 2003/04/18 07:45:03 deischen Exp $"); +__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.55 2003/04/21 04:02:56 deischen Exp $"); #include #include @@ -94,6 +94,14 @@ _pq_remove(&(kse)->k_schedq->sq_runq, thrd) #define KSE_RUNQ_FIRST(kse) _pq_first(&(kse)->k_schedq->sq_runq) +/* + * XXX - Remove when David commits kernel changes to support these. + */ +#ifndef KMF_NOUPCALL +#define KMF_NOUPCALL 0x01 +#define KMF_NOCOMPLETED 0x02 +#endif + /* * We've got to keep track of everything that is allocated, not only @@ -118,15 +126,17 @@ static void kse_check_completed(struct kse *kse); static void kse_check_waitq(struct kse *kse); static void kse_check_signals(struct kse *kse); -static void kse_entry(struct kse_mailbox *mbx); static void kse_fini(struct kse *curkse); static void kse_sched_multi(struct kse *curkse); +#ifdef NOT_YET static void kse_sched_single(struct kse *curkse); +#endif static void kse_switchout_thread(struct kse *kse, struct pthread *thread); -static void kse_wait(struct kse *kse); +static void kse_wait(struct kse *kse, struct pthread *td_wait); static void kse_free_unlocked(struct kse *kse); static void kseg_free(struct kse_group *kseg); static void kseg_init(struct kse_group *kseg); +static void kseg_reinit(struct kse_group *kseg); static void kse_waitq_insert(struct pthread *thread); static void thr_cleanup(struct kse *kse, struct pthread *curthread); #ifdef NOT_YET @@ -203,6 +213,8 @@ while ((kse = TAILQ_FIRST(&free_kseq)) != NULL) { TAILQ_REMOVE(&free_kseq, kse, k_qe); _ksd_destroy(&kse->k_ksd); + if (kse->k_stack.ss_sp != NULL) + free(kse->k_stack.ss_sp); free(kse); } free_kse_count = 0; @@ -214,6 +226,8 @@ for (i = 0; i < MAX_KSE_LOCKLEVEL; i++) { _lockuser_destroy(&kse->k_lockusers[i]); } + if (kse->k_stack.ss_sp != NULL) + free(kse->k_stack.ss_sp); _lock_destroy(&kse->k_lock); free(kse); } @@ -331,7 +345,7 @@ * This is called when the first thread (other than the initial * thread) is created. */ -void +int _kse_setthreaded(int threaded) { if ((threaded != 0) && (__isthreaded == 0)) { @@ -345,9 +359,16 @@ * Tell the kernel to create a KSE for the initial thread * and enable upcalls in it. */ - kse_create(&_kse_initial->k_mbx, 0); + _kse_initial->k_flags |= KF_STARTED; + if (kse_create(&_kse_initial->k_mbx, 0) != 0) { + _kse_initial->k_flags &= ~KF_STARTED; + /* may abort() */ + DBG_MSG("kse_create failed\n"); + return (-1); + } KSE_SET_MBOX(_kse_initial, _thr_initial); } + return (0); } /* @@ -367,8 +388,10 @@ { struct kse *curkse = (struct kse *)_LCK_GET_PRIVATE(lu); struct timespec ts; - kse_critical_t crit; + int saved_flags; + if (curkse->k_mbx.km_curthread != NULL) + PANIC("kse_lock_wait does not disable upcall.\n"); /* * Enter a loop to wait until we get the lock. */ @@ -380,9 +403,10 @@ * Yield the kse and wait to be notified when the lock * is granted. */ - crit = _kse_critical_enter(); - __sys_nanosleep(&ts, NULL); - _kse_critical_leave(crit); + saved_flags = curkse->k_mbx.km_flags; + curkse->k_mbx.km_flags |= KMF_NOUPCALL; + kse_release(&ts); + curkse->k_mbx.km_flags = saved_flags; /* * Make sure that the wait flag is set again in case @@ -537,38 +561,6 @@ } /* - * This is the entry point of the KSE upcall. - */ -static void -kse_entry(struct kse_mailbox *mbx) -{ - struct kse *curkse; - - /* The kernel should always clear this before making the upcall. */ - assert(mbx->km_curthread == NULL); - curkse = (struct kse *)mbx->km_udata; - - /* Check for first time initialization: */ - if ((curkse->k_flags & KF_INITIALIZED) == 0) { - /* Setup this KSEs specific data. */ - _ksd_setprivate(&curkse->k_ksd); - _set_curkse(curkse); - - /* Set this before grabbing the context. */ - curkse->k_flags |= KF_INITIALIZED; - } - - /* Avoid checking the type of KSE more than once. */ - if ((curkse->k_kseg->kg_flags & KGF_SINGLE_THREAD) != 0) { - curkse->k_mbx.km_func = (void *)kse_sched_single; - kse_sched_single(curkse); - } else { - curkse->k_mbx.km_func = (void *)kse_sched_multi; - kse_sched_multi(curkse); - } -} - -/* * This is the scheduler for a KSE which runs a scope system thread. * The multi-thread KSE scheduler should also work for a single threaded * KSE, but we use a separate scheduler so that it can be fine-tuned @@ -577,19 +569,15 @@ * * XXX - This probably needs some work. */ +#ifdef NOT_YET static void kse_sched_single(struct kse *curkse) { - struct pthread *curthread; + struct pthread *curthread = curkse->k_curthread; + struct pthread *td_wait; struct timespec ts; int level; - /* This may have returned from a kse_release(). */ - if (KSE_WAITING(curkse)) - KSE_CLEAR_WAIT(curkse); - - curthread = curkse->k_curthread; - if (curthread->active == 0) { if (curthread->state != PS_RUNNING) { /* Check to see if the thread has timed out. */ @@ -599,68 +587,83 @@ curthread->state = PS_RUNNING; } } - } else if (curthread->need_switchout != 0) { - /* - * This has to do the job of kse_switchout_thread(), only - * for a single threaded KSE/KSEG. - */ + } + + /* This thread no longer needs to yield the CPU: */ + curthread->critical_yield = 0; + curthread->need_switchout = 0; + + /* + * Lock the scheduling queue. + * + * There is no scheduling queue for single threaded KSEs, + * but we need a lock for protection regardless. + */ + KSE_SCHED_LOCK(curkse, curkse->k_kseg); + + /* + * This has to do the job of kse_switchout_thread(), only + * for a single threaded KSE/KSEG. + */ + + switch (curthread->state) { + case PS_DEAD: + /* Unlock the scheduling queue and exit the KSE. */ + KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); + kse_fini(curkse); /* does not return */ + break; + + case PS_COND_WAIT: + case PS_SLEEP_WAIT: + /* Only insert threads that can timeout: */ + if (curthread->wakeup_time.tv_sec != -1) { + /* Insert into the waiting queue: */ + KSE_WAITQ_INSERT(curkse, curthread); + } + break; - /* This thread no longer needs to yield the CPU: */ - curthread->critical_yield = 0; - curthread->need_switchout = 0; + case PS_LOCKWAIT: + level = curthread->locklevel - 1; + if (_LCK_BUSY(&curthread->lockusers[level])) + KSE_WAITQ_INSERT(curkse, curthread); + else + THR_SET_STATE(curthread, PS_RUNNING); + break; + case PS_JOIN: + case PS_MUTEX_WAIT: + case PS_RUNNING: + case PS_SIGSUSPEND: + case PS_SIGWAIT: + case PS_SUSPENDED: + case PS_DEADLOCK: + default: /* - * Lock the scheduling queue. - * - * There is no scheduling queue for single threaded KSEs, - * but we need a lock for protection regardless. + * These states don't timeout and don't need + * to be in the waiting queue. */ - KSE_SCHED_LOCK(curkse, curkse->k_kseg); + break; + } + while (curthread->state != PS_RUNNING) { + curthread->active = 0; + td_wait = KSE_WAITQ_FIRST(curkse); + + kse_wait(curkse, td_wait); - switch (curthread->state) { - case PS_DEAD: - /* Unlock the scheduling queue and exit the KSE. */ - KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); - kse_fini(curkse); /* does not return */ - break; + if (td_wait != NULL) { + KSE_GET_TOD(curkse, &ts); + if (thr_timedout(curthread, &ts)) { + /* Indicate the thread timedout: */ + td_wait->timeout = 1; - case PS_COND_WAIT: - case PS_SLEEP_WAIT: - /* Only insert threads that can timeout: */ - if (curthread->wakeup_time.tv_sec != -1) { - /* Insert into the waiting queue: */ - KSE_WAITQ_INSERT(curkse, curthread); + /* Make the thread runnable. */ + THR_SET_STATE(td_wait, PS_RUNNING); + KSE_WAITQ_REMOVE(curkse, td_wait); } - break; - - case PS_LOCKWAIT: - level = curthread->locklevel - 1; - if (_LCK_BUSY(&curthread->lockusers[level])) - KSE_WAITQ_INSERT(curkse, curthread); - else - THR_SET_STATE(curthread, PS_RUNNING); - break; - - case PS_JOIN: - case PS_MUTEX_WAIT: - case PS_RUNNING: - case PS_SIGSUSPEND: - case PS_SIGWAIT: - case PS_SUSPENDED: - case PS_DEADLOCK: - default: - /* - * These states don't timeout and don't need - * to be in the waiting queue. - */ - break; } - if (curthread->state != PS_RUNNING) - curthread->active = 0; - } - - while (curthread->state != PS_RUNNING) { - kse_wait(curkse); + KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); + kse_check_signals(curkse); + KSE_SCHED_LOCK(curkse, curkse->k_kseg); } /* Remove the frame reference. */ @@ -672,8 +675,11 @@ /* * Continue the thread at its current frame: */ + DBG_MSG("Continuing bound thread %p\n", curthread); _thread_switch(&curthread->tmbx, &curkse->k_mbx.km_curthread); + PANIC("Thread has returned from _thread_switch"); } +#endif void dump_queues(struct kse *curkse) @@ -687,17 +693,26 @@ } } - /* * This is the scheduler for a KSE which runs multiple threads. */ static void kse_sched_multi(struct kse *curkse) { - struct pthread *curthread; + struct pthread *curthread, *td_wait; struct pthread_sigframe *curframe; int ret; + /* Check for first time initialization: */ + if ((curkse->k_flags & KF_INITIALIZED) == 0) { + /* Setup this KSEs specific data. */ + _ksd_setprivate(&curkse->k_ksd); + _set_curkse(curkse); + + /* Set this before grabbing the context. */ + curkse->k_flags |= KF_INITIALIZED; + } + /* This may have returned from a kse_release(). */ if (KSE_WAITING(curkse)) KSE_CLEAR_WAIT(curkse); @@ -774,7 +789,9 @@ * Wait for a thread to become active or until there are * no more threads. */ - kse_wait(curkse); + td_wait = KSE_WAITQ_FIRST(curkse); + kse_wait(curkse, td_wait); + kse_check_completed(curkse); kse_check_waitq(curkse); KSE_SCHED_UNLOCK(curkse, curkse->k_kseg); kse_check_signals(curkse); @@ -852,10 +869,13 @@ (__sighandler_t *)thr_resume_wrapper); } #endif +#ifdef GS_HACK + /* XXX - The kernel sometimes forgets to restore %gs properly. */ + _ksd_setprivate(&curkse->k_ksd); +#endif /* * Continue the thread at its current frame: */ - DBG_MSG("Continuing thread %p\n", curthread); ret = _thread_switch(&curthread->tmbx, &curkse->k_mbx.km_curthread); if (ret != 0) PANIC("Thread has returned from _thread_switch"); @@ -993,8 +1013,9 @@ { struct pthread *td, *td_next; kse_critical_t crit; - int clean; + TAILQ_HEAD(, pthread) worklist; + TAILQ_INIT(&worklist); crit = _kse_critical_enter(); KSE_LOCK_ACQUIRE(curthread->kse, &_thread_list_lock); @@ -1014,28 +1035,45 @@ continue; } #endif + /* + * Remove the thread from the GC list. If the thread + * isn't yet detached, it will get added back to the + * GC list at a later time. + */ THR_GCLIST_REMOVE(td); - clean = ((td->attr.flags & PTHREAD_DETACHED) != 0) && - (td->refcount == 0); + DBG_MSG("Freeing thread %p stack\n", td); + /* + * We can free the thread stack since it's no longer + * in use. + */ _thr_stack_free(&td->attr); - KSE_LOCK_RELEASE(curthread->kse, &_thread_list_lock); - DBG_MSG("Found thread %p in GC list, clean? %d\n", td, clean); + if (((td->attr.flags & PTHREAD_DETACHED) != 0) && + (td->refcount == 0)) { + /* + * The thread has detached and is no longer + * referenced. It is safe to remove all + * remnants of the thread. + */ + TAILQ_INSERT_HEAD(&worklist, td, gcle); + } + } + KSE_LOCK_RELEASE(curthread->kse, &_thread_list_lock); + _kse_critical_leave(crit); + + while ((td = TAILQ_FIRST(&worklist)) != NULL) { + TAILQ_REMOVE(&worklist, td, gcle); if ((td->attr.flags & PTHREAD_SCOPE_PROCESS) != 0) { + crit = _kse_critical_enter(); KSE_LOCK_ACQUIRE(curthread->kse, &kse_lock); kse_free_unlocked(td->kse); kseg_free(td->kseg); KSE_LOCK_RELEASE(curthread->kse, &kse_lock); - } - if (clean != 0) { _kse_critical_leave(crit); - _thr_free(curthread, td); - crit = _kse_critical_enter(); } - KSE_LOCK_ACQUIRE(curthread->kse, &_thread_list_lock); + DBG_MSG("Freeing thread %p\n", td); + _thr_free(curthread, td); } - KSE_LOCK_RELEASE(curthread->kse, &_thread_list_lock); - _kse_critical_leave(crit); } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Apr 21 23:06:46 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 757CF37B404; Mon, 21 Apr 2003 23:06:45 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 15A6437B401 for ; Mon, 21 Apr 2003 23:06:45 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B3DBF43F75 for ; Mon, 21 Apr 2003 23:06:44 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3M66i0U015749 for ; Mon, 21 Apr 2003 23:06:44 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3M66ifr015744 for perforce@freebsd.org; Mon, 21 Apr 2003 23:06:44 -0700 (PDT) Date: Mon, 21 Apr 2003 23:06:44 -0700 (PDT) Message-Id: <200304220606.h3M66ifr015744@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 Subject: PERFORCE change 29388 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 06:06:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=29388 Change 29388 by marcel@marcel_nfs on 2003/04/21 23:06:34 Fix 2 brainos relating NaT collections: o Nat collections happen when the lower 9 bits are 0x1f8, not 0x1e8. We probably need to use a macro for this. o To see if we have a NaT collection interleaving the syscall arguments, check if the RSE backing store pointer is nargs registers worth of bytes not 64 (=8 registers worth of bytes). Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#13 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#13 (text+ko) ==== @@ -888,10 +888,10 @@ tfp = &tf->tf_scratch.gr16; nargs = tf->tf_special.cfm & 0x7f; bsp = (uint64_t*)(curthread->td_kstack + tf->tf_special.ndirty); - bsp -= (((uintptr_t)bsp & 0x1ff) < 64) ? (nargs + 1): nargs; + bsp -= (((uintptr_t)bsp & 0x1ff) < (nargs << 3)) ? (nargs + 1): nargs; while (nargs--) { *tfp++ = *bsp++; - if (((uintptr_t)bsp & 0x1ff) == 0x1e8) + if (((uintptr_t)bsp & 0x1ff) == 0x1f8) bsp++; } error = syscall(tf->tf_scratch.gr15, &tf->tf_scratch.gr16, tf); From owner-p4-projects@FreeBSD.ORG Tue Apr 22 01:46:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1AEA037B405; Tue, 22 Apr 2003 01:46:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BFDD637B401 for ; Tue, 22 Apr 2003 01:46:05 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ED31A43FA3 for ; Tue, 22 Apr 2003 01:46:04 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3M8k40U035768 for ; Tue, 22 Apr 2003 01:46:04 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3M8k41u035759 for perforce@freebsd.org; Tue, 22 Apr 2003 01:46:04 -0700 (PDT) Date: Tue, 22 Apr 2003 01:46:04 -0700 (PDT) Message-Id: <200304220846.h3M8k41u035759@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 Subject: PERFORCE change 29400 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 08:46:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=29400 Change 29400 by marcel@marcel_nfs on 2003/04/22 01:45:08 Improve handling of nested TLB faults: o Make sure interrupts are disabled to avoid being interrupted while constructing the trapframe. We may loose our TLB entry when that happens and thus have nested TLB faults when we cannot deal with it. o Add a seatbelt: we put a magic value in r22 prior to crossing the restart point. This register is checked by the nested TLB handler and if it contains the magic value, we branch back to the restart point. Otherwise we hit a breakpoint. This way we can better diagnose problems caused by double nested TLB faults. o Do not disable interrupt collection too early when we restore from a trapframe, because that can cause a nested TLB fault. Delay disabling interrupt collection until after we've loaded everything from the trapframe in registers, but prior to moving the values to their actual destination. o Use physical addressing in the nested TLB handler. We only have to deal with region 7 addresses, which are direct mapped virtual addresses, so we don't have any problems constructing the physical addresses. The prime advantage is that we're now unaffected by missing TLB entries for the page table pages themselves. o Do not use a translation cache entry when we insert a mapping in the nested TLB handler. Use a translation register. This avoids getting caught in a TLB miss storm caused by TC purges for the "wrong" translations. This causes us to overflow our kernel stack and thus crash and burn. Translation registers do not affect translation caches, which means that the chance of a chain reaction is very small, of not zero. We run multi-user with as little as 16 translation cache entries this way. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/exception.s#16 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/exception.s#16 (text+ko) ==== @@ -80,6 +80,13 @@ sub r19=r31,sp ;; } +{ .mmi + rsm psr.i + ;; + srlz.d + mov r22=ip + ;; +} /* * We have a 1KB aligned trapframe, pointed to by sp. If we write @@ -91,7 +98,7 @@ * have to be careful what we use here. The registers that must * not be clobbered by the data nested TLB fault handler on top * of any interrupted state we haven't saved yet (ie almost all - * of it) are: p14, p15, sp and r16-r21. + * of it) are: p14, p15, sp and r16-r22. */ exception_save_restart: { .mmi @@ -354,7 +361,7 @@ * been flushed. */ { .mmi - rsm psr.ic|psr.i + rsm psr.i ;; srlz.d add sp=16,sp @@ -528,6 +535,12 @@ 1: { .mmi + rsm psr.ic + ;; + srlz.d + nop 0 +} +{ .mmi mov ar.unat=r17 mov cr.iip=r27 mov ar.pfs=r19 @@ -813,61 +826,86 @@ IVT_ENTRY(Data_Nested_TLB, 0x1400) // See exception_save. Things get tricky here. Don't use p14, p15, - // sp and r16-r21. + // sp and r16-r22. We use physical addressing to avoid double + // nested faults. Since all virtual addresses we encounter here + // are direct mapped region 7 addresses, we will have no problem + // constructing physical addresses. { .mlx - mov r22=cr.ifa - movl r24=ia64_kptdir + mov r23=cr.ifa + movl r25=ia64_kptdir + ;; +} +{ .mii + mov r24=cr.itir + dep r25=0,r25,61,3 + extr.u r26=sp,PAGE_SHIFT,61-PAGE_SHIFT + ;; +} +{ .mii + rsm psr.dt + shr.u r27=r26,PAGE_SHIFT-5 // dir index + extr.u r28=r26,0,PAGE_SHIFT-5 // pte index ;; } { .mmi - mov r23=cr.itir - ld8 r24=[r24] - extr.u r25=sp,PAGE_SHIFT,61-PAGE_SHIFT + srlz.d + ld8 r25=[r25] + shl r28=r28,5 ;; } -{ .mii +{ .mmi mov cr.ifa=sp - shr.u r26=r25,PAGE_SHIFT-5 // dir index - extr.u r27=r25,0,PAGE_SHIFT-5 // pte index + shladd r25=r27,3,r25 + add r22=16,r22 ;; } -{ .mmi - shladd r24=r26,3,r24 +{ .mii + mov r27=rr[sp] + dep r25=0,r25,61,3 ;; - ld8 r24=[r24] - shl r27=r27,5 + dep r27=0,r27,0,2 +} +{ .mlx + ld8 r25=[r25] + movl r29=exception_save_restart ;; } -{ .mmi - add r24=r24,r27 // address of pte +{ .mii + mov cr.itir=r27 + add r25=r25,r28 // address of pte ;; - ld8 r25=[r24] - extr.u r26=sp,61,3 + dep r25=0,r25,61,3 ;; } { .mmi - mov r26=rr[r26] + ld8 r26=[r25] ;; - or r25=PTE_D|PTE_A,r25 - dep r26=0,r26,0,2 + or r26=PTE_D|PTE_A,r26 + cmp.eq p13,p0=r22,r29 // exception_save triggered? ;; } { .mmi - st8 [r24]=r25 - mov cr.itir=r26 - nop 0 + st8 [r25]=r26 ;; + ssm psr.dt + mov r28=4 } { .mmi - itc.d r25 + itr.d dtr[r28]=r26 ;; srlz.d nop 0 } { .mmb - mov cr.ifa=r22 - mov cr.itir=r23 - br.sptk exception_save_restart + mov cr.ifa=r23 + mov cr.itir=r24 +(p13) br.sptk exception_save_restart + ;; +} +{ .mfb + break 0x80100 + break 0x80100 + break 0x80100 ;; } IVT_END(Data_Nested_TLB) From owner-p4-projects@FreeBSD.ORG Tue Apr 22 11:30:25 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1BF5537B401; Tue, 22 Apr 2003 11:30:24 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 737DB37B405 for ; Tue, 22 Apr 2003 11:30:23 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8E4943FAF for ; Tue, 22 Apr 2003 11:30:20 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MIUK0U068663 for ; Tue, 22 Apr 2003 11:30:20 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MIUJ8G068650 for perforce@freebsd.org; Tue, 22 Apr 2003 11:30:19 -0700 (PDT) Date: Tue, 22 Apr 2003 11:30:19 -0700 (PDT) Message-Id: <200304221830.h3MIUJ8G068650@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 Subject: PERFORCE change 29410 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 18:30:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=29410 Change 29410 by jhb@jhb_laptop on 2003/04/22 11:30:04 IFC @29409. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/dec_2100_a500.c#5 integrate .. //depot/projects/smpng/sys/alpha/alpha/trap.c#46 integrate .. //depot/projects/smpng/sys/alpha/conf/GENERIC#28 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_machdep.c#13 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_signal.c#17 integrate .. //depot/projects/smpng/sys/compat/linux/linux_signal.c#11 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_signal.c#10 integrate .. //depot/projects/smpng/sys/conf/files#74 integrate .. //depot/projects/smpng/sys/conf/files.sparc64#27 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_state.c#9 integrate .. //depot/projects/smpng/sys/crypto/blowfish/arch/i386/bf_enc_586.S#2 integrate .. //depot/projects/smpng/sys/crypto/des/arch/i386/des_enc.S#2 integrate .. //depot/projects/smpng/sys/dev/awi/am79c930.c#3 integrate .. //depot/projects/smpng/sys/dev/firewire/fwdev.c#7 integrate .. //depot/projects/smpng/sys/dev/hea/eni_transmit.c#5 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10k1.c#11 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#16 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/buffer.c#7 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_fmt.c#7 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_rate.c#6 integrate .. //depot/projects/smpng/sys/dev/tx/if_tx.c#9 integrate .. //depot/projects/smpng/sys/dev/tx/if_txreg.h#3 integrate .. //depot/projects/smpng/sys/dev/tx/if_txvar.h#6 integrate .. //depot/projects/smpng/sys/dev/usb/if_axe.c#1 branch .. //depot/projects/smpng/sys/dev/usb/if_axereg.h#1 branch .. //depot/projects/smpng/sys/dev/usb/usbdevs#29 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs.h#30 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs_data.h#30 integrate .. //depot/projects/smpng/sys/geom/geom_bsd.c#27 integrate .. //depot/projects/smpng/sys/geom/geom_slice.c#18 integrate .. //depot/projects/smpng/sys/geom/geom_slice.h#11 integrate .. //depot/projects/smpng/sys/geom/geom_sunlabel.c#18 integrate .. //depot/projects/smpng/sys/geom/geom_sunlabel_enc.c#1 branch .. //depot/projects/smpng/sys/gnu/dev/sound/pci/emu10k1-ac97.h#1 branch .. //depot/projects/smpng/sys/i386/conf/GENERIC#35 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#53 integrate .. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#34 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_signal.c#9 integrate .. //depot/projects/smpng/sys/i386/include/cpufunc.h#22 integrate .. //depot/projects/smpng/sys/i386/linux/linux_machdep.c#22 integrate .. //depot/projects/smpng/sys/i386/svr4/svr4_locore.s#2 integrate .. //depot/projects/smpng/sys/ia64/conf/GENERIC#32 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_misc.c#5 integrate .. //depot/projects/smpng/sys/ia64/ia64/pmap.c#43 integrate .. //depot/projects/smpng/sys/ia64/ia64/trap.c#45 integrate .. //depot/projects/smpng/sys/ia64/include/pmap.h#12 integrate .. //depot/projects/smpng/sys/kern/kern_exit.c#62 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#60 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#27 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#22 integrate .. //depot/projects/smpng/sys/kern/uipc_jumbo.c#6 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#43 integrate .. //depot/projects/smpng/sys/kern/vfs_cluster.c#23 integrate .. //depot/projects/smpng/sys/modules/Makefile#49 integrate .. //depot/projects/smpng/sys/modules/axe/Makefile#1 branch .. //depot/projects/smpng/sys/modules/netgraph/Makefile#8 integrate .. //depot/projects/smpng/sys/netgraph/ng_fec.c#4 integrate .. //depot/projects/smpng/sys/netinet/tcp_input.c#32 integrate .. //depot/projects/smpng/sys/netinet6/icmp6.c#14 integrate .. //depot/projects/smpng/sys/pc98/conf/GENERIC#32 integrate .. //depot/projects/smpng/sys/pci/if_dc.c#34 integrate .. //depot/projects/smpng/sys/pci/if_pcn.c#16 integrate .. //depot/projects/smpng/sys/pci/if_rl.c#28 integrate .. //depot/projects/smpng/sys/pci/if_sf.c#18 integrate .. //depot/projects/smpng/sys/pci/if_sis.c#24 integrate .. //depot/projects/smpng/sys/pci/if_sk.c#17 integrate .. //depot/projects/smpng/sys/pci/if_ste.c#20 integrate .. //depot/projects/smpng/sys/pci/if_ti.c#26 integrate .. //depot/projects/smpng/sys/pci/if_tl.c#15 integrate .. //depot/projects/smpng/sys/pci/if_vr.c#17 integrate .. //depot/projects/smpng/sys/pci/if_wb.c#16 integrate .. //depot/projects/smpng/sys/pci/if_xl.c#27 integrate .. //depot/projects/smpng/sys/powerpc/conf/GENERIC#16 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/busdma_machdep.c#10 integrate .. //depot/projects/smpng/sys/sparc64/conf/GENERIC#28 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/trap.c#49 integrate .. //depot/projects/smpng/sys/sys/bus.h#9 integrate .. //depot/projects/smpng/sys/sys/kse.h#8 integrate .. //depot/projects/smpng/sys/sys/proc.h#80 integrate .. //depot/projects/smpng/sys/sys/resourcevar.h#12 integrate .. //depot/projects/smpng/sys/sys/sun_disklabel.h#3 integrate .. //depot/projects/smpng/sys/vm/swap_pager.c#24 integrate .. //depot/projects/smpng/sys/vm/swap_pager.h#7 integrate .. //depot/projects/smpng/sys/vm/uma_core.c#29 integrate .. //depot/projects/smpng/sys/vm/vm_fault.c#24 integrate .. //depot/projects/smpng/sys/vm/vm_map.c#33 integrate .. //depot/projects/smpng/sys/vm/vm_object.c#30 integrate .. //depot/projects/smpng/sys/vm/vm_object.h#16 integrate .. //depot/projects/smpng/sys/vm/vm_page.c#35 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.c#26 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/dec_2100_a500.c#5 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/alpha/alpha/dec_2100_a500.c,v 1.12 2002/08/22 19:52:15 peter Exp $ + * $FreeBSD: src/sys/alpha/alpha/dec_2100_a500.c,v 1.13 2003/04/21 16:34:18 obrien Exp $ */ #include "opt_ddb.h" @@ -51,14 +51,14 @@ void dec_2100_a500_init(int); static void dec_2100_a500_cons_init(void); -static void dec_2100_a500_intr_init(void ); +static void dec_2100_a500_intr_init(void); extern int siocnattach(int, int); extern int siogdbattach(int, int); extern int sccnattach(void); void -dec_2100_a500_init(cputype) +dec_2100_a500_init(int cputype) { /* * See if we're a `Sable' or a `Lynx'. @@ -140,7 +140,7 @@ void -dec_2100_a500_intr_init(void ) +dec_2100_a500_intr_init(void) { outb(SLAVE0_ICU, 0); ==== //depot/projects/smpng/sys/alpha/alpha/trap.c#46 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/alpha/alpha/trap.c,v 1.111 2003/04/18 20:19:59 jhb Exp $ */ +/* $FreeBSD: src/sys/alpha/alpha/trap.c,v 1.112 2003/04/22 03:17:41 davidxu Exp $ */ /* $NetBSD: trap.c,v 1.31 1998/03/26 02:21:46 thorpej Exp $ */ /* @@ -298,13 +298,6 @@ td->td_frame = framep; if (td->td_ucred != p->p_ucred) cred_update_thread(td); - PROC_LOCK(p); - if ((p->p_flag & P_WEXIT) && (p->p_singlethread != td)) { - mtx_lock_spin(&sched_lock); - thread_exit(); - /* NOTREACHED */ - } - PROC_UNLOCK(p); } else { sticks = 0; /* XXX bogus -Wuninitialized warning */ KASSERT(cold || td->td_ucred != NULL, ==== //depot/projects/smpng/sys/alpha/conf/GENERIC#28 (text+ko) ==== @@ -18,7 +18,7 @@ # # For hardware specific information check HARDWARE.TXT # -# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.157 2003/03/22 14:18:22 ru Exp $ +# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.159 2003/04/21 16:44:04 simokawa Exp $ machine alpha cpu EV4 @@ -184,5 +184,11 @@ device ums # Mouse # USB Ethernet device aue # ADMtek USB ethernet +device axe # ASIX Electronics USB ethernet device cue # CATC USB ethernet device kue # Kawasaki LSI USB ethernet + +# FireWire support +device firewire # FireWire bus code +device sbp # SCSI over FireWire (Requires scbus and da) +device fwe # Ethernet over FireWire (non-standard!) ==== //depot/projects/smpng/sys/alpha/linux/linux_machdep.c#13 (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/alpha/linux/linux_machdep.c,v 1.28 2003/04/16 20:05:42 jhb Exp $ + * $FreeBSD: src/sys/alpha/linux/linux_machdep.c,v 1.30 2003/04/22 18:23:47 jhb Exp $ */ #include @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include @@ -129,7 +130,6 @@ struct proc *p2; struct thread *td2; int exit_signal; - vm_offset_t start; #ifdef DEBUG if (ldebug(clone)) { @@ -158,10 +158,8 @@ if (!(args->flags & CLONE_FILES)) ff |= RFFDG; - error = 0; - start = 0; - - if ((error = fork1(td, ff, 0, &p2)) != 0) + error = fork1(td, ff, 0, &p2); + if (error) return (error); PROC_LOCK(p2); @@ -181,7 +179,7 @@ */ mtx_lock_spin(&sched_lock); TD_SET_CAN_RUN(td2); - setrunqueue(FIRST_THREAD_IN_PROC(p2)); + setrunqueue(td2); mtx_unlock_spin(&sched_lock); td->td_retval[0] = p2->p_pid; @@ -306,11 +304,7 @@ { int error; l_sigset_t lmask; - sigset_t *bmask; - struct sigsuspend_args bsd; - caddr_t sg; - - sg = stackgap_init(); + sigset_t bmask; #ifdef DEBUG if (ldebug(rt_sigsuspend)) @@ -324,10 +318,8 @@ if (error) return (error); - bmask = stackgap_alloc(&sg, sizeof(sigset_t)); - linux_to_bsd_sigset(&lmask, bmask); - bsd.sigmask = bmask; - return (sigsuspend(td, &bsd)); + linux_to_bsd_sigset(&lmask, &bmask); + return (kern_sigsuspend(td, bmask)); } int ==== //depot/projects/smpng/sys/alpha/osf1/osf1_signal.c#17 (text+ko) ==== @@ -30,7 +30,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/alpha/osf1/osf1_signal.c,v 1.29 2003/03/31 22:49:14 jeff Exp $ + * $FreeBSD: src/sys/alpha/osf1/osf1_signal.c,v 1.30 2003/04/22 18:23:47 jhb Exp $ */ #include "opt_compat.h" @@ -54,6 +54,7 @@ #include #include #include +#include #include #include #include @@ -218,49 +219,29 @@ struct thread *td; struct osf1_sigaction_args *uap; { + struct osf1_sigaction osa; + struct sigaction nbsa, obsa; + struct sigaction *nbsap; int error; - caddr_t sg; - struct osf1_sigaction *nosa, *oosa, tmposa; - struct sigaction *nbsa, *obsa, tmpbsa; - struct sigaction_args sa; - sg = stackgap_init(); - nosa = uap->nsa; - oosa = uap->osa; if (osf1_sigdbg && uap->sigtramp) uprintf("osf1_sigaction: trampoline handler at %p\n", uap->sigtramp); - td->td_md.osf_sigtramp = uap->sigtramp; - if (oosa != NULL) - obsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - else - obsa = NULL; - if (nosa != NULL) { - nbsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - if ((error = copyin(nosa, &tmposa, sizeof(tmposa))) != 0) - return error; - osf1_to_bsd_sigaction(&tmposa, &tmpbsa); - if ((error = copyout(&tmpbsa, nbsa, sizeof(tmpbsa))) != 0) - return error; + td->td_md.osf_sigtramp = uap->sigtramp; + if (uap->nsa != NULL) { + if ((error = copyin(uap->nsa, &osa, sizeof(osa))) != 0) + return (error); + osf1_to_bsd_sigaction(&osa, &nbsa); + nbsap = &nbsa; } else - nbsa = NULL; + nbsap = NULL; + error = kern_sigaction(td, uap->signum, &nbsa, &obsa, 0); - sa.sig = uap->signum; - sa.act = nbsa; - sa.oact = obsa; - - if ((error = sigaction(td, &sa)) != 0) - return error; - - if (oosa != NULL) { - if ((error = copyin(obsa, &tmpbsa, sizeof(tmpbsa))) != 0) - return error; - bsd_to_osf1_sigaction(&tmpbsa, &tmposa); - if ((error = copyout(&tmposa, oosa, sizeof(tmposa))) != 0) - return error; + if (error == 0 && uap->osa != NULL) { + bsd_to_osf1_sigaction(&obsa, &osa); + error = copyout(&osa, uap->osa, sizeof(osa)); } - - return 0; + return (error); } int @@ -268,46 +249,23 @@ register struct thread *td; struct osf1_sigaltstack_args *uap; { + struct osf1_sigaltstack oss; + struct sigaltstack nbss, obss, *nbssp; int error; - caddr_t sg; - struct osf1_sigaltstack *noss, *ooss, tmposs; - struct sigaltstack *nbss, *obss, tmpbss; - struct sigaltstack_args sa; - sg = stackgap_init(); - noss = uap->nss; - ooss = uap->oss; - - if (ooss != NULL) - obss = stackgap_alloc(&sg, sizeof(struct sigaltstack)); - else - obss = NULL; - - if (noss != NULL) { - nbss = stackgap_alloc(&sg, sizeof(struct sigaltstack)); - if ((error = copyin(noss, &tmposs, sizeof(tmposs))) != 0) - return error; - osf1_to_bsd_sigaltstack(&tmposs, &tmpbss); - if ((error = copyout(&tmpbss, nbss, sizeof(tmpbss))) != 0) - return error; + if (uap->nss != NULL) { + if ((error = copyin(uap->nss, &oss, sizeof(oss))) != 0) + return (error); + osf1_to_bsd_sigaltstack(&oss, &nbss); + nbssp = &nbss; } else - nbss = NULL; - - sa.ss = nbss; - sa.oss = obss; - - if ((error = sigaltstack(td, &sa)) != 0) - return error; - - if (obss != NULL) { - if ((error = copyin(obss, &tmpbss, sizeof(tmpbss))) != 0) - return error; - bsd_to_osf1_sigaltstack(&tmpbss, &tmposs); - if ((error = copyout(&tmposs, ooss, sizeof(tmposs))) != 0) - return error; + nbssp = NULL; + error = kern_sigaltstack(td, nbssp, &obss); + if (error == 0 && uap->oss != NULL) { + bsd_to_osf1_sigaltstack(&obss, &oss); + error = copyout(&oss, uap->oss, sizeof(oss)); } - - return 0; + return (error); } int @@ -317,10 +275,6 @@ { struct proc *p; int error, signum; - caddr_t sg; - - p = td->td_proc; - sg = stackgap_init(); signum = OSF1_SIGNO(uap->signum); if (signum <= 0 || signum > OSF1_NSIG) { @@ -337,127 +291,81 @@ * that SIG_HOLD is allowed as * an action. */ - if ((u_long)uap->handler == OSF1_SIG_HOLD) { + if ((u_long)uap->handler == OSF1_SIG_HOLD) { sigset_t mask; - sigset_t *bmask; - struct sigprocmask_args sa; - bmask = stackgap_alloc(&sg, sizeof(sigset_t)); SIGEMPTYSET(mask); SIGADDSET(mask, signum); - sa.how = SIG_BLOCK; - sa.set = bmask; - sa.oset = NULL; - if ((error = copyout(&mask, bmask, sizeof(mask))) != 0) - return (error); - return sigprocmask(td, &sa); + return (kern_sigprocmask(td, SIG_BLOCK, &mask, NULL, + 0)); } /* FALLTHROUGH */ case OSF1_SIGNAL_MASK: { - struct sigaction_args sa_args; - struct sigaction *nbsa, *obsa, sa; + struct sigaction nbsa, obsa; - nbsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - obsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - sa_args.sig = signum; - sa_args.act = nbsa; - sa_args.oact = obsa; - - sa.sa_handler = uap->handler; - SIGEMPTYSET(sa.sa_mask); - sa.sa_flags = 0; + nbsa.sa_handler = uap->handler; + SIGEMPTYSET(nbsa.sa_mask); + nbsa.sa_flags = 0; #if 0 if (signum != SIGALRM) - sa.sa_flags = SA_RESTART; + nbsa.sa_flags = SA_RESTART; #endif - if ((error = copyout(&sa, nbsa, sizeof(sa))) != 0) - return error; - if ((error = sigaction(td, &sa_args)) != 0) { + error = kern_sigaction(td, signum, &nbsa, &obsa, 0); + if (error != 0) { DPRINTF("signal: sigaction failed: %d\n", error); td->td_retval[0] = -1; - return error; + return (error); } - if ((error = copyin(obsa, &sa, sizeof(sa))) != 0) - return error; - td->td_retval[0] = (long)sa.sa_handler; + td->td_retval[0] = (long)obsa.sa_handler; return 0; } case OSF1_SIGHOLD_MASK: { - struct sigprocmask_args sa; sigset_t set; - sigset_t *bset; - bset = stackgap_alloc(&sg, sizeof(sigset_t)); SIGEMPTYSET(set); SIGADDSET(set, signum); - sa.how = SIG_BLOCK; - sa.set = bset; - sa.oset = NULL; - if ((error = copyout(&set, bset, sizeof(set))) != 0) - return (error); - return sigprocmask(td, &sa); + return (kern_sigprocmask(td, SIG_BLOCK, &set, NULL, 0)); } case OSF1_SIGRELSE_MASK: { - struct sigprocmask_args sa; sigset_t set; - sigset_t *bset; - bset = stackgap_alloc(&sg, sizeof(sigset_t)); SIGEMPTYSET(set); SIGADDSET(set, signum); - sa.how = SIG_UNBLOCK; - sa.set = bset; - sa.oset = NULL; - if ((error = copyout(&set, bset, sizeof(set))) != 0) - return (error); - return sigprocmask(td, &sa); + return (kern_sigprocmask(td, SIG_UNBLOCK, &set, NULL, + 0)); } case OSF1_SIGIGNORE_MASK: { - struct sigaction_args sa_args; - struct sigaction *bsa, sa; - - bsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - sa_args.sig = signum; - sa_args.act = bsa; - sa_args.oact = NULL; + struct sigaction sa; sa.sa_handler = SIG_IGN; SIGEMPTYSET(sa.sa_mask); sa.sa_flags = 0; - if ((error = copyout(&sa, bsa, sizeof(sa))) != 0) - return error; - if ((error = sigaction(td, &sa_args)) != 0) { + error = kern_sigaction(td, signum, &sa, NULL, 0); + if (error != 0) DPRINTF(("sigignore: sigaction failed\n")); - return error; - } - return 0; + return (error); } case OSF1_SIGPAUSE_MASK: { - struct sigsuspend_args sa; - sigset_t set; - sigset_t *bmask; + sigset_t mask; - bmask = stackgap_alloc(&sg, sizeof(sigset_t)); + p = td->td_proc; PROC_LOCK(p); - set = td->td_sigmask; + mask = td->td_sigmask; PROC_UNLOCK(p); - SIGDELSET(set, signum); - sa.sigmask = bmask; - if ((error = copyout(&set, bmask, sizeof(set))) != 0) - return (error); - return sigsuspend(td, &sa); + SIGDELSET(mask, signum); + return kern_sigsuspend(td, mask); } default: @@ -473,46 +381,18 @@ syscallarg(osf1_sigset_t *) set; } */ *uap; { - struct proc *p; + osf1_sigset_t oss; + sigset_t obss, nbss; int error; - osf1_sigset_t oss; - sigset_t bss; - p = td->td_proc; - error = 0; - /* Fix the return value first if needed */ - bsd_to_osf1_sigset(&td->td_sigmask, &oss); - td->td_retval[0] = oss; - - osf1_to_bsd_sigset(&uap->mask, &bss); - - PROC_LOCK(p); - - switch (uap->how) { - case OSF1_SIG_BLOCK: - SIGSETOR(td->td_sigmask, bss); - SIG_CANTMASK(td->td_sigmask); - break; - - case OSF1_SIG_UNBLOCK: - SIGSETNAND(td->td_sigmask, bss); - signotify(td); - break; - - case OSF1_SIG_SETMASK: - td->td_sigmask = bss; - SIG_CANTMASK(td->td_sigmask); - signotify(td); - break; - - default: - error = EINVAL; - break; + /* OSF/1 sigprocmask flag values match FreeBSD flag values. */ + osf1_to_bsd_sigset(&uap->mask, &nbss); + error = kern_sigprocmask(td, uap->how, &nbss, &obss, 0); + if (error == 0) { + bsd_to_osf1_sigset(&obss, &oss); + td->td_retval[0] = oss; } - - PROC_UNLOCK(p); - - return error; + return (error); } int @@ -544,22 +424,12 @@ syscallarg(osf1_sigset_t *) ss; } */ *uap; { - int error; - caddr_t sg; osf1_sigset_t oss; sigset_t bss; - sigset_t *bmask; - struct sigsuspend_args sa; - sg = stackgap_init(); - - bmask = stackgap_alloc(&sg, sizeof(sigset_t)); oss = uap->ss; osf1_to_bsd_sigset(&oss, &bss); - sa.sigmask = bmask; - if ((error = copyout(&bss, bmask, sizeof(bss))) != 0) - return (error); - return sigsuspend(td, &sa); + return kern_sigsuspend(td, bss); } int ==== //depot/projects/smpng/sys/compat/linux/linux_signal.c#11 (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/linux/linux_signal.c,v 1.41 2003/04/17 22:07:56 jhb Exp $ + * $FreeBSD: src/sys/compat/linux/linux_signal.c,v 1.42 2003/04/22 18:23:47 jhb Exp $ */ #include @@ -227,40 +227,22 @@ linux_do_sigprocmask(struct thread *td, int how, l_sigset_t *new, l_sigset_t *old) { + sigset_t omask, nmask; + sigset_t *nmaskp; int error; - sigset_t mask; - struct proc *p = td->td_proc; - error = 0; td->td_retval[0] = 0; - PROC_LOCK(p); - if (old != NULL) - bsd_to_linux_sigset(&td->td_sigmask, old); - if (new != NULL) { - linux_to_bsd_sigset(new, &mask); + linux_to_bsd_sigset(new, &nmask); + nmaskp = &nmask; + } else + nmaskp = NULL; - switch (how) { - case LINUX_SIG_BLOCK: - SIGSETOR(td->td_sigmask, mask); - SIG_CANTMASK(td->td_sigmask); - break; - case LINUX_SIG_UNBLOCK: - SIGSETNAND(td->td_sigmask, mask); - signotify(td); - break; - case LINUX_SIG_SETMASK: - td->td_sigmask = mask; - SIG_CANTMASK(td->td_sigmask); - signotify(td); - break; - default: - error = EINVAL; - break; - } - } - PROC_UNLOCK(p); + /* Linux sigprocmask flag values are one less than FreeBSD values. */ + error = kern_sigprocmask(td, how + 1, nmaskp, &omask, 0); + if (error != 0 && old != NULL) + bsd_to_linux_sigset(&omask, old); return (error); } ==== //depot/projects/smpng/sys/compat/svr4/svr4_signal.c#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_signal.c,v 1.26 2003/04/17 22:02:46 jhb Exp $ + * $FreeBSD: src/sys/compat/svr4/svr4_signal.c,v 1.27 2003/04/22 18:23:48 jhb Exp $ */ #include @@ -36,6 +36,7 @@ #include #include #include +#include #include #include @@ -262,61 +263,38 @@ register struct thread *td; struct svr4_sys_sigaction_args *uap; { - struct svr4_sigaction *nisa, *oisa, tmpisa; - struct sigaction *nbsa, *obsa, tmpbsa; - struct sigaction_args sa; - caddr_t sg; + struct svr4_sigaction isa; + struct sigaction nbsa, obsa; + struct sigaction *nbsap; int error; DPRINTF(("@@@ svr4_sys_sigaction(%d, %d, %d)\n", td->td_proc->p_pid, uap->signum, SVR4_SVR42BSD_SIG(uap->signum))); - sg = stackgap_init(); - nisa = uap->nsa; - oisa = uap->osa; - - if (oisa != NULL) - obsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - else - obsa = NULL; - - if (nisa != NULL) { - nbsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - if ((error = copyin(nisa, &tmpisa, sizeof(tmpisa))) != 0) - return error; - svr4_to_bsd_sigaction(&tmpisa, &tmpbsa); - if ((error = copyout(&tmpbsa, nbsa, sizeof(tmpbsa))) != 0) - return error; + if (uap->nsa != NULL) { + if ((error = copyin(uap->nsa, &isa, sizeof(isa))) != 0) + return (error); + svr4_to_bsd_sigaction(&isa, &nbsa); + nbsap = &nbsa; } else - nbsa = NULL; - + nbsap = NULL; #if defined(DEBUG_SVR4) { int i; for (i = 0; i < 4; i++) DPRINTF(("\tssa_mask[%d] = %lx\n", i, - nisa->ssa_mask.bits[i])); - DPRINTF(("\tssa_handler = %p\n", nisa->ssa_handler)); + isa.ssa_mask.bits[i])); + DPRINTF(("\tssa_handler = %p\n", isa.ssa_handler)); } #endif - - sa.sig = SVR4_SVR42BSD_SIG(uap->signum); - sa.act = nbsa; - sa.oact = obsa; - - if ((error = sigaction(td, &sa)) != 0) - return error; - - if (oisa != NULL) { - if ((error = copyin(obsa, &tmpbsa, sizeof(tmpbsa))) != 0) - return error; - bsd_to_svr4_sigaction(&tmpbsa, &tmpisa); - if ((error = copyout(&tmpisa, oisa, sizeof(tmpisa))) != 0) - return error; + error = kern_sigaction(td, SVR4_SVR42BSD_SIG(uap->signum), nbsap, &obsa, + 0); + if (error == 0 && uap->osa != NULL) { + bsd_to_svr4_sigaction(&obsa, &isa); + error = copyout(&isa, uap->osa, sizeof(isa)); } - - return 0; + return (error); } int @@ -324,47 +302,23 @@ register struct thread *td; struct svr4_sys_sigaltstack_args *uap; { - struct svr4_sigaltstack *nsss, *osss, tmpsss; - struct sigaltstack *nbss, *obss, tmpbss; - struct sigaltstack_args sa; - caddr_t sg; - int error, *retval; + struct svr4_sigaltstack sss; + struct sigaltstack nbss, obss, *nbssp; + int error; - retval = td->td_retval; - sg = stackgap_init(); - nsss = uap->nss; - osss = uap->oss; - - if (osss != NULL) - obss = stackgap_alloc(&sg, sizeof(struct sigaltstack)); - else - obss = NULL; - - if (nsss != NULL) { - nbss = stackgap_alloc(&sg, sizeof(struct sigaltstack)); - if ((error = copyin(nsss, &tmpsss, sizeof(tmpsss))) != 0) - return error; - svr4_to_bsd_sigaltstack(&tmpsss, &tmpbss); - if ((error = copyout(&tmpbss, nbss, sizeof(tmpbss))) != 0) - return error; + if (uap->nss != NULL) { + if ((error = copyin(uap->nss, &sss, sizeof(sss))) != 0) + return (error); + svr4_to_bsd_sigaltstack(&sss, &nbss); + nbssp = &nbss; } else - nbss = NULL; - - sa.ss = nbss; - sa.oss = obss; - - if ((error = sigaltstack(td, &sa)) != 0) - return error; - - if (obss != NULL) { - if ((error = copyin(obss, &tmpbss, sizeof(tmpbss))) != 0) - return error; - bsd_to_svr4_sigaltstack(&tmpbss, &tmpsss); - if ((error = copyout(&tmpsss, osss, sizeof(tmpsss))) != 0) - return error; + nbssp = NULL; + error = kern_sigaltstack(td, nbssp, &obss); + if (error == 0 && uap->oss != NULL) { + bsd_to_svr4_sigaltstack(&obss, &sss); + error = copyout(&sss, uap->oss, sizeof(sss)); } - - return 0; + return (error); } /* @@ -375,11 +329,12 @@ register struct thread *td; struct svr4_sys_signal_args *uap; { + struct proc *p; int signum; - int error, *retval = td->td_retval; - caddr_t sg = stackgap_init(); + int error; - DPRINTF(("@@@ svr4_sys_signal(%d)\n", td->td_proc->p_pid)); + p = td->td_proc; + DPRINTF(("@@@ svr4_sys_signal(%d)\n", p->p_pid)); signum = SVR4_SVR42BSD_SIG(SVR4_SIGNO(uap->signum)); if (signum <= 0 || signum > SVR4_NSIG) @@ -393,99 +348,66 @@ case SVR4_SIGNAL_MASK: { - struct sigaction_args sa_args; - struct sigaction *nbsa, *obsa, sa; + struct sigaction nbsa, obsa; - nbsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - obsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - sa_args.sig = signum; - sa_args.act = nbsa; - sa_args.oact = obsa; - - sa.sa_handler = (sig_t) uap->handler; - SIGEMPTYSET(sa.sa_mask); - sa.sa_flags = 0; - + nbsa.sa_handler = (sig_t) uap->handler; + SIGEMPTYSET(nbsa.sa_mask); + nbsa.sa_flags = 0; if (signum != SIGALRM) - sa.sa_flags = SA_RESTART; - - if ((error = copyout(&sa, nbsa, sizeof(sa))) != 0) - return error; - if ((error = sigaction(td, &sa_args)) != 0) { + nbsa.sa_flags = SA_RESTART; + error = kern_sigaction(td, signum, &nbsa, &obsa, 0); + if (error != 0) { DPRINTF(("signal: sigaction failed: %d\n", error)); - *retval = (int)SVR4_SIG_ERR; - return error; + td->td_retval[0] = (int)SVR4_SIG_ERR; + return (error); } - if ((error = copyin(obsa, &sa, sizeof(sa))) != 0) - return error; - *retval = (int)sa.sa_handler; - return 0; + td->td_retval[0] = (int)obsa.sa_handler; + return (0); } case SVR4_SIGHOLD_MASK: sighold: { - struct sigprocmask_args sa; - sigset_t *set; + sigset_t set; - set = stackgap_alloc(&sg, sizeof(sigset_t)); - SIGEMPTYSET(*set); - SIGADDSET(*set, signum); - sa.how = SIG_BLOCK; - sa.set = set; - sa.oset = NULL; - return sigprocmask(td, &sa); + SIGEMPTYSET(set); + SIGADDSET(set, signum); + return (kern_sigprocmask(td, SIG_BLOCK, &set, NULL, 0)); } case SVR4_SIGRELSE_MASK: { - struct sigprocmask_args sa; - sigset_t *set; + sigset_t set; - set = stackgap_alloc(&sg, sizeof(sigset_t)); - SIGEMPTYSET(*set); - SIGADDSET(*set, signum); - sa.how = SIG_UNBLOCK; - sa.set = set; - sa.oset = NULL; - return sigprocmask(td, &sa); + SIGEMPTYSET(set); + SIGADDSET(set, signum); + return (kern_sigprocmask(td, SIG_UNBLOCK, &set, NULL, + 0)); } case SVR4_SIGIGNORE_MASK: { - struct sigaction_args sa_args; - struct sigaction *bsa, sa; - - bsa = stackgap_alloc(&sg, sizeof(struct sigaction)); - sa_args.sig = signum; - sa_args.act = bsa; - sa_args.oact = NULL; + struct sigaction sa; sa.sa_handler = SIG_IGN; SIGEMPTYSET(sa.sa_mask); sa.sa_flags = 0; - if ((error = copyout(&sa, bsa, sizeof(sa))) != 0) - return error; - if ((error = sigaction(td, &sa_args)) != 0) { + error = kern_sigaction(td, signum, &sa, NULL, 0); + if (error != 0) DPRINTF(("sigignore: sigaction failed\n")); - return error; - } - return 0; + return (error); } case SVR4_SIGPAUSE_MASK: { - struct sigsuspend_args sa; - sigset_t *set; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Apr 22 13:14:45 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B726B37B404; Tue, 22 Apr 2003 13:14:44 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7CBFE37B401 for ; Tue, 22 Apr 2003 13:14:44 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF4E443FE9 for ; Tue, 22 Apr 2003 13:14:43 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MKEh0U052109 for ; Tue, 22 Apr 2003 13:14:43 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MKEho7052099 for perforce@freebsd.org; Tue, 22 Apr 2003 13:14:43 -0700 (PDT) Date: Tue, 22 Apr 2003 13:14:43 -0700 (PDT) Message-Id: <200304222014.h3MKEho7052099@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 Subject: PERFORCE change 29426 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 20:14:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=29426 Change 29426 by jhb@jhb_laptop on 2003/04/22 13:14:36 IFC @29424 (loop back proc locking). Affected files ... .. //depot/projects/smpng/sys/dev/vinum/vinumdaemon.c#6 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_ctl.c#18 integrate .. //depot/projects/smpng/sys/geom/geom_ctl.c#8 integrate .. //depot/projects/smpng/sys/geom/geom_ctl.h#3 integrate .. //depot/projects/smpng/sys/i386/linux/linux_ptrace.c#7 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#28 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#7 integrate .. //depot/projects/smpng/sys/kern/sys_process.c#27 integrate .. //depot/projects/smpng/sys/sys/proc.h#81 integrate .. //depot/projects/smpng/sys/vm/vm_fault.c#25 integrate .. //depot/projects/smpng/sys/vm/vm_glue.c#23 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.c#27 integrate Differences ... ==== //depot/projects/smpng/sys/dev/vinum/vinumdaemon.c#6 (text+ko) ==== @@ -35,7 +35,7 @@ * advised of the possibility of such damage. * * $Id: vinumdaemon.c,v 1.8 2000/01/03 05:22:03 grog Exp grog $ - * $FreeBSD: src/sys/dev/vinum/vinumdaemon.c,v 1.24 2003/01/03 05:57:34 phk Exp $ + * $FreeBSD: src/sys/dev/vinum/vinumdaemon.c,v 1.25 2003/04/22 19:45:26 jhb Exp $ */ #include @@ -71,10 +71,10 @@ PROC_LOCK(curproc); curproc->p_flag |= P_SYSTEM; /* we're a system process */ - PROC_UNLOCK(curproc); mtx_lock_spin(&sched_lock); curproc->p_sflag |= PS_INMEM; mtx_unlock_spin(&sched_lock); + PROC_UNLOCK(curproc); daemon_save_config(); /* start by saving the configuration */ daemonpid = curproc->p_pid; /* mark our territory */ while (1) { ==== //depot/projects/smpng/sys/fs/procfs/procfs_ctl.c#18 (text+ko) ==== @@ -38,7 +38,7 @@ * * From: * $Id: procfs_ctl.c,v 3.2 1993/12/15 09:40:17 jsp Exp $ - * $FreeBSD: src/sys/fs/procfs/procfs_ctl.c,v 1.49 2003/04/17 22:14:30 jhb Exp $ + * $FreeBSD: src/sys/fs/procfs/procfs_ctl.c,v 1.50 2003/04/22 20:00:25 jhb Exp $ */ #include @@ -144,9 +144,7 @@ * Stop the target. */ p->p_flag |= P_TRACED; - mtx_lock_spin(&sched_lock); faultin(p); - mtx_unlock_spin(&sched_lock); p->p_xstat = 0; /* XXX ? */ if (p->p_pptr != td->td_proc) { p->p_oppid = p->p_pptr->p_pid; ==== //depot/projects/smpng/sys/geom/geom_ctl.c#8 (text+ko) ==== @@ -32,7 +32,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/geom/geom_ctl.c,v 1.14 2003/04/03 11:19:24 phk Exp $ + * $FreeBSD: src/sys/geom/geom_ctl.c,v 1.15 2003/04/22 19:42:05 phk Exp $ */ #include "opt_geom.h" @@ -151,13 +151,8 @@ !useracc(ap[i].value, ap[i].len, ap[i].flag & GCTL_PARAM_RW)) error = gctl_error(req, "no access to param data"); - if (ap[i].name == NULL) { - if (req->reqt->meta) - continue; - error = gctl_error(req, - "request does not take metadata arguments"); + if (error) break; - } p = NULL; if (ap[i].nlen < 1 || ap[i].nlen > SPECNAMELEN) { error = gctl_error(req, "wrong param name length"); @@ -205,10 +200,7 @@ } for (i = 0; i < req->narg; i++) { ap = &req->arg[i]; - if (ap->name != NULL) - printf(" param:\t\"%s\"", ap->name); - else - printf(" meta:\t@%jd", (intmax_t)ap->offset); + printf(" param:\t\"%s\"", ap->name); printf(" [%s%s%d] = ", ap->flag & GCTL_PARAM_RD ? "R" : "", ap->flag & GCTL_PARAM_WR ? "W" : "", ==== //depot/projects/smpng/sys/geom/geom_ctl.h#3 (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/geom/geom_ctl.h,v 1.2 2003/03/27 14:34:59 phk Exp $ + * $FreeBSD: src/sys/geom/geom_ctl.h,v 1.3 2003/04/22 19:42:05 phk Exp $ */ #ifndef _GEOM_GEOM_CTL_H_ @@ -50,8 +50,6 @@ GCTL_DESTROY_PROVIDER, GCTL_INSERT_GEOM, GCTL_ELIMINATE_GEOM, - GCTL_WRITE_META, - GCTL_READ_META }; #ifdef GCTL_TABLE @@ -61,24 +59,21 @@ int provider; int consumer; int params; - int meta; char *name; enum gctl_request request; } gcrt[] = { -/* Cl Ge Pr Co Pa Me Name Request */ - { 1, 0, 1, 0, 1, 0, "create geom", GCTL_CREATE_GEOM }, - { 0, 1, 0, 0, 1, 0, "destroy geom", GCTL_DESTROY_GEOM }, - { 0, 1, 1, 0, 1, 0, "attach", GCTL_ATTACH }, - { 0, 1, 1, 0, 1, 0, "detach", GCTL_DETACH }, - { 0, 1, 0, 0, 1, 0, "create provider", GCTL_CREATE_PROVIDER }, - { 0, 1, 1, 0, 1, 0, "destroy provider", GCTL_DESTROY_PROVIDER }, - { 1, 1, 1, 0, 1, 0, "insert geom", GCTL_INSERT_GEOM }, - { 0, 1, 0, 0, 1, 0, "eliminate geom", GCTL_ELIMINATE_GEOM }, - { 0, 1, 0, 0, 1, 1, "write meta", GCTL_WRITE_META }, - { 0, 1, 0, 0, 1, 1, "read meta", GCTL_READ_META }, +/* Cl Ge Pr Co Pa Name Request */ + { 1, 0, 1, 0, 1, "create geom", GCTL_CREATE_GEOM }, + { 0, 1, 0, 0, 1, "destroy geom", GCTL_DESTROY_GEOM }, + { 0, 1, 1, 0, 1, "attach", GCTL_ATTACH }, + { 0, 1, 1, 0, 1, "detach", GCTL_DETACH }, + { 0, 1, 0, 0, 1, "create provider", GCTL_CREATE_PROVIDER }, + { 0, 1, 1, 0, 1, "destroy provider", GCTL_DESTROY_PROVIDER }, + { 1, 1, 1, 0, 1, "insert geom", GCTL_INSERT_GEOM }, + { 0, 1, 0, 0, 1, "eliminate geom", GCTL_ELIMINATE_GEOM }, /* Terminator entry */ - { 1, 1, 1, 1, 1, 1, "*INVALID*", GCTL_INVALID_REQUEST } + { 1, 1, 1, 1, 1, "*INVALID*", GCTL_INVALID_REQUEST } }; #endif /* GCTL_TABLE */ ==== //depot/projects/smpng/sys/i386/linux/linux_ptrace.c#7 (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/i386/linux/linux_ptrace.c,v 1.10 2003/04/15 16:29:39 jhb Exp $ + * $FreeBSD: src/sys/i386/linux/linux_ptrace.c,v 1.11 2003/04/22 20:01:56 jhb Exp $ */ #include "opt_cpu.h" @@ -222,31 +222,23 @@ static int linux_proc_read_fpxregs(struct thread *td, struct linux_pt_fpxreg *fpxregs) { - int error; - error = 0; - mtx_lock_spin(&sched_lock); + PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); if (cpu_fxsr == 0 || (td->td_proc->p_sflag & PS_INMEM) == 0) - error = EIO; - else - bcopy(&td->td_pcb->pcb_save.sv_xmm, fpxregs, sizeof(*fpxregs)); - mtx_unlock_spin(&sched_lock); - return (error); + return (EIO); + bcopy(&td->td_pcb->pcb_save.sv_xmm, fpxregs, sizeof(*fpxregs)); + return (0); } static int linux_proc_write_fpxregs(struct thread *td, struct linux_pt_fpxreg *fpxregs) { - int error; - error = 0; - mtx_lock_spin(&sched_lock); + PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); if (cpu_fxsr == 0 || (td->td_proc->p_sflag & PS_INMEM) == 0) - error = EIO; - else - bcopy(fpxregs, &td->td_pcb->pcb_save.sv_xmm, sizeof(*fpxregs)); - mtx_unlock_spin(&sched_lock); - return (error); + return (EIO); + bcopy(fpxregs, &td->td_pcb->pcb_save.sv_xmm, sizeof(*fpxregs)); + return (0); } #endif ==== //depot/projects/smpng/sys/kern/kern_thread.c#28 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * DAMAGE. * - * $FreeBSD: src/sys/kern/kern_thread.c,v 1.121 2003/04/21 14:42:04 davidxu Exp $ + * $FreeBSD: src/sys/kern/kern_thread.c,v 1.122 2003/04/22 19:47:55 jhb Exp $ */ #include @@ -1311,7 +1311,7 @@ * Purge a ksegrp resource. When a ksegrp is preparing to * exit, it calls this function. */ -void +static void kse_purge_group(struct thread *td) { struct ksegrp *kg; @@ -1336,14 +1336,13 @@ * exit, it calls kse_purge to release any extra KSE resources in * the process. */ -void +static void kse_purge(struct proc *p, struct thread *td) { struct ksegrp *kg; struct kse *ke; KASSERT(p->p_numthreads == 1, ("bad thread number")); - mtx_lock_spin(&sched_lock); while ((kg = TAILQ_FIRST(&p->p_ksegrps)) != NULL) { TAILQ_REMOVE(&p->p_ksegrps, kg, kg_ksegrp); p->p_numksegrps--; @@ -1373,7 +1372,6 @@ } TAILQ_INSERT_HEAD(&p->p_ksegrps, td->td_ksegrp, kg_ksegrp); p->p_numksegrps++; - mtx_unlock_spin(&sched_lock); } /* @@ -1969,12 +1967,12 @@ * and stays there. */ thread_suspend_one(td); - PROC_UNLOCK(p); if (P_SHOULDSTOP(p) == P_STOPPED_SINGLE) { if (p->p_numthreads == p->p_suspcount) { thread_unsuspend_one(p->p_singlethread); } } + PROC_UNLOCK(p); p->p_stats->p_ru.ru_nivcsw++; mi_switch(); mtx_unlock_spin(&sched_lock); ==== //depot/projects/smpng/sys/kern/sched_ule.c#7 (text+ko) ==== @@ -23,7 +23,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/kern/sched_ule.c,v 1.29 2003/04/18 05:24:10 jeff Exp $ + * $FreeBSD: src/sys/kern/sched_ule.c,v 1.30 2003/04/22 19:48:25 jhb Exp $ */ #include @@ -1138,7 +1138,9 @@ pctcpu = (FSCALE * ((FSCALE * rtick)/realstathz)) >> FSHIFT; } + mtx_lock_spin(&sched_lock); ke->ke_proc->p_swtime = ke->ke_ltick - ke->ke_ftick; + mtx_unlock_spin(&sched_lock); return (pctcpu); } ==== //depot/projects/smpng/sys/kern/sys_process.c#27 (text+ko) ==== @@ -28,7 +28,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/kern/sys_process.c,v 1.106 2003/04/17 22:31:54 jhb Exp $ + * $FreeBSD: src/sys/kern/sys_process.c,v 1.107 2003/04/22 20:01:56 jhb Exp $ */ #include @@ -82,12 +82,11 @@ #define PROC_ACTION(action) do { \ int error; \ \ - mtx_lock_spin(&sched_lock); \ + PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); \ if ((td->td_proc->p_sflag & PS_INMEM) == 0) \ error = EIO; \ else \ error = (action); \ - mtx_unlock_spin(&sched_lock); \ return (error); \ } while(0) ==== //depot/projects/smpng/sys/sys/proc.h#81 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)proc.h 8.15 (Berkeley) 5/19/95 - * $FreeBSD: src/sys/sys/proc.h,v 1.319 2003/04/21 07:02:37 davidxu Exp $ + * $FreeBSD: src/sys/sys/proc.h,v 1.320 2003/04/22 20:00:25 jhb Exp $ */ #ifndef _SYS_PROC_H_ @@ -666,8 +666,8 @@ #define PS_ALRMPEND 0x00020 /* Pending SIGVTALRM needs to be posted. */ #define PS_PROFPEND 0x00040 /* Pending SIGPROF needs to be posted. */ #define PS_SWAPINREQ 0x00100 /* Swapin request due to wakeup. */ -#define PS_SWAPPING 0x00200 /* Process is being swapped. */ -#define PS_SWAPPINGIN 0x04000 /* Swapin in progress. */ +#define PS_SWAPPINGOUT 0x00200 /* Process is being swapped out. */ +#define PS_SWAPPINGIN 0x04000 /* Process is being swapped in. */ #define PS_MACPEND 0x08000 /* Ast()-based MAC event pending. */ /* used only in legacy conversion code */ @@ -775,11 +775,9 @@ } while (0) #define _PHOLD(p) do { \ PROC_LOCK_ASSERT((p), MA_OWNED); \ - if ((p)->p_lock++ == 0) { \ - mtx_lock_spin(&sched_lock); \ + (p)->p_lock++; \ + if (((p)->p_sflag & PS_INMEM) == 0) \ faultin((p)); \ - mtx_unlock_spin(&sched_lock); \ - } \ } while (0) #define PRELE(p) do { \ ==== //depot/projects/smpng/sys/vm/vm_fault.c#25 (text+ko) ==== @@ -66,7 +66,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $FreeBSD: src/sys/vm/vm_fault.c,v 1.166 2003/04/20 19:25:28 alc Exp $ + * $FreeBSD: src/sys/vm/vm_fault.c,v 1.167 2003/04/22 20:01:56 jhb Exp $ */ /* @@ -917,15 +917,16 @@ } vm_page_wakeup(fs.m); vm_page_unlock_queues(); - mtx_lock_spin(&sched_lock); - if (curproc && (curproc->p_sflag & PS_INMEM) && curproc->p_stats) { + + PROC_LOCK(curproc); + if ((curproc->p_sflag & PS_INMEM) && curproc->p_stats) { if (hardfault) { curproc->p_stats->p_ru.ru_majflt++; } else { curproc->p_stats->p_ru.ru_minflt++; } } - mtx_unlock_spin(&sched_lock); + PROC_UNLOCK(curproc); /* * Unlock everything, and return ==== //depot/projects/smpng/sys/vm/vm_glue.c#23 (text+ko) ==== @@ -59,7 +59,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $FreeBSD: src/sys/vm/vm_glue.c,v 1.165 2003/04/17 15:44:22 trhodes Exp $ + * $FreeBSD: src/sys/vm/vm_glue.c,v 1.166 2003/04/22 20:00:26 jhb Exp $ */ #include "opt_vm.h" @@ -355,14 +355,12 @@ sx_slock(&allproc_lock); FOREACH_PROC_IN_SYSTEM(p) { PROC_LOCK(p); - mtx_lock_spin(&sched_lock); object = p->p_upages_obj; if (object != NULL && swap_pager_isswapped(p->p_upages_obj, devidx)) { sx_sunlock(&allproc_lock); faultin(p); - mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); vm_page_lock_queues(); TAILQ_FOREACH(m, &object->memq, listq) @@ -373,7 +371,6 @@ goto retry; } - mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); } sx_sunlock(&allproc_lock); @@ -516,51 +513,49 @@ faultin(p) struct proc *p; { + struct thread *td; GIANT_REQUIRED; PROC_LOCK_ASSERT(p, MA_OWNED); - mtx_assert(&sched_lock, MA_OWNED); #ifdef NO_SWAPPING if ((p->p_sflag & PS_INMEM) == 0) panic("faultin: proc swapped out with NO_SWAPPING!"); #else - if ((p->p_sflag & PS_INMEM) == 0) { - struct thread *td; - - ++p->p_lock; + /* + * If another process is swapping in this process, + * just wait until it finishes. + */ + if (p->p_sflag & PS_SWAPPINGIN) + msleep(&p->p_sflag, &p->p_mtx, PVM, "faultin", 0); + else if ((p->p_sflag & PS_INMEM) == 0) { /* - * If another process is swapping in this process, - * just wait until it finishes. + * Don't let another thread swap process p out while we are + * busy swapping it in. */ - if (p->p_sflag & PS_SWAPPINGIN) { - mtx_unlock_spin(&sched_lock); - msleep(&p->p_sflag, &p->p_mtx, PVM, "faultin", 0); - mtx_lock_spin(&sched_lock); - --p->p_lock; - return; - } - + ++p->p_lock; + mtx_lock_spin(&sched_lock); p->p_sflag |= PS_SWAPPINGIN; mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); vm_proc_swapin(p); - FOREACH_THREAD_IN_PROC (p, td) { + FOREACH_THREAD_IN_PROC(p, td) pmap_swapin_thread(td); - TD_CLR_SWAPPED(td); - } PROC_LOCK(p); mtx_lock_spin(&sched_lock); p->p_sflag &= ~PS_SWAPPINGIN; p->p_sflag |= PS_INMEM; - FOREACH_THREAD_IN_PROC (p, td) + FOREACH_THREAD_IN_PROC(p, td) { + TD_CLR_SWAPPED(td); if (TD_CAN_RUN(td)) setrunnable(td); + } + mtx_unlock_spin(&sched_lock); wakeup(&p->p_sflag); - /* undo the effect of setting SLOCK above */ + /* Allow other threads to swap p out now. */ --p->p_lock; } #endif @@ -600,7 +595,7 @@ sx_slock(&allproc_lock); FOREACH_PROC_IN_SYSTEM(p) { struct ksegrp *kg; - if (p->p_sflag & (PS_INMEM | PS_SWAPPING | PS_SWAPPINGIN)) { + if (p->p_sflag & (PS_INMEM | PS_SWAPPINGOUT | PS_SWAPPINGIN)) { continue; } mtx_lock_spin(&sched_lock); @@ -641,20 +636,20 @@ goto loop; } PROC_LOCK(p); - mtx_lock_spin(&sched_lock); /* * Another process may be bringing or may have already * brought this process in while we traverse all threads. * Or, this process may even be being swapped out again. */ - if (p->p_sflag & (PS_INMEM|PS_SWAPPING|PS_SWAPPINGIN)) { - mtx_unlock_spin(&sched_lock); + if (p->p_sflag & (PS_INMEM | PS_SWAPPINGOUT | PS_SWAPPINGIN)) { PROC_UNLOCK(p); goto loop; } + mtx_lock_spin(&sched_lock); p->p_sflag &= ~PS_SWAPINREQ; + mtx_unlock_spin(&sched_lock); /* * We would like to bring someone in. (only if there is space). @@ -662,6 +657,7 @@ */ faultin(p); PROC_UNLOCK(p); + mtx_lock_spin(&sched_lock); p->p_swtime = 0; mtx_unlock_spin(&sched_lock); goto loop; @@ -768,10 +764,10 @@ * skipped because of the if statement above checking * for P_SYSTEM */ + if ((p->p_sflag & (PS_INMEM|PS_SWAPPINGOUT|PS_SWAPPINGIN)) != PS_INMEM) + goto nextproc2; + mtx_lock_spin(&sched_lock); - if ((p->p_sflag & (PS_INMEM|PS_SWAPPING|PS_SWAPPINGIN)) != PS_INMEM) - goto nextproc; - switch (p->p_state) { default: /* Don't swap out processes in any sort @@ -832,12 +828,8 @@ (minslptime > swap_idle_threshold2))) { swapout(p); didswap++; - - /* - * swapout() unlocks a proc lock. This is - * ugly, but avoids superfluous lock. - */ mtx_unlock_spin(&sched_lock); + PROC_UNLOCK(p); vm_map_unlock(&vm->vm_map); vmspace_free(vm); sx_sunlock(&allproc_lock); @@ -879,7 +871,7 @@ * by now. Assuming that there is only one pageout daemon thread, * this process should still be in memory. */ - KASSERT((p->p_sflag & (PS_INMEM|PS_SWAPPING|PS_SWAPPINGIN)) == PS_INMEM, + KASSERT((p->p_sflag & (PS_INMEM|PS_SWAPPINGOUT|PS_SWAPPINGIN)) == PS_INMEM, ("swapout: lost a swapout race?")); #if defined(INVARIANTS) @@ -900,18 +892,20 @@ */ p->p_vmspace->vm_swrss = vmspace_resident_count(p->p_vmspace); + p->p_sflag &= ~PS_INMEM; + p->p_sflag |= PS_SWAPPINGOUT; PROC_UNLOCK(p); - p->p_sflag &= ~PS_INMEM; - p->p_sflag |= PS_SWAPPING; + FOREACH_THREAD_IN_PROC(p, td) + TD_SET_SWAPPED(td); mtx_unlock_spin(&sched_lock); vm_proc_swapout(p); - FOREACH_THREAD_IN_PROC(p, td) { + FOREACH_THREAD_IN_PROC(p, td) pmap_swapout_thread(td); - TD_SET_SWAPPED(td); - } + + PROC_LOCK(p); mtx_lock_spin(&sched_lock); - p->p_sflag &= ~PS_SWAPPING; + p->p_sflag &= ~PS_SWAPPINGOUT; p->p_swtime = 0; } #endif /* !NO_SWAPPING */ ==== //depot/projects/smpng/sys/vm/vm_pageout.c#27 (text+ko) ==== @@ -65,7 +65,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $FreeBSD: src/sys/vm/vm_pageout.c,v 1.230 2003/04/20 20:37:14 alc Exp $ + * $FreeBSD: src/sys/vm/vm_pageout.c,v 1.231 2003/04/22 20:03:08 jhb Exp $ */ /* @@ -1543,7 +1543,9 @@ * if this is a system process or if we have already * looked at this process, skip it. */ + PROC_LOCK(p); if (p->p_flag & (P_SYSTEM | P_WEXIT)) { + PROC_UNLOCK(p); continue; } /* @@ -1560,8 +1562,9 @@ break; } } + mtx_unlock_spin(&sched_lock); if (breakout) { - mtx_unlock_spin(&sched_lock); + PROC_UNLOCK(p); continue; } /* @@ -1578,7 +1581,7 @@ */ if ((p->p_sflag & PS_INMEM) == 0) limit = 0; /* XXX */ - mtx_unlock_spin(&sched_lock); + PROC_UNLOCK(p); size = vmspace_resident_count(p->p_vmspace); if (limit >= 0 && size >= limit) { From owner-p4-projects@FreeBSD.ORG Tue Apr 22 13:33:11 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7F5CF37B405; Tue, 22 Apr 2003 13:33:10 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 33FA737B404 for ; Tue, 22 Apr 2003 13:33:10 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B6EC243FCB for ; Tue, 22 Apr 2003 13:33:09 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MKX90U065554 for ; Tue, 22 Apr 2003 13:33:09 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MKX9ca065546 for perforce@freebsd.org; Tue, 22 Apr 2003 13:33:09 -0700 (PDT) Date: Tue, 22 Apr 2003 13:33:09 -0700 (PDT) Message-Id: <200304222033.h3MKX9ca065546@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 Subject: PERFORCE change 29432 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 20:33:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=29432 Change 29432 by marcel@marcel_nfs on 2003/04/22 13:32:37 Fix a general exception caused by not having flushrs as the first instruction in an instruction group. This is the result of the fall through without ending the bundle with a stop. The stop immediately after the alloc was supposed to handle the dependency between the alloc and the flushrs, but it did not take into account the added requirement of flushrs. There is no stop required between the alloc and the add. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/context.s#12 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/context.s#12 (text+ko) ==== @@ -168,11 +168,11 @@ */ ENTRY(savectx__,1) -{ .mmi +{ .mib alloc r16=ar.pfs,1,1,0,0 - ;; add r33=0,r0 nop 0 + ;; } /* FALLTHROUGH */ From owner-p4-projects@FreeBSD.ORG Tue Apr 22 13:54:45 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 10E7437B404; Tue, 22 Apr 2003 13:54:45 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AE9BF37B401 for ; Tue, 22 Apr 2003 13:54:44 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C38B443FAF for ; Tue, 22 Apr 2003 13:54:42 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MKsg0U080973 for ; Tue, 22 Apr 2003 13:54:42 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MKsbox080906 for perforce@freebsd.org; Tue, 22 Apr 2003 13:54:37 -0700 (PDT) Date: Tue, 22 Apr 2003 13:54:37 -0700 (PDT) Message-Id: <200304222054.h3MKsbox080906@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29436 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 20:54:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=29436 Change 29436 by peter@peter_overcee on 2003/04/22 13:53:37 IFC @29433 Affected files ... .. //depot/projects/hammer/MAINTAINERS#6 integrate .. //depot/projects/hammer/Makefile.inc1#11 integrate .. //depot/projects/hammer/bin/cp/cp.c#6 integrate .. //depot/projects/hammer/bin/echo/echo.1#2 integrate .. //depot/projects/hammer/bin/ps/keyword.c#7 integrate .. //depot/projects/hammer/bin/ps/print.c#7 integrate .. //depot/projects/hammer/bin/ps/ps.h#5 integrate .. //depot/projects/hammer/bin/pwd/pwd.1#2 integrate .. //depot/projects/hammer/bin/sh/sh.1#4 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/freebsd.h#3 integrate .. //depot/projects/hammer/contrib/gdtoa/gdtoaimp.h#4 integrate .. //depot/projects/hammer/contrib/smbfs/lib/smb/ctx.c#2 integrate .. //depot/projects/hammer/etc/Makefile#8 integrate .. //depot/projects/hammer/etc/defaults/pccard.conf#7 integrate .. //depot/projects/hammer/etc/defaults/rc.conf#7 integrate .. //depot/projects/hammer/etc/mac.conf#2 integrate .. //depot/projects/hammer/etc/network.subr#1 branch .. //depot/projects/hammer/etc/rc.d/Makefile#6 integrate .. //depot/projects/hammer/etc/rc.d/NETWORKING#4 integrate .. //depot/projects/hammer/etc/rc.d/adjkerntz#2 integrate .. //depot/projects/hammer/etc/rc.d/atm1#3 integrate .. //depot/projects/hammer/etc/rc.d/atm2.sh#3 integrate .. //depot/projects/hammer/etc/rc.d/cleanvar#4 integrate .. //depot/projects/hammer/etc/rc.d/dhclient#2 integrate .. //depot/projects/hammer/etc/rc.d/hostname#1 branch .. //depot/projects/hammer/etc/rc.d/isdnd#5 integrate .. //depot/projects/hammer/etc/rc.d/jail#1 branch .. //depot/projects/hammer/etc/rc.d/kldxref#2 integrate .. //depot/projects/hammer/etc/rc.d/mrouted#3 integrate .. //depot/projects/hammer/etc/rc.d/netif#1 branch .. //depot/projects/hammer/etc/rc.d/network1#5 integrate .. //depot/projects/hammer/etc/rc.d/network2#2 integrate .. //depot/projects/hammer/etc/rc.d/nisdomain#1 branch .. //depot/projects/hammer/etc/rc.d/ppp-user#4 integrate .. //depot/projects/hammer/etc/rc.d/random#3 integrate .. //depot/projects/hammer/etc/rc.d/routed#4 integrate .. //depot/projects/hammer/etc/rc.d/sppp#2 integrate .. //depot/projects/hammer/etc/sendmail/freebsd.mc#3 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/addr2line/Makefile#2 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/ar/Makefile#2 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/as/Makefile.inc0#4 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/ld/Makefile#3 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/nm/Makefile#3 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/objcopy/Makefile#2 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/objdump/Makefile#2 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/ranlib/Makefile#2 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/readelf/Makefile#2 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/size/Makefile#2 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/strings/Makefile#2 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/strip/Makefile#2 integrate .. //depot/projects/hammer/include/Makefile#9 integrate .. //depot/projects/hammer/include/grp.h#4 integrate .. //depot/projects/hammer/include/nss.h#1 branch .. //depot/projects/hammer/include/nsswitch.h#2 integrate .. //depot/projects/hammer/include/pthread.h#3 integrate .. //depot/projects/hammer/include/pwd.h#3 integrate .. //depot/projects/hammer/lib/libalias/Makefile#3 integrate .. //depot/projects/hammer/lib/libatm/atm_addr.c#3 integrate .. //depot/projects/hammer/lib/libc/gdtoa/machdep_ldisQ.c#2 integrate .. //depot/projects/hammer/lib/libc/gdtoa/machdep_ldisx.c#2 integrate .. //depot/projects/hammer/lib/libc/gen/Makefile.inc#8 integrate .. //depot/projects/hammer/lib/libc/gen/getbootfile.c#2 integrate .. //depot/projects/hammer/lib/libc/gen/getgrent.3#3 integrate .. //depot/projects/hammer/lib/libc/gen/getgrent.c#4 integrate .. //depot/projects/hammer/lib/libc/gen/getpwent.3#3 integrate .. //depot/projects/hammer/lib/libc/gen/getpwent.c#3 integrate .. //depot/projects/hammer/lib/libc/include/namespace.h#5 integrate .. //depot/projects/hammer/lib/libc/include/nss_tls.h#1 branch .. //depot/projects/hammer/lib/libc/include/un-namespace.h#4 integrate .. //depot/projects/hammer/lib/libc/locale/wcrtomb.c#3 integrate .. //depot/projects/hammer/lib/libc/net/Makefile.inc#4 integrate .. //depot/projects/hammer/lib/libc/net/nsdispatch.3#3 integrate .. //depot/projects/hammer/lib/libc/net/nsdispatch.c#3 integrate .. //depot/projects/hammer/lib/libc/net/nslexer.l#3 integrate .. //depot/projects/hammer/lib/libc/net/nsparser.y#2 integrate .. //depot/projects/hammer/lib/libc/net/nss_backends.h#1 branch .. //depot/projects/hammer/lib/libc/net/nss_compat.c#1 branch .. //depot/projects/hammer/lib/libc/posix1e/Makefile.inc#6 integrate .. //depot/projects/hammer/lib/libc/posix1e/mac.3#5 integrate .. //depot/projects/hammer/lib/libc/posix1e/mac.conf.5#1 branch .. //depot/projects/hammer/lib/libc/posix1e/mac_prepare.3#2 integrate .. //depot/projects/hammer/lib/libc/stdio/vfprintf.c#10 integrate .. //depot/projects/hammer/lib/libc/stdio/vfwprintf.c#7 integrate .. //depot/projects/hammer/lib/libc/sys/Makefile.inc#7 integrate .. //depot/projects/hammer/lib/libc/sys/jail.2#3 integrate .. //depot/projects/hammer/lib/libc/sys/ntp_adjtime.2#1 branch .. //depot/projects/hammer/lib/libc/sys/ntp_gettime.2#1 branch .. //depot/projects/hammer/lib/libc_r/man/Makefile.inc#4 integrate .. //depot/projects/hammer/lib/libc_r/man/pthread_getconcurrency.3#1 branch .. //depot/projects/hammer/lib/libc_r/uthread/Makefile.inc#4 integrate .. //depot/projects/hammer/lib/libc_r/uthread/uthread_concurrency.c#1 branch .. //depot/projects/hammer/lib/libdevstat/devstat.c#4 integrate .. //depot/projects/hammer/lib/libdisk/Makefile#4 integrate .. //depot/projects/hammer/lib/libdisk/write_sparc64_disk.c#3 integrate .. //depot/projects/hammer/lib/libgeom/geom_ctl.c#2 integrate .. //depot/projects/hammer/lib/libgeom/libgeom.h#3 integrate .. //depot/projects/hammer/lib/libipsec/pfkey_dump.c#2 integrate .. //depot/projects/hammer/lib/libkvm/kvm_proc.c#7 integrate .. //depot/projects/hammer/lib/libncurses/Makefile#9 integrate .. //depot/projects/hammer/lib/libpthread/Makefile#4 integrate .. //depot/projects/hammer/lib/libpthread/arch/i386/i386/ksd.c#1 branch .. //depot/projects/hammer/lib/libpthread/arch/i386/i386/thr_enter_uts.S#4 integrate .. //depot/projects/hammer/lib/libpthread/arch/i386/i386/thr_getcontext.S#1 branch .. //depot/projects/hammer/lib/libpthread/arch/i386/i386/thr_switch.S#3 integrate .. //depot/projects/hammer/lib/libpthread/arch/i386/include/atomic_ops.h#1 branch .. //depot/projects/hammer/lib/libpthread/arch/i386/include/ksd.h#1 branch .. //depot/projects/hammer/lib/libpthread/arch/i386/include/pthread_md.h#1 branch .. //depot/projects/hammer/lib/libpthread/sys/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libpthread/sys/lock.c#1 branch .. //depot/projects/hammer/lib/libpthread/sys/lock.h#1 branch .. //depot/projects/hammer/lib/libpthread/sys/thr_error.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/Makefile.inc#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_acl_aclcheck_fd.c#2 delete .. //depot/projects/hammer/lib/libpthread/thread/thr_aio_suspend.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_attr_get_np.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_attr_init.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_attr_setcreatesuspend_np.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_attr_setguardsize.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_attr_setschedparam.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_attr_setscope.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_autoinit.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_cancel.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_clean.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_close.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_concurrency.c#1 branch .. //depot/projects/hammer/lib/libpthread/thread/thr_cond.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_condattr_init.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_creat.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_create.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_detach.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_exit.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_fcntl.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_find_thread.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_fork.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_fsync.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_gc.c#2 delete .. //depot/projects/hammer/lib/libpthread/thread/thr_getschedparam.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_info.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_init.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_join.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_kern.c#5 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_kill.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_main_np.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_mattr_init.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_msync.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_mutex.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_mutex_prioceiling.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_mutex_protocol.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_nanosleep.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_once.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_open.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_pause.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_poll.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_printf.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_priority_queue.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_private.h#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_pselect.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_read.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_readv.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_resume_np.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_rwlock.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_select.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_self.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sem.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_seterrno.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_setschedparam.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sig.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sigaction.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sigmask.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sigpending.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sigsuspend.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sigwait.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_sleep.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_spec.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_spinlock.c#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_stack.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_suspend_np.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_switch_np.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_system.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_tcdrain.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_wait.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_wait4.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_waitpid.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_write.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_writev.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_yield.c#2 integrate .. //depot/projects/hammer/lib/libstand/zalloc_defs.h#2 integrate .. //depot/projects/hammer/lib/libthr/arch/ia64/Makefile.inc#1 branch .. //depot/projects/hammer/lib/libthr/arch/ia64/ia64/_curthread.c#1 branch .. //depot/projects/hammer/lib/libthr/thread/Makefile.inc#2 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_concurrency.c#1 branch .. //depot/projects/hammer/lib/libthr/thread/thr_create.c#2 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_gc.c#2 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_kern.c#2 integrate .. //depot/projects/hammer/lib/libusbhid/Makefile#3 integrate .. //depot/projects/hammer/lib/libusbhid/data.c#2 integrate .. //depot/projects/hammer/lib/libusbhid/descr.c#2 integrate .. //depot/projects/hammer/lib/libusbhid/libusbhid.h#3 delete .. //depot/projects/hammer/lib/libusbhid/parse.c#3 integrate .. //depot/projects/hammer/lib/libusbhid/usage.c#3 integrate .. //depot/projects/hammer/lib/libusbhid/usbhid.3#2 integrate .. //depot/projects/hammer/lib/libusbhid/usbhid.h#2 integrate .. //depot/projects/hammer/lib/libutil/pw_util.c#5 integrate .. //depot/projects/hammer/libexec/rtld-elf/libmap.c#2 integrate .. //depot/projects/hammer/libexec/tftpd/tftpd.c#3 integrate .. //depot/projects/hammer/release/Makefile#12 integrate .. //depot/projects/hammer/release/alpha/drivers.conf#6 integrate .. //depot/projects/hammer/release/alpha/fixit_crunch.conf#3 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/errata/article.sgml#4 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#11 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#13 integrate .. //depot/projects/hammer/release/i386/dokern.sh#9 integrate .. //depot/projects/hammer/release/i386/drivers.conf#8 integrate .. //depot/projects/hammer/release/i386/fixit_crunch.conf#3 integrate .. //depot/projects/hammer/release/pc98/dokern.sh#8 integrate .. //depot/projects/hammer/release/pc98/drivers.conf#7 integrate .. //depot/projects/hammer/release/pc98/fixit-small_crunch.conf#2 integrate .. //depot/projects/hammer/release/pc98/fixit_crunch.conf#3 integrate .. //depot/projects/hammer/release/scripts/doFS.sh#5 integrate .. //depot/projects/hammer/sbin/atacontrol/Makefile#2 integrate .. //depot/projects/hammer/sbin/atacontrol/atacontrol.c#4 integrate .. //depot/projects/hammer/sbin/bsdlabel/Makefile#1 branch .. //depot/projects/hammer/sbin/bsdlabel/bsdlabel.5#1 branch .. //depot/projects/hammer/sbin/bsdlabel/bsdlabel.8#1 branch .. //depot/projects/hammer/sbin/bsdlabel/bsdlabel.c#1 branch .. //depot/projects/hammer/sbin/bsdlabel/pathnames.h#1 branch .. //depot/projects/hammer/sbin/bsdlabel/runtest.sh#1 branch .. //depot/projects/hammer/sbin/devd/devd.8#5 integrate .. //depot/projects/hammer/sbin/devd/devd.cc#2 integrate .. //depot/projects/hammer/sbin/disklabel/disklabel.8#6 integrate .. //depot/projects/hammer/sbin/fdisk/Makefile#2 integrate .. //depot/projects/hammer/sbin/fdisk/fdisk.c#8 integrate .. //depot/projects/hammer/sbin/fdisk/runtest.sh#1 branch .. //depot/projects/hammer/sbin/gbde/Makefile#5 integrate .. //depot/projects/hammer/sbin/gbde/gbde.c#5 integrate .. //depot/projects/hammer/sbin/ifconfig/ifconfig.c#8 integrate .. //depot/projects/hammer/sbin/mdconfig/mdconfig.c#6 integrate .. //depot/projects/hammer/sbin/newfs/newfs.8#4 integrate .. //depot/projects/hammer/sbin/newfs/newfs.c#6 integrate .. //depot/projects/hammer/sbin/ping/ping.c#9 integrate .. //depot/projects/hammer/sbin/route/route.c#3 integrate .. //depot/projects/hammer/sbin/sunlabel/Makefile#2 integrate .. //depot/projects/hammer/sbin/sunlabel/runtest.sh#1 branch .. //depot/projects/hammer/sbin/sunlabel/sunlabel.c#2 integrate .. //depot/projects/hammer/secure/lib/libcrypto/Makefile#5 integrate .. //depot/projects/hammer/share/dict/freebsd#2 integrate .. //depot/projects/hammer/share/examples/ppp/ppp.conf.isdn#2 integrate .. //depot/projects/hammer/share/examples/ppp/ppp.conf.sample#4 integrate .. //depot/projects/hammer/share/examples/ppp/ppp.conf.span-isp#2 integrate .. //depot/projects/hammer/share/examples/ppp/ppp.conf.span-isp.working#2 integrate .. //depot/projects/hammer/share/man/Makefile#2 integrate .. //depot/projects/hammer/share/man/man4/Makefile#10 integrate .. //depot/projects/hammer/share/man/man4/asr.4#2 integrate .. //depot/projects/hammer/share/man/man4/axe.4#1 branch .. //depot/projects/hammer/share/man/man4/firewire.4#3 integrate .. //depot/projects/hammer/share/man/man4/fwohci.4#3 integrate .. //depot/projects/hammer/share/man/man4/fxp.4#4 integrate .. //depot/projects/hammer/share/man/man4/isp.4#2 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/Makefile#5 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/asr.4#3 delete .. //depot/projects/hammer/share/man/man4/man4.i386/pae.4#1 branch .. //depot/projects/hammer/share/man/man4/man4.i386/sbni.4#1 branch .. //depot/projects/hammer/share/man/man4/mlx.4#2 integrate .. //depot/projects/hammer/share/man/man4/sbsh.4#1 branch .. //depot/projects/hammer/share/man/man4/smp.4#3 integrate .. //depot/projects/hammer/share/man/man4/sym.4#2 integrate .. //depot/projects/hammer/share/man/man4/syscons.4#2 integrate .. //depot/projects/hammer/share/man/man4/wi.4#7 integrate .. //depot/projects/hammer/share/man/man4/xl.4#3 integrate .. //depot/projects/hammer/share/man/man5/fs.5#3 integrate .. //depot/projects/hammer/share/man/man5/rc.conf.5#6 integrate .. //depot/projects/hammer/share/man/man7/environ.7#2 integrate .. //depot/projects/hammer/share/man/man8/intro.8#4 integrate .. //depot/projects/hammer/share/man/man8/rc.subr.8#2 integrate .. //depot/projects/hammer/share/man/man9/Makefile#8 integrate .. //depot/projects/hammer/share/man/man9/device_get_ivars.9#2 integrate .. //depot/projects/hammer/share/man/man9/device_get_name.9#1 branch .. //depot/projects/hammer/share/man/man9/device_get_parent.9#1 branch .. //depot/projects/hammer/share/man/man9/device_get_state.9#3 integrate .. //depot/projects/hammer/share/man/man9/device_printf.9#1 branch .. //depot/projects/hammer/share/man/man9/device_set_driver.9#1 branch .. //depot/projects/hammer/share/man/man9/malloc.9#3 integrate .. //depot/projects/hammer/share/man/man9/mbuf.9#4 integrate .. //depot/projects/hammer/share/misc/iso3166#3 integrate .. //depot/projects/hammer/share/mk/bsd.cpu.mk#5 integrate .. //depot/projects/hammer/share/mk/sys.mk#4 integrate .. //depot/projects/hammer/sys/alpha/alpha/busdma_machdep.c#6 integrate .. //depot/projects/hammer/sys/alpha/alpha/dec_2100_a500.c#3 integrate .. //depot/projects/hammer/sys/alpha/alpha/machdep.c#9 integrate .. //depot/projects/hammer/sys/alpha/alpha/pmap.c#10 integrate .. //depot/projects/hammer/sys/alpha/alpha/sys_machdep.c#3 integrate .. //depot/projects/hammer/sys/alpha/alpha/trap.c#7 integrate .. //depot/projects/hammer/sys/alpha/alpha/vm_machdep.c#6 integrate .. //depot/projects/hammer/sys/alpha/conf/GENERIC#8 integrate .. //depot/projects/hammer/sys/alpha/conf/NOTES#3 integrate .. //depot/projects/hammer/sys/alpha/include/_limits.h#1 branch .. //depot/projects/hammer/sys/alpha/include/bus.h#6 integrate .. //depot/projects/hammer/sys/alpha/include/pmap.h#4 integrate .. //depot/projects/hammer/sys/alpha/include/proc.h#2 integrate .. //depot/projects/hammer/sys/alpha/isa/isa.c#2 integrate .. //depot/projects/hammer/sys/alpha/linux/linux.h#3 integrate .. //depot/projects/hammer/sys/alpha/linux/linux_machdep.c#5 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_signal.c#6 integrate .. //depot/projects/hammer/sys/arm/include/_limits.h#1 branch .. //depot/projects/hammer/sys/boot/alpha/boot1/boot1.c#2 integrate .. //depot/projects/hammer/sys/boot/arc/lib/arcdisk.c#3 integrate .. //depot/projects/hammer/sys/boot/arc/lib/devicename.c#2 integrate .. //depot/projects/hammer/sys/boot/ofw/libofw/devicename.c#4 integrate .. //depot/projects/hammer/sys/boot/ofw/libofw/ofw_disk.c#3 integrate .. //depot/projects/hammer/sys/boot/sparc64/boot1/boot1.c#3 integrate .. //depot/projects/hammer/sys/cam/scsi/scsi_da.c#9 integrate .. //depot/projects/hammer/sys/compat/linprocfs/linprocfs.c#8 integrate .. //depot/projects/hammer/sys/compat/linux/linux_ioctl.c#8 integrate .. //depot/projects/hammer/sys/compat/linux/linux_misc.c#9 integrate .. //depot/projects/hammer/sys/compat/linux/linux_signal.c#6 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_misc.c#4 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_signal.c#5 integrate .. //depot/projects/hammer/sys/conf/Makefile.alpha#3 integrate .. //depot/projects/hammer/sys/conf/Makefile.i386#3 integrate .. //depot/projects/hammer/sys/conf/Makefile.ia64#4 integrate .. //depot/projects/hammer/sys/conf/Makefile.pc98#3 integrate .. //depot/projects/hammer/sys/conf/Makefile.powerpc#4 integrate .. //depot/projects/hammer/sys/conf/Makefile.sparc64#4 integrate .. //depot/projects/hammer/sys/conf/Makefile.x86_64#10 integrate .. //depot/projects/hammer/sys/conf/NOTES#14 integrate .. //depot/projects/hammer/sys/conf/files#15 integrate .. //depot/projects/hammer/sys/conf/files.alpha#7 integrate .. //depot/projects/hammer/sys/conf/files.i386#11 integrate .. //depot/projects/hammer/sys/conf/files.ia64#7 integrate .. //depot/projects/hammer/sys/conf/files.pc98#11 integrate .. //depot/projects/hammer/sys/conf/files.sparc64#8 integrate .. //depot/projects/hammer/sys/conf/options#13 integrate .. //depot/projects/hammer/sys/conf/options.i386#8 integrate .. //depot/projects/hammer/sys/conf/options.ia64#6 integrate .. //depot/projects/hammer/sys/conf/options.pc98#8 integrate .. //depot/projects/hammer/sys/conf/options.powerpc#5 integrate .. //depot/projects/hammer/sys/conf/options.x86_64#8 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_state.c#4 integrate .. //depot/projects/hammer/sys/crypto/blowfish/arch/i386/bf_enc_586.S#2 integrate .. //depot/projects/hammer/sys/crypto/des/arch/i386/des_enc.S#2 integrate .. //depot/projects/hammer/sys/ddb/db_ps.c#8 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi.c#6 integrate .. //depot/projects/hammer/sys/dev/advansys/advansys.c#4 integrate .. //depot/projects/hammer/sys/dev/advansys/adwcam.c#4 integrate .. //depot/projects/hammer/sys/dev/aha/aha.c#5 integrate .. //depot/projects/hammer/sys/dev/ahb/ahb.c#4 integrate .. //depot/projects/hammer/sys/dev/aic/aic_pccard.c#3 integrate .. //depot/projects/hammer/sys/dev/aic7xxx/aic79xx_osm.c#4 integrate .. //depot/projects/hammer/sys/dev/aic7xxx/aic7xxx_osm.c#7 integrate .. //depot/projects/hammer/sys/dev/amd/amd.c#2 integrate .. //depot/projects/hammer/sys/dev/an/if_an.c#7 integrate .. //depot/projects/hammer/sys/dev/an/if_an_isa.c#5 integrate .. //depot/projects/hammer/sys/dev/an/if_an_pccard.c#5 integrate .. //depot/projects/hammer/sys/dev/an/if_an_pci.c#5 integrate .. //depot/projects/hammer/sys/dev/ar/if_ar_isa.c#3 integrate .. //depot/projects/hammer/sys/dev/ar/if_ar_pci.c#2 integrate .. //depot/projects/hammer/sys/dev/asr/asr.c#5 integrate .. //depot/projects/hammer/sys/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/hammer/sys/dev/ata/ata-pci.c#8 integrate .. //depot/projects/hammer/sys/dev/ata/ata-pci.h#4 integrate .. //depot/projects/hammer/sys/dev/awi/am79c930.c#2 integrate .. //depot/projects/hammer/sys/dev/awi/if_awi_pccard.c#4 integrate .. //depot/projects/hammer/sys/dev/bge/if_bge.c#9 integrate .. //depot/projects/hammer/sys/dev/buslogic/bt.c#5 integrate .. //depot/projects/hammer/sys/dev/ccd/ccd.c#6 integrate .. //depot/projects/hammer/sys/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/hammer/sys/dev/cnw/if_cnw.c#4 integrate .. //depot/projects/hammer/sys/dev/cs/if_cs_isa.c#2 integrate .. //depot/projects/hammer/sys/dev/cs/if_cs_pccard.c#2 integrate .. //depot/projects/hammer/sys/dev/dpt/dpt_scsi.c#5 integrate .. //depot/projects/hammer/sys/dev/ed/if_ed_cbus.c#4 integrate .. //depot/projects/hammer/sys/dev/ed/if_ed_isa.c#2 integrate .. //depot/projects/hammer/sys/dev/ed/if_ed_pccard.c#6 integrate .. //depot/projects/hammer/sys/dev/ed/if_ed_pci.c#2 integrate .. //depot/projects/hammer/sys/dev/em/if_em.c#8 integrate .. //depot/projects/hammer/sys/dev/ep/if_ep_pccard.c#4 integrate .. //depot/projects/hammer/sys/dev/fe/if_fe_pccard.c#3 integrate .. //depot/projects/hammer/sys/dev/firewire/firewire.c#6 integrate .. //depot/projects/hammer/sys/dev/firewire/firewire.h#3 integrate .. //depot/projects/hammer/sys/dev/firewire/firewire_phy.h#2 integrate .. //depot/projects/hammer/sys/dev/firewire/firewirereg.h#4 integrate .. //depot/projects/hammer/sys/dev/firewire/fwcrom.c#2 integrate .. //depot/projects/hammer/sys/dev/firewire/fwdev.c#3 integrate .. //depot/projects/hammer/sys/dev/firewire/fwdma.c#1 branch .. //depot/projects/hammer/sys/dev/firewire/fwdma.h#1 branch .. //depot/projects/hammer/sys/dev/firewire/fwmem.c#5 integrate .. //depot/projects/hammer/sys/dev/firewire/fwmem.h#4 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohci.c#5 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohci_pci.c#6 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohcireg.h#3 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohcivar.h#3 integrate .. //depot/projects/hammer/sys/dev/firewire/iec13213.h#3 integrate .. //depot/projects/hammer/sys/dev/firewire/iec68113.h#3 integrate .. //depot/projects/hammer/sys/dev/firewire/if_fwe.c#5 integrate .. //depot/projects/hammer/sys/dev/firewire/if_fwevar.h#3 integrate .. //depot/projects/hammer/sys/dev/firewire/sbp.c#6 integrate .. //depot/projects/hammer/sys/dev/fxp/if_fxp.c#12 integrate .. //depot/projects/hammer/sys/dev/gem/if_gem_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/gx/if_gx.c#5 integrate .. //depot/projects/hammer/sys/dev/hea/eni_transmit.c#3 integrate .. //depot/projects/hammer/sys/dev/hea/hea_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/hfa/hfa_pci.c#2 integrate .. //depot/projects/hammer/sys/dev/hme/if_hme_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/hme/if_hme_sbus.c#3 integrate .. //depot/projects/hammer/sys/dev/ida/ida.c#5 integrate .. //depot/projects/hammer/sys/dev/iir/iir.c#3 integrate .. //depot/projects/hammer/sys/dev/lge/if_lge.c#6 integrate .. //depot/projects/hammer/sys/dev/lnc/if_lnc_cbus.c#3 integrate .. //depot/projects/hammer/sys/dev/lnc/if_lnc_isa.c#3 integrate .. //depot/projects/hammer/sys/dev/lnc/if_lnc_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/mcd/mcd_isa.c#3 integrate .. //depot/projects/hammer/sys/dev/md/md.c#10 integrate .. //depot/projects/hammer/sys/dev/mpt/mpt_freebsd.c#5 integrate .. //depot/projects/hammer/sys/dev/my/if_my.c#6 integrate .. //depot/projects/hammer/sys/dev/ncv/ncr53c500_pccard.c#4 integrate .. //depot/projects/hammer/sys/dev/nge/if_nge.c#6 integrate .. //depot/projects/hammer/sys/dev/pccard/pccard.c#10 integrate .. //depot/projects/hammer/sys/dev/pccard/pccarddevs#7 integrate .. //depot/projects/hammer/sys/dev/pccard/pccarddevs.h#7 integrate .. //depot/projects/hammer/sys/dev/pccard/pccardvar.h#4 integrate .. //depot/projects/hammer/sys/dev/pci/pci.c#7 integrate .. //depot/projects/hammer/sys/dev/pci/pci_if.m#2 integrate .. //depot/projects/hammer/sys/dev/pci/pci_private.h#4 integrate .. //depot/projects/hammer/sys/dev/pci/pcivar.h#4 integrate .. //depot/projects/hammer/sys/dev/pdq/if_fea.c#2 integrate .. //depot/projects/hammer/sys/dev/pdq/if_fpa.c#2 integrate .. //depot/projects/hammer/sys/dev/sbni/if_sbni_isa.c#3 integrate .. //depot/projects/hammer/sys/dev/sbni/if_sbni_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/sbsh/if_sbsh.c#1 branch .. //depot/projects/hammer/sys/dev/sbsh/if_sbshreg.h#1 branch .. //depot/projects/hammer/sys/dev/scd/scd_isa.c#2 integrate .. //depot/projects/hammer/sys/dev/sn/if_sn_isa.c#2 integrate .. //depot/projects/hammer/sys/dev/sn/if_sn_pccard.c#2 integrate .. //depot/projects/hammer/sys/dev/snc/if_snc_cbus.c#2 integrate .. //depot/projects/hammer/sys/dev/snc/if_snc_pccard.c#2 integrate .. //depot/projects/hammer/sys/dev/sound/pci/ds1.c#3 integrate .. //depot/projects/hammer/sys/dev/sound/pci/emu10k1.c#3 integrate .. //depot/projects/hammer/sys/dev/sound/pci/ich.c#5 integrate .. //depot/projects/hammer/sys/dev/sound/pci/via8233.c#4 integrate .. //depot/projects/hammer/sys/dev/sound/pci/via8233.h#3 integrate .. //depot/projects/hammer/sys/dev/sound/pcm/ac97.c#5 integrate .. //depot/projects/hammer/sys/dev/sound/pcm/buffer.c#3 integrate .. //depot/projects/hammer/sys/dev/sound/pcm/feeder_fmt.c#3 integrate .. //depot/projects/hammer/sys/dev/sound/pcm/feeder_rate.c#3 integrate .. //depot/projects/hammer/sys/dev/sr/if_sr_isa.c#2 integrate .. //depot/projects/hammer/sys/dev/sr/if_sr_pci.c#2 integrate .. //depot/projects/hammer/sys/dev/stg/tmc18c30_pccard.c#5 integrate .. //depot/projects/hammer/sys/dev/sym/sym_hipd.c#4 integrate .. //depot/projects/hammer/sys/dev/trm/trm.c#4 integrate .. //depot/projects/hammer/sys/dev/tx/if_tx.c#6 integrate .. //depot/projects/hammer/sys/dev/tx/if_txreg.h#3 integrate .. //depot/projects/hammer/sys/dev/tx/if_txvar.h#5 integrate .. //depot/projects/hammer/sys/dev/txp/if_txp.c#5 integrate .. //depot/projects/hammer/sys/dev/usb/FILES#2 integrate .. //depot/projects/hammer/sys/dev/usb/ehci.c#1 branch .. //depot/projects/hammer/sys/dev/usb/ehci_pci.c#1 branch .. //depot/projects/hammer/sys/dev/usb/ehcireg.h#1 branch .. //depot/projects/hammer/sys/dev/usb/ehcivar.h#1 branch .. //depot/projects/hammer/sys/dev/usb/if_aue.c#5 integrate .. //depot/projects/hammer/sys/dev/usb/if_axe.c#1 branch .. //depot/projects/hammer/sys/dev/usb/if_axereg.h#1 branch .. //depot/projects/hammer/sys/dev/usb/if_cue.c#5 integrate .. //depot/projects/hammer/sys/dev/usb/if_kue.c#6 integrate .. //depot/projects/hammer/sys/dev/usb/uhid.c#3 integrate .. //depot/projects/hammer/sys/dev/usb/umass.c#5 integrate .. //depot/projects/hammer/sys/dev/usb/usb.c#4 integrate .. //depot/projects/hammer/sys/dev/usb/usb_quirks.c#3 integrate .. //depot/projects/hammer/sys/dev/usb/usbdevs#7 integrate .. //depot/projects/hammer/sys/dev/usb/usbdevs.h#7 integrate .. //depot/projects/hammer/sys/dev/usb/usbdevs_data.h#7 integrate .. //depot/projects/hammer/sys/dev/vinum/vinumdaemon.c#5 integrate .. //depot/projects/hammer/sys/dev/vx/if_vx_pci.c#2 integrate .. //depot/projects/hammer/sys/dev/wds/wd7000.c#3 integrate .. //depot/projects/hammer/sys/dev/wi/if_wi.c#8 integrate .. //depot/projects/hammer/sys/dev/wi/if_wi_pccard.c#7 integrate .. //depot/projects/hammer/sys/dev/wi/if_wi_pci.c#4 integrate .. //depot/projects/hammer/sys/dev/wl/if_wl.c#4 integrate .. //depot/projects/hammer/sys/dev/wl/if_wl.h#2 integrate .. //depot/projects/hammer/sys/dev/xe/if_xe_pccard.c#4 integrate .. //depot/projects/hammer/sys/fs/msdosfs/msdosfs_denode.c#7 integrate .. //depot/projects/hammer/sys/fs/procfs/procfs.c#3 integrate .. //depot/projects/hammer/sys/fs/procfs/procfs_ctl.c#6 integrate .. //depot/projects/hammer/sys/fs/procfs/procfs_ioctl.c#4 integrate .. //depot/projects/hammer/sys/fs/procfs/procfs_status.c#4 integrate .. //depot/projects/hammer/sys/geom/geom.h#11 integrate .. //depot/projects/hammer/sys/geom/geom_aes.c#7 integrate .. //depot/projects/hammer/sys/geom/geom_apple.c#3 integrate .. //depot/projects/hammer/sys/geom/geom_bsd.c#11 integrate .. //depot/projects/hammer/sys/geom/geom_bsd_enc.c#1 branch .. //depot/projects/hammer/sys/geom/geom_ctl.c#6 integrate .. //depot/projects/hammer/sys/geom/geom_ctl.h#2 integrate .. //depot/projects/hammer/sys/geom/geom_dump.c#11 integrate .. //depot/projects/hammer/sys/geom/geom_event.c#7 integrate .. //depot/projects/hammer/sys/geom/geom_gpt.c#10 integrate .. //depot/projects/hammer/sys/geom/geom_io.c#10 integrate .. //depot/projects/hammer/sys/geom/geom_mbr.c#9 integrate .. //depot/projects/hammer/sys/geom/geom_mbr_enc.c#1 branch .. //depot/projects/hammer/sys/geom/geom_mirror.c#3 integrate .. //depot/projects/hammer/sys/geom/geom_pc98.c#10 integrate .. //depot/projects/hammer/sys/geom/geom_slice.c#9 integrate .. //depot/projects/hammer/sys/geom/geom_slice.h#5 integrate .. //depot/projects/hammer/sys/geom/geom_subr.c#9 integrate .. //depot/projects/hammer/sys/geom/geom_sunlabel.c#8 integrate .. //depot/projects/hammer/sys/geom/geom_sunlabel_enc.c#1 branch .. //depot/projects/hammer/sys/geom/geom_vol_ffs.c#3 integrate .. //depot/projects/hammer/sys/gnu/dev/sound/pci/emu10k1-ac97.h#1 branch .. //depot/projects/hammer/sys/gnu/dev/sound/pci/emu10k1.h#2 integrate .. //depot/projects/hammer/sys/gnu/i386/fpemul/fpu_entry.c#2 integrate .. //depot/projects/hammer/sys/i386/conf/GENERIC#9 integrate .. //depot/projects/hammer/sys/i386/conf/NOTES#12 integrate .. //depot/projects/hammer/sys/i386/conf/PAE#2 integrate .. //depot/projects/hammer/sys/i386/i386/busdma_machdep.c#7 integrate .. //depot/projects/hammer/sys/i386/i386/genassym.c#6 integrate .. //depot/projects/hammer/sys/i386/i386/identcpu.c#5 integrate .. //depot/projects/hammer/sys/i386/i386/machdep.c#13 integrate .. //depot/projects/hammer/sys/i386/i386/sys_machdep.c#5 integrate .. //depot/projects/hammer/sys/i386/i386/trap.c#10 integrate .. //depot/projects/hammer/sys/i386/i386/tsc.c#4 integrate .. //depot/projects/hammer/sys/i386/i386/vm_machdep.c#7 integrate .. //depot/projects/hammer/sys/i386/ibcs2/ibcs2_signal.c#6 integrate .. //depot/projects/hammer/sys/i386/include/_limits.h#1 branch .. //depot/projects/hammer/sys/i386/include/bus_dma.h#4 integrate .. //depot/projects/hammer/sys/i386/include/cpufunc.h#4 integrate .. //depot/projects/hammer/sys/i386/isa/bs/bsif.h#2 integrate .. //depot/projects/hammer/sys/i386/isa/if_le.c#6 integrate .. //depot/projects/hammer/sys/i386/linux/linux_machdep.c#9 integrate .. //depot/projects/hammer/sys/i386/linux/linux_ptrace.c#5 integrate .. //depot/projects/hammer/sys/i386/linux/linux_sysvec.c#7 integrate .. //depot/projects/hammer/sys/i386/svr4/svr4_locore.s#2 integrate .. //depot/projects/hammer/sys/i386/svr4/svr4_machdep.c#4 integrate .. //depot/projects/hammer/sys/ia64/conf/GENERIC#9 integrate .. //depot/projects/hammer/sys/ia64/ia32/ia32_misc.c#4 integrate .. //depot/projects/hammer/sys/ia64/ia32/syscalls.master#10 integrate .. //depot/projects/hammer/sys/ia64/ia64/busdma_machdep.c#6 integrate .. //depot/projects/hammer/sys/ia64/ia64/pmap.c#9 integrate .. //depot/projects/hammer/sys/ia64/ia64/trap.c#7 integrate .. //depot/projects/hammer/sys/ia64/include/_limits.h#1 branch .. //depot/projects/hammer/sys/ia64/include/bus.h#4 integrate .. //depot/projects/hammer/sys/ia64/include/pmap.h#5 integrate .. //depot/projects/hammer/sys/isa/isa_common.c#6 integrate .. //depot/projects/hammer/sys/kern/init_main.c#10 integrate .. //depot/projects/hammer/sys/kern/init_sysent.c#12 integrate .. //depot/projects/hammer/sys/kern/kern_acct.c#8 integrate .. //depot/projects/hammer/sys/kern/kern_clock.c#6 integrate .. //depot/projects/hammer/sys/kern/kern_condvar.c#8 integrate .. //depot/projects/hammer/sys/kern/kern_conf.c#7 integrate .. //depot/projects/hammer/sys/kern/kern_context.c#3 integrate .. //depot/projects/hammer/sys/kern/kern_event.c#6 integrate .. //depot/projects/hammer/sys/kern/kern_exit.c#11 integrate .. //depot/projects/hammer/sys/kern/kern_fork.c#10 integrate .. //depot/projects/hammer/sys/kern/kern_idle.c#5 integrate .. //depot/projects/hammer/sys/kern/kern_intr.c#8 integrate .. //depot/projects/hammer/sys/kern/kern_jail.c#4 integrate .. //depot/projects/hammer/sys/kern/kern_kthread.c#4 integrate .. //depot/projects/hammer/sys/kern/kern_mac.c#13 integrate .. //depot/projects/hammer/sys/kern/kern_mutex.c#9 integrate .. //depot/projects/hammer/sys/kern/kern_proc.c#11 integrate .. //depot/projects/hammer/sys/kern/kern_resource.c#8 integrate .. //depot/projects/hammer/sys/kern/kern_shutdown.c#6 integrate .. //depot/projects/hammer/sys/kern/kern_sig.c#8 integrate .. //depot/projects/hammer/sys/kern/kern_thr.c#4 integrate .. //depot/projects/hammer/sys/kern/kern_thread.c#18 integrate .. //depot/projects/hammer/sys/kern/sched_4bsd.c#4 integrate .. //depot/projects/hammer/sys/kern/sched_ule.c#3 integrate .. //depot/projects/hammer/sys/kern/subr_bus.c#8 integrate .. //depot/projects/hammer/sys/kern/subr_devstat.c#5 integrate .. //depot/projects/hammer/sys/kern/subr_disk.c#8 integrate .. //depot/projects/hammer/sys/kern/subr_mbuf.c#6 integrate .. //depot/projects/hammer/sys/kern/subr_prf.c#9 integrate .. //depot/projects/hammer/sys/kern/subr_smp.c#5 integrate .. //depot/projects/hammer/sys/kern/subr_trap.c#10 integrate .. //depot/projects/hammer/sys/kern/subr_witness.c#10 integrate .. //depot/projects/hammer/sys/kern/sys_process.c#6 integrate .. //depot/projects/hammer/sys/kern/syscalls.c#12 integrate .. //depot/projects/hammer/sys/kern/syscalls.master#12 integrate .. //depot/projects/hammer/sys/kern/sysv_shm.c#4 integrate .. //depot/projects/hammer/sys/kern/tty.c#6 integrate .. //depot/projects/hammer/sys/kern/uipc_cow.c#7 integrate .. //depot/projects/hammer/sys/kern/uipc_jumbo.c#4 integrate .. //depot/projects/hammer/sys/kern/uipc_mbuf.c#7 integrate .. //depot/projects/hammer/sys/kern/uipc_mbuf2.c#4 integrate .. //depot/projects/hammer/sys/kern/uipc_socket.c#7 integrate .. //depot/projects/hammer/sys/kern/vfs_aio.c#11 integrate .. //depot/projects/hammer/sys/kern/vfs_bio.c#13 integrate .. //depot/projects/hammer/sys/kern/vfs_cluster.c#7 integrate .. //depot/projects/hammer/sys/kern/vfs_subr.c#10 integrate .. //depot/projects/hammer/sys/kern/vfs_syscalls.c#9 integrate .. //depot/projects/hammer/sys/modules/Makefile#13 integrate .. //depot/projects/hammer/sys/modules/axe/Makefile#1 branch .. //depot/projects/hammer/sys/modules/firewire/Makefile.inc#2 integrate .. //depot/projects/hammer/sys/modules/firewire/firewire/Makefile#5 integrate .. //depot/projects/hammer/sys/modules/firewire/fwe/Makefile#3 integrate .. //depot/projects/hammer/sys/modules/netgraph/Makefile#4 integrate .. //depot/projects/hammer/sys/modules/sbsh/Makefile#1 branch .. //depot/projects/hammer/sys/modules/usb/Makefile#2 integrate .. //depot/projects/hammer/sys/net/if_loop.c#6 integrate .. //depot/projects/hammer/sys/net/route.c#4 integrate .. //depot/projects/hammer/sys/netgraph/ng_fec.c#3 integrate .. //depot/projects/hammer/sys/netgraph/ng_message.h#2 integrate .. //depot/projects/hammer/sys/netinet/ip_output.c#11 integrate .. //depot/projects/hammer/sys/netinet/tcp_input.c#10 integrate .. //depot/projects/hammer/sys/netinet/tcp_subr.c#6 integrate .. //depot/projects/hammer/sys/netinet6/icmp6.c#5 integrate .. //depot/projects/hammer/sys/pc98/conf/GENERIC#8 integrate .. //depot/projects/hammer/sys/pc98/i386/machdep.c#11 integrate .. //depot/projects/hammer/sys/pc98/pc98/wd.c#6 integrate .. //depot/projects/hammer/sys/pci/agp_ali.c#4 integrate .. //depot/projects/hammer/sys/pci/agp_amd.c#5 integrate .. //depot/projects/hammer/sys/pci/agp_i810.c#7 integrate .. //depot/projects/hammer/sys/pci/agp_intel.c#5 integrate .. //depot/projects/hammer/sys/pci/agp_sis.c#5 integrate .. //depot/projects/hammer/sys/pci/agp_via.c#4 integrate .. //depot/projects/hammer/sys/pci/alpm.c#2 integrate .. //depot/projects/hammer/sys/pci/amdpm.c#3 integrate .. //depot/projects/hammer/sys/pci/cy_pci.c#2 integrate .. //depot/projects/hammer/sys/pci/if_dc.c#8 integrate .. //depot/projects/hammer/sys/pci/if_dcreg.h#5 integrate .. //depot/projects/hammer/sys/pci/if_de.c#6 integrate .. //depot/projects/hammer/sys/pci/if_en_pci.c#2 integrate .. //depot/projects/hammer/sys/pci/if_pcn.c#6 integrate .. //depot/projects/hammer/sys/pci/if_rl.c#10 integrate .. //depot/projects/hammer/sys/pci/if_sf.c#7 integrate .. //depot/projects/hammer/sys/pci/if_sis.c#7 integrate .. //depot/projects/hammer/sys/pci/if_sk.c#6 integrate .. //depot/projects/hammer/sys/pci/if_ste.c#8 integrate .. //depot/projects/hammer/sys/pci/if_ti.c#9 integrate .. //depot/projects/hammer/sys/pci/if_tl.c#7 integrate .. //depot/projects/hammer/sys/pci/if_vr.c#7 integrate .. //depot/projects/hammer/sys/pci/if_wb.c#7 integrate .. //depot/projects/hammer/sys/pci/if_xl.c#12 integrate .. //depot/projects/hammer/sys/pci/ncr.c#5 integrate .. //depot/projects/hammer/sys/pci/viapm.c#3 integrate .. //depot/projects/hammer/sys/pci/xrpu.c#4 integrate .. //depot/projects/hammer/sys/powerpc/conf/GENERIC#10 integrate .. //depot/projects/hammer/sys/powerpc/include/_limits.h#1 branch .. //depot/projects/hammer/sys/powerpc/include/bus.h#4 integrate .. //depot/projects/hammer/sys/powerpc/powermac/ata_macio.c#3 integrate .. //depot/projects/hammer/sys/powerpc/powermac/macio.c#4 integrate .. //depot/projects/hammer/sys/powerpc/powermac/uninorth.c#3 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/busdma_machdep.c#5 integrate .. //depot/projects/hammer/sys/powerpc/psim/ata_iobus.c#3 integrate .. //depot/projects/hammer/sys/powerpc/psim/iobus.c#3 integrate .. //depot/projects/hammer/sys/security/mac_biba/mac_biba.c#11 integrate .. //depot/projects/hammer/sys/security/mac_ifoff/mac_ifoff.c#5 integrate .. //depot/projects/hammer/sys/security/mac_lomac/mac_lomac.c#3 integrate .. //depot/projects/hammer/sys/security/mac_mls/mac_mls.c#11 integrate .. //depot/projects/hammer/sys/security/mac_test/mac_test.c#8 integrate .. //depot/projects/hammer/sys/sparc64/conf/GENERIC#10 integrate .. //depot/projects/hammer/sys/sparc64/include/_limits.h#1 branch .. //depot/projects/hammer/sys/sparc64/include/bus.h#7 integrate .. //depot/projects/hammer/sys/sparc64/include/iommuvar.h#4 integrate .. //depot/projects/hammer/sys/sparc64/include/pmap.h#10 integrate .. //depot/projects/hammer/sys/sparc64/include/tlb.h#4 integrate .. //depot/projects/hammer/sys/sparc64/pci/psycho.c#8 integrate .. //depot/projects/hammer/sys/sparc64/sbus/sbus.c#3 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/bus_machdep.c#7 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/cache.c#4 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/cheetah.c#3 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/iommu.c#5 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/machdep.c#13 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/pmap.c#12 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/spitfire.c#3 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/swtch.S#5 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/tlb.c#4 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/trap.c#7 integrate .. //depot/projects/hammer/sys/sys/bio.h#7 integrate .. //depot/projects/hammer/sys/sys/bus.h#5 integrate .. //depot/projects/hammer/sys/sys/cdefs.h#6 integrate .. //depot/projects/hammer/sys/sys/disklabel.h#9 integrate .. //depot/projects/hammer/sys/sys/diskmbr.h#4 integrate .. //depot/projects/hammer/sys/sys/jail.h#2 integrate .. //depot/projects/hammer/sys/sys/kse.h#8 integrate .. //depot/projects/hammer/sys/sys/mac.h#10 integrate .. //depot/projects/hammer/sys/sys/mac_policy.h#10 integrate .. //depot/projects/hammer/sys/sys/mbuf.h#9 integrate .. //depot/projects/hammer/sys/sys/mdioctl.h#3 integrate .. //depot/projects/hammer/sys/sys/param.h#10 integrate .. //depot/projects/hammer/sys/sys/proc.h#15 integrate .. //depot/projects/hammer/sys/sys/resourcevar.h#5 integrate .. //depot/projects/hammer/sys/sys/sched.h#3 integrate .. //depot/projects/hammer/sys/sys/sun_disklabel.h#4 integrate .. //depot/projects/hammer/sys/sys/syscall.h#12 integrate .. //depot/projects/hammer/sys/sys/syscall.mk#12 integrate .. //depot/projects/hammer/sys/sys/syscallsubr.h#4 integrate .. //depot/projects/hammer/sys/sys/sysproto.h#12 integrate .. //depot/projects/hammer/sys/sys/timetc.h#4 integrate .. //depot/projects/hammer/sys/sys/vnode.h#11 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_snapshot.c#9 integrate .. //depot/projects/hammer/sys/vm/pmap.h#8 integrate .. //depot/projects/hammer/sys/vm/swap_pager.c#8 integrate .. //depot/projects/hammer/sys/vm/swap_pager.h#4 integrate .. //depot/projects/hammer/sys/vm/uma_core.c#10 integrate .. //depot/projects/hammer/sys/vm/vm_contig.c#4 integrate .. //depot/projects/hammer/sys/vm/vm_fault.c#8 integrate .. //depot/projects/hammer/sys/vm/vm_glue.c#11 integrate .. //depot/projects/hammer/sys/vm/vm_kern.c#4 integrate .. //depot/projects/hammer/sys/vm/vm_map.c#8 integrate .. //depot/projects/hammer/sys/vm/vm_meter.c#5 integrate .. //depot/projects/hammer/sys/vm/vm_mmap.c#6 integrate .. //depot/projects/hammer/sys/vm/vm_object.c#10 integrate .. //depot/projects/hammer/sys/vm/vm_object.h#7 integrate .. //depot/projects/hammer/sys/vm/vm_page.c#8 integrate .. //depot/projects/hammer/sys/vm/vm_pageout.c#12 integrate .. //depot/projects/hammer/sys/vm/vnode_pager.c#9 integrate .. //depot/projects/hammer/sys/x86_64/include/_limits.h#1 branch .. //depot/projects/hammer/tools/build/Makefile#3 integrate .. //depot/projects/hammer/tools/build/Makefile.boot#3 delete .. //depot/projects/hammer/tools/build/mk/Makefile.boot#1 branch .. //depot/projects/hammer/tools/build/mk/bsd.lib.mk#1 branch .. //depot/projects/hammer/tools/build/mk/bsd.prog.mk#1 branch .. //depot/projects/hammer/tools/regression/geom/GLib/Makefile#5 delete .. //depot/projects/hammer/tools/regression/geom/Makefile#2 delete .. //depot/projects/hammer/tools/regression/geom/MdLoad/Makefile#1 branch .. //depot/projects/hammer/tools/regression/geom/MdLoad/MdLoad.c#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.alpha.da0.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.alpha2.da0.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.apple.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.beast.da0.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.critter.ad0.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.empty.flp.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.far.ad0.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.flat.da1.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.kern.flp.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.msdos.ext.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.msdos.flp.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.pc98.wdc0.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.sun.da0.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.sun.da1.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/Ref/disk.typo.ad0.xml#1 branch .. //depot/projects/hammer/tools/regression/geom/RunTest.sh#1 branch .. //depot/projects/hammer/tools/regression/geom/Test/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/Makefile.inc#5 delete .. //depot/projects/hammer/tools/regression/geom/Test/T000/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T000/ref.conf#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T000/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T001/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T001/ref.conf#5 delete .. //depot/projects/hammer/tools/regression/geom/Test/T001/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T002/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T002/ref.conf#4 delete .. //depot/projects/hammer/tools/regression/geom/Test/T002/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T003/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T003/ref.conf#4 delete .. //depot/projects/hammer/tools/regression/geom/Test/T003/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T004/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T004/ref.conf#5 delete .. //depot/projects/hammer/tools/regression/geom/Test/T004/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T005/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T005/ref.conf#5 delete .. //depot/projects/hammer/tools/regression/geom/Test/T005/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T006/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T006/ref.conf#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T006/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T007/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T007/ref.conf#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T007/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T008/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T008/ref.conf#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T008/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T009/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T009/ref.conf#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T009/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T010/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T010/ref.conf#2 delete .. //depot/projects/hammer/tools/regression/geom/Test/T010/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T011/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T011/ref.conf#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T011/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T012/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T012/ref.conf#4 delete .. //depot/projects/hammer/tools/regression/geom/Test/T012/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T013/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T013/ref.conf#6 delete .. //depot/projects/hammer/tools/regression/geom/Test/T013/testprg.c#4 delete .. //depot/projects/hammer/tools/regression/geom/Test/T014/Makefile#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T014/ref.conf#6 delete .. //depot/projects/hammer/tools/regression/geom/Test/T014/testprg.c#3 delete .. //depot/projects/hammer/tools/regression/geom/Test/T015/Makefile#2 delete .. //depot/projects/hammer/tools/regression/geom/Test/T015/ref.conf#2 delete .. //depot/projects/hammer/tools/regression/geom/Test/T015/testprg.c#2 delete .. //depot/projects/hammer/tools/regression/geom/geom.c#5 delete .. //depot/projects/hammer/tools/regression/geom/geom_kernsim.c#4 delete .. //depot/projects/hammer/tools/regression/geom/geom_sim.c#2 delete .. //depot/projects/hammer/tools/regression/geom/geom_sim.h#6 delete .. //depot/projects/hammer/tools/regression/geom/geom_simdev.c#3 delete .. //depot/projects/hammer/tools/regression/geom/geom_simdisk.c#6 delete .. //depot/projects/hammer/tools/regression/geom/geom_simdisk.h#3 delete .. //depot/projects/hammer/tools/regression/geom/geom_simdisk_xml.c#5 delete .. //depot/projects/hammer/tools/regression/lib/libc/stdio/test-printfloat.c#4 integrate .. //depot/projects/hammer/usr.bin/Makefile#8 integrate .. //depot/projects/hammer/usr.bin/calendar/calendars/calendar.history#6 integrate .. //depot/projects/hammer/usr.bin/calendar/calendars/calendar.usholiday#2 integrate .. //depot/projects/hammer/usr.bin/chpass/edit.c#2 integrate .. //depot/projects/hammer/usr.bin/killall/killall.1#2 integrate .. //depot/projects/hammer/usr.bin/killall/killall.c#3 integrate .. //depot/projects/hammer/usr.bin/make/main.c#9 integrate .. //depot/projects/hammer/usr.bin/passwd/passwd.c#2 integrate .. //depot/projects/hammer/usr.bin/systat/vmstat.c#4 integrate .. //depot/projects/hammer/usr.bin/truss/syscalls.c#4 integrate .. //depot/projects/hammer/usr.bin/uniq/uniq.1#3 integrate .. //depot/projects/hammer/usr.bin/usbhidaction/Makefile#1 branch .. //depot/projects/hammer/usr.bin/usbhidaction/usbhidaction.1#1 branch .. //depot/projects/hammer/usr.bin/usbhidaction/usbhidaction.c#1 branch .. //depot/projects/hammer/usr.bin/usbhidctl/usbhid.c#2 integrate .. //depot/projects/hammer/usr.bin/vmstat/vmstat.8#2 integrate .. //depot/projects/hammer/usr.bin/vmstat/vmstat.c#4 integrate .. //depot/projects/hammer/usr.bin/window/wwprintf.c#2 integrate .. //depot/projects/hammer/usr.sbin/Makefile#8 integrate .. //depot/projects/hammer/usr.sbin/acpi/acpidump/acpi.c#3 integrate .. //depot/projects/hammer/usr.sbin/boot0cfg/boot0cfg.8#2 integrate .. //depot/projects/hammer/usr.sbin/config/config.8#4 integrate .. //depot/projects/hammer/usr.sbin/config/configvers.h#2 integrate .. //depot/projects/hammer/usr.sbin/config/mkmakefile.c#3 integrate .. //depot/projects/hammer/usr.sbin/crunch/crunchgen/crunchgen.c#2 integrate .. //depot/projects/hammer/usr.sbin/diskinfo/Makefile#1 branch .. //depot/projects/hammer/usr.sbin/diskinfo/diskinfo.8#1 branch .. //depot/projects/hammer/usr.sbin/diskinfo/diskinfo.c#1 branch .. //depot/projects/hammer/usr.sbin/fwcontrol/fwcontrol.c#2 integrate .. //depot/projects/hammer/usr.sbin/fwcontrol/fwcrom.c#2 integrate .. //depot/projects/hammer/usr.sbin/fwcontrol/fwdv.c#2 integrate .. //depot/projects/hammer/usr.sbin/i4b/isdntest/Makefile#2 integrate .. //depot/projects/hammer/usr.sbin/jail/jail.8#5 integrate .. //depot/projects/hammer/usr.sbin/jail/jail.c#4 integrate .. //depot/projects/hammer/usr.sbin/jexec/Makefile#1 branch .. //depot/projects/hammer/usr.sbin/jexec/jexec.8#1 branch .. //depot/projects/hammer/usr.sbin/jexec/jexec.c#1 branch .. //depot/projects/hammer/usr.sbin/jls/Makefile#1 branch .. //depot/projects/hammer/usr.sbin/jls/jls.8#1 branch .. //depot/projects/hammer/usr.sbin/jls/jls.c#1 branch .. //depot/projects/hammer/usr.sbin/mixer/mixer.8#2 integrate .. //depot/projects/hammer/usr.sbin/mixer/mixer.c#3 integrate .. //depot/projects/hammer/usr.sbin/mrouted/map-mbone/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/mrouted/mrinfo/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/named/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/add/perform.c#3 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/add/pkg_add.1#4 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/create/create.h#2 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/create/main.c#2 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/create/perform.c#3 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/create/pkg_create.1#3 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/info/show.c#5 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/lib/lib.h#4 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/lib/plist.c#4 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/lib/url.c#3 integrate .. //depot/projects/hammer/usr.sbin/pwd_mkdb/pwd_mkdb.c#2 integrate .. //depot/projects/hammer/usr.sbin/raycontrol/raycontrol.c#3 integrate .. //depot/projects/hammer/usr.sbin/rtadvd/config.c#5 integrate .. //depot/projects/hammer/usr.sbin/setkey/setkey.c#2 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/devices.c#5 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/help/partition.hlp#3 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/install.c#8 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/label.c#6 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/sysinstall.h#5 integrate Differences ... ==== //depot/projects/hammer/MAINTAINERS#6 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.58 2003/02/18 00:07:06 jmallett Exp $ +$FreeBSD: src/MAINTAINERS,v 1.59 2003/04/18 21:17:46 nectar Exp $ subsystem login notes ----------------------------- @@ -77,3 +77,5 @@ libufs jmallett Willing to handle problems, help with work. fdc(4) joerg Just keep me informed of changes, try not to break it. sppp(4) joerg Just keep me informed of changes, try not to break it. +libc nectar Opportuntity for pre-commit review appreciated for + nsdispatch(3) and its consumers. ==== //depot/projects/hammer/Makefile.inc1#11 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.339 2003/04/07 00:01:33 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.349 2003/04/16 21:05:06 jhb Exp $ # # Make command line options: # -DMAKE_KERBEROS5 to build Kerberos5 @@ -151,7 +151,9 @@ .endif WORLDTMP= ${OBJTREE}${.CURDIR}/${MACHINE_ARCH} # /usr/games added for fortune which depend on strfile -STRICTTMPPATH= ${WORLDTMP}/usr/sbin:${WORLDTMP}/usr/bin:${WORLDTMP}/usr/games +BPATH= ${WORLDTMP}/legacy/usr/sbin:${WORLDTMP}/legacy/usr/bin:${WORLDTMP}/legacy/usr/games +XPATH= ${WORLDTMP}/usr/sbin:${WORLDTMP}/usr/bin:${WORLDTMP}/usr/games +STRICTTMPPATH= ${BPATH}:${XPATH} TMPPATH= ${STRICTTMPPATH}:${PATH} INSTALLTMP!= /usr/bin/mktemp -d -u -t install @@ -181,21 +183,23 @@ # This stage installs a previously built world. # +BOOTSTRAPPING?= 0 + # Common environment for world related stages CROSSENV= MAKEOBJDIRPREFIX=${OBJTREE} \ MACHINE_ARCH=${TARGET_ARCH} \ MACHINE=${TARGET} \ CPUTYPE=${TARGET_CPUTYPE} \ - GROFF_BIN_PATH=${WORLDTMP}/usr/bin \ - GROFF_FONT_PATH=${WORLDTMP}/usr/share/groff_font \ - GROFF_TMAC_PATH=${WORLDTMP}/usr/share/tmac + GROFF_BIN_PATH=${WORLDTMP}/legacy/usr/bin \ + GROFF_FONT_PATH=${WORLDTMP}/legacy/usr/share/groff_font \ + GROFF_TMAC_PATH=${WORLDTMP}/legacy/usr/share/tmac # bootstrap-tools stage BMAKEENV= DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" \ - __MAKE_CONF=${.CURDIR}/tools/build/Makefile.boot \ - OLD_MAKE_CONF=${__MAKE_CONF} \ - WORLDTMP=${WORLDTMP} + PATH=${BPATH}:${PATH} \ + WORLDTMP=${WORLDTMP} \ + MAKEFLAGS="-m ${.CURDIR}/tools/build/mk ${.MAKEFLAGS}" BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ ${BMAKEENV} ${MAKE} -f Makefile.inc1 \ BOOTSTRAPPING=${OSRELDATE} \ @@ -225,28 +229,6 @@ # kernel stage KMAKEENV= ${WMAKEENV} -USRDIRS= usr/bin usr/lib/compat/aout usr/games usr/libdata/ldscripts \ - usr/libexec usr/sbin usr/share/misc \ - usr/share/dict \ - usr/share/groff_font/devX100 \ - usr/share/groff_font/devX100-12 \ - usr/share/groff_font/devX75 \ - usr/share/groff_font/devX75-12 \ - usr/share/groff_font/devascii \ - usr/share/groff_font/devcp1047 \ - usr/share/groff_font/devdvi \ - usr/share/groff_font/devhtml \ - usr/share/groff_font/devkoi8-r \ - usr/share/groff_font/devlatin1 \ - usr/share/groff_font/devlbp \ - usr/share/groff_font/devlj4 \ - usr/share/groff_font/devps \ - usr/share/groff_font/devutf8 \ - usr/share/tmac/mdoc usr/share/tmac/mm - -INCDIRS= arpa dev fs g++/backward g++/bits g++/ext isc isofs libmilter \ - objc openssl protocols readline rpc rpcsvc security ufs - # # buildworld # @@ -274,16 +256,36 @@ rm -f ${OBJTREE}${.CURDIR}/usr.bin/kdump/ioctl.c rm -f ${OBJTREE}${.CURDIR}/usr.bin/truss/ioctl.c .endif -.for _dir in ${USRDIRS} +.for _dir in \ + usr/bin usr/games usr/include/sys usr/lib \ + usr/libexec usr/sbin usr/share/dict \ + usr/share/groff_font/devX100 \ + usr/share/groff_font/devX100-12 \ + usr/share/groff_font/devX75 \ + usr/share/groff_font/devX75-12 \ + usr/share/groff_font/devascii \ + usr/share/groff_font/devcp1047 \ + usr/share/groff_font/devdvi \ + usr/share/groff_font/devhtml \ + usr/share/groff_font/devkoi8-r \ + usr/share/groff_font/devlatin1 \ + usr/share/groff_font/devlbp \ + usr/share/groff_font/devlj4 \ + usr/share/groff_font/devps \ + usr/share/groff_font/devutf8 \ + usr/share/tmac/mdoc usr/share/tmac/mm + mkdir -p ${WORLDTMP}/legacy/${_dir} +.endfor +.for _dir in \ + usr/bin usr/lib/compat/aout usr/libdata/ldscripts usr/libexec usr/share/misc mkdir -p ${WORLDTMP}/${_dir} .endfor -.for _dir in ${INCDIRS} +.for _dir in \ + arpa dev fs g++/backward g++/bits g++/ext isc isofs libmilter \ + objc openssl protocols readline rpc rpcsvc security ufs mkdir -p ${WORLDTMP}/usr/include/${_dir} .endfor ln -sf ${.CURDIR}/sys ${WORLDTMP} -.for _dir in lib include/sys - mkdir -p ${WORLDTMP}/legacy/usr/${_dir} -.endfor _legacy: @echo @echo "--------------------------------------------------------------" @@ -458,9 +460,9 @@ .endif >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Apr 22 13:58:50 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 298A837B404; Tue, 22 Apr 2003 13:58:50 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D187637B401 for ; Tue, 22 Apr 2003 13:58:49 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3D6DA43FBF for ; Tue, 22 Apr 2003 13:58:49 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MKwn0U083937 for ; Tue, 22 Apr 2003 13:58:49 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MKwmcj083931 for perforce@freebsd.org; Tue, 22 Apr 2003 13:58:48 -0700 (PDT) Date: Tue, 22 Apr 2003 13:58:48 -0700 (PDT) Message-Id: <200304222058.h3MKwmcj083931@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 Subject: PERFORCE change 29438 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 20:58:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=29438 Change 29438 by jhb@jhb_laptop on 2003/04/22 13:58:32 IFC @29437 (more proc locking). Affected files ... .. //depot/projects/smpng/sys/kern/kern_clock.c#26 integrate .. //depot/projects/smpng/sys/kern/kern_fork.c#57 integrate .. //depot/projects/smpng/sys/kern/kern_resource.c#35 integrate .. //depot/projects/smpng/sys/kern/sched_4bsd.c#8 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#8 integrate .. //depot/projects/smpng/sys/kern/subr_prof.c#19 integrate .. //depot/projects/smpng/sys/kern/subr_trap.c#51 integrate .. //depot/projects/smpng/sys/sys/proc.h#82 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_snapshot.c#27 integrate Differences ... ==== //depot/projects/smpng/sys/kern/kern_clock.c#26 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_clock.c 8.5 (Berkeley) 1/21/94 - * $FreeBSD: src/sys/kern/kern_clock.c,v 1.156 2003/04/11 03:39:07 jeff Exp $ + * $FreeBSD: src/sys/kern/kern_clock.c,v 1.157 2003/04/22 20:54:04 jhb Exp $ */ #include "opt_ntp.h" @@ -303,17 +303,16 @@ * it should be protected later on by a time_lock, which would * cover psdiv, etc. as well. */ - mtx_lock_spin(&sched_lock); - if (p->p_sflag & PS_STOPPROF) { - mtx_unlock_spin(&sched_lock); + PROC_LOCK_ASSERT(p, MA_OWNED); + if (p->p_flag & P_STOPPROF) return; - } - if ((p->p_sflag & PS_PROFIL) == 0) { - p->p_sflag |= PS_PROFIL; + if ((p->p_flag & P_PROFIL) == 0) { + mtx_lock_spin(&sched_lock); + p->p_flag |= P_PROFIL; if (++profprocs == 1) cpu_startprofclock(); + mtx_unlock_spin(&sched_lock); } - mtx_unlock_spin(&sched_lock); } /* @@ -325,21 +324,20 @@ { PROC_LOCK_ASSERT(p, MA_OWNED); -retry: - mtx_lock_spin(&sched_lock); - if (p->p_sflag & PS_PROFIL) { - if (p->p_profthreads) { - p->p_sflag |= PS_STOPPROF; - mtx_unlock_spin(&sched_lock); - msleep(&p->p_profthreads, &p->p_mtx, PPAUSE, - "stopprof", NULL); - goto retry; + if (p->p_flag & P_PROFIL) { + if (p->p_profthreads != 0) { + p->p_flag |= P_STOPPROF; + while (p->p_profthreads != 0) + msleep(&p->p_profthreads, &p->p_mtx, PPAUSE, + "stopprof", NULL); + p->p_flag &= ~P_STOPPROF; } - p->p_sflag &= ~(PS_PROFIL|PS_STOPPROF); + mtx_lock_spin(&sched_lock); + p->p_flag &= ~P_PROFIL; if (--profprocs == 0) cpu_stopprofclock(); + mtx_unlock_spin(&sched_lock); } - mtx_unlock_spin(&sched_lock); } /* @@ -440,7 +438,7 @@ * bother trying to count it. */ td = curthread; - if (td->td_proc->p_sflag & PS_PROFIL) + if (td->td_proc->p_flag & P_PROFIL) addupc_intr(td, CLKF_PC(frame), 1); } #ifdef GPROF ==== //depot/projects/smpng/sys/kern/kern_fork.c#57 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_fork.c 8.6 (Berkeley) 4/8/94 - * $FreeBSD: src/sys/kern/kern_fork.c,v 1.192 2003/04/17 22:24:59 jhb Exp $ + * $FreeBSD: src/sys/kern/kern_fork.c,v 1.193 2003/04/22 20:54:04 jhb Exp $ */ #include "opt_ktrace.h" @@ -483,10 +483,10 @@ * The p_stats and p_sigacts substructs are set in vm_forkproc. */ p2->p_flag = 0; + if (p1->p_flag & P_PROFIL) + startprofclock(p2); mtx_lock_spin(&sched_lock); p2->p_sflag = PS_INMEM; - if (p1->p_sflag & PS_PROFIL) - startprofclock(p2); /* * Allow the scheduler to adjust the priority of the child and * parent while we hold the sched_lock. @@ -580,7 +580,7 @@ PROC_LOCK(p1); /* - * Preserve some more flags in subprocess. PS_PROFIL has already + * Preserve some more flags in subprocess. P_PROFIL has already * been preserved. */ p2->p_flag |= p1->p_flag & (P_SUGID | P_ALTSTACK); ==== //depot/projects/smpng/sys/kern/kern_resource.c#35 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_resource.c 8.5 (Berkeley) 1/21/94 - * $FreeBSD: src/sys/kern/kern_resource.c,v 1.123 2003/04/18 20:17:47 jhb Exp $ + * $FreeBSD: src/sys/kern/kern_resource.c,v 1.124 2003/04/22 20:45:38 jhb Exp $ */ #include "opt_compat.h" @@ -295,9 +295,11 @@ } if (n < low && suser(td)) return (EACCES); + mtx_lock_spin(&sched_lock); FOREACH_KSEGRP_IN_PROC(p, kg) { sched_nice(kg, n); } + mtx_unlock_spin(&sched_lock); return (0); } ==== //depot/projects/smpng/sys/kern/sched_4bsd.c#8 (text+ko) ==== @@ -35,7 +35,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/kern/sched_4bsd.c,v 1.15 2003/04/11 03:39:48 jeff Exp $ + * $FreeBSD: src/sys/kern/sched_4bsd.c,v 1.16 2003/04/22 20:50:38 jhb Exp $ */ #include @@ -378,7 +378,6 @@ register unsigned int newpriority; struct thread *td; - mtx_lock_spin(&sched_lock); if (kg->kg_pri_class == PRI_TIMESHARE) { newpriority = PUSER + kg->kg_estcpu / INVERSE_ESTCPU_WEIGHT + NICE_WEIGHT * (kg->kg_nice - PRIO_MIN); @@ -389,7 +388,6 @@ FOREACH_THREAD_IN_GROUP(kg, td) { maybe_resched(td); /* XXXKSE silly */ } - mtx_unlock_spin(&sched_lock); } /* ARGSUSED */ @@ -514,6 +512,9 @@ void sched_nice(struct ksegrp *kg, int nice) { + + PROC_LOCK_ASSERT(kg->kg_proc, MA_OWNED); + mtx_assert(&sched_lock, MA_OWNED); kg->kg_nice = nice; resetpriority(kg); } ==== //depot/projects/smpng/sys/kern/sched_ule.c#8 (text+ko) ==== @@ -23,7 +23,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/kern/sched_ule.c,v 1.30 2003/04/22 19:48:25 jhb Exp $ + * $FreeBSD: src/sys/kern/sched_ule.c,v 1.31 2003/04/22 20:50:38 jhb Exp $ */ #include @@ -693,6 +693,8 @@ struct thread *td; struct kseq *kseq; + PROC_LOCK_ASSERT(kg->kg_proc, MA_OWNED); + mtx_assert(&sched_lock, MA_OWNED); /* * We need to adjust the nice counts for running KSEs. */ ==== //depot/projects/smpng/sys/kern/subr_prof.c#19 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)subr_prof.c 8.3 (Berkeley) 9/23/93 - * $FreeBSD: src/sys/kern/subr_prof.c,v 1.63 2003/02/19 05:47:25 imp Exp $ + * $FreeBSD: src/sys/kern/subr_prof.c,v 1.64 2003/04/22 20:54:04 jhb Exp $ */ #include @@ -366,7 +366,9 @@ gp->state = GMON_PROF_OFF; stopguprof(gp); gp->profrate = profhz; + PROC_LOCK(&proc0); startprofclock(&proc0); + PROC_UNLOCK(&proc0); gp->state = state; #ifdef GUPROF } else if (state == GMON_PROF_HIRES) { @@ -424,35 +426,28 @@ register struct profil_args *uap; { struct uprof *upp; - int s; - int error = 0; + struct proc *p; - mtx_lock(&Giant); + if (uap->scale > (1 << 16)) + return (EINVAL); - if (uap->scale > (1 << 16)) { - error = EINVAL; - goto done2; - } + p = td->td_proc; if (uap->scale == 0) { PROC_LOCK(td->td_proc); stopprofclock(td->td_proc); PROC_UNLOCK(td->td_proc); - goto done2; + return (0); } upp = &td->td_proc->p_stats->p_prof; - - /* Block profile interrupts while changing state. */ - s = splstatclock(); upp->pr_off = uap->offset; upp->pr_scale = uap->scale; upp->pr_base = uap->samples; upp->pr_size = uap->size; - startprofclock(td->td_proc); - splx(s); + PROC_LOCK(p); + startprofclock(p); + PROC_UNLOCK(p); -done2: - mtx_unlock(&Giant); - return (error); + return (0); } /* @@ -521,14 +516,11 @@ return; PROC_LOCK(p); - mtx_lock_spin(&sched_lock); - if (!(p->p_sflag & PS_PROFIL)) { - mtx_unlock_spin(&sched_lock); + if (!(p->p_flag & P_PROFIL)) { PROC_UNLOCK(p); return; } p->p_profthreads++; - mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); prof = &p->p_stats->p_prof; if (pc < prof->pr_off || @@ -547,7 +539,7 @@ out: PROC_LOCK(p); if (--p->p_profthreads == 0) { - if (p->p_sflag & PS_STOPPROF) { + if (p->p_flag & P_STOPPROF) { wakeup(&p->p_profthreads); stop = 0; } ==== //depot/projects/smpng/sys/kern/subr_trap.c#51 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $FreeBSD: src/sys/kern/subr_trap.c,v 1.251 2003/04/17 22:33:04 jhb Exp $ + * $FreeBSD: src/sys/kern/subr_trap.c,v 1.252 2003/04/22 20:54:04 jhb Exp $ */ #include "opt_mac.h" @@ -115,11 +115,8 @@ /* * Charge system time if profiling. - * - * XXX should move PS_PROFIL to a place that can obviously be - * accessed safely without sched_lock. */ - if (p->p_sflag & PS_PROFIL) { + if (p->p_flag & P_PROFIL) { quad_t ticks; mtx_lock_spin(&sched_lock); @@ -182,7 +179,7 @@ TDF_NEEDRESCHED | TDF_OWEUPC); cnt.v_soft++; prticks = 0; - if (flags & TDF_OWEUPC && sflag & PS_PROFIL) { + if (flags & TDF_OWEUPC && p->p_flag & P_PROFIL) { prticks = p->p_stats->p_prof.pr_ticks; p->p_stats->p_prof.pr_ticks = 0; } @@ -197,7 +194,7 @@ if (td->td_ucred != p->p_ucred) cred_update_thread(td); - if (flags & TDF_OWEUPC && sflag & PS_PROFIL) + if (flags & TDF_OWEUPC && p->p_flag & P_PROFIL) addupc_task(td, p->p_stats->p_prof.pr_addr, prticks); if (sflag & PS_ALRMPEND) { PROC_LOCK(p); ==== //depot/projects/smpng/sys/sys/proc.h#82 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)proc.h 8.15 (Berkeley) 5/19/95 - * $FreeBSD: src/sys/sys/proc.h,v 1.320 2003/04/22 20:00:25 jhb Exp $ + * $FreeBSD: src/sys/sys/proc.h,v 1.321 2003/04/22 20:54:04 jhb Exp $ */ #ifndef _SYS_PROC_H_ @@ -630,6 +630,8 @@ #define P_KTHREAD 0x00004 /* Kernel thread. (*)*/ #define P_NOLOAD 0x00008 /* Ignore during load avg calculations. */ #define P_PPWAIT 0x00010 /* Parent is waiting for child to exec/exit. */ +#define P_PROFIL 0x00020 /* Has started profiling. */ +#define P_STOPPROF 0x00040 /* Has thread in requesting to stop prof */ #define P_SUGID 0x00100 /* Had set id privileges since last exec. */ #define P_SYSTEM 0x00200 /* System proc: no sigs, stats or swapping. */ #define P_WAITED 0x01000 /* Someone is waiting for us */ @@ -661,8 +663,6 @@ /* These flags are kept in p_sflag and are protected with sched_lock. */ #define PS_INMEM 0x00001 /* Loaded into memory. */ #define PS_XCPU 0x00002 /* Exceeded CPU limit. */ -#define PS_PROFIL 0x00004 /* Has started profiling. */ -#define PS_STOPPROF 0x00008 /* Has thread in requesting to stop prof */ #define PS_ALRMPEND 0x00020 /* Pending SIGVTALRM needs to be posted. */ #define PS_PROFPEND 0x00040 /* Pending SIGPROF needs to be posted. */ #define PS_SWAPINREQ 0x00100 /* Swapin request due to wakeup. */ ==== //depot/projects/smpng/sys/ufs/ffs/ffs_snapshot.c#27 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ffs_snapshot.c 8.11 (McKusick) 7/23/00 - * $FreeBSD: src/sys/ufs/ffs/ffs_snapshot.c,v 1.67 2003/04/12 01:05:19 jeff Exp $ + * $FreeBSD: src/sys/ufs/ffs/ffs_snapshot.c,v 1.68 2003/04/22 20:45:38 jhb Exp $ */ #include @@ -300,8 +300,12 @@ * Recind nice scheduling while running with the filesystem suspended. */ if (td->td_ksegrp->kg_nice > 0) { + PROC_LOCK(td->td_proc); + mtx_lock_spin(&sched_lock); saved_nice = td->td_ksegrp->kg_nice; sched_nice(td->td_ksegrp, 0); + mtx_unlock_spin(&sched_lock); + PROC_UNLOCK(td->td_proc); } /* * Suspend operation on filesystem. @@ -644,8 +648,13 @@ free(copy_fs->fs_csp, M_UFSMNT); bawrite(sbp); out: - if (saved_nice > 0) + if (saved_nice > 0) { + PROC_LOCK(td->td_proc); + mtx_lock_spin(&sched_lock); sched_nice(td->td_ksegrp, saved_nice); + mtx_unlock_spin(&sched_lock); + PROC_UNLOCK(td->td_proc); + } if (fs->fs_active != 0) { FREE(fs->fs_active, M_DEVBUF); fs->fs_active = 0; From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:01:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1BB0A37B41C; Tue, 22 Apr 2003 14:01:55 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B2F2837B408 for ; Tue, 22 Apr 2003 14:01:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C789B43FAF for ; Tue, 22 Apr 2003 14:01:53 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ML1r0U085845 for ; Tue, 22 Apr 2003 14:01:53 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ML1rtI085835 for perforce@freebsd.org; Tue, 22 Apr 2003 14:01:53 -0700 (PDT) Date: Tue, 22 Apr 2003 14:01:53 -0700 (PDT) Message-Id: <200304222101.h3ML1rtI085835@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29439 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:01:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=29439 Change 29439 by peter@peter_overcee on 2003/04/22 14:00:55 integrate i386_hammer Affected files ... .. //depot/projects/hammer/sys/x86_64/include/bus_dma.h#4 integrate .. //depot/projects/hammer/sys/x86_64/include/cpufunc.h#10 integrate .. //depot/projects/hammer/sys/x86_64/x86_64/busdma_machdep.c#6 integrate .. //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#17 integrate .. //depot/projects/hammer/sys/x86_64/x86_64/identcpu.c#8 integrate .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#65 integrate .. //depot/projects/hammer/sys/x86_64/x86_64/sys_machdep.c#10 integrate .. //depot/projects/hammer/sys/x86_64/x86_64/trap.c#24 integrate .. //depot/projects/hammer/sys/x86_64/x86_64/tsc.c#3 integrate .. //depot/projects/hammer/sys/x86_64/x86_64/vm_machdep.c#20 integrate Differences ... ==== //depot/projects/hammer/sys/x86_64/include/bus_dma.h#4 (text+ko) ==== @@ -67,7 +67,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/i386/include/bus_dma.h,v 1.17 2003/01/29 07:25:26 scottl Exp $ */ +/* $FreeBSD: src/sys/i386/include/bus_dma.h,v 1.18 2003/04/10 23:03:33 mux Exp $ */ #ifndef _I386_BUS_DMA_H_ #define _I386_BUS_DMA_H_ @@ -89,16 +89,12 @@ struct uio; /* - * bus_dmasync_op_t - * - * Operations performed by bus_dmamap_sync(). + * Operations performed by bus_dmamap_sync(). */ -typedef enum { - BUS_DMASYNC_PREREAD, - BUS_DMASYNC_POSTREAD, - BUS_DMASYNC_PREWRITE, - BUS_DMASYNC_POSTWRITE -} bus_dmasync_op_t; +#define BUS_DMASYNC_PREREAD 1 +#define BUS_DMASYNC_POSTREAD 2 +#define BUS_DMASYNC_PREWRITE 4 +#define BUS_DMASYNC_POSTWRITE 8 /* * bus_dma_tag_t @@ -234,7 +230,7 @@ /* * Perform a syncronization operation on the given map. */ -void _bus_dmamap_sync(bus_dma_tag_t, bus_dmamap_t, bus_dmasync_op_t); +void _bus_dmamap_sync(bus_dma_tag_t, bus_dmamap_t, int); #define bus_dmamap_sync(dmat, dmamap, op) \ if ((dmamap) != NULL) \ _bus_dmamap_sync(dmat, dmamap, op) ==== //depot/projects/hammer/sys/x86_64/include/cpufunc.h#10 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/i386/include/cpufunc.h,v 1.130 2002/09/22 04:45:21 peter Exp $ + * $FreeBSD: src/sys/i386/include/cpufunc.h,v 1.133 2003/04/20 02:59:13 obrien Exp $ */ /* ==== //depot/projects/hammer/sys/x86_64/x86_64/busdma_machdep.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/i386/i386/busdma_machdep.c,v 1.39 2003/04/07 16:08:32 jake Exp $ + * $FreeBSD: src/sys/i386/i386/busdma_machdep.c,v 1.43 2003/04/15 03:11:03 mux Exp $ */ #include @@ -406,125 +406,6 @@ bus_dmamem_free_size(dmat, vaddr, map, dmat->maxsize); } -#define BUS_DMAMAP_NSEGS ((64 * 1024) / PAGE_SIZE + 1) - -/* - * Map the buffer buf into bus space using the dmamap map. - */ -int -bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, - bus_size_t buflen, bus_dmamap_callback_t *callback, - void *callback_arg, int flags) -{ - vm_offset_t vaddr; - vm_paddr_t paddr; -#ifdef __GNUC__ - bus_dma_segment_t dm_segments[dmat->nsegments]; -#else - bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; -#endif - bus_dma_segment_t *sg; - int seg; - int error; - vm_paddr_t nextpaddr; - - if (map == NULL) - map = &nobounce_dmamap; - - error = 0; - /* - * If we are being called during a callback, pagesneeded will - * be non-zero, so we can avoid doing the work twice. - */ - if (dmat->lowaddr < ptoa((vm_paddr_t)Maxmem) && - map->pagesneeded == 0) { - vm_offset_t vendaddr; - - /* - * Count the number of bounce pages - * needed in order to complete this transfer - */ - vaddr = trunc_page((vm_offset_t)buf); - vendaddr = (vm_offset_t)buf + buflen; - - while (vaddr < vendaddr) { - paddr = pmap_kextract(vaddr); - if (run_filter(dmat, paddr) != 0) { - - map->pagesneeded++; - } - vaddr += PAGE_SIZE; - } - } - - /* Reserve Necessary Bounce Pages */ - if (map->pagesneeded != 0) { - mtx_lock(&bounce_lock); - if (reserve_bounce_pages(dmat, map, 1) != 0) { - - /* Queue us for resources */ - map->dmat = dmat; - map->buf = buf; - map->buflen = buflen; - map->callback = callback; - map->callback_arg = callback_arg; - - STAILQ_INSERT_TAIL(&bounce_map_waitinglist, map, links); - mtx_unlock(&bounce_lock); - return (EINPROGRESS); - } - mtx_unlock(&bounce_lock); - } - - vaddr = (vm_offset_t)buf; - sg = &dm_segments[0]; - seg = 1; - sg->ds_len = 0; - - nextpaddr = 0; - do { - bus_size_t size; - - paddr = pmap_kextract(vaddr); - size = PAGE_SIZE - (paddr & PAGE_MASK); - if (size > buflen) - size = buflen; - - if (map->pagesneeded != 0 && run_filter(dmat, paddr)) { - paddr = add_bounce_page(dmat, map, vaddr, size); - } - - if (sg->ds_len == 0) { - sg->ds_addr = paddr; - sg->ds_len = size; - } else if (paddr == nextpaddr) { - sg->ds_len += size; - } else { - /* Go to the next segment */ - sg++; - seg++; - if (seg > dmat->nsegments) - break; - sg->ds_addr = paddr; - sg->ds_len = size; - } - vaddr += size; - nextpaddr = paddr + size; - buflen -= size; - - } while (buflen > 0); - - if (buflen != 0) { - printf("bus_dmamap_load: Too many segs! buf_len = 0x%lx\n", - (u_long)buflen); - error = EFBIG; - } - - (*callback)(callback_arg, dm_segments, seg, error); - - return (0); -} - /* * Utility function to load a linear buffer. lastaddrp holds state * between invocations (for multiple-buffer loads). segp contains @@ -583,9 +464,22 @@ /* Reserve Necessary Bounce Pages */ if (map->pagesneeded != 0) { mtx_lock(&bounce_lock); - if (reserve_bounce_pages(dmat, map, 0) != 0) { - mtx_unlock(&bounce_lock); - return (ENOMEM); + if (flags & BUS_DMA_NOWAIT) { + if (reserve_bounce_pages(dmat, map, 0) != 0) { + mtx_unlock(&bounce_lock); + return (ENOMEM); + } + } else { + if (reserve_bounce_pages(dmat, map, 1) != 0) { + /* Queue us for resources */ + map->dmat = dmat; + map->buf = buf; + map->buflen = buflen; + STAILQ_INSERT_TAIL(&bounce_map_waitinglist, + map, links); + mtx_unlock(&bounce_lock); + return (EINPROGRESS); + } } mtx_unlock(&bounce_lock); } @@ -657,6 +551,45 @@ return (buflen != 0 ? EFBIG : 0); /* XXX better return value here? */ } +#define BUS_DMAMAP_NSEGS ((64 * 1024) / PAGE_SIZE + 1) + +/* + * Map the buffer buf into bus space using the dmamap map. + */ +int +bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, + bus_size_t buflen, bus_dmamap_callback_t *callback, + void *callback_arg, int flags) +{ +#ifdef __GNUC__ + bus_dma_segment_t dm_segments[dmat->nsegments]; +#else + bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; +#endif + bus_addr_t lastaddr = 0; + int error, nsegs = 0; + + if (map != NULL) { + flags |= BUS_DMA_WAITOK; + map->callback = callback; + map->callback_arg = callback_arg; + } + + error = _bus_dmamap_load_buffer(dmat, map, dm_segments, buf, buflen, + NULL, flags, &lastaddr, &nsegs, 1); + + if (error == EINPROGRESS) + return (error); + + if (error) + (*callback)(callback_arg, dm_segments, 0, error); + else + (*callback)(callback_arg, dm_segments, nsegs + 1, 0); + + return (0); +} + + /* * Like _bus_dmamap_load(), but for mbufs. */ @@ -676,6 +609,7 @@ KASSERT(m0->m_flags & M_PKTHDR, ("bus_dmamap_load_mbuf: no packet header")); + flags |= BUS_DMA_NOWAIT; nsegs = 0; error = 0; if (m0->m_pkthdr.len <= dmat->maxsize) { @@ -727,6 +661,7 @@ struct iovec *iov; struct thread *td = NULL; + flags |= BUS_DMA_NOWAIT; resid = uio->uio_resid; iov = uio->uio_iov; @@ -784,39 +719,32 @@ } void -_bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) +_bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, int op) { struct bounce_page *bpage; if ((bpage = STAILQ_FIRST(&map->bpages)) != NULL) { - /* * Handle data bouncing. We might also * want to add support for invalidating * the caches on broken hardware */ - switch (op) { - case BUS_DMASYNC_PREWRITE: + if (op & BUS_DMASYNC_PREWRITE) { while (bpage != NULL) { bcopy((void *)bpage->datavaddr, (void *)bpage->vaddr, bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } - break; + } - case BUS_DMASYNC_POSTREAD: + if (op & BUS_DMASYNC_POSTREAD) { while (bpage != NULL) { bcopy((void *)bpage->vaddr, (void *)bpage->datavaddr, bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } - break; - case BUS_DMASYNC_PREREAD: - case BUS_DMASYNC_POSTWRITE: - /* No-ops */ - break; } } } ==== //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#17 (text+ko) ==== @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)genassym.c 5.11 (Berkeley) 5/10/91 - * $FreeBSD: src/sys/i386/i386/genassym.c,v 1.138 2003/02/23 22:12:07 jake Exp $ + * $FreeBSD: src/sys/i386/i386/genassym.c,v 1.140 2003/04/17 22:17:28 jhb Exp $ */ #include "opt_compat.h" @@ -75,13 +75,10 @@ ASSYM(VM_PMAP, offsetof(struct vmspace, vm_pmap)); ASSYM(PM_ACTIVE, offsetof(struct pmap, pm_active)); ASSYM(P_SFLAG, offsetof(struct proc, p_sflag)); -ASSYM(P_STATE, offsetof(struct proc, p_state)); ASSYM(P_UAREA, offsetof(struct proc, p_uarea)); ASSYM(TD_FLAGS, offsetof(struct thread, td_flags)); -ASSYM(TD_WCHAN, offsetof(struct thread, td_wchan)); ASSYM(TD_PCB, offsetof(struct thread, td_pcb)); -ASSYM(TD_KSE, offsetof(struct thread, td_kse)); ASSYM(TD_PROC, offsetof(struct thread, td_proc)); ASSYM(TD_INTR_NESTING_LEVEL, offsetof(struct thread, td_intr_nesting_level)); ASSYM(TD_CRITNEST, offsetof(struct thread, td_critnest)); ==== //depot/projects/hammer/sys/x86_64/x86_64/identcpu.c#8 (text+ko) ==== @@ -38,7 +38,7 @@ * SUCH DAMAGE. * * from: Id: machdep.c,v 1.193 1996/06/18 01:22:04 bde Exp - * $FreeBSD: src/sys/i386/i386/identcpu.c,v 1.120 2003/04/04 17:29:54 des Exp $ + * $FreeBSD: src/sys/i386/i386/identcpu.c,v 1.121 2003/04/10 07:05:24 wes Exp $ */ #include "opt_cpu.h" @@ -80,6 +80,10 @@ SYSCTL_STRING(_hw, HW_MODEL, model, CTLFLAG_RD, cpu_model, 0, "Machine model"); +static int hw_clockrate; +SYSCTL_INT(_hw, OID_AUTO, clockrate, CTLFLAG_RD, + &hw_clockrate, 0, "CPU instruction clock rate"); + static char cpu_brand[48]; static struct cpu_nameclass x86_64_cpus[] = { @@ -148,6 +152,7 @@ printf("%s (", cpu_model); switch(cpu_class) { case CPUCLASS_K8: + hw_clockrate = (tsc_freq + 5000) / 1000000; printf("%jd.%02d-MHz ", (intmax_t)(tsc_freq + 4999) / 1000000, (u_int)((tsc_freq + 4999) / 10000) % 100); ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#65 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 - * $FreeBSD: src/sys/i386/i386/machdep.c,v 1.561 2003/04/02 23:53:28 peter Exp $ + * $FreeBSD: src/sys/i386/i386/machdep.c,v 1.562 2003/04/18 20:09:03 jhb Exp $ */ #include "opt_atalk.h" @@ -1420,7 +1420,9 @@ tp = td->td_frame; + PROC_LOCK(curthread->td_proc); mcp->mc_onstack = sigonstack(tp->tf_rsp); + PROC_UNLOCK(curthread->td_proc); mcp->mc_gs = td->td_pcb->pcb_gs; mcp->mc_rdi = tp->tf_rdi; mcp->mc_rsi = tp->tf_rsi; ==== //depot/projects/hammer/sys/x86_64/x86_64/sys_machdep.c#10 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * from: @(#)sys_machdep.c 5.5 (Berkeley) 1/19/91 - * $FreeBSD: src/sys/i386/i386/sys_machdep.c,v 1.79 2003/03/06 04:47:47 rwatson Exp $ + * $FreeBSD: src/sys/i386/i386/sys_machdep.c,v 1.80 2003/04/11 14:45:07 davidxu Exp $ * */ ==== //depot/projects/hammer/sys/x86_64/x86_64/trap.c#24 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $FreeBSD: src/sys/i386/i386/trap.c,v 1.245 2003/03/31 22:41:32 jeff Exp $ + * $FreeBSD: src/sys/i386/i386/trap.c,v 1.249 2003/04/22 08:12:03 davidxu Exp $ */ /* @@ -198,7 +198,8 @@ * and we shouldn't enable interrupts while holding a * spin lock. */ - if (type != T_PAGEFLT && PCPU_GET(spinlocks) == NULL) + if (type != T_PAGEFLT && PCPU_GET(spinlocks) == NULL && + frame.tf_eip != (int)cpu_switch_load_gs) enable_intr(); } } @@ -232,18 +233,6 @@ if (td->td_ucred != p->p_ucred) cred_update_thread(td); - /* - * First check that we shouldn't just abort. - * But check if we are the single thread first! - * XXX p_singlethread not locked, but should be safe. - */ - if ((p->p_flag & P_WEXIT) && (p->p_singlethread != td)) { - PROC_LOCK(p); - mtx_lock_spin(&sched_lock); - thread_exit(); - /* NOTREACHED */ - } - switch (type) { case T_PRIVINFLT: /* privileged instruction fault */ ucode = type; @@ -364,9 +353,6 @@ case T_PROTFLT: /* general protection fault */ case T_SEGNPFLT: /* segment not present fault */ - if (td->td_intr_nesting_level != 0) - break; - /* * Invalid %fs's and %gs's can be created using * procfs or PT_SETREGS or by invalidating the @@ -378,12 +364,20 @@ */ if (frame.tf_rip == (long)cpu_switch_load_gs) { PCPU_GET(curpcb)->pcb_gs = 0; + printf( + "Process %d has bad %%gs, reset to zero\n", + p->p_pid); +#if 0 PROC_LOCK(p); psignal(p, SIGBUS); PROC_UNLOCK(p); +#endif goto out; } + if (td->td_intr_nesting_level != 0) + break; + /* * Invalid segment selectors and out of bounds * %eip's and %esp's can be set up in user mode. ==== //depot/projects/hammer/sys/x86_64/x86_64/tsc.c#3 (text+ko) ==== @@ -23,18 +23,19 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/i386/i386/tsc.c,v 1.198 2003/04/04 23:54:46 tegge Exp $ + * $FreeBSD: src/sys/i386/i386/tsc.c,v 1.199 2003/04/10 23:07:24 des Exp $ */ #include "opt_clock.h" #include #include +#include #include #include #include -#include #include +#include #include #include #include @@ -43,6 +44,13 @@ int tsc_is_broken; u_int tsc_present = 1; +#ifdef SMP +static int smp_tsc; +SYSCTL_INT(_kern_timecounter, OID_AUTO, smp_tsc, CTLFLAG_RD, &smp_tsc, 0, + "Indicates whether the TSC is safe to use in SMP mode"); +TUNABLE_INT("kern.timecounter.smp_tsc", &smp_tsc); +#endif + static unsigned tsc_get_timecount(struct timecounter *tc); static struct timecounter tsc_timecounter = { ==== //depot/projects/hammer/sys/x86_64/x86_64/vm_machdep.c#20 (text+ko) ==== @@ -38,7 +38,7 @@ * * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$ - * $FreeBSD: src/sys/i386/i386/vm_machdep.c,v 1.204 2003/03/30 05:24:52 jake Exp $ + * $FreeBSD: src/sys/i386/i386/vm_machdep.c,v 1.206 2003/04/21 15:05:05 davidxu Exp $ */ #include "opt_isa.h" @@ -184,6 +184,7 @@ { struct mdproc *mdp; + /* Reset pc->pcb_gs and %gs before possibly invalidating it. */ mdp = &td->td_proc->p_md; } From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:01:58 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6A21837B43F; Tue, 22 Apr 2003 14:01:55 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F2CDB37B41A for ; Tue, 22 Apr 2003 14:01:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 87C8643FBD for ; Tue, 22 Apr 2003 14:01:54 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ML1s0U085863 for ; Tue, 22 Apr 2003 14:01:54 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ML1rms085851 for perforce@freebsd.org; Tue, 22 Apr 2003 14:01:53 -0700 (PDT) Date: Tue, 22 Apr 2003 14:01:53 -0700 (PDT) Message-Id: <200304222101.h3ML1rms085851@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29440 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:01:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=29440 Change 29440 by peter@peter_overcee on 2003/04/22 14:01:32 re-nuke some KSE support that crept back in Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/vm_machdep.c#21 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/vm_machdep.c#21 (text+ko) ==== @@ -184,7 +184,6 @@ { struct mdproc *mdp; - /* Reset pc->pcb_gs and %gs before possibly invalidating it. */ mdp = &td->td_proc->p_md; } From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:05:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A9AE837B404; Tue, 22 Apr 2003 14:05:02 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5943B37B401 for ; Tue, 22 Apr 2003 14:05:02 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D979A43FB1 for ; Tue, 22 Apr 2003 14:05:01 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ML510U089666 for ; Tue, 22 Apr 2003 14:05:01 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ML51YF089659 for perforce@freebsd.org; Tue, 22 Apr 2003 14:05:01 -0700 (PDT) Date: Tue, 22 Apr 2003 14:05:01 -0700 (PDT) Message-Id: <200304222105.h3ML51YF089659@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29445 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:05:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=29445 Change 29445 by peter@peter_overcee on 2003/04/22 14:04:50 cpu_switch_load_gs isn't here. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/md_var.h#15 edit .. //depot/projects/hammer/sys/x86_64/x86_64/swtch.s#18 edit .. //depot/projects/hammer/sys/x86_64/x86_64/trap.c#25 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/md_var.h#15 (text+ko) ==== @@ -62,7 +62,6 @@ void cpu_halt(void); void cpu_reset(void); void cpu_setregs(void); -void cpu_switch_load_gs(void) __asm(__STRING(cpu_switch_load_gs)); void doreti_iret(void) __asm(__STRING(doreti_iret)); void doreti_iret_fault(void) __asm(__STRING(doreti_iret_fault)); void doreti_popl_ds(void) __asm(__STRING(doreti_popl_ds)); ==== //depot/projects/hammer/sys/x86_64/x86_64/swtch.s#18 (text+ko) ==== @@ -168,9 +168,6 @@ movq %rdx, PCPU(CURPCB) movq %rsi, PCPU(CURTHREAD) /* into next thread */ - .globl cpu_switch_load_gs -cpu_switch_load_gs: - ret #ifdef INVARIANTS ==== //depot/projects/hammer/sys/x86_64/x86_64/trap.c#25 (text+ko) ==== @@ -198,8 +198,7 @@ * and we shouldn't enable interrupts while holding a * spin lock. */ - if (type != T_PAGEFLT && PCPU_GET(spinlocks) == NULL && - frame.tf_eip != (int)cpu_switch_load_gs) + if (type != T_PAGEFLT && PCPU_GET(spinlocks) == NULL) enable_intr(); } } @@ -353,28 +352,6 @@ case T_PROTFLT: /* general protection fault */ case T_SEGNPFLT: /* segment not present fault */ - /* - * Invalid %fs's and %gs's can be created using - * procfs or PT_SETREGS or by invalidating the - * underlying LDT entry. This causes a fault - * in kernel mode when the kernel attempts to - * switch contexts. Lose the bad context - * (XXX) so that we can continue, and generate - * a signal. - */ - if (frame.tf_rip == (long)cpu_switch_load_gs) { - PCPU_GET(curpcb)->pcb_gs = 0; - printf( - "Process %d has bad %%gs, reset to zero\n", - p->p_pid); -#if 0 - PROC_LOCK(p); - psignal(p, SIGBUS); - PROC_UNLOCK(p); -#endif - goto out; - } - if (td->td_intr_nesting_level != 0) break; From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:07:07 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9099437B404; Tue, 22 Apr 2003 14:07:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 430DB37B401 for ; Tue, 22 Apr 2003 14:07:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC30743FD7 for ; Tue, 22 Apr 2003 14:07:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ML750U091408 for ; Tue, 22 Apr 2003 14:07:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ML75Fg091403 for perforce@freebsd.org; Tue, 22 Apr 2003 14:07:05 -0700 (PDT) Date: Tue, 22 Apr 2003 14:07:05 -0700 (PDT) Message-Id: <200304222107.h3ML75Fg091403@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29447 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:07:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=29447 Change 29447 by peter@peter_overcee on 2003/04/22 14:06:49 kill doreti_popl_ds() crud Affected files ... .. //depot/projects/hammer/sys/x86_64/include/md_var.h#16 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/md_var.h#16 (text+ko) ==== @@ -64,12 +64,6 @@ void cpu_setregs(void); void doreti_iret(void) __asm(__STRING(doreti_iret)); void doreti_iret_fault(void) __asm(__STRING(doreti_iret_fault)); -void doreti_popl_ds(void) __asm(__STRING(doreti_popl_ds)); -void doreti_popl_ds_fault(void) __asm(__STRING(doreti_popl_ds_fault)); -void doreti_popl_es(void) __asm(__STRING(doreti_popl_es)); -void doreti_popl_es_fault(void) __asm(__STRING(doreti_popl_es_fault)); -void doreti_popl_fs(void) __asm(__STRING(doreti_popl_fs)); -void doreti_popl_fs_fault(void) __asm(__STRING(doreti_popl_fs_fault)); void enable_sse(void); void fillw(int /*u_short*/ pat, void *base, size_t cnt); void pagezero(void *addr); From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:13:14 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 68F0937B404; Tue, 22 Apr 2003 14:13:14 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2006A37B401 for ; Tue, 22 Apr 2003 14:13:14 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF22A43FB1 for ; Tue, 22 Apr 2003 14:13:13 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MLDD0U095077 for ; Tue, 22 Apr 2003 14:13:13 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MLDD4l095069 for perforce@freebsd.org; Tue, 22 Apr 2003 14:13:13 -0700 (PDT) Date: Tue, 22 Apr 2003 14:13:13 -0700 (PDT) Message-Id: <200304222113.h3MLDD4l095069@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29448 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:13:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=29448 Change 29448 by peter@peter_daintree on 2003/04/22 14:12:33 stub out the pcpu stuff so that I dont have to worry about %fs/%gs for now Affected files ... .. //depot/projects/hammer/sys/x86_64/include/pcpu.h#7 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/pcpu.h#7 (text+ko) ==== @@ -54,6 +54,7 @@ #elif defined(__GNUC__) +#if 0 /* * Evaluates to the byte offset of the per-cpu variable name. */ @@ -155,6 +156,15 @@ #define PCPU_GET(member) __PCPU_GET(pc_ ## member) #define PCPU_PTR(member) __PCPU_PTR(pc_ ## member) #define PCPU_SET(member, val) __PCPU_SET(pc_ ## member, val) +#else + +extern struct pcpu __pcpu; + +#define PCPU_GET(member) (__pcpu.pc_ ## member) +#define PCPU_PTR(member) (&__pcpu.pc_ ## member) +#define PCPU_SET(member,value) (__pcpu.pc_ ## member = (value)) + +#endif #else #error gcc or lint is required to use this file From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:14:17 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7D41237B404; Tue, 22 Apr 2003 14:14:16 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1813E37B401 for ; Tue, 22 Apr 2003 14:14:16 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9F8E143FBD for ; Tue, 22 Apr 2003 14:14:15 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MLEF0U096062 for ; Tue, 22 Apr 2003 14:14:15 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MLEFmC096056 for perforce@freebsd.org; Tue, 22 Apr 2003 14:14:15 -0700 (PDT) Date: Tue, 22 Apr 2003 14:14:15 -0700 (PDT) Message-Id: <200304222114.h3MLEFmC096056@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29449 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:14:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=29449 Change 29449 by peter@peter_daintree on 2003/04/22 14:13:16 stub out the asm macros for pcpu stuff as well (for now) Affected files ... .. //depot/projects/hammer/sys/x86_64/include/asmacros.h#4 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/asmacros.h#4 (text+ko) ==== @@ -64,9 +64,13 @@ #define NON_GPROF_RET .byte 0xc3 /* opcode for `ret' */ #ifdef LOCORE +#if 0 #define PCPU(member) %fs:PC_ ## member #define PCPU_ADDR(member, reg) movq %fs:PC_PRVSPACE,reg; \ addq $PC_ ## member,reg +#else +#define PCPU(member) __pcpu + PC_ ## member +#endif #endif #ifdef GPROF From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:16:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9ADDD37B409; Tue, 22 Apr 2003 14:16:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4886337B404 for ; Tue, 22 Apr 2003 14:16:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CECDE43FA3 for ; Tue, 22 Apr 2003 14:16:18 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MLGI0U097877 for ; Tue, 22 Apr 2003 14:16:18 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MLGIuW097870 for perforce@freebsd.org; Tue, 22 Apr 2003 14:16:18 -0700 (PDT) Date: Tue, 22 Apr 2003 14:16:18 -0700 (PDT) Message-Id: <200304222116.h3MLGIuW097870@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29450 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:16:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=29450 Change 29450 by peter@peter_overcee on 2003/04/22 14:15:19 globalize __pcpu so that the PCPU*() macros can get to it from within the compiler and assembler. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#66 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#66 (text+ko) ==== @@ -150,7 +150,7 @@ struct kva_md_info kmi; static struct trapframe proc0_tf; -static struct pcpu __pcpu; +struct pcpu __pcpu; struct mtx icu_lock; From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:20:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B721B37B405; Tue, 22 Apr 2003 14:20:25 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5E04137B401 for ; Tue, 22 Apr 2003 14:20:25 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9837343F75 for ; Tue, 22 Apr 2003 14:20:24 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MLKO0U000161 for ; Tue, 22 Apr 2003 14:20:24 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MLKNwm000149 for perforce@freebsd.org; Tue, 22 Apr 2003 14:20:23 -0700 (PDT) Date: Tue, 22 Apr 2003 14:20:23 -0700 (PDT) Message-Id: <200304222120.h3MLKNwm000149@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29451 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:20:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=29451 Change 29451 by peter@peter_overcee on 2003/04/22 14:20:02 make sure the doublefault stack is 16 byte aligned at minimum. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#67 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#67 (text+ko) ==== @@ -551,7 +551,7 @@ static struct gate_descriptor idt0[NIDT]; struct gate_descriptor *idt = &idt0[0]; /* interrupt descriptor table */ -static char dblfault_stack[PAGE_SIZE]; +static char dblfault_stack[PAGE_SIZE] __aligned(16); struct aligned_tss common_tss; From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:23:30 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5DAB037B404; Tue, 22 Apr 2003 14:23:30 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1154337B401 for ; Tue, 22 Apr 2003 14:23:30 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8DA0943FAF for ; Tue, 22 Apr 2003 14:23:29 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MLNT0U002827 for ; Tue, 22 Apr 2003 14:23:29 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MLNTZA002818 for perforce@freebsd.org; Tue, 22 Apr 2003 14:23:29 -0700 (PDT) Date: Tue, 22 Apr 2003 14:23:29 -0700 (PDT) Message-Id: <200304222123.h3MLNTZA002818@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29453 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:23:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=29453 Change 29453 by peter@peter_overcee on 2003/04/22 14:22:37 renumber GUCODE/GUDATA - XXX GUDATA isn't needed in long mode. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/segments.h#16 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#68 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/segments.h#16 (text+ko) ==== @@ -176,10 +176,10 @@ #define GNULL_SEL 0 /* Null Descriptor */ #define GCODE_SEL 1 /* Kernel Code Descriptor */ #define GDATA_SEL 2 /* Kernel Data Descriptor */ -#define GPROC0_SEL 3 /* Task state process slot zero and up */ -/* slot 4 is second half of GPROC0_SEL */ -#define GUCODE_SEL 5 /* User Code Descriptor */ -#define GUDATA_SEL 6 /* User Data Descriptor */ +#define GUCODE_SEL 3 /* User Code Descriptor */ +#define GUDATA_SEL 4 /* User Data Descriptor */ +#define GPROC0_SEL 5 /* TSS for entering kernel etc */ +/* slot 6 is second half of GPROC0_SEL */ #define NGDT 7 #ifdef _KERNEL ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#68 (text+ko) ==== @@ -584,7 +584,25 @@ 1, /* long */ 1, /* default 32 vs 16 bit size */ 1 /* limit granularity (byte/page units)*/ }, -/* GPROC0_SEL 3 Proc 0 Tss Descriptor */ +/* GUCODE_SEL 3 Code Descriptor for user */ +{ 0x0, /* segment base address */ + 0xfffff, /* length - all address space */ + SDT_MEMERA, /* segment type */ + SEL_UPL, /* segment descriptor priority level */ + 1, /* segment descriptor present */ + 1, /* long */ + 0, /* default 32 vs 16 bit size */ + 1 /* limit granularity (byte/page units)*/ }, +/* GUDATA_SEL 4 Code Descriptor for user */ +{ 0x0, /* segment base address */ + 0xfffff, /* length - all address space */ + SDT_MEMRWA, /* segment type */ + SEL_UPL, /* segment descriptor priority level */ + 1, /* segment descriptor present */ + 1, /* long */ + 0, /* default 32 vs 16 bit size */ + 1 /* limit granularity (byte/page units)*/ }, +/* GPROC0_SEL 5 Proc 0 Tss Descriptor */ { 0x0, /* segment base address */ sizeof(struct x86_64tss)-1,/* length - all address space */ @@ -603,24 +621,6 @@ 0, /* long */ 0, /* default 32 vs 16 bit size */ 0 /* limit granularity (byte/page units)*/ }, -/* GUCODE_SEL 5 Code Descriptor for user */ -{ 0x0, /* segment base address */ - 0xfffff, /* length - all address space */ - SDT_MEMERA, /* segment type */ - SEL_UPL, /* segment descriptor priority level */ - 1, /* segment descriptor present */ - 1, /* long */ - 0, /* default 32 vs 16 bit size */ - 1 /* limit granularity (byte/page units)*/ }, -/* GUDATA_SEL 6 Code Descriptor for user */ -{ 0x0, /* segment base address */ - 0xfffff, /* length - all address space */ - SDT_MEMRWA, /* segment type */ - SEL_UPL, /* segment descriptor priority level */ - 1, /* segment descriptor present */ - 1, /* long */ - 0, /* default 32 vs 16 bit size */ - 1 /* limit granularity (byte/page units)*/ }, }; void From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:36:50 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6029E37B408; Tue, 22 Apr 2003 14:36:49 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0AF9C37B404 for ; Tue, 22 Apr 2003 14:36:49 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A7A3243FBF for ; Tue, 22 Apr 2003 14:36:48 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MLam0U013184 for ; Tue, 22 Apr 2003 14:36:48 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MLalMs013176 for perforce@freebsd.org; Tue, 22 Apr 2003 14:36:47 -0700 (PDT) Date: Tue, 22 Apr 2003 14:36:47 -0700 (PDT) Message-Id: <200304222136.h3MLalMs013176@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29457 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:36:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=29457 Change 29457 by peter@peter_overcee on 2003/04/22 14:35:55 Do not block out userland access at the PDP level, because this cuts off userland access entirely. Seperate out the recursive wiring and the pdp setup so that being too clever doesn't hide mistakes like I fixed above. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/pmap.c#23 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/pmap.c#23 (text+ko) ==== @@ -1071,9 +1071,14 @@ for (i = 0; i < NPGPTD; i++) { pa = VM_PAGE_TO_PHYS(ptdpg[i]); pmap->pm_pdir[PTDPTDI + i] = pa | PG_V | PG_RW | PG_A | PG_M; - pmap->pm_pdp[i] = pa | PG_RW | PG_V; + } + /* Connect ptd pages to pdp */ + for (i = 0; i < NPGPTD; i++) { + pa = VM_PAGE_TO_PHYS(ptdpg[i]); + pmap->pm_pdp[i] = pa | PG_RW | PG_V | PG_U; } - pmap->pm_pml4[0] = VM_PAGE_TO_PHYS(pdppg) | PG_RW | PG_V; + /* connect pdp to pml4 */ + pmap->pm_pml4[0] = VM_PAGE_TO_PHYS(pdppg) | PG_RW | PG_V | PG_U; pmap->pm_active = 0; TAILQ_INIT(&pmap->pm_pvlist); From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:42:59 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 74AD837B404; Tue, 22 Apr 2003 14:42:58 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0D97037B401 for ; Tue, 22 Apr 2003 14:42:58 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A56B943FDF for ; Tue, 22 Apr 2003 14:42:57 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MLgv0U016969 for ; Tue, 22 Apr 2003 14:42:57 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MLguGf016958 for perforce@freebsd.org; Tue, 22 Apr 2003 14:42:56 -0700 (PDT) Date: Tue, 22 Apr 2003 14:42:56 -0700 (PDT) Message-Id: <200304222142.h3MLguGf016958@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29459 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:42:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=29459 Change 29459 by peter@peter_overcee on 2003/04/22 14:42:45 implement syscalls. XXX there is much evilness here, but it is sufficient for now. struct trapframe should be reordered so that the first 6 args can be taken directly from there, or or the args pointer set to point to it. Only copy the args when we need > 6 syscall args and need to suck in the remaining 2 args from the stack. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/trap.c#26 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/trap.c#26 (text+ko) ==== @@ -652,7 +652,7 @@ u_int sticks; int error; int narg; - int args[8]; + register_t args[8]; u_int code; /* @@ -676,7 +676,7 @@ cred_update_thread(td); if (p->p_flag & P_THREADED) thread_user_enter(p, td); - params = (caddr_t)frame.tf_rsp + sizeof(int); + params = (caddr_t)frame.tf_rsp + sizeof(long); code = frame.tf_rax; orig_tf_rflags = frame.tf_rflags; @@ -684,7 +684,7 @@ /* * The prep code is MP aware. */ - (*p->p_sysent->sv_prepsyscall)(&frame, args, &code, ¶ms); + (*p->p_sysent->sv_prepsyscall)(&frame, (int *)args, &code, ¶ms); } else { /* * Need to check if this is a 32 bit or 64 bit syscall. @@ -719,10 +719,25 @@ /* * copyin and the ktrsyscall()/ktrsysret() code is MP-aware */ - if (params != NULL && narg != 0) - error = copyin(params, (caddr_t)args, - (u_int)(narg * sizeof(int))); - else + if (params != NULL && narg != 0) { + error = 0; + /* XXX reorder trapframe so we can just copy the first 6 args */ + if (narg > 0) + args[0] = frame->tf_rdi; + if (narg > 1) + args[1] = frame->tf_rsi; + if (narg > 2) + args[2] = frame->tf_rdx; + if (narg > 3) + args[3] = frame->tf_rcx; + if (narg > 4) + args[4] = frame->tf_r8; + if (narg > 5) + args[5] = frame->tf_r9; + if (narg > 6) + error = copyin(params, (caddr_t)&args[6], + (u_int)((narg - 6) * sizeof(register_t))); + } else error = 0; #ifdef KTRACE From owner-p4-projects@FreeBSD.ORG Tue Apr 22 14:48:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 58A9D37B404; Tue, 22 Apr 2003 14:48:05 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0D13837B401 for ; Tue, 22 Apr 2003 14:48:05 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AD2DC43FA3 for ; Tue, 22 Apr 2003 14:48:04 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MLm40U020738 for ; Tue, 22 Apr 2003 14:48:04 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MLm4Ee020731 for perforce@freebsd.org; Tue, 22 Apr 2003 14:48:04 -0700 (PDT) Date: Tue, 22 Apr 2003 14:48:04 -0700 (PDT) Message-Id: <200304222148.h3MLm4Ee020731@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29460 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 21:48:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=29460 Change 29460 by peter@peter_overcee on 2003/04/22 14:47:55 Not that it matters, but dont create a null descriptor under the second half of the double-sized tss descriptor, only to have it clobbered a few lines down. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#69 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#69 (text+ko) ==== @@ -1161,7 +1161,7 @@ gdt_segs[GPROC0_SEL].ssd_base = (uintptr_t)&common_tss.tss; for (x = 0; x < NGDT; x++) { - if (x != GPROC0_SEL) + if (x != GPROC0_SEL && x != (GPROC0_SEL + 1)) ssdtosd(&gdt_segs[x], &gdt[x]); } ssdtosyssd(&gdt_segs[GPROC0_SEL], (struct system_segment_descriptor *)&gdt[GPROC0_SEL]); From owner-p4-projects@FreeBSD.ORG Tue Apr 22 15:03:25 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 99A0937B404; Tue, 22 Apr 2003 15:03:24 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 46DE237B401 for ; Tue, 22 Apr 2003 15:03:24 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D017C43FB1 for ; Tue, 22 Apr 2003 15:03:23 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MM3N0U032288 for ; Tue, 22 Apr 2003 15:03:23 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MM3NcL032279 for perforce@freebsd.org; Tue, 22 Apr 2003 15:03:23 -0700 (PDT) Date: Tue, 22 Apr 2003 15:03:23 -0700 (PDT) Message-Id: <200304222203.h3MM3NcL032279@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29461 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 22:03:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=29461 Change 29461 by peter@peter_daintree on 2003/04/22 15:02:32 gah. add geom_*_enc.c to files.x86_64 Affected files ... .. //depot/projects/hammer/sys/conf/files.x86_64#17 edit Differences ... ==== //depot/projects/hammer/sys/conf/files.x86_64#17 (text+ko) ==== @@ -93,7 +93,9 @@ dev/syscons/syscons.c optional sc dev/syscons/sysmouse.c optional sc geom/geom_bsd.c standard +geom/geom_bsd_enc.c standard geom/geom_mbr.c standard +geom/geom_mbr_enc.c standard #i386/isa/pmtimer.c optional pmtimer # From owner-p4-projects@FreeBSD.ORG Tue Apr 22 15:12:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4DE8E37B404; Tue, 22 Apr 2003 15:12:36 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 05DFC37B401 for ; Tue, 22 Apr 2003 15:12:36 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 872E443F3F for ; Tue, 22 Apr 2003 15:12:35 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MMCZ0U038666 for ; Tue, 22 Apr 2003 15:12:35 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MMCZJQ038658 for perforce@freebsd.org; Tue, 22 Apr 2003 15:12:35 -0700 (PDT) Date: Tue, 22 Apr 2003 15:12:35 -0700 (PDT) Message-Id: <200304222212.h3MMCZJQ038658@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29462 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 22:12:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=29462 Change 29462 by peter@peter_daintree on 2003/04/22 15:12:19 The bastards! My evil hack to offset the f*cked up internal alignment of the tss struct (what the hell were they thinking??) appears to be what was stopping me getting into user mode. Oh well, CR4_AC (alignment checking) is off, so lets just give in for now. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/tss.h#8 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/tss.h#8 (text+ko) ==== @@ -47,39 +47,29 @@ * fields. It might be worth trying to set the tss on a +4 byte offset to * make the 64 bit fields aligned in practice. */ -#pragma pack(1) struct x86_64tss { u_int32_t tss_rsvd0; - u_int64_t tss_rsp0; /* kernel stack pointer ring 0 */ - u_int64_t tss_rsp1; /* kernel stack pointer ring 1 */ - u_int64_t tss_rsp2; /* kernel stack pointer ring 2 */ + u_int64_t tss_rsp0 __packed; /* kernel stack pointer ring 0 */ + u_int64_t tss_rsp1 __packed; /* kernel stack pointer ring 1 */ + u_int64_t tss_rsp2 __packed; /* kernel stack pointer ring 2 */ u_int32_t tss_rsvd1; u_int32_t tss_rsvd2; u_int32_t tss_rsvd3; - u_int64_t tss_ist1; /* Interrupt stack table 1 */ - u_int64_t tss_ist2; /* Interrupt stack table 2 */ - u_int64_t tss_ist3; /* Interrupt stack table 3 */ - u_int64_t tss_ist4; /* Interrupt stack table 4 */ - u_int64_t tss_ist5; /* Interrupt stack table 5 */ - u_int64_t tss_ist6; /* Interrupt stack table 6 */ - u_int64_t tss_ist7; /* Interrupt stack table 7 */ + u_int64_t tss_ist1 __packed; /* Interrupt stack table 1 */ + u_int64_t tss_ist2 __packed; /* Interrupt stack table 2 */ + u_int64_t tss_ist3 __packed; /* Interrupt stack table 3 */ + u_int64_t tss_ist4 __packed; /* Interrupt stack table 4 */ + u_int64_t tss_ist5 __packed; /* Interrupt stack table 5 */ + u_int64_t tss_ist6 __packed; /* Interrupt stack table 6 */ + u_int64_t tss_ist7 __packed; /* Interrupt stack table 7 */ u_int32_t tss_rsvd4; u_int32_t tss_rsvd5; u_int16_t tss_rsvd6; u_int16_t tss_iobase; /* io bitmap offset */ }; -#pragma pack() #ifdef _KERNEL -/* - * Nasty hack to arrange internal alignment. - * What were they thinking?? - */ -struct aligned_tss { - u_int32_t pad; - struct x86_64tss tss __packed; -}; -extern struct aligned_tss common_tss; +extern struct x86_64tss common_tss; #endif #endif /* _MACHINE_TSS_H_ */ From owner-p4-projects@FreeBSD.ORG Tue Apr 22 15:14:40 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 74D5F37B404; Tue, 22 Apr 2003 15:14:39 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1260937B401 for ; Tue, 22 Apr 2003 15:14:39 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AE1CC43FBD for ; Tue, 22 Apr 2003 15:14:38 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MMEc0U040463 for ; Tue, 22 Apr 2003 15:14:38 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MMEc9d040454 for perforce@freebsd.org; Tue, 22 Apr 2003 15:14:38 -0700 (PDT) Date: Tue, 22 Apr 2003 15:14:38 -0700 (PDT) Message-Id: <200304222214.h3MMEc9d040454@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29463 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 22:14:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=29463 Change 29463 by peter@peter_overcee on 2003/04/22 15:14:06 update for the loss of struct aligned_tss; Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#70 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#70 (text+ko) ==== @@ -553,7 +553,7 @@ static char dblfault_stack[PAGE_SIZE] __aligned(16); -struct aligned_tss common_tss; +struct x86_64tss common_tss; /* software prototypes -- in more palatable form */ struct soft_segment_descriptor gdt_segs[] = { @@ -1158,7 +1158,7 @@ /* * make gdt memory segments */ - gdt_segs[GPROC0_SEL].ssd_base = (uintptr_t)&common_tss.tss; + gdt_segs[GPROC0_SEL].ssd_base = (uintptr_t)&common_tss; for (x = 0; x < NGDT; x++) { if (x != GPROC0_SEL && x != (GPROC0_SEL + 1)) @@ -1238,12 +1238,12 @@ initializecpu(); /* Initialize CPU registers */ /* make an initial tss so cpu can get interrupt stack on syscall! */ - common_tss.tss.tss_rsp0 = thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE - sizeof(struct pcb); + common_tss.tss_rsp0 = thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE - sizeof(struct pcb); /* XXX we need to update tss_rsp0 in cpu_switch */ /* XXX maybe not yet, everything is still running in supervisor mode */ /* doublefault stack space, runs on ist1 */ - common_tss.tss.tss_ist1 = (long)&dblfault_stack[sizeof(dblfault_stack)]; + common_tss.tss_ist1 = (long)&dblfault_stack[sizeof(dblfault_stack)]; gsel_tss = GSEL(GPROC0_SEL, SEL_KPL); ltr(gsel_tss); From owner-p4-projects@FreeBSD.ORG Tue Apr 22 15:17:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CF38F37B404; Tue, 22 Apr 2003 15:17:43 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7FAFA37B401 for ; Tue, 22 Apr 2003 15:17:43 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1496943FA3 for ; Tue, 22 Apr 2003 15:17:43 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3MMHg0U042784 for ; Tue, 22 Apr 2003 15:17:42 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3MMHgL0042778 for perforce@freebsd.org; Tue, 22 Apr 2003 15:17:42 -0700 (PDT) Date: Tue, 22 Apr 2003 15:17:42 -0700 (PDT) Message-Id: <200304222217.h3MMHgL0042778@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29464 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Apr 2003 22:17:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=29464 Change 29464 by peter@peter_overcee on 2003/04/22 15:17:07 update for loss of my evil struct aligned_tss hack Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#18 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#18 (text+ko) ==== @@ -130,7 +130,7 @@ ASSYM(PCB_SIZE, sizeof(struct pcb)); -ASSYM(COMMON_TSS_RSP0, offsetof(struct aligned_tss, tss.tss_rsp0)); +ASSYM(COMMON_TSS_RSP0, offsetof(struct x86_64tss, tss_rsp0)); ASSYM(TF_TRAPNO, offsetof(struct trapframe, tf_trapno)); ASSYM(TF_ERR, offsetof(struct trapframe, tf_err)); From owner-p4-projects@FreeBSD.ORG Tue Apr 22 17:47:49 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2B05337B405; Tue, 22 Apr 2003 17:47:48 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B5D7F37B401 for ; Tue, 22 Apr 2003 17:47:47 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6114143F75 for ; Tue, 22 Apr 2003 17:47:47 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N0ll0U055778 for ; Tue, 22 Apr 2003 17:47:47 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N0lke9055774 for perforce@freebsd.org; Tue, 22 Apr 2003 17:47:46 -0700 (PDT) Date: Tue, 22 Apr 2003 17:47:46 -0700 (PDT) Message-Id: <200304230047.h3N0lke9055774@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29469 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 00:47:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=29469 Change 29469 by peter@peter_daintree on 2003/04/22 17:47:22 oops, frame was a pointer in a development diff only Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/trap.c#27 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/trap.c#27 (text+ko) ==== @@ -723,17 +723,17 @@ error = 0; /* XXX reorder trapframe so we can just copy the first 6 args */ if (narg > 0) - args[0] = frame->tf_rdi; + args[0] = frame.tf_rdi; if (narg > 1) - args[1] = frame->tf_rsi; + args[1] = frame.tf_rsi; if (narg > 2) - args[2] = frame->tf_rdx; + args[2] = frame.tf_rdx; if (narg > 3) - args[3] = frame->tf_rcx; + args[3] = frame.tf_rcx; if (narg > 4) - args[4] = frame->tf_r8; + args[4] = frame.tf_r8; if (narg > 5) - args[5] = frame->tf_r9; + args[5] = frame.tf_r9; if (narg > 6) error = copyin(params, (caddr_t)&args[6], (u_int)((narg - 6) * sizeof(register_t))); From owner-p4-projects@FreeBSD.ORG Tue Apr 22 18:15:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 27E3A37B404; Tue, 22 Apr 2003 18:15:22 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C906537B401 for ; Tue, 22 Apr 2003 18:15:21 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 28FFC43F3F for ; Tue, 22 Apr 2003 18:15:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N1FK0U076218 for ; Tue, 22 Apr 2003 18:15:20 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N1FKr5076211 for perforce@freebsd.org; Tue, 22 Apr 2003 18:15:20 -0700 (PDT) Date: Tue, 22 Apr 2003 18:15:20 -0700 (PDT) Message-Id: <200304230115.h3N1FKr5076211@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29470 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 01:15:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=29470 Change 29470 by peter@peter_daintree on 2003/04/22 18:14:42 Argh! I'm tired of causing an entire kernel recompile Affected files ... .. //depot/projects/hammer/sys/x86_64/include/pcpu.h#8 edit .. //depot/projects/hammer/sys/x86_64/include/proc.h#7 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#71 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/pcpu.h#8 (text+ko) ==== @@ -31,9 +31,6 @@ #ifdef _KERNEL -#include -#include - /* * The SMP parts are setup in pmap.c and locore.s for the BSP, and * mp_machdep.c sets up the data for the AP's to "see" when they awake. ==== //depot/projects/hammer/sys/x86_64/include/proc.h#7 (text+ko) ==== @@ -37,8 +37,6 @@ #ifndef _MACHINE_PROC_H_ #define _MACHINE_PROC_H_ -#include - /* * Machine-dependent part of the proc structure for i386. */ ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#71 (text+ko) ==== @@ -103,6 +103,7 @@ #ifdef PERFMON #include #endif +#include #include #include From owner-p4-projects@FreeBSD.ORG Tue Apr 22 18:15:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 98C0A37B413; Tue, 22 Apr 2003 18:15:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E23E137B40A for ; Tue, 22 Apr 2003 18:15:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9F70C43FBF for ; Tue, 22 Apr 2003 18:15:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N1FL0U076230 for ; Tue, 22 Apr 2003 18:15:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N1FL1M076223 for perforce@freebsd.org; Tue, 22 Apr 2003 18:15:21 -0700 (PDT) Date: Tue, 22 Apr 2003 18:15:21 -0700 (PDT) Message-Id: <200304230115.h3N1FL1M076223@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29471 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 01:15:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=29471 Change 29471 by peter@peter_daintree on 2003/04/22 18:15:13 apply a bigger hammer to the segment alignment stuff. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/segments.h#17 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/segments.h#17 (text+ko) ==== @@ -76,7 +76,7 @@ u_int64_t sd_def32:1; /* default 32 vs 16 bit size */ u_int64_t sd_gran:1; /* limit granularity (byte/page units)*/ u_int64_t sd_hibase:8; /* segment base address (msb) */ -}; +} __packed; /* * System segment descriptors (128 bit wide) @@ -90,11 +90,11 @@ u_int64_t sd_hilimit:4; /* segment extent (msb) */ u_int64_t sd_xx0:3; /* unused */ u_int64_t sd_gran:1; /* limit granularity (byte/page units)*/ - u_int64_t sd_hibase:40; /* segment base address (msb) */ + u_int64_t sd_hibase:40 __packed;/* segment base address (msb) */ u_int64_t sd_xx1:8; u_int64_t sd_mbz:5; /* MUST be zero */ u_int64_t sd_xx2:19; -}; +} __packed; /* * Gate descriptors (e.g. indirect descriptors, trap, interrupt etc. 128 bit) @@ -110,7 +110,7 @@ u_int64_t gd_p:1; /* segment descriptor present */ u_int64_t gd_hioffset:48 __packed; /* gate offset (msb) */ u_int64_t sd_xx1:32; -}; +} __packed; /* system segments and gate types */ #define SDT_SYSNULL 0 /* system null */ @@ -154,7 +154,7 @@ unsigned long ssd_long:1; /* long mode (for %cs) */ unsigned long ssd_def32:1; /* default 32 vs 16 bit size */ unsigned long ssd_gran:1; /* limit granularity (byte/page units)*/ -}; +} __packed; /* * region descriptors, used to load gdt/idt tables before segments yet exist. @@ -162,7 +162,7 @@ struct region_descriptor { unsigned long rd_limit:16; /* segment extent */ unsigned long rd_base:64 __packed; /* base address */ -}; +} __packed; /* * Size of IDT table From owner-p4-projects@FreeBSD.ORG Tue Apr 22 18:16:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6527D37B404; Tue, 22 Apr 2003 18:16:24 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0020637B401 for ; Tue, 22 Apr 2003 18:16:23 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8A96B43FDD for ; Tue, 22 Apr 2003 18:16:23 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N1GN0U077110 for ; Tue, 22 Apr 2003 18:16:23 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N1GNX5077101 for perforce@freebsd.org; Tue, 22 Apr 2003 18:16:23 -0700 (PDT) Date: Tue, 22 Apr 2003 18:16:23 -0700 (PDT) Message-Id: <200304230116.h3N1GNX5077101@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29472 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 01:16:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=29472 Change 29472 by peter@peter_daintree on 2003/04/22 18:15:46 Do Not Use Any Floating Point Or SSE Stuff In The Kernel Thankyou. Affected files ... .. //depot/projects/hammer/sys/conf/kern.mk#5 edit Differences ... ==== //depot/projects/hammer/sys/conf/kern.mk#5 (text+ko) ==== @@ -57,7 +57,7 @@ # once pmap is ready. # .if ${MACHINE_ARCH} == "x86_64" -CFLAGS+= -mcmodel=medium -mno-red-zone +CFLAGS+= -mcmodel=medium -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow -msoft-float .endif # From owner-p4-projects@FreeBSD.ORG Tue Apr 22 18:23:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8628737B404; Tue, 22 Apr 2003 18:23:33 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2674C37B401 for ; Tue, 22 Apr 2003 18:23:33 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C82B343F3F for ; Tue, 22 Apr 2003 18:23:32 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N1NW0U081983 for ; Tue, 22 Apr 2003 18:23:32 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N1NWki081974 for perforce@freebsd.org; Tue, 22 Apr 2003 18:23:32 -0700 (PDT) Date: Tue, 22 Apr 2003 18:23:32 -0700 (PDT) Message-Id: <200304230123.h3N1NWki081974@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29473 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 01:23:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=29473 Change 29473 by peter@peter_daintree on 2003/04/22 18:23:16 make sure that %ds,%es,%ss etc are not still lingering on the loader trampoline gdt somehow... Note that this will trash the 64 bit msr base address, so another wrmsr() would be needed to repair the damage. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/support.s#19 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/support.s#19 (text+ko) ==== @@ -480,6 +480,13 @@ jmp 1f nop 1: + movl $KDSEL, %eax + mov %ax,%ds + mov %ax,%es + mov %ax,%fs /* Beware, use wrmsr to set 64 bit base */ + mov %ax,%gs + mov %ax,%ss + /* reload code selector by turning return into intersegmental return */ popq %rax pushq $KCSEL From owner-p4-projects@FreeBSD.ORG Tue Apr 22 18:25:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 97CC337B404; Tue, 22 Apr 2003 18:25:36 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4838837B401 for ; Tue, 22 Apr 2003 18:25:36 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E8F1343FD7 for ; Tue, 22 Apr 2003 18:25:35 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N1PZ0U083762 for ; Tue, 22 Apr 2003 18:25:35 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N1PZPM083753 for perforce@freebsd.org; Tue, 22 Apr 2003 18:25:35 -0700 (PDT) Date: Tue, 22 Apr 2003 18:25:35 -0700 (PDT) Message-Id: <200304230125.h3N1PZPM083753@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29474 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 01:25:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=29474 Change 29474 by peter@peter_daintree on 2003/04/22 18:25:34 It is amazing what a 'p4 diff -se ...' turns up at times. Remove some unused flags. Affected files ... .. //depot/projects/hammer/sys/i386/include/pcb.h#6 edit Differences ... ==== //depot/projects/hammer/sys/i386/include/pcb.h#6 (text+ko) ==== @@ -63,11 +63,9 @@ union savefpu pcb_save; u_int pcb_flags; -#define FP_SOFTFP 0x01 /* process using software fltng pnt emulator */ #define PCB_DBREGS 0x02 /* process using debug registers */ #define PCB_NPXTRAP 0x04 /* npx trap pending */ #define PCB_NPXINITDONE 0x08 /* fpu state is initialized */ -#define PCB_VM86CALL 0x10 /* in vm86 call */ caddr_t pcb_onfault; /* copyin/out fault recovery */ int pcb_gs; From owner-p4-projects@FreeBSD.ORG Tue Apr 22 20:13:49 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 774C137B404; Tue, 22 Apr 2003 20:13:48 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 13D8637B401 for ; Tue, 22 Apr 2003 20:13:48 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9FA3343FAF for ; Tue, 22 Apr 2003 20:13:47 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N3Dl0U061644 for ; Tue, 22 Apr 2003 20:13:47 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N3DlcK061635 for perforce@freebsd.org; Tue, 22 Apr 2003 20:13:47 -0700 (PDT) Date: Tue, 22 Apr 2003 20:13:47 -0700 (PDT) Message-Id: <200304230313.h3N3DlcK061635@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29477 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 03:13:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=29477 Change 29477 by peter@peter_overcee on 2003/04/22 20:13:44 make syscalls reachable from userland. doh! Affected files ... .. //depot/projects/hammer/sys/x86_64/include/md_var.h#17 edit .. //depot/projects/hammer/sys/x86_64/isa/intr_machdep.c#12 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#72 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/md_var.h#17 (text+ko) ==== @@ -68,7 +68,7 @@ void fillw(int /*u_short*/ pat, void *base, size_t cnt); void pagezero(void *addr); int is_physical_memory(vm_offset_t addr); -void setidt(int idx, alias_for_inthand_t *func, int typ, int ist); +void setidt(int idx, alias_for_inthand_t *func, int typ, int dpl, int ist); void swi_vm(void *); #endif /* !_MACHINE_MD_VAR_H_ */ ==== //depot/projects/hammer/sys/x86_64/isa/intr_machdep.c#12 (text+ko) ==== @@ -375,7 +375,7 @@ intr_unit[intr] = arg; setidt(ICU_OFFSET + intr, flags & INTR_FAST ? fastintr[intr] : slowintr[intr], - SDT_SYSIGT, 0); + SDT_SYSIGT, SEL_KPL, 0); INTREN(1 << intr); mtx_unlock_spin(&icu_lock); intr_restore(crit); @@ -403,7 +403,7 @@ intr_countp[intr] = &intrcnt[1 + intr]; intr_handler[intr] = isa_strayintr; intr_unit[intr] = &intr_unit[intr]; - setidt(ICU_OFFSET + intr, slowintr[intr], SDT_SYSIGT, 0); + setidt(ICU_OFFSET + intr, slowintr[intr], SDT_SYSIGT, SEL_KPL, 0); mtx_unlock_spin(&icu_lock); intr_restore(crit); return (0); ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#72 (text+ko) ==== @@ -625,10 +625,11 @@ }; void -setidt(idx, func, typ, ist) +setidt(idx, func, typ, int dpl, ist) int idx; inthand_t *func; int typ; + int dpl; int ist; { struct gate_descriptor *ip; @@ -639,7 +640,7 @@ ip->gd_ist = ist; ip->gd_xx = 0; ip->gd_type = typ; - ip->gd_dpl = SEL_KPL; + ip->gd_dpl = dpl; ip->gd_p = 1; ip->gd_hioffset = ((uintptr_t)func)>>16 ; } @@ -1193,28 +1194,28 @@ /* exceptions */ for (x = 0; x < NIDT; x++) - setidt(x, &IDTVEC(rsvd), SDT_SYSTGT, 0); - setidt(0, &IDTVEC(div), SDT_SYSTGT, 0); - setidt(1, &IDTVEC(dbg), SDT_SYSIGT, 0); - setidt(2, &IDTVEC(nmi), SDT_SYSTGT, 0); - setidt(3, &IDTVEC(bpt), SDT_SYSIGT, 0); - setidt(4, &IDTVEC(ofl), SDT_SYSTGT, 0); - setidt(5, &IDTVEC(bnd), SDT_SYSTGT, 0); - setidt(6, &IDTVEC(ill), SDT_SYSTGT, 0); - setidt(7, &IDTVEC(dna), SDT_SYSTGT, 0); - setidt(8, (inthand_t *)dblfault_handler, SDT_SYSIGT, 1); - setidt(9, &IDTVEC(fpusegm), SDT_SYSTGT, 0); - setidt(10, &IDTVEC(tss), SDT_SYSTGT, 0); - setidt(11, &IDTVEC(missing), SDT_SYSTGT, 0); - setidt(12, &IDTVEC(stk), SDT_SYSTGT, 0); - setidt(13, &IDTVEC(prot), SDT_SYSTGT, 0); - setidt(14, &IDTVEC(page), SDT_SYSTGT, 0); - setidt(15, &IDTVEC(rsvd), SDT_SYSTGT, 0); - setidt(16, &IDTVEC(fpu), SDT_SYSTGT, 0); - setidt(17, &IDTVEC(align), SDT_SYSTGT, 0); - setidt(18, &IDTVEC(mchk), SDT_SYSTGT, 0); - setidt(19, &IDTVEC(xmm), SDT_SYSTGT, 0); - setidt(0x80, &IDTVEC(int0x80_syscall), SDT_SYSTGT, 0); + setidt(x, &IDTVEC(rsvd), SDT_SYSTGT, SEL_KPL, 0); + setidt(0, &IDTVEC(div), SDT_SYSTGT, SEL_KPL, 0); + setidt(1, &IDTVEC(dbg), SDT_SYSIGT, SEL_KPL, 0); + setidt(2, &IDTVEC(nmi), SDT_SYSTGT, SEL_KPL, 0); + setidt(3, &IDTVEC(bpt), SDT_SYSIGT, SEL_KPL, 0); + setidt(4, &IDTVEC(ofl), SDT_SYSTGT, SEL_KPL, 0); + setidt(5, &IDTVEC(bnd), SDT_SYSTGT, SEL_KPL, 0); + setidt(6, &IDTVEC(ill), SDT_SYSTGT, SEL_KPL, 0); + setidt(7, &IDTVEC(dna), SDT_SYSTGT, SEL_KPL, 0); + setidt(8, (inthand_t *)dblfault_handler, SDT_SYSIGT, SEL_KPL, 1); + setidt(9, &IDTVEC(fpusegm), SDT_SYSTGT, SEL_KPL, 0); + setidt(10, &IDTVEC(tss), SDT_SYSTGT, SEL_KPL, 0); + setidt(11, &IDTVEC(missing), SDT_SYSTGT, SEL_KPL, 0); + setidt(12, &IDTVEC(stk), SDT_SYSTGT, SEL_KPL, 0); + setidt(13, &IDTVEC(prot), SDT_SYSTGT, SEL_KPL, 0); + setidt(14, &IDTVEC(page), SDT_SYSTGT, SEL_KPL, 0); + setidt(15, &IDTVEC(rsvd), SDT_SYSTGT, SEL_KPL, 0); + setidt(16, &IDTVEC(fpu), SDT_SYSTGT, SEL_KPL, 0); + setidt(17, &IDTVEC(align), SDT_SYSTGT, SEL_KPL, 0); + setidt(18, &IDTVEC(mchk), SDT_SYSTGT, SEL_KPL, 0); + setidt(19, &IDTVEC(xmm), SDT_SYSTGT, SEL_KPL, 0); + setidt(0x80, &IDTVEC(int0x80_syscall), SDT_SYSTGT, SEL_UPL, 0); r_idt.rd_limit = sizeof(idt0) - 1; r_idt.rd_base = (long) idt; From owner-p4-projects@FreeBSD.ORG Tue Apr 22 20:15:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D0B6637B404; Tue, 22 Apr 2003 20:15:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 70D2637B401 for ; Tue, 22 Apr 2003 20:15:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0765943F93 for ; Tue, 22 Apr 2003 20:15:51 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N3Fo0U063458 for ; Tue, 22 Apr 2003 20:15:50 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N3Fodm063447 for perforce@freebsd.org; Tue, 22 Apr 2003 20:15:50 -0700 (PDT) Date: Tue, 22 Apr 2003 20:15:50 -0700 (PDT) Message-Id: <200304230315.h3N3Fodm063447@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29478 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 03:15:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=29478 Change 29478 by peter@peter_overcee on 2003/04/22 20:14:51 Argh, K&R claims another casualty Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#73 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#73 (text+ko) ==== @@ -625,7 +625,7 @@ }; void -setidt(idx, func, typ, int dpl, ist) +setidt(idx, func, typ, dpl, ist) int idx; inthand_t *func; int typ; From owner-p4-projects@FreeBSD.ORG Tue Apr 22 22:24:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7F9F137B404; Tue, 22 Apr 2003 22:24:31 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1E5E037B401 for ; Tue, 22 Apr 2003 22:24:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9CDBE43FBD for ; Tue, 22 Apr 2003 22:24:30 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3N5OU0U061330 for ; Tue, 22 Apr 2003 22:24:30 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3N5OUmH061322 for perforce@freebsd.org; Tue, 22 Apr 2003 22:24:30 -0700 (PDT) Date: Tue, 22 Apr 2003 22:24:30 -0700 (PDT) Message-Id: <200304230524.h3N5OUmH061322@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29485 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 05:24:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=29485 Change 29485 by peter@peter_daintree on 2003/04/22 22:23:39 finally (!) implement the detection of 'stray interrupt' vs 'glitch' on the isa ICU. Glitches are expected as a byproduct of the PIC design. XXX why is this code duplicated?? :-( Affected files ... .. //depot/projects/hammer/sys/x86_64/isa/intr_machdep.c#13 edit .. //depot/projects/hammer/sys/x86_64/isa/ithread.c#4 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/isa/intr_machdep.c#13 (text+ko) ==== @@ -252,6 +252,9 @@ /* * Caught a stray interrupt, notify */ +static int isaglitch7; +static int isaglitch15; + static void isa_strayintr(vcookiep) void *vcookiep; @@ -265,8 +268,7 @@ isr = inb(IO_ICU1); outb(IO_ICU1, OCW3_SEL | OCW3_RIS); /* reselect IIR */ if ((isr & 0x80) == 0) { - /* Remove debugging message below */ - log(LOG_ERR, "glitch on irq 7\n"); + isaglitch7++; return; } } @@ -275,8 +277,7 @@ isr = inb(IO_ICU2); outb(IO_ICU2, OCW3_SEL | OCW3_RIS); /* reselect IIR */ if ((isr & 0x80) == 0) { - /* Remove debugging message below */ - log(LOG_ERR, "glitch on irq 15\n"); + isaglitch15++; return; } } ==== //depot/projects/hammer/sys/x86_64/isa/ithread.c#4 (text+ko) ==== @@ -39,6 +39,7 @@ #include #include +#include struct int_entropy { struct proc *p; @@ -46,6 +47,8 @@ }; static u_int straycount[ICU_LEN]; +static u_int glitchcount7; +static u_int glitchcount15; #define MAX_STRAY_LOG 5 @@ -58,7 +61,7 @@ { int irq = (uintptr_t) cookie; /* IRQ we're handling */ struct ithd *ithd = ithds[irq]; /* and the process that does it */ - int error; + int error, isr; /* This used to be in icu_vector.s */ /* @@ -79,7 +82,26 @@ /* * Log stray interrupts. */ - if (error == EINVAL) + if (error == EINVAL) { + /* Determine if it is a stray interrupt or simply a glitch */ + if (irq == 7) { + outb(IO_ICU1, OCW3_SEL); /* select IS register */ + isr = inb(IO_ICU1); + outb(IO_ICU1, OCW3_SEL | OCW3_RIS); /* reselect IIR */ + if ((isr & 0x80) == 0) { + glitchcount7++; + return; + } + } + if (irq == 15) { + outb(IO_ICU2, OCW3_SEL); /* select IS register */ + isr = inb(IO_ICU2); + outb(IO_ICU2, OCW3_SEL | OCW3_RIS); /* reselect IIR */ + if ((isr & 0x80) == 0) { + glitchcount15++; + return; + } + } if (straycount[irq] < MAX_STRAY_LOG) { printf("stray irq %d\n", irq); if (++straycount[irq] == MAX_STRAY_LOG) @@ -87,4 +109,5 @@ "got %d stray irq %d's: not logging anymore\n", MAX_STRAY_LOG, irq); } + } } From owner-p4-projects@FreeBSD.ORG Wed Apr 23 09:59:50 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 442AC37B436; Wed, 23 Apr 2003 09:59:49 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B8CE037B407 for ; Wed, 23 Apr 2003 09:59:48 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A9DB43F75 for ; Wed, 23 Apr 2003 09:59:42 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NGxg0U080588 for ; Wed, 23 Apr 2003 09:59:42 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NGxfZH080584 for perforce@freebsd.org; Wed, 23 Apr 2003 09:59:41 -0700 (PDT) Date: Wed, 23 Apr 2003 09:59:41 -0700 (PDT) Message-Id: <200304231659.h3NGxfZH080584@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29507 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 16:59:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=29507 Change 29507 by peter@peter_daintree on 2003/04/23 09:59:03 fix copyin(). doh! Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/support.s#20 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/support.s#20 (text+ko) ==== @@ -113,7 +113,7 @@ cld rep movsq - movb %bl,%cl + movb %dl,%cl andb $7,%cl rep movsb From owner-p4-projects@FreeBSD.ORG Wed Apr 23 11:06:07 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E16C437B404; Wed, 23 Apr 2003 11:06:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 73FBC37B401 for ; Wed, 23 Apr 2003 11:06:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0CFC543FCB for ; Wed, 23 Apr 2003 11:06:05 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NI640U031338 for ; Wed, 23 Apr 2003 11:06:04 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NI64JC031329 for perforce@freebsd.org; Wed, 23 Apr 2003 11:06:04 -0700 (PDT) Date: Wed, 23 Apr 2003 11:06:04 -0700 (PDT) Message-Id: <200304231806.h3NI64JC031329@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 Subject: PERFORCE change 29510 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 18:06:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=29510 Change 29510 by jhb@jhb_laptop on 2003/04/23 11:05:05 IFC @29509. Affected files ... .. //depot/projects/smpng/sys/dev/ar/if_ar.c#8 integrate .. //depot/projects/smpng/sys/dev/ar/if_ar_isa.c#4 integrate .. //depot/projects/smpng/sys/dev/ar/if_ar_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/ar/if_arregs.h#3 integrate .. //depot/projects/smpng/sys/dev/pci/pcireg.h#3 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#17 integrate .. //depot/projects/smpng/sys/geom/geom.h#25 integrate .. //depot/projects/smpng/sys/geom/geom_ctl.c#9 integrate .. //depot/projects/smpng/sys/geom/geom_ctl.h#4 integrate .. //depot/projects/smpng/sys/geom/geom_slice.c#19 integrate .. //depot/projects/smpng/sys/geom/geom_subr.c#24 integrate .. //depot/projects/smpng/sys/geom/geom_sunlabel.c#19 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#12 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#27 integrate .. //depot/projects/smpng/sys/sys/sun_disklabel.h#4 integrate Differences ... ==== //depot/projects/smpng/sys/dev/ar/if_ar.c#8 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ar/if_ar.c,v 1.57 2003/02/23 13:20:42 nyan Exp $ + * $FreeBSD: src/sys/dev/ar/if_ar.c,v 1.58 2003/04/23 15:40:11 jhay Exp $ */ /* @@ -346,7 +346,7 @@ } if(hc->bustype == AR_BUS_ISA) - ARC_SET_OFF(hc->iobase); + ARC_SET_OFF(hc); return (0); } @@ -386,6 +386,9 @@ if (hc->res_ioport == NULL) { goto errexit; } + hc->bt = rman_get_bustag(hc->res_ioport); + hc->bh = rman_get_bushandle(hc->res_ioport); + return (0); errexit: @@ -501,7 +504,7 @@ if(hc->bustype == AR_BUS_PCI) arisr = hc->orbase[AR_ISTAT * 4]; else - arisr = inb(hc->iobase + AR_ISTAT); + arisr = ar_inb(hc, AR_ISTAT); while(arisr & AR_BD_INT) { TRC(printf("arisr = %x\n", arisr)); @@ -518,7 +521,7 @@ sca = hc->sca[scano]; if(hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(hc->iobase, scano); + ARC_SET_SCA(hc, scano); isr0 = sca->isr0; isr1 = sca->isr1; @@ -548,12 +551,12 @@ if(hc->bustype == AR_BUS_PCI) arisr = hc->orbase[AR_ISTAT * 4]; else - arisr = inb(hc->iobase + AR_ISTAT); + arisr = ar_inb(hc, AR_ISTAT); } } if(hc->bustype == AR_BUS_ISA) - ARC_SET_OFF(hc->iobase); + ARC_SET_OFF(hc); } @@ -576,7 +579,7 @@ dmac = &sc->sca->dmac[DMAC_TXCH(sc->scachan)]; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); dmac->cda = (u_short)(sc->block[sc->txb_next_tx].txdesc & 0xffff); dmac->eda = (u_short)(sc->block[sc->txb_next_tx].txeda & 0xffff); @@ -594,7 +597,7 @@ sc->out_dog = DOG_HOLDOFF; /* give ourself some breathing space*/ #endif /* NETGRAPH */ if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_OFF(sc->hc->iobase); + ARC_SET_OFF(sc->hc); } /* @@ -665,7 +668,7 @@ * 16K window. */ if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_MEM(sc->hc->iobase, sc->block[0].txdesc); + ARC_SET_MEM(sc->hc, sc->block[0].txdesc); /* * We stay in this loop until there is nothing in the @@ -760,7 +763,7 @@ ar_xmit(sc); if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_OFF(sc->hc->iobase); + ARC_SET_OFF(sc->hc); goto top_arstart; } @@ -829,7 +832,7 @@ #endif /* NETGRAPH */ if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); /* XXX if(sc->ifsppp.pp_if.if_flags & IFF_DEBUG) */ printf("ar%d: transmit failed, " @@ -881,7 +884,7 @@ * Enable interrupts. */ if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); /* XXX * What about using AUTO mode in msci->md0 ??? @@ -896,7 +899,7 @@ sc->hc->orbase[sc->hc->txc_dtr_off[sc->scano]] = sc->hc->txc_dtr[sc->scano]; else - outb(sc->hc->iobase + sc->hc->txc_dtr_off[sc->scano], + ar_outb(sc->hc, sc->hc->txc_dtr_off[sc->scano], sc->hc->txc_dtr[sc->scano]); } @@ -910,11 +913,11 @@ msci->cmd = SCA_CMD_RXENABLE; if(sc->hc->bustype == AR_BUS_ISA) - inb(sc->hc->iobase + AR_ID_5); /* XXX slow it down a bit. */ + ar_inb(sc->hc, AR_ID_5); /* XXX slow it down a bit. */ msci->cmd = SCA_CMD_TXENABLE; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_OFF(sc->hc->iobase); + ARC_SET_OFF(sc->hc); #ifdef NETGRAPH untimeout(ngar_watchdog_frame, sc, sc->handle); sc->handle = timeout(ngar_watchdog_frame, sc, hz); @@ -941,10 +944,10 @@ * Disable interrupts. */ if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); msci->cmd = SCA_CMD_RXDISABLE; if(sc->hc->bustype == AR_BUS_ISA) - inb(sc->hc->iobase + AR_ID_5); /* XXX slow it down a bit. */ + ar_inb(sc->hc, AR_ID_5); /* XXX slow it down a bit. */ msci->cmd = SCA_CMD_TXDISABLE; if(sc->hc->handshake & AR_SHSK_RTS) @@ -956,7 +959,7 @@ sc->hc->orbase[sc->hc->txc_dtr_off[sc->scano]] = sc->hc->txc_dtr[sc->scano]; else - outb(sc->hc->iobase + sc->hc->txc_dtr_off[sc->scano], + ar_outb(sc->hc, sc->hc->txc_dtr_off[sc->scano], sc->hc->txc_dtr[sc->scano]); } @@ -969,7 +972,7 @@ } if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_OFF(sc->hc->iobase); + ARC_SET_OFF(sc->hc); } static int @@ -1078,6 +1081,7 @@ u_int next; u_int descneeded; u_char isr, mar; + u_long memst; MALLOC(sc, struct ar_softc *, hc->numports * sizeof(struct ar_softc), M_DEVBUF, M_WAITOK | M_ZERO); @@ -1102,31 +1106,32 @@ hc->orbase[AR_TXC_DTR0 * 4] = ~AR_TXC_DTR_NOTRESET & hc->txc_dtr[0]; else - outb(hc->iobase + AR_TXC_DTR0, ~AR_TXC_DTR_NOTRESET & + ar_outb(hc, AR_TXC_DTR0, ~AR_TXC_DTR_NOTRESET & hc->txc_dtr[0]); DELAY(2); if(hc->bustype == AR_BUS_PCI) hc->orbase[AR_TXC_DTR0 * 4] = hc->txc_dtr[0]; else - outb(hc->iobase + AR_TXC_DTR0, hc->txc_dtr[0]); + ar_outb(hc, AR_TXC_DTR0, hc->txc_dtr[0]); if(hc->bustype == AR_BUS_ISA) { /* * Configure the card. * Mem address, irq, */ - mar = kvtop(hc->mem_start) >> 16; + memst = rman_get_start(hc->res_memory); + mar = memst >> 16; isr = irqtable[hc->isa_irq] << 1; if(isr == 0) printf("ar%d: Warning illegal interrupt %d\n", hc->cunit, hc->isa_irq); - isr = isr | ((kvtop(hc->mem_start) & 0xc000) >> 10); + isr = isr | ((memst & 0xc000) >> 10); hc->sca[0] = (sca_regs *)hc->mem_start; hc->sca[1] = (sca_regs *)hc->mem_start; - outb(hc->iobase + AR_MEM_SEL, mar); - outb(hc->iobase + AR_INT_SEL, isr | AR_INTS_CEN); + ar_outb(hc, AR_MEM_SEL, mar); + ar_outb(hc, AR_INT_SEL, isr | AR_INTS_CEN); } if(hc->bustype == AR_BUS_PCI && hc->interface[0] == AR_IFACE_PIM) @@ -1156,12 +1161,12 @@ if(hc->bustype == AR_BUS_PCI) hc->orbase[AR_TXC_DTR0 * 4] = hc->txc_dtr[0]; else - outb(hc->iobase + AR_TXC_DTR0, hc->txc_dtr[0]); + ar_outb(hc, AR_TXC_DTR0, hc->txc_dtr[0]); if(hc->numports > NCHAN) { if(hc->bustype == AR_BUS_PCI) hc->orbase[AR_TXC_DTR2 * 4] = hc->txc_dtr[1]; else - outb(hc->iobase + AR_TXC_DTR2, hc->txc_dtr[1]); + ar_outb(hc, AR_TXC_DTR2, hc->txc_dtr[1]); } chanmem = hc->memsize / hc->numports; @@ -1228,7 +1233,7 @@ sca = hc->sca[scano]; if(hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(hc->iobase, scano); + ARC_SET_SCA(hc, scano); /* * Do the wait registers. @@ -1294,7 +1299,7 @@ msci = &sc->sca->msci[sc->scachan]; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); msci->cmd = SCA_CMD_RESET; @@ -1368,7 +1373,7 @@ dmac = &sc->sca->dmac[DMAC_RXCH(sc->scachan)]; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_MEM(sc->hc->iobase, sc->rxdesc); + ARC_SET_MEM(sc->hc, sc->rxdesc); rxd = (sca_descriptor *)(sc->hc->mem_start + (sc->rxdesc&sc->hc->winmsk)); rxda_d = (u_int)sc->hc->mem_start - (sc->rxdesc & ~sc->hc->winmsk); @@ -1396,7 +1401,7 @@ sc->rxhind = 0; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); dmac->dsr = 0; /* Disable DMA transfer */ dmac->dcr = SCA_DCR_ABRT; @@ -1434,7 +1439,7 @@ dmac = &sc->sca->dmac[DMAC_TXCH(sc->scachan)]; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_MEM(sc->hc->iobase, sc->block[0].txdesc); + ARC_SET_MEM(sc->hc, sc->block[0].txdesc); for(blk = 0; blk < AR_TX_BLOCKS; blk++) { blkp = &sc->block[blk]; @@ -1465,7 +1470,7 @@ } if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); dmac->dsr = 0; /* Disable DMA */ dmac->dcr = SCA_DCR_ABRT; @@ -1498,13 +1503,13 @@ sca_descriptor *cda; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); dmac = &sc->sca->dmac[DMAC_RXCH(sc->scachan)]; cda = (sca_descriptor *)(sc->hc->mem_start + ((((u_int)dmac->sarb << 16) + dmac->cda) & sc->hc->winmsk)); if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_MEM(sc->hc->iobase, sc->rxdesc); + ARC_SET_MEM(sc->hc, sc->rxdesc); rxdesc = (sca_descriptor *) (sc->hc->mem_start + (sc->rxdesc & sc->hc->winmsk)); endp = rxdesc; @@ -1561,7 +1566,7 @@ while(len) { tlen = (len < AR_BUF_SIZ) ? len : AR_BUF_SIZ; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_MEM(sc->hc->iobase, rxdata); + ARC_SET_MEM(sc->hc, rxdata); bcopy(sc->hc->mem_start + (rxdata & sc->hc->winmsk), mtod(m, caddr_t) + off, tlen); @@ -1570,7 +1575,7 @@ len -= tlen; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_MEM(sc->hc->iobase, sc->rxdesc); + ARC_SET_MEM(sc->hc, sc->rxdesc); rxdesc->len = 0; rxdesc->stat = 0xff; @@ -1599,7 +1604,7 @@ u_char stat; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); dmac = &sc->sca->dmac[DMAC_RXCH(sc->scachan)]; cda = (sca_descriptor *)(sc->hc->mem_start + ((((u_int)dmac->sarb << 16) + dmac->cda) & sc->hc->winmsk)); @@ -1610,7 +1615,7 @@ * Increment the descriptor. */ if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_MEM(sc->hc->iobase, sc->rxdesc); + ARC_SET_MEM(sc->hc, sc->rxdesc); rxdesc = (sca_descriptor *) (sc->hc->mem_start + (sc->rxdesc & sc->hc->winmsk)); endp = rxdesc; @@ -1651,7 +1656,7 @@ * Update the eda to the previous descriptor. */ if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); rxdesc = (sca_descriptor *)sc->rxdesc; rxdesc = &rxdesc[(sc->rxhind + sc->rxmax - 2 ) % sc->rxmax]; @@ -1719,7 +1724,7 @@ sc->rxhind = (sc->rxhind + i) % sc->rxmax; if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); rxdesc = (sca_descriptor *)sc->rxdesc; rxdesc = @@ -1750,7 +1755,7 @@ #endif /* NETGRAPH */ if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(sc->hc->iobase, sc->scano); + ARC_SET_SCA(sc->hc, sc->scano); TRCL(printf("ar%d: Receive error chan %d, " "stat %x, msci st3 %x," @@ -1806,7 +1811,7 @@ dmac = &sca->dmac[DMAC_TXCH(mch)]; if(hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(hc->iobase, scano); + ARC_SET_SCA(hc, scano); dsr = dmac->dsr; dmac->dsr = dsr; @@ -1877,7 +1882,7 @@ dmac = &sca->dmac[DMAC_RXCH(mch)]; if(hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(hc->iobase, scano); + ARC_SET_SCA(hc, scano); dsr = dmac->dsr; dmac->dsr = dsr; @@ -1900,7 +1905,7 @@ int i; if(hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(hc->iobase, scano); + ARC_SET_SCA(hc, scano); printf("AR: RXINTR isr1 %x, dsr %x, " "no data %d pkts, orxhind %d.\n", dotxstart, @@ -1920,7 +1925,7 @@ dmac->eda); if(sc->hc->bustype == AR_BUS_ISA) - ARC_SET_MEM(sc->hc->iobase, + ARC_SET_MEM(sc->hc, sc->rxdesc); rxdesc = (sca_descriptor *) (sc->hc->mem_start + @@ -1951,7 +1956,7 @@ /* Buffer overflow */ if(dsr & SCA_DSR_BOF) { if(hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(hc->iobase, scano); + ARC_SET_SCA(hc, scano); printf("ar%d: RX DMA Buffer overflow, " "rxpkts %lu, rxind %d, " "cda %x, eda %x, dsr %x.\n", @@ -1976,7 +1981,7 @@ sc->ierrors[2]++; #endif /* NETGRAPH */ if(hc->bustype == AR_BUS_ISA) - ARC_SET_SCA(hc->iobase, scano); + ARC_SET_SCA(hc, scano); sca->msci[mch].cmd = SCA_CMD_RXMSGREJ; dmac->dsr = SCA_DSR_DE; ==== //depot/projects/smpng/sys/dev/ar/if_ar_isa.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ar/if_ar_isa.c,v 1.51 2003/04/15 06:37:20 mdodd Exp $ + * $FreeBSD: src/sys/dev/ar/if_ar_isa.c,v 1.52 2003/04/23 15:40:11 jhay Exp $ */ /* @@ -101,12 +101,15 @@ ar_isa_probe(device_t device) { int error; - u_long membase, memsize, port_start, port_count; + u_long membase, memsize; + struct ar_hardc *hc; error = ISA_PNP_PROBE(device_get_parent(device), device, ar_ids); if(error == ENXIO || error == 0) return (error); + hc = (struct ar_hardc *)device_get_softc(device); + if((error = ar_allocate_ioport(device, 0, ARC_IO_SIZ))) { return (ENXIO); } @@ -117,17 +120,14 @@ * XXX For now I just check the undocumented ports * for "570". We will probably have to do more checking. */ - error = bus_get_resource(device, SYS_RES_IOPORT, 0, &port_start, - &port_count); - - if((inb(port_start + AR_ID_5) != '5') || - (inb(port_start + AR_ID_7) != '7') || - (inb(port_start + AR_ID_0) != '0')) { + if((ar_inb(hc, AR_ID_5) != '5') || + (ar_inb(hc, AR_ID_7) != '7') || + (ar_inb(hc, AR_ID_0) != '0')) { ar_deallocate_resources(device); return (ENXIO); } membase = bus_get_resource_start(device, SYS_RES_MEMORY, 0); - memsize = inb(port_start + AR_REV); + memsize = ar_inb(hc, AR_REV); memsize = 1 << ((memsize & AR_WSIZ_MSK) >> AR_WSIZ_SHFT); memsize *= ARC_WIN_SIZ; error = bus_set_resource(device, SYS_RES_MEMORY, 0, membase, memsize); @@ -153,12 +153,8 @@ hc = (struct ar_hardc *)device_get_softc(device); if(ar_allocate_ioport(device, 0, ARC_IO_SIZ)) return (ENXIO); - hc->bt = rman_get_bustag(hc->res_ioport); - hc->bh = rman_get_bushandle(hc->res_ioport); - hc->iobase = rman_get_start(hc->res_ioport); - - tmp = inb(hc->iobase + AR_BMI); + tmp = ar_inb(hc, AR_BMI); hc->bustype = tmp & AR_BUS_MSK; hc->memsize = (tmp & AR_MEM_MSK) >> AR_MEM_SHFT; hc->memsize = 1 << hc->memsize; @@ -167,13 +163,13 @@ hc->interface[1] = hc->interface[0]; hc->interface[2] = hc->interface[0]; hc->interface[3] = hc->interface[0]; - tmp = inb(hc->iobase + AR_REV); + tmp = ar_inb(hc, AR_REV); hc->revision = tmp & AR_REV_MSK; hc->winsize = 1 << ((tmp & AR_WSIZ_MSK) >> AR_WSIZ_SHFT); hc->winsize *= ARC_WIN_SIZ; hc->winmsk = hc->winsize - 1; - hc->numports = inb(hc->iobase + AR_PNUM); - hc->handshake = inb(hc->iobase + AR_HNDSH); + hc->numports = ar_inb(hc, AR_PNUM); + hc->handshake = ar_inb(hc, AR_HNDSH); if(ar_allocate_memory(device, 0, hc->winsize)) return (ENXIO); @@ -227,12 +223,6 @@ return (0); } - - - - - - /* ********************************* END ************************************ */ ==== //depot/projects/smpng/sys/dev/ar/if_ar_pci.c#3 (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/dev/ar/if_ar_pci.c,v 1.7 2003/04/15 06:37:20 mdodd Exp $ + * $FreeBSD: src/sys/dev/ar/if_ar_pci.c,v 1.8 2003/04/23 15:40:11 jhay Exp $ */ #include @@ -107,7 +107,6 @@ { int error; u_int i, tmp; - u_char *inten; struct ar_hardc *hc; hc = (struct ar_hardc *)device_get_softc(device); @@ -125,13 +124,11 @@ if(error) goto errexit; - hc->plx_mem = rman_get_virtual(hc->res_plx_memory); hc->mem_start = rman_get_virtual(hc->res_memory); hc->cunit = device_get_unit(device); hc->sca[0] = (sca_regs *)(hc->mem_start + AR_PCI_SCA_1_OFFSET); hc->sca[1] = (sca_regs *)(hc->mem_start + AR_PCI_SCA_2_OFFSET); - hc->iobase = 0; hc->orbase = (u_char *)(hc->mem_start + AR_PCI_ORBASE_OFFSET); tmp = hc->orbase[AR_BMI * 4]; @@ -159,8 +156,8 @@ ar_attach(device); /* Magic to enable the card to generate interrupts. */ - inten = (u_char *)hc->plx_mem; - inten[0x69] = 0x09; + bus_space_write_1(rman_get_bustag(hc->res_plx_memory), + rman_get_bushandle(hc->res_plx_memory), 0x69, 0x09); return (0); ==== //depot/projects/smpng/sys/dev/ar/if_arregs.h#3 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ar/if_arregs.h,v 1.8 2003/01/01 18:48:49 schweikh Exp $ + * $FreeBSD: src/sys/dev/ar/if_arregs.h,v 1.9 2003/04/23 15:40:11 jhay Exp $ */ #ifndef _IF_ARREGS_H_ #define _IF_ARREGS_H_ @@ -169,21 +169,19 @@ #define ARC_GET_WIN(addr) ((addr >> ARC_WIN_SHFT) & AR_WIN_MSK) -#define ARC_SET_MEM(iobase,win) outb(iobase+AR_MSCA_EN, AR_ENA_MEM | \ +#define ARC_SET_MEM(hc,win) ar_outb(hc, AR_MSCA_EN, AR_ENA_MEM | \ ARC_GET_WIN(win)) -#define ARC_SET_SCA(iobase,ch) outb(iobase+AR_MSCA_EN, AR_ENA_MEM | \ +#define ARC_SET_SCA(hc,ch) ar_outb(hc, AR_MSCA_EN, AR_ENA_MEM | \ AR_ENA_SCA | (ch ? AR_SEL_SCA_1:AR_SEL_SCA_0)) -#define ARC_SET_OFF(iobase) outb(iobase+AR_MSCA_EN, 0) +#define ARC_SET_OFF(hc) ar_outb(hc, AR_MSCA_EN, 0) struct ar_hardc { int cunit; struct ar_softc *sc; - u_short iobase; int isa_irq; int numports; caddr_t mem_start; caddr_t mem_end; - caddr_t plx_mem; u_char *orbase; u_int memsize; /* in bytes */ @@ -224,4 +222,10 @@ int ar_attach(device_t device); int ar_detach (device_t); +#define ar_inb(hc, port) \ + bus_space_read_1((hc)->bt, (hc)->bh, (port)) + +#define ar_outb(hc, port, value) \ + bus_space_write_1((hc)->bt, (hc)->bh, (port), (value)) + #endif /* _IF_ARREGS_H_ */ ==== //depot/projects/smpng/sys/dev/pci/pcireg.h#3 (text+ko) ==== @@ -23,7 +23,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/dev/pci/pcireg.h,v 1.31 2002/06/05 22:25:51 gibbs Exp $ + * $FreeBSD: src/sys/dev/pci/pcireg.h,v 1.32 2003/04/23 15:51:36 des Exp $ * */ @@ -239,6 +239,9 @@ #define PCIS_SERIALBUS_ACCESS 0x01 #define PCIS_SERIALBUS_SSA 0x02 #define PCIS_SERIALBUS_USB 0x03 +#define PCIP_SERIALBUS_USB_UHCI 0x00 +#define PCIP_SERIALBUS_USB_OHCI 0x10 +#define PCIP_SERIALBUS_USB_EHCI 0x20 #define PCIS_SERIALBUS_FC 0x04 #define PCIS_SERIALBUS_SMBUS 0x05 ==== //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#17 (text+ko) ==== @@ -30,7 +30,7 @@ #include "mixer_if.h" -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pcm/ac97.c,v 1.41 2003/04/21 04:48:40 orion Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pcm/ac97.c,v 1.42 2003/04/23 16:49:53 jhb Exp $"); MALLOC_DEFINE(M_AC97, "ac97", "ac97 codec"); @@ -84,8 +84,10 @@ [SOUND_MIXER_LINE] = { AC97_MIX_LINE, 5, 0, 1, 1, 5, 0, 1 }, [SOUND_MIXER_PHONEIN] = { AC97_MIX_PHONE, 5, 0, 0, 1, 8, 0, 0 }, [SOUND_MIXER_MIC] = { AC97_MIX_MIC, 5, 0, 0, 1, 1, 1, 1 }, +#if 0 /* use igain for the mic 20dB boost */ [SOUND_MIXER_IGAIN] = { -AC97_MIX_MIC, 1, 6, 0, 0, 0, 1, 1 }, +#endif [SOUND_MIXER_CD] = { AC97_MIX_CD, 5, 0, 1, 1, 2, 0, 1 }, [SOUND_MIXER_LINE1] = { AC97_MIX_AUX, 5, 0, 1, 1, 4, 0, 0 }, [SOUND_MIXER_VIDEO] = { AC97_MIX_VIDEO, 5, 0, 1, 1, 3, 0, 0 }, ==== //depot/projects/smpng/sys/geom/geom.h#25 (text+ko) ==== @@ -32,7 +32,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/geom/geom.h,v 1.56 2003/04/13 09:02:05 phk Exp $ + * $FreeBSD: src/sys/geom/geom.h,v 1.59 2003/04/23 07:50:01 phk Exp $ */ #ifndef _GEOM_GEOM_H_ @@ -49,7 +49,6 @@ struct g_geom; struct g_consumer; struct g_provider; -struct g_event; struct g_stat; struct thread; struct bio; @@ -60,6 +59,7 @@ typedef int g_config_t (struct g_configargs *ca); typedef int g_ctl_create_geom_t (struct gctl_req *, struct g_class *cp, struct g_provider *pp); typedef int g_ctl_destroy_geom_t (struct gctl_req *, struct g_class *cp, struct g_geom *gp); +typedef int g_ctl_config_geom_t (struct gctl_req *, struct g_geom *gp, const char *verb); typedef struct g_geom * g_taste_t (struct g_class *, struct g_provider *, int flags); #define G_TF_NORMAL 0 @@ -87,20 +87,19 @@ g_config_t *config; g_ctl_create_geom_t *create_geom; g_ctl_destroy_geom_t *destroy_geom; + g_ctl_config_geom_t *config_geom; /* * The remaning elements are private and classes should use * the G_CLASS_INITIALIZER macro to initialize them. */ LIST_ENTRY(g_class) class; LIST_HEAD(,g_geom) geom; - struct g_event *event; u_int protect; }; #define G_CLASS_INITIALIZER \ .class = { 0, 0 }, \ .geom = { 0 }, \ - .event = 0, \ .protect = 0 /* @@ -121,7 +120,6 @@ g_access_t *access; g_orphan_t *orphan; void *softc; - struct g_event *event; unsigned flags; #define G_GEOM_WITHER 1 }; @@ -150,7 +148,6 @@ struct g_provider *provider; LIST_ENTRY(g_consumer) consumers; /* XXX: better name */ int acr, acw, ace; - struct g_event *event; int spoiled; struct devstat *stat; u_int nstart, nend; @@ -167,7 +164,6 @@ LIST_HEAD(,g_consumer) consumers; int acr, acw, ace; int error; - struct g_event *event; TAILQ_ENTRY(g_provider) orphan; u_int index; off_t mediasize; @@ -338,6 +334,7 @@ /* geom_ctl.c */ void *gctl_get_param(struct gctl_req *req, const char *param, int *len); -int gctl_error(struct gctl_req *req, const char *errtxt); +void *gctl_get_paraml(struct gctl_req *req, const char *param, int len); +int gctl_error(struct gctl_req *req, const char *fmt, ...); #endif /* _GEOM_GEOM_H_ */ ==== //depot/projects/smpng/sys/geom/geom_ctl.c#9 (text+ko) ==== @@ -32,7 +32,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/geom/geom_ctl.c,v 1.15 2003/04/22 19:42:05 phk Exp $ + * $FreeBSD: src/sys/geom/geom_ctl.c,v 1.18 2003/04/23 08:03:47 phk Exp $ */ #include "opt_geom.h" @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -59,6 +60,8 @@ #include #include +#include + static d_ioctl_t g_ctl_ioctl; static struct cdevsw g_ctl_cdevsw = { @@ -87,16 +90,28 @@ * XXX: should take printf like args. */ int -gctl_error(struct gctl_req *req, const char *errtxt) +gctl_error(struct gctl_req *req, const char *fmt, ...) { int error; + va_list ap; + struct sbuf *sb; - if (g_debugflags & G_F_CTLDUMP) - printf("gctl %p error \"%s\"\n", req, errtxt); - error = copyout(errtxt, req->error, - imin(req->lerror, strlen(errtxt) + 1)); + sb = sbuf_new(NULL, NULL, 0, SBUF_AUTOEXTEND); + if (sb == NULL) { + error = copyout(fmt, req->error, + imin(req->lerror, strlen(fmt) + 1)); + } else { + va_start(ap, fmt); + sbuf_vprintf(sb, fmt, ap); + sbuf_finish(sb); + if (g_debugflags & G_F_CTLDUMP) + printf("gctl %p error \"%s\"\n", req, sbuf_data(sb)); + error = copyout(sbuf_data(sb), req->error, + imin(req->lerror, sbuf_len(sb) + 1)); + } if (!error) error = EINVAL; + sbuf_delete(sb); return (error); } @@ -253,6 +268,23 @@ return (NULL); } +void * +gctl_get_paraml(struct gctl_req *req, const char *param, int len) +{ + int i; + void *p; + + p = gctl_get_param(req, param, &i); + if (p == NULL) + gctl_error(req, "Missing %s argument", param); + else if (i != len) { + g_free(p); + p = NULL; + gctl_error(req, "Wrong length %s argument", param); + } + return (p); +} + static struct g_class* gctl_get_class(struct gctl_req *req) { @@ -381,6 +413,42 @@ return (error); } +static int +gctl_config_geom(struct gctl_req *req) +{ + struct g_class *mp; + struct g_geom *gp; + char *verb; + int error, vlen; + + g_topology_assert(); + mp = gctl_get_class(req); + if (mp == NULL) + return (gctl_error(req, "Class not found")); + if (mp->config_geom == NULL) + return (gctl_error(req, "Class has no config_geom method")); + gp = gctl_get_geom(req, mp); + if (gp == NULL) + return (gctl_error(req, "Geom not specified")); + if (gp->class != mp) + return (gctl_error(req, "Geom not of specificed class")); + verb = gctl_get_param(req, "verb", &vlen); + if (verb == NULL) + return (gctl_error(req, "Missing verb parameter")); + if (vlen < 2) { + g_free(verb); + return (gctl_error(req, "Too short verb parameter")); + } + if (verb[vlen - 1] != '\0') { + g_free(verb); + return (gctl_error(req, "Unterminated verb parameter")); + } + error = mp->config_geom(req, gp, verb); + g_free(verb); + g_topology_assert(); + return (error); +} + /* * Handle ioctl from libgeom::geom_ctl.c */ @@ -426,6 +494,9 @@ case GCTL_DESTROY_GEOM: error = gctl_destroy_geom(req); break; + case GCTL_CONFIG_GEOM: + error = gctl_config_geom(req); + break; default: error = gctl_error(req, "XXX: TBD"); break; ==== //depot/projects/smpng/sys/geom/geom_ctl.h#4 (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/geom/geom_ctl.h,v 1.3 2003/04/22 19:42:05 phk Exp $ + * $FreeBSD: src/sys/geom/geom_ctl.h,v 1.4 2003/04/22 21:00:49 phk Exp $ */ #ifndef _GEOM_GEOM_CTL_H_ @@ -42,14 +42,20 @@ */ enum gctl_request { GCTL_INVALID_REQUEST = 0, + GCTL_CREATE_GEOM, GCTL_DESTROY_GEOM, + GCTL_ATTACH, GCTL_DETACH, + GCTL_CREATE_PROVIDER, GCTL_DESTROY_PROVIDER, + GCTL_INSERT_GEOM, GCTL_ELIMINATE_GEOM, + + GCTL_CONFIG_GEOM, }; #ifdef GCTL_TABLE @@ -71,6 +77,7 @@ { 0, 1, 1, 0, 1, "destroy provider", GCTL_DESTROY_PROVIDER }, { 1, 1, 1, 0, 1, "insert geom", GCTL_INSERT_GEOM }, { 0, 1, 0, 0, 1, "eliminate geom", GCTL_ELIMINATE_GEOM }, + { 0, 1, 0, 0, 1, "config geom", GCTL_CONFIG_GEOM }, /* Terminator entry */ { 1, 1, 1, 1, 1, "*INVALID*", GCTL_INVALID_REQUEST } ==== //depot/projects/smpng/sys/geom/geom_slice.c#19 (text+ko) ==== @@ -32,7 +32,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/geom/geom_slice.c,v 1.43 2003/04/19 10:14:39 phk Exp $ + * $FreeBSD: src/sys/geom/geom_slice.c,v 1.44 2003/04/22 21:19:17 phk Exp $ */ @@ -230,7 +230,7 @@ return; case BIO_GETATTR: /* Give the real method a chance to override */ - if (gsp->start(bp)) + if (gsp->start != NULL && gsp->start(bp)) return; if (!strcmp("GEOM::kerneldump", bp->bio_attribute)) { struct g_kerneldump *gkd; @@ -394,6 +394,9 @@ } gsl[idx].offset = offset; gsl[idx].length = length; + KASSERT(!((ract | dact | wact) & G_SLICE_HOT_START) + || gsp->start != NULL, ("G_SLICE_HOT_START but no slice->start")); + /* XXX: check that we _have_ a start function if HOT_START specified */ gsl[idx].ract = ract; gsl[idx].dact = dact; gsl[idx].wact = wact; ==== //depot/projects/smpng/sys/geom/geom_subr.c#24 (text+ko) ==== @@ -32,7 +32,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/geom/geom_subr.c,v 1.42 2003/04/13 09:02:06 phk Exp $ + * $FreeBSD: src/sys/geom/geom_subr.c,v 1.43 2003/04/23 06:54:44 phk Exp $ */ @@ -110,7 +110,6 @@ g_trace(G_T_TOPOLOGY, "g_destroy_geom(%p(%s))", gp, gp->name); g_topology_assert(); - KASSERT(gp->event == NULL, ("g_destroy_geom() with event")); KASSERT(LIST_EMPTY(&gp->consumer), ("g_destroy_geom(%s) with consumer(s) [%p]", gp->name, LIST_FIRST(&gp->consumer))); @@ -149,7 +148,6 @@ g_trace(G_T_TOPOLOGY, "g_destroy_consumer(%p)", cp); g_topology_assert(); - KASSERT(cp->event == NULL, ("g_destroy_consumer() with event")); KASSERT (cp->provider == NULL, ("g_destroy_consumer but attached")); KASSERT (cp->acr == 0, ("g_destroy_consumer with acr")); KASSERT (cp->acw == 0, ("g_destroy_consumer with acw")); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Apr 23 12:16:41 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9E5A937B405; Wed, 23 Apr 2003 12:16:40 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 486D137B401 for ; Wed, 23 Apr 2003 12:16:40 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0AEF543F93 for ; Wed, 23 Apr 2003 12:16:39 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NJGc0U082814 for ; Wed, 23 Apr 2003 12:16:38 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NJGcN8082804 for perforce@freebsd.org; Wed, 23 Apr 2003 12:16:38 -0700 (PDT) Date: Wed, 23 Apr 2003 12:16:38 -0700 (PDT) Message-Id: <200304231916.h3NJGcN8082804@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 Subject: PERFORCE change 29521 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 19:16:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=29521 Change 29521 by jhb@jhb_laptop on 2003/04/23 12:16:24 IFC @29520 (proc locking). Affected files ... .. //depot/projects/smpng/sys/compat/linux/linux_file.c#18 integrate .. //depot/projects/smpng/sys/kern/kern_exit.c#63 integrate .. //depot/projects/smpng/sys/kern/kern_resource.c#36 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#61 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#46 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#29 integrate .. //depot/projects/smpng/sys/kern/sched_4bsd.c#9 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#9 integrate .. //depot/projects/smpng/sys/kern/subr_trap.c#52 integrate .. //depot/projects/smpng/sys/net/if_ethersubr.c#30 integrate .. //depot/projects/smpng/sys/sys/proc.h#83 integrate .. //depot/projects/smpng/sys/vm/vm_glue.c#24 integrate Differences ... ==== //depot/projects/smpng/sys/compat/linux/linux_file.c#18 (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/linux/linux_file.c,v 1.79 2003/03/20 21:17:38 jhb Exp $ + * $FreeBSD: src/sys/compat/linux/linux_file.c,v 1.80 2003/04/23 18:13:26 jhb Exp $ */ #include "opt_compat.h" @@ -126,8 +126,8 @@ SESS_LEADER(p) && !(p->p_flag & P_CONTROLT)) { struct file *fp; + PROC_UNLOCK(p); error = fget(td, td->td_retval[0], &fp); - PROC_UNLOCK(p); if (!error) { if (fp->f_type == DTYPE_VNODE) fo_ioctl(fp, TIOCSCTTY, (caddr_t) 0, td->td_ucred, ==== //depot/projects/smpng/sys/kern/kern_exit.c#63 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_exit.c 8.7 (Berkeley) 2/12/94 - * $FreeBSD: src/sys/kern/kern_exit.c,v 1.211 2003/04/21 14:42:04 davidxu Exp $ + * $FreeBSD: src/sys/kern/kern_exit.c,v 1.212 2003/04/23 18:46:51 jhb Exp $ */ #include "opt_compat.h" @@ -698,9 +698,11 @@ mtx_unlock(&Giant); return (0); } + mtx_lock_spin(&sched_lock); if (P_SHOULDSTOP(p) && (p->p_suspcount == p->p_numthreads) && ((p->p_flag & P_WAITED) == 0) && (p->p_flag & P_TRACED || uap->options & WUNTRACED)) { + mtx_unlock_spin(&sched_lock); p->p_flag |= P_WAITED; sx_xunlock(&proctree_lock); td->td_retval[0] = p->p_pid; @@ -723,6 +725,7 @@ mtx_unlock(&Giant); return (error); } + mtx_unlock_spin(&sched_lock); if (uap->options & WCONTINUED && (p->p_flag & P_CONTINUED)) { sx_xunlock(&proctree_lock); td->td_retval[0] = p->p_pid; ==== //depot/projects/smpng/sys/kern/kern_resource.c#36 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_resource.c 8.5 (Berkeley) 1/21/94 - * $FreeBSD: src/sys/kern/kern_resource.c,v 1.124 2003/04/22 20:45:38 jhb Exp $ + * $FreeBSD: src/sys/kern/kern_resource.c,v 1.125 2003/04/23 18:48:55 jhb Exp $ */ #include "opt_compat.h" @@ -94,8 +94,6 @@ int error = 0; struct ksegrp *kg; - mtx_lock(&Giant); - switch (uap->which) { case PRIO_PROCESS: if (uap->who == 0) @@ -168,7 +166,6 @@ if (low == PRIO_MAX + 1 && error == 0) error = ESRCH; td->td_retval[0] = low; - mtx_unlock(&Giant); return (error); } @@ -192,8 +189,6 @@ register struct proc *p; int found = 0, error = 0; - mtx_lock(&Giant); - switch (uap->which) { case PRIO_PROCESS: if (uap->who == 0) { @@ -260,7 +255,6 @@ } if (found == 0 && error == 0) error = ESRCH; - mtx_unlock(&Giant); return (error); } ==== //depot/projects/smpng/sys/kern/kern_sig.c#61 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_sig.c 8.7 (Berkeley) 4/18/94 - * $FreeBSD: src/sys/kern/kern_sig.c,v 1.229 2003/04/19 05:04:06 davidxu Exp $ + * $FreeBSD: src/sys/kern/kern_sig.c,v 1.230 2003/04/23 18:50:25 jhb Exp $ */ #include "opt_compat.h" @@ -1157,33 +1157,27 @@ register struct osigstack_args *uap; { struct proc *p = td->td_proc; - struct sigstack ss; + struct sigstack nss, oss; int error = 0; - mtx_lock(&Giant); - - if (uap->oss != NULL) { - PROC_LOCK(p); - ss.ss_sp = p->p_sigstk.ss_sp; - ss.ss_onstack = sigonstack(cpu_getstack(td)); - PROC_UNLOCK(p); - error = copyout(&ss, uap->oss, sizeof(struct sigstack)); + if (uap->nss != NULL) { + error = copyin(uap->nss, &nss, sizeof(nss)); if (error) - goto done2; + return (error); } - + PROC_LOCK(p); + oss.ss_sp = p->p_sigstk.ss_sp; + oss.ss_onstack = sigonstack(cpu_getstack(td)); if (uap->nss != NULL) { - if ((error = copyin(uap->nss, &ss, sizeof(ss))) != 0) - goto done2; - PROC_LOCK(p); - p->p_sigstk.ss_sp = ss.ss_sp; + p->p_sigstk.ss_sp = nss.ss_sp; p->p_sigstk.ss_size = 0; - p->p_sigstk.ss_flags |= ss.ss_onstack & SS_ONSTACK; + p->p_sigstk.ss_flags |= nss.ss_onstack & SS_ONSTACK; p->p_flag |= P_ALTSTACK; - PROC_UNLOCK(p); } -done2: - mtx_unlock(&Giant); + PROC_UNLOCK(p); + if (uap->oss != NULL) + error = copyout(&oss, uap->oss, sizeof(oss)); + return (error); } #endif /* COMPAT_43 || COMPAT_SUNOS */ ==== //depot/projects/smpng/sys/kern/kern_synch.c#46 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_synch.c 8.9 (Berkeley) 5/19/95 - * $FreeBSD: src/sys/kern/kern_synch.c,v 1.217 2003/04/02 23:53:29 peter Exp $ + * $FreeBSD: src/sys/kern/kern_synch.c,v 1.218 2003/04/23 18:46:51 jhb Exp $ */ #include "opt_ddb.h" @@ -167,6 +167,7 @@ * the thread (recursion here might be bad). * Hence the TDF_INMSLEEP flag. */ + mtx_lock_spin(&sched_lock); if (p->p_flag & P_THREADED || p->p_numthreads > 1) { /* * Just don't bother if we are exiting @@ -177,10 +178,10 @@ (((p->p_flag & P_WEXIT) && (p->p_singlethread != td)) || (td->td_flags & TDF_INTERRUPT))) { td->td_flags &= ~TDF_INTERRUPT; + mtx_unlock_spin(&sched_lock); return (EINTR); } } - mtx_lock_spin(&sched_lock); if (cold ) { /* * During autoconfiguration, just give interrupts ==== //depot/projects/smpng/sys/kern/kern_thread.c#29 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * DAMAGE. * - * $FreeBSD: src/sys/kern/kern_thread.c,v 1.122 2003/04/22 19:47:55 jhb Exp $ + * $FreeBSD: src/sys/kern/kern_thread.c,v 1.123 2003/04/23 18:46:51 jhb Exp $ */ #include @@ -1299,7 +1299,8 @@ { struct proc *p = td->td_proc; struct ksegrp *kg = td->td_ksegrp; - + + mtx_assert(&sched_lock, MA_OWNED); TAILQ_REMOVE(&p->p_threads, td, td_plist); p->p_numthreads--; TAILQ_REMOVE(&kg->kg_threads, td, td_kglist); @@ -1683,11 +1684,11 @@ if (p->p_numthreads > max_threads_per_proc) { max_threads_hits++; PROC_LOCK(p); + mtx_lock_spin(&sched_lock); while (p->p_numthreads > max_threads_per_proc) { if (P_SHOULDSTOP(p)) break; upcalls = 0; - mtx_lock_spin(&sched_lock); FOREACH_KSEGRP_IN_PROC(p, kg2) { if (kg2->kg_numupcalls == 0) upcalls++; @@ -1701,7 +1702,9 @@ msleep(&p->p_numthreads, &p->p_mtx, PPAUSE|PCATCH, "maxthreads", NULL); p->p_maxthrwaits--; + mtx_lock_spin(&sched_lock); } + mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); } @@ -1818,10 +1821,9 @@ } else p->p_flag &= ~P_SINGLE_EXIT; p->p_flag |= P_STOPPED_SINGLE; + mtx_lock_spin(&sched_lock); p->p_singlethread = td; - /* XXXKSE Which lock protects the below values? */ while ((p->p_numthreads - p->p_suspcount) != 1) { - mtx_lock_spin(&sched_lock); FOREACH_THREAD_IN_PROC(p, td2) { if (td2 == td) continue; @@ -1855,10 +1857,8 @@ /* * Maybe we suspended some threads.. was it enough? */ - if ((p->p_numthreads - p->p_suspcount) == 1) { - mtx_unlock_spin(&sched_lock); + if ((p->p_numthreads - p->p_suspcount) == 1) break; - } /* * Wake us up when everyone else has suspended. @@ -1872,15 +1872,14 @@ mtx_unlock_spin(&sched_lock); PICKUP_GIANT(); PROC_LOCK(p); + mtx_lock_spin(&sched_lock); } if (force_exit == SINGLE_EXIT) { - if (td->td_upcall) { - mtx_lock_spin(&sched_lock); + if (td->td_upcall) upcall_remove(td); - mtx_unlock_spin(&sched_lock); - } kse_purge(p, td); } + mtx_unlock_spin(&sched_lock); return (0); } @@ -1987,6 +1986,7 @@ struct proc *p = td->td_proc; mtx_assert(&sched_lock, MA_OWNED); + PROC_LOCK_ASSERT(p, MA_OWNED); KASSERT(!TD_IS_SUSPENDED(td), ("already suspended")); p->p_suspcount++; TD_SET_SUSPENDED(td); @@ -2007,6 +2007,7 @@ struct proc *p = td->td_proc; mtx_assert(&sched_lock, MA_OWNED); + PROC_LOCK_ASSERT(p, MA_OWNED); TAILQ_REMOVE(&p->p_suspended, td, td_runq); TD_CLR_SUSPENDED(td); p->p_suspcount--; @@ -2048,6 +2049,7 @@ p = td->td_proc; PROC_LOCK_ASSERT(p, MA_OWNED); p->p_flag &= ~P_STOPPED_SINGLE; + mtx_lock_spin(&sched_lock); p->p_singlethread = NULL; /* * If there are other threads they mey now run, @@ -2056,12 +2058,11 @@ * to continue however as this is a bad place to stop. */ if ((p->p_numthreads != 1) && (!P_SHOULDSTOP(p))) { - mtx_lock_spin(&sched_lock); while (( td = TAILQ_FIRST(&p->p_suspended))) { thread_unsuspend_one(td); } - mtx_unlock_spin(&sched_lock); } + mtx_unlock_spin(&sched_lock); } ==== //depot/projects/smpng/sys/kern/sched_4bsd.c#9 (text+ko) ==== @@ -35,7 +35,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/kern/sched_4bsd.c,v 1.16 2003/04/22 20:50:38 jhb Exp $ + * $FreeBSD: src/sys/kern/sched_4bsd.c,v 1.17 2003/04/23 18:51:05 jhb Exp $ */ #include @@ -441,6 +441,7 @@ struct ksegrp *kg; struct thread *td; + mtx_assert(&sched_lock, MA_OWNED); kg = ke->ke_ksegrp; td = ke->ke_thread; @@ -476,6 +477,8 @@ void sched_exit_ksegrp(struct ksegrp *kg, struct ksegrp *child) { + + mtx_assert(&sched_lock, MA_OWNED); kg->kg_estcpu = ESTCPULIM(kg->kg_estcpu + child->kg_estcpu); } @@ -501,6 +504,7 @@ void sched_fork_ksegrp(struct ksegrp *kg, struct ksegrp *child) { + mtx_assert(&sched_lock, MA_OWNED); child->kg_estcpu = kg->kg_estcpu; } @@ -522,6 +526,7 @@ void sched_class(struct ksegrp *kg, int class) { + mtx_assert(&sched_lock, MA_OWNED); kg->kg_pri_class = class; } @@ -535,6 +540,7 @@ sched_prio(struct thread *td, u_char prio) { + mtx_assert(&sched_lock, MA_OWNED); if (TD_ON_RUNQ(td)) { adjustrunqueue(td, prio); } else { @@ -545,6 +551,8 @@ void sched_sleep(struct thread *td, u_char prio) { + + mtx_assert(&sched_lock, MA_OWNED); td->td_ksegrp->kg_slptime = 0; td->td_priority = prio; } @@ -552,6 +560,8 @@ void sched_switchin(struct thread *td) { + + mtx_assert(&sched_lock, MA_OWNED); td->td_oncpu = PCPU_GET(cpuid); } @@ -564,6 +574,7 @@ ke = td->td_kse; p = td->td_proc; + mtx_assert(&sched_lock, MA_OWNED); KASSERT((ke->ke_state == KES_THREAD), ("mi_switch: kse state?")); td->td_lastcpu = td->td_oncpu; @@ -593,6 +604,7 @@ { struct ksegrp *kg; + mtx_assert(&sched_lock, MA_OWNED); kg = td->td_ksegrp; if (kg->kg_slptime > 1) updatepri(kg); ==== //depot/projects/smpng/sys/kern/sched_ule.c#9 (text+ko) ==== @@ -23,7 +23,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/kern/sched_ule.c,v 1.31 2003/04/22 20:50:38 jhb Exp $ + * $FreeBSD: src/sys/kern/sched_ule.c,v 1.32 2003/04/23 18:51:05 jhb Exp $ */ #include @@ -769,6 +769,7 @@ void sched_fork_kse(struct kse *ke, struct kse *child) { + child->ke_slice = ke->ke_slice; child->ke_cpu = ke->ke_cpu; /* sched_pickcpu(); */ child->ke_runq = NULL; @@ -785,6 +786,8 @@ void sched_fork_ksegrp(struct ksegrp *kg, struct ksegrp *child) { + + PROC_LOCK_ASSERT(child->kg_proc, MA_OWNED); /* XXX Need something better here */ if (kg->kg_slptime > kg->kg_runtime) { child->kg_slptime = SCHED_DYN_RANGE; @@ -809,6 +812,7 @@ struct kseq *kseq; struct kse *ke; + mtx_assert(&sched_lock, MA_OWNED); if (kg->kg_pri_class == class) return; ==== //depot/projects/smpng/sys/kern/subr_trap.c#52 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $FreeBSD: src/sys/kern/subr_trap.c,v 1.252 2003/04/22 20:54:04 jhb Exp $ + * $FreeBSD: src/sys/kern/subr_trap.c,v 1.253 2003/04/23 18:51:55 jhb Exp $ */ #include "opt_mac.h" @@ -78,7 +78,6 @@ p->p_comm); #ifdef INVARIANTS /* Check that we called signotify() enough. */ - mtx_lock(&Giant); PROC_LOCK(p); mtx_lock_spin(&sched_lock); if (SIGPENDING(td) && ((td->td_flags & TDF_NEEDSIGCHK) == 0 || @@ -86,7 +85,6 @@ printf("failed to set signal flags properly for ast()\n"); mtx_unlock_spin(&sched_lock); PROC_UNLOCK(p); - mtx_unlock(&Giant); #endif /* ==== //depot/projects/smpng/sys/net/if_ethersubr.c#30 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)if_ethersubr.c 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/net/if_ethersubr.c,v 1.143 2003/03/21 17:53:15 mdodd Exp $ + * $FreeBSD: src/sys/net/if_ethersubr.c,v 1.144 2003/04/23 18:35:40 archie Exp $ */ #include "opt_atalk.h" @@ -281,13 +281,13 @@ if ((m->m_flags & M_BCAST) || (loop_copy > 0)) { struct mbuf *n; - n = m_copy(m, 0, (int)M_COPYALL); - n->m_pkthdr.csum_flags |= csum_flags; - if (csum_flags & CSUM_DATA_VALID) - n->m_pkthdr.csum_data = 0xffff; - - (void) if_simloop(ifp, n, dst->sa_family, hlen); + if ((n = m_copy(m, 0, (int)M_COPYALL)) != NULL) { + n->m_pkthdr.csum_flags |= csum_flags; + if (csum_flags & CSUM_DATA_VALID) + n->m_pkthdr.csum_data = 0xffff; + (void)if_simloop(ifp, n, dst->sa_family, hlen); + } } else if (bcmp(eh->ether_dhost, eh->ether_shost, ETHER_ADDR_LEN) == 0) { m->m_pkthdr.csum_flags |= csum_flags; ==== //depot/projects/smpng/sys/sys/proc.h#83 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)proc.h 8.15 (Berkeley) 5/19/95 - * $FreeBSD: src/sys/sys/proc.h,v 1.321 2003/04/22 20:54:04 jhb Exp $ + * $FreeBSD: src/sys/sys/proc.h,v 1.322 2003/04/23 18:54:30 jhb Exp $ */ #ifndef _SYS_PROC_H_ @@ -157,6 +157,7 @@ * o - ktrace lock * p - select lock (sellock) * r - p_peers lock + * z - zombie threads/kse/ksegroup lock * * If the locking key specifies two identifiers (for example, p_pptr) then * either lock is sufficient for read access, but both locks must be held @@ -263,15 +264,15 @@ * are linked to them. Other threads are not yet assigned. */ struct thread { - struct proc *td_proc; /* Associated process. */ - struct ksegrp *td_ksegrp; /* Associated KSEG. */ - TAILQ_ENTRY(thread) td_plist; /* All threads in this proc */ - TAILQ_ENTRY(thread) td_kglist; /* All threads in this ksegrp */ + struct proc *td_proc; /* (*) Associated process. */ + struct ksegrp *td_ksegrp; /* (*) Associated KSEG. */ + TAILQ_ENTRY(thread) td_plist; /* (*) All threads in this proc */ + TAILQ_ENTRY(thread) td_kglist; /* (*) All threads in this ksegrp */ /* The two queues below should someday be merged */ TAILQ_ENTRY(thread) td_slpq; /* (j) Sleep queue. XXXKSE */ TAILQ_ENTRY(thread) td_lockq; /* (j) Lock queue. XXXKSE */ - TAILQ_ENTRY(thread) td_runq; /* (j) Run queue(s). XXXKSE */ + TAILQ_ENTRY(thread) td_runq; /* (j/z) Run queue(s). XXXKSE */ TAILQ_HEAD(, selinfo) td_selq; /* (p) List of selinfos. */ @@ -295,21 +296,21 @@ LIST_HEAD(, mtx) td_contested; /* (j) Contested locks. */ struct lock_list_entry *td_sleeplocks; /* (k) Held sleep locks. */ int td_intr_nesting_level; /* (k) Interrupt recursion. */ - struct kse_thr_mailbox *td_mailbox; /* The userland mailbox address */ + struct kse_thr_mailbox *td_mailbox; /* (*) Userland mailbox address */ struct ucred *td_ucred; /* (k) Reference to credentials. */ void (*td_switchin)(void); /* (k) Switchin special func. */ - struct thread *td_standin; /* (?) Use this for an upcall */ - u_int td_prticks; /* (?) Profclock hits in sys for user */ - struct kse_upcall *td_upcall; /* our upcall structure. */ + struct thread *td_standin; /* (*) Use this for an upcall */ + u_int td_prticks; /* (*) Profclock hits in sys for user */ + struct kse_upcall *td_upcall; /* (*) Upcall structure. */ u_int64_t td_sticks; /* (j) Statclock hits in system mode. */ - u_int td_uuticks; /* Statclock hits in user, for UTS */ - u_int td_usticks; /* Statclock hits in kernel, for UTS */ + u_int td_uuticks; /* (*) Statclock hits in user, for UTS */ + u_int td_usticks; /* (*) Statclock hits in kernel, for UTS */ u_int td_critnest; /* (k) Critical section nest level. */ - sigset_t td_oldsigmask; /* (c) Saved mask from pre sigpause. */ + sigset_t td_oldsigmask; /* (k) Saved mask from pre sigpause. */ sigset_t td_sigmask; /* (c) Current signal mask. */ sigset_t td_siglist; /* (c) Sigs arrived, not delivered. */ - STAILQ_HEAD(, thread) td_umtxq; /* (p) List of threads blocked by us. */ - STAILQ_ENTRY(thread) td_umtx; /* (p) Link for when we're blocked. */ + STAILQ_HEAD(, thread) td_umtxq; /* (c?) List of threads blocked by us. */ + STAILQ_ENTRY(thread) td_umtx; /* (c?) Link for when we're blocked. */ #define td_endzero td_base_pri @@ -335,13 +336,13 @@ struct callout td_slpcallout; /* (h) Callout for sleep. */ struct trapframe *td_frame; /* (k) */ struct vm_object *td_kstack_obj;/* (a) Kstack object. */ - vm_offset_t td_kstack; /* Kernel VA of kstack. */ - int td_kstack_pages; /* Size of the kstack */ + vm_offset_t td_kstack; /* (a) Kernel VA of kstack. */ + int td_kstack_pages; /* (a) Size of the kstack */ struct vm_object *td_altkstack_obj;/* (a) Alternate kstack object. */ - vm_offset_t td_altkstack; /* Kernel VA of alternate kstack. */ - int td_altkstack_pages; /* Size of the alternate kstack */ + vm_offset_t td_altkstack; /* (a) Kernel VA of alternate kstack. */ + int td_altkstack_pages; /* (a) Size of the alternate kstack */ struct mdthread td_md; /* (k) Any machine-dependent fields. */ - struct td_sched *td_sched; /* Scheduler specific data */ + struct td_sched *td_sched; /* (*) Scheduler specific data */ }; /* flags kept in td_flags */ #define TDF_OLDMASK 0x000001 /* Need to restore mask after suspend. */ @@ -425,16 +426,16 @@ * for the group. */ struct kse { - struct proc *ke_proc; /* Associated process. */ - struct ksegrp *ke_ksegrp; /* Associated KSEG. */ - TAILQ_ENTRY(kse) ke_kglist; /* Queue of all KSEs in ke_ksegrp. */ - TAILQ_ENTRY(kse) ke_kgrlist; /* Queue of all KSEs in this state. */ - TAILQ_ENTRY(kse) ke_procq; /* (j) Run queue. */ + struct proc *ke_proc; /* (*) Associated process. */ + struct ksegrp *ke_ksegrp; /* (*) Associated KSEG. */ + TAILQ_ENTRY(kse) ke_kglist; /* (*) Queue of KSEs in ke_ksegrp. */ + TAILQ_ENTRY(kse) ke_kgrlist; /* (*) Queue of KSEs in this state. */ + TAILQ_ENTRY(kse) ke_procq; /* (j/z) Run queue. */ #define ke_startzero ke_flags int ke_flags; /* (j) KEF_* flags. */ - struct thread *ke_thread; /* Active associated thread. */ - fixpt_t ke_pctcpu; /* (j) %cpu during p_swtime. */ + struct thread *ke_thread; /* (*) Active associated thread. */ + fixpt_t ke_pctcpu; /* (j) %cpu during p_swtime. */ u_char ke_oncpu; /* (j) Which cpu we are on. */ char ke_rqindex; /* (j) Run queue index. */ enum { @@ -443,10 +444,10 @@ KES_ONRUNQ, KES_UNQUEUED, /* in transit */ KES_THREAD /* slaved to thread state */ - } ke_state; /* (j) S* process status. */ + } ke_state; /* (j) KSE status. */ #define ke_endzero ke_dummy u_char ke_dummy; - struct ke_sched *ke_sched; /* Scheduler specific data */ + struct ke_sched *ke_sched; /* (*) Scheduler specific data */ }; /* flags kept in ke_flags */ @@ -478,8 +479,8 @@ * contain multiple KSEs. */ struct ksegrp { - struct proc *kg_proc; /* Process that contains this KSEG. */ - TAILQ_ENTRY(ksegrp) kg_ksegrp; /* Queue of KSEGs in kg_proc. */ + struct proc *kg_proc; /* (*) Process that contains this KSEG. */ + TAILQ_ENTRY(ksegrp) kg_ksegrp; /* (*) Queue of KSEGs in kg_proc. */ TAILQ_HEAD(, kse) kg_kseq; /* (ke_kglist) All KSEs. */ TAILQ_HEAD(, kse) kg_iq; /* (ke_kgrlist) All idle KSEs. */ TAILQ_HEAD(, thread) kg_threads;/* (td_kglist) All threads. */ @@ -487,27 +488,27 @@ TAILQ_HEAD(, thread) kg_slpq; /* (td_runq) NONRUNNABLE threads. */ TAILQ_HEAD(, kse_upcall) kg_upcalls; /* All upcalls in the group */ #define kg_startzero kg_estcpu - u_int kg_estcpu; /* Sum of the same field in KSEs. */ + u_int kg_estcpu; /* (j) Sum of the same field in KSEs. */ u_int kg_slptime; /* (j) How long completely blocked. */ - struct thread *kg_last_assigned; /* (j) Last thread assigned to a KSE */ + struct thread *kg_last_assigned; /* (j) Last thread assigned to a KSE. */ int kg_runnable; /* (j) Num runnable threads on queue. */ int kg_runq_kses; /* (j) Num KSEs on runq. */ int kg_idle_kses; /* (j) Num KSEs on iq */ int kg_numupcalls; /* (j) Num upcalls */ int kg_upsleeps; /* (c) Num threads in kse_release() */ - struct kse_thr_mailbox *kg_completed; /* (c) completed thread mboxes */ - int kg_nextupcall; /* next upcall time */ - int kg_upquantum; /* quantum to schedule an upcall */ + struct kse_thr_mailbox *kg_completed; /* (c) Completed thread mboxes. */ + int kg_nextupcall; /* (*) Next upcall time */ + int kg_upquantum; /* (*) Quantum to schedule an upcall */ #define kg_endzero kg_pri_class #define kg_startcopy kg_endzero u_char kg_pri_class; /* (j) Scheduling class. */ u_char kg_user_pri; /* (j) User pri from estcpu and nice. */ - char kg_nice; /* (j?/k?) Process "nice" value. */ + char kg_nice; /* (c + j) Process "nice" value. */ #define kg_endcopy kg_numthreads int kg_numthreads; /* (j) Num threads in total */ int kg_kses; /* (j) Num KSEs in group. */ - struct kg_sched *kg_sched; /* Scheduler specific data */ + struct kg_sched *kg_sched; /* (*) Scheduler specific data */ }; /* @@ -518,12 +519,12 @@ LIST_ENTRY(proc) p_list; /* (d) List of all processes. */ TAILQ_HEAD(, ksegrp) p_ksegrps; /* (kg_ksegrp) All KSEGs. */ TAILQ_HEAD(, thread) p_threads; /* (td_plist) Threads. (shortcut) */ - TAILQ_HEAD(, thread) p_suspended; /* (td_runq) suspended threads */ + TAILQ_HEAD(, thread) p_suspended; /* (td_runq) Suspended threads. */ struct ucred *p_ucred; /* (c) Process owner's identity. */ struct filedesc *p_fd; /* (b) Ptr to open files structure. */ /* Accumulated stats for all KSEs? */ struct pstats *p_stats; /* (b) Accounting/statistics (CPU). */ - struct plimit *p_limit; /* (m) Process limits. */ + struct plimit *p_limit; /* (c*) Process limits. */ struct vm_object *p_upages_obj; /* (a) Upages object. */ struct procsig *p_procsig; /* (c) Signal actions, state (CPU). */ @@ -540,14 +541,14 @@ PRS_NEW = 0, /* In creation */ PRS_NORMAL, /* KSEs can be run */ PRS_ZOMBIE - } p_state; /* (j) S* process status. */ + } p_state; /* (j/c) S* process status. */ pid_t p_pid; /* (b) Process identifier. */ LIST_ENTRY(proc) p_hash; /* (d) Hash chain. */ LIST_ENTRY(proc) p_pglist; /* (g + e) List of processes in pgrp. */ struct proc *p_pptr; /* (c + e) Pointer to parent process. */ LIST_ENTRY(proc) p_sibling; /* (e) List of sibling processes. */ LIST_HEAD(, proc) p_children; /* (e) Pointer to list of children. */ - struct mtx p_mtx; /* (k) Lock for this struct. */ + struct mtx p_mtx; /* (n) Lock for this struct. */ /* The following fields are all zeroed upon creation in fork. */ #define p_startzero p_oppid @@ -580,9 +581,9 @@ char p_step; /* (c) Process is stopped. */ u_char p_pfsflags; /* (c) Procfs flags. */ struct nlminfo *p_nlminfo; /* (?) Only used by/for lockd. */ - void *p_aioinfo; /* (c) ASYNC I/O info. */ - struct thread *p_singlethread;/* (j) If single threading this is it */ - int p_suspcount; /* (j) # threads in suspended mode */ + void *p_aioinfo; /* (?) ASYNC I/O info. */ + struct thread *p_singlethread;/* (c + j) If single threading this is it */ + int p_suspcount; /* (c) # threads in suspended mode */ /* End area that is zeroed on creation. */ #define p_endzero p_sigstk @@ -599,18 +600,18 @@ #define p_endcopy p_xstat u_short p_xstat; /* (c) Exit status; also stop sig. */ - int p_numthreads; /* (?) number of threads */ + int p_numthreads; /* (j) Number of threads. */ int p_numksegrps; /* (?) number of ksegrps */ - struct mdproc p_md; /* (c) Any machine-dependent fields. */ - struct callout p_itcallout; /* (h) Interval timer callout. */ + struct mdproc p_md; /* Any machine-dependent fields. */ + struct callout p_itcallout; /* (h + c) Interval timer callout. */ struct user *p_uarea; /* (k) Kernel VA of u-area (CPU) */ u_short p_acflag; /* (c) Accounting flags. */ struct rusage *p_ru; /* (a) Exit information. XXX */ struct proc *p_peers; /* (r) */ struct proc *p_leader; /* (b) */ void *p_emuldata; /* (c) Emulator state data. */ - struct label p_label; /* process (not subject) MAC label */ - struct p_sched *p_sched; /* Scheduler specific data */ + struct label p_label; /* (*) Process (not subject) MAC label */ + struct p_sched *p_sched; /* (*) Scheduler specific data */ }; #define p_rlimit p_limit->pl_rlimit ==== //depot/projects/smpng/sys/vm/vm_glue.c#24 (text+ko) ==== @@ -59,7 +59,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $FreeBSD: src/sys/vm/vm_glue.c,v 1.166 2003/04/22 20:00:26 jhb Exp $ + * $FreeBSD: src/sys/vm/vm_glue.c,v 1.167 2003/04/23 18:21:41 jhb Exp $ */ #include "opt_vm.h" @@ -513,14 +513,16 @@ faultin(p) struct proc *p; { +#ifdef NO_SWAPPING + + PROC_LOCK_ASSERT(p, MA_OWNED); + if ((p->p_sflag & PS_INMEM) == 0) + panic("faultin: proc swapped out with NO_SWAPPING!"); +#else /* !NO_SWAPPING */ struct thread *td; GIANT_REQUIRED; PROC_LOCK_ASSERT(p, MA_OWNED); -#ifdef NO_SWAPPING - if ((p->p_sflag & PS_INMEM) == 0) - panic("faultin: proc swapped out with NO_SWAPPING!"); -#else /* * If another process is swapping in this process, * just wait until it finishes. @@ -558,7 +560,7 @@ /* Allow other threads to swap p out now. */ --p->p_lock; } -#endif +#endif /* NO_SWAPPING */ } /* From owner-p4-projects@FreeBSD.ORG Wed Apr 23 13:56:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9267E37B404; Wed, 23 Apr 2003 13:56:07 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2C0C937B401 for ; Wed, 23 Apr 2003 13:56:07 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E180043FE1 for ; Wed, 23 Apr 2003 13:56:05 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NKu50U060341 for ; Wed, 23 Apr 2003 13:56:05 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NKu5VU060332 for perforce@freebsd.org; Wed, 23 Apr 2003 13:56:05 -0700 (PDT) Date: Wed, 23 Apr 2003 13:56:05 -0700 (PDT) Message-Id: <200304232056.h3NKu5VU060332@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 Subject: PERFORCE change 29537 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 20:56:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=29537 Change 29537 by marcel@marcel_nfs on 2003/04/23 13:55:54 Get signal delivery working for the "legacy" syscalls. This brings us back online with a world from HEAD and an EPC based kernel. Note that since we have a gateway page, we don't have to copy signal trampoline code onto the stack when we exec. We have the trampoline code in the gateway page now. Not only does this remove the pressure on the size of the trampoline code, it also means we can stop using executable stacks. Some additional work needs to be done to handle the less common cases. This is delayed until the signal delivery for EPC syscalls has been implemented. Both syscall paths will share a lot of code WRT signal delivery, so it's better to have the rudimentary support for the EPC syscalls in place before working on the hairy details. Things that need to be done are: o Save the preserved registers so that we can safely sigreturn from anywhere the process pleases, rather than by returning from the signal handler. Restoring the preserved registers can be tricky as it involves unwinding. o Make sure the kernel backing store doesn't have more than 0x200 bytes worth of dirty registers (including NaT collections). We need to be able to return to the original stack, which means that we need to be able to discard the current register stack. This mimics the problem of exec'ing. See also exec_setregs(). Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/elf_machdep.c#4 edit .. //depot/projects/ia64_epc/sys/ia64/ia64/locore.s#15 edit .. //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#17 edit .. //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#10 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/elf_machdep.c#4 (text+ko) ==== @@ -59,8 +59,8 @@ NULL, __elfN(freebsd_fixup), sendsig, - sigcode, - &szsigcode, + NULL, /* sigcode */ + NULL, /* &szsigcode */ NULL, "FreeBSD ELF64", __elfN(coredump), ==== //depot/projects/ia64_epc/sys/ia64/ia64/locore.s#15 (text+ko) ==== @@ -295,84 +295,6 @@ #endif /* !SMP */ -/**************************************************************************/ - -/* - * Signal "trampoline" code. Invoked from RTE setup by sendsig(). - * - * On entry, registers look like: - * - * r14 signal number - * r15 pointer to siginfo_t - * r16 pointer to signal context frame (scp) - * r17 address of handler function descriptor - * r18 address of new backing store (if any) - * sp+16 pointer to sigframe - */ - -ENTRY(sigcode,0) - ld8 r8=[r17],8 // function address - ;; - ld8 gp=[r17] // function's gp value - mov b6=r8 // transfer to a branch register - cover - ;; - add r8=UC_MCONTEXT+MC_SPECIAL_BSPSTORE,r16 // address or mc_ar_bsp - mov r9=ar.bsp // save ar.bsp - ;; - st8 [r8]=r9 - cmp.eq p1,p2=r0,r18 // check for new bs -(p1) br.cond.sptk.few 1f // branch if not switching - flushrs // flush out to old bs - mov ar.rsc=0 // switch off RSE - add r8=UC_MCONTEXT+MC_SPECIAL_RNAT,r16 // address of mc_ar_rnat - ;; - mov r9=ar.rnat // value of ar.rnat after flush - mov ar.bspstore=r18 // point at new bs - ;; - st8 [r8]=r9 // remember ar.rnat - mov ar.rsc=15 // XXX bogus value - check - invala - ;; -1: alloc r5=ar.pfs,0,0,3,0 // register frame for call - ;; - mov out0=r14 // signal number - mov out1=r15 // siginfo - mov out2=r16 // ucontext - mov r4=r16 // save from call - br.call.sptk.few rp=b6 // call the signal handler - ;; - alloc r14=ar.pfs,0,0,0,0 // discard call frame - ;; - flushrs - ;; -(p1) br.cond.sptk.few 2f // note: p1 is preserved - mov ar.rsc=0 - add r8=UC_MCONTEXT+MC_SPECIAL_RNAT,r4 // address of mc_ar_rnat - ;; - ld8 r9=[r8] - ;; - add r8=UC_MCONTEXT+MC_SPECIAL_BSPSTORE,r4 // address of mc_ar_bsp - ;; - ld8 r10=[r8] - ;; - mov ar.bspstore=r10 - ;; - mov ar.rnat=r9 - mov ar.rsc=15 - ;; -2: CALLSYS_NOERROR(sigreturn) // call sigreturn() - alloc r14=ar.pfs,0,0,1,0 ;; - mov out0=ret0 // if that failed, get error code - CALLSYS_NOERROR(exit) // and call exit() with it. -XENTRY(esigcode) - END(sigcode) - - .data - EXPORT(szsigcode) - .quad esigcode-sigcode - .text - /* * Create a default interrupt name table. The first entry (vector 0) is * hardwaired to the clock interrupt. ==== //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#17 (text+ko) ==== @@ -106,6 +106,8 @@ extern u_int64_t kernel_text[], _end[]; extern u_int64_t ia64_gateway_page[]; +extern u_int64_t break_sigtramp[]; +extern u_int64_t epc_sigtramp[]; FPSWA_INTERFACE *fpswa_interface; @@ -808,35 +810,28 @@ } /* - * Send an interrupt to process. - * - * Stack is set up to allow sigcode stored - * at top to call routine, followed by kcall - * to sigreturn routine below. After sigreturn - * resets the signal mask, the stack, and the - * frame pointer, it returns to the user - * specified pc, psl. + * Send an interrupt (signal) to a process. */ void sendsig(sig_t catcher, int sig, sigset_t *mask, u_long code) { struct proc *p; struct thread *td; - struct trapframe *frame; + struct trapframe *tf; struct sigacts *psp; struct sigframe sf, *sfp; mcontext_t *mc; - u_int64_t sbs = 0, sp; - int oonstack, rndfsize; + u_int64_t sbs, sp; + int oonstack; td = curthread; p = td->td_proc; PROC_LOCK_ASSERT(p, MA_OWNED); psp = p->p_sigacts; - frame = td->td_frame; - sp = frame->tf_special.sp; + tf = td->td_frame; + sp = tf->tf_special.sp; oonstack = sigonstack(sp); - rndfsize = ((sizeof(sf) + 15) / 16) * 16; + sbs = 0; /* save user context */ bzero(&sf, sizeof(struct sigframe)); @@ -845,27 +840,7 @@ sf.sf_uc.uc_stack.ss_flags = (p->p_flag & P_ALTSTACK) ? ((oonstack) ? SS_ONSTACK : 0) : SS_DISABLE; - mc = &sf.sf_uc.uc_mcontext; - mc->mc_special = frame->tf_special; - if ((frame->tf_flags & FRAME_SYSCALL) == 0) { - mc->mc_flags |= IA64_MC_FLAGS_SCRATCH_VALID; - mc->mc_scratch = frame->tf_scratch; - mc->mc_scratch_fp = frame->tf_scratch_fp; - /* - * XXX High FP. If the process has never used the high FP, - * mark the high FP as valid (zero defaults). If the process - * did use the high FP, then store them in the PCB if not - * already there (ie get them from the CPU that has them) - * and write them in the context. - */ - } - /* - * XXX preserved registers. We don't have the preserved registers - * in the trapframe. We don't worry about it now. - */ - - /* * Allocate and validate space for the signal handler * context. Note that if the stack is in P0 space, the * call to grow() is a nop, and the useracc() check @@ -874,32 +849,43 @@ */ if ((p->p_flag & P_ALTSTACK) != 0 && !oonstack && SIGISMEMBER(psp->ps_sigonstack, sig)) { - sbs = (u_int64_t) p->p_sigstk.ss_sp; - sfp = (struct sigframe *)((caddr_t)p->p_sigstk.ss_sp + - p->p_sigstk.ss_size - rndfsize); - /* Align sp and bsp. */ + sbs = (u_int64_t)p->p_sigstk.ss_sp; sbs = (sbs + 15) & ~15; - sfp = (struct sigframe *)((u_int64_t)sfp & ~15); + sfp = (struct sigframe *)(sbs + p->p_sigstk.ss_size); #if defined(COMPAT_43) || defined(COMPAT_SUNOS) p->p_sigstk.ss_flags |= SS_ONSTACK; #endif } else - sfp = (struct sigframe *)(sp - rndfsize); + sfp = (struct sigframe *)sp; + sfp = (struct sigframe *)((u_int64_t)(sfp - 1) & ~15); + + /* Fill in the siginfo structure for POSIX handlers. */ + if (SIGISMEMBER(p->p_sigacts->ps_siginfo, sig)) { + sf.sf_si.si_signo = sig; + sf.sf_si.si_code = code; + sf.sf_si.si_addr = (void*)tf->tf_special.ifa; + code = (u_int64_t)&sfp->sf_si; + } + PROC_UNLOCK(p); -#ifdef DEBUG - if ((sigdebug & SDB_KSTACK) && p->p_pid == sigpid) - printf("sendsig(%d): sig %d ssp %p usp %p\n", p->p_pid, - sig, &sf, sfp); -#endif + mc = &sf.sf_uc.uc_mcontext; + mc->mc_special = tf->tf_special; + mc->mc_scratch = tf->tf_scratch; + if ((tf->tf_flags & FRAME_SYSCALL) == 0) { + mc->mc_flags |= IA64_MC_FLAGS_SCRATCH_VALID; + mc->mc_scratch_fp = tf->tf_scratch_fp; + /* + * XXX High FP. If the process has never used the high FP, + * mark the high FP as valid (zero defaults). If the process + * did use the high FP, then store them in the PCB if not + * already there (ie get them from the CPU that has them) + * and write them in the context. + */ + } /* Copy the frame out to userland. */ - if (copyout((caddr_t)&sf, (caddr_t)sfp, sizeof(sf)) != 0) { -#ifdef DEBUG - if ((sigdebug & SDB_KSTACK) && p->p_pid == sigpid) - printf("sendsig(%d): copyout failed on sig %d\n", - p->p_pid, sig); -#endif + if (copyout(&sf, sfp, sizeof(sf)) != 0) { /* * Process has trashed its stack; give it an illegal * instruction to halt it in its tracks. @@ -908,41 +894,31 @@ sigexit(td, SIGILL); return; } -#ifdef DEBUG - if (sigdebug & SDB_FOLLOW) - printf("sendsig(%d): sig %d sfp %p code %lx\n", p->p_pid, sig, - sfp, code); -#endif - /* Set up the registers to return to sigcode. */ - frame->tf_special.psr &= ~IA64_PSR_RI; - frame->tf_special.iip = PS_STRINGS - (esigcode - sigcode); - frame->tf_special.gp = sig; - PROC_LOCK(p); - if (SIGISMEMBER(p->p_sigacts->ps_siginfo, sig)) { - frame->tf_scratch.gr15 = (u_int64_t)&(sfp->sf_si); - - /* Fill in POSIX parts */ - sf.sf_si.si_signo = sig; - sf.sf_si.si_code = code; - sf.sf_si.si_addr = (void*)frame->tf_special.ifa; + if ((tf->tf_flags & FRAME_SYSCALL) == 0) { + tf->tf_special.psr &= ~IA64_PSR_RI; + tf->tf_special.iip = ia64_get_k5() + + ((uint64_t)break_sigtramp - (uint64_t)ia64_gateway_page); } else - frame->tf_scratch.gr15 = code; + tf->tf_special.rp = ia64_get_k5() + + ((uint64_t)epc_sigtramp - (uint64_t)ia64_gateway_page); - frame->tf_special.sp = (u_int64_t)sfp - 16; - frame->tf_scratch.gr14 = sig; - frame->tf_scratch.gr16 = (u_int64_t) &sfp->sf_uc; - frame->tf_scratch.gr17 = (u_int64_t)catcher; - frame->tf_scratch.gr18 = sbs; + /* + * Setup the trapframe to return to the signal trampoline. We pass + * information to the trampoline in the following registers: + * + * gp new backing store or NULL + * r8 signal number + * r9 signal code or siginfo pointer + * r10 signal handler (function descriptor) + */ + tf->tf_special.sp = (u_int64_t)sfp - 16; + tf->tf_special.gp = sbs; + tf->tf_scratch.gr8 = sig; + tf->tf_scratch.gr9 = code; + tf->tf_scratch.gr10 = (u_int64_t)catcher; -#ifdef DEBUG - if (sigdebug & SDB_FOLLOW) - printf("sendsig(%d): pc %lx, catcher %lx\n", p->p_pid, - frame->tf_cr_iip, frame->tf_scratch.gr17); - if ((sigdebug & SDB_KSTACK) && p->p_pid == sigpid) - printf("sendsig(%d): sig %d returns\n", - p->p_pid, sig); -#endif + PROC_LOCK(p); } /* @@ -963,23 +939,15 @@ } */ *uap) { ucontext_t uc; - struct trapframe *frame; + struct trapframe *tf; struct __mcontext *mc; struct proc *p; struct pcb *pcb; - frame = td->td_frame; + tf = td->td_frame; p = td->td_proc; pcb = td->td_pcb; -#ifdef DEBUG - if (sigdebug & SDB_FOLLOW) - printf("sigreturn: pid %d, scp %p\n", p->p_pid, uap->sigcntxp); -#endif - - /* Throw away the high FP registers. */ - ia64_highfp_drop(td); - /* * Fetch the entire context structure at once for speed. * We don't use a normal argument to simplify RSE handling. @@ -988,37 +956,35 @@ return (EFAULT); /* + * XXX make sure ndirty in the current trapframe is less than + * 0x1f8 so that if we throw away the current register stack, + * we have reached the bottom of the kernel register stack. + * See also exec_setregs. + */ + + /* * Restore the user-supplied information */ mc = &uc.uc_mcontext; - frame->tf_special = mc->mc_special; + tf->tf_special = mc->mc_special; + tf->tf_scratch = mc->mc_scratch; if ((mc->mc_flags & IA64_MC_FLAGS_SCRATCH_VALID) != 0) { - frame->tf_scratch = mc->mc_scratch; - frame->tf_scratch_fp = mc->mc_scratch_fp; + tf->tf_scratch_fp = mc->mc_scratch_fp; + /* XXX high FP. */ } - /* - * XXX preserved registers. - * XXX High FP. - */ - PROC_LOCK(p); #if defined(COMPAT_43) || defined(COMPAT_SUNOS) - if (sigonstack(frame->tf_special.sp)) + if (sigonstack(tf->tf_special.sp)) p->p_sigstk.ss_flags |= SS_ONSTACK; else p->p_sigstk.ss_flags &= ~SS_ONSTACK; #endif - td->td_sigmask = uc.uc_sigmask; SIG_CANTMASK(td->td_sigmask); signotify(td); PROC_UNLOCK(p); -#ifdef DEBUG - if (sigdebug & SDB_FOLLOW) - printf("sigreturn(%d): returns\n", p->p_pid); -#endif return (EJUSTRETURN); } ==== //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#10 (text+ko) ==== @@ -26,6 +26,7 @@ * $FreeBSD$ */ +#include #include #include @@ -92,14 +93,80 @@ ;; } +ENTRY(break_sigtramp, 0) +{ .mib + mov ar.rsc=0 + cmp.ne p15,p0=0,gp + cover + ;; +} +{ .mmi + flushrs +(p15) invala + add r16=16+UC_MCONTEXT+MC_SPECIAL,sp + ;; +} +{ .mmi + mov r17=ar.bsp + mov r18=ar.rnat + add r14=40,r16 + ;; +} +{ .mmi + st8 [r14]=r17,64 // bspstore +(p15) mov ar.bspstore=gp + add r15=48,r16 + ;; +} +{ .mmi + st8 [r15]=r18 // rnat + st8 [r14]=r0 // ndirty + nop 0 + ;; +} +{ .mmi + alloc r14=ar.pfs, 0, 0, 3, 0 + mov ar.rsc=15 + mov out0=r8 + ;; +} +{ .mmi + ld8 r16=[r10],8 // function address + ;; + ld8 gp=[r10] // function's gp value + mov b7=r16 + ;; +} +{ .mib + mov out1=r9 + add out2=16,sp + br.call.sptk rp=b7 + ;; +} +{ .mmi + mov r15=SYS_sigreturn + add out0=16,sp + break 0x100000 + ;; +} +{ .mmi + mov r15=SYS_exit + mov out0=ret0 + break 0x100000 + ;; +} +END(break_sigtramp) + +ENTRY(epc_sigtramp, 0) + break 0x80100 + ;; +END(epc_sigtramp) + .align PAGE_SIZE + .section .text.syscall, "ax" - .section .text.syscall, "ax" - .global epc_syscall - .proc epc_syscall - .regstk 8,0,0,0 -epc_syscall: +ENTRY(epc_syscall, 8) { .mmi mov r16=ar.rsc mov ar.rsc=0 @@ -358,4 +425,4 @@ br.ret.sptk b7 ;; } - .endp epc_syscall +END(epc_syscall) From owner-p4-projects@FreeBSD.ORG Wed Apr 23 14:26:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CD27F37B408; Wed, 23 Apr 2003 14:26:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 609C337B407 for ; Wed, 23 Apr 2003 14:26:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4E8A743F93 for ; Wed, 23 Apr 2003 14:26:49 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NLQn0U083291 for ; Wed, 23 Apr 2003 14:26:49 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NLQlu8083271 for perforce@freebsd.org; Wed, 23 Apr 2003 14:26:47 -0700 (PDT) Date: Wed, 23 Apr 2003 14:26:47 -0700 (PDT) Message-Id: <200304232126.h3NLQlu8083271@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 Subject: PERFORCE change 29543 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 21:26:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=29543 Change 29543 by marcel@marcel_pluto1 on 2003/04/23 14:26:36 IFC @29536 Affected files ... .. //depot/projects/ia64/UPDATING#36 integrate .. //depot/projects/ia64/crypto/openssh/ChangeLog#4 integrate .. //depot/projects/ia64/crypto/openssh/FREEBSD-tricks#2 integrate .. //depot/projects/ia64/crypto/openssh/FREEBSD-upgrade#4 integrate .. //depot/projects/ia64/crypto/openssh/Makefile.in#4 integrate .. //depot/projects/ia64/crypto/openssh/README#4 integrate .. //depot/projects/ia64/crypto/openssh/README.privsep#3 integrate .. //depot/projects/ia64/crypto/openssh/TODO#4 integrate .. //depot/projects/ia64/crypto/openssh/acconfig.h#5 integrate .. //depot/projects/ia64/crypto/openssh/auth-krb4.c#5 integrate .. //depot/projects/ia64/crypto/openssh/auth-krb5.c#6 integrate .. //depot/projects/ia64/crypto/openssh/auth-pam.c#6 integrate .. //depot/projects/ia64/crypto/openssh/auth-passwd.c#6 integrate .. //depot/projects/ia64/crypto/openssh/auth-sia.c#2 integrate .. //depot/projects/ia64/crypto/openssh/auth-sia.h#2 integrate .. //depot/projects/ia64/crypto/openssh/auth.c#6 integrate .. //depot/projects/ia64/crypto/openssh/auth1.c#8 integrate .. //depot/projects/ia64/crypto/openssh/auth2-pam.c#6 integrate .. //depot/projects/ia64/crypto/openssh/auth2.c#8 integrate .. //depot/projects/ia64/crypto/openssh/authfd.c#6 integrate .. //depot/projects/ia64/crypto/openssh/authfd.h#5 integrate .. //depot/projects/ia64/crypto/openssh/authfile.c#6 integrate .. //depot/projects/ia64/crypto/openssh/bufaux.c#5 integrate .. //depot/projects/ia64/crypto/openssh/canohost.c#5 integrate .. //depot/projects/ia64/crypto/openssh/channels.c#7 integrate .. //depot/projects/ia64/crypto/openssh/cipher.c#6 integrate .. //depot/projects/ia64/crypto/openssh/clientloop.c#6 integrate .. //depot/projects/ia64/crypto/openssh/compat.c#5 integrate .. //depot/projects/ia64/crypto/openssh/compat.h#5 integrate .. //depot/projects/ia64/crypto/openssh/config.guess#3 integrate .. //depot/projects/ia64/crypto/openssh/config.h#3 integrate .. //depot/projects/ia64/crypto/openssh/config.sub#3 integrate .. //depot/projects/ia64/crypto/openssh/configure.ac#4 integrate .. //depot/projects/ia64/crypto/openssh/crc32.c#2 integrate .. //depot/projects/ia64/crypto/openssh/crc32.h#3 integrate .. //depot/projects/ia64/crypto/openssh/defines.h#4 integrate .. //depot/projects/ia64/crypto/openssh/dh.c#4 integrate .. //depot/projects/ia64/crypto/openssh/fixpaths#2 integrate .. //depot/projects/ia64/crypto/openssh/hostfile.h#4 integrate .. //depot/projects/ia64/crypto/openssh/includes.h#6 integrate .. //depot/projects/ia64/crypto/openssh/kex.c#5 integrate .. //depot/projects/ia64/crypto/openssh/kex.h#5 integrate .. //depot/projects/ia64/crypto/openssh/kexdh.c#4 integrate .. //depot/projects/ia64/crypto/openssh/kexdhc.c#1 branch .. //depot/projects/ia64/crypto/openssh/kexdhs.c#1 branch .. //depot/projects/ia64/crypto/openssh/kexgex.c#4 integrate .. //depot/projects/ia64/crypto/openssh/kexgexc.c#1 branch .. //depot/projects/ia64/crypto/openssh/kexgexs.c#1 branch .. //depot/projects/ia64/crypto/openssh/key.c#6 integrate .. //depot/projects/ia64/crypto/openssh/key.h#4 integrate .. //depot/projects/ia64/crypto/openssh/log.c#5 integrate .. //depot/projects/ia64/crypto/openssh/loginrec.c#4 integrate .. //depot/projects/ia64/crypto/openssh/misc.c#4 integrate .. //depot/projects/ia64/crypto/openssh/monitor.c#6 integrate .. //depot/projects/ia64/crypto/openssh/monitor_wrap.c#4 integrate .. //depot/projects/ia64/crypto/openssh/msg.c#4 integrate .. //depot/projects/ia64/crypto/openssh/msg.h#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/Makefile.in#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/base64.c#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/base64.h#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/basename.c#1 branch .. //depot/projects/ia64/crypto/openssh/openbsd-compat/basename.h#1 branch .. //depot/projects/ia64/crypto/openssh/openbsd-compat/bsd-arc4random.c#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/bsd-cray.h#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/bsd-cygwin_util.c#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/bsd-getpeereid.c#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/bsd-misc.c#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/bsd-misc.h#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/bsd-snprintf.c#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/fake-getaddrinfo.c#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/fake-getaddrinfo.h#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/getcwd.c#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/getopt.c#4 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/mktemp.c#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/mktemp.h#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/openbsd-compat.h#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/port-aix.h#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/setenv.c#3 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/setproctitle.c#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/setproctitle.h#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/sys-tree.h#2 integrate .. //depot/projects/ia64/crypto/openssh/openbsd-compat/vis.c#1 branch .. //depot/projects/ia64/crypto/openssh/openbsd-compat/vis.h#1 branch .. //depot/projects/ia64/crypto/openssh/packet.c#6 integrate .. //depot/projects/ia64/crypto/openssh/packet.h#4 integrate .. //depot/projects/ia64/crypto/openssh/progressmeter.c#1 branch .. //depot/projects/ia64/crypto/openssh/progressmeter.h#1 branch .. //depot/projects/ia64/crypto/openssh/readconf.c#7 integrate .. //depot/projects/ia64/crypto/openssh/readconf.h#4 integrate .. //depot/projects/ia64/crypto/openssh/readpass.c#4 integrate .. //depot/projects/ia64/crypto/openssh/regress/Makefile#2 integrate .. //depot/projects/ia64/crypto/openssh/regress/agent-getpeereid.sh#1 branch .. //depot/projects/ia64/crypto/openssh/regress/agent-ptrace.sh#1 branch .. //depot/projects/ia64/crypto/openssh/regress/agent-timeout.sh#1 branch .. //depot/projects/ia64/crypto/openssh/regress/keygen-change.sh#1 branch .. //depot/projects/ia64/crypto/openssh/regress/proxy-connect.sh#2 integrate .. //depot/projects/ia64/crypto/openssh/regress/sftp-batch.sh#1 branch .. //depot/projects/ia64/crypto/openssh/regress/sftp-cmds.sh#1 branch .. //depot/projects/ia64/crypto/openssh/regress/ssh-com-client.sh#2 integrate .. //depot/projects/ia64/crypto/openssh/regress/ssh-com-keygen.sh#2 integrate .. //depot/projects/ia64/crypto/openssh/regress/ssh-com-sftp.sh#2 integrate .. //depot/projects/ia64/crypto/openssh/regress/ssh-com.sh#2 integrate .. //depot/projects/ia64/crypto/openssh/scp.1#5 integrate .. //depot/projects/ia64/crypto/openssh/scp.c#5 integrate .. //depot/projects/ia64/crypto/openssh/servconf.c#10 integrate .. //depot/projects/ia64/crypto/openssh/serverloop.c#6 integrate .. //depot/projects/ia64/crypto/openssh/session.c#16 integrate .. //depot/projects/ia64/crypto/openssh/sftp-client.c#6 integrate .. //depot/projects/ia64/crypto/openssh/sftp-common.c#5 integrate .. //depot/projects/ia64/crypto/openssh/sftp-int.c#6 integrate .. //depot/projects/ia64/crypto/openssh/sftp-int.h#3 integrate .. //depot/projects/ia64/crypto/openssh/sftp-server.c#6 integrate .. //depot/projects/ia64/crypto/openssh/sftp.1#5 integrate .. //depot/projects/ia64/crypto/openssh/sftp.c#6 integrate .. //depot/projects/ia64/crypto/openssh/ssh-add.1#4 integrate .. //depot/projects/ia64/crypto/openssh/ssh-add.c#5 integrate .. //depot/projects/ia64/crypto/openssh/ssh-agent.1#5 integrate .. //depot/projects/ia64/crypto/openssh/ssh-agent.c#7 integrate .. //depot/projects/ia64/crypto/openssh/ssh-dss.c#5 integrate .. //depot/projects/ia64/crypto/openssh/ssh-dss.h#3 integrate .. //depot/projects/ia64/crypto/openssh/ssh-keygen.1#4 integrate .. //depot/projects/ia64/crypto/openssh/ssh-keygen.c#6 integrate .. //depot/projects/ia64/crypto/openssh/ssh-keyscan.1#3 integrate .. //depot/projects/ia64/crypto/openssh/ssh-keyscan.c#5 integrate .. //depot/projects/ia64/crypto/openssh/ssh-keysign.8#3 integrate .. //depot/projects/ia64/crypto/openssh/ssh-keysign.c#3 integrate .. //depot/projects/ia64/crypto/openssh/ssh-rand-helper.c#3 integrate .. //depot/projects/ia64/crypto/openssh/ssh-rsa.c#6 integrate .. //depot/projects/ia64/crypto/openssh/ssh-rsa.h#3 integrate .. //depot/projects/ia64/crypto/openssh/ssh.1#6 integrate .. //depot/projects/ia64/crypto/openssh/ssh.c#7 integrate .. //depot/projects/ia64/crypto/openssh/ssh_config#11 integrate .. //depot/projects/ia64/crypto/openssh/ssh_config.5#7 integrate .. //depot/projects/ia64/crypto/openssh/sshconnect.c#6 integrate .. //depot/projects/ia64/crypto/openssh/sshconnect2.c#7 integrate .. //depot/projects/ia64/crypto/openssh/sshd.8#9 integrate .. //depot/projects/ia64/crypto/openssh/sshd.c#8 integrate .. //depot/projects/ia64/crypto/openssh/sshd_config#12 integrate .. //depot/projects/ia64/crypto/openssh/sshd_config.5#7 integrate .. //depot/projects/ia64/crypto/openssh/sshpty.c#6 integrate .. //depot/projects/ia64/crypto/openssh/version.h#10 integrate .. //depot/projects/ia64/etc/rc#24 integrate .. //depot/projects/ia64/etc/rc.d/bgfsck#4 integrate .. //depot/projects/ia64/etc/syslog.conf#9 integrate .. //depot/projects/ia64/lib/libc/gen/getgrent.c#7 integrate .. //depot/projects/ia64/lib/libdisk/rules.c#9 integrate .. //depot/projects/ia64/lib/libdisk/write_sparc64_disk.c#5 integrate .. //depot/projects/ia64/lib/libgeom/geom_ctl.c#2 integrate .. //depot/projects/ia64/lib/libgeom/libgeom.h#5 integrate .. //depot/projects/ia64/lib/libpthread/thread/Makefile.inc#7 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_concurrency.c#1 branch .. //depot/projects/ia64/lib/libpthread/thread/thr_cond.c#4 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_create.c#5 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_init.c#6 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#10 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_private.h#7 integrate .. //depot/projects/ia64/release/Makefile#46 integrate .. //depot/projects/ia64/release/alpha/drivers.conf#10 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#44 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#81 integrate .. //depot/projects/ia64/release/i386/drivers.conf#18 integrate .. //depot/projects/ia64/release/ia64/doFS.sh#4 integrate .. //depot/projects/ia64/release/scripts/doFS.sh#13 integrate .. //depot/projects/ia64/sbin/atacontrol/Makefile#3 integrate .. //depot/projects/ia64/sbin/atacontrol/atacontrol.c#9 integrate .. //depot/projects/ia64/sbin/kldconfig/Makefile#3 integrate .. //depot/projects/ia64/sbin/kldconfig/kldconfig.c#2 integrate .. //depot/projects/ia64/sbin/kldload/Makefile#3 integrate .. //depot/projects/ia64/sbin/kldstat/Makefile#3 integrate .. //depot/projects/ia64/sbin/kldstat/kldstat.c#2 integrate .. //depot/projects/ia64/sbin/kldunload/Makefile#3 integrate .. //depot/projects/ia64/sbin/kldunload/kldunload.c#2 integrate .. //depot/projects/ia64/sbin/sunlabel/Makefile#4 integrate .. //depot/projects/ia64/sbin/sunlabel/runtest.sh#2 integrate .. //depot/projects/ia64/sbin/sunlabel/sunlabel.c#5 integrate .. //depot/projects/ia64/secure/lib/Makefile#4 integrate .. //depot/projects/ia64/secure/lib/libssh/Makefile#9 integrate .. //depot/projects/ia64/secure/libexec/Makefile#3 integrate .. //depot/projects/ia64/secure/libexec/sftp-server/Makefile#6 integrate .. //depot/projects/ia64/secure/usr.bin/Makefile#4 integrate .. //depot/projects/ia64/secure/usr.bin/ssh/Makefile#7 integrate .. //depot/projects/ia64/secure/usr.sbin/sshd/Makefile#12 integrate .. //depot/projects/ia64/share/man/man4/asr.4#3 integrate .. //depot/projects/ia64/share/man/man5/fs.5#5 integrate .. //depot/projects/ia64/share/man/man5/rc.conf.5#33 integrate .. //depot/projects/ia64/share/man/man8/rc.subr.8#3 integrate .. //depot/projects/ia64/share/man/man9/Makefile#20 integrate .. //depot/projects/ia64/share/man/man9/device_get_ivars.9#2 integrate .. //depot/projects/ia64/share/man/man9/device_printf.9#1 branch .. //depot/projects/ia64/share/man/man9/device_set_driver.9#1 branch .. //depot/projects/ia64/share/mk/sys.mk#7 integrate .. //depot/projects/ia64/sys/alpha/alpha/trap.c#25 integrate .. //depot/projects/ia64/sys/alpha/linux/linux_machdep.c#9 integrate .. //depot/projects/ia64/sys/alpha/osf1/osf1_signal.c#12 integrate .. //depot/projects/ia64/sys/compat/linux/linux_file.c#14 integrate .. //depot/projects/ia64/sys/compat/linux/linux_signal.c#9 integrate .. //depot/projects/ia64/sys/compat/svr4/svr4_signal.c#8 integrate .. //depot/projects/ia64/sys/dev/ar/if_ar.c#9 integrate .. //depot/projects/ia64/sys/dev/ar/if_ar_isa.c#4 integrate .. //depot/projects/ia64/sys/dev/ar/if_ar_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/ar/if_arregs.h#3 integrate .. //depot/projects/ia64/sys/dev/firewire/fwdev.c#16 integrate .. //depot/projects/ia64/sys/dev/pci/pcireg.h#3 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/ac97.c#18 integrate .. //depot/projects/ia64/sys/dev/sr/if_sr.c#9 integrate .. //depot/projects/ia64/sys/dev/sr/if_sr_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/sr/if_sr_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/sr/if_srregs.h#3 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumdaemon.c#6 integrate .. //depot/projects/ia64/sys/fs/procfs/procfs_ctl.c#14 integrate .. //depot/projects/ia64/sys/geom/geom.h#26 integrate .. //depot/projects/ia64/sys/geom/geom_bsd.c#31 integrate .. //depot/projects/ia64/sys/geom/geom_ctl.c#7 integrate .. //depot/projects/ia64/sys/geom/geom_ctl.h#2 integrate .. //depot/projects/ia64/sys/geom/geom_disk.c#29 integrate .. //depot/projects/ia64/sys/geom/geom_event.c#17 integrate .. //depot/projects/ia64/sys/geom/geom_int.h#11 integrate .. //depot/projects/ia64/sys/geom/geom_kern.c#17 integrate .. //depot/projects/ia64/sys/geom/geom_mbr.c#27 integrate .. //depot/projects/ia64/sys/geom/geom_pc98.c#21 integrate .. //depot/projects/ia64/sys/geom/geom_slice.c#26 integrate .. //depot/projects/ia64/sys/geom/geom_slice.h#12 integrate .. //depot/projects/ia64/sys/geom/geom_subr.c#25 integrate .. //depot/projects/ia64/sys/geom/geom_sunlabel.c#19 integrate .. //depot/projects/ia64/sys/i386/i386/trap.c#28 integrate .. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_signal.c#8 integrate .. //depot/projects/ia64/sys/i386/linux/linux_ptrace.c#8 integrate .. //depot/projects/ia64/sys/ia64/ia32/ia32_misc.c#10 integrate .. //depot/projects/ia64/sys/ia64/ia64/trap.c#48 integrate .. //depot/projects/ia64/sys/kern/kern_clock.c#20 integrate .. //depot/projects/ia64/sys/kern/kern_exit.c#42 integrate .. //depot/projects/ia64/sys/kern/kern_fork.c#35 integrate .. //depot/projects/ia64/sys/kern/kern_resource.c#23 integrate .. //depot/projects/ia64/sys/kern/kern_sig.c#45 integrate .. //depot/projects/ia64/sys/kern/kern_synch.c#31 integrate .. //depot/projects/ia64/sys/kern/kern_thread.c#40 integrate .. //depot/projects/ia64/sys/kern/sched_4bsd.c#10 integrate .. //depot/projects/ia64/sys/kern/sched_ule.c#13 integrate .. //depot/projects/ia64/sys/kern/subr_prof.c#12 integrate .. //depot/projects/ia64/sys/kern/subr_trap.c#28 integrate .. //depot/projects/ia64/sys/kern/sys_process.c#19 integrate .. //depot/projects/ia64/sys/kern/vfs_mount.c#15 integrate .. //depot/projects/ia64/sys/net/if_ethersubr.c#27 integrate .. //depot/projects/ia64/sys/nfsclient/nfs_vnops.c#19 integrate .. //depot/projects/ia64/sys/pc98/conf/GENERIC#31 integrate .. //depot/projects/ia64/sys/powerpc/conf/GENERIC#20 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/trap.c#24 integrate .. //depot/projects/ia64/sys/sys/proc.h#59 integrate .. //depot/projects/ia64/sys/sys/sun_disklabel.h#5 integrate .. //depot/projects/ia64/sys/ufs/ffs/ffs_snapshot.c#27 integrate .. //depot/projects/ia64/sys/vm/swap_pager.h#8 integrate .. //depot/projects/ia64/sys/vm/vm_fault.c#31 integrate .. //depot/projects/ia64/sys/vm/vm_glue.c#23 integrate .. //depot/projects/ia64/sys/vm/vm_object.h#18 integrate .. //depot/projects/ia64/sys/vm/vm_page.c#43 integrate .. //depot/projects/ia64/sys/vm/vm_pageout.c#34 integrate .. //depot/projects/ia64/usr.bin/calendar/calendars/calendar.history#11 integrate .. //depot/projects/ia64/usr.bin/m4/m4.1#7 integrate .. //depot/projects/ia64/usr.sbin/crunch/crunchgen/crunchgen.c#3 integrate .. //depot/projects/ia64/usr.sbin/jls/jls.c#3 integrate Differences ... ==== //depot/projects/ia64/UPDATING#36 (text+ko) ==== @@ -62,7 +62,7 @@ 20021216: A name change in /etc/netconfig has been reverted to stay - compatible with with suns TIRPC and also with NetBSD. You need + compatible with suns TIRPC and also with NetBSD. You need to run mergemaster after make world. A new libc does still work with an outdated /etc/netconfig for some time, but you'll get a warning. This warning will be removed in 20030301. @@ -1234,4 +1234,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.244 2003/03/31 12:46:18 ru Exp $ +$FreeBSD: src/UPDATING,v 1.245 2003/04/23 14:28:13 schweikh Exp $ ==== //depot/projects/ia64/crypto/openssh/ChangeLog#4 (text+ko) ==== @@ -1,3 +1,541 @@ +20030401 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2003/03/28 10:11:43 + [scp.1 sftp.1 ssh.1 ssh-add.1 ssh-agent.1 ssh_config.5 sshd_config.5] + [ssh-keygen.1 ssh-keyscan.1 ssh-keysign.8] + - killed whitespace + - new sentence new line + - .Bk for arguments + ok markus@ + - markus@cvs.openbsd.org 2003/04/01 10:10:23 + [clientloop.c monitor.c monitor_wrap.c packet.c packet.h readconf.c] + [readconf.h serverloop.c sshconnect2.c] + rekeying bugfixes and automatic rekeying: + * both client and server rekey _automatically_ + (a) after 2^31 packets, because after 2^32 packets + the sequence number for packets wraps + (b) after 2^(blocksize_in_bits/4) blocks + (see: draft-ietf-secsh-newmodes-00.txt) + (a) and (b) are _enabled_ by default, and only disabled for known + openssh versions, that don't support rekeying properly. + * client option 'RekeyLimit' + * do not reply to requests during rekeying + - markus@cvs.openbsd.org 2003/04/01 10:22:21 + [clientloop.c monitor.c monitor_wrap.c packet.c packet.h readconf.c] + [readconf.h serverloop.c sshconnect2.c] + backout rekeying changes (for 3.6.1) + - markus@cvs.openbsd.org 2003/04/01 10:31:26 + [compat.c compat.h kex.c] + bugfix causes stalled connections for ssh.com < 3.0; noticed by ho@; + tested by ho@ and myself + - markus@cvs.openbsd.org 2003/04/01 10:56:46 + [version.h] + 3.6.1 + - (djm) Crank spec file versions + - (djm) Release 3.6.1p1 + +20030326 + - (djm) OpenBSD CVS Sync + - deraadt@cvs.openbsd.org 2003/03/26 04:02:51 + [sftp-server.c] + one last fix to the tree: race fix broke stuff; pr 3169; + srp@srparish.net, help from djm + +20030325 + - (djm) Fix getpeerid support for 64 bit BE systems. From + Arnd Bergmann + +20030324 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/23 19:02:00 + [monitor.c] + unbreak rekeying for privsep; ok millert@ + - Release 3.6p1 + - Fix sshd BindAddress and -b options for systems using fake-getaddrinfo. + Report from murple@murple.net, diagnosis from dtucker@zip.com.au + +20030320 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/17 10:38:38 + [progressmeter.c] + don't print \n if backgrounded; from ho@ + - markus@cvs.openbsd.org 2003/03/17 11:43:47 + [version.h] + enter 3.6 + - (bal) The days of lack of int64_t support are over. Sorry kids. + - (bal) scp.c 'limit' conflicts with Cray. Rename to 'limitbw' + - (bal) Collection of Cray patches (bsd-cray.h fix for CRAYT3E and improved + guessing rules) + - (bal) Disable Privsep for Tru64 after pre-authentication due to issues + with SIA. Also, clean up of tru64 support patch by Chris Adams + + - (tim) [contrib/caldera/openssh.spec] workaround RPM quirk. Fix %files + +20030318 + - (tim) [configure.ac openbsd-compat/bsd-misc.c openbsd-compat/bsd-misc.h] + add nanosleep(). testing/corrections by Darren Tucker + +20030317 + - (djm) Fix return value checks for RAND_bytes. Report from + Steve G + +20030315 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/13 11:42:19 + [authfile.c ssh-keysign.c] + move RSA_blinding_on to generic key load method + - markus@cvs.openbsd.org 2003/03/13 11:44:50 + [ssh-agent.c] + ssh-agent is similar to ssh-keysign (allows other processes to use + private rsa keys). however, it gets key over socket and not from + a file, so we have to do blinding here as well. + +20030310 +- (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/05 22:33:43 + [channels.c monitor.c scp.c session.c sftp-client.c sftp-int.c] + [sftp-server.c ssh-add.c sshconnect2.c] + fix memory leaks; from dlheine@suif.Stanford.EDU/CLOUSEAU; ok djm@ + - (djm) One more portable-specific one from dlheine@suif.Stanford.EDU/ + CLOUSEAU + - (djm) Bug #245: TTY problems on Solaris. Fix by stevesk@ and + dtucker@zip.com.au + - (djm) AIX package builder update from dtucker@zip.com.au + +20030225 + - (djm) Fix some compile errors spotted by dtucker and his fabulous + tinderbox + +20030224 + - (djm) Tweak gnome-ssh-askpass2: + - Retry kb and mouse grab a couple of times, so passphrase dialog doesn't + immediately fail if you are doing something else when it appears (e.g. + dragging a window) + - Perform server grab after we have the keyboard and/or pointer to avoid + races. + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/01/27 17:06:31 + [sshd.c] + more specific error message when /var/empty has wrong permissions; + bug #46, map@appgate.com; ok henning@, provos@, stevesk@ + - markus@cvs.openbsd.org 2003/01/28 16:11:52 + [scp.1] + document -l; pekkas@netcore.fi + - stevesk@cvs.openbsd.org 2003/01/28 17:24:51 + [scp.1] + remove example not pertinent with -1 addition; ok markus@ + - jmc@cvs.openbsd.org 2003/01/31 21:54:40 + [sshd.8] + typos; sshd(8): help and ok markus@ + help and ok millert@ + - markus@cvs.openbsd.org 2003/02/02 10:51:13 + [scp.c] + call okname() only when using system(3) for remote-remote copy; + fixes bugs #483, #472; ok deraadt@, mouring@ + - markus@cvs.openbsd.org 2003/02/02 10:56:08 + [kex.c] + add support for key exchange guesses; based on work by + avraham.fraenkel@commatch.com; fixes bug #148; ok deraadt@ + - markus@cvs.openbsd.org 2003/02/03 08:56:16 + [sshpty.c] + don't call error() for readonly /dev; from soekris list; ok mcbride, + henning, deraadt. + - markus@cvs.openbsd.org 2003/02/04 09:32:08 + [key.c] + better debug3 message + - markus@cvs.openbsd.org 2003/02/04 09:33:22 + [monitor.c monitor_wrap.c] + skey/bsdauth: use 0 to indicate failure instead of -1, because + the buffer API only supports unsigned ints. + - markus@cvs.openbsd.org 2003/02/05 09:02:28 + [readconf.c] + simplify ProxyCommand parsing, remove strcat/xrealloc; ok henning@, djm@ + - markus@cvs.openbsd.org 2003/02/06 09:26:23 + [session.c] + missing call to setproctitle() after authentication; ok provos@ + - markus@cvs.openbsd.org 2003/02/06 09:27:29 + [ssh.c ssh_config.5] + support 'ProxyCommand none'; bugzilla #433; binder@arago.de; ok djm@ + - markus@cvs.openbsd.org 2003/02/06 09:29:18 + [sftp-server.c] + fix races in rename/symlink; from Tony Finch; ok djm@ + - markus@cvs.openbsd.org 2003/02/06 21:22:43 + [auth1.c auth2.c] + undo broken fix for #387, fixes #486 + - markus@cvs.openbsd.org 2003/02/10 11:51:47 + [ssh-add.1] + xref sshd_config.5 (not sshd.8); mark@summersault.com; bug #490 + - markus@cvs.openbsd.org 2003/02/12 09:33:04 + [key.c key.h ssh-dss.c ssh-rsa.c] + merge ssh-dss.h ssh-rsa.h into key.h; ok deraadt@ + - markus@cvs.openbsd.org 2003/02/12 21:39:50 + [crc32.c crc32.h] + replace crc32.c with a BSD licensed version; noted by David Turner + - markus@cvs.openbsd.org 2003/02/16 17:09:57 + [kex.c kexdh.c kexgex.c kex.h sshconnect2.c sshd.c ssh-keyscan.c] + split kex into client and server code, no need to link + server code into the client; ok provos@ + - markus@cvs.openbsd.org 2003/02/16 17:30:33 + [monitor.c monitor_wrap.c] + fix permitrootlogin forced-commands-only for privsep; bux #387; + ok provos@ + - markus@cvs.openbsd.org 2003/02/21 09:05:53 + [servconf.c] + print sshd_config filename in debug2 mode. + - mpech@cvs.openbsd.org 2003/02/21 10:34:48 + [auth-krb4.c] + ...sizeof(&adat.session) is not good here. + henning@, deraadt@, millert@ + - (djm) Add new object files to Makefile and reorder + - (djm) Bug #501: gai_strerror should return char*; + fix from dtucker@zip.com.au + - (djm) Most of Bug #499: Cygwin compile fixes for new progressmeter; + From vinschen@redhat.com + - (djm) Rest of Bug #499: Import a basename() function from OpenBSD libc + - (djm) Bug #494: Allow multiple accounts on Windows 9x/Me; + From vinschen@redhat.com + - (djm) Bug #456: Support for NEC SX6 with Unicos; from wendyp@cray.com + +20030211 + - (djm) Cygwin needs libcrypt too. Patch from vinschen@redhat.com + +20030206 + - (djm) Teach fake-getaddrinfo to use getservbyname() when provided a + string service name. Suggested by markus@, review by itojun@ + +20030131 + - (bal) AIX 4.2.1 lacks nanosleep(). Patch to use nsleep() provided by + dtucker@zip.com.au + +20030130 + - (djm) Unbreak root password auth. Spotted by dtucker@zip.com.au + +200301028 + - (djm) Search libposix4 and librt for nanosleep. From dtucker@zip.com.au + and openssh-unix-dev@thewrittenword.com + +200301027 + - (bal) Bugzilla 477 patch by wendyp@cray.com. Define TIOCGPGRP for + cray. Also removed test for tcgetpgrp in configure.ac since it + is no longer used. + +20030124 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2003/01/23 08:58:47 + [sshd_config.5] + typos; ok millert@ + - markus@cvs.openbsd.org 2003/01/23 13:50:27 + [authfd.c authfd.h readpass.c ssh-add.1 ssh-add.c ssh-agent.c] + ssh-add -c, prompt user for confirmation (using ssh-askpass) when + private agent key is used; with djm@; test by dugsong@, djm@; + ok deraadt@ + - markus@cvs.openbsd.org 2003/01/23 14:01:53 + [scp.c] + bandwidth limitation patch (scp -l) from niels@; ok todd@, deraadt@ + - markus@cvs.openbsd.org 2003/01/23 14:06:15 + [scp.1 scp.c] + scp -12; Sam Smith and others; ok provos@, deraadt@ + - (djm) Add TIMEVAL_TO_TIMESPEC macros + +20030123 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/23 00:03:00 + [auth1.c] + Don't log TIS auth response; "get rid of it" - markus@ + +20030122 + - (djm) OpenBSD CVS Sync + - marc@cvs.openbsd.org 2003/01/21 18:14:36 + [ssh-agent.1 ssh-agent.c] + Add a -t life option to ssh-agent that set the default lifetime. + The default can still be overriden by using -t in ssh-add. + OK markus@ + - (djm) Reorganise PAM & SIA password handling to eliminate some common code + - (djm) Sync regress with OpenBSD -current + +20030120 + - (djm) Fix compilation for NetBSD from dtucker@zip.com.au + - (tim) [progressmeter.c] make compilers without long long happy. + - (tim) [configure.ac] Add -belf to build ELF binaries on OpenServer 5 when + using cc. (gcc already did) + +20030118 + - (djm) Revert fix for Bug #442 for now. + +20030117 + - (djm) Bug #470: Detect strnvis, not strvis in configure. + From d_wllms@lanl.gov + +20030116 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/16 03:41:55 + [sftp-int.c] + explicitly use first glob result + +20030114 + - (djm) OpenBSD CVS Sync + - fgsch@cvs.openbsd.org 2003/01/10 23:23:24 + [sftp-int.c] + typo; from Nils Nordman . + - markus@cvs.openbsd.org 2003/01/11 18:29:43 + [log.c] + set fatal_cleanups to NULL in fatal_remove_all_cleanups(); + dtucker@zip.com.au + - markus@cvs.openbsd.org 2003/01/12 16:57:02 + [progressmeter.c] + allow WARNINGS=yes; ok djm@ + - djm@cvs.openbsd.org 2003/01/13 11:04:04 + [sftp-int.c] + make cmds[] array static to avoid conflict with BSDI libc. + mindrot bug #466. Fix from mdev@idg.nl; ok markus@ + - djm@cvs.openbsd.org 2003/01/14 10:58:00 + [sftp-client.c sftp-int.c] + Don't try to upload or download non-regular files. Report from + apoloval@pantuflo.escet.urjc.es; ok markus@ + +20030113 + - (djm) Rework openbsd-compat/setproctitle.c a bit: move emulation type + detection to configure.ac. Prompted by stevesk@ + - (djm) Bug #467: Add a --disable-strip option to turn off stripping of + installed binaries. From mdev@idg.nl + +20030110 + - (djm) Enable new setproctitle emulation for Linux, AIX and HP/UX. More + systems may be added later. + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/08 23:53:26 + [sftp.1 sftp.c sftp-int.c sftp-int.h] + Cleanup error handling for batchmode + Allow blank lines and comments in input + Ability to suppress abort on error in batchmode ("-put blah") + Fixes mindrot bug #452; markus@ ok + - fgsch@cvs.openbsd.org 2003/01/10 08:19:07 + [scp.c sftp.1 sftp.c sftp-client.c sftp-int.c progressmeter.c] + [progressmeter.h] + sftp progress meter support. + original diffs by Nils Nordman via + markus@, merged to -current by me, djm@ ok. + - djm@cvs.openbsd.org 2003/01/10 08:48:15 + [sftp-client.c] + Simplify and avoid redundancy in packet send and receive + functions; ok fgs@ + - djm@cvs.openbsd.org 2003/01/10 10:29:35 + [scp.c] + Don't ftruncate after write error, creating sparse files of + incorrect length + mindrot bug #403, reported by rusr@cup.hp.com; ok markus@ + - djm@cvs.openbsd.org 2003/01/10 10:32:54 + [channels.c] + hush socket() errors, except last. Fixes mindrot bug #408; ok markus@ + +20030108 + - (djm) Sync openbsd-compat/ with OpenBSD -current + - (djm) Avoid redundant xstrdup/xfree in auth2-pam.c. From Solar via markus@ + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/01/01 18:08:52 + [channels.c] + move big output buffer messages to debug2 + - djm@cvs.openbsd.org 2003/01/06 23:51:22 + [sftp-client.c] + Fix "get -p" download to not add user-write perm. mindrot bug #426 + reported by gfernandez@livevault.com; ok markus@ + - fgsch@cvs.openbsd.org 2003/01/07 23:42:54 + [sftp.1] + add version; from Nils Nordman via markus@. + markus@ ok + - (djm) Update README to reflect AIX's status as a well supported platform. + From dtucker@zip.com.au + - (tim) [Makefile.in configure.ac] replace fixpath with sed script. Patch + by Mo DeJong. + - (tim) [auth.c] declare today at top of allowed_user() to keep + older compilers happy. + - (tim) [scp.c] make compilers without long long happy. + +20030107 + - (djm) Bug #401: Work around Linux breakage with IPv6 mapped addresses. + Based on fix from yoshfuji@linux-ipv6.org + - (djm) Bug #442: Check for and deny access to accounts with locked + passwords. Patch from dtucker@zip.com.au + - (djm) Bug #44: Use local mkstemp() rather than glibc's silly one. Fixes + Can't pass KRB4 TGT passing. Fix from: jan.iven@cern.ch + - (djm) Fix Bug #442 for PAM case + - (djm) Bug #110: bogus error messages in lastlog_get_entry(). Fix based + on one by peak@argo.troja.mff.cuni.cz + - (djm) Bug #111: Run syslog and stderr logging through strnvis to eliminate + nasties. Report from peak@argo.troja.mff.cuni.cz + - (djm) Bug #178: On AIX /etc/nologin wasnt't shown to users. Fix from + Ralf.Wenk@fh-karlsruhe.de and dtucker@zip.com.au + - (djm) Fix my fix of the fix for the Bug #442 for PAM case. Spotted by + dtucker@zip.com.au. Reorder for clarity too. + +20030103 + - (djm) Bug #461: ssh-copy-id fails with no arguments. Patch from + cjwatson@debian.org + - (djm) Bug #460: Filling utmp[x]->ut_addr_v6 if present. Patch from + cjwatson@debian.org + - (djm) Bug #446: Set LOGIN env var to pw_name on AIX. Patch from + mii@ornl.gov + +20030101 + - (stevesk) [session.c sshlogin.c sshlogin.h] complete portable + parts of pass addrlen with sockaddr * fix. + from Hajimu UMEMOTO + +20021222 + - (bal) OpenBSD CVS Sync + - fgsch@cvs.openbsd.org 2002/11/15 10:03:09 + [authfile.c] + lseek(2) may return -1 when getting the public/private key lenght. + Simplify the code and check for errors using fstat(2). + + Problem reported by Mauricio Sanchez, markus@ ok. + - markus@cvs.openbsd.org 2002/11/18 16:43:44 + [clientloop.c] + don't overwrite SIG{INT,QUIT,TERM} handler if set to SIG_IGN; + e.g. if ssh is used for backup; report Joerg Schilling; ok millert@ + - markus@cvs.openbsd.org 2002/11/21 22:22:50 + [dh.c] + debug->debug2 + - markus@cvs.openbsd.org 2002/11/21 22:45:31 + [cipher.c kex.c packet.c sshconnect.c sshconnect2.c] + debug->debug2, unify debug messages + - deraadt@cvs.openbsd.org 2002/11/21 23:03:51 + [auth-krb5.c auth1.c hostfile.h monitor_wrap.c sftp-client.c sftp-int.c ssh-add.c ssh-rsa.c + sshconnect.c] + KNF + - markus@cvs.openbsd.org 2002/11/21 23:04:33 + [ssh.c] + debug->debug2 + - stevesk@cvs.openbsd.org 2002/11/24 21:46:24 + [ssh-keysign.8] + typo: "the the" + - wcobb@cvs.openbsd.org 2002/11/26 00:45:03 + [scp.c ssh-keygen.c] + Remove unnecessary fflush(stderr) calls, stderr is unbuffered by default. + ok markus@ + - stevesk@cvs.openbsd.org 2002/11/26 02:35:30 + [ssh-keygen.1] + remove outdated statement; ok markus@ deraadt@ + - stevesk@cvs.openbsd.org 2002/11/26 02:38:54 + [canohost.c] + KNF, comment and error message repair; ok markus@ + - markus@cvs.openbsd.org 2002/11/27 17:53:35 + [scp.c sftp.c ssh.c] + allow usernames with embedded '@', e.g. scp user@vhost@realhost:file /tmp; + http://bugzilla.mindrot.org/show_bug.cgi?id=447; ok mouring@, millert@ + - stevesk@cvs.openbsd.org 2002/12/04 04:36:47 + [session.c] + remove xauth entries before add; PR 2994 from janjaap@stack.nl. + ok markus@ + - markus@cvs.openbsd.org 2002/12/05 11:08:35 + [scp.c] + use roundup() similar to rcp/util.c and avoid problems with strange + filesystem block sizes, noted by tjr@freebsd.org; ok djm@ + - djm@cvs.openbsd.org 2002/12/06 05:20:02 + [sftp.1] + Fix cut'n'paste error, spotted by matthias.riese@b-novative.de; ok deraadt@ + - millert@cvs.openbsd.org 2002/12/09 16:50:30 + [ssh.c] + Avoid setting optind to 0 as GNU getopt treats that like we do optreset. + markus@ OK + - markus@cvs.openbsd.org 2002/12/10 08:56:00 + [session.c] + Make sure $SHELL points to the shell from the password file, even if shell + is overridden from login.conf; bug#453; semen at online.sinor.ru; ok millert@ + - markus@cvs.openbsd.org 2002/12/10 19:26:50 + [packet.c] + move tos handling to packet_set_tos; ok provos/henning/deraadt + - markus@cvs.openbsd.org 2002/12/10 19:47:14 + [packet.c] + static + - markus@cvs.openbsd.org 2002/12/13 10:03:15 + [channels.c misc.c sshconnect2.c] + cleanup debug messages, more useful information for the client user. + - markus@cvs.openbsd.org 2002/12/13 15:20:52 + [scp.c] + 1) include stalling time in total time + 2) truncate filenames to 45 instead of 20 characters + 3) print rate instead of progress bar, no more stars + 4) scale output to tty width + based on a patch from Niels; ok fries@ lebel@ fgs@ millert@ + - (bal) [msg.c msg.h scp.c ssh-keysign.c sshconnect2.c] Resync CVS IDs since + we already did s/msg_send/ssh_msg_send/ + +20021205 + - (djm) PERL-free fixpaths from stuge-openssh-unix-dev@cdy.org + +20021122 + - (tim) [configure.ac] fix STDPATH test for IRIX. First reported by + advax@triumf.ca. This type of solution tested by + +20021113 + - (tim) [configure.ac] remove unused variables no_libsocket and no_libnsl + +20021111 + - (tim) [contrib/solaris/opensshd.in] add umask 022 so sshd.pid is + not world writable. + +20021109 + - (bal) OpenBSD CVS Sync + - itojun@cvs.openbsd.org 2002/10/16 14:31:48 + [sftp-common.c] + 64bit pedant. %llu is "unsigned long long". markus ok + - markus@cvs.openbsd.org 2002/10/23 10:32:13 + [packet.c] + use %u for u_int + - markus@cvs.openbsd.org 2002/10/23 10:40:16 + [bufaux.c] + %u for u_int + - markus@cvs.openbsd.org 2002/11/04 10:07:53 + [auth.c] + don't compare against pw_home if realpath fails for pw_home (seen + on AFS); ok djm@ + - markus@cvs.openbsd.org 2002/11/04 10:09:51 + [packet.c] + log before send disconnect; ok djm@ + - markus@cvs.openbsd.org 2002/11/05 19:45:20 + [monitor.c] + handle overflows for size_t larger than u_int; siw@goneko.de, bug #425 + - markus@cvs.openbsd.org 2002/11/05 20:10:37 + [sftp-client.c] + typo; GaryF@livevault.com + - markus@cvs.openbsd.org 2002/11/07 16:28:47 + [sshd.c] + log to stderr if -ie is given, bug #414, prj@po.cwru.edu + - markus@cvs.openbsd.org 2002/11/07 22:08:07 + [readconf.c readconf.h ssh-keysign.8 ssh-keysign.c] + we cannot use HostbasedAuthentication for enabling ssh-keysign(8), + because HostbasedAuthentication might be enabled based on the + target host and ssh-keysign(8) does not know the remote hostname + and not trust ssh(1) about the hostname, so we add a new option + EnableSSHKeysign; ok djm@, report from zierke@informatik.uni-hamburg.de + - markus@cvs.openbsd.org 2002/11/07 22:35:38 + [scp.c] + check exit status from ssh, and exit(1) if ssh fails; bug#369; + binder@arago.de + - (bal) Update ssh-host-config and minor rewrite of bsd-cygwin_util.c + ntsec now default if cygwin version beginning w/ version 56. Patch + by Corinna Vinschen + - (bal) AIX does not log login attempts for unknown users (bug #432). + patch by dtucker@zip.com.au + +20021021 + - (djm) Bug #400: Kill ssh-rand-helper children on timeout, patch from + dtucker@zip.com.au + - (djm) Bug #317: FreeBSD needs libutil.h for openpty() Report from + dirk.meyer@dinoex.sub.org + +20021015 + - (bal) Fix bug id 383 and only call loginrestrict for AIX if not root. + - (bal) More advanced strsep test by Darren Tucker + +20021015 + - (tim) [contrib/caldera/openssh.spec] make ssh-agent setgid nobody + +20021004 + - (bal) Disable post-authentication Privsep for OSF/1. It conflicts with + SIA. + 20021003 - (djm) OpenBSD CVS Sync - markus@cvs.openbsd.org 2002/10/01 20:34:12 @@ -7,7 +545,7 @@ [version.h] OpenSSH 3.5 - (djm) Bump RPM spec version numbers - - (djm) Bug #406 s/msg_send/ssh_msh_send/ for Mac OS X 1.2 + - (djm) Bug #406: s/msg_send/ssh_msg_send/ for Mac OS X 1.2 20020930 - (djm) Tidy contrib/, add Makefile for GNOME passphrase dialogs, @@ -757,4 +1295,4 @@ save auth method before monitor_reset_key_state(); bugzilla bug #284; ok provos@ -$Id: ChangeLog,v 1.2491.2.1 2002/10/03 05:45:53 djm Exp $ +$Id: ChangeLog,v 1.2648 2003/04/01 11:47:16 djm Exp $ ==== //depot/projects/ia64/crypto/openssh/FREEBSD-tricks#2 (text+ko) ==== @@ -1,20 +1,19 @@ -# $FreeBSD: src/crypto/openssh/FREEBSD-tricks,v 1.2 2002/10/29 10:12:51 des Exp $ +# $FreeBSD: src/crypto/openssh/FREEBSD-tricks,v 1.3 2003/04/23 17:21:55 des Exp $ # Shell code to remove FreeBSD tags before merging -grep -rl '\$Fre.BSD:' . | -while read f ; do +grep -rl '\$Fre.BSD:' . >tags +while read f < tags ; do sed -i.orig -e '/\$Fre.BSD:/d' $f done # Shell + Perl code to add FreeBSD tags wherever an OpenBSD or Id tag occurs -egrep -rl '\$(Id|OpenBSD):' . | +cat tags | xargs perl -n -i.orig -e 'print; s/\$(Id|OpenBSD): [^\$]*\$/\$FreeBSD\$/ && print' # Shell code to reexpand FreeBSD tags -grep -rl '\$FreeBSD\$' . | -while read f ; do +while read f < tags ; do id=$(cvs diff $f | grep '\$Fre.BSD:' | sed 's/.*\(\$Fre.BSD:.*\$\).*/\1/') ; - if [ -n "$id" ] ; then + if [ -n "$id" ] ; then sed -i.orig -e "s@\\\$Fre.BSD\\\$@$id@" $f ; - fi ; + fi ; done ==== //depot/projects/ia64/crypto/openssh/FREEBSD-upgrade#4 (text+ko) ==== @@ -14,7 +14,7 @@ 3) Remove trash: - $ eval "rm -rf $(tr '[:space:]' ' ' >> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Apr 23 14:30:59 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9AB5537B404; Wed, 23 Apr 2003 14:30:58 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5C77E37B401 for ; Wed, 23 Apr 2003 14:30:58 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B406A43F3F for ; Wed, 23 Apr 2003 14:30:56 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NLUu0U087309 for ; Wed, 23 Apr 2003 14:30:56 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NLUt03087282 for perforce@freebsd.org; Wed, 23 Apr 2003 14:30:55 -0700 (PDT) Date: Wed, 23 Apr 2003 14:30:55 -0700 (PDT) Message-Id: <200304232130.h3NLUt03087282@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 Subject: PERFORCE change 29545 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 21:31:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=29545 Change 29545 by marcel@marcel_pluto1 on 2003/04/23 14:30:30 IFia64 Affected files ... .. //depot/projects/ia64_epc/UPDATING#4 integrate .. //depot/projects/ia64_epc/crypto/openssh/ChangeLog#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/FREEBSD-tricks#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/FREEBSD-upgrade#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/Makefile.in#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/README#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/README.privsep#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/TODO#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/acconfig.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth-krb4.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth-krb5.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth-pam.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth-passwd.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth-sia.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth-sia.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth1.c#3 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth2-pam.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/auth2.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/authfd.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/authfd.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/authfile.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/bufaux.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/canohost.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/channels.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/cipher.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/clientloop.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/compat.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/compat.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/config.guess#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/config.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/config.sub#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/configure.ac#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/crc32.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/crc32.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/defines.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/dh.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/fixpaths#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/hostfile.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/includes.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/kex.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/kex.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/kexdh.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/kexdhc.c#1 branch .. //depot/projects/ia64_epc/crypto/openssh/kexdhs.c#1 branch .. //depot/projects/ia64_epc/crypto/openssh/kexgex.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/kexgexc.c#1 branch .. //depot/projects/ia64_epc/crypto/openssh/kexgexs.c#1 branch .. //depot/projects/ia64_epc/crypto/openssh/key.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/key.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/log.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/loginrec.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/misc.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/monitor.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/monitor_wrap.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/msg.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/msg.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/Makefile.in#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/base64.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/base64.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/basename.c#1 branch .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/basename.h#1 branch .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/bsd-arc4random.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/bsd-cray.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/bsd-cygwin_util.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/bsd-getpeereid.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/bsd-misc.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/bsd-misc.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/bsd-snprintf.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/fake-getaddrinfo.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/fake-getaddrinfo.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/getcwd.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/getopt.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/mktemp.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/mktemp.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/openbsd-compat.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/port-aix.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/setenv.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/setproctitle.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/setproctitle.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/sys-tree.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/vis.c#1 branch .. //depot/projects/ia64_epc/crypto/openssh/openbsd-compat/vis.h#1 branch .. //depot/projects/ia64_epc/crypto/openssh/packet.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/packet.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/progressmeter.c#1 branch .. //depot/projects/ia64_epc/crypto/openssh/progressmeter.h#1 branch .. //depot/projects/ia64_epc/crypto/openssh/readconf.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/readconf.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/readpass.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/regress/Makefile#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/regress/agent-getpeereid.sh#1 branch .. //depot/projects/ia64_epc/crypto/openssh/regress/agent-ptrace.sh#1 branch .. //depot/projects/ia64_epc/crypto/openssh/regress/agent-timeout.sh#1 branch .. //depot/projects/ia64_epc/crypto/openssh/regress/keygen-change.sh#1 branch .. //depot/projects/ia64_epc/crypto/openssh/regress/proxy-connect.sh#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/regress/sftp-batch.sh#1 branch .. //depot/projects/ia64_epc/crypto/openssh/regress/sftp-cmds.sh#1 branch .. //depot/projects/ia64_epc/crypto/openssh/regress/ssh-com-client.sh#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/regress/ssh-com-keygen.sh#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/regress/ssh-com-sftp.sh#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/regress/ssh-com.sh#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/scp.1#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/scp.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/servconf.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/serverloop.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/session.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sftp-client.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sftp-common.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sftp-int.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sftp-int.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sftp-server.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sftp.1#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sftp.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-add.1#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-add.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-agent.1#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-agent.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-dss.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-dss.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-keygen.1#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-keygen.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-keyscan.1#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-keyscan.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-keysign.8#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-keysign.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-rand-helper.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-rsa.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh-rsa.h#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh.1#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh_config#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/ssh_config.5#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sshconnect.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sshconnect2.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sshd.8#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sshd.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sshd_config#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sshd_config.5#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/sshpty.c#2 integrate .. //depot/projects/ia64_epc/crypto/openssh/version.h#2 integrate .. //depot/projects/ia64_epc/etc/rc#2 integrate .. //depot/projects/ia64_epc/etc/rc.d/bgfsck#2 integrate .. //depot/projects/ia64_epc/etc/syslog.conf#4 integrate .. //depot/projects/ia64_epc/lib/libc/gen/getgrent.c#5 integrate .. //depot/projects/ia64_epc/lib/libdisk/rules.c#3 integrate .. //depot/projects/ia64_epc/lib/libdisk/write_sparc64_disk.c#3 integrate .. //depot/projects/ia64_epc/lib/libgeom/geom_ctl.c#2 integrate .. //depot/projects/ia64_epc/lib/libgeom/libgeom.h#4 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/Makefile.inc#5 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_concurrency.c#1 branch .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_cond.c#4 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_create.c#4 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_init.c#4 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_kern.c#5 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_private.h#5 integrate .. //depot/projects/ia64_epc/release/Makefile#8 integrate .. //depot/projects/ia64_epc/release/alpha/drivers.conf#3 integrate .. //depot/projects/ia64_epc/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#8 integrate .. //depot/projects/ia64_epc/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#12 integrate .. //depot/projects/ia64_epc/release/i386/drivers.conf#6 integrate .. //depot/projects/ia64_epc/release/ia64/doFS.sh#4 integrate .. //depot/projects/ia64_epc/release/scripts/doFS.sh#6 integrate .. //depot/projects/ia64_epc/sbin/atacontrol/Makefile#2 integrate .. //depot/projects/ia64_epc/sbin/atacontrol/atacontrol.c#3 integrate .. //depot/projects/ia64_epc/sbin/kldconfig/Makefile#2 integrate .. //depot/projects/ia64_epc/sbin/kldconfig/kldconfig.c#2 integrate .. //depot/projects/ia64_epc/sbin/kldload/Makefile#2 integrate .. //depot/projects/ia64_epc/sbin/kldstat/Makefile#2 integrate .. //depot/projects/ia64_epc/sbin/kldstat/kldstat.c#2 integrate .. //depot/projects/ia64_epc/sbin/kldunload/Makefile#2 integrate .. //depot/projects/ia64_epc/sbin/kldunload/kldunload.c#2 integrate .. //depot/projects/ia64_epc/sbin/sunlabel/Makefile#4 integrate .. //depot/projects/ia64_epc/sbin/sunlabel/runtest.sh#2 integrate .. //depot/projects/ia64_epc/sbin/sunlabel/sunlabel.c#5 integrate .. //depot/projects/ia64_epc/secure/lib/Makefile#3 integrate .. //depot/projects/ia64_epc/secure/lib/libssh/Makefile#2 integrate .. //depot/projects/ia64_epc/secure/libexec/Makefile#2 integrate .. //depot/projects/ia64_epc/secure/libexec/sftp-server/Makefile#2 integrate .. //depot/projects/ia64_epc/secure/usr.bin/Makefile#2 integrate .. //depot/projects/ia64_epc/secure/usr.bin/ssh/Makefile#2 integrate .. //depot/projects/ia64_epc/secure/usr.sbin/sshd/Makefile#2 integrate .. //depot/projects/ia64_epc/share/man/man4/asr.4#3 integrate .. //depot/projects/ia64_epc/share/man/man5/fs.5#2 integrate .. //depot/projects/ia64_epc/share/man/man5/rc.conf.5#9 integrate .. //depot/projects/ia64_epc/share/man/man8/rc.subr.8#2 integrate .. //depot/projects/ia64_epc/share/man/man9/Makefile#4 integrate .. //depot/projects/ia64_epc/share/man/man9/device_get_ivars.9#2 integrate .. //depot/projects/ia64_epc/share/man/man9/device_printf.9#1 branch .. //depot/projects/ia64_epc/share/man/man9/device_set_driver.9#1 branch .. //depot/projects/ia64_epc/share/mk/sys.mk#2 integrate .. //depot/projects/ia64_epc/sys/alpha/alpha/trap.c#6 integrate .. //depot/projects/ia64_epc/sys/alpha/linux/linux_machdep.c#5 integrate .. //depot/projects/ia64_epc/sys/alpha/osf1/osf1_signal.c#4 integrate .. //depot/projects/ia64_epc/sys/compat/linux/linux_file.c#5 integrate .. //depot/projects/ia64_epc/sys/compat/linux/linux_signal.c#5 integrate .. //depot/projects/ia64_epc/sys/compat/svr4/svr4_signal.c#4 integrate .. //depot/projects/ia64_epc/sys/dev/ar/if_ar.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/ar/if_ar_isa.c#4 integrate .. //depot/projects/ia64_epc/sys/dev/ar/if_ar_pci.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/ar/if_arregs.h#2 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/fwdev.c#6 integrate .. //depot/projects/ia64_epc/sys/dev/pci/pcireg.h#2 integrate .. //depot/projects/ia64_epc/sys/dev/sound/pcm/ac97.c#7 integrate .. //depot/projects/ia64_epc/sys/dev/sr/if_sr.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/sr/if_sr_isa.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/sr/if_sr_pci.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/sr/if_srregs.h#2 integrate .. //depot/projects/ia64_epc/sys/dev/vinum/vinumdaemon.c#2 integrate .. //depot/projects/ia64_epc/sys/fs/procfs/procfs_ctl.c#4 integrate .. //depot/projects/ia64_epc/sys/geom/geom.h#6 integrate .. //depot/projects/ia64_epc/sys/geom/geom_bsd.c#7 integrate .. //depot/projects/ia64_epc/sys/geom/geom_ctl.c#5 integrate .. //depot/projects/ia64_epc/sys/geom/geom_ctl.h#2 integrate .. //depot/projects/ia64_epc/sys/geom/geom_disk.c#7 integrate .. //depot/projects/ia64_epc/sys/geom/geom_event.c#7 integrate .. //depot/projects/ia64_epc/sys/geom/geom_int.h#4 integrate .. //depot/projects/ia64_epc/sys/geom/geom_kern.c#4 integrate .. //depot/projects/ia64_epc/sys/geom/geom_mbr.c#5 integrate .. //depot/projects/ia64_epc/sys/geom/geom_pc98.c#5 integrate .. //depot/projects/ia64_epc/sys/geom/geom_slice.c#7 integrate .. //depot/projects/ia64_epc/sys/geom/geom_slice.h#4 integrate .. //depot/projects/ia64_epc/sys/geom/geom_subr.c#7 integrate .. //depot/projects/ia64_epc/sys/geom/geom_sunlabel.c#6 integrate .. //depot/projects/ia64_epc/sys/i386/i386/trap.c#6 integrate .. //depot/projects/ia64_epc/sys/i386/ibcs2/ibcs2_signal.c#3 integrate .. //depot/projects/ia64_epc/sys/i386/linux/linux_ptrace.c#4 integrate .. //depot/projects/ia64_epc/sys/ia64/ia32/ia32_misc.c#3 integrate .. //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#14 integrate .. //depot/projects/ia64_epc/sys/kern/kern_clock.c#5 integrate .. //depot/projects/ia64_epc/sys/kern/kern_exit.c#8 integrate .. //depot/projects/ia64_epc/sys/kern/kern_fork.c#7 integrate .. //depot/projects/ia64_epc/sys/kern/kern_resource.c#7 integrate .. //depot/projects/ia64_epc/sys/kern/kern_sig.c#10 integrate .. //depot/projects/ia64_epc/sys/kern/kern_synch.c#9 integrate .. //depot/projects/ia64_epc/sys/kern/kern_thread.c#13 integrate .. //depot/projects/ia64_epc/sys/kern/sched_4bsd.c#5 integrate .. //depot/projects/ia64_epc/sys/kern/sched_ule.c#8 integrate .. //depot/projects/ia64_epc/sys/kern/subr_prof.c#3 integrate .. //depot/projects/ia64_epc/sys/kern/subr_trap.c#7 integrate .. //depot/projects/ia64_epc/sys/kern/sys_process.c#4 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_mount.c#5 integrate .. //depot/projects/ia64_epc/sys/net/if_ethersubr.c#5 integrate .. //depot/projects/ia64_epc/sys/nfsclient/nfs_vnops.c#6 integrate .. //depot/projects/ia64_epc/sys/pc98/conf/GENERIC#5 integrate .. //depot/projects/ia64_epc/sys/powerpc/conf/GENERIC#5 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/trap.c#6 integrate .. //depot/projects/ia64_epc/sys/sys/proc.h#11 integrate .. //depot/projects/ia64_epc/sys/sys/sun_disklabel.h#3 integrate .. //depot/projects/ia64_epc/sys/ufs/ffs/ffs_snapshot.c#7 integrate .. //depot/projects/ia64_epc/sys/vm/swap_pager.h#2 integrate .. //depot/projects/ia64_epc/sys/vm/vm_fault.c#7 integrate .. //depot/projects/ia64_epc/sys/vm/vm_glue.c#3 integrate .. //depot/projects/ia64_epc/sys/vm/vm_object.h#6 integrate .. //depot/projects/ia64_epc/sys/vm/vm_page.c#7 integrate .. //depot/projects/ia64_epc/sys/vm/vm_pageout.c#6 integrate .. //depot/projects/ia64_epc/usr.bin/calendar/calendars/calendar.history#5 integrate .. //depot/projects/ia64_epc/usr.bin/m4/m4.1#2 integrate .. //depot/projects/ia64_epc/usr.sbin/crunch/crunchgen/crunchgen.c#2 integrate .. //depot/projects/ia64_epc/usr.sbin/jls/jls.c#3 integrate Differences ... ==== //depot/projects/ia64_epc/UPDATING#4 (text+ko) ==== @@ -62,7 +62,7 @@ 20021216: A name change in /etc/netconfig has been reverted to stay - compatible with with suns TIRPC and also with NetBSD. You need + compatible with suns TIRPC and also with NetBSD. You need to run mergemaster after make world. A new libc does still work with an outdated /etc/netconfig for some time, but you'll get a warning. This warning will be removed in 20030301. @@ -1234,4 +1234,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.244 2003/03/31 12:46:18 ru Exp $ +$FreeBSD: src/UPDATING,v 1.245 2003/04/23 14:28:13 schweikh Exp $ ==== //depot/projects/ia64_epc/crypto/openssh/ChangeLog#2 (text+ko) ==== @@ -1,3 +1,541 @@ +20030401 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2003/03/28 10:11:43 + [scp.1 sftp.1 ssh.1 ssh-add.1 ssh-agent.1 ssh_config.5 sshd_config.5] + [ssh-keygen.1 ssh-keyscan.1 ssh-keysign.8] + - killed whitespace + - new sentence new line + - .Bk for arguments + ok markus@ + - markus@cvs.openbsd.org 2003/04/01 10:10:23 + [clientloop.c monitor.c monitor_wrap.c packet.c packet.h readconf.c] + [readconf.h serverloop.c sshconnect2.c] + rekeying bugfixes and automatic rekeying: + * both client and server rekey _automatically_ + (a) after 2^31 packets, because after 2^32 packets + the sequence number for packets wraps + (b) after 2^(blocksize_in_bits/4) blocks + (see: draft-ietf-secsh-newmodes-00.txt) + (a) and (b) are _enabled_ by default, and only disabled for known + openssh versions, that don't support rekeying properly. + * client option 'RekeyLimit' + * do not reply to requests during rekeying + - markus@cvs.openbsd.org 2003/04/01 10:22:21 + [clientloop.c monitor.c monitor_wrap.c packet.c packet.h readconf.c] + [readconf.h serverloop.c sshconnect2.c] + backout rekeying changes (for 3.6.1) + - markus@cvs.openbsd.org 2003/04/01 10:31:26 + [compat.c compat.h kex.c] + bugfix causes stalled connections for ssh.com < 3.0; noticed by ho@; + tested by ho@ and myself + - markus@cvs.openbsd.org 2003/04/01 10:56:46 + [version.h] + 3.6.1 + - (djm) Crank spec file versions + - (djm) Release 3.6.1p1 + +20030326 + - (djm) OpenBSD CVS Sync + - deraadt@cvs.openbsd.org 2003/03/26 04:02:51 + [sftp-server.c] + one last fix to the tree: race fix broke stuff; pr 3169; + srp@srparish.net, help from djm + +20030325 + - (djm) Fix getpeerid support for 64 bit BE systems. From + Arnd Bergmann + +20030324 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/23 19:02:00 + [monitor.c] + unbreak rekeying for privsep; ok millert@ + - Release 3.6p1 + - Fix sshd BindAddress and -b options for systems using fake-getaddrinfo. + Report from murple@murple.net, diagnosis from dtucker@zip.com.au + +20030320 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/17 10:38:38 + [progressmeter.c] + don't print \n if backgrounded; from ho@ + - markus@cvs.openbsd.org 2003/03/17 11:43:47 + [version.h] + enter 3.6 + - (bal) The days of lack of int64_t support are over. Sorry kids. + - (bal) scp.c 'limit' conflicts with Cray. Rename to 'limitbw' + - (bal) Collection of Cray patches (bsd-cray.h fix for CRAYT3E and improved + guessing rules) + - (bal) Disable Privsep for Tru64 after pre-authentication due to issues + with SIA. Also, clean up of tru64 support patch by Chris Adams + + - (tim) [contrib/caldera/openssh.spec] workaround RPM quirk. Fix %files + +20030318 + - (tim) [configure.ac openbsd-compat/bsd-misc.c openbsd-compat/bsd-misc.h] + add nanosleep(). testing/corrections by Darren Tucker + +20030317 + - (djm) Fix return value checks for RAND_bytes. Report from + Steve G + +20030315 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/13 11:42:19 + [authfile.c ssh-keysign.c] + move RSA_blinding_on to generic key load method + - markus@cvs.openbsd.org 2003/03/13 11:44:50 + [ssh-agent.c] + ssh-agent is similar to ssh-keysign (allows other processes to use + private rsa keys). however, it gets key over socket and not from + a file, so we have to do blinding here as well. + +20030310 +- (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/05 22:33:43 + [channels.c monitor.c scp.c session.c sftp-client.c sftp-int.c] + [sftp-server.c ssh-add.c sshconnect2.c] + fix memory leaks; from dlheine@suif.Stanford.EDU/CLOUSEAU; ok djm@ + - (djm) One more portable-specific one from dlheine@suif.Stanford.EDU/ + CLOUSEAU + - (djm) Bug #245: TTY problems on Solaris. Fix by stevesk@ and + dtucker@zip.com.au + - (djm) AIX package builder update from dtucker@zip.com.au + +20030225 + - (djm) Fix some compile errors spotted by dtucker and his fabulous + tinderbox + +20030224 + - (djm) Tweak gnome-ssh-askpass2: + - Retry kb and mouse grab a couple of times, so passphrase dialog doesn't + immediately fail if you are doing something else when it appears (e.g. + dragging a window) + - Perform server grab after we have the keyboard and/or pointer to avoid + races. + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/01/27 17:06:31 + [sshd.c] + more specific error message when /var/empty has wrong permissions; + bug #46, map@appgate.com; ok henning@, provos@, stevesk@ + - markus@cvs.openbsd.org 2003/01/28 16:11:52 + [scp.1] + document -l; pekkas@netcore.fi + - stevesk@cvs.openbsd.org 2003/01/28 17:24:51 + [scp.1] + remove example not pertinent with -1 addition; ok markus@ + - jmc@cvs.openbsd.org 2003/01/31 21:54:40 + [sshd.8] + typos; sshd(8): help and ok markus@ + help and ok millert@ + - markus@cvs.openbsd.org 2003/02/02 10:51:13 + [scp.c] + call okname() only when using system(3) for remote-remote copy; + fixes bugs #483, #472; ok deraadt@, mouring@ + - markus@cvs.openbsd.org 2003/02/02 10:56:08 + [kex.c] + add support for key exchange guesses; based on work by + avraham.fraenkel@commatch.com; fixes bug #148; ok deraadt@ + - markus@cvs.openbsd.org 2003/02/03 08:56:16 + [sshpty.c] + don't call error() for readonly /dev; from soekris list; ok mcbride, + henning, deraadt. + - markus@cvs.openbsd.org 2003/02/04 09:32:08 + [key.c] + better debug3 message + - markus@cvs.openbsd.org 2003/02/04 09:33:22 + [monitor.c monitor_wrap.c] + skey/bsdauth: use 0 to indicate failure instead of -1, because + the buffer API only supports unsigned ints. + - markus@cvs.openbsd.org 2003/02/05 09:02:28 + [readconf.c] + simplify ProxyCommand parsing, remove strcat/xrealloc; ok henning@, djm@ + - markus@cvs.openbsd.org 2003/02/06 09:26:23 + [session.c] + missing call to setproctitle() after authentication; ok provos@ + - markus@cvs.openbsd.org 2003/02/06 09:27:29 + [ssh.c ssh_config.5] + support 'ProxyCommand none'; bugzilla #433; binder@arago.de; ok djm@ + - markus@cvs.openbsd.org 2003/02/06 09:29:18 + [sftp-server.c] + fix races in rename/symlink; from Tony Finch; ok djm@ + - markus@cvs.openbsd.org 2003/02/06 21:22:43 + [auth1.c auth2.c] + undo broken fix for #387, fixes #486 + - markus@cvs.openbsd.org 2003/02/10 11:51:47 + [ssh-add.1] + xref sshd_config.5 (not sshd.8); mark@summersault.com; bug #490 + - markus@cvs.openbsd.org 2003/02/12 09:33:04 + [key.c key.h ssh-dss.c ssh-rsa.c] + merge ssh-dss.h ssh-rsa.h into key.h; ok deraadt@ + - markus@cvs.openbsd.org 2003/02/12 21:39:50 + [crc32.c crc32.h] + replace crc32.c with a BSD licensed version; noted by David Turner + - markus@cvs.openbsd.org 2003/02/16 17:09:57 + [kex.c kexdh.c kexgex.c kex.h sshconnect2.c sshd.c ssh-keyscan.c] + split kex into client and server code, no need to link + server code into the client; ok provos@ + - markus@cvs.openbsd.org 2003/02/16 17:30:33 + [monitor.c monitor_wrap.c] + fix permitrootlogin forced-commands-only for privsep; bux #387; + ok provos@ + - markus@cvs.openbsd.org 2003/02/21 09:05:53 + [servconf.c] + print sshd_config filename in debug2 mode. + - mpech@cvs.openbsd.org 2003/02/21 10:34:48 + [auth-krb4.c] + ...sizeof(&adat.session) is not good here. + henning@, deraadt@, millert@ + - (djm) Add new object files to Makefile and reorder + - (djm) Bug #501: gai_strerror should return char*; + fix from dtucker@zip.com.au + - (djm) Most of Bug #499: Cygwin compile fixes for new progressmeter; + From vinschen@redhat.com + - (djm) Rest of Bug #499: Import a basename() function from OpenBSD libc + - (djm) Bug #494: Allow multiple accounts on Windows 9x/Me; + From vinschen@redhat.com + - (djm) Bug #456: Support for NEC SX6 with Unicos; from wendyp@cray.com + +20030211 + - (djm) Cygwin needs libcrypt too. Patch from vinschen@redhat.com + +20030206 + - (djm) Teach fake-getaddrinfo to use getservbyname() when provided a + string service name. Suggested by markus@, review by itojun@ + +20030131 + - (bal) AIX 4.2.1 lacks nanosleep(). Patch to use nsleep() provided by + dtucker@zip.com.au + +20030130 + - (djm) Unbreak root password auth. Spotted by dtucker@zip.com.au + +200301028 + - (djm) Search libposix4 and librt for nanosleep. From dtucker@zip.com.au + and openssh-unix-dev@thewrittenword.com + +200301027 + - (bal) Bugzilla 477 patch by wendyp@cray.com. Define TIOCGPGRP for + cray. Also removed test for tcgetpgrp in configure.ac since it + is no longer used. + +20030124 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2003/01/23 08:58:47 + [sshd_config.5] + typos; ok millert@ + - markus@cvs.openbsd.org 2003/01/23 13:50:27 + [authfd.c authfd.h readpass.c ssh-add.1 ssh-add.c ssh-agent.c] + ssh-add -c, prompt user for confirmation (using ssh-askpass) when + private agent key is used; with djm@; test by dugsong@, djm@; + ok deraadt@ + - markus@cvs.openbsd.org 2003/01/23 14:01:53 + [scp.c] + bandwidth limitation patch (scp -l) from niels@; ok todd@, deraadt@ + - markus@cvs.openbsd.org 2003/01/23 14:06:15 + [scp.1 scp.c] + scp -12; Sam Smith and others; ok provos@, deraadt@ + - (djm) Add TIMEVAL_TO_TIMESPEC macros + +20030123 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/23 00:03:00 + [auth1.c] + Don't log TIS auth response; "get rid of it" - markus@ + +20030122 + - (djm) OpenBSD CVS Sync + - marc@cvs.openbsd.org 2003/01/21 18:14:36 + [ssh-agent.1 ssh-agent.c] + Add a -t life option to ssh-agent that set the default lifetime. + The default can still be overriden by using -t in ssh-add. + OK markus@ + - (djm) Reorganise PAM & SIA password handling to eliminate some common code + - (djm) Sync regress with OpenBSD -current + +20030120 + - (djm) Fix compilation for NetBSD from dtucker@zip.com.au + - (tim) [progressmeter.c] make compilers without long long happy. + - (tim) [configure.ac] Add -belf to build ELF binaries on OpenServer 5 when + using cc. (gcc already did) + +20030118 + - (djm) Revert fix for Bug #442 for now. + +20030117 + - (djm) Bug #470: Detect strnvis, not strvis in configure. + From d_wllms@lanl.gov + +20030116 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/16 03:41:55 + [sftp-int.c] + explicitly use first glob result + +20030114 + - (djm) OpenBSD CVS Sync + - fgsch@cvs.openbsd.org 2003/01/10 23:23:24 + [sftp-int.c] + typo; from Nils Nordman . + - markus@cvs.openbsd.org 2003/01/11 18:29:43 + [log.c] + set fatal_cleanups to NULL in fatal_remove_all_cleanups(); + dtucker@zip.com.au + - markus@cvs.openbsd.org 2003/01/12 16:57:02 + [progressmeter.c] + allow WARNINGS=yes; ok djm@ + - djm@cvs.openbsd.org 2003/01/13 11:04:04 + [sftp-int.c] + make cmds[] array static to avoid conflict with BSDI libc. + mindrot bug #466. Fix from mdev@idg.nl; ok markus@ + - djm@cvs.openbsd.org 2003/01/14 10:58:00 + [sftp-client.c sftp-int.c] + Don't try to upload or download non-regular files. Report from + apoloval@pantuflo.escet.urjc.es; ok markus@ + +20030113 + - (djm) Rework openbsd-compat/setproctitle.c a bit: move emulation type + detection to configure.ac. Prompted by stevesk@ + - (djm) Bug #467: Add a --disable-strip option to turn off stripping of + installed binaries. From mdev@idg.nl + +20030110 + - (djm) Enable new setproctitle emulation for Linux, AIX and HP/UX. More + systems may be added later. + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/08 23:53:26 + [sftp.1 sftp.c sftp-int.c sftp-int.h] + Cleanup error handling for batchmode + Allow blank lines and comments in input + Ability to suppress abort on error in batchmode ("-put blah") + Fixes mindrot bug #452; markus@ ok + - fgsch@cvs.openbsd.org 2003/01/10 08:19:07 + [scp.c sftp.1 sftp.c sftp-client.c sftp-int.c progressmeter.c] + [progressmeter.h] + sftp progress meter support. + original diffs by Nils Nordman via + markus@, merged to -current by me, djm@ ok. + - djm@cvs.openbsd.org 2003/01/10 08:48:15 + [sftp-client.c] + Simplify and avoid redundancy in packet send and receive + functions; ok fgs@ + - djm@cvs.openbsd.org 2003/01/10 10:29:35 + [scp.c] + Don't ftruncate after write error, creating sparse files of + incorrect length + mindrot bug #403, reported by rusr@cup.hp.com; ok markus@ + - djm@cvs.openbsd.org 2003/01/10 10:32:54 + [channels.c] + hush socket() errors, except last. Fixes mindrot bug #408; ok markus@ + +20030108 + - (djm) Sync openbsd-compat/ with OpenBSD -current + - (djm) Avoid redundant xstrdup/xfree in auth2-pam.c. From Solar via markus@ + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/01/01 18:08:52 + [channels.c] + move big output buffer messages to debug2 + - djm@cvs.openbsd.org 2003/01/06 23:51:22 + [sftp-client.c] + Fix "get -p" download to not add user-write perm. mindrot bug #426 + reported by gfernandez@livevault.com; ok markus@ + - fgsch@cvs.openbsd.org 2003/01/07 23:42:54 + [sftp.1] + add version; from Nils Nordman via markus@. + markus@ ok + - (djm) Update README to reflect AIX's status as a well supported platform. + From dtucker@zip.com.au + - (tim) [Makefile.in configure.ac] replace fixpath with sed script. Patch + by Mo DeJong. + - (tim) [auth.c] declare today at top of allowed_user() to keep + older compilers happy. + - (tim) [scp.c] make compilers without long long happy. + +20030107 + - (djm) Bug #401: Work around Linux breakage with IPv6 mapped addresses. + Based on fix from yoshfuji@linux-ipv6.org + - (djm) Bug #442: Check for and deny access to accounts with locked + passwords. Patch from dtucker@zip.com.au + - (djm) Bug #44: Use local mkstemp() rather than glibc's silly one. Fixes + Can't pass KRB4 TGT passing. Fix from: jan.iven@cern.ch + - (djm) Fix Bug #442 for PAM case + - (djm) Bug #110: bogus error messages in lastlog_get_entry(). Fix based + on one by peak@argo.troja.mff.cuni.cz + - (djm) Bug #111: Run syslog and stderr logging through strnvis to eliminate + nasties. Report from peak@argo.troja.mff.cuni.cz + - (djm) Bug #178: On AIX /etc/nologin wasnt't shown to users. Fix from + Ralf.Wenk@fh-karlsruhe.de and dtucker@zip.com.au + - (djm) Fix my fix of the fix for the Bug #442 for PAM case. Spotted by + dtucker@zip.com.au. Reorder for clarity too. + +20030103 + - (djm) Bug #461: ssh-copy-id fails with no arguments. Patch from + cjwatson@debian.org + - (djm) Bug #460: Filling utmp[x]->ut_addr_v6 if present. Patch from + cjwatson@debian.org + - (djm) Bug #446: Set LOGIN env var to pw_name on AIX. Patch from + mii@ornl.gov + +20030101 + - (stevesk) [session.c sshlogin.c sshlogin.h] complete portable + parts of pass addrlen with sockaddr * fix. + from Hajimu UMEMOTO + +20021222 + - (bal) OpenBSD CVS Sync + - fgsch@cvs.openbsd.org 2002/11/15 10:03:09 + [authfile.c] + lseek(2) may return -1 when getting the public/private key lenght. + Simplify the code and check for errors using fstat(2). + + Problem reported by Mauricio Sanchez, markus@ ok. + - markus@cvs.openbsd.org 2002/11/18 16:43:44 + [clientloop.c] + don't overwrite SIG{INT,QUIT,TERM} handler if set to SIG_IGN; + e.g. if ssh is used for backup; report Joerg Schilling; ok millert@ + - markus@cvs.openbsd.org 2002/11/21 22:22:50 + [dh.c] + debug->debug2 + - markus@cvs.openbsd.org 2002/11/21 22:45:31 + [cipher.c kex.c packet.c sshconnect.c sshconnect2.c] + debug->debug2, unify debug messages + - deraadt@cvs.openbsd.org 2002/11/21 23:03:51 + [auth-krb5.c auth1.c hostfile.h monitor_wrap.c sftp-client.c sftp-int.c ssh-add.c ssh-rsa.c + sshconnect.c] + KNF + - markus@cvs.openbsd.org 2002/11/21 23:04:33 + [ssh.c] + debug->debug2 + - stevesk@cvs.openbsd.org 2002/11/24 21:46:24 + [ssh-keysign.8] + typo: "the the" + - wcobb@cvs.openbsd.org 2002/11/26 00:45:03 + [scp.c ssh-keygen.c] + Remove unnecessary fflush(stderr) calls, stderr is unbuffered by default. + ok markus@ + - stevesk@cvs.openbsd.org 2002/11/26 02:35:30 + [ssh-keygen.1] + remove outdated statement; ok markus@ deraadt@ + - stevesk@cvs.openbsd.org 2002/11/26 02:38:54 + [canohost.c] + KNF, comment and error message repair; ok markus@ + - markus@cvs.openbsd.org 2002/11/27 17:53:35 + [scp.c sftp.c ssh.c] + allow usernames with embedded '@', e.g. scp user@vhost@realhost:file /tmp; + http://bugzilla.mindrot.org/show_bug.cgi?id=447; ok mouring@, millert@ + - stevesk@cvs.openbsd.org 2002/12/04 04:36:47 + [session.c] + remove xauth entries before add; PR 2994 from janjaap@stack.nl. + ok markus@ + - markus@cvs.openbsd.org 2002/12/05 11:08:35 + [scp.c] + use roundup() similar to rcp/util.c and avoid problems with strange + filesystem block sizes, noted by tjr@freebsd.org; ok djm@ + - djm@cvs.openbsd.org 2002/12/06 05:20:02 + [sftp.1] + Fix cut'n'paste error, spotted by matthias.riese@b-novative.de; ok deraadt@ + - millert@cvs.openbsd.org 2002/12/09 16:50:30 + [ssh.c] + Avoid setting optind to 0 as GNU getopt treats that like we do optreset. + markus@ OK + - markus@cvs.openbsd.org 2002/12/10 08:56:00 + [session.c] + Make sure $SHELL points to the shell from the password file, even if shell + is overridden from login.conf; bug#453; semen at online.sinor.ru; ok millert@ + - markus@cvs.openbsd.org 2002/12/10 19:26:50 + [packet.c] + move tos handling to packet_set_tos; ok provos/henning/deraadt + - markus@cvs.openbsd.org 2002/12/10 19:47:14 + [packet.c] + static + - markus@cvs.openbsd.org 2002/12/13 10:03:15 + [channels.c misc.c sshconnect2.c] + cleanup debug messages, more useful information for the client user. + - markus@cvs.openbsd.org 2002/12/13 15:20:52 + [scp.c] + 1) include stalling time in total time + 2) truncate filenames to 45 instead of 20 characters + 3) print rate instead of progress bar, no more stars + 4) scale output to tty width + based on a patch from Niels; ok fries@ lebel@ fgs@ millert@ + - (bal) [msg.c msg.h scp.c ssh-keysign.c sshconnect2.c] Resync CVS IDs since + we already did s/msg_send/ssh_msg_send/ + +20021205 + - (djm) PERL-free fixpaths from stuge-openssh-unix-dev@cdy.org + +20021122 + - (tim) [configure.ac] fix STDPATH test for IRIX. First reported by + advax@triumf.ca. This type of solution tested by + +20021113 + - (tim) [configure.ac] remove unused variables no_libsocket and no_libnsl + +20021111 + - (tim) [contrib/solaris/opensshd.in] add umask 022 so sshd.pid is + not world writable. + +20021109 + - (bal) OpenBSD CVS Sync + - itojun@cvs.openbsd.org 2002/10/16 14:31:48 + [sftp-common.c] + 64bit pedant. %llu is "unsigned long long". markus ok + - markus@cvs.openbsd.org 2002/10/23 10:32:13 + [packet.c] + use %u for u_int + - markus@cvs.openbsd.org 2002/10/23 10:40:16 + [bufaux.c] + %u for u_int + - markus@cvs.openbsd.org 2002/11/04 10:07:53 + [auth.c] + don't compare against pw_home if realpath fails for pw_home (seen + on AFS); ok djm@ + - markus@cvs.openbsd.org 2002/11/04 10:09:51 + [packet.c] + log before send disconnect; ok djm@ + - markus@cvs.openbsd.org 2002/11/05 19:45:20 + [monitor.c] + handle overflows for size_t larger than u_int; siw@goneko.de, bug #425 + - markus@cvs.openbsd.org 2002/11/05 20:10:37 + [sftp-client.c] + typo; GaryF@livevault.com + - markus@cvs.openbsd.org 2002/11/07 16:28:47 + [sshd.c] + log to stderr if -ie is given, bug #414, prj@po.cwru.edu + - markus@cvs.openbsd.org 2002/11/07 22:08:07 + [readconf.c readconf.h ssh-keysign.8 ssh-keysign.c] + we cannot use HostbasedAuthentication for enabling ssh-keysign(8), + because HostbasedAuthentication might be enabled based on the + target host and ssh-keysign(8) does not know the remote hostname + and not trust ssh(1) about the hostname, so we add a new option + EnableSSHKeysign; ok djm@, report from zierke@informatik.uni-hamburg.de + - markus@cvs.openbsd.org 2002/11/07 22:35:38 + [scp.c] + check exit status from ssh, and exit(1) if ssh fails; bug#369; + binder@arago.de + - (bal) Update ssh-host-config and minor rewrite of bsd-cygwin_util.c + ntsec now default if cygwin version beginning w/ version 56. Patch + by Corinna Vinschen + - (bal) AIX does not log login attempts for unknown users (bug #432). + patch by dtucker@zip.com.au + +20021021 + - (djm) Bug #400: Kill ssh-rand-helper children on timeout, patch from + dtucker@zip.com.au + - (djm) Bug #317: FreeBSD needs libutil.h for openpty() Report from + dirk.meyer@dinoex.sub.org + +20021015 + - (bal) Fix bug id 383 and only call loginrestrict for AIX if not root. + - (bal) More advanced strsep test by Darren Tucker + +20021015 + - (tim) [contrib/caldera/openssh.spec] make ssh-agent setgid nobody + +20021004 + - (bal) Disable post-authentication Privsep for OSF/1. It conflicts with + SIA. + 20021003 - (djm) OpenBSD CVS Sync - markus@cvs.openbsd.org 2002/10/01 20:34:12 @@ -7,7 +545,7 @@ [version.h] OpenSSH 3.5 - (djm) Bump RPM spec version numbers - - (djm) Bug #406 s/msg_send/ssh_msh_send/ for Mac OS X 1.2 + - (djm) Bug #406: s/msg_send/ssh_msg_send/ for Mac OS X 1.2 20020930 - (djm) Tidy contrib/, add Makefile for GNOME passphrase dialogs, @@ -757,4 +1295,4 @@ save auth method before monitor_reset_key_state(); bugzilla bug #284; ok provos@ -$Id: ChangeLog,v 1.2491.2.1 2002/10/03 05:45:53 djm Exp $ +$Id: ChangeLog,v 1.2648 2003/04/01 11:47:16 djm Exp $ ==== //depot/projects/ia64_epc/crypto/openssh/FREEBSD-tricks#2 (text+ko) ==== @@ -1,20 +1,19 @@ -# $FreeBSD: src/crypto/openssh/FREEBSD-tricks,v 1.2 2002/10/29 10:12:51 des Exp $ +# $FreeBSD: src/crypto/openssh/FREEBSD-tricks,v 1.3 2003/04/23 17:21:55 des Exp $ # Shell code to remove FreeBSD tags before merging -grep -rl '\$Fre.BSD:' . | -while read f ; do +grep -rl '\$Fre.BSD:' . >tags +while read f < tags ; do sed -i.orig -e '/\$Fre.BSD:/d' $f done # Shell + Perl code to add FreeBSD tags wherever an OpenBSD or Id tag occurs -egrep -rl '\$(Id|OpenBSD):' . | +cat tags | xargs perl -n -i.orig -e 'print; s/\$(Id|OpenBSD): [^\$]*\$/\$FreeBSD\$/ && print' # Shell code to reexpand FreeBSD tags -grep -rl '\$FreeBSD\$' . | -while read f ; do +while read f < tags ; do id=$(cvs diff $f | grep '\$Fre.BSD:' | sed 's/.*\(\$Fre.BSD:.*\$\).*/\1/') ; - if [ -n "$id" ] ; then + if [ -n "$id" ] ; then sed -i.orig -e "s@\\\$Fre.BSD\\\$@$id@" $f ; - fi ; + fi ; done ==== //depot/projects/ia64_epc/crypto/openssh/FREEBSD-upgrade#2 (text+ko) ==== @@ -14,7 +14,7 @@ 3) Remove trash: - $ eval "rm -rf $(tr '[:space:]' ' ' >> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:22:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0DDE837B419; Wed, 23 Apr 2003 15:22:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D775937B407 for ; Wed, 23 Apr 2003 15:22:01 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6C44243FBF for ; Wed, 23 Apr 2003 15:22:01 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMM10U024949 for ; Wed, 23 Apr 2003 15:22:01 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMM0oY024942 for perforce@freebsd.org; Wed, 23 Apr 2003 15:22:00 -0700 (PDT) Date: Wed, 23 Apr 2003 15:22:00 -0700 (PDT) Message-Id: <200304232222.h3NMM0oY024942@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29550 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:22:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29550 Change 29550 by peter@peter_daintree on 2003/04/23 15:21:22 use the correct page size for malloc (doh!) Affected files ... .. //depot/projects/hammer/lib/libc/stdlib/malloc.c#5 edit Differences ... ==== //depot/projects/hammer/lib/libc/stdlib/malloc.c#5 (text+ko) ==== @@ -63,7 +63,7 @@ # define malloc_minsize 16U # endif # if defined(__x86_64__) -# define malloc_pageshift 13U +# define malloc_pageshift 12U # define malloc_minsize 16U # endif # if !defined(__NETBSD_SYSCALLS) From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:25:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 54D7437B404; Wed, 23 Apr 2003 15:25:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0843937B401 for ; Wed, 23 Apr 2003 15:25:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A6D0E43FBD for ; Wed, 23 Apr 2003 15:25:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMP50U027717 for ; Wed, 23 Apr 2003 15:25:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMP5PU027708 for perforce@freebsd.org; Wed, 23 Apr 2003 15:25:05 -0700 (PDT) Date: Wed, 23 Apr 2003 15:25:05 -0700 (PDT) Message-Id: <200304232225.h3NMP5PU027708@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29551 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:25:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=29551 Change 29551 by peter@peter_daintree on 2003/04/23 15:24:22 update syscalls list.. Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/sys/Makefile.inc#4 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/sys/Makefile.inc#4 (text+ko) ==== @@ -1,3 +1,12 @@ # from: Makefile.inc,v 1.1 1993/09/03 19:04:23 jtc Exp # $FreeBSD: src/lib/libc/i386/sys/Makefile.inc,v 1.25 2002/11/18 09:50:55 ru Exp $ +MDASM= Ovfork.S brk.S cerror.S exect.S pipe.S ptrace.S reboot.S sbrk.S \ + setlogin.S sigreturn.S #syscall.S + +# Don't generate default code for these syscalls: +NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ + lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + pwrite.o setdomainname.o sstk.o truncate.o uname.o vfork.o yield.o + +PSEUDO= _getlogin.o _exit.o From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:25:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 922BC37B408; Wed, 23 Apr 2003 15:25:07 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 904BA37B414 for ; Wed, 23 Apr 2003 15:25:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2208F43FA3 for ; Wed, 23 Apr 2003 15:25:06 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMP50U027729 for ; Wed, 23 Apr 2003 15:25:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMP5XH027722 for perforce@freebsd.org; Wed, 23 Apr 2003 15:25:05 -0700 (PDT) Date: Wed, 23 Apr 2003 15:25:05 -0700 (PDT) Message-Id: <200304232225.h3NMP5XH027722@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29552 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:25:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=29552 Change 29552 by peter@peter_daintree on 2003/04/23 15:24:54 nuke, not needed. Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/sys/syscall.S#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:27:10 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 49F9037B404; Wed, 23 Apr 2003 15:27:10 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BEE9E37B401 for ; Wed, 23 Apr 2003 15:27:09 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5AE4C43FA3 for ; Wed, 23 Apr 2003 15:27:09 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMR90U029404 for ; Wed, 23 Apr 2003 15:27:09 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMR8So029399 for perforce@freebsd.org; Wed, 23 Apr 2003 15:27:08 -0700 (PDT) Date: Wed, 23 Apr 2003 15:27:08 -0700 (PDT) Message-Id: <200304232227.h3NMR8So029399@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29553 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:27:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=29553 Change 29553 by peter@peter_daintree on 2003/04/23 15:26:35 checkpoint of initial conversion to x86-64. Of note, pipe(2) is very broken. %rdi is clobbered by the syscall so I need to not use the SYSCALL() macro. Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/sys/Ovfork.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/brk.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/cerror.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/exect.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/pipe.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/reboot.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/sbrk.S#2 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/sys/Ovfork.S#2 (text+ko) ==== @@ -47,12 +47,12 @@ .weak vfork .set vfork,__sys_vfork ENTRY(__sys_vfork) - popl %ecx /* my rta into ecx */ - mov $SYS_vfork,%eax + popq %rcx /* my rta into ecx */ + mov $SYS_vfork,%rax KERNCALL jb 1f - jmp *%ecx + jmp *%rcx 1: - pushl %ecx + pushq %rcx PIC_PROLOGUE jmp PIC_PLT(HIDENAME(cerror)) ==== //depot/projects/hammer/lib/libc/x86_64/sys/brk.S#2 (text+ko) ==== @@ -45,6 +45,7 @@ .globl HIDENAME(curbrk) .globl HIDENAME(minbrk) ENTRY(_brk) + pushq %rdi jmp ok ENTRY(brk) @@ -72,18 +73,19 @@ #else - movl 4(%esp),%eax - cmpl %eax,HIDENAME(minbrk) + pushq %rdi + movq %rdi,%rax + cmpq %rax,HIDENAME(minbrk) jbe ok - movl HIDENAME(minbrk),%eax - movl %eax,4(%esp) + movq HIDENAME(minbrk),%rdi ok: - mov $SYS_break,%eax + movq $SYS_break,%rax KERNCALL jb err - movl 4(%esp),%eax - movl %eax,HIDENAME(curbrk) - movl $0,%eax + movq 0(%rsp),%rax + movq %rax,HIDENAME(curbrk) + movq $0,%rax + popq %rdi ret err: jmp HIDENAME(cerror) ==== //depot/projects/hammer/lib/libc/x86_64/sys/cerror.S#2 (text+ko) ==== @@ -52,18 +52,18 @@ .globl CNAME(__error) .type CNAME(__error),@function HIDENAME(cerror): - pushl %eax + pushq %rax #ifdef PIC /* The caller must execute the PIC prologue before jumping to cerror. */ call PIC_PLT(CNAME(__error)) - popl %ecx + popq %rcx PIC_EPILOGUE #else call CNAME(__error) - popl %ecx + popq %rcx #endif - movl %ecx,(%eax) - movl $-1,%eax - movl $-1,%edx + movq %rcx,(%rax) + movq $-1,%rax + movq $-1,%rdx ret ==== //depot/projects/hammer/lib/libc/x86_64/sys/exect.S#2 (text+ko) ==== @@ -44,12 +44,12 @@ #include ENTRY(exect) - mov $SYS_execve,%eax - pushf - popl %edx - orl $ PSL_T,%edx - pushl %edx - popf + movq $SYS_execve,%rax + pushfq + popq %rdx + orq $ PSL_T,%rdx + pushq %rdx + popfq KERNCALL PIC_PROLOGUE jmp PIC_PLT(HIDENAME(cerror)) /* exect(file, argv, env); */ ==== //depot/projects/hammer/lib/libc/x86_64/sys/pipe.S#2 (text+ko) ==== @@ -43,8 +43,8 @@ #include "SYS.h" SYSCALL(pipe) - movl 4(%esp),%ecx - movl %eax,(%ecx) - movl %edx,4(%ecx) - movl $0,%eax + movq 8(%rsp),%rcx /* XXX wrong!! %rdi!! */ + movq %rax,(%rcx) + movq %rdx,8(%rcx) + movq $0,%rax ret ==== //depot/projects/hammer/lib/libc/x86_64/sys/reboot.S#2 (text+ko) ==== @@ -43,4 +43,4 @@ #include "SYS.h" SYSCALL(reboot) - iret + iretq ==== //depot/projects/hammer/lib/libc/x86_64/sys/sbrk.S#2 (text+ko) ==== @@ -47,8 +47,8 @@ .globl HIDENAME(curbrk) .data -HIDENAME(minbrk): .long CNAME(_end) -HIDENAME(curbrk): .long CNAME(_end) +HIDENAME(minbrk): .quad CNAME(_end) +HIDENAME(curbrk): .quad CNAME(_end) .text ENTRY(sbrk) @@ -77,18 +77,22 @@ #else /* !PIC */ - movl 4(%esp),%ecx - movl HIDENAME(curbrk),%eax - testl %ecx,%ecx + pushq %rdi + movq %rdi,%rcx + movq HIDENAME(curbrk),%rax + testq %rcx,%rcx jz back - addl %eax,4(%esp) + addq %rax,%rdi mov $SYS_break,%eax KERNCALL jb err - movl HIDENAME(curbrk),%eax - addl %ecx,HIDENAME(curbrk) + movq HIDENAME(curbrk),%rax + movq 0(%rsp), %rcx + addq %rcx,HIDENAME(curbrk) back: + addq $8, %rsp ret err: + addq $8, %rsp jmp HIDENAME(cerror) #endif /* PIC */ From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:28:12 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F86537B404; Wed, 23 Apr 2003 15:28:12 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A3ECB37B401 for ; Wed, 23 Apr 2003 15:28:11 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4AC2443FB1 for ; Wed, 23 Apr 2003 15:28:11 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMSB0U029831 for ; Wed, 23 Apr 2003 15:28:11 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMSAli029826 for perforce@freebsd.org; Wed, 23 Apr 2003 15:28:10 -0700 (PDT) Date: Wed, 23 Apr 2003 15:28:10 -0700 (PDT) Message-Id: <200304232228.h3NMSAli029826@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29554 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:28:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=29554 Change 29554 by peter@peter_daintree on 2003/04/23 15:27:40 update for x86-64 calling conventions. This is not ABI compliant yet, but with a corresponding commit to exec_setregs(), it reaches basic functionality Affected files ... .. //depot/projects/hammer/lib/csu/x86_64/crt1.c#7 edit Differences ... ==== //depot/projects/hammer/lib/csu/x86_64/crt1.c#7 (text+ko) ==== @@ -43,7 +43,7 @@ extern void _fini(void); extern void _init(void); extern int main(int, char **, char **); -extern void _start(char *, ...); +extern void _start(char **, void (*)(void)); #ifdef GCRT extern void _mcleanup(void); @@ -55,33 +55,18 @@ char **environ; const char *__progname = ""; -static __inline fptr -get_rtld_cleanup(void) -{ - fptr retval; - -#ifdef __GNUC__ - __asm__("movq %%rdx,%0" : "=rm"(retval)); -#else - retval = (fptr)0; /* XXXX Fix this for other compilers */ -#endif - return(retval); -} - /* The entry function. */ void -_start(char *ap, ...) +_start(char **ap, void (*cleanup)(void)) { - fptr cleanup; int argc; char **argv; char **env; const char *s; - cleanup = get_rtld_cleanup(); - argv = ≈ - argc = *(long *)(void *)(argv - 1); - env = argv + argc + 1; + argc = *(long *)(void *)ap; + argv = ap + 1; + env = ap + 2 + argc; environ = env; if (argc > 0 && argv[0] != NULL) { __progname = argv[0]; From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:29:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 96C7837B401; Wed, 23 Apr 2003 15:29:15 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2C65037B404 for ; Wed, 23 Apr 2003 15:29:15 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3412043FBD for ; Wed, 23 Apr 2003 15:29:13 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMTD0U030303 for ; Wed, 23 Apr 2003 15:29:13 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMTCFq030297 for perforce@freebsd.org; Wed, 23 Apr 2003 15:29:12 -0700 (PDT) Date: Wed, 23 Apr 2003 15:29:12 -0700 (PDT) Message-Id: <200304232229.h3NMTCFq030297@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29555 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:29:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=29555 Change 29555 by peter@peter_daintree on 2003/04/23 15:28:48 implement PIC.. that was hard, wasn't it? Affected files ... .. //depot/projects/hammer/sys/x86_64/include/asm.h#5 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/asm.h#5 (text+ko) ==== @@ -49,6 +49,8 @@ #define PIC_PLT(x) x #define PIC_GOT(x) x #endif +#define PIC_PROLOGUE +#define PIC_EPILOGUE /* * CNAME and HIDENAME manage the relationship between symbol names in C From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:30:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F2A8037B404; Wed, 23 Apr 2003 15:30:15 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8C12C37B401 for ; Wed, 23 Apr 2003 15:30:15 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2205743F85 for ; Wed, 23 Apr 2003 15:30:15 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMUE0U030745 for ; Wed, 23 Apr 2003 15:30:14 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMUEh1030740 for perforce@freebsd.org; Wed, 23 Apr 2003 15:30:14 -0700 (PDT) Date: Wed, 23 Apr 2003 15:30:14 -0700 (PDT) Message-Id: <200304232230.h3NMUEh1030740@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29556 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:30:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=29556 Change 29556 by peter@peter_daintree on 2003/04/23 15:29:41 pass arg0 for _start in a register. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#74 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#74 (text+ko) ==== @@ -475,6 +475,7 @@ bzero((char *)regs, sizeof(struct trapframe)); regs->tf_rip = entry; regs->tf_rsp = stack; + regs->tf_rdi = stack; /* argv */ regs->tf_rflags = PSL_USER | (regs->tf_rflags & PSL_T); regs->tf_ss = _udatasel; regs->tf_cs = _ucodesel; From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:31:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EC1EF37B404; Wed, 23 Apr 2003 15:31:17 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 84FE937B401 for ; Wed, 23 Apr 2003 15:31:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1484143F3F for ; Wed, 23 Apr 2003 15:31:17 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMVG0U031670 for ; Wed, 23 Apr 2003 15:31:16 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMVGYv031661 for perforce@freebsd.org; Wed, 23 Apr 2003 15:31:16 -0700 (PDT) Date: Wed, 23 Apr 2003 15:31:16 -0700 (PDT) Message-Id: <200304232231.h3NMVGYv031661@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29557 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:31:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=29557 Change 29557 by peter@peter_daintree on 2003/04/23 15:31:09 shameful hack for making __syscall(2) and syscall(2) work, since libc/sys/mmap.c uses it. This will be cleaned up a lot when I reorder the trapframe. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/trap.c#28 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/trap.c#28 (text+ko) ==== @@ -654,6 +654,7 @@ int narg; register_t args[8]; u_int code; + int syscallflag = 0; /* * note: PCPU_LAZY_INC() can only be used if we can afford @@ -676,7 +677,7 @@ cred_update_thread(td); if (p->p_flag & P_THREADED) thread_user_enter(p, td); - params = (caddr_t)frame.tf_rsp + sizeof(long); + params = (caddr_t)frame.tf_rsp + sizeof(register_t); code = frame.tf_rax; orig_tf_rflags = frame.tf_rflags; @@ -686,23 +687,9 @@ */ (*p->p_sysent->sv_prepsyscall)(&frame, (int *)args, &code, ¶ms); } else { - /* - * Need to check if this is a 32 bit or 64 bit syscall. - * fuword is MP aware. - */ - if (code == SYS_syscall) { - /* - * Code is first argument, followed by actual args. - */ - code = fuword(params); - params += sizeof(int); - } else if (code == SYS___syscall) { - /* - * Like syscall, but code is a quad, so as to maintain - * quad alignment for the rest of the arguments. - */ - code = fuword(params); - params += sizeof(quad_t); + if (code == SYS_syscall || code == SYS___syscall) { + code = frame.tf_rdi; + syscallflag++; } } @@ -719,26 +706,45 @@ /* * copyin and the ktrsyscall()/ktrsysret() code is MP-aware */ - if (params != NULL && narg != 0) { - error = 0; - /* XXX reorder trapframe so we can just copy the first 6 args */ - if (narg > 0) - args[0] = frame.tf_rdi; - if (narg > 1) - args[1] = frame.tf_rsi; - if (narg > 2) - args[2] = frame.tf_rdx; - if (narg > 3) - args[3] = frame.tf_rcx; - if (narg > 4) - args[4] = frame.tf_r8; - if (narg > 5) - args[5] = frame.tf_r9; - if (narg > 6) - error = copyin(params, (caddr_t)&args[6], - (u_int)((narg - 6) * sizeof(register_t))); - } else - error = 0; + error = 0; + if (!syscallflag) { + if (narg != 0) { + /* XXX reorder trapframe so we can just copy the first 6 args */ + if (narg > 0) + args[0] = frame.tf_rdi; + if (narg > 1) + args[1] = frame.tf_rsi; + if (narg > 2) + args[2] = frame.tf_rdx; + if (narg > 3) + args[3] = frame.tf_rcx; + if (narg > 4) + args[4] = frame.tf_r8; + if (narg > 5) + args[5] = frame.tf_r9; + if (params != 0 && narg > 6) + error = copyin(params, (caddr_t)&args[6], + (u_int)((narg - 6) * sizeof(register_t))); + } + } else { + /* compensate for loss of 1 regparm */ + if (narg != 0) { + /* XXX reorder trapframe so we can just copy the first 6 args */ + if (narg > 0) + args[0] = frame.tf_rsi; + if (narg > 1) + args[1] = frame.tf_rdx; + if (narg > 2) + args[2] = frame.tf_rcx; + if (narg > 3) + args[3] = frame.tf_r8; + if (narg > 4) + args[4] = frame.tf_r9; + if (params != 0 && narg > 5) + error = copyin(params, (caddr_t)&args[5], + (u_int)((narg - 5) * sizeof(register_t))); + } + } #ifdef KTRACE if (KTRPOINT(td, KTR_SYSCALL)) From owner-p4-projects@FreeBSD.ORG Wed Apr 23 15:32:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A27B137B404; Wed, 23 Apr 2003 15:32:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 55D8637B401 for ; Wed, 23 Apr 2003 15:32:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0211E43FB1 for ; Wed, 23 Apr 2003 15:32:19 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NMWI0U032584 for ; Wed, 23 Apr 2003 15:32:18 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NMWItX032577 for perforce@freebsd.org; Wed, 23 Apr 2003 15:32:18 -0700 (PDT) Date: Wed, 23 Apr 2003 15:32:18 -0700 (PDT) Message-Id: <200304232232.h3NMWItX032577@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29558 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 22:32:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=29558 Change 29558 by peter@peter_daintree on 2003/04/23 15:31:44 speed up my development cycle so that init debug messages dont take a full 3 seconds per message. Affected files ... .. //depot/projects/hammer/sys/dev/sio/sio.c#10 edit Differences ... ==== //depot/projects/hammer/sys/dev/sio/sio.c#10 (text+ko) ==== @@ -934,7 +934,7 @@ com->bst = rman_get_bustag(port); com->bsh = rman_get_bushandle(port); com->cfcr_image = CFCR_8BITS; - com->dtr_wait = 3 * hz; + com->dtr_wait = hz; com->loses_outints = COM_LOSESOUTINTS(flags) != 0; com->no_irq = bus_get_resource(dev, SYS_RES_IRQ, 0, NULL, NULL) != 0; com->tx_fifo_size = 1; From owner-p4-projects@FreeBSD.ORG Wed Apr 23 16:26:28 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 85DB537B404; Wed, 23 Apr 2003 16:26:27 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 34C7F37B401 for ; Wed, 23 Apr 2003 16:26:27 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D0E6643FAF for ; Wed, 23 Apr 2003 16:26:26 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NNQQ0U072584 for ; Wed, 23 Apr 2003 16:26:26 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NNQQhw072575 for perforce@freebsd.org; Wed, 23 Apr 2003 16:26:26 -0700 (PDT) Date: Wed, 23 Apr 2003 16:26:26 -0700 (PDT) Message-Id: <200304232326.h3NNQQhw072575@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29562 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 23:26:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=29562 Change 29562 by peter@peter_daintree on 2003/04/23 16:25:43 increase size of jmp_buf. I'm not 100% sure this is right yet. registers are double size, but sigset_t is the same.. but there are more registers.. so I think it works out to be this size. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/setjmp.h#4 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/setjmp.h#4 (text+ko) ==== @@ -37,7 +37,7 @@ #include -#define _JBLEN 11 /* Size of the jmp_buf on x86. */ +#define _JBLEN 22 /* Size of the jmp_buf on x86. */ /* * jmp_buf and sigjmp_buf are encapsulated in different structs to force From owner-p4-projects@FreeBSD.ORG Wed Apr 23 16:28:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B64C437B404; Wed, 23 Apr 2003 16:28:30 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6C68E37B401 for ; Wed, 23 Apr 2003 16:28:30 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EE4E043FA3 for ; Wed, 23 Apr 2003 16:28:29 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NNST0U073690 for ; Wed, 23 Apr 2003 16:28:29 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NNSTHi073685 for perforce@freebsd.org; Wed, 23 Apr 2003 16:28:29 -0700 (PDT) Date: Wed, 23 Apr 2003 16:28:29 -0700 (PDT) Message-Id: <200304232328.h3NNSTHi073685@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29563 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 23:28:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=29563 Change 29563 by peter@peter_daintree on 2003/04/23 16:27:33 initial shot at setjmp/longjmp Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/gen/Makefile.inc#3 edit .. //depot/projects/hammer/lib/libc/x86_64/gen/setjmp.S#2 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/gen/Makefile.inc#3 (text+ko) ==== @@ -1,4 +1,4 @@ # @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 # $FreeBSD: src/lib/libc/i386/gen/Makefile.inc,v 1.18 2002/11/16 06:39:11 deischen Exp $ -SRCS+= frexp.c infinity.c isinf.c +SRCS+= setjmp.S frexp.c infinity.c isinf.c ==== //depot/projects/hammer/lib/libc/x86_64/gen/setjmp.S#2 (text+ko) ==== @@ -53,51 +53,57 @@ #include "SYS.h" ENTRY(setjmp) - movl 4(%esp),%ecx + pushq %rdi + movq %rdi,%rcx PIC_PROLOGUE - leal 28(%ecx), %eax - pushl %eax /* (sigset_t*)oset */ - pushl $0 /* (sigset_t*)set */ - pushl $1 /* SIG_BLOCK */ + leaq 72(%rcx),%rdi /* (sigset_t*)oset */ + movq $0,%rsi /* (sigset_t*)set */ + movq $1,%rdx /* SIG_BLOCK */ call PIC_PLT(CNAME(_sigprocmask)) - addl $12,%esp PIC_EPILOGUE - movl 4(%esp),%ecx - movl 0(%esp),%edx - movl %edx, 0(%ecx) - movl %ebx, 4(%ecx) - movl %esp, 8(%ecx) - movl %ebp,12(%ecx) - movl %esi,16(%ecx) - movl %edi,20(%ecx) - fnstcw 24(%ecx) - xorl %eax,%eax + popq %rdi + movq %rdi,%rcx + movq 0(%rsp),%rdx /* retval */ + movq %rdx, 0(%rcx) /* retval */ + movq %rbx, 8(%rcx) + movq %rsp,16(%rcx) + movq %rbp,24(%rcx) + movq %r12,32(%rcx) + movq %r13,40(%rcx) + movq %r14,48(%rcx) + movq %r15,56(%rcx) + fnstcw 64(%rcx) + xorq %rax,%rax ret .weak CNAME(longjmp) .set CNAME(longjmp),CNAME(__longjmp) ENTRY(__longjmp) - movl 4(%esp),%edx + pushq %rdi + pushq %rsi + movq %rdi,%rdx PIC_PROLOGUE - pushl $0 /* (sigset_t*)oset */ - leal 28(%edx), %eax - pushl %eax /* (sigset_t*)set */ - pushl $3 /* SIG_SETMASK */ + movq $0,%rdi /* (sigset_t*)oset */ + leaq 72(%rdx),%rsi /* (sigset_t*)set */ + movq $3,%rdx /* SIG_SETMASK */ call PIC_PLT(CNAME(_sigprocmask)) - addl $12,%esp PIC_EPILOGUE - movl 4(%esp),%edx - movl 8(%esp),%eax - movl 0(%edx),%ecx - movl 4(%edx),%ebx - movl 8(%edx),%esp - movl 12(%edx),%ebp - movl 16(%edx),%esi - movl 20(%edx),%edi + popq %rsi + popq %rdi /* jmpbuf */ + movq %rdi,%rdx + movq %rsi,%rax /* retval */ + movq 0(%rdx),%rcx + movq 8(%rdx),%rbx + movq 16(%rdx),%rsp + movq 24(%rdx),%rbp + movq 32(%rdx),%r12 + movq 40(%rdx),%r13 + movq 48(%rdx),%r14 + movq 56(%rdx),%r15 fninit - fldcw 24(%edx) - testl %eax,%eax + fldcw 64(%rdx) + testq %rax,%rax jnz 1f - incl %eax -1: movl %ecx,0(%esp) + incq %rax +1: movq %rcx,0(%rsp) ret From owner-p4-projects@FreeBSD.ORG Wed Apr 23 16:31:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1F11637B404; Wed, 23 Apr 2003 16:31:35 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ACFAD37B401 for ; Wed, 23 Apr 2003 16:31:34 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 53CCA43FE1 for ; Wed, 23 Apr 2003 16:31:34 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NNVY0U075632 for ; Wed, 23 Apr 2003 16:31:34 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NNVXYu075624 for perforce@freebsd.org; Wed, 23 Apr 2003 16:31:33 -0700 (PDT) Date: Wed, 23 Apr 2003 16:31:33 -0700 (PDT) Message-Id: <200304232331.h3NNVXYu075624@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29564 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 23:31:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=29564 Change 29564 by peter@peter_daintree on 2003/04/23 16:31:00 _setjmp and _longjmp Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/gen/Makefile.inc#4 edit .. //depot/projects/hammer/lib/libc/x86_64/gen/_setjmp.S#2 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/gen/Makefile.inc#4 (text+ko) ==== @@ -1,4 +1,4 @@ # @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 # $FreeBSD: src/lib/libc/i386/gen/Makefile.inc,v 1.18 2002/11/16 06:39:11 deischen Exp $ -SRCS+= setjmp.S frexp.c infinity.c isinf.c +SRCS+= _setjmp.S setjmp.S frexp.c infinity.c isinf.c ==== //depot/projects/hammer/lib/libc/x86_64/gen/_setjmp.S#2 (text+ko) ==== @@ -51,33 +51,37 @@ */ ENTRY(_setjmp) - movl 4(%esp),%eax - movl 0(%esp),%edx - movl %edx, 0(%eax) /* rta */ - movl %ebx, 4(%eax) - movl %esp, 8(%eax) - movl %ebp,12(%eax) - movl %esi,16(%eax) - movl %edi,20(%eax) - fnstcw 24(%eax) - xorl %eax,%eax + movq %rdi,%rax + movq 0(%rsp),%rdx /* retval */ + movq %rdx, 0(%rax) /* retval */ + movq %rbx, 8(%rax) + movq %rsp,16(%rax) + movq %rbp,24(%rax) + movq %r12,32(%rax) + movq %r13,40(%rax) + movq %r14,48(%rax) + movq %r15,56(%rax) + fnstcw 64(%rax) + xorq %rax,%rax ret - .weak CNAME(_longjmp) - .set CNAME(_longjmp),CNAME(___longjmp) + .weak CNAME(_longjmp) + .set CNAME(_longjmp),CNAME(___longjmp) ENTRY(___longjmp) - movl 4(%esp),%edx - movl 8(%esp),%eax - movl 0(%edx),%ecx - movl 4(%edx),%ebx - movl 8(%edx),%esp - movl 12(%edx),%ebp - movl 16(%edx),%esi - movl 20(%edx),%edi + movq %rdi,%rdx + movq %rsi,%rax /* retval */ + movq 0(%rdx),%rcx + movq 8(%rdx),%rbx + movq 16(%rdx),%rsp + movq 24(%rdx),%rbp + movq 32(%rdx),%r12 + movq 40(%rdx),%r13 + movq 48(%rdx),%r14 + movq 56(%rdx),%r15 fninit - fldcw 24(%edx) - testl %eax,%eax + fldcw 64(%rdx) + testq %rax,%rax jnz 1f - incl %eax -1: movl %ecx,0(%esp) + incq %rax +1: movq %rcx,0(%rsp) ret From owner-p4-projects@FreeBSD.ORG Wed Apr 23 16:52:03 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2F52137B404; Wed, 23 Apr 2003 16:52:03 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D112237B401 for ; Wed, 23 Apr 2003 16:52:02 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7BF7E43FD7 for ; Wed, 23 Apr 2003 16:52:02 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NNq20U095547 for ; Wed, 23 Apr 2003 16:52:02 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NNq1fg095537 for perforce@freebsd.org; Wed, 23 Apr 2003 16:52:01 -0700 (PDT) Date: Wed, 23 Apr 2003 16:52:01 -0700 (PDT) Message-Id: <200304232352.h3NNq1fg095537@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29568 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 23:52:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=29568 Change 29568 by peter@peter_daintree on 2003/04/23 16:51:08 use the C math functions for the time being. the 387 asm functions can probably be used, but I think the're toxic for now. Affected files ... .. //depot/projects/hammer/lib/msun/src/math_private.h#2 edit Differences ... ==== //depot/projects/hammer/lib/msun/src/math_private.h#2 (text+ko) ==== @@ -226,7 +226,7 @@ int __kernel_rem_pio2f(float*,float*,int,int,int,const int*); #if defined(__alpha__) || defined(__ia64__) || defined(__sparc64__) || \ - defined(__powerpc__) + defined(__powerpc__) || defined(__x86_64__) #define __generic___ieee754_acos __ieee754_acos #define __generic___ieee754_asin __ieee754_asin #define __generic___ieee754_atan2 __ieee754_atan2 From owner-p4-projects@FreeBSD.ORG Wed Apr 23 16:52:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6855837B404; Wed, 23 Apr 2003 16:52:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A7CE837B428 for ; Wed, 23 Apr 2003 16:52:03 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4F17A43F85 for ; Wed, 23 Apr 2003 16:52:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3NNq30U095566 for ; Wed, 23 Apr 2003 16:52:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NNq2nI095553 for perforce@freebsd.org; Wed, 23 Apr 2003 16:52:02 -0700 (PDT) Date: Wed, 23 Apr 2003 16:52:02 -0700 (PDT) Message-Id: <200304232352.h3NNq2nI095553@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29569 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Apr 2003 23:52:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29569 Change 29569 by peter@peter_daintree on 2003/04/23 16:51:23 free the PDP and PML4 pages to stop the leak Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/pmap.c#24 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/pmap.c#24 (text+ko) ==== @@ -1247,15 +1247,21 @@ vm_page_lock_queues(); for (i = 0; i < NPGPTD; i++) { m = TAILQ_FIRST(&object->memq); -#ifdef PAE KASSERT(VM_PAGE_TO_PHYS(m) == (pmap->pm_pdp[i] & PG_FRAME), ("pmap_release: got wrong ptd page")); -#endif m->wire_count--; atomic_subtract_int(&cnt.v_wire_count, 1); vm_page_busy(m); vm_page_free_zero(m); } + /* now free pdp and pml4 */ + for (i = 0; i < 2; i++) { + m = TAILQ_FIRST(&object->memq); + m->wire_count--; + atomic_subtract_int(&cnt.v_wire_count, 1); + vm_page_busy(m); + vm_page_free(m); + } KASSERT(TAILQ_EMPTY(&object->memq), ("pmap_release: leaking page table pages")); vm_page_unlock_queues(); From owner-p4-projects@FreeBSD.ORG Wed Apr 23 17:11:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BB11A37B404; Wed, 23 Apr 2003 17:11:28 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4041037B401 for ; Wed, 23 Apr 2003 17:11:28 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 67CE343FB1 for ; Wed, 23 Apr 2003 17:11:27 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3O0BR0U010282 for ; Wed, 23 Apr 2003 17:11:27 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3O0BQYV010277 for perforce@freebsd.org; Wed, 23 Apr 2003 17:11:26 -0700 (PDT) Date: Wed, 23 Apr 2003 17:11:26 -0700 (PDT) Message-Id: <200304240011.h3O0BQYV010277@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29570 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 00:11:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=29570 Change 29570 by peter@peter_daintree on 2003/04/23 17:11:11 take a shot at sigsetjmp/siglongjmp Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/gen/Makefile.inc#5 edit .. //depot/projects/hammer/lib/libc/x86_64/gen/sigsetjmp.S#2 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/gen/Makefile.inc#5 (text+ko) ==== @@ -1,4 +1,5 @@ # @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 # $FreeBSD: src/lib/libc/i386/gen/Makefile.inc,v 1.18 2002/11/16 06:39:11 deischen Exp $ -SRCS+= _setjmp.S setjmp.S frexp.c infinity.c isinf.c +SRCS+= _setjmp.S setjmp.S sigsetjmp.S \ + frexp.c infinity.c isinf.c ==== //depot/projects/hammer/lib/libc/x86_64/gen/sigsetjmp.S#2 (text+ko) ==== @@ -58,57 +58,62 @@ */ ENTRY(sigsetjmp) - movl 8(%esp),%eax - movl 4(%esp),%ecx - movl %eax,44(%ecx) - testl %eax,%eax + pushq %rdi + movq %rdi,%rcx + movl %esi,88(%rcx) + testl %esi,%esi jz 2f PIC_PROLOGUE - leal 28(%ecx), %eax - pushl %eax /* (sigset_t*)oset */ - pushl $0 /* (sigset_t*)set */ - pushl $1 /* SIG_BLOCK */ + leaq 72(%rcx),%rdi /* (sigset_t*)oset */ + movq $0,%rsi /* (sigset_t*)set */ + movq $1,%rdx /* SIG_BLOCK */ call PIC_PLT(CNAME(_sigprocmask)) - addl $12,%esp PIC_EPILOGUE - movl 4(%esp),%ecx -2: movl 0(%esp),%edx - movl %edx, 0(%ecx) - movl %ebx, 4(%ecx) - movl %esp, 8(%ecx) - movl %ebp,12(%ecx) - movl %esi,16(%ecx) - movl %edi,20(%ecx) - fnstcw 24(%ecx) - xorl %eax,%eax + popq %rdi + movq %rdi,%rcx +2: movq 0(%rsp),%rdx /* retval */ + movq %rdx, 0(%rcx) /* retval */ + movq %rbx, 8(%rcx) + movq %rsp,16(%rcx) + movq %rbp,24(%rcx) + movq %r12,32(%rcx) + movq %r13,40(%rcx) + movq %r14,48(%rcx) + movq %r15,56(%rcx) + fnstcw 64(%rcx) + xorq %rax,%rax ret - .weak CNAME(siglongjmp); - .set CNAME(siglongjmp),CNAME(__siglongjmp); -ENTRY(__siglongjmp); - movl 4(%esp),%edx - cmpl $0,44(%edx) + .weak CNAME(siglongjmp) + .set CNAME(siglongjmp),CNAME(__siglongjmp) +ENTRY(__siglongjmp) + cmpl $0,88(%rdi) jz 2f + movq %rdi,%rdx + pushq %rdi + pushq %rsi PIC_PROLOGUE - pushl $0 /* (sigset_t*)oset */ - leal 28(%edx), %eax - pushl %eax /* (sigset_t*)set */ - pushl $3 /* SIG_SETMASK */ + movq $0,%rdi /* (sigset_t*)oset */ + leaq 72(%rdx),%rsi /* (sigset_t*)set */ + movq $3,%rdx /* SIG_SETMASK */ call PIC_PLT(CNAME(_sigprocmask)) - addl $12,%esp PIC_EPILOGUE - movl 4(%esp),%edx -2: movl 8(%esp),%eax - movl 0(%edx),%ecx - movl 4(%edx),%ebx - movl 8(%edx),%esp - movl 12(%edx),%ebp - movl 16(%edx),%esi - movl 20(%edx),%edi + popq %rsi + popq %rdi /* jmpbuf */ +2: movq %rdi,%rdx + movq %rsi,%rax /* retval */ + movq 0(%rdx),%rcx + movq 8(%rdx),%rbx + movq 16(%rdx),%rsp + movq 24(%rdx),%rbp + movq 32(%rdx),%r12 + movq 40(%rdx),%r13 + movq 48(%rdx),%r14 + movq 56(%rdx),%r15 fninit - fldcw 24(%edx) - testl %eax,%eax + fldcw 64(%rdx) + testq %rax,%rax jnz 1f - incl %eax -1: movl %ecx,0(%esp) + incq %rax +1: movq %rcx,0(%rsp) ret From owner-p4-projects@FreeBSD.ORG Wed Apr 23 17:19:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2DB6137B404; Wed, 23 Apr 2003 17:19:41 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CB0C837B401 for ; Wed, 23 Apr 2003 17:19:40 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 36D7443F3F for ; Wed, 23 Apr 2003 17:19:39 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3O0Jd0U015996 for ; Wed, 23 Apr 2003 17:19:39 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3O0Jbee015983 for perforce@freebsd.org; Wed, 23 Apr 2003 17:19:37 -0700 (PDT) Date: Wed, 23 Apr 2003 17:19:37 -0700 (PDT) Message-Id: <200304240019.h3O0Jbee015983@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29571 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 00:19:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=29571 Change 29571 by peter@peter_overcee on 2003/04/23 17:19:17 IFC @29567 Affected files ... .. //depot/projects/hammer/UPDATING#7 integrate .. //depot/projects/hammer/crypto/openssh/ChangeLog#3 integrate .. //depot/projects/hammer/crypto/openssh/FREEBSD-tricks#2 integrate .. //depot/projects/hammer/crypto/openssh/FREEBSD-upgrade#4 integrate .. //depot/projects/hammer/crypto/openssh/Makefile.in#3 integrate .. //depot/projects/hammer/crypto/openssh/README#2 integrate .. //depot/projects/hammer/crypto/openssh/README.privsep#2 integrate .. //depot/projects/hammer/crypto/openssh/TODO#3 integrate .. //depot/projects/hammer/crypto/openssh/acconfig.h#4 integrate .. //depot/projects/hammer/crypto/openssh/auth-krb4.c#3 integrate .. //depot/projects/hammer/crypto/openssh/auth-krb5.c#3 integrate .. //depot/projects/hammer/crypto/openssh/auth-pam.c#3 integrate .. //depot/projects/hammer/crypto/openssh/auth-passwd.c#3 integrate .. //depot/projects/hammer/crypto/openssh/auth-sia.c#2 integrate .. //depot/projects/hammer/crypto/openssh/auth-sia.h#2 integrate .. //depot/projects/hammer/crypto/openssh/auth.c#3 integrate .. //depot/projects/hammer/crypto/openssh/auth1.c#4 integrate .. //depot/projects/hammer/crypto/openssh/auth2-pam.c#3 integrate .. //depot/projects/hammer/crypto/openssh/auth2.c#4 integrate .. //depot/projects/hammer/crypto/openssh/authfd.c#3 integrate .. //depot/projects/hammer/crypto/openssh/authfd.h#3 integrate .. //depot/projects/hammer/crypto/openssh/authfile.c#2 integrate .. //depot/projects/hammer/crypto/openssh/bufaux.c#2 integrate .. //depot/projects/hammer/crypto/openssh/canohost.c#3 integrate .. //depot/projects/hammer/crypto/openssh/channels.c#3 integrate .. //depot/projects/hammer/crypto/openssh/cipher.c#3 integrate .. //depot/projects/hammer/crypto/openssh/clientloop.c#3 integrate .. //depot/projects/hammer/crypto/openssh/compat.c#3 integrate .. //depot/projects/hammer/crypto/openssh/compat.h#3 integrate .. //depot/projects/hammer/crypto/openssh/config.guess#3 integrate .. //depot/projects/hammer/crypto/openssh/config.h#3 integrate .. //depot/projects/hammer/crypto/openssh/config.sub#3 integrate .. //depot/projects/hammer/crypto/openssh/configure.ac#3 integrate .. //depot/projects/hammer/crypto/openssh/crc32.c#2 integrate .. //depot/projects/hammer/crypto/openssh/crc32.h#2 integrate .. //depot/projects/hammer/crypto/openssh/defines.h#3 integrate .. //depot/projects/hammer/crypto/openssh/dh.c#3 integrate .. //depot/projects/hammer/crypto/openssh/fixpaths#2 integrate .. //depot/projects/hammer/crypto/openssh/hostfile.h#3 integrate .. //depot/projects/hammer/crypto/openssh/includes.h#3 integrate .. //depot/projects/hammer/crypto/openssh/kex.c#2 integrate .. //depot/projects/hammer/crypto/openssh/kex.h#3 integrate .. //depot/projects/hammer/crypto/openssh/kexdh.c#2 integrate .. //depot/projects/hammer/crypto/openssh/kexdhc.c#1 branch .. //depot/projects/hammer/crypto/openssh/kexdhs.c#1 branch .. //depot/projects/hammer/crypto/openssh/kexgex.c#2 integrate .. //depot/projects/hammer/crypto/openssh/kexgexc.c#1 branch .. //depot/projects/hammer/crypto/openssh/kexgexs.c#1 branch .. //depot/projects/hammer/crypto/openssh/key.c#3 integrate .. //depot/projects/hammer/crypto/openssh/key.h#2 integrate .. //depot/projects/hammer/crypto/openssh/log.c#3 integrate .. //depot/projects/hammer/crypto/openssh/loginrec.c#3 integrate .. //depot/projects/hammer/crypto/openssh/misc.c#2 integrate .. //depot/projects/hammer/crypto/openssh/monitor.c#5 integrate .. //depot/projects/hammer/crypto/openssh/monitor_wrap.c#3 integrate .. //depot/projects/hammer/crypto/openssh/msg.c#3 integrate .. //depot/projects/hammer/crypto/openssh/msg.h#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/Makefile.in#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/base64.c#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/base64.h#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/basename.c#1 branch .. //depot/projects/hammer/crypto/openssh/openbsd-compat/basename.h#1 branch .. //depot/projects/hammer/crypto/openssh/openbsd-compat/bsd-arc4random.c#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/bsd-cray.h#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/bsd-cygwin_util.c#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/bsd-getpeereid.c#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/bsd-misc.c#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/bsd-misc.h#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/bsd-snprintf.c#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/fake-getaddrinfo.c#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/fake-getaddrinfo.h#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/getcwd.c#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/getopt.c#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/mktemp.c#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/mktemp.h#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/openbsd-compat.h#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/port-aix.h#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/setenv.c#3 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/setproctitle.c#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/setproctitle.h#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/sys-tree.h#2 integrate .. //depot/projects/hammer/crypto/openssh/openbsd-compat/vis.c#1 branch .. //depot/projects/hammer/crypto/openssh/openbsd-compat/vis.h#1 branch .. //depot/projects/hammer/crypto/openssh/packet.c#3 integrate .. //depot/projects/hammer/crypto/openssh/packet.h#2 integrate .. //depot/projects/hammer/crypto/openssh/progressmeter.c#1 branch .. //depot/projects/hammer/crypto/openssh/progressmeter.h#1 branch .. //depot/projects/hammer/crypto/openssh/readconf.c#3 integrate .. //depot/projects/hammer/crypto/openssh/readconf.h#2 integrate .. //depot/projects/hammer/crypto/openssh/readpass.c#2 integrate .. //depot/projects/hammer/crypto/openssh/regress/Makefile#2 integrate .. //depot/projects/hammer/crypto/openssh/regress/agent-getpeereid.sh#1 branch .. //depot/projects/hammer/crypto/openssh/regress/agent-ptrace.sh#1 branch .. //depot/projects/hammer/crypto/openssh/regress/agent-timeout.sh#1 branch .. //depot/projects/hammer/crypto/openssh/regress/keygen-change.sh#1 branch .. //depot/projects/hammer/crypto/openssh/regress/proxy-connect.sh#2 integrate .. //depot/projects/hammer/crypto/openssh/regress/sftp-batch.sh#1 branch .. //depot/projects/hammer/crypto/openssh/regress/sftp-cmds.sh#1 branch .. //depot/projects/hammer/crypto/openssh/regress/ssh-com-client.sh#2 integrate .. //depot/projects/hammer/crypto/openssh/regress/ssh-com-keygen.sh#2 integrate .. //depot/projects/hammer/crypto/openssh/regress/ssh-com-sftp.sh#2 integrate .. //depot/projects/hammer/crypto/openssh/regress/ssh-com.sh#2 integrate .. //depot/projects/hammer/crypto/openssh/scp.1#2 integrate .. //depot/projects/hammer/crypto/openssh/scp.c#3 integrate .. //depot/projects/hammer/crypto/openssh/servconf.c#3 integrate .. //depot/projects/hammer/crypto/openssh/serverloop.c#3 integrate .. //depot/projects/hammer/crypto/openssh/session.c#5 integrate .. //depot/projects/hammer/crypto/openssh/sftp-client.c#3 integrate .. //depot/projects/hammer/crypto/openssh/sftp-common.c#3 integrate .. //depot/projects/hammer/crypto/openssh/sftp-int.c#3 integrate .. //depot/projects/hammer/crypto/openssh/sftp-int.h#2 integrate .. //depot/projects/hammer/crypto/openssh/sftp-server.c#3 integrate .. //depot/projects/hammer/crypto/openssh/sftp.1#3 integrate .. //depot/projects/hammer/crypto/openssh/sftp.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-add.1#2 integrate .. //depot/projects/hammer/crypto/openssh/ssh-add.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-agent.1#2 integrate .. //depot/projects/hammer/crypto/openssh/ssh-agent.c#4 integrate .. //depot/projects/hammer/crypto/openssh/ssh-dss.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-dss.h#2 integrate .. //depot/projects/hammer/crypto/openssh/ssh-keygen.1#2 integrate .. //depot/projects/hammer/crypto/openssh/ssh-keygen.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-keyscan.1#2 integrate .. //depot/projects/hammer/crypto/openssh/ssh-keyscan.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-keysign.8#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-keysign.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-rand-helper.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-rsa.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh-rsa.h#2 integrate .. //depot/projects/hammer/crypto/openssh/ssh.1#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh.c#3 integrate .. //depot/projects/hammer/crypto/openssh/ssh_config#4 integrate .. //depot/projects/hammer/crypto/openssh/ssh_config.5#4 integrate .. //depot/projects/hammer/crypto/openssh/sshconnect.c#3 integrate .. //depot/projects/hammer/crypto/openssh/sshconnect2.c#3 integrate .. //depot/projects/hammer/crypto/openssh/sshd.8#4 integrate .. //depot/projects/hammer/crypto/openssh/sshd.c#4 integrate .. //depot/projects/hammer/crypto/openssh/sshd_config#4 integrate .. //depot/projects/hammer/crypto/openssh/sshd_config.5#4 integrate .. //depot/projects/hammer/crypto/openssh/sshpty.c#3 integrate .. //depot/projects/hammer/crypto/openssh/version.h#4 integrate .. //depot/projects/hammer/etc/rc#8 integrate .. //depot/projects/hammer/etc/rc.d/bgfsck#3 integrate .. //depot/projects/hammer/etc/syslog.conf#6 integrate .. //depot/projects/hammer/lib/libc/gen/getgrent.c#5 integrate .. //depot/projects/hammer/lib/libdisk/rules.c#8 integrate .. //depot/projects/hammer/lib/libpthread/Makefile#5 integrate .. //depot/projects/hammer/lib/libpthread/arch/i386/include/ksd.h#2 integrate .. //depot/projects/hammer/lib/libpthread/sys/thr_error.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_kern.c#6 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_private.h#5 integrate .. //depot/projects/hammer/release/Makefile#13 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#12 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#14 integrate .. //depot/projects/hammer/release/ia64/doFS.sh#3 integrate .. //depot/projects/hammer/release/scripts/doFS.sh#6 integrate .. //depot/projects/hammer/sbin/kldconfig/Makefile#2 integrate .. //depot/projects/hammer/sbin/kldconfig/kldconfig.c#2 integrate .. //depot/projects/hammer/sbin/kldload/Makefile#2 integrate .. //depot/projects/hammer/sbin/kldstat/Makefile#2 integrate .. //depot/projects/hammer/sbin/kldstat/kldstat.c#2 integrate .. //depot/projects/hammer/sbin/kldunload/Makefile#2 integrate .. //depot/projects/hammer/sbin/kldunload/kldunload.c#2 integrate .. //depot/projects/hammer/sbin/sunlabel/Makefile#3 integrate .. //depot/projects/hammer/sbin/sunlabel/runtest.sh#2 integrate .. //depot/projects/hammer/sbin/sunlabel/sunlabel.c#3 integrate .. //depot/projects/hammer/secure/lib/Makefile#3 integrate .. //depot/projects/hammer/secure/lib/libssh/Makefile#4 integrate .. //depot/projects/hammer/secure/libexec/Makefile#2 integrate .. //depot/projects/hammer/secure/libexec/sftp-server/Makefile#2 integrate .. //depot/projects/hammer/secure/usr.bin/Makefile#2 integrate .. //depot/projects/hammer/secure/usr.bin/ssh/Makefile#3 integrate .. //depot/projects/hammer/secure/usr.sbin/sshd/Makefile#3 integrate .. //depot/projects/hammer/sys/alpha/include/_limits.h#2 integrate .. //depot/projects/hammer/sys/arm/include/_limits.h#2 integrate .. //depot/projects/hammer/sys/compat/linux/linux_file.c#5 integrate .. //depot/projects/hammer/sys/dev/ar/if_ar.c#5 integrate .. //depot/projects/hammer/sys/dev/ar/if_ar_isa.c#4 integrate .. //depot/projects/hammer/sys/dev/ar/if_ar_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/ar/if_arregs.h#3 integrate .. //depot/projects/hammer/sys/dev/pccard/pccardvar.h#5 integrate .. //depot/projects/hammer/sys/dev/pci/pcireg.h#2 integrate .. //depot/projects/hammer/sys/dev/sound/pcm/ac97.c#6 integrate .. //depot/projects/hammer/sys/dev/sr/if_sr.c#6 integrate .. //depot/projects/hammer/sys/dev/sr/if_sr_isa.c#3 integrate .. //depot/projects/hammer/sys/dev/sr/if_sr_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/sr/if_srregs.h#3 integrate .. //depot/projects/hammer/sys/geom/geom.h#12 integrate .. //depot/projects/hammer/sys/geom/geom_bsd.c#12 integrate .. //depot/projects/hammer/sys/geom/geom_ctl.c#7 integrate .. //depot/projects/hammer/sys/geom/geom_ctl.h#3 integrate .. //depot/projects/hammer/sys/geom/geom_disk.c#9 integrate .. //depot/projects/hammer/sys/geom/geom_dump.c#12 integrate .. //depot/projects/hammer/sys/geom/geom_event.c#8 integrate .. //depot/projects/hammer/sys/geom/geom_int.h#8 integrate .. //depot/projects/hammer/sys/geom/geom_kern.c#9 integrate .. //depot/projects/hammer/sys/geom/geom_mbr.c#10 integrate .. //depot/projects/hammer/sys/geom/geom_pc98.c#11 integrate .. //depot/projects/hammer/sys/geom/geom_slice.c#10 integrate .. //depot/projects/hammer/sys/geom/geom_slice.h#6 integrate .. //depot/projects/hammer/sys/geom/geom_subr.c#10 integrate .. //depot/projects/hammer/sys/geom/geom_sunlabel.c#9 integrate .. //depot/projects/hammer/sys/i386/include/_limits.h#2 integrate .. //depot/projects/hammer/sys/ia64/include/_limits.h#2 integrate .. //depot/projects/hammer/sys/kern/kern_clock.c#7 integrate .. //depot/projects/hammer/sys/kern/kern_exit.c#12 integrate .. //depot/projects/hammer/sys/kern/kern_fork.c#11 integrate .. //depot/projects/hammer/sys/kern/kern_resource.c#9 integrate .. //depot/projects/hammer/sys/kern/kern_sig.c#9 integrate .. //depot/projects/hammer/sys/kern/kern_synch.c#11 integrate .. //depot/projects/hammer/sys/kern/kern_thread.c#19 integrate .. //depot/projects/hammer/sys/kern/sched_4bsd.c#5 integrate .. //depot/projects/hammer/sys/kern/sched_ule.c#4 integrate .. //depot/projects/hammer/sys/kern/subr_prof.c#4 integrate .. //depot/projects/hammer/sys/kern/subr_trap.c#11 integrate .. //depot/projects/hammer/sys/kern/vfs_mount.c#9 integrate .. //depot/projects/hammer/sys/net/if_ethersubr.c#12 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_vnops.c#7 integrate .. //depot/projects/hammer/sys/pccard/cardinfo.h#2 integrate .. //depot/projects/hammer/sys/pccard/pccard.c#5 integrate .. //depot/projects/hammer/sys/pccard/pccard_nbk.c#2 integrate .. //depot/projects/hammer/sys/pccard/slot.h#2 integrate .. //depot/projects/hammer/sys/powerpc/include/_limits.h#2 integrate .. //depot/projects/hammer/sys/sparc64/include/_limits.h#2 integrate .. //depot/projects/hammer/sys/sys/limits.h#1 branch .. //depot/projects/hammer/sys/sys/proc.h#16 integrate .. //depot/projects/hammer/sys/sys/sun_disklabel.h#5 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_snapshot.c#10 integrate .. //depot/projects/hammer/sys/vm/vm_glue.c#12 integrate .. //depot/projects/hammer/sys/x86_64/include/_limits.h#2 integrate .. //depot/projects/hammer/usr.bin/m4/m4.1#3 integrate .. //depot/projects/hammer/usr.sbin/crunch/crunchgen/crunchgen.c#3 integrate .. //depot/projects/hammer/usr.sbin/newsyslog/newsyslog.8#4 integrate Differences ... ==== //depot/projects/hammer/UPDATING#7 (text+ko) ==== @@ -62,7 +62,7 @@ 20021216: A name change in /etc/netconfig has been reverted to stay - compatible with with suns TIRPC and also with NetBSD. You need + compatible with suns TIRPC and also with NetBSD. You need to run mergemaster after make world. A new libc does still work with an outdated /etc/netconfig for some time, but you'll get a warning. This warning will be removed in 20030301. @@ -1234,4 +1234,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.244 2003/03/31 12:46:18 ru Exp $ +$FreeBSD: src/UPDATING,v 1.245 2003/04/23 14:28:13 schweikh Exp $ ==== //depot/projects/hammer/crypto/openssh/ChangeLog#3 (text+ko) ==== @@ -1,3 +1,541 @@ +20030401 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2003/03/28 10:11:43 + [scp.1 sftp.1 ssh.1 ssh-add.1 ssh-agent.1 ssh_config.5 sshd_config.5] + [ssh-keygen.1 ssh-keyscan.1 ssh-keysign.8] + - killed whitespace + - new sentence new line + - .Bk for arguments + ok markus@ + - markus@cvs.openbsd.org 2003/04/01 10:10:23 + [clientloop.c monitor.c monitor_wrap.c packet.c packet.h readconf.c] + [readconf.h serverloop.c sshconnect2.c] + rekeying bugfixes and automatic rekeying: + * both client and server rekey _automatically_ + (a) after 2^31 packets, because after 2^32 packets + the sequence number for packets wraps + (b) after 2^(blocksize_in_bits/4) blocks + (see: draft-ietf-secsh-newmodes-00.txt) + (a) and (b) are _enabled_ by default, and only disabled for known + openssh versions, that don't support rekeying properly. + * client option 'RekeyLimit' + * do not reply to requests during rekeying + - markus@cvs.openbsd.org 2003/04/01 10:22:21 + [clientloop.c monitor.c monitor_wrap.c packet.c packet.h readconf.c] + [readconf.h serverloop.c sshconnect2.c] + backout rekeying changes (for 3.6.1) + - markus@cvs.openbsd.org 2003/04/01 10:31:26 + [compat.c compat.h kex.c] + bugfix causes stalled connections for ssh.com < 3.0; noticed by ho@; + tested by ho@ and myself + - markus@cvs.openbsd.org 2003/04/01 10:56:46 + [version.h] + 3.6.1 + - (djm) Crank spec file versions + - (djm) Release 3.6.1p1 + +20030326 + - (djm) OpenBSD CVS Sync + - deraadt@cvs.openbsd.org 2003/03/26 04:02:51 + [sftp-server.c] + one last fix to the tree: race fix broke stuff; pr 3169; + srp@srparish.net, help from djm + +20030325 + - (djm) Fix getpeerid support for 64 bit BE systems. From + Arnd Bergmann + +20030324 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/23 19:02:00 + [monitor.c] + unbreak rekeying for privsep; ok millert@ + - Release 3.6p1 + - Fix sshd BindAddress and -b options for systems using fake-getaddrinfo. + Report from murple@murple.net, diagnosis from dtucker@zip.com.au + +20030320 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/17 10:38:38 + [progressmeter.c] + don't print \n if backgrounded; from ho@ + - markus@cvs.openbsd.org 2003/03/17 11:43:47 + [version.h] + enter 3.6 + - (bal) The days of lack of int64_t support are over. Sorry kids. + - (bal) scp.c 'limit' conflicts with Cray. Rename to 'limitbw' + - (bal) Collection of Cray patches (bsd-cray.h fix for CRAYT3E and improved + guessing rules) + - (bal) Disable Privsep for Tru64 after pre-authentication due to issues + with SIA. Also, clean up of tru64 support patch by Chris Adams + + - (tim) [contrib/caldera/openssh.spec] workaround RPM quirk. Fix %files + +20030318 + - (tim) [configure.ac openbsd-compat/bsd-misc.c openbsd-compat/bsd-misc.h] + add nanosleep(). testing/corrections by Darren Tucker + +20030317 + - (djm) Fix return value checks for RAND_bytes. Report from + Steve G + +20030315 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/13 11:42:19 + [authfile.c ssh-keysign.c] + move RSA_blinding_on to generic key load method + - markus@cvs.openbsd.org 2003/03/13 11:44:50 + [ssh-agent.c] + ssh-agent is similar to ssh-keysign (allows other processes to use + private rsa keys). however, it gets key over socket and not from + a file, so we have to do blinding here as well. + +20030310 +- (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/03/05 22:33:43 + [channels.c monitor.c scp.c session.c sftp-client.c sftp-int.c] + [sftp-server.c ssh-add.c sshconnect2.c] + fix memory leaks; from dlheine@suif.Stanford.EDU/CLOUSEAU; ok djm@ + - (djm) One more portable-specific one from dlheine@suif.Stanford.EDU/ + CLOUSEAU + - (djm) Bug #245: TTY problems on Solaris. Fix by stevesk@ and + dtucker@zip.com.au + - (djm) AIX package builder update from dtucker@zip.com.au + +20030225 + - (djm) Fix some compile errors spotted by dtucker and his fabulous + tinderbox + +20030224 + - (djm) Tweak gnome-ssh-askpass2: + - Retry kb and mouse grab a couple of times, so passphrase dialog doesn't + immediately fail if you are doing something else when it appears (e.g. + dragging a window) + - Perform server grab after we have the keyboard and/or pointer to avoid + races. + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/01/27 17:06:31 + [sshd.c] + more specific error message when /var/empty has wrong permissions; + bug #46, map@appgate.com; ok henning@, provos@, stevesk@ + - markus@cvs.openbsd.org 2003/01/28 16:11:52 + [scp.1] + document -l; pekkas@netcore.fi + - stevesk@cvs.openbsd.org 2003/01/28 17:24:51 + [scp.1] + remove example not pertinent with -1 addition; ok markus@ + - jmc@cvs.openbsd.org 2003/01/31 21:54:40 + [sshd.8] + typos; sshd(8): help and ok markus@ + help and ok millert@ + - markus@cvs.openbsd.org 2003/02/02 10:51:13 + [scp.c] + call okname() only when using system(3) for remote-remote copy; + fixes bugs #483, #472; ok deraadt@, mouring@ + - markus@cvs.openbsd.org 2003/02/02 10:56:08 + [kex.c] + add support for key exchange guesses; based on work by + avraham.fraenkel@commatch.com; fixes bug #148; ok deraadt@ + - markus@cvs.openbsd.org 2003/02/03 08:56:16 + [sshpty.c] + don't call error() for readonly /dev; from soekris list; ok mcbride, + henning, deraadt. + - markus@cvs.openbsd.org 2003/02/04 09:32:08 + [key.c] + better debug3 message + - markus@cvs.openbsd.org 2003/02/04 09:33:22 + [monitor.c monitor_wrap.c] + skey/bsdauth: use 0 to indicate failure instead of -1, because + the buffer API only supports unsigned ints. + - markus@cvs.openbsd.org 2003/02/05 09:02:28 + [readconf.c] + simplify ProxyCommand parsing, remove strcat/xrealloc; ok henning@, djm@ + - markus@cvs.openbsd.org 2003/02/06 09:26:23 + [session.c] + missing call to setproctitle() after authentication; ok provos@ + - markus@cvs.openbsd.org 2003/02/06 09:27:29 + [ssh.c ssh_config.5] + support 'ProxyCommand none'; bugzilla #433; binder@arago.de; ok djm@ + - markus@cvs.openbsd.org 2003/02/06 09:29:18 + [sftp-server.c] + fix races in rename/symlink; from Tony Finch; ok djm@ + - markus@cvs.openbsd.org 2003/02/06 21:22:43 + [auth1.c auth2.c] + undo broken fix for #387, fixes #486 + - markus@cvs.openbsd.org 2003/02/10 11:51:47 + [ssh-add.1] + xref sshd_config.5 (not sshd.8); mark@summersault.com; bug #490 + - markus@cvs.openbsd.org 2003/02/12 09:33:04 + [key.c key.h ssh-dss.c ssh-rsa.c] + merge ssh-dss.h ssh-rsa.h into key.h; ok deraadt@ + - markus@cvs.openbsd.org 2003/02/12 21:39:50 + [crc32.c crc32.h] + replace crc32.c with a BSD licensed version; noted by David Turner + - markus@cvs.openbsd.org 2003/02/16 17:09:57 + [kex.c kexdh.c kexgex.c kex.h sshconnect2.c sshd.c ssh-keyscan.c] + split kex into client and server code, no need to link + server code into the client; ok provos@ + - markus@cvs.openbsd.org 2003/02/16 17:30:33 + [monitor.c monitor_wrap.c] + fix permitrootlogin forced-commands-only for privsep; bux #387; + ok provos@ + - markus@cvs.openbsd.org 2003/02/21 09:05:53 + [servconf.c] + print sshd_config filename in debug2 mode. + - mpech@cvs.openbsd.org 2003/02/21 10:34:48 + [auth-krb4.c] + ...sizeof(&adat.session) is not good here. + henning@, deraadt@, millert@ + - (djm) Add new object files to Makefile and reorder + - (djm) Bug #501: gai_strerror should return char*; + fix from dtucker@zip.com.au + - (djm) Most of Bug #499: Cygwin compile fixes for new progressmeter; + From vinschen@redhat.com + - (djm) Rest of Bug #499: Import a basename() function from OpenBSD libc + - (djm) Bug #494: Allow multiple accounts on Windows 9x/Me; + From vinschen@redhat.com + - (djm) Bug #456: Support for NEC SX6 with Unicos; from wendyp@cray.com + +20030211 + - (djm) Cygwin needs libcrypt too. Patch from vinschen@redhat.com + +20030206 + - (djm) Teach fake-getaddrinfo to use getservbyname() when provided a + string service name. Suggested by markus@, review by itojun@ + +20030131 + - (bal) AIX 4.2.1 lacks nanosleep(). Patch to use nsleep() provided by + dtucker@zip.com.au + +20030130 + - (djm) Unbreak root password auth. Spotted by dtucker@zip.com.au + +200301028 + - (djm) Search libposix4 and librt for nanosleep. From dtucker@zip.com.au + and openssh-unix-dev@thewrittenword.com + +200301027 + - (bal) Bugzilla 477 patch by wendyp@cray.com. Define TIOCGPGRP for + cray. Also removed test for tcgetpgrp in configure.ac since it + is no longer used. + +20030124 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2003/01/23 08:58:47 + [sshd_config.5] + typos; ok millert@ + - markus@cvs.openbsd.org 2003/01/23 13:50:27 + [authfd.c authfd.h readpass.c ssh-add.1 ssh-add.c ssh-agent.c] + ssh-add -c, prompt user for confirmation (using ssh-askpass) when + private agent key is used; with djm@; test by dugsong@, djm@; + ok deraadt@ + - markus@cvs.openbsd.org 2003/01/23 14:01:53 + [scp.c] + bandwidth limitation patch (scp -l) from niels@; ok todd@, deraadt@ + - markus@cvs.openbsd.org 2003/01/23 14:06:15 + [scp.1 scp.c] + scp -12; Sam Smith and others; ok provos@, deraadt@ + - (djm) Add TIMEVAL_TO_TIMESPEC macros + +20030123 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/23 00:03:00 + [auth1.c] + Don't log TIS auth response; "get rid of it" - markus@ + +20030122 + - (djm) OpenBSD CVS Sync + - marc@cvs.openbsd.org 2003/01/21 18:14:36 + [ssh-agent.1 ssh-agent.c] + Add a -t life option to ssh-agent that set the default lifetime. + The default can still be overriden by using -t in ssh-add. + OK markus@ + - (djm) Reorganise PAM & SIA password handling to eliminate some common code + - (djm) Sync regress with OpenBSD -current + +20030120 + - (djm) Fix compilation for NetBSD from dtucker@zip.com.au + - (tim) [progressmeter.c] make compilers without long long happy. + - (tim) [configure.ac] Add -belf to build ELF binaries on OpenServer 5 when + using cc. (gcc already did) + +20030118 + - (djm) Revert fix for Bug #442 for now. + +20030117 + - (djm) Bug #470: Detect strnvis, not strvis in configure. + From d_wllms@lanl.gov + +20030116 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/16 03:41:55 + [sftp-int.c] + explicitly use first glob result + +20030114 + - (djm) OpenBSD CVS Sync + - fgsch@cvs.openbsd.org 2003/01/10 23:23:24 + [sftp-int.c] + typo; from Nils Nordman . + - markus@cvs.openbsd.org 2003/01/11 18:29:43 + [log.c] + set fatal_cleanups to NULL in fatal_remove_all_cleanups(); + dtucker@zip.com.au + - markus@cvs.openbsd.org 2003/01/12 16:57:02 + [progressmeter.c] + allow WARNINGS=yes; ok djm@ + - djm@cvs.openbsd.org 2003/01/13 11:04:04 + [sftp-int.c] + make cmds[] array static to avoid conflict with BSDI libc. + mindrot bug #466. Fix from mdev@idg.nl; ok markus@ + - djm@cvs.openbsd.org 2003/01/14 10:58:00 + [sftp-client.c sftp-int.c] + Don't try to upload or download non-regular files. Report from + apoloval@pantuflo.escet.urjc.es; ok markus@ + +20030113 + - (djm) Rework openbsd-compat/setproctitle.c a bit: move emulation type + detection to configure.ac. Prompted by stevesk@ + - (djm) Bug #467: Add a --disable-strip option to turn off stripping of + installed binaries. From mdev@idg.nl + +20030110 + - (djm) Enable new setproctitle emulation for Linux, AIX and HP/UX. More + systems may be added later. + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2003/01/08 23:53:26 + [sftp.1 sftp.c sftp-int.c sftp-int.h] + Cleanup error handling for batchmode + Allow blank lines and comments in input + Ability to suppress abort on error in batchmode ("-put blah") + Fixes mindrot bug #452; markus@ ok + - fgsch@cvs.openbsd.org 2003/01/10 08:19:07 + [scp.c sftp.1 sftp.c sftp-client.c sftp-int.c progressmeter.c] + [progressmeter.h] + sftp progress meter support. + original diffs by Nils Nordman via + markus@, merged to -current by me, djm@ ok. + - djm@cvs.openbsd.org 2003/01/10 08:48:15 + [sftp-client.c] + Simplify and avoid redundancy in packet send and receive + functions; ok fgs@ + - djm@cvs.openbsd.org 2003/01/10 10:29:35 + [scp.c] + Don't ftruncate after write error, creating sparse files of + incorrect length + mindrot bug #403, reported by rusr@cup.hp.com; ok markus@ + - djm@cvs.openbsd.org 2003/01/10 10:32:54 + [channels.c] + hush socket() errors, except last. Fixes mindrot bug #408; ok markus@ + +20030108 + - (djm) Sync openbsd-compat/ with OpenBSD -current + - (djm) Avoid redundant xstrdup/xfree in auth2-pam.c. From Solar via markus@ + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2003/01/01 18:08:52 + [channels.c] + move big output buffer messages to debug2 + - djm@cvs.openbsd.org 2003/01/06 23:51:22 + [sftp-client.c] + Fix "get -p" download to not add user-write perm. mindrot bug #426 + reported by gfernandez@livevault.com; ok markus@ + - fgsch@cvs.openbsd.org 2003/01/07 23:42:54 + [sftp.1] + add version; from Nils Nordman via markus@. + markus@ ok + - (djm) Update README to reflect AIX's status as a well supported platform. + From dtucker@zip.com.au + - (tim) [Makefile.in configure.ac] replace fixpath with sed script. Patch + by Mo DeJong. + - (tim) [auth.c] declare today at top of allowed_user() to keep + older compilers happy. + - (tim) [scp.c] make compilers without long long happy. + +20030107 + - (djm) Bug #401: Work around Linux breakage with IPv6 mapped addresses. + Based on fix from yoshfuji@linux-ipv6.org + - (djm) Bug #442: Check for and deny access to accounts with locked + passwords. Patch from dtucker@zip.com.au + - (djm) Bug #44: Use local mkstemp() rather than glibc's silly one. Fixes + Can't pass KRB4 TGT passing. Fix from: jan.iven@cern.ch + - (djm) Fix Bug #442 for PAM case + - (djm) Bug #110: bogus error messages in lastlog_get_entry(). Fix based + on one by peak@argo.troja.mff.cuni.cz + - (djm) Bug #111: Run syslog and stderr logging through strnvis to eliminate + nasties. Report from peak@argo.troja.mff.cuni.cz + - (djm) Bug #178: On AIX /etc/nologin wasnt't shown to users. Fix from + Ralf.Wenk@fh-karlsruhe.de and dtucker@zip.com.au + - (djm) Fix my fix of the fix for the Bug #442 for PAM case. Spotted by + dtucker@zip.com.au. Reorder for clarity too. + +20030103 + - (djm) Bug #461: ssh-copy-id fails with no arguments. Patch from + cjwatson@debian.org + - (djm) Bug #460: Filling utmp[x]->ut_addr_v6 if present. Patch from + cjwatson@debian.org + - (djm) Bug #446: Set LOGIN env var to pw_name on AIX. Patch from + mii@ornl.gov + +20030101 + - (stevesk) [session.c sshlogin.c sshlogin.h] complete portable + parts of pass addrlen with sockaddr * fix. + from Hajimu UMEMOTO + +20021222 + - (bal) OpenBSD CVS Sync + - fgsch@cvs.openbsd.org 2002/11/15 10:03:09 + [authfile.c] + lseek(2) may return -1 when getting the public/private key lenght. + Simplify the code and check for errors using fstat(2). + + Problem reported by Mauricio Sanchez, markus@ ok. + - markus@cvs.openbsd.org 2002/11/18 16:43:44 + [clientloop.c] + don't overwrite SIG{INT,QUIT,TERM} handler if set to SIG_IGN; + e.g. if ssh is used for backup; report Joerg Schilling; ok millert@ + - markus@cvs.openbsd.org 2002/11/21 22:22:50 + [dh.c] + debug->debug2 + - markus@cvs.openbsd.org 2002/11/21 22:45:31 + [cipher.c kex.c packet.c sshconnect.c sshconnect2.c] + debug->debug2, unify debug messages + - deraadt@cvs.openbsd.org 2002/11/21 23:03:51 + [auth-krb5.c auth1.c hostfile.h monitor_wrap.c sftp-client.c sftp-int.c ssh-add.c ssh-rsa.c + sshconnect.c] + KNF + - markus@cvs.openbsd.org 2002/11/21 23:04:33 + [ssh.c] + debug->debug2 + - stevesk@cvs.openbsd.org 2002/11/24 21:46:24 + [ssh-keysign.8] + typo: "the the" + - wcobb@cvs.openbsd.org 2002/11/26 00:45:03 + [scp.c ssh-keygen.c] + Remove unnecessary fflush(stderr) calls, stderr is unbuffered by default. + ok markus@ + - stevesk@cvs.openbsd.org 2002/11/26 02:35:30 + [ssh-keygen.1] + remove outdated statement; ok markus@ deraadt@ + - stevesk@cvs.openbsd.org 2002/11/26 02:38:54 + [canohost.c] + KNF, comment and error message repair; ok markus@ + - markus@cvs.openbsd.org 2002/11/27 17:53:35 + [scp.c sftp.c ssh.c] + allow usernames with embedded '@', e.g. scp user@vhost@realhost:file /tmp; + http://bugzilla.mindrot.org/show_bug.cgi?id=447; ok mouring@, millert@ + - stevesk@cvs.openbsd.org 2002/12/04 04:36:47 + [session.c] + remove xauth entries before add; PR 2994 from janjaap@stack.nl. + ok markus@ + - markus@cvs.openbsd.org 2002/12/05 11:08:35 + [scp.c] + use roundup() similar to rcp/util.c and avoid problems with strange + filesystem block sizes, noted by tjr@freebsd.org; ok djm@ + - djm@cvs.openbsd.org 2002/12/06 05:20:02 + [sftp.1] + Fix cut'n'paste error, spotted by matthias.riese@b-novative.de; ok deraadt@ + - millert@cvs.openbsd.org 2002/12/09 16:50:30 + [ssh.c] + Avoid setting optind to 0 as GNU getopt treats that like we do optreset. + markus@ OK + - markus@cvs.openbsd.org 2002/12/10 08:56:00 + [session.c] + Make sure $SHELL points to the shell from the password file, even if shell + is overridden from login.conf; bug#453; semen at online.sinor.ru; ok millert@ + - markus@cvs.openbsd.org 2002/12/10 19:26:50 + [packet.c] + move tos handling to packet_set_tos; ok provos/henning/deraadt + - markus@cvs.openbsd.org 2002/12/10 19:47:14 + [packet.c] + static + - markus@cvs.openbsd.org 2002/12/13 10:03:15 + [channels.c misc.c sshconnect2.c] + cleanup debug messages, more useful information for the client user. + - markus@cvs.openbsd.org 2002/12/13 15:20:52 + [scp.c] + 1) include stalling time in total time + 2) truncate filenames to 45 instead of 20 characters + 3) print rate instead of progress bar, no more stars + 4) scale output to tty width + based on a patch from Niels; ok fries@ lebel@ fgs@ millert@ + - (bal) [msg.c msg.h scp.c ssh-keysign.c sshconnect2.c] Resync CVS IDs since + we already did s/msg_send/ssh_msg_send/ + +20021205 + - (djm) PERL-free fixpaths from stuge-openssh-unix-dev@cdy.org + +20021122 + - (tim) [configure.ac] fix STDPATH test for IRIX. First reported by + advax@triumf.ca. This type of solution tested by + +20021113 + - (tim) [configure.ac] remove unused variables no_libsocket and no_libnsl + +20021111 + - (tim) [contrib/solaris/opensshd.in] add umask 022 so sshd.pid is + not world writable. + +20021109 + - (bal) OpenBSD CVS Sync + - itojun@cvs.openbsd.org 2002/10/16 14:31:48 + [sftp-common.c] + 64bit pedant. %llu is "unsigned long long". markus ok + - markus@cvs.openbsd.org 2002/10/23 10:32:13 + [packet.c] + use %u for u_int + - markus@cvs.openbsd.org 2002/10/23 10:40:16 + [bufaux.c] + %u for u_int + - markus@cvs.openbsd.org 2002/11/04 10:07:53 + [auth.c] + don't compare against pw_home if realpath fails for pw_home (seen + on AFS); ok djm@ + - markus@cvs.openbsd.org 2002/11/04 10:09:51 + [packet.c] + log before send disconnect; ok djm@ + - markus@cvs.openbsd.org 2002/11/05 19:45:20 + [monitor.c] + handle overflows for size_t larger than u_int; siw@goneko.de, bug #425 + - markus@cvs.openbsd.org 2002/11/05 20:10:37 + [sftp-client.c] + typo; GaryF@livevault.com + - markus@cvs.openbsd.org 2002/11/07 16:28:47 + [sshd.c] + log to stderr if -ie is given, bug #414, prj@po.cwru.edu + - markus@cvs.openbsd.org 2002/11/07 22:08:07 + [readconf.c readconf.h ssh-keysign.8 ssh-keysign.c] + we cannot use HostbasedAuthentication for enabling ssh-keysign(8), + because HostbasedAuthentication might be enabled based on the + target host and ssh-keysign(8) does not know the remote hostname + and not trust ssh(1) about the hostname, so we add a new option + EnableSSHKeysign; ok djm@, report from zierke@informatik.uni-hamburg.de + - markus@cvs.openbsd.org 2002/11/07 22:35:38 + [scp.c] + check exit status from ssh, and exit(1) if ssh fails; bug#369; + binder@arago.de + - (bal) Update ssh-host-config and minor rewrite of bsd-cygwin_util.c + ntsec now default if cygwin version beginning w/ version 56. Patch + by Corinna Vinschen + - (bal) AIX does not log login attempts for unknown users (bug #432). + patch by dtucker@zip.com.au + +20021021 + - (djm) Bug #400: Kill ssh-rand-helper children on timeout, patch from + dtucker@zip.com.au + - (djm) Bug #317: FreeBSD needs libutil.h for openpty() Report from + dirk.meyer@dinoex.sub.org + +20021015 + - (bal) Fix bug id 383 and only call loginrestrict for AIX if not root. + - (bal) More advanced strsep test by Darren Tucker + +20021015 + - (tim) [contrib/caldera/openssh.spec] make ssh-agent setgid nobody + +20021004 + - (bal) Disable post-authentication Privsep for OSF/1. It conflicts with + SIA. + 20021003 - (djm) OpenBSD CVS Sync - markus@cvs.openbsd.org 2002/10/01 20:34:12 @@ -7,7 +545,7 @@ [version.h] OpenSSH 3.5 - (djm) Bump RPM spec version numbers - - (djm) Bug #406 s/msg_send/ssh_msh_send/ for Mac OS X 1.2 + - (djm) Bug #406: s/msg_send/ssh_msg_send/ for Mac OS X 1.2 20020930 - (djm) Tidy contrib/, add Makefile for GNOME passphrase dialogs, @@ -757,4 +1295,4 @@ save auth method before monitor_reset_key_state(); bugzilla bug #284; ok provos@ -$Id: ChangeLog,v 1.2491.2.1 2002/10/03 05:45:53 djm Exp $ +$Id: ChangeLog,v 1.2648 2003/04/01 11:47:16 djm Exp $ ==== //depot/projects/hammer/crypto/openssh/FREEBSD-tricks#2 (text+ko) ==== @@ -1,20 +1,19 @@ -# $FreeBSD: src/crypto/openssh/FREEBSD-tricks,v 1.2 2002/10/29 10:12:51 des Exp $ +# $FreeBSD: src/crypto/openssh/FREEBSD-tricks,v 1.3 2003/04/23 17:21:55 des Exp $ # Shell code to remove FreeBSD tags before merging -grep -rl '\$Fre.BSD:' . | -while read f ; do +grep -rl '\$Fre.BSD:' . >tags +while read f < tags ; do sed -i.orig -e '/\$Fre.BSD:/d' $f done # Shell + Perl code to add FreeBSD tags wherever an OpenBSD or Id tag occurs -egrep -rl '\$(Id|OpenBSD):' . | +cat tags | xargs perl -n -i.orig -e 'print; s/\$(Id|OpenBSD): [^\$]*\$/\$FreeBSD\$/ && print' # Shell code to reexpand FreeBSD tags -grep -rl '\$FreeBSD\$' . | -while read f ; do +while read f < tags ; do id=$(cvs diff $f | grep '\$Fre.BSD:' | sed 's/.*\(\$Fre.BSD:.*\$\).*/\1/') ; - if [ -n "$id" ] ; then + if [ -n "$id" ] ; then sed -i.orig -e "s@\\\$Fre.BSD\\\$@$id@" $f ; - fi ; + fi ; done ==== //depot/projects/hammer/crypto/openssh/FREEBSD-upgrade#4 (text+ko) ==== @@ -14,7 +14,7 @@ 3) Remove trash: - $ eval "rm -rf $(tr '[:space:]' ' ' >> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Apr 23 18:40:19 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E10A37B404; Wed, 23 Apr 2003 18:40:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C591737B401 for ; Wed, 23 Apr 2003 18:40:18 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6DE6043F75 for ; Wed, 23 Apr 2003 18:40:18 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3O1eI0U074040 for ; Wed, 23 Apr 2003 18:40:18 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3O1eHYv074033 for perforce@freebsd.org; Wed, 23 Apr 2003 18:40:17 -0700 (PDT) Date: Wed, 23 Apr 2003 18:40:17 -0700 (PDT) Message-Id: <200304240140.h3O1eHYv074033@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29574 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 01:40:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=29574 Change 29574 by peter@peter_daintree on 2003/04/23 18:40:07 make this compile with gcc-3.3 - surely this wasn't legal C. :-/ Affected files ... .. //depot/projects/hammer/sys/dev/fxp/if_fxpreg.h#6 edit Differences ... ==== //depot/projects/hammer/sys/dev/fxp/if_fxpreg.h#6 (text+ko) ==== @@ -291,18 +291,18 @@ * fetched along with the TxCB. */ union { - struct fxp_ipcb; + struct fxp_ipcb xx; struct fxp_tbd tbd[FXP_NTXSEG]; } tx_cb_u; }; #define tbd tx_cb_u.tbd -#define ipcb_schedule_low tx_cb_u.ipcb_schedule_low -#define ipcb_ip_schedule tx_cb_u.ipcb_ip_schedule -#define ipcb_ip_activation_high tx_cb_u.ipcb_ip_activation_high -#define ipcb_vlan_id tx_cb_u.ipcb_vlan_id -#define ipcb_ip_header_offset tx_cb_u.ipcb_ip_header_offset -#define ipcb_tcp_header_offset tx_cb_u.ipcb_tcp_header_offset +#define ipcb_schedule_low tx_cb_u.xx.ipcb_schedule_low +#define ipcb_ip_schedule tx_cb_u.xx.ipcb_ip_schedule +#define ipcb_ip_activation_high tx_cb_u.xx.ipcb_ip_activation_high +#define ipcb_vlan_id tx_cb_u.xx.ipcb_vlan_id +#define ipcb_ip_header_offset tx_cb_u.xx.ipcb_ip_header_offset +#define ipcb_tcp_header_offset tx_cb_u.xx.ipcb_tcp_header_offset /* * IPCB field definitions From owner-p4-projects@FreeBSD.ORG Wed Apr 23 18:42:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6851937B404; Wed, 23 Apr 2003 18:42:22 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 024B037B401 for ; Wed, 23 Apr 2003 18:42:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8CCD343F3F for ; Wed, 23 Apr 2003 18:42:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3O1gL0U075854 for ; Wed, 23 Apr 2003 18:42:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3O1gLQd075846 for perforce@freebsd.org; Wed, 23 Apr 2003 18:42:21 -0700 (PDT) Date: Wed, 23 Apr 2003 18:42:21 -0700 (PDT) Message-Id: <200304240142.h3O1gLQd075846@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29575 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 01:42:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=29575 Change 29575 by peter@peter_daintree on 2003/04/23 18:41:25 cheat. I must have accidently removed this. Affected files ... .. //depot/projects/hammer/lib/libkvm/kvm_proc.c#8 edit Differences ... ==== //depot/projects/hammer/lib/libkvm/kvm_proc.c#8 (text+ko) ==== @@ -364,7 +364,9 @@ kp->ki_pri.pri_native = mtd.td_base_pri; kp->ki_lastcpu = mtd.td_lastcpu; kp->ki_wchan = mtd.td_wchan; +#ifndef __x86_64__ kp->ki_oncpu = mtd.td_oncpu; +#endif if (!(proc.p_flag & P_THREADED)) { /* stuff from the ksegrp */ From owner-p4-projects@FreeBSD.ORG Wed Apr 23 18:42:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D4C0E37B416; Wed, 23 Apr 2003 18:42:22 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 69D0F37B401 for ; Wed, 23 Apr 2003 18:42:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 106F943F3F for ; Wed, 23 Apr 2003 18:42:22 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3O1gL0U075867 for ; Wed, 23 Apr 2003 18:42:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3O1gLTe075860 for perforce@freebsd.org; Wed, 23 Apr 2003 18:42:21 -0700 (PDT) Date: Wed, 23 Apr 2003 18:42:21 -0700 (PDT) Message-Id: <200304240142.h3O1gLTe075860@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29576 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 01:42:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=29576 Change 29576 by peter@peter_daintree on 2003/04/23 18:41:42 add back some devices for real hardware Affected files ... .. //depot/projects/hammer/sys/x86_64/conf/GENERIC#7 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/conf/GENERIC#7 (text+ko) ==== @@ -23,7 +23,7 @@ ident GENERIC maxusers 0 -#options INET +options INET options SCHED_4BSD options FFS options SOFTUPDATES @@ -34,27 +34,27 @@ options INVARIANTS options INVARIANT_SUPPORT -#device pci -#device miibus -#device bge -#device fxp +device pci +device miibus +device bge +device fxp -#device random # Entropy device -#device loop -#device ether +device random # Entropy device +device loop +device ether device md -#device ata -#device atadisk -#device atapicd # ATAPI CDROM drives +device ata +device atadisk +device atapicd # ATAPI CDROM drives # USB support -#device uhci # UHCI PCI->USB interface -#device ohci # OHCI PCI->USB interface -#device usb # USB Bus (required) -#device ugen # Generic -#device uhid # "Human Interface Devices" -#device ukbd # Keyboard +device uhci # UHCI PCI->USB interface +device ohci # OHCI PCI->USB interface +device usb # USB Bus (required) +device ugen # Generic +device uhid # "Human Interface Devices" +device ukbd # Keyboard # atkbdc0 controls both the keyboard and the PS/2 mouse From owner-p4-projects@FreeBSD.ORG Wed Apr 23 21:44:07 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B487237B404; Wed, 23 Apr 2003 21:44:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 544EC37B401 for ; Wed, 23 Apr 2003 21:44:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DD3F043F75 for ; Wed, 23 Apr 2003 21:44:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3O4i50U012823 for ; Wed, 23 Apr 2003 21:44:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3O4i5wI012815 for perforce@freebsd.org; Wed, 23 Apr 2003 21:44:05 -0700 (PDT) Date: Wed, 23 Apr 2003 21:44:05 -0700 (PDT) Message-Id: <200304240444.h3O4i5wI012815@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29582 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 04:44:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=29582 Change 29582 by peter@peter_daintree on 2003/04/23 21:43:41 work around a gcc-3.3 x86-64 bug. there's a similar workaround in subr_hints.c this may be specific to the -mcmodel=medium setting. Affected files ... .. //depot/projects/hammer/sys/net/radix.c#4 edit Differences ... ==== //depot/projects/hammer/sys/net/radix.c#4 (text+ko) ==== @@ -451,7 +451,7 @@ /* * Trim trailing zeroes. */ - for (cp = addmask_key + mlen; (cp > addmask_key) && cp[-1] == 0;) + for (cp = addmask_key + mlen; (cp > addmask_key) && *(cp - 1) == 0;) cp--; mlen = cp - addmask_key; if (mlen <= skip) { From owner-p4-projects@FreeBSD.ORG Thu Apr 24 13:52:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E22D537B404; Thu, 24 Apr 2003 13:52:01 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9131037B401 for ; Thu, 24 Apr 2003 13:52:01 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 77C6A43FAF for ; Thu, 24 Apr 2003 13:52:00 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OKq00U037179 for ; Thu, 24 Apr 2003 13:52:00 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OKpx9S037161 for perforce@freebsd.org; Thu, 24 Apr 2003 13:51:59 -0700 (PDT) Date: Thu, 24 Apr 2003 13:51:59 -0700 (PDT) Message-Id: <200304242051.h3OKpx9S037161@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29627 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 20:52:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=29627 Change 29627 by peter@peter_daintree on 2003/04/24 13:51:26 IFC @29625 Affected files ... .. //depot/projects/hammer/etc/pam.d/passwd#3 integrate .. //depot/projects/hammer/etc/rc.d/Makefile#7 integrate .. //depot/projects/hammer/etc/rc.d/early.sh#1 branch .. //depot/projects/hammer/etc/rc.d/hostname#2 integrate .. //depot/projects/hammer/etc/rc.d/ipfilter#7 integrate .. //depot/projects/hammer/etc/rc.d/ipfs#2 integrate .. //depot/projects/hammer/etc/rc.d/ipmon#4 integrate .. //depot/projects/hammer/etc/rc.d/ipnat#5 integrate .. //depot/projects/hammer/etc/rc.d/securelevel#3 integrate .. //depot/projects/hammer/etc/rc.d/sysctl#4 integrate .. //depot/projects/hammer/lib/libc/gen/getusershell.c#3 integrate .. //depot/projects/hammer/lib/libc/net/getaddrinfo.c#7 integrate .. //depot/projects/hammer/lib/libc/net/gethostnamadr.c#2 integrate .. //depot/projects/hammer/lib/libc/net/getnetnamadr.c#2 integrate .. //depot/projects/hammer/lib/libc/net/name6.c#6 integrate .. //depot/projects/hammer/lib/libc/net/nsdispatch.c#4 integrate .. //depot/projects/hammer/lib/libpam/modules/pam_unix/pam_unix.c#2 integrate .. //depot/projects/hammer/share/man/man4/acpi.4#4 integrate .. //depot/projects/hammer/sys/dev/firewire/firewire.c#7 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohci.c#6 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohci_pci.c#7 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohcireg.h#4 integrate .. //depot/projects/hammer/sys/dev/firewire/sbp.c#7 integrate .. //depot/projects/hammer/sys/fs/msdosfs/msdosfs_vfsops.c#7 integrate .. //depot/projects/hammer/sys/i386/i386/trap.c#11 integrate .. //depot/projects/hammer/sys/kern/kern_mac.c#14 integrate .. //depot/projects/hammer/sys/kern/kern_proc.c#12 integrate .. //depot/projects/hammer/sys/kern/vfs_mount.c#10 integrate .. //depot/projects/hammer/sys/kern/vfs_subr.c#11 integrate .. //depot/projects/hammer/sys/kern/vfs_syscalls.c#10 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_vfsops.c#9 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_vnops.c#8 integrate .. //depot/projects/hammer/sys/nfsserver/nfs_serv.c#7 integrate .. //depot/projects/hammer/sys/sys/limits.h#2 integrate .. //depot/projects/hammer/sys/sys/proc.h#17 integrate .. //depot/projects/hammer/sys/vm/swap_pager.h#5 integrate .. //depot/projects/hammer/sys/vm/vm_contig.c#5 integrate .. //depot/projects/hammer/sys/vm/vm_map.c#9 integrate .. //depot/projects/hammer/sys/vm/vm_object.c#11 integrate .. //depot/projects/hammer/sys/vm/vm_pageout.c#13 integrate .. //depot/projects/hammer/sys/vm/vm_pageout.h#3 integrate .. //depot/projects/hammer/tools/regression/fsx/fsx.c#2 integrate .. //depot/projects/hammer/usr.bin/calendar/calendars/calendar.birthday#5 integrate .. //depot/projects/hammer/usr.sbin/apm/apm.c#4 integrate .. //depot/projects/hammer/usr.sbin/config/mkmakefile.c#4 integrate .. //depot/projects/hammer/usr.sbin/newsyslog/newsyslog.8#5 integrate .. //depot/projects/hammer/usr.sbin/pccard/pccardd/cardd.c#3 integrate .. //depot/projects/hammer/usr.sbin/pccard/pccardd/cardd.h#2 integrate .. //depot/projects/hammer/usr.sbin/rpc.lockd/lockd.c#3 integrate Differences ... ==== //depot/projects/hammer/etc/pam.d/passwd#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/etc/pam.d/passwd,v 1.2 2003/02/10 00:50:03 des Exp $ +# $FreeBSD: src/etc/pam.d/passwd,v 1.3 2003/04/24 12:22:42 des Exp $ # # PAM configuration for the "passwd" service # @@ -8,4 +8,4 @@ # password #password requisite pam_passwdqc.so enforce=users -password required pam_unix.so no_warn try_first_pass +password required pam_unix.so no_warn try_first_pass nullok ==== //depot/projects/hammer/etc/rc.d/Makefile#7 (text+ko) ==== @@ -1,14 +1,14 @@ # $NetBSD: Makefile,v 1.16 2001/01/14 15:37:22 minoura Exp $ -# $FreeBSD: src/etc/rc.d/Makefile,v 1.14 2003/04/19 01:56:44 mtm Exp $ +# $FreeBSD: src/etc/rc.d/Makefile,v 1.15 2003/04/24 08:20:47 mtm Exp $ .include FILES= DAEMON LOGIN NETWORKING SERVERS abi accounting addswap adjkerntz amd \ apm apmd atm1 atm2.sh atm3.sh archdep bgfsck bootparams ccd cleanvar \ cleartmp cron devd devdb devfs dhclient diskless dmesg dumpon fsck \ - hostname inetd initdiskless initrandom ip6fw ipfilter ipfw ipmon ipnat \ - ipsec ipxrouted isdnd jail kadmind kerberos keyserv kldxref ldconfig \ - local localdaemons lomac lpd motd mountcritlocal mountcritremote \ + hostname inetd initdiskless initrandom ip6fw ipfilter ipfs ipfw ipmon \ + ipnat ipsec ipxrouted isdnd jail kadmind kerberos keyserv kldxref \ + ldconfig local localdaemons lomac lpd motd mountcritlocal mountcritremote \ mountd moused mroute6d mrouted msgs named netif network1 network2 network3 \ network_ipv6 nfsclient nfsd nfslocking nfsserver nisdomain ntpd \ ntpdate othermta pccard pcvt ppp-user pppoed pwcheck quota random \ ==== //depot/projects/hammer/etc/rc.d/hostname#2 (text+ko) ==== @@ -23,11 +23,11 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/rc.d/hostname,v 1.1 2003/04/18 17:51:53 mtm Exp $ +# $FreeBSD: src/etc/rc.d/hostname,v 1.2 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: hostname -# REQUIRE: mountcritlocal sysctl tty +# REQUIRE: mountcritlocal tty # BEFORE: netif # KEYWORD: FreeBSD ==== //depot/projects/hammer/etc/rc.d/ipfilter#7 (text+ko) ==== @@ -1,11 +1,12 @@ #!/bin/sh # # $NetBSD: ipfilter,v 1.10 2001/02/28 17:03:50 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipfilter,v 1.7 2003/03/22 14:53:23 ume Exp $ +# $FreeBSD: src/etc/rc.d/ipfilter,v 1.8 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipfilter -# REQUIRE: root beforenetlkm mountcritlocal tty +# REQUIRE: root beforenetlkm mountcritlocal tty ipmon +# BEFORE: netif # KEYWORD: FreeBSD NetBSD . /etc/rc.subr @@ -43,8 +44,7 @@ if kldload ipl; then echo 'IP-filter module loaded.' else - warn 'IP-filter module failed to load.' - return 1 + err 1 'IP-filter module failed to load.' fi fi ==== //depot/projects/hammer/etc/rc.d/ipfs#2 (text+ko) ==== @@ -1,23 +1,47 @@ #!/bin/sh # # $NetBSD: ipfs,v 1.3 2002/02/11 13:55:42 lukem Exp $ +# $FreeBSD: src/etc/rc.d/ipfs,v 1.2 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipfs -# REQUIRE: ipnat mountcritremote -# KEYWORD: shutdown +# REQUIRE: ipnat +# BEFORE: netif +# KEYWORD: FreeBSD NetBSD shutdown . /etc/rc.subr name="ipfs" -rcvar=$name +rcvar=`set_rcvar` start_cmd="ipfs_start" stop_cmd="ipfs_stop" +case ${OSTYPE} in +FreeBSD) + start_precmd="ipfs_prestart" + ;; +NetBSD) + ipfs_program="/usr/sbin/ipfs" + ;; +esac + +ipfs_prestart() +{ + # Do not continue if either ipnat or ipfilter is not enabled or + # if the ipfilter module is not loaded. + # + if ! checkyesno ipfilter_enable -o ! checkyesno ipnat_enable ; then + err 1 "${name} requires either ipfilter or ipnat enabled" + fi + if ! sysctl net.inet.ipf.fr_pass >/dev/null 2>&1; then + err 1 "ipfilter module is not loaded" + fi + return 0 +} ipfs_start() { if [ -r /var/db/ipf/ipstate.ipf -a -r /var/db/ipf/ipnat.ipf ]; then - /usr/sbin/ipfs -R ${rc_flags} + ${ipfs_program} -R ${rc_flags} rm -f /var/db/ipf/ipstate.ipf /var/db/ipf/ipnat.ipf fi } @@ -29,7 +53,7 @@ chmod 700 /var/db/ipf chown root:wheel /var/db/ipf fi - /usr/sbin/ipfs -W ${rc_flags} + ${ipfs_program} -W ${rc_flags} } load_rc_config $name ==== //depot/projects/hammer/etc/rc.d/ipmon#4 (text+ko) ==== @@ -1,11 +1,11 @@ #!/bin/sh # # $NetBSD: ipmon,v 2002/04/18 05:02:01 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipmon,v 1.4 2002/10/12 10:31:31 schweikh Exp $ +# $FreeBSD: src/etc/rc.d/ipmon,v 1.5 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipmon -# REQUIRE: syslogd +# REQUIRE: mountcritlocal hostname sysctl # BEFORE: SERVERS # KEYWORD: FreeBSD NetBSD @@ -26,9 +26,14 @@ ipmon_precmd() { - # Make sure ipfilter is loaded before continuing + # Continue only if ipfilter or ipnat is enabled and the + # ipfilter module is loaded. + # + if ! checkyesno ipfilter_enable -o ! checkyesno ipnat_enable ; then + err 1 "${name} requires either ipfilter or ipnat enabled" + fi if ! sysctl net.inet.ipf.fr_pass >/dev/null 2>&1; then - return 1 + err 1 "ipfilter module is not loaded" fi return 0 } ==== //depot/projects/hammer/etc/rc.d/ipnat#5 (text+ko) ==== @@ -1,84 +1,65 @@ #!/bin/sh # # $NetBSD: ipnat,v 1.6 2000/09/19 13:04:38 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipnat,v 1.5 2002/10/26 00:18:06 fenner Exp $ +# $FreeBSD: src/etc/rc.d/ipnat,v 1.7 2003/04/24 18:14:52 mtm Exp $ # # PROVIDE: ipnat -# REQUIRE: ipfilter mountcritremote -# BEFORE: DAEMON +# REQUIRE: ipfilter +# BEFORE: DAEMON netif # KEYWORD: FreeBSD NetBSD . /etc/rc.subr name="ipnat" rcvar=`set_rcvar` +load_rc_config $name case ${OSTYPE} in -FreeBSD) - IPNATDIR="/sbin" - start_precmd="ipnat_precmd" - reload_cmd="ipnat_start" - ;; NetBSD) - IPNATDIR="/usr/sbin" - config="/etc/ipnat.conf" - reload_cmd="/usr/sbin/ipnat -F -C -f ${config}" - start_precmd= + ipnat_flags= + ipnat_rules="/etc/ipnat.conf" + ipnat_program="/usr/sbin/ipnat" ;; esac +start_precmd="ipnat_precmd" start_cmd="ipnat_start" -stop_cmd="${ipnat_program:-${IPNATDIR}/${name}} -F -C" +stop_cmd="${ipnat_program} -F -C" +reload_cmd="${ipnat_program} -F -C -f ${ipnat_rules}" extra_commands="reload" ipnat_precmd() { + case ${OSTYPE} in + NetBSD) + if ! checkyesno ipfilter || [ ! -f /etc/ipf.conf ]; then + echo "Enabling ipfilter for NAT." + /sbin/ipf -E -Fa + fi + return 0 + ;; + esac + # Make sure ipfilter is loaded before continuing if ! ${SYSCTL} net.inet.ipf.fr_pass >/dev/null 2>&1; then - err 1 'ipnat requires ipfilter be loaded' + if kldload ipl; then + echo 'IP-filter module loaded.' + else + err 1 'IP-filter module failed to load.' + fi fi return 0 } ipnat_start() { - case ${OSTYPE} in - FreeBSD) - echo -n 'Installing NAT rules ... ' - if [ -r "${ipnat_rules}" ]; then - ${ipnat_program:-/sbin/ipnat} -CF -f \ - "${ipnat_rules}" ${ipnat_flags} - else - echo -n ' NO IPNAT RULES' - fi - echo '.' - - # restore filter/NAT state tables after loading the rules - if checkyesno ipfs_enable; then - if [ -r "/var/db/ipf/ipstate.ipf" ]; then - echo -n ' ipfs' - ${ipfs_program:-/sbin/ipfs} -R ${ipfs_flags} - # remove files to avoid reloading old state - # after an ungraceful shutdown - rm -f /var/db/ipf/ipstate.ipf - rm -f /var/db/ipf/ipnat.ipf - fi - fi - ;; - NetBSD) - if [ ! -f ${config} ]; then - return 0 - fi - if ! checkyesno ipfilter || [ ! -f /etc/ipf.conf ]; then - echo "Enabling ipfilter for NAT." - /sbin/ipf -E -Fa - fi - echo -n "Installing NAT rules ... " - /usr/sbin/ipnat -F -f ${config} - ;; - esac + if [ ! -f ${ipnat_rules} ]; then + echo -n ' NO IPNAT RULES' + return 0 + fi + echo -n "Installing NAT rules ... " + ${ipnat_program} -CF -f ${ipnat_rules} ${ipnat_flags} } -load_rc_config $name run_rc_command "$1" ==== //depot/projects/hammer/etc/rc.d/securelevel#3 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: securelevel,v 1.4 2002/03/22 04:34:00 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/securelevel,v 1.4 2002/09/06 16:18:05 gordon Exp $ +# $FreeBSD: src/etc/rc.d/securelevel,v 1.5 2003/04/24 08:27:29 mtm Exp $ # # PROVIDE: securelevel @@ -17,6 +17,10 @@ securelevel_start() { + # Last chance to set sysctl variables that failed the first time. + # + /etc/rc.d/sysctl lastload + case ${OSTYPE} in FreeBSD) case ${kern_securelevel_enable} in ==== //depot/projects/hammer/etc/rc.d/sysctl#4 (text+ko) ==== @@ -1,11 +1,11 @@ #!/bin/sh # # $NetBSD: sysctl,v 1.12 2002/04/29 12:10:23 lukem Exp $ -# $FreeBSD: src/etc/rc.d/sysctl,v 1.11 2002/10/25 23:02:54 fenner Exp $ +# $FreeBSD: src/etc/rc.d/sysctl,v 1.12 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: sysctl -# REQUIRE: root ipfilter ipsec +# REQUIRE: root # BEFORE: DAEMON # KEYWORD: FreeBSD NetBSD ==== //depot/projects/hammer/lib/libc/gen/getusershell.c#3 (text+ko) ==== @@ -36,8 +36,9 @@ #endif /* LIBC_SCCS and not lint */ /* $NetBSD: getusershell.c,v 1.17 1999/01/25 01:09:34 lukem Exp $ */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getusershell.c,v 1.8 2003/03/19 14:17:24 robert Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getusershell.c,v 1.9 2003/04/24 20:16:21 nectar Exp $"); +#include "namespace.h" #include #include @@ -59,6 +60,7 @@ #include #include #endif +#include "un-namespace.h" /* * Local shells should NOT be added here. They should be added in @@ -259,7 +261,7 @@ sl_free(sl, 1); sl = sl_init(); - if (nsdispatch(NULL, dtab, NSDB_SHELLS, "initshells", __nsdefaultsrc) + if (_nsdispatch(NULL, dtab, NSDB_SHELLS, "initshells", __nsdefaultsrc) != NS_SUCCESS) { if (sl) sl_free(sl, 1); ==== //depot/projects/hammer/lib/libc/net/getaddrinfo.c#7 (text+ko) ==== @@ -63,7 +63,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.37 2003/02/27 13:40:00 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.38 2003/04/24 17:41:20 nectar Exp $"); #include "namespace.h" #include @@ -607,7 +607,7 @@ return 0; } - switch (nsdispatch(&result, dtab, NSDB_HOSTS, "getaddrinfo", + switch (_nsdispatch(&result, dtab, NSDB_HOSTS, "getaddrinfo", default_dns_files, hostname, pai)) { case NS_TRYAGAIN: error = EAI_AGAIN; ==== //depot/projects/hammer/lib/libc/net/gethostnamadr.c#2 (text+ko) ==== @@ -24,8 +24,9 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/gethostnamadr.c,v 1.20 2002/03/22 21:52:29 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/gethostnamadr.c,v 1.21 2003/04/24 18:05:48 nectar Exp $"); +#include "namespace.h" #include #include #include @@ -38,6 +39,7 @@ #include #include /* XXX hack for _res */ #include /* XXX hack for _res */ +#include "un-namespace.h" extern int _ht_gethostbyname(void *, void *, va_list); extern int _dns_gethostbyname(void *, void *, va_list); @@ -83,7 +85,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyname", + rval = _nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyname", default_src, name, type); if (rval != NS_SUCCESS) @@ -105,7 +107,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyaddr", + rval = _nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyaddr", default_src, addr, len, type); if (rval != NS_SUCCESS) ==== //depot/projects/hammer/lib/libc/net/getnetnamadr.c#2 (text+ko) ==== @@ -24,8 +24,9 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getnetnamadr.c,v 1.16 2002/03/22 21:52:29 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getnetnamadr.c,v 1.17 2003/04/24 18:05:48 nectar Exp $"); +#include "namespace.h" #include #include #include @@ -36,6 +37,7 @@ #include #include #include +#include "un-namespace.h" extern int _ht_getnetbyname(void *, void *, va_list); extern int _dns_getnetbyname(void *, void *, va_list); @@ -65,7 +67,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyname", + rval = _nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyname", default_src, name); if (rval != NS_SUCCESS) @@ -87,7 +89,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyaddr", + rval = _nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyaddr", default_src, addr, af); if (rval != NS_SUCCESS) ==== //depot/projects/hammer/lib/libc/net/name6.c#6 (text+ko) ==== @@ -94,7 +94,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/name6.c,v 1.31 2003/02/16 17:29:10 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/name6.c,v 1.32 2003/04/24 17:41:20 nectar Exp $"); #include "namespace.h" #include @@ -291,7 +291,7 @@ } THREAD_LOCK(); - rval = nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyname", default_src, + rval = _nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyname", default_src, name, af, errp); THREAD_UNLOCK(); return (rval == NS_SUCCESS) ? hp : NULL; @@ -438,7 +438,7 @@ } THREAD_LOCK(); - rval = nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyaddr", default_src, + rval = _nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyaddr", default_src, src, len, af, errp); THREAD_UNLOCK(); return (rval == NS_SUCCESS) ? hp : NULL; ==== //depot/projects/hammer/lib/libc/net/nsdispatch.c#4 (text+ko) ==== @@ -68,7 +68,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.7 2003/04/17 14:14:22 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.8 2003/04/24 19:57:31 nectar Exp $"); #include "namespace.h" #include @@ -549,7 +549,9 @@ return (match->method); } } - nss_log(LOG_DEBUG, "%s, %s, %s, not found", source, database, method); + if (is_dynamic()) + nss_log(LOG_DEBUG, "%s, %s, %s, not found", source, database, + method); *mdata = NULL; return (NULL); } ==== //depot/projects/hammer/lib/libpam/modules/pam_unix/pam_unix.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_unix/pam_unix.c,v 1.40 2002/05/22 23:18:25 jmallett Exp $"); +__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_unix/pam_unix.c,v 1.42 2003/04/24 12:27:01 des Exp $"); #include #include @@ -337,8 +337,10 @@ PAM_LOG("Got old password"); /* always encrypt first */ encrypted = crypt(old_pass, pwd->pw_passwd); - if ((old_pass[0] == '\0' && pwd->pw_passwd[0] != '\0') || - strcmp(encrypted, pwd->pw_passwd) != 0) + if (old_pass[0] == '\0' && + !pam_test_option(&options, PAM_OPT_NULLOK, NULL)) + return (PAM_PERM_DENIED); + if (strcmp(encrypted, pwd->pw_passwd) != 0) return (PAM_PERM_DENIED); } else if (flags & PAM_UPDATE_AUTHTOK) { @@ -364,6 +366,10 @@ return (retval); } + if (getuid() != 0 && new_pass[0] == '\0' && + !pam_test_option(&options, PAM_OPT_NULLOK, NULL)) + return (PAM_PERM_DENIED); + if ((old_pwd = pw_dup(pwd)) == NULL) return (PAM_BUF_ERR); ==== //depot/projects/hammer/share/man/man4/acpi.4#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/share/man/man4/acpi.4,v 1.6 2002/10/24 01:44:50 rwatson Exp $ +.\" $FreeBSD: src/share/man/man4/acpi.4,v 1.7 2003/04/24 09:54:18 hmp Exp $ .\" .Dd July 2, 2001 .Dt ACPI 4 @@ -32,7 +32,7 @@ .Nm acpi .Nd Advanced Configuration and Power Management support .Sh SYNOPSIS -.Cd device acpica +.Cd device acpi .Pp .Cd options ACPI_DEBUG .Sh DESCRIPTION ==== //depot/projects/hammer/sys/dev/firewire/firewire.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/firewire.c,v 1.46 2003/04/17 03:38:02 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/firewire.c,v 1.47 2003/04/24 09:27:17 simokawa Exp $ * */ @@ -1778,7 +1778,11 @@ bind = fw_bindlookup(fc, fp->mode.rreqq.dest_hi, fp->mode.rreqq.dest_lo); if(bind == NULL){ +#if __FreeBSD_version >= 500000 printf("Unknown service addr 0x%08x:0x%08x tcode=%x src=0x%x data=%x\n", +#else + printf("Unknown service addr 0x%08x:0x%08x tcode=%x src=0x%x data=%lx\n", +#endif fp->mode.wreqq.dest_hi, fp->mode.wreqq.dest_lo, tcode, ==== //depot/projects/hammer/sys/dev/firewire/fwohci.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/fwohci.c,v 1.47 2003/04/17 03:38:02 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/fwohci.c,v 1.48 2003/04/24 15:27:06 simokawa Exp $ * */ @@ -2303,11 +2303,11 @@ key = cmd & OHCI_KEY_MASK; stat = res >> OHCI_STATUS_SHIFT; #if __FreeBSD_version >= 500000 - printf("%08tx %s %s %s %s %5d %08x %08x %04x:%04x", + printf("%08jx %s %s %s %s %5d %08x %08x %04x:%04x", #else printf("%08x %s %s %s %s %5d %08x %08x %04x:%04x", #endif - db_tr->bus_addr, + (uintmax_t)db_tr->bus_addr, dbcode[(cmd >> 28) & 0xf], dbkey[(cmd >> 24) & 0x7], dbcond[(cmd >> 20) & 0x3], ==== //depot/projects/hammer/sys/dev/firewire/fwohci_pci.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/fwohci_pci.c,v 1.21 2003/04/17 03:38:02 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/fwohci_pci.c,v 1.22 2003/04/24 07:29:52 simokawa Exp $ */ #define BOUNCE_BUFFER_TEST 0 @@ -78,6 +78,14 @@ device_set_desc(dev, "NEC uPD72871/2"); return 0; } + if (id == (FW_VENDORID_NEC | FW_DEVICE_UPD72870)) { + device_set_desc(dev, "NEC uPD72870"); + return 0; + } + if (id == (FW_VENDORID_NEC | FW_DEVICE_UPD72874)) { + device_set_desc(dev, "NEC uPD72874"); + return 0; + } if (id == (FW_VENDORID_TI | FW_DEVICE_TITSB22)) { device_set_desc(dev, "Texas Instruments TSB12LV22"); return 0; @@ -98,6 +106,10 @@ device_set_desc(dev, "Texas Instruments TSB43AB22/A"); return 0; } + if (id == (FW_VENDORID_TI | FW_DEVICE_TITSB43AB23)) { + device_set_desc(dev, "Texas Instruments TSB43AB23"); + return 0; + } if (id == (FW_VENDORID_TI | FW_DEVICE_TIPCI4450)) { device_set_desc(dev, "Texas Instruments PCI4450"); return 0; @@ -106,6 +118,10 @@ device_set_desc(dev, "Texas Instruments PCI4410A"); return 0; } + if (id == (FW_VENDORID_TI | FW_DEVICE_TIPCI4451)) { + device_set_desc(dev, "Texas Instruments PCI4451"); + return 0; + } if (id == (FW_VENDORID_SONY | FW_DEVICE_CX3022)) { device_set_desc(dev, "Sony CX3022"); return 0; @@ -114,6 +130,10 @@ device_set_desc(dev, "VIA VT6306"); return 0; } + if (id == (FW_VENDORID_RICOH | FW_DEVICE_R5C551)) { + device_set_desc(dev, "Ricoh R5C551"); + return 0; + } if (id == (FW_VENDORID_RICOH | FW_DEVICE_R5C552)) { device_set_desc(dev, "Ricoh R5C552"); return 0; ==== //depot/projects/hammer/sys/dev/firewire/fwohcireg.h#4 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/fwohcireg.h,v 1.9 2003/04/17 03:38:02 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/fwohcireg.h,v 1.10 2003/04/24 07:29:52 simokawa Exp $ * */ #define PCI_CBMEM 0x10 @@ -46,15 +46,20 @@ #define FW_DEVICE_UPD861 (0x0063 << 16) #define FW_DEVICE_UPD871 (0x00ce << 16) +#define FW_DEVICE_UPD72870 (0x00cd << 16) +#define FW_DEVICE_UPD72874 (0x00f2 << 16) #define FW_DEVICE_TITSB22 (0x8009 << 16) #define FW_DEVICE_TITSB23 (0x8019 << 16) #define FW_DEVICE_TITSB26 (0x8020 << 16) #define FW_DEVICE_TITSB43 (0x8021 << 16) #define FW_DEVICE_TITSB43A (0x8023 << 16) +#define FW_DEVICE_TITSB43AB23 (0x8024 << 16) +#define FW_DEVICE_TIPCI4410A (0x8017 << 16) #define FW_DEVICE_TIPCI4450 (0x8011 << 16) -#define FW_DEVICE_TIPCI4410A (0x8017 << 16) +#define FW_DEVICE_TIPCI4451 (0x8027 << 16) #define FW_DEVICE_CX3022 (0x8039 << 16) #define FW_DEVICE_VT6306 (0x3044 << 16) +#define FW_DEVICE_R5C551 (0x0551 << 16) #define FW_DEVICE_R5C552 (0x0552 << 16) #define FW_DEVICE_PANGEA (0x0030 << 16) #define FW_DEVICE_UNINORTH (0x0031 << 16) ==== //depot/projects/hammer/sys/dev/firewire/sbp.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/sbp.c,v 1.42 2003/04/17 03:38:02 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/sbp.c,v 1.43 2003/04/24 15:27:06 simokawa Exp $ * */ @@ -2354,11 +2354,11 @@ printf("sbp_execute_ocb: seg %d", seg); for (i = 0; i < seg; i++) #if __FreeBSD_version >= 500000 - printf(", %tx:%zd", segments[i].ds_addr, + printf(", %jx:%jd", (uintmax_t)segments[i].ds_addr, + (uintmax_t)segments[i].ds_len); #else - printf(", %x:%d", segments[i].ds_addr, + printf(", %x:%d", segments[i].ds_addr, segments[i].ds_len); #endif - segments[i].ds_len); printf("\n"); END_DEBUG @@ -2422,11 +2422,13 @@ SBP_DEBUG(1) sbp_show_sdev_info(sdev, 2); #if __FreeBSD_version >= 500000 - printf("orb: 0x%tx next: 0x%x, flags %x\n", + printf("orb: 0x%jx next: 0x%x, flags %x\n", + (uintmax_t)ocb->bus_addr, #else printf("orb: 0x%x next: 0x%lx, flags %x\n", + ocb->bus_addr, #endif - ocb->bus_addr, ntohl(ocb->orb[1]), flags); + ntohl(ocb->orb[1]), flags); END_DEBUG if (OCB_MATCH(ocb, sbp_status)) { /* found */ @@ -2468,7 +2470,8 @@ SBP_DEBUG(2) sbp_show_sdev_info(sdev, 2); #if __FreeBSD_version >= 500000 - printf("sbp_enqueue_ocb orb=0x%tx in physical memory\n", ocb->bus_addr); + printf("sbp_enqueue_ocb orb=0x%jx in physical memory\n", + (uintmax_t)ocb->bus_addr); #else printf("sbp_enqueue_ocb orb=0x%x in physical memory\n", ocb->bus_addr); #endif @@ -2483,11 +2486,11 @@ if (prev != NULL ) { SBP_DEBUG(1) #if __FreeBSD_version >= 500000 - printf("linking chain 0x%tx -> 0x%tx\n", prev->bus_addr, + printf("linking chain 0x%jx -> 0x%jx\n", + (uintmax_t)prev->bus_addr, (uintmax_t)ocb->bus_addr); #else - printf("linking chain 0x%x -> 0x%x\n", prev->bus_addr, + printf("linking chain 0x%x -> 0x%x\n", prev->bus_addr, ocb->bus_addr); #endif - ocb->bus_addr); END_DEBUG prev->orb[1] = htonl(ocb->bus_addr); prev->orb[0] = 0; @@ -2530,11 +2533,10 @@ SBP_DEBUG(0) sbp_show_sdev_info(sdev, 2); #if __FreeBSD_version >= 500000 - printf("sbp_abort_ocb 0x%tx\n", + printf("sbp_abort_ocb 0x%jx\n", (uintmax_t)ocb->bus_addr); #else - printf("sbp_abort_ocb 0x%x\n", + printf("sbp_abort_ocb 0x%x\n", ocb->bus_addr); #endif - ocb->bus_addr); END_DEBUG SBP_DEBUG(1) if (ocb->ccb != NULL) ==== //depot/projects/hammer/sys/fs/msdosfs/msdosfs_vfsops.c#7 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/fs/msdosfs/msdosfs_vfsops.c,v 1.100 2003/02/19 05:47:18 imp Exp $ */ +/* $FreeBSD: src/sys/fs/msdosfs/msdosfs_vfsops.c,v 1.101 2003/04/24 18:19:19 jhb Exp $ */ /* $NetBSD: msdosfs_vfsops.c,v 1.51 1997/11/17 15:36:58 ws Exp $ */ /*- @@ -359,6 +359,10 @@ */ SecPerClust = b50->bpbSecPerClust; pmp->pm_BytesPerSec = getushort(b50->bpbBytesPerSec); + if (pmp->pm_BytesPerSec < DEV_BSIZE) { + error = EINVAL; + goto error_exit; + } pmp->pm_ResSectors = getushort(b50->bpbResSectors); pmp->pm_FATs = b50->bpbFATs; pmp->pm_RootDirEnts = getushort(b50->bpbRootDirEnts); @@ -428,12 +432,14 @@ * - logical sector size: power of 2, >= block size * - sectors per cluster: power of 2, >= 1 * - number of sectors: >= 1, <= size of partition + * - number of FAT sectors: >= 1 */ if ( (SecPerClust == 0) || (SecPerClust & (SecPerClust - 1)) || (pmp->pm_BytesPerSec < DEV_BSIZE) || (pmp->pm_BytesPerSec & (pmp->pm_BytesPerSec - 1)) || (pmp->pm_HugeSectors == 0) + || (pmp->pm_FATsecs == 0) ) { error = EINVAL; goto error_exit; ==== //depot/projects/hammer/sys/i386/i386/trap.c#11 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $FreeBSD: src/sys/i386/i386/trap.c,v 1.249 2003/04/22 08:12:03 davidxu Exp $ + * $FreeBSD: src/sys/i386/i386/trap.c,v 1.250 2003/04/24 01:48:59 davidxu Exp $ */ /* @@ -212,7 +212,8 @@ printf( "pid %ld (%s): trap %d with interrupts disabled\n", (long)curproc->p_pid, curproc->p_comm, type); - else if (type != T_BPTFLT && type != T_TRCTRAP) { + else if (type != T_BPTFLT && type != T_TRCTRAP && + frame.tf_eip != (int)cpu_switch_load_gs) { /* * XXX not quite right, since this may be for a * multiple fault in user mode. @@ -224,8 +225,7 @@ * and we shouldn't enable interrupts while holding a * spin lock. */ - if (type != T_PAGEFLT && PCPU_GET(spinlocks) == NULL && - frame.tf_eip != (int)cpu_switch_load_gs) + if (type != T_PAGEFLT && PCPU_GET(spinlocks) == NULL) enable_intr(); } } @@ -481,9 +481,6 @@ */ if (frame.tf_eip == (int)cpu_switch_load_gs) { PCPU_GET(curpcb)->pcb_gs = 0; - printf( - "Process %d has bad %%gs, reset to zero\n", - p->p_pid); #if 0 PROC_LOCK(p); psignal(p, SIGBUS); ==== //depot/projects/hammer/sys/kern/kern_mac.c#14 (text+ko) ==== @@ -33,7 +33,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/kern/kern_mac.c,v 1.87 2003/04/18 19:57:37 rwatson Exp $ + * $FreeBSD: src/sys/kern/kern_mac.c,v 1.88 2003/04/24 04:31:24 alc Exp $ */ /* * Developed by the TrustedBSD Project. @@ -2093,11 +2093,13 @@ */ vm_object_reference(object); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + VM_OBJECT_LOCK(object); vm_object_page_clean(object, OFF_TO_IDX(offset), OFF_TO_IDX(offset + vme->end - vme->start + PAGE_MASK), OBJPC_SYNC); + VM_OBJECT_UNLOCK(object); VOP_UNLOCK(vp, 0, td); vm_object_deallocate(object); /* ==== //depot/projects/hammer/sys/kern/kern_proc.c#12 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)kern_proc.c 8.7 (Berkeley) 2/14/95 - * $FreeBSD: src/sys/kern/kern_proc.c,v 1.179 2003/04/18 20:17:05 jhb Exp $ + * $FreeBSD: src/sys/kern/kern_proc.c,v 1.182 2003/04/24 12:12:06 des Exp $ */ #include "opt_ktrace.h" @@ -662,10 +662,16 @@ kp->ki_size = vm->vm_map.size; kp->ki_rssize = vmspace_resident_count(vm); /*XXX*/ - if (p->p_sflag & PS_INMEM) + if (p->p_sflag & PS_INMEM) { kp->ki_rssize += UAREA_PAGES; - FOREACH_THREAD_IN_PROC(p, td0)/* XXXKSE: thread swapout check */ - kp->ki_rssize += KSTACK_PAGES; + FOREACH_THREAD_IN_PROC(p, td0) { + if (!TD_IS_SWAPPED(td0)) + kp->ki_rssize += td0->td_kstack_pages; + if (td0->td_altkstack_obj != NULL) + kp->ki_rssize += + td0->td_altkstack_pages; + } + } kp->ki_swrss = vm->vm_swrss; kp->ki_tsize = vm->vm_tsize; kp->ki_dsize = vm->vm_dsize; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Apr 24 13:54:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 51DF337B404; Thu, 24 Apr 2003 13:54:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 07FA137B401 for ; Thu, 24 Apr 2003 13:54:04 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9267943FA3 for ; Thu, 24 Apr 2003 13:54:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OKs30U039035 for ; Thu, 24 Apr 2003 13:54:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OKs3VV039028 for perforce@freebsd.org; Thu, 24 Apr 2003 13:54:03 -0700 (PDT) Date: Thu, 24 Apr 2003 13:54:03 -0700 (PDT) Message-Id: <200304242054.h3OKs3VV039028@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29628 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 20:54:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29628 Change 29628 by peter@peter_daintree on 2003/04/24 13:53:05 integrate i386_hammer (nop; no %gs handling in cpu_switch yet) Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/trap.c#29 integrate Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/trap.c#29 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $FreeBSD: src/sys/i386/i386/trap.c,v 1.249 2003/04/22 08:12:03 davidxu Exp $ + * $FreeBSD: src/sys/i386/i386/trap.c,v 1.250 2003/04/24 01:48:59 davidxu Exp $ */ /* From owner-p4-projects@FreeBSD.ORG Thu Apr 24 13:59:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2C35637B411; Thu, 24 Apr 2003 13:59:12 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D051037B410 for ; Thu, 24 Apr 2003 13:59:11 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 67FF843FBF for ; Thu, 24 Apr 2003 13:59:11 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OKxB0U042449 for ; Thu, 24 Apr 2003 13:59:11 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OKxALS042443 for perforce@freebsd.org; Thu, 24 Apr 2003 13:59:10 -0700 (PDT) Date: Thu, 24 Apr 2003 13:59:10 -0700 (PDT) Message-Id: <200304242059.h3OKxALS042443@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29630 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 20:59:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=29630 Change 29630 by peter@peter_daintree on 2003/04/24 13:58:40 This might be useful as a stopgap. Needs to be updated for IdlePML4 etc, but should be able to be hacked to know about the oversized IdlePTD at a minimum. Affected files ... .. //depot/projects/hammer/lib/libkvm/kvm_x86_64.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Apr 24 14:14:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6921737B404; Thu, 24 Apr 2003 14:14:31 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1E14037B401 for ; Thu, 24 Apr 2003 14:14:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BDCD043FBD for ; Thu, 24 Apr 2003 14:14:30 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OLEU0U053922 for ; Thu, 24 Apr 2003 14:14:30 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OLEU2A053914 for perforce@freebsd.org; Thu, 24 Apr 2003 14:14:30 -0700 (PDT) Date: Thu, 24 Apr 2003 14:14:30 -0700 (PDT) Message-Id: <200304242114.h3OLEU2A053914@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29631 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 21:14:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=29631 Change 29631 by peter@peter_daintree on 2003/04/24 14:13:59 fix comment - tf_rsp/tf_ss are always pushed/popped now. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/frame.h#7 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/frame.h#7 (text+ko) ==== @@ -70,7 +70,6 @@ int64_t tf_rip; int64_t tf_cs; int64_t tf_rflags; - /* below only when crossing rings (e.g. user to kernel) */ int64_t tf_rsp; int64_t tf_ss; }; @@ -100,7 +99,6 @@ int64_t if_rip; int64_t if_cs; int64_t if_rflags; - /* below only when crossing rings (e.g. user to kernel) */ int64_t if_rsp; int64_t if_ss; }; @@ -130,7 +128,6 @@ int64_t cf_rip; int64_t cf_cs; int64_t cf_rflags; - /* below only when crossing rings (e.g. user to kernel) */ int64_t cf_rsp; int64_t cf_ss; }; From owner-p4-projects@FreeBSD.ORG Thu Apr 24 14:32:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BB4F037B404; Thu, 24 Apr 2003 14:32:55 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 56C8B37B401 for ; Thu, 24 Apr 2003 14:32:55 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E080243FD7 for ; Thu, 24 Apr 2003 14:32:54 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OLWs0U067195 for ; Thu, 24 Apr 2003 14:32:54 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OLWsHD067187 for perforce@freebsd.org; Thu, 24 Apr 2003 14:32:54 -0700 (PDT) Date: Thu, 24 Apr 2003 14:32:54 -0700 (PDT) Message-Id: <200304242132.h3OLWsHD067187@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29634 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 21:32:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=29634 Change 29634 by peter@peter_daintree on 2003/04/24 14:32:37 oops. dont use "syscall" yet, that wont work too well. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/sigtramp.s#3 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/sigtramp.s#3 (text+ko) ==== @@ -60,7 +60,7 @@ lea SIGF_UC(%rsp),%rdi /* get ucontext_t */ pushq $0 /* junk to fake return addr. */ movq $SYS_sigreturn,%rax - syscall /* enter kernel with args */ + int $0x80 /* enter kernel with args */ 0: hlt /* trap priviliged instruction */ jmp 0b From owner-p4-projects@FreeBSD.ORG Thu Apr 24 14:33:59 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 099ED37B404; Thu, 24 Apr 2003 14:33:59 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 998A437B401 for ; Thu, 24 Apr 2003 14:33:57 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F3E8B43FBF for ; Thu, 24 Apr 2003 14:33:56 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OLXu0U068031 for ; Thu, 24 Apr 2003 14:33:56 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OLXuQG068023 for perforce@freebsd.org; Thu, 24 Apr 2003 14:33:56 -0700 (PDT) Date: Thu, 24 Apr 2003 14:33:56 -0700 (PDT) Message-Id: <200304242133.h3OLXuQG068023@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29635 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 21:34:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=29635 Change 29635 by peter@peter_daintree on 2003/04/24 14:33:41 Take a shot at making signals actually work. Damn this regparm thing. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/sigframe.h#5 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#75 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/sigframe.h#5 (text+ko) ==== @@ -35,18 +35,6 @@ * Signal frames, arguments passed to application signal handlers. */ struct sigframe { - /* - * The first four members may be used by applications. - * - * NOTE: The 4th argument is undocumented, ill commented - * on and seems to be somewhat BSD "standard". Handlers - * installed with sigvec may be using it. - */ - register_t sf_signum; - register_t sf_siginfo; /* code or pointer to sf_si */ - register_t sf_ucontext; /* points to sf_uc */ - register_t sf_addr; /* undocumented 4th arg */ - union { __siginfohandler_t *sf_action; __sighandler_t *sf_handler; ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#75 (text+ko) ==== @@ -269,22 +269,22 @@ sig = p->p_sysent->sv_sigtbl[_SIG_IDX(sig)]; /* Build the argument list for the signal handler. */ - sf.sf_signum = sig; - sf.sf_ucontext = (register_t)&sfp->sf_uc; + regs->tf_rdi = sig; /* arg 1 in %rdi */ + regs->tf_rdx = (register_t)&sfp->sf_uc; /* arg 3 in %rdx */ PROC_LOCK(p); if (SIGISMEMBER(p->p_sigacts->ps_siginfo, sig)) { /* Signal handler installed with SA_SIGINFO. */ - sf.sf_siginfo = (register_t)&sfp->sf_si; + regs->tf_rsi = (register_t)&sfp->sf_si; /* arg 2 in %rsi */ sf.sf_ahu.sf_action = (__siginfohandler_t *)catcher; /* Fill in POSIX parts */ sf.sf_si.si_signo = sig; sf.sf_si.si_code = code; - sf.sf_si.si_addr = (void *)regs->tf_err; + regs->tf_rcx = regs->tf_err; /* arg 4 in %rcx */ } else { /* Old FreeBSD-style arguments. */ - sf.sf_siginfo = code; - sf.sf_addr = regs->tf_err; + regs->tf_rsi = code; /* arg 2 in %rsi */ + regs->tf_rcx = regs->tf_err; /* arg 4 in %rcx */ sf.sf_ahu.sf_handler = catcher; } PROC_UNLOCK(p); From owner-p4-projects@FreeBSD.ORG Thu Apr 24 15:02:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5777937B404; Thu, 24 Apr 2003 15:02:34 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1C99937B401 for ; Thu, 24 Apr 2003 15:02:34 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5005543FDD for ; Thu, 24 Apr 2003 15:02:33 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OM2X0U087974 for ; Thu, 24 Apr 2003 15:02:33 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OM2WKY087965 for perforce@freebsd.org; Thu, 24 Apr 2003 15:02:32 -0700 (PDT) Date: Thu, 24 Apr 2003 15:02:32 -0700 (PDT) Message-Id: <200304242202.h3OM2WKY087965@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 Subject: PERFORCE change 29638 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 22:02:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=29638 Change 29638 by marcel@marcel_nfs on 2003/04/24 15:02:03 Improve exception handling: o Stop getting the faulting address directly from cr.ifa. There are faults/traps that set cr.iim. Instead of copying cr.iim to cr.ifa before constructing the trapframe, we now pass the value for cr.ifa as an argument to the code that constructs the trapframe. The added upside is that we don't need to save and restore cr.ifa when we get a data nested TLB. This removes a couple of serializations. For external interrupts we pass the processor APIC ID as the value to store in the trapframe. Both cr.ifa and cr.iim are undefined in that case and we might as well put something potential useful there. o Don't use a translation register when inserting a mapping on a data nested TLB. The problem with a translation register is that we don't keep it in sync with data structures in the kernel. This can lead to using faulty translations. The problem I was trying to solve by using a translation register is one that didn't exist. See next bullet. o We can get 2 distinct TLB misses when restoring from a trapframe. The first is the very first load out of the trapframe itself. This one we don't care about. It will be handled like any other TLB miss. The second one was the one I didn't see and that the possible TLB miss on the loadrs instruction. The register stack does not have to be mapped currently and since the loadrs is a mandatory RSE operation, faults will occur. The problem here is that most of the context has already been restored, so we can not treat it as a regular miss. Hence, we force a data nested TLB by disabling interrupt collection. Of course, now that we have 2 places where we expect data nested TLB faults, we need to sync register usage between those two places and the data nested TLB fault handler. This involves a lot of manual register re-allocation :-( This solves the sporadic machine checks and hangs I was getting and slightly improves the overall handling of exceptions. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/exception.s#17 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/exception.s#17 (text+ko) ==== @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2003 Marcel Moolenaar * Copyright (c) 2000 Doug Rabson * All rights reserved. * @@ -45,6 +46,10 @@ * Arguments: * r16 address of bundle that contains the branch. The * return address will be the next bundle. + * r17 the value to save as ifa in the trapframe. This + * normally is cr.ifa, but some interruptions set + * set cr.iim and not cr.ifa. + * * Returns: * p15 interrupted from user stack * p14 interrupted from kernel stack @@ -55,36 +60,34 @@ */ ENTRY(exception_save, 0) { .mii - mov r17=sp + mov r20=ar.unat + extr.u r31=sp,61,3 mov r18=pr - extr.u r31=sp,61,3 ;; } { .mmi cmp.le p14,p15=5,r31 ;; -(p15) mov r31=ar.k7 // kernel memory stack -(p14) mov r31=sp +(p15) mov r23=ar.k7 // kernel memory stack +(p14) mov r23=sp ;; } -{ .mmi - add r30=-SIZEOF_TRAPFRAME,r31 +{ .mii + mov r21=ar.rsc + add r30=-SIZEOF_TRAPFRAME,r23 ;; - mov r20=ar.unat - dep sp=0,r30,0,10 + dep r30=0,r30,0,10 ;; } { .mmi - mov r21=ar.rsc mov ar.rsc=0 - sub r19=r31,sp + sub r19=r23,r30 + add r31=8,r30 ;; } -{ .mmi - rsm psr.i - ;; - srlz.d - mov r22=ip +{ .mlx + mov r22=cr.iip + movl r26=exception_save_restart ;; } @@ -95,91 +98,92 @@ * we get a data nested TLB fault, it will be on the very first * write. Since the data nested TLB fault does not preserve any * state, we have to be careful what we clobber. Consequently, we - * have to be careful what we use here. The registers that must - * not be clobbered by the data nested TLB fault handler on top - * of any interrupted state we haven't saved yet (ie almost all - * of it) are: p14, p15, sp and r16-r22. + * have to be careful what we use here. Below a list of registers + * that are currently alive: + * r16,r17=arguments + * r18=pr, r19=length, r20=unat, r21=rsc, r22=iip, r23=TOS + * r26=restart point + * r30,r31=trapframe pointers + * p14,p15=memory stack switch */ exception_save_restart: { .mmi - st8 [sp]=r19 // length - mov r22=cr.iip - add r31=8,sp + st8 [r30]=r19,16 // length + st8 [r31]=r0,16 // flags + add r19=16,r19 ;; } { .mmi - st8 [r31]=r0,16 // flags - mov r29=ar.bspstore - add r30=16,sp + st8.spill [r30]=sp,16 // sp + st8 [r31]=r20,16 // unat + sub sp=r23,r19 ;; } { .mmi - st8.spill [r30]=r17,16 // sp - st8 [r31]=r20,16 // unat - mov r27=b0 + mov r19=ar.rnat + mov r20=ar.bspstore + mov r23=rp ;; } + // r18=pr, r19=rnat, r20=bspstore, r21=rsc, r22=iip, r23=rp { .mmi - st8 [r30]=r27,16 // rp + st8 [r30]=r23,16 // rp st8 [r31]=r18,16 // pr - mov r27=ar.pfs + mov r24=ar.pfs ;; } { .mmb - st8 [r30]=r27,16 // pfs - st8 [r31]=r29,16 // bspstore + st8 [r30]=r24,16 // pfs + st8 [r31]=r20,16 // bspstore cover ;; } { .mmi - mov r17=ar.rnat mov r18=ar.fpsr - extr.u r28=r29,61,3 + mov r23=cr.ipsr + extr.u r24=r20,61,3 ;; } + // r18=fpsr, r19=rnat, r20=bspstore, r21=rsc, r22=iip, r23=ipsr { .mmi - st8 [r30]=r17,16 // rnat + st8 [r30]=r19,16 // rnat st8 [r31]=r0,16 // __spare - cmp.le p12,p13=5,r28 + cmp.le p12,p13=5,r24 ;; } { .mmi st8.spill [r30]=r13,16 // tp st8 [r31]=r21,16 // rsc - nop 0 + tbit.nz p11,p10=r23,14 // p11=interrupts enabled ;; } { .mmi - mov r17=cr.ipsr -(p13) mov r29=ar.k6 // kernel register stack + st8 [r30]=r18,16 // fpsr +(p13) mov r20=ar.k6 // kernel register stack nop 0 ;; } + // r20=bspstore, r22=iip, r23=ipsr { .mmi - st8 [r30]=r18,16 // fpsr - st8 [r31]=r17,16 // psr - tbit.nz p11,p10=r17,14 // p11=interrupts enabled + st8 [r31]=r23,16 // psr + mov ar.bspstore=r20 + nop 0 ;; } { .mmi - mov ar.bspstore=r29 - ;; mov r18=ar.bsp - nop 0 ;; -} -{ .mmi - st8.spill [r30]=gp,16 // gp mov r19=cr.ifs - sub r18=r18,r29 + sub r18=r18,r20 ;; } { .mmi + st8.spill [r30]=gp,16 // gp st8 [r31]=r18,16 // ndirty - mov r20=cr.ifa nop 0 ;; } + // r19=ifs, r22=iip { .mmi st8 [r30]=r19,16 // cfm st8 [r31]=r22,16 // iip @@ -187,7 +191,7 @@ ;; } { .mmi - st8 [r30]=r20 // ifa + st8 [r30]=r17 // ifa mov r18=cr.isr add r29=16,r30 ;; @@ -354,17 +358,10 @@ * sp+16 trapframe pointer */ ENTRY(exception_restore, 0) - /* - * Read the length of the trapframe with interrupts enabled and - * interrupt collection enabled. That way we can safely trap on - * the load in case the address translation of the trapframe has - * been flushed. - */ { .mmi rsm psr.i - ;; - srlz.d add sp=16,sp + nop 0 ;; } { .mmi @@ -373,7 +370,7 @@ add r8=SIZEOF_SPECIAL+16,sp ;; } - + // The next load can trap. Let it be... ldf.fill f15=[r2],-32 // f15 ldf.fill f14=[r3],-32 // f14 ;; @@ -469,19 +466,26 @@ ld8.fill r3=[r3] // r3 ;; } - + // We want nested TLB faults from here on... + rsm psr.ic|psr.i ld8.fill r2=[r2] // r2 + nop 0 + ;; + srlz.d ld8.fill sp=[r31],16 // sp + nop 0 ;; + ld8 r17=[r30],16 // unat ld8 r29=[r31],16 // rp ;; ld8 r18=[r30],16 // pr - ld8 r19=[r31],16 // pfs + ld8 r28=[r31],16 // pfs mov rp=r29 ;; ld8 r20=[r30],24 // bspstore ld8 r21=[r31],24 // rnat + mov ar.pfs=r28 ;; ld8.fill r29=[r30],16 // tp ld8 r22=[r31],16 // rsc @@ -500,19 +504,31 @@ } { .mmb ld8 r26=[r30] // cfm - ld8 r27=[r31] // ip + ld8 r19=[r31] // ip (p14) br.cond.sptk 1f ;; } { .mii // Switch register stack - alloc r31=ar.pfs,0,0,0,0 // discard current frame - shl r30=r25,16 // value for ar.rsc + alloc r30=ar.pfs,0,0,0,0 // discard current frame + shl r31=r25,16 // value for ar.rsc dep r24=-1,r24,19,1 // XXX disable high FP. ;; } + // The loadrs can fault if the backing store is not currently + // mapped. We assured forward progress by getting everything we + // need from the trapframe so that we don't care if the CPU + // purges that translation when it needs to insert a new one for + // the backing store. { .mmi - mov ar.rsc=r30 // setup for loadrs + mov ar.rsc=r31 // setup for loadrs + mov ar.k7=r16 + mov r13=r29 + ;; +} +exception_restore_restart: +{ .mmi + mov r30=ar.bspstore ;; loadrs // load user regs nop 0 @@ -525,27 +541,19 @@ dep r31=0,r31,0,9 ;; } - +{ .mmb mov ar.k6=r31 - mov ar.k7=r16 - ;; mov ar.rnat=r21 - mov r13=r29 + nop 0 ;; - +} 1: -{ .mmi - rsm psr.ic - ;; - srlz.d +{ .mmb + mov ar.unat=r17 + mov cr.iip=r19 nop 0 } { .mmi - mov ar.unat=r17 - mov cr.iip=r27 - mov ar.pfs=r19 -} -{ .mmi mov cr.ipsr=r24 mov cr.ifs=r26 mov pr=r18,0x1fffe @@ -568,9 +576,9 @@ * which will restore the interrupted state before executing an rfi to * resume it. */ -#define TRAP(_n_) \ +#define TRAP(_n_, _ifa_) \ { .mib ; \ - nop _n_ ; \ + mov r17=_ifa_ ; \ mov r16=ip ; \ br.sptk exception_save ; \ } ; \ @@ -579,9 +587,9 @@ alloc r15=ar.pfs,0,0,2,0 ; \ mov out0=_n_ ;; \ } ; \ -{ .mmb ; \ - mov out1=sp ; \ - add sp=-16,sp ; \ +{ .mfb ; \ + add out1=16,sp ; \ + nop 0 ; \ br.call.sptk rp=trap ; \ } ; \ { .mfb ; \ @@ -617,7 +625,7 @@ ia64_vector_table: IVT_ENTRY(VHPT_Translation, 0x0000) - TRAP(0) + TRAP(0, cr.ifa) IVT_END(VHPT_Translation) IVT_ENTRY(Instruction_TLB, 0x0400) @@ -694,7 +702,7 @@ ;; srlz.d ;; - TRAP(20) // Page Not Present trap + TRAP(20, cr.ifa) // Page Not Present trap IVT_END(Instruction_TLB) IVT_ENTRY(Data_TLB, 0x0800) @@ -771,7 +779,7 @@ ;; srlz.d ;; - TRAP(20) // Page Not Present trap + TRAP(20, cr.ifa) // Page Not Present trap IVT_END(Data_TLB) IVT_ENTRY(Alternate_Instruction_TLB, 0x0c00) @@ -796,7 +804,7 @@ ;; rfi 9: mov pr=r18,0x1ffff // restore predicates - TRAP(3) + TRAP(3, cr.ifa) IVT_END(Alternate_Instruction_TLB) IVT_ENTRY(Alternate_Data_TLB, 0x1000) @@ -821,101 +829,92 @@ ;; rfi 9: mov pr=r18,0x1ffff // restore predicates - TRAP(4) + TRAP(4, cr.ifa) IVT_END(Alternate_Data_TLB) IVT_ENTRY(Data_Nested_TLB, 0x1400) - // See exception_save. Things get tricky here. Don't use p14, p15, - // sp and r16-r22. We use physical addressing to avoid double - // nested faults. Since all virtual addresses we encounter here - // are direct mapped region 7 addresses, we will have no problem + // See exception_save_restart and exception_restore_restart for the + // contexts that may cause a data nested TLB. We can only use the + // banked general registers and predicates, but don't use: + // p14 & p15 - Set in exception save + // r16 & r17 - Arguments to exception save + // r30 - Faulting address (modulo page size) + // We assume r30 has the virtual addresses that relate to the data + // nested TLB fault. The address does not have to be exact, as long + // as it's in the same page. We use physical addressing to avoid + // double nested faults. Since all virtual addresses we encounter + // here are direct mapped region 7 addresses, we have no problem // constructing physical addresses. { .mlx - mov r23=cr.ifa - movl r25=ia64_kptdir + rsm psr.dt + movl r27=ia64_kptdir ;; } { .mii - mov r24=cr.itir - dep r25=0,r25,61,3 - extr.u r26=sp,PAGE_SHIFT,61-PAGE_SHIFT + srlz.d + dep r27=0,r27,61,3 + extr.u r28=r30,PAGE_SHIFT,61-PAGE_SHIFT ;; } { .mii - rsm psr.dt - shr.u r27=r26,PAGE_SHIFT-5 // dir index - extr.u r28=r26,0,PAGE_SHIFT-5 // pte index + ld8 r27=[r27] + shr.u r29=r28,PAGE_SHIFT-5 // dir index + extr.u r28=r28,0,PAGE_SHIFT-5 // pte index ;; } { .mmi - srlz.d - ld8 r25=[r25] - shl r28=r28,5 + shladd r27=r29,3,r27 + ;; + mov cr.ifa=r30 + dep r27=0,r27,61,3 ;; } { .mmi - mov cr.ifa=sp - shladd r25=r27,3,r25 - add r22=16,r22 + ld8 r27=[r27] + mov r29=rr[r30] + shl r28=r28,5 ;; } { .mii - mov r27=rr[sp] - dep r25=0,r25,61,3 + add r27=r27,r28 // address of pte + dep r29=0,r29,0,2 ;; - dep r27=0,r27,0,2 -} -{ .mlx - ld8 r25=[r25] - movl r29=exception_save_restart + dep r27=0,r27,61,3 ;; } -{ .mii - mov cr.itir=r27 - add r25=r25,r28 // address of pte +{ .mmi + ld8 r28=[r27] ;; - dep r25=0,r25,61,3 + mov cr.itir=r29 + or r28=PTE_D|PTE_A,r28 ;; } -{ .mmi - ld8 r26=[r25] - ;; - or r26=PTE_D|PTE_A,r26 - cmp.eq p13,p0=r22,r29 // exception_save triggered? +{ .mlx + st8 [r27]=r28 + movl r29=exception_save_restart ;; } { .mmi - st8 [r25]=r26 + itc.d r28 ;; ssm psr.dt - mov r28=4 + cmp.eq p12,p13=r26,r29 + ;; } -{ .mmi - itr.d dtr[r28]=r26 - ;; +{ .mbb srlz.d - nop 0 -} -{ .mmb - mov cr.ifa=r23 - mov cr.itir=r24 -(p13) br.sptk exception_save_restart - ;; -} -{ .mfb - break 0x80100 - break 0x80100 - break 0x80100 +(p12) br.sptk exception_save_restart +(p13) br.sptk exception_restore_restart ;; } IVT_END(Data_Nested_TLB) IVT_ENTRY(Instruction_Key_Miss, 0x1800) - TRAP(6) + TRAP(6, cr.ifa) IVT_END(Instruction_Key_Miss) IVT_ENTRY(Data_Key_Miss, 0x1c00) - TRAP(7) + TRAP(7, cr.ifa) IVT_END(Data_Key_Miss) IVT_ENTRY(Dirty_Bit, 0x2000) @@ -984,7 +983,7 @@ br.cond.sptk.few 1b // loop 9: mov pr=r17,0x1ffff // restore predicates - TRAP(8) // die horribly + TRAP(8, cr.ifa) // die horribly IVT_END(Dirty_Bit) IVT_ENTRY(Instruction_Access_Bit, 0x2400) @@ -1053,7 +1052,7 @@ br.cond.sptk.few 1b // loop 9: mov pr=r17,0x1ffff // restore predicates - TRAP(9) + TRAP(9, cr.ifa) IVT_END(Instruction_Access_Bit) IVT_ENTRY(Data_Access_Bit, 0x2800) @@ -1122,38 +1121,25 @@ br.cond.sptk.few 1b // loop 9: mov pr=r17,0x1ffff // restore predicates - TRAP(10) + TRAP(10, cr.ifa) IVT_END(Data_Access_Bit) IVT_ENTRY(Break_Instruction, 0x2c00) -{ .mmi - mov r16=cr.iim - ;; - mov cr.ifa=r16 - nop 0 - ;; -} { .mib - srlz.d + mov r17=cr.iim mov r16=ip br.sptk exception_save ;; } { .mmi + alloc r15=ar.pfs,0,0,2,0 flushrs -(p11) ssm psr.i - nop 0 - ;; -} -{ .mmi - alloc r15=ar.pfs,0,0,2,0 mov out0=11 - mov out1=sp ;; } -{ .mfb - add sp=-16,sp - nop 0 +{ .mib +(p11) ssm psr.i + add out1=16,sp br.call.sptk rp=trap ;; } @@ -1167,15 +1153,15 @@ IVT_ENTRY(External_Interrupt, 0x3000) { .mib - nop 12 + mov r17=cr.lid // cr.iim and cr.ifa are undefined. mov r16=ip br.sptk exception_save ;; } -{ .mmi +{ .mmb 2: alloc r14=ar.pfs,0,0,2,0 // make a frame for calling with - mov out1=sp - add sp=-16,sp + add out1=16,sp + nop 0 } 3: mov out0=cr.ivr // find interrupt vector @@ -1184,8 +1170,6 @@ (p15) br.dpnt.few exception_restore // if spurious, we are done ;; ssm psr.i // re-enable interrupts - ;; // now that we are in-progress - srlz.d br.call.sptk.many rp=interrupt // call high-level handler ;; rsm psr.i // disable interrupts @@ -1199,245 +1183,221 @@ IVT_END(External_Interrupt) IVT_ENTRY(Reserved_3400, 0x3400) - TRAP(13) + TRAP(13, cr.ifa) IVT_END(Reserved_3400) IVT_ENTRY(Reserved_3800, 0x3800) - TRAP(14) + TRAP(14, cr.ifa) IVT_END(Reserved_3800) IVT_ENTRY(Reserved_3c00, 0x3c00) - TRAP(15) + TRAP(15, cr.ifa) IVT_END(Reserved_3c00) IVT_ENTRY(Reserved_4000, 0x4000) - TRAP(16) + TRAP(16, cr.ifa) IVT_END(Reserved_4000) IVT_ENTRY(Reserved_4400, 0x4400) - TRAP(17) + TRAP(17, cr.ifa) IVT_END(Reserved_4400) IVT_ENTRY(Reserved_4800, 0x4800) - TRAP(18) + TRAP(18, cr.ifa) IVT_END(Reserved_4800) IVT_ENTRY(Reserved_4c00, 0x4c00) - TRAP(19) + TRAP(19, cr.ifa) IVT_END(Reserved_4c00) IVT_ENTRY(Page_Not_Present, 0x5000) - TRAP(20) + TRAP(20, cr.ifa) IVT_END(Page_Not_Present) IVT_ENTRY(Key_Permission, 0x5100) - TRAP(21) + TRAP(21, cr.ifa) IVT_END(Key_Permission) IVT_ENTRY(Instruction_Access_Rights, 0x5200) - TRAP(22) + TRAP(22, cr.ifa) IVT_END(Instruction_Access_Rights) IVT_ENTRY(Data_Access_Rights, 0x5300) - TRAP(23) + TRAP(23, cr.ifa) IVT_END(Data_Access_Rights) IVT_ENTRY(General_Exception, 0x5400) - TRAP(24) + TRAP(24, cr.ifa) IVT_END(General_Exception) IVT_ENTRY(Disabled_FP_Register, 0x5500) - TRAP(25) + TRAP(25, cr.ifa) IVT_END(Disabled_FP_Register) IVT_ENTRY(NaT_Consumption, 0x5600) - TRAP(26) + TRAP(26, cr.ifa) IVT_END(NaT_Consumption) IVT_ENTRY(Speculation, 0x5700) -{ .mmi - mov r16=cr.iim - ;; - mov cr.ifa=r16 - nop 0 - ;; -} -{ .mfb - srlz.d - nop 0 - nop 0 -} - TRAP(27) + TRAP(27, cr.iim) IVT_END(Speculation) IVT_ENTRY(Reserved_5800, 0x5800) - TRAP(28) + TRAP(28, cr.ifa) IVT_END(Reserved_5800) IVT_ENTRY(Debug, 0x5900) - TRAP(29) + TRAP(29, cr.ifa) IVT_END(Debug) IVT_ENTRY(Unaligned_Reference, 0x5a00) - TRAP(30) + TRAP(30, cr.ifa) IVT_END(Unaligned_Reference) IVT_ENTRY(Unsupported_Data_Reference, 0x5b00) - TRAP(31) + TRAP(31, cr.ifa) IVT_END(Unsupported_Data_Reference) IVT_ENTRY(Floating_Point_Fault, 0x5c00) - TRAP(32) + TRAP(32, cr.ifa) IVT_END(Floating_Point_Fault) IVT_ENTRY(Floating_Point_Trap, 0x5d00) - TRAP(33) + TRAP(33, cr.ifa) IVT_END(Floating_Point_Trap) IVT_ENTRY(Lower_Privilege_Transfer_Trap, 0x5e00) - TRAP(34) + TRAP(34, cr.ifa) IVT_END(Lower_Privilege_Transfer_Trap) IVT_ENTRY(Taken_Branch_Trap, 0x5f00) - TRAP(35) + TRAP(35, cr.ifa) IVT_END(Taken_Branch_Trap) IVT_ENTRY(Single_Step_Trap, 0x6000) - TRAP(36) + TRAP(36, cr.ifa) IVT_END(Single_Step_Trap) IVT_ENTRY(Reserved_6100, 0x6100) - TRAP(37) + TRAP(37, cr.ifa) IVT_END(Reserved_6100) IVT_ENTRY(Reserved_6200, 0x6200) - TRAP(38) + TRAP(38, cr.ifa) IVT_END(Reserved_6200) IVT_ENTRY(Reserved_6300, 0x6300) - TRAP(39) + TRAP(39, cr.ifa) IVT_END(Reserved_6300) IVT_ENTRY(Reserved_6400, 0x6400) - TRAP(40) + TRAP(40, cr.ifa) IVT_END(Reserved_6400) IVT_ENTRY(Reserved_6500, 0x6500) - TRAP(41) + TRAP(41, cr.ifa) IVT_END(Reserved_6500) IVT_ENTRY(Reserved_6600, 0x6600) - TRAP(42) + TRAP(42, cr.ifa) IVT_END(Reserved_6600) IVT_ENTRY(Reserved_6700, 0x6700) - TRAP(43) + TRAP(43, cr.ifa) IVT_END(Reserved_6700) IVT_ENTRY(Reserved_6800, 0x6800) - TRAP(44) + TRAP(44, cr.ifa) IVT_END(Reserved_6800) IVT_ENTRY(IA_32_Exception, 0x6900) - TRAP(45) + TRAP(45, cr.ifa) IVT_END(IA_32_Exception) IVT_ENTRY(IA_32_Intercept, 0x6a00) -{ .mmi - mov r16=cr.iim - ;; - mov cr.ifa=r16 - nop 0 - ;; -} -{ .mfb - srlz.d - nop 0 - nop 0 -} - TRAP(46) + TRAP(46, cr.iim) IVT_END(IA_32_Intercept) IVT_ENTRY(IA_32_Interrupt, 0x6b00) - TRAP(47) + TRAP(47, cr.ifa) IVT_END(IA_32_Interrupt) IVT_ENTRY(Reserved_6c00, 0x6c00) - TRAP(48) + TRAP(48, cr.ifa) IVT_END(Reserved_6c00) IVT_ENTRY(Reserved_6d00, 0x6d00) - TRAP(49) + TRAP(49, cr.ifa) IVT_END(Reserved_6d00) IVT_ENTRY(Reserved_6e00, 0x6e00) - TRAP(50) + TRAP(50, cr.ifa) IVT_END(Reserved_6e00) IVT_ENTRY(Reserved_6f00, 0x6f00) - TRAP(51) + TRAP(51, cr.ifa) IVT_END(Reserved_6f00) IVT_ENTRY(Reserved_7000, 0x7000) - TRAP(52) + TRAP(52, cr.ifa) IVT_END(Reserved_7000) IVT_ENTRY(Reserved_7100, 0x7100) - TRAP(53) + TRAP(53, cr.ifa) IVT_END(Reserved_7100) IVT_ENTRY(Reserved_7200, 0x7200) - TRAP(54) + TRAP(54, cr.ifa) IVT_END(Reserved_7200) IVT_ENTRY(Reserved_7300, 0x7300) - TRAP(55) + TRAP(55, cr.ifa) IVT_END(Reserved_7300) IVT_ENTRY(Reserved_7400, 0x7400) - TRAP(56) + TRAP(56, cr.ifa) IVT_END(Reserved_7400) IVT_ENTRY(Reserved_7500, 0x7500) - TRAP(57) + TRAP(57, cr.ifa) IVT_END(Reserved_7500) IVT_ENTRY(Reserved_7600, 0x7600) - TRAP(58) + TRAP(58, cr.ifa) IVT_END(Reserved_7600) IVT_ENTRY(Reserved_7700, 0x7700) - TRAP(59) + TRAP(59, cr.ifa) IVT_END(Reserved_7700) IVT_ENTRY(Reserved_7800, 0x7800) - TRAP(60) + TRAP(60, cr.ifa) IVT_END(Reserved_7800) IVT_ENTRY(Reserved_7900, 0x7900) - TRAP(61) + TRAP(61, cr.ifa) IVT_END(Reserved_7900) IVT_ENTRY(Reserved_7a00, 0x7a00) - TRAP(62) + TRAP(62, cr.ifa) IVT_END(Reserved_7a00) IVT_ENTRY(Reserved_7b00, 0x7b00) - TRAP(63) + TRAP(63, cr.ifa) IVT_END(Reserved_7b00) IVT_ENTRY(Reserved_7c00, 0x7c00) - TRAP(64) + TRAP(64, cr.ifa) IVT_END(Reserved_7c00) IVT_ENTRY(Reserved_7d00, 0x7d00) - TRAP(65) + TRAP(65, cr.ifa) IVT_END(Reserved_7d00) IVT_ENTRY(Reserved_7e00, 0x7e00) - TRAP(66) + TRAP(66, cr.ifa) IVT_END(Reserved_7e00) IVT_ENTRY(Reserved_7f00, 0x7f00) - TRAP(67) + TRAP(67, cr.ifa) IVT_END(Reserved_7f00) From owner-p4-projects@FreeBSD.ORG Thu Apr 24 15:08:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 32B3437B404; Thu, 24 Apr 2003 15:08:42 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C195837B401 for ; Thu, 24 Apr 2003 15:08:41 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 570B943F3F for ; Thu, 24 Apr 2003 15:08:41 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OM8f0U093540 for ; Thu, 24 Apr 2003 15:08:41 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OM8eED093535 for perforce@freebsd.org; Thu, 24 Apr 2003 15:08:40 -0700 (PDT) Date: Thu, 24 Apr 2003 15:08:40 -0700 (PDT) Message-Id: <200304242208.h3OM8eED093535@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29639 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 22:08:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=29639 Change 29639 by peter@peter_daintree on 2003/04/24 15:08:01 AST processing is kind of useful. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#19 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#19 (text+ko) ==== @@ -224,7 +224,6 @@ /* * Check if ASTs can be handled now. */ -#if 0 testb $SEL_RPL_MASK,TF_CS(%rsp) /* are we returning to user mode? */ jz doreti_exit /* can't handle ASTs now if not */ @@ -251,7 +250,6 @@ * registers. The fault is handled in trap.c. */ doreti_exit: -#endif MEXITCOUNT popq %r15 From owner-p4-projects@FreeBSD.ORG Thu Apr 24 15:52:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B789537B404; Thu, 24 Apr 2003 15:52:35 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 658CD37B401 for ; Thu, 24 Apr 2003 15:52:35 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1100A43F3F for ; Thu, 24 Apr 2003 15:52:35 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OMqY0U024702 for ; Thu, 24 Apr 2003 15:52:34 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OMqY6d024693 for perforce@freebsd.org; Thu, 24 Apr 2003 15:52:34 -0700 (PDT) Date: Thu, 24 Apr 2003 15:52:34 -0700 (PDT) Message-Id: <200304242252.h3OMqY6d024693@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29640 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 22:52:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=29640 Change 29640 by peter@peter_daintree on 2003/04/24 15:51:35 kill pcb_gs (wont look like this) s/pcb_psl/pcb_rflags/ for truth Affected files ... .. //depot/projects/hammer/sys/x86_64/include/pcb.h#12 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/pcb.h#12 (text+ko) ==== @@ -56,6 +56,7 @@ register_t pcb_rsp; register_t pcb_rbx; register_t pcb_rip; + register_t pcb_rflags; struct savefpu pcb_save; u_long pcb_flags; @@ -63,8 +64,6 @@ #define PCB_NPXINITDONE 0x08 /* fpu state is initialized */ caddr_t pcb_onfault; /* copyin/out fault recovery */ - register_t pcb_gs; - register_t pcb_psl;/* process status long */ }; #ifdef _KERNEL From owner-p4-projects@FreeBSD.ORG Thu Apr 24 15:52:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 139AE37B404; Thu, 24 Apr 2003 15:52:37 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D88A37B419 for ; Thu, 24 Apr 2003 15:52:36 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E88BC43F3F for ; Thu, 24 Apr 2003 15:52:35 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OMqZ0U024720 for ; Thu, 24 Apr 2003 15:52:35 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OMqZdQ024708 for perforce@freebsd.org; Thu, 24 Apr 2003 15:52:35 -0700 (PDT) Date: Thu, 24 Apr 2003 15:52:35 -0700 (PDT) Message-Id: <200304242252.h3OMqZdQ024708@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29641 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 22:52:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=29641 Change 29641 by peter@peter_daintree on 2003/04/24 15:52:17 kill pcb_gs and references s/pcb_psl/pcb_rflags/i Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#19 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#76 edit .. //depot/projects/hammer/sys/x86_64/x86_64/swtch.s#19 edit .. //depot/projects/hammer/sys/x86_64/x86_64/vm_machdep.c#22 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#19 (text+ko) ==== @@ -119,10 +119,8 @@ ASSYM(PCB_RSP, offsetof(struct pcb, pcb_rsp)); ASSYM(PCB_RBX, offsetof(struct pcb, pcb_rbx)); ASSYM(PCB_RIP, offsetof(struct pcb, pcb_rip)); +ASSYM(PCB_RFLAGS, offsetof(struct pcb, pcb_rflags)); -ASSYM(PCB_GS, offsetof(struct pcb, pcb_gs)); -ASSYM(PCB_PSL, offsetof(struct pcb, pcb_psl)); - ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags)); ASSYM(PCB_SAVEFPU, offsetof(struct pcb, pcb_save)); ASSYM(PCB_SAVEFPU_SIZE, sizeof(struct savefpu)); @@ -139,7 +137,6 @@ ASSYM(SIGF_HANDLER, offsetof(struct sigframe, sf_ahu.sf_handler)); ASSYM(SIGF_UC, offsetof(struct sigframe, sf_uc)); ASSYM(UC_EFLAGS, offsetof(ucontext_t, uc_mcontext.mc_rflags)); -ASSYM(UC_GS, offsetof(ucontext_t, uc_mcontext.mc_gs)); ASSYM(ENOENT, ENOENT); ASSYM(EFAULT, EFAULT); ASSYM(ENAMETOOLONG, ENAMETOOLONG); ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#76 (text+ko) ==== @@ -464,14 +464,7 @@ u_long ps_strings; { struct trapframe *regs = td->td_frame; -#if 0 - struct pcb *pcb = td->td_pcb; - /* Reset pc->pcb_gs and %gs before possibly invalidating it. */ - pcb->pcb_gs = _udatasel; - load_gs(_udatasel); -#endif - bzero((char *)regs, sizeof(struct trapframe)); regs->tf_rip = entry; regs->tf_rsp = stack; @@ -1312,7 +1305,6 @@ regs->r_rsp = tp->tf_rsp; regs->r_ss = tp->tf_ss; pcb = td->td_pcb; - regs->r_gs = pcb->pcb_gs; return (0); } @@ -1339,7 +1331,6 @@ tp->tf_rsp = regs->r_rsp; tp->tf_ss = regs->r_ss; pcb = td->td_pcb; - pcb->pcb_gs = regs->r_gs; return (0); } @@ -1426,7 +1417,6 @@ PROC_LOCK(curthread->td_proc); mcp->mc_onstack = sigonstack(tp->tf_rsp); PROC_UNLOCK(curthread->td_proc); - mcp->mc_gs = td->td_pcb->pcb_gs; mcp->mc_rdi = tp->tf_rdi; mcp->mc_rsi = tp->tf_rsi; mcp->mc_rbp = tp->tf_rbp; @@ -1474,7 +1464,6 @@ tp->tf_rflags = rflags; tp->tf_rsp = mcp->mc_rsp; tp->tf_ss = mcp->mc_ss; - td->td_pcb->pcb_gs = mcp->mc_gs; ret = 0; } return (ret); ==== //depot/projects/hammer/sys/x86_64/x86_64/swtch.s#19 (text+ko) ==== @@ -104,7 +104,7 @@ movq %r14,PCB_R14(%rdx) movq %r15,PCB_R15(%rdx) pushfq /* PSL */ - popq PCB_PSL(%rdx) + popq PCB_RFLAGS(%rdx) /* have we used fp, and need a save? */ cmpq %rdi,PCPU(FPCURTHREAD) @@ -162,7 +162,7 @@ movq PCB_R15(%rdx),%r15 movq PCB_RIP(%rdx),%rax movq %rax,(%rsp) - pushq PCB_PSL(%rdx) + pushq PCB_RFLAGS(%rdx) popfq movq %rdx, PCPU(CURPCB) @@ -257,7 +257,7 @@ movq %r14,PCB_R14(%rcx) movq %r15,PCB_R15(%rcx) pushfq - popq PCB_PSL(%rcx) + popq PCB_RFLAGS(%rcx) /* * If fpcurthread == NULL, then the npx h/w state is irrelevant and the ==== //depot/projects/hammer/sys/x86_64/x86_64/vm_machdep.c#22 (text+ko) ==== @@ -100,8 +100,6 @@ return; /* Ensure that p1's pcb is up to date. */ - if (td1 == curthread) - td1->td_pcb->pcb_gs = rgs(); savecrit = intr_disable(); if (PCPU_GET(fpcurthread) == td1) npxsave(&td1->td_pcb->pcb_save); @@ -140,12 +138,11 @@ pcb2->pcb_rsp = (register_t)td2->td_frame - sizeof(void *); pcb2->pcb_rbx = (register_t)td2; /* fork_trampoline argument */ pcb2->pcb_rip = (register_t)fork_trampoline; - pcb2->pcb_psl = td2->td_frame->tf_rflags & ~PSL_I; /* ints disabled */ + pcb2->pcb_rflags = td2->td_frame->tf_rflags & ~PSL_I; /* ints disabled */ /*- * pcb2->pcb_savefpu: cloned above. * pcb2->pcb_flags: cloned above. * pcb2->pcb_onfault: cloned above (always NULL here?). - * pcb2->pcb_gs: cloned above. */ /* From owner-p4-projects@FreeBSD.ORG Thu Apr 24 15:53:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CF5AE37B405; Thu, 24 Apr 2003 15:53:38 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 775EB37B401 for ; Thu, 24 Apr 2003 15:53:38 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DB9A343FAF for ; Thu, 24 Apr 2003 15:53:37 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OMrb0U025654 for ; Thu, 24 Apr 2003 15:53:37 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OMrb4F025645 for perforce@freebsd.org; Thu, 24 Apr 2003 15:53:37 -0700 (PDT) Date: Thu, 24 Apr 2003 15:53:37 -0700 (PDT) Message-Id: <200304242253.h3OMrb4F025645@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29642 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 22:53:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=29642 Change 29642 by peter@peter_daintree on 2003/04/24 15:53:32 add extra rNN registers, drop segment registers (the segment stuff will likely be just a raw base address for MSR_FSBASE and MSR_GSBASE) Affected files ... .. //depot/projects/hammer/sys/x86_64/include/ucontext.h#10 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/ucontext.h#10 (text+ko) ==== @@ -38,10 +38,14 @@ * and ucontext_t at the same time. */ register_t mc_onstack; /* XXX - sigcontext compat. */ - register_t mc_gs; /* machine state (struct trapframe) */ - register_t mc_fs; - register_t mc_es; - register_t mc_ds; + register_t mc_r15; /* machine state (struct trapframe) */ + register_t mc_r14; + register_t mc_r13; + register_t mc_r12; + register_t mc_r11; + register_t mc_r10; + register_t mc_r9; + register_t mc_r8; register_t mc_rdi; register_t mc_rsi; register_t mc_rbp; From owner-p4-projects@FreeBSD.ORG Thu Apr 24 15:54:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5653237B404; Thu, 24 Apr 2003 15:54:41 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 400A037B41C for ; Thu, 24 Apr 2003 15:54:40 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DDA8A43F85 for ; Thu, 24 Apr 2003 15:54:39 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OMsd0U026529 for ; Thu, 24 Apr 2003 15:54:39 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OMsdOD026519 for perforce@freebsd.org; Thu, 24 Apr 2003 15:54:39 -0700 (PDT) Date: Thu, 24 Apr 2003 15:54:39 -0700 (PDT) Message-Id: <200304242254.h3OMsdOD026519@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29643 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 22:54:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=29643 Change 29643 by peter@peter_daintree on 2003/04/24 15:54:34 update sigcontext to match trapframe and friends. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/signal.h#10 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/signal.h#10 (text+ko) ==== @@ -74,23 +74,27 @@ struct sigcontext { struct __sigset sc_mask; /* signal mask to restore */ register_t sc_onstack; /* sigstack state to restore */ - register_t sc_gs; /* machine state (struct trapframe) */ - register_t sc_fs; - register_t sc_es; - register_t sc_ds; - register_t sc_edi; - register_t sc_esi; - register_t sc_ebp; - register_t sc_ebx; - register_t sc_edx; - register_t sc_ecx; - register_t sc_eax; + register_t sc_r15; /* machine state (struct trapframe) */ + register_t sc_r14; + register_t sc_r13; + register_t sc_r12; + register_t sc_r11; + register_t sc_r10; + register_t sc_r9; + register_t sc_r8; + register_t sc_rdi; + register_t sc_rsi; + register_t sc_rbp; + register_t sc_rbx; + register_t sc_rdx; + register_t sc_rcx; + register_t sc_rax; register_t sc_trapno; register_t sc_err; - register_t sc_eip; + register_t sc_rip; register_t sc_cs; - register_t sc_efl; - register_t sc_esp; + register_t sc_rflags; + register_t sc_rsp; register_t sc_ss; long sc_len; /* sizeof(mcontext_t) */ /* @@ -103,13 +107,6 @@ long sc_fpstate[128] __aligned(16); long sc_spare2[8]; }; - -#define sc_sp sc_esp -#define sc_fp sc_ebp -#define sc_pc sc_eip -#define sc_ps sc_efl -#define sc_eflags sc_efl - #endif /* __BSD_VISIBLE */ #endif /* !_MACHINE_SIGNAL_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Apr 24 15:57:45 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1029637B404; Thu, 24 Apr 2003 15:57:45 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9DFFE37B401 for ; Thu, 24 Apr 2003 15:57:44 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4274B43F3F for ; Thu, 24 Apr 2003 15:57:44 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3OMvi0U028797 for ; Thu, 24 Apr 2003 15:57:44 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3OMvhuj028792 for perforce@freebsd.org; Thu, 24 Apr 2003 15:57:43 -0700 (PDT) Date: Thu, 24 Apr 2003 15:57:43 -0700 (PDT) Message-Id: <200304242257.h3OMvhuj028792@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29644 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 22:57:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=29644 Change 29644 by peter@peter_daintree on 2003/04/24 15:56:58 use register_t for trapframe Affected files ... .. //depot/projects/hammer/sys/x86_64/include/frame.h#8 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/frame.h#8 (text+ko) ==== @@ -49,87 +49,87 @@ */ struct trapframe { - int64_t tf_r15; - int64_t tf_r14; - int64_t tf_r13; - int64_t tf_r12; - int64_t tf_r11; - int64_t tf_r10; - int64_t tf_r9; - int64_t tf_r8; - int64_t tf_rdi; - int64_t tf_rsi; - int64_t tf_rbp; - int64_t tf_rbx; - int64_t tf_rdx; - int64_t tf_rcx; - int64_t tf_rax; - int64_t tf_trapno; + register_t tf_r15; + register_t tf_r14; + register_t tf_r13; + register_t tf_r12; + register_t tf_r11; + register_t tf_r10; + register_t tf_r9; + register_t tf_r8; + register_t tf_rdi; + register_t tf_rsi; + register_t tf_rbp; + register_t tf_rbx; + register_t tf_rdx; + register_t tf_rcx; + register_t tf_rax; + register_t tf_trapno; /* below portion defined in 386 hardware */ - int64_t tf_err; - int64_t tf_rip; - int64_t tf_cs; - int64_t tf_rflags; - int64_t tf_rsp; - int64_t tf_ss; + register_t tf_err; + register_t tf_rip; + register_t tf_cs; + register_t tf_rflags; + register_t tf_rsp; + register_t tf_ss; }; /* Interrupt stack frame */ struct intrframe { - int64_t if_vec; - int64_t if_r15; - int64_t if_r14; - int64_t if_r13; - int64_t if_r12; - int64_t if_r11; - int64_t if_r10; - int64_t if_r9; - int64_t if_r8; - int64_t if_rdi; - int64_t if_rsi; - int64_t if_rbp; - int64_t if_rbx; - int64_t if_rdx; - int64_t if_rcx; - int64_t if_rax; - int64_t :64; /* for compat with trap frame - trapno */ - int64_t :64; /* for compat with trap frame - err */ + register_t if_vec; + register_t if_r15; + register_t if_r14; + register_t if_r13; + register_t if_r12; + register_t if_r11; + register_t if_r10; + register_t if_r9; + register_t if_r8; + register_t if_rdi; + register_t if_rsi; + register_t if_rbp; + register_t if_rbx; + register_t if_rdx; + register_t if_rcx; + register_t if_rax; + register_t :64; /* for compat with trap frame - trapno */ + register_t :64; /* for compat with trap frame - err */ /* below portion defined in 386 hardware */ - int64_t if_rip; - int64_t if_cs; - int64_t if_rflags; - int64_t if_rsp; - int64_t if_ss; + register_t if_rip; + register_t if_cs; + register_t if_rflags; + register_t if_rsp; + register_t if_ss; }; /* frame of clock (same as interrupt frame) */ struct clockframe { - int64_t cf_vec; - int64_t cf_r15; - int64_t cf_r14; - int64_t cf_r13; - int64_t cf_r12; - int64_t cf_r11; - int64_t cf_r10; - int64_t cf_r9; - int64_t cf_r8; - int64_t cf_rdi; - int64_t cf_rsi; - int64_t cf_rbp; - int64_t cf_rbx; - int64_t cf_rdx; - int64_t cf_rcx; - int64_t cf_rax; - int64_t :64; /* for compat with trap frame - trapno */ - int64_t :64; /* for compat with trap frame - err */ + register_t cf_vec; + register_t cf_r15; + register_t cf_r14; + register_t cf_r13; + register_t cf_r12; + register_t cf_r11; + register_t cf_r10; + register_t cf_r9; + register_t cf_r8; + register_t cf_rdi; + register_t cf_rsi; + register_t cf_rbp; + register_t cf_rbx; + register_t cf_rdx; + register_t cf_rcx; + register_t cf_rax; + register_t :64; /* for compat with trap frame - trapno */ + register_t :64; /* for compat with trap frame - err */ /* below portion defined in 386 hardware */ - int64_t cf_rip; - int64_t cf_cs; - int64_t cf_rflags; - int64_t cf_rsp; - int64_t cf_ss; + register_t cf_rip; + register_t cf_cs; + register_t cf_rflags; + register_t cf_rsp; + register_t cf_ss; }; int kdb_trap(int, int, struct trapframe *); From owner-p4-projects@FreeBSD.ORG Thu Apr 24 16:06:57 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E219937B404; Thu, 24 Apr 2003 16:06:56 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9234B37B401 for ; Thu, 24 Apr 2003 16:06:56 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1DF5C43FAF for ; Thu, 24 Apr 2003 16:06:56 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ON6t0U036413 for ; Thu, 24 Apr 2003 16:06:55 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ON6tjv036407 for perforce@freebsd.org; Thu, 24 Apr 2003 16:06:55 -0700 (PDT) Date: Thu, 24 Apr 2003 16:06:55 -0700 (PDT) Message-Id: <200304242306.h3ON6tjv036407@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29645 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 23:06:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=29645 Change 29645 by peter@peter_daintree on 2003/04/24 16:05:56 update for the current state of the world. Leave out the tXXX defines for the moment, foolishly trusing the comment that they are not used... I bet gdb uses them. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/reg.h#6 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/reg.h#6 (text+ko) ==== @@ -41,65 +41,31 @@ #define _MACHINE_REG_H_ /* - * Indices for registers in `struct trapframe' and `struct regs'. - * - * This interface is deprecated. In the kernel, it is only used in FPU - * emulators to convert from register numbers encoded in instructions to - * register values. Everything else just accesses the relevant struct - * members. In userland, debuggers tend to abuse this interface since - * they don't understand that `struct regs' is a struct. I hope they have - * stopped accessing the registers in the trap frame via PT_{READ,WRITE}_U - * and we can stop supporting the user area soon. - */ -#define tFS (0) -#define tES (1) -#define tDS (2) -#define tEDI (3) -#define tESI (4) -#define tEBP (5) -#define tISP (6) -#define tEBX (7) -#define tEDX (8) -#define tECX (9) -#define tEAX (10) -#define tERR (12) -#define tEIP (13) -#define tCS (14) -#define tEFLAGS (15) -#define tESP (16) -#define tSS (17) - -/* - * Indices for registers in `struct regs' only. - * - * Some registers live in the pcb and are only in an "array" with the - * other registers in application interfaces that copy all the registers - * to or from a `struct regs'. - */ -#define tGS (18) - -/* * Register set accessible via /proc/$pid/regs and PT_{SET,GET}REGS. */ struct reg { - unsigned int r_fs; - unsigned int r_es; - unsigned int r_ds; - unsigned int r_rdi; - unsigned int r_rsi; - unsigned int r_rbp; - unsigned int r_rbx; - unsigned int r_rdx; - unsigned int r_rcx; - unsigned int r_rax; - unsigned int r_trapno; - unsigned int r_err; - unsigned int r_rip; - unsigned int r_cs; - unsigned int r_rflags; - unsigned int r_rsp; - unsigned int r_ss; - unsigned int r_gs; + register_t r_r15; + register_t r_r14; + register_t r_r13; + register_t r_r12; + register_t r_r11; + register_t r_r10; + register_t r_r9; + register_t r_r8; + register_t r_rdi; + register_t r_rsi; + register_t r_rbp; + register_t r_rbx; + register_t r_rdx; + register_t r_rcx; + register_t r_rax; + register_t r_trapno; + register_t r_err; + register_t r_rip; + register_t r_cs; + register_t r_rflags; + register_t r_rsp; + register_t r_ss; }; /* From owner-p4-projects@FreeBSD.ORG Thu Apr 24 16:06:58 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 178EC37B404; Thu, 24 Apr 2003 16:06:58 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4C7B637B41E for ; Thu, 24 Apr 2003 16:06:57 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C0C3243FAF for ; Thu, 24 Apr 2003 16:06:56 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ON6u0U036424 for ; Thu, 24 Apr 2003 16:06:56 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ON6ub7036418 for perforce@freebsd.org; Thu, 24 Apr 2003 16:06:56 -0700 (PDT) Date: Thu, 24 Apr 2003 16:06:56 -0700 (PDT) Message-Id: <200304242306.h3ON6ub7036418@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29646 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 23:06:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=29646 Change 29646 by peter@peter_daintree on 2003/04/24 16:06:40 update for extra registers in struct reg, contexts and frames, as well as different delimiter markers Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#77 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#77 (text+ko) ==== @@ -244,8 +244,7 @@ sf.sf_uc.uc_stack.ss_flags = (p->p_flag & P_ALTSTACK) ? ((oonstack) ? SS_ONSTACK : 0) : SS_DISABLE; sf.sf_uc.uc_mcontext.mc_onstack = (oonstack) ? 1 : 0; - sf.sf_uc.uc_mcontext.mc_gs = rgs(); - bcopy(regs, &sf.sf_uc.uc_mcontext.mc_fs, sizeof(*regs)); + bcopy(regs, &sf.sf_uc.uc_mcontext.mc_r15, sizeof(*regs)); sf.sf_uc.uc_mcontext.mc_len = sizeof(sf.sf_uc.uc_mcontext); /* magic */ get_fpcontext(td, &sf.sf_uc.uc_mcontext); fpstate_drop(td); @@ -371,7 +370,7 @@ ret = set_fpcontext(td, &ucp->uc_mcontext); if (ret != 0) return (ret); - bcopy(&ucp->uc_mcontext.mc_fs, regs, sizeof(*regs)); + bcopy(&ucp->uc_mcontext.mc_r15, regs, sizeof(*regs)); PROC_LOCK(p); #if defined(COMPAT_43) || defined(COMPAT_SUNOS) @@ -1292,6 +1291,14 @@ struct trapframe *tp; tp = td->td_frame; + regs->r_r15 = tp->tf_r15; + regs->r_r14 = tp->tf_r14; + regs->r_r13 = tp->tf_r13; + regs->r_r12 = tp->tf_r12; + regs->r_r11 = tp->tf_r11; + regs->r_r10 = tp->tf_r10; + regs->r_r9 = tp->tf_r9; + regs->r_r8 = tp->tf_r8; regs->r_rdi = tp->tf_rdi; regs->r_rsi = tp->tf_rsi; regs->r_rbp = tp->tf_rbp; @@ -1318,6 +1325,14 @@ if (!EFL_SECURE(regs->r_rflags, tp->tf_rflags) || !CS_SECURE(regs->r_cs)) return (EINVAL); + tp->tf_r15 = regs->r_r15; + tp->tf_r14 = regs->r_r14; + tp->tf_r13 = regs->r_r13; + tp->tf_r12 = regs->r_r12; + tp->tf_r11 = regs->r_r11; + tp->tf_r10 = regs->r_r10; + tp->tf_r9 = regs->r_r9; + tp->tf_r8 = regs->r_r8; tp->tf_rdi = regs->r_rdi; tp->tf_rsi = regs->r_rsi; tp->tf_rbp = regs->r_rbp; @@ -1417,6 +1432,14 @@ PROC_LOCK(curthread->td_proc); mcp->mc_onstack = sigonstack(tp->tf_rsp); PROC_UNLOCK(curthread->td_proc); + mcp->mc_r15 = tp->tf_r15; + mcp->mc_r14 = tp->tf_r14; + mcp->mc_r13 = tp->tf_r13; + mcp->mc_r12 = tp->tf_r12; + mcp->mc_r11 = tp->tf_r11; + mcp->mc_r10 = tp->tf_r10; + mcp->mc_r9 = tp->tf_r9; + mcp->mc_r8 = tp->tf_r8; mcp->mc_rdi = tp->tf_rdi; mcp->mc_rsi = tp->tf_rsi; mcp->mc_rbp = tp->tf_rbp; @@ -1453,6 +1476,14 @@ rflags = (mcp->mc_rflags & PSL_USERCHANGE) | (tp->tf_rflags & ~PSL_USERCHANGE); if ((ret = set_fpcontext(td, mcp)) == 0) { + tp->tf_r15 = mcp->mc_r15; + tp->tf_r14 = mcp->mc_r14; + tp->tf_r13 = mcp->mc_r13; + tp->tf_r12 = mcp->mc_r12; + tp->tf_r11 = mcp->mc_r11; + tp->tf_r10 = mcp->mc_r10; + tp->tf_r9 = mcp->mc_r9; + tp->tf_r8 = mcp->mc_r8; tp->tf_rdi = mcp->mc_rdi; tp->tf_rsi = mcp->mc_rsi; tp->tf_rbp = mcp->mc_rbp; From owner-p4-projects@FreeBSD.ORG Thu Apr 24 16:15:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1DB7437B404; Thu, 24 Apr 2003 16:15:08 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AEA7337B401 for ; Thu, 24 Apr 2003 16:15:07 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 45CF143FA3 for ; Thu, 24 Apr 2003 16:15:07 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ONF70U041958 for ; Thu, 24 Apr 2003 16:15:07 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ONF6Jm041950 for perforce@freebsd.org; Thu, 24 Apr 2003 16:15:06 -0700 (PDT) Date: Thu, 24 Apr 2003 16:15:06 -0700 (PDT) Message-Id: <200304242315.h3ONF6Jm041950@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29647 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 23:15:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=29647 Change 29647 by peter@peter_daintree on 2003/04/24 16:14:26 remove stray debug code prototype Affected files ... .. //depot/projects/hammer/sys/kern/tty_cons.c#6 edit Differences ... ==== //depot/projects/hammer/sys/kern/tty_cons.c#6 (text+ko) ==== @@ -537,7 +537,6 @@ return (-1); } -extern void serial_putc(int); void cnputc(int c) { From owner-p4-projects@FreeBSD.ORG Thu Apr 24 16:36:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2EEA237B404; Thu, 24 Apr 2003 16:36:36 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AC7F637B401 for ; Thu, 24 Apr 2003 16:36:35 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 48E2D43F85 for ; Thu, 24 Apr 2003 16:36:35 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ONaY0U057847 for ; Thu, 24 Apr 2003 16:36:34 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ONaY62057830 for perforce@freebsd.org; Thu, 24 Apr 2003 16:36:34 -0700 (PDT) Date: Thu, 24 Apr 2003 16:36:34 -0700 (PDT) Message-Id: <200304242336.h3ONaY62057830@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29649 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 23:36:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=29649 Change 29649 by peter@peter_daintree on 2003/04/24 16:36:15 argh. implement fill_fpregs_xmm and friends. I still cannot convince myself that I've done this right, or that I have the src and dsts the right way around. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#78 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#78 (text+ko) ==== @@ -1349,60 +1349,66 @@ return (0); } +/* XXX check all this stuff! */ +/* externalize from sv_xmm */ static void fill_fpregs_xmm(struct savefpu *sv_xmm, struct fpreg *fpregs) { -#if 0 - register struct env87 *penv_87 = &fpregs->sv_env; - register struct envxmm *penv_xmm = &sv_xmm->sv_env; + struct envxmm *penv_fpreg = (struct envxmm *)&fpregs->fpr_env; + struct envxmm *penv_xmm = &sv_xmm->sv_env; int i; /* pcb -> fpregs */ bzero(fpregs, sizeof(*fpregs)); /* FPU control/status */ - penv_87->en_cw = penv_xmm->en_cw; - penv_87->en_sw = penv_xmm->en_sw; - penv_87->en_tw = penv_xmm->en_tw; - penv_87->en_fip = penv_xmm->en_fip; - penv_87->en_fcs = penv_xmm->en_fcs; - penv_87->en_opcode = penv_xmm->en_opcode; - penv_87->en_foo = penv_xmm->en_foo; - penv_87->en_fos = penv_xmm->en_fos; + penv_fpreg->en_cw = penv_xmm->en_cw; + penv_fpreg->en_sw = penv_xmm->en_sw; + penv_fpreg->en_tw = penv_xmm->en_tw; + penv_fpreg->en_opcode = penv_xmm->en_opcode; + penv_fpreg->en_rip = penv_xmm->en_rip; + penv_fpreg->en_rdp = penv_xmm->en_rdp; + penv_fpreg->en_mxcsr = penv_xmm->en_mxcsr; + penv_fpreg->en_mxcsr_mask = penv_xmm->en_mxcsr_mask; /* FPU registers */ for (i = 0; i < 8; ++i) - sv_87->sv_ac[i] = sv_xmm->sv_fp[i].fp_acc; -#endif - printf("implement fill_fpregs_xmm\n"); + bcopy(sv_xmm->sv_fp[i].fp_acc.fp_bytes, fpregs->fpr_acc[i], 10); + + /* SSE registers */ + for (i = 0; i < 16; ++i) + bcopy(sv_xmm->sv_xmm[i].xmm_bytes, fpregs->fpr_xacc[i], 16); } +/* internalize from fpregs into sv_xmm */ static void set_fpregs_xmm(struct fpreg *fpregs, struct savefpu *sv_xmm) { -#if 0 - register struct env87 *penv_87 = &fpregs->sv_env; - register struct envxmm *penv_xmm = &sv_xmm->sv_env; + struct envxmm *penv_xmm = &sv_xmm->sv_env; + struct envxmm *penv_fpreg = (struct envxmm *)&fpregs->fpr_env; int i; /* fpregs -> pcb */ /* FPU control/status */ - penv_xmm->en_cw = penv_87->en_cw; - penv_xmm->en_sw = penv_87->en_sw; - penv_xmm->en_tw = penv_87->en_tw; - penv_xmm->en_fip = penv_87->en_fip; - penv_xmm->en_fcs = penv_87->en_fcs; - penv_xmm->en_opcode = penv_87->en_opcode; - penv_xmm->en_foo = penv_87->en_foo; - penv_xmm->en_fos = penv_87->en_fos; + penv_xmm->en_cw = penv_fpreg->en_cw; + penv_xmm->en_sw = penv_fpreg->en_sw; + penv_xmm->en_tw = penv_fpreg->en_tw; + penv_xmm->en_opcode = penv_fpreg->en_opcode; + 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; /* FPU registers */ for (i = 0; i < 8; ++i) - sv_xmm->sv_fp[i].fp_acc = sv_87->sv_ac[i]; -#endif - printf("implement set_fpregs_xmm\n"); + bcopy(fpregs->fpr_acc[i], sv_xmm->sv_fp[i].fp_acc.fp_bytes, 10); + + /* SSE registers */ + for (i = 0; i < 16; ++i) + bcopy(fpregs->fpr_xacc[i], sv_xmm->sv_xmm[i].xmm_bytes, 16); } +/* externalize from td->pcb */ int fill_fpregs(struct thread *td, struct fpreg *fpregs) { @@ -1411,6 +1417,7 @@ return (0); } +/* internalize to td->pcb */ int set_fpregs(struct thread *td, struct fpreg *fpregs) { From owner-p4-projects@FreeBSD.ORG Thu Apr 24 16:45:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 63F7337B404; Thu, 24 Apr 2003 16:45:48 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0419937B401 for ; Thu, 24 Apr 2003 16:45:48 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8EFF443F93 for ; Thu, 24 Apr 2003 16:45:47 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ONjl0U064407 for ; Thu, 24 Apr 2003 16:45:47 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ONjlS6064399 for perforce@freebsd.org; Thu, 24 Apr 2003 16:45:47 -0700 (PDT) Date: Thu, 24 Apr 2003 16:45:47 -0700 (PDT) Message-Id: <200304242345.h3ONjlS6064399@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29651 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 23:45:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=29651 Change 29651 by peter@peter_daintree on 2003/04/24 16:45:35 this isn't going to happen this way. load_gs becomes wrmsr(MSR_GSBASE, value) etc Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#79 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#79 (text+ko) ==== @@ -508,9 +508,6 @@ cr0 |= CR0_MP | CR0_TS; /* Done at every execve() too. */ cr0 |= CR0_WP | CR0_AM; load_cr0(cr0); -#if 0 - load_gs(_udatasel); -#endif } static int From owner-p4-projects@FreeBSD.ORG Thu Apr 24 16:46:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7369C37B404; Thu, 24 Apr 2003 16:46:50 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 142AF37B401 for ; Thu, 24 Apr 2003 16:46:50 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9E8AC43FDD for ; Thu, 24 Apr 2003 16:46:49 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3ONkn0U065221 for ; Thu, 24 Apr 2003 16:46:49 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3ONknJR065216 for perforce@freebsd.org; Thu, 24 Apr 2003 16:46:49 -0700 (PDT) Date: Thu, 24 Apr 2003 16:46:49 -0700 (PDT) Message-Id: <200304242346.h3ONknJR065216@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to obrien@freebsd.org using -f From: "David E. O'Brien" To: Perforce Change Reviews Subject: PERFORCE change 29652 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Apr 2003 23:46:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=29652 Change 29652 by obrien@obrien_trang on 2003/04/24 16:45:56 NO_MODULES for now. Affected files ... .. //depot/projects/hammer/sys/x86_64/conf/GENERIC#8 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/conf/GENERIC#8 (text+ko) ==== @@ -23,6 +23,8 @@ ident GENERIC maxusers 0 +makeoptions NO_MODULES=not_yet + options INET options SCHED_4BSD options FFS From owner-p4-projects@FreeBSD.ORG Thu Apr 24 17:00:07 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 06CD137B404; Thu, 24 Apr 2003 17:00:07 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AD1C437B401 for ; Thu, 24 Apr 2003 17:00:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4CFB243FD7 for ; Thu, 24 Apr 2003 17:00:06 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P0060U078812 for ; Thu, 24 Apr 2003 17:00:06 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P0059O078806 for perforce@freebsd.org; Thu, 24 Apr 2003 17:00:05 -0700 (PDT) Date: Thu, 24 Apr 2003 17:00:05 -0700 (PDT) Message-Id: <200304250000.h3P0059O078806@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29653 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 00:00:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=29653 Change 29653 by peter@peter_daintree on 2003/04/24 16:59:32 maybe savectx will work, if we ever get to dumpsys() stage. At least, it isn't guaranteed to explode at this point. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/swtch.s#20 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/swtch.s#20 (text+ko) ==== @@ -240,9 +240,9 @@ */ ENTRY(savectx) /* Fetch PCB. */ - movq 8(%rsp),%rcx + movq %rdi,%rcx - /* Save caller's return address. Child won't execute this routine. */ + /* Save caller's return address. */ movq (%rsp),%rax movq %rax,PCB_RIP(%rcx) @@ -278,21 +278,17 @@ je 1f pushq %rcx - movq TD_PCB(%rax),%rax - leaq PCB_SAVEFPU(%rax),%rax pushq %rax - pushq %rax + movq TD_PCB(%rax),%rdi + leaq PCB_SAVEFPU(%rdi),%rdi call npxsave - addq $8,%rsp popq %rax popq %rcx - pushq $PCB_SAVEFPU_SIZE - leaq PCB_SAVEFPU(%rcx),%rcx - pushq %rcx - pushq %rax + movq $PCB_SAVEFPU_SIZE,%rdx /* arg 3 */ + leaq PCB_SAVEFPU(%rcx),%rsi /* arg 2 */ + movq %rax,%rdi /* arg 1 */ call bcopy - addq $24,%rsp 1: popfq From owner-p4-projects@FreeBSD.ORG Thu Apr 24 17:44:03 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3704D37B404; Thu, 24 Apr 2003 17:44:03 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DC18337B401 for ; Thu, 24 Apr 2003 17:44:02 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 86E1143FB1 for ; Thu, 24 Apr 2003 17:44:02 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P0i20U011308 for ; Thu, 24 Apr 2003 17:44:02 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P0i2aA011300 for perforce@freebsd.org; Thu, 24 Apr 2003 17:44:02 -0700 (PDT) Date: Thu, 24 Apr 2003 17:44:02 -0700 (PDT) Message-Id: <200304250044.h3P0i2aA011300@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29658 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 00:44:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=29658 Change 29658 by peter@peter_daintree on 2003/04/24 17:43:07 gah! gag me with a spoon! We have to deliberately odd-align the starting stack pointer because gcc "knows" that there is a return address pushed there and will push the wrong number of longs onto the stack, causing everything to be misaligned. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#80 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#80 (text+ko) ==== @@ -466,7 +466,8 @@ bzero((char *)regs, sizeof(struct trapframe)); regs->tf_rip = entry; - regs->tf_rsp = stack; + /* This strangeness is to ensure alignment after the implied return address */ + regs->tf_rsp = ((stack - 8) & ~0xF) + 8; regs->tf_rdi = stack; /* argv */ regs->tf_rflags = PSL_USER | (regs->tf_rflags & PSL_T); regs->tf_ss = _udatasel; From owner-p4-projects@FreeBSD.ORG Thu Apr 24 18:07:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 307E037B404; Thu, 24 Apr 2003 18:07:32 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BECB437B401 for ; Thu, 24 Apr 2003 18:07:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6961043F75 for ; Thu, 24 Apr 2003 18:07:31 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P17V0U029126 for ; Thu, 24 Apr 2003 18:07:31 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P17Vtf029121 for perforce@freebsd.org; Thu, 24 Apr 2003 18:07:31 -0700 (PDT) Date: Thu, 24 Apr 2003 18:07:31 -0700 (PDT) Message-Id: <200304250107.h3P17Vtf029121@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29659 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 01:07:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=29659 Change 29659 by peter@peter_daintree on 2003/04/24 18:06:43 keep usb out of it, its breaking something with shared interrupts Affected files ... .. //depot/projects/hammer/sys/x86_64/conf/GENERIC#9 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/conf/GENERIC#9 (text+ko) ==== @@ -51,12 +51,12 @@ device atapicd # ATAPI CDROM drives # USB support -device uhci # UHCI PCI->USB interface -device ohci # OHCI PCI->USB interface -device usb # USB Bus (required) -device ugen # Generic -device uhid # "Human Interface Devices" -device ukbd # Keyboard +#device uhci # UHCI PCI->USB interface +#device ohci # OHCI PCI->USB interface +#device usb # USB Bus (required) +#device ugen # Generic +#device uhid # "Human Interface Devices" +#device ukbd # Keyboard # atkbdc0 controls both the keyboard and the PS/2 mouse From owner-p4-projects@FreeBSD.ORG Thu Apr 24 19:23:07 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7CC0937B404; Thu, 24 Apr 2003 19:23:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 29AAF37B401 for ; Thu, 24 Apr 2003 19:23:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B3A4B43FDD for ; Thu, 24 Apr 2003 19:23:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P2N50U084039 for ; Thu, 24 Apr 2003 19:23:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P2N5f6084031 for perforce@freebsd.org; Thu, 24 Apr 2003 19:23:05 -0700 (PDT) Date: Thu, 24 Apr 2003 19:23:05 -0700 (PDT) Message-Id: <200304250223.h3P2N5f6084031@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29664 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 02:23:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=29664 Change 29664 by peter@peter_daintree on 2003/04/24 19:22:30 *no comment* Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#81 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#81 (text+ko) ==== @@ -1718,7 +1718,7 @@ cs1 = (const char *)s1; cs2 = (const char *)s2; for (i = 0; i < len; i++) { - diff = *cs2 - *cs1; + diff = cs2[i] - cs1[i]; if (diff) return diff; } From owner-p4-projects@FreeBSD.ORG Thu Apr 24 22:25:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 62B4137B404; Thu, 24 Apr 2003 22:25:00 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0BDEF37B401 for ; Thu, 24 Apr 2003 22:25:00 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 97E1043F93 for ; Thu, 24 Apr 2003 22:24:59 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P5Ox0U020764 for ; Thu, 24 Apr 2003 22:24:59 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P5OxZd020757 for perforce@freebsd.org; Thu, 24 Apr 2003 22:24:59 -0700 (PDT) Date: Thu, 24 Apr 2003 22:24:59 -0700 (PDT) Message-Id: <200304250524.h3P5OxZd020757@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29668 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 05:25:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=29668 Change 29668 by peter@peter_daintree on 2003/04/24 22:24:49 whitespace nit Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#20 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#20 (text+ko) ==== @@ -115,7 +115,6 @@ pushq $0; TRAP(T_ARITHTRAP) IDTVEC(align) TRAP(T_ALIGNFLT) - IDTVEC(xmm) pushq $0; TRAP(T_XMMFLT) From owner-p4-projects@FreeBSD.ORG Thu Apr 24 22:48:30 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F2A1437B404; Thu, 24 Apr 2003 22:48:29 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9211F37B401 for ; Thu, 24 Apr 2003 22:48:29 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2E81F43F75 for ; Thu, 24 Apr 2003 22:48:29 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P5mT0U037587 for ; Thu, 24 Apr 2003 22:48:29 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P5mS1Q037581 for perforce@freebsd.org; Thu, 24 Apr 2003 22:48:28 -0700 (PDT) Date: Thu, 24 Apr 2003 22:48:28 -0700 (PDT) Message-Id: <200304250548.h3P5mS1Q037581@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29670 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 05:48:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=29670 Change 29670 by peter@peter_daintree on 2003/04/24 22:48:20 Use a pipeline of movq instead of pushq/popq for trapframes. This is convenient for several reasons. 1) it is more robust, 2) it lets me transparently reorder the trapframe so as to avoid the horrible hacks in the syscall code, and 3) because gcc Really Likes to do it that way, so presumably its for optimization reasons. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#21 edit .. //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#20 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#21 (text+ko) ==== @@ -129,21 +129,22 @@ .globl alltraps .type alltraps,@function alltraps: - pushq %rax - pushq %rcx - pushq %rdx - pushq %rbx - pushq %rbp - pushq %rsi - pushq %rdi - pushq %r8 - pushq %r9 - pushq %r10 - pushq %r11 - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 + subq $TF_TRAPNO,%rsp /* tf_err and tf_trapno already pushed */ + movq %rax,TF_RAX(%rsp) + movq %rcx,TF_RCX(%rsp) + movq %rdx,TF_RDX(%rsp) + movq %rbx,TF_RBX(%rsp) + movq %rbp,TF_RBP(%rsp) + movq %rsi,TF_RSI(%rsp) + movq %rdi,TF_RDI(%rsp) + movq %r8,TF_R8(%rsp) + movq %r9,TF_R9(%rsp) + movq %r10,TF_R10(%rsp) + movq %r11,TF_R11(%rsp) + movq %r12,TF_R12(%rsp) + movq %r13,TF_R13(%rsp) + movq %r14,TF_R14(%rsp) + movq %r15,TF_R15(%rsp) alltraps_with_regs_pushed: FAKE_MCOUNT(13*4(%rsp)) calltrap: @@ -169,22 +170,22 @@ SUPERALIGN_TEXT IDTVEC(int0x80_syscall) pushq $2 /* sizeof "int 0x80" */ - subq $8,%rsp /* skip over tf_trapno */ - pushq %rax - pushq %rcx - pushq %rdx - pushq %rbx - pushq %rbp - pushq %rsi - pushq %rdi - pushq %r8 - pushq %r9 - pushq %r10 - pushq %r11 - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 + subq $TF_ERR,%rsp /* skip over tf_trapno */ + movq %rax,TF_RAX(%rsp) + movq %rcx,TF_RCX(%rsp) + movq %rdx,TF_RDX(%rsp) + movq %rbx,TF_RBX(%rsp) + movq %rbp,TF_RBP(%rsp) + movq %rsi,TF_RSI(%rsp) + movq %rdi,TF_RDI(%rsp) + movq %r8,TF_R8(%rsp) + movq %r9,TF_R9(%rsp) + movq %r10,TF_R10(%rsp) + movq %r11,TF_R11(%rsp) + movq %r12,TF_R12(%rsp) + movq %r13,TF_R13(%rsp) + movq %r14,TF_R14(%rsp) + movq %r15,TF_R15(%rsp) FAKE_MCOUNT(13*4(%rsp)) call syscall MEXITCOUNT @@ -251,22 +252,22 @@ doreti_exit: MEXITCOUNT - popq %r15 - popq %r14 - popq %r13 - popq %r12 - popq %r11 - popq %r10 - popq %r9 - popq %r8 - popq %rdi - popq %rsi - popq %rbp - popq %rbx - popq %rdx - popq %rcx - popq %rax - addq $16,%rsp + movq TF_R15(%rsp),%r15 + movq TF_R14(%rsp),%r14 + movq TF_R13(%rsp),%r13 + movq TF_R12(%rsp),%r12 + movq TF_R11(%rsp),%r11 + movq TF_R10(%rsp),%r10 + movq TF_R9(%rsp),%r9 + movq TF_R8(%rsp),%r8 + movq TF_RDI(%rsp),%rdi + movq TF_RSI(%rsp),%rsi + movq TF_RBP(%rsp),%rbp + movq TF_RBX(%rsp),%rbx + movq TF_RDX(%rsp),%rdx + movq TF_RCX(%rsp),%rcx + movq TF_RAX(%rsp),%rax + addq $TF_RIP,%rsp /* skip over tf_err, tf_trapno */ .globl doreti_iret doreti_iret: iretq @@ -281,22 +282,22 @@ ALIGN_TEXT .globl doreti_iret_fault doreti_iret_fault: - subq $16,%rsp - pushq %rax - pushq %rcx - pushq %rdx - pushq %rbx - pushq %rbp - pushq %rsi - pushq %rdi - pushq %r8 - pushq %r9 - pushq %r10 - pushq %r11 - pushq %r12 - pushq %r13 - pushq %r14 - pushq %r15 + subq $TF_RIP,%rsp /* space including tf_err, tf_trapno */ + movq %rax,TF_RAX(%rsp) + movq %rcx,TF_RCX(%rsp) + movq %rdx,TF_RDX(%rsp) + movq %rbx,TF_RBX(%rsp) + movq %rbp,TF_RBP(%rsp) + movq %rsi,TF_RSI(%rsp) + movq %rdi,TF_RDI(%rsp) + movq %r8,TF_R8(%rsp) + movq %r9,TF_R9(%rsp) + movq %r10,TF_R10(%rsp) + movq %r11,TF_R11(%rsp) + movq %r12,TF_R12(%rsp) + movq %r13,TF_R13(%rsp) + movq %r14,TF_R14(%rsp) + movq %r15,TF_R15(%rsp) movq $0,TF_ERR(%rsp) /* XXX should be the error code */ movq $T_PROTFLT,TF_TRAPNO(%rsp) jmp alltraps_with_regs_pushed ==== //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#20 (text+ko) ==== @@ -130,10 +130,29 @@ ASSYM(COMMON_TSS_RSP0, offsetof(struct x86_64tss, tss_rsp0)); +ASSYM(TF_R15, offsetof(struct trapframe, tf_r15)); +ASSYM(TF_R14, offsetof(struct trapframe, tf_r14)); +ASSYM(TF_R13, offsetof(struct trapframe, tf_r13)); +ASSYM(TF_R12, offsetof(struct trapframe, tf_r12)); +ASSYM(TF_R11, offsetof(struct trapframe, tf_r11)); +ASSYM(TF_R10, offsetof(struct trapframe, tf_r10)); +ASSYM(TF_R9, offsetof(struct trapframe, tf_r9)); +ASSYM(TF_R8, offsetof(struct trapframe, tf_r8)); +ASSYM(TF_RDI, offsetof(struct trapframe, tf_rdi)); +ASSYM(TF_RSI, offsetof(struct trapframe, tf_rsi)); +ASSYM(TF_RBP, offsetof(struct trapframe, tf_rbp)); +ASSYM(TF_RBX, offsetof(struct trapframe, tf_rbx)); +ASSYM(TF_RDX, offsetof(struct trapframe, tf_rdx)); +ASSYM(TF_RCX, offsetof(struct trapframe, tf_rcx)); +ASSYM(TF_RAX, offsetof(struct trapframe, tf_rax)); ASSYM(TF_TRAPNO, offsetof(struct trapframe, tf_trapno)); ASSYM(TF_ERR, offsetof(struct trapframe, tf_err)); +ASSYM(TF_RIP, offsetof(struct trapframe, tf_rip)); ASSYM(TF_CS, offsetof(struct trapframe, tf_cs)); ASSYM(TF_RFLAGS, offsetof(struct trapframe, tf_rflags)); +ASSYM(TF_RSP, offsetof(struct trapframe, tf_rsp)); +ASSYM(TF_SS, offsetof(struct trapframe, tf_ss)); + ASSYM(SIGF_HANDLER, offsetof(struct sigframe, sf_ahu.sf_handler)); ASSYM(SIGF_UC, offsetof(struct sigframe, sf_uc)); ASSYM(UC_EFLAGS, offsetof(ucontext_t, uc_mcontext.mc_rflags)); From owner-p4-projects@FreeBSD.ORG Thu Apr 24 22:54:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2583737B404; Thu, 24 Apr 2003 22:54:38 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B2C6F37B401 for ; Thu, 24 Apr 2003 22:54:37 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5FF0E43FCB for ; Thu, 24 Apr 2003 22:54:37 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P5sb0U042156 for ; Thu, 24 Apr 2003 22:54:37 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P5sbjs042147 for perforce@freebsd.org; Thu, 24 Apr 2003 22:54:37 -0700 (PDT) Date: Thu, 24 Apr 2003 22:54:37 -0700 (PDT) Message-Id: <200304250554.h3P5sbjs042147@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29671 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 05:54:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=29671 Change 29671 by peter@peter_overcee on 2003/04/24 22:53:36 trapframe/clockframe/intrframe are identical. No cf_vec/if_vec because the vector is passed in a register, not on the stack. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/frame.h#9 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/frame.h#9 (text+ko) ==== @@ -77,7 +77,6 @@ /* Interrupt stack frame */ struct intrframe { - register_t if_vec; register_t if_r15; register_t if_r14; register_t if_r13; @@ -106,7 +105,6 @@ /* frame of clock (same as interrupt frame) */ struct clockframe { - register_t cf_vec; register_t cf_r15; register_t cf_r14; register_t cf_r13; @@ -134,6 +132,4 @@ int kdb_trap(int, int, struct trapframe *); -#define INTR_TO_TRAPFRAME(frame) ((struct trapframe *)&(frame)->if_r15) - #endif /* _MACHINE_FRAME_H_ */ From owner-p4-projects@FreeBSD.ORG Thu Apr 24 23:05:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AEA8C37B404; Thu, 24 Apr 2003 23:05:52 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 45C6337B401 for ; Thu, 24 Apr 2003 23:05:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C94CC43FA3 for ; Thu, 24 Apr 2003 23:05:51 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P65p0U051111 for ; Thu, 24 Apr 2003 23:05:51 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P65pbf051102 for perforce@freebsd.org; Thu, 24 Apr 2003 23:05:51 -0700 (PDT) Date: Thu, 24 Apr 2003 23:05:51 -0700 (PDT) Message-Id: <200304250605.h3P65pbf051102@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29672 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 06:05:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=29672 Change 29672 by peter@peter_daintree on 2003/04/24 23:05:36 use movq instead of pushq so as to be insulated from trapframe reodering Affected files ... .. //depot/projects/hammer/sys/x86_64/isa/icu_vector.s#9 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/isa/icu_vector.s#9 (text+ko) ==== @@ -24,23 +24,22 @@ .text ; \ SUPERALIGN_TEXT ; \ IDTVEC(vec_name) ; \ - pushq $0 ; /* dummy error code */ \ - pushq $0 ; /* dummy trap type */ \ - pushq %rax ; \ - pushq %rcx ; \ - pushq %rdx ; \ - pushq %rbx ; \ - pushq %rbp ; \ - pushq %rsi ; \ - pushq %rdi ; \ - pushq %r8 ; \ - pushq %r9 ; \ - pushq %r10 ; \ - pushq %r11 ; \ - pushq %r12 ; \ - pushq %r13 ; \ - pushq %r14 ; \ - pushq %r15 ; \ + subq $TF_RIP,%rsp ; /* skip dummy tf_err and tf_trapno */ \ + movq %rax,TF_RAX(%rsp) ; \ + movq %rcx,TF_RCX(%rsp) ; \ + movq %rdx,TF_RDX(%rsp) ; \ + movq %rbx,TF_RBX(%rsp) ; \ + movq %rbp,TF_RBP(%rsp) ; \ + movq %rsi,TF_RSI(%rsp) ; \ + movq %rdi,TF_RDI(%rsp) ; \ + movq %r8,TF_R8(%rsp) ; \ + movq %r9,TF_R9(%rsp) ; \ + movq %r10,TF_R10(%rsp) ; \ + movq %r11,TF_R11(%rsp) ; \ + movq %r12,TF_R12(%rsp) ; \ + movq %r13,TF_R13(%rsp) ; \ + movq %r14,TF_R14(%rsp) ; \ + movq %r15,TF_R15(%rsp) ; \ FAKE_MCOUNT((12)*4(%rsp)) ; \ call critical_enter ; \ movq PCPU(CURTHREAD),%rbx ; \ @@ -69,23 +68,22 @@ .text ; \ SUPERALIGN_TEXT ; \ IDTVEC(vec_name) ; \ - pushq $0 ; /* dummy error code */ \ - pushq $0 ; /* dummy trap type */ \ - pushq %rax ; \ - pushq %rcx ; \ - pushq %rdx ; \ - pushq %rbx ; \ - pushq %rbp ; \ - pushq %rsi ; \ - pushq %rdi ; \ - pushq %r8 ; \ - pushq %r9 ; \ - pushq %r10 ; \ - pushq %r11 ; \ - pushq %r12 ; \ - pushq %r13 ; \ - pushq %r14 ; \ - pushq %r15 ; \ + subq $TF_RIP,%rsp ; /* skip dummy tf_err and tf_trapno */ \ + movq %rax,TF_RAX(%rsp) ; \ + movq %rcx,TF_RCX(%rsp) ; \ + movq %rdx,TF_RDX(%rsp) ; \ + movq %rbx,TF_RBX(%rsp) ; \ + movq %rbp,TF_RBP(%rsp) ; \ + movq %rsi,TF_RSI(%rsp) ; \ + movq %rdi,TF_RDI(%rsp) ; \ + movq %r8,TF_R8(%rsp) ; \ + movq %r9,TF_R9(%rsp) ; \ + movq %r10,TF_R10(%rsp) ; \ + movq %r11,TF_R11(%rsp) ; \ + movq %r12,TF_R12(%rsp) ; \ + movq %r13,TF_R13(%rsp) ; \ + movq %r14,TF_R14(%rsp) ; \ + movq %r15,TF_R15(%rsp) ; \ maybe_extra_ipending ; \ movb imen + IRQ_BYTE(irq_num),%al ; \ orb $IRQ_BIT(irq_num),%al ; \ From owner-p4-projects@FreeBSD.ORG Thu Apr 24 23:06:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8E27637B404; Thu, 24 Apr 2003 23:06:54 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2DBFD37B401 for ; Thu, 24 Apr 2003 23:06:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B1DBF43FAF for ; Thu, 24 Apr 2003 23:06:53 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P66r0U051924 for ; Thu, 24 Apr 2003 23:06:53 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P66rMA051919 for perforce@freebsd.org; Thu, 24 Apr 2003 23:06:53 -0700 (PDT) Date: Thu, 24 Apr 2003 23:06:53 -0700 (PDT) Message-Id: <200304250606.h3P66rMA051919@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29673 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 06:06:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=29673 Change 29673 by peter@peter_daintree on 2003/04/24 23:06:34 reorder trapframe so that the syscall arguments are at the beginning that is in an order that is suitable to be passed to the syscall dispatch directly. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/frame.h#10 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/frame.h#10 (text+ko) ==== @@ -46,24 +46,27 @@ /* * Exception/Trap Stack Frame + * + * The ordering of this is specifically so that we can take first 6 + * the syscall arguments directly from the beginning of the frame. */ struct trapframe { - register_t tf_r15; - register_t tf_r14; - register_t tf_r13; - register_t tf_r12; - register_t tf_r11; - register_t tf_r10; - register_t tf_r9; - register_t tf_r8; register_t tf_rdi; register_t tf_rsi; - register_t tf_rbp; - register_t tf_rbx; register_t tf_rdx; register_t tf_rcx; + register_t tf_r8; + register_t tf_r9; register_t tf_rax; + register_t tf_rbx; + register_t tf_rbp; + register_t tf_r10; + register_t tf_r11; + register_t tf_r12; + register_t tf_r13; + register_t tf_r14; + register_t tf_r15; register_t tf_trapno; /* below portion defined in 386 hardware */ register_t tf_err; @@ -77,21 +80,21 @@ /* Interrupt stack frame */ struct intrframe { - register_t if_r15; - register_t if_r14; - register_t if_r13; - register_t if_r12; - register_t if_r11; - register_t if_r10; - register_t if_r9; - register_t if_r8; register_t if_rdi; register_t if_rsi; - register_t if_rbp; - register_t if_rbx; register_t if_rdx; register_t if_rcx; + register_t if_r8; + register_t if_r9; register_t if_rax; + register_t if_rbx; + register_t if_rbp; + register_t if_r10; + register_t if_r11; + register_t if_r12; + register_t if_r13; + register_t if_r14; + register_t if_r15; register_t :64; /* for compat with trap frame - trapno */ register_t :64; /* for compat with trap frame - err */ /* below portion defined in 386 hardware */ @@ -105,21 +108,21 @@ /* frame of clock (same as interrupt frame) */ struct clockframe { - register_t cf_r15; - register_t cf_r14; - register_t cf_r13; - register_t cf_r12; - register_t cf_r11; - register_t cf_r10; - register_t cf_r9; - register_t cf_r8; register_t cf_rdi; register_t cf_rsi; - register_t cf_rbp; - register_t cf_rbx; register_t cf_rdx; register_t cf_rcx; + register_t cf_r8; + register_t cf_r9; register_t cf_rax; + register_t cf_rbx; + register_t cf_rbp; + register_t cf_r10; + register_t cf_r11; + register_t cf_r12; + register_t cf_r13; + register_t cf_r14; + register_t cf_r15; register_t :64; /* for compat with trap frame - trapno */ register_t :64; /* for compat with trap frame - err */ /* below portion defined in 386 hardware */ From owner-p4-projects@FreeBSD.ORG Thu Apr 24 23:17:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8F70337B404; Thu, 24 Apr 2003 23:17:07 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 409F737B401 for ; Thu, 24 Apr 2003 23:17:07 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D17CE43FCB for ; Thu, 24 Apr 2003 23:17:06 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P6H60U059224 for ; Thu, 24 Apr 2003 23:17:06 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P6H6ja059218 for perforce@freebsd.org; Thu, 24 Apr 2003 23:17:06 -0700 (PDT) Date: Thu, 24 Apr 2003 23:17:06 -0700 (PDT) Message-Id: <200304250617.h3P6H6ja059218@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29674 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 06:17:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=29674 Change 29674 by peter@peter_daintree on 2003/04/24 23:16:34 Shuffle the movq's around to match the trapframe and so that it accesses memory in increasing memory order. This should take advantage of any memory burst modes etc. Affected files ... .. //depot/projects/hammer/sys/x86_64/isa/icu_vector.s#10 edit .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#22 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/isa/icu_vector.s#10 (text+ko) ==== @@ -25,15 +25,15 @@ SUPERALIGN_TEXT ; \ IDTVEC(vec_name) ; \ subq $TF_RIP,%rsp ; /* skip dummy tf_err and tf_trapno */ \ + movq %rdi,TF_RDI(%rsp) ; \ + movq %rsi,TF_RSI(%rsp) ; \ + movq %rdx,TF_RDX(%rsp) ; \ + movq %rcx,TF_RCX(%rsp) ; \ + movq %r8,TF_R8(%rsp) ; \ + movq %r9,TF_R9(%rsp) ; \ movq %rax,TF_RAX(%rsp) ; \ - movq %rcx,TF_RCX(%rsp) ; \ - movq %rdx,TF_RDX(%rsp) ; \ movq %rbx,TF_RBX(%rsp) ; \ movq %rbp,TF_RBP(%rsp) ; \ - movq %rsi,TF_RSI(%rsp) ; \ - movq %rdi,TF_RDI(%rsp) ; \ - movq %r8,TF_R8(%rsp) ; \ - movq %r9,TF_R9(%rsp) ; \ movq %r10,TF_R10(%rsp) ; \ movq %r11,TF_R11(%rsp) ; \ movq %r12,TF_R12(%rsp) ; \ @@ -69,15 +69,15 @@ SUPERALIGN_TEXT ; \ IDTVEC(vec_name) ; \ subq $TF_RIP,%rsp ; /* skip dummy tf_err and tf_trapno */ \ + movq %rdi,TF_RDI(%rsp) ; \ + movq %rsi,TF_RSI(%rsp) ; \ + movq %rdx,TF_RDX(%rsp) ; \ + movq %rcx,TF_RCX(%rsp) ; \ + movq %r8,TF_R8(%rsp) ; \ + movq %r9,TF_R9(%rsp) ; \ movq %rax,TF_RAX(%rsp) ; \ - movq %rcx,TF_RCX(%rsp) ; \ - movq %rdx,TF_RDX(%rsp) ; \ movq %rbx,TF_RBX(%rsp) ; \ movq %rbp,TF_RBP(%rsp) ; \ - movq %rsi,TF_RSI(%rsp) ; \ - movq %rdi,TF_RDI(%rsp) ; \ - movq %r8,TF_R8(%rsp) ; \ - movq %r9,TF_R9(%rsp) ; \ movq %r10,TF_R10(%rsp) ; \ movq %r11,TF_R11(%rsp) ; \ movq %r12,TF_R12(%rsp) ; \ ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#22 (text+ko) ==== @@ -130,15 +130,15 @@ .type alltraps,@function alltraps: subq $TF_TRAPNO,%rsp /* tf_err and tf_trapno already pushed */ + movq %rdi,TF_RDI(%rsp) + movq %rsi,TF_RSI(%rsp) + movq %rdx,TF_RDX(%rsp) + movq %rcx,TF_RCX(%rsp) + movq %r8,TF_R8(%rsp) + movq %r9,TF_R9(%rsp) movq %rax,TF_RAX(%rsp) - movq %rcx,TF_RCX(%rsp) - movq %rdx,TF_RDX(%rsp) movq %rbx,TF_RBX(%rsp) movq %rbp,TF_RBP(%rsp) - movq %rsi,TF_RSI(%rsp) - movq %rdi,TF_RDI(%rsp) - movq %r8,TF_R8(%rsp) - movq %r9,TF_R9(%rsp) movq %r10,TF_R10(%rsp) movq %r11,TF_R11(%rsp) movq %r12,TF_R12(%rsp) @@ -171,15 +171,15 @@ IDTVEC(int0x80_syscall) pushq $2 /* sizeof "int 0x80" */ subq $TF_ERR,%rsp /* skip over tf_trapno */ + movq %rdi,TF_RDI(%rsp) + movq %rsi,TF_RSI(%rsp) + movq %rdx,TF_RDX(%rsp) + movq %rcx,TF_RCX(%rsp) + movq %r8,TF_R8(%rsp) + movq %r9,TF_R9(%rsp) movq %rax,TF_RAX(%rsp) - movq %rcx,TF_RCX(%rsp) - movq %rdx,TF_RDX(%rsp) movq %rbx,TF_RBX(%rsp) movq %rbp,TF_RBP(%rsp) - movq %rsi,TF_RSI(%rsp) - movq %rdi,TF_RDI(%rsp) - movq %r8,TF_R8(%rsp) - movq %r9,TF_R9(%rsp) movq %r10,TF_R10(%rsp) movq %r11,TF_R11(%rsp) movq %r12,TF_R12(%rsp) @@ -252,21 +252,21 @@ doreti_exit: MEXITCOUNT - movq TF_R15(%rsp),%r15 - movq TF_R14(%rsp),%r14 - movq TF_R13(%rsp),%r13 - movq TF_R12(%rsp),%r12 - movq TF_R11(%rsp),%r11 - movq TF_R10(%rsp),%r10 - movq TF_R9(%rsp),%r9 - movq TF_R8(%rsp),%r8 movq TF_RDI(%rsp),%rdi movq TF_RSI(%rsp),%rsi - movq TF_RBP(%rsp),%rbp - movq TF_RBX(%rsp),%rbx movq TF_RDX(%rsp),%rdx movq TF_RCX(%rsp),%rcx + movq TF_R8(%rsp),%r8 + movq TF_R9(%rsp),%r9 movq TF_RAX(%rsp),%rax + movq TF_RBX(%rsp),%rbx + movq TF_RBP(%rsp),%rbp + movq TF_R10(%rsp),%r10 + movq TF_R11(%rsp),%r11 + movq TF_R12(%rsp),%r12 + movq TF_R13(%rsp),%r13 + movq TF_R14(%rsp),%r14 + movq TF_R15(%rsp),%r15 addq $TF_RIP,%rsp /* skip over tf_err, tf_trapno */ .globl doreti_iret doreti_iret: @@ -283,23 +283,23 @@ .globl doreti_iret_fault doreti_iret_fault: subq $TF_RIP,%rsp /* space including tf_err, tf_trapno */ + movq %rdi,TF_RDI(%rsp) + movq %rsi,TF_RSI(%rsp) + movq %rdx,TF_RDX(%rsp) + movq %rcx,TF_RCX(%rsp) + movq %r8,TF_R8(%rsp) + movq %r9,TF_R9(%rsp) movq %rax,TF_RAX(%rsp) - movq %rcx,TF_RCX(%rsp) - movq %rdx,TF_RDX(%rsp) movq %rbx,TF_RBX(%rsp) movq %rbp,TF_RBP(%rsp) - movq %rsi,TF_RSI(%rsp) - movq %rdi,TF_RDI(%rsp) - movq %r8,TF_R8(%rsp) - movq %r9,TF_R9(%rsp) movq %r10,TF_R10(%rsp) movq %r11,TF_R11(%rsp) movq %r12,TF_R12(%rsp) movq %r13,TF_R13(%rsp) movq %r14,TF_R14(%rsp) movq %r15,TF_R15(%rsp) + movq $T_PROTFLT,TF_TRAPNO(%rsp) movq $0,TF_ERR(%rsp) /* XXX should be the error code */ - movq $T_PROTFLT,TF_TRAPNO(%rsp) jmp alltraps_with_regs_pushed #include "x86_64/isa/icu_ipl.s" From owner-p4-projects@FreeBSD.ORG Thu Apr 24 23:51:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 24A5137B404; Thu, 24 Apr 2003 23:51:52 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C47D637B401 for ; Thu, 24 Apr 2003 23:51:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4C79A43FD7 for ; Thu, 24 Apr 2003 23:51:51 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P6pp0U083201 for ; Thu, 24 Apr 2003 23:51:51 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P6poDR083191 for perforce@freebsd.org; Thu, 24 Apr 2003 23:51:50 -0700 (PDT) Date: Thu, 24 Apr 2003 23:51:50 -0700 (PDT) Message-Id: <200304250651.h3P6poDR083191@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29677 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 06:51:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=29677 Change 29677 by peter@peter_daintree on 2003/04/24 23:51:26 now that the trapframe is suitably reordered, steal the code from sparc64 where it points argp at the trapframe when possible. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/trap.c#30 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/trap.c#30 (text+ko) ==== @@ -653,8 +653,9 @@ int error; int narg; register_t args[8]; + register_t *argp; u_int code; - int syscallflag = 0; + int reg, regcnt; /* * note: PCPU_LAZY_INC() can only be used if we can afford @@ -671,6 +672,8 @@ } #endif + reg = 0; + regcnt = 6; sticks = td->td_sticks; td->td_frame = &frame; if (td->td_ucred != p->p_ucred) @@ -689,7 +692,8 @@ } else { if (code == SYS_syscall || code == SYS___syscall) { code = frame.tf_rdi; - syscallflag++; + reg++; + regcnt--; } } @@ -706,49 +710,25 @@ /* * copyin and the ktrsyscall()/ktrsysret() code is MP-aware */ - error = 0; - if (!syscallflag) { - if (narg != 0) { - /* XXX reorder trapframe so we can just copy the first 6 args */ - if (narg > 0) - args[0] = frame.tf_rdi; - if (narg > 1) - args[1] = frame.tf_rsi; - if (narg > 2) - args[2] = frame.tf_rdx; - if (narg > 3) - args[3] = frame.tf_rcx; - if (narg > 4) - args[4] = frame.tf_r8; - if (narg > 5) - args[5] = frame.tf_r9; - if (params != 0 && narg > 6) - error = copyin(params, (caddr_t)&args[6], - (u_int)((narg - 6) * sizeof(register_t))); - } + if (narg <= regcnt) { + argp = &frame.tf_rdi; + argp += reg; + error = 0; } else { - /* compensate for loss of 1 regparm */ - if (narg != 0) { - /* XXX reorder trapframe so we can just copy the first 6 args */ - if (narg > 0) - args[0] = frame.tf_rsi; - if (narg > 1) - args[1] = frame.tf_rdx; - if (narg > 2) - args[2] = frame.tf_rcx; - if (narg > 3) - args[3] = frame.tf_r8; - if (narg > 4) - args[4] = frame.tf_r9; - if (params != 0 && narg > 5) - error = copyin(params, (caddr_t)&args[5], - (u_int)((narg - 5) * sizeof(register_t))); - } + KASSERT(narg <= sizeof(args) / sizeof(args[0]), + ("Too many syscall arguments!")); + KASSERT(params != NULL, ("copyin args with no params!")); + argp = &frame.tf_rdi; + argp += reg; + bcopy(argp, args, sizeof(args[0]) * regcnt); + error = copyin(params, &args[regcnt], + (narg - regcnt) * sizeof(args[0])); + argp = &args[0]; } - + #ifdef KTRACE if (KTRPOINT(td, KTR_SYSCALL)) - ktrsyscall(code, narg, args); + ktrsyscall(code, narg, argp); #endif /* @@ -764,7 +744,7 @@ STOPEVENT(p, S_SCE, narg); - error = (*callp->sy_call)(td, args); + error = (*callp->sy_call)(td, argp); } switch (error) { From owner-p4-projects@FreeBSD.ORG Fri Apr 25 09:07:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3046837B405; Fri, 25 Apr 2003 09:07:42 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D4EEB37B404 for ; Fri, 25 Apr 2003 09:07:41 -0700 (PDT) Received: from mail.speakeasy.net (mail14.speakeasy.net [216.254.0.214]) by mx1.FreeBSD.org (Postfix) with ESMTP id CB8DC43FBD for ; Fri, 25 Apr 2003 09:07:40 -0700 (PDT) (envelope-from jhb@FreeBSD.org) Received: (qmail 16913 invoked from network); 25 Apr 2003 16:07:44 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender )encrypted SMTP for ; 25 Apr 2003 16:07:44 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.8/8.12.8) with ESMTP id h3PG7cOv003690; Fri, 25 Apr 2003 12:07:38 -0400 (EDT) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.4 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <200304250223.h3P2N5f6084031@repoman.freebsd.org> Date: Fri, 25 Apr 2003 12:07:41 -0400 (EDT) From: John Baldwin To: Peter Wemm cc: Perforce Change Reviews Subject: RE: PERFORCE change 29664 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 16:07:43 -0000 On 25-Apr-2003 Peter Wemm wrote: > http://perforce.freebsd.org/chv.cgi?CH=29664 > > Change 29664 by peter@peter_daintree on 2003/04/24 19:22:30 > > *no comment* Hahahaha. :) > Affected files ... > > .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#81 edit > > Differences ... > > ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#81 (text+ko) ==== > > @@ -1718,7 +1718,7 @@ > cs1 = (const char *)s1; > cs2 = (const char *)s2; > for (i = 0; i < len; i++) { > - diff = *cs2 - *cs1; > + diff = cs2[i] - cs1[i]; > if (diff) > return diff; > } -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ From owner-p4-projects@FreeBSD.ORG Fri Apr 25 09:14:57 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8C2BB37B404; Fri, 25 Apr 2003 09:14:56 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3711937B401 for ; Fri, 25 Apr 2003 09:14:56 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 002E743FE9 for ; Fri, 25 Apr 2003 09:14:54 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PGEs0U007257 for ; Fri, 25 Apr 2003 09:14:54 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PGErVE007238 for perforce@freebsd.org; Fri, 25 Apr 2003 09:14:53 -0700 (PDT) Date: Fri, 25 Apr 2003 09:14:53 -0700 (PDT) Message-Id: <200304251614.h3PGErVE007238@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 Subject: PERFORCE change 29695 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 16:14:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=29695 Change 29695 by jhb@jhb_laptop on 2003/04/25 09:14:36 IFC @29694. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/machdep.c#55 integrate .. //depot/projects/smpng/sys/alpha/include/_limits.h#2 integrate .. //depot/projects/smpng/sys/arm/include/_limits.h#2 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#26 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ioctl.h#7 integrate .. //depot/projects/smpng/sys/conf/options#53 integrate .. //depot/projects/smpng/sys/dev/drm/drmP.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_bufs.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_context.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_dma.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/drm_drv.h#9 integrate .. //depot/projects/smpng/sys/dev/drm/drm_fops.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/drm_init.h#3 delete .. //depot/projects/smpng/sys/dev/drm/drm_ioctl.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_lists.h#3 delete .. //depot/projects/smpng/sys/dev/drm/drm_lock.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_memory.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/drm_os_freebsd.h#7 integrate .. //depot/projects/smpng/sys/dev/drm/drm_sysctl.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_vm.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/mga_dma.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/mga_drv.c#3 integrate .. //depot/projects/smpng/sys/dev/drm/mga_drv.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/mga_state.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/r128_cce.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/r128_drv.c#3 integrate .. //depot/projects/smpng/sys/dev/drm/r128_drv.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/r128_state.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/radeon.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_cp.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drm.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drv.c#3 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drv.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_irq.c#2 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_mem.c#2 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_state.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/tdfx_drv.c#3 integrate .. //depot/projects/smpng/sys/dev/firewire/firewire.c#14 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci.c#15 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci_pci.c#11 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohcireg.h#6 integrate .. //depot/projects/smpng/sys/dev/firewire/sbp.c#14 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxp.c#33 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxpvar.h#9 integrate .. //depot/projects/smpng/sys/dev/iir/iir.c#6 integrate .. //depot/projects/smpng/sys/dev/iir/iir.h#4 integrate .. //depot/projects/smpng/sys/dev/iir/iir_ctrl.c#6 integrate .. //depot/projects/smpng/sys/dev/iir/iir_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/pccard/pccardvar.h#13 integrate .. //depot/projects/smpng/sys/dev/sr/if_sr.c#9 integrate .. //depot/projects/smpng/sys/dev/sr/if_sr_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/sr/if_sr_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/sr/if_srregs.h#3 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_vfsops.c#17 integrate .. //depot/projects/smpng/sys/geom/geom.h#26 integrate .. //depot/projects/smpng/sys/geom/geom_bsd.c#28 integrate .. //depot/projects/smpng/sys/geom/geom_disk.c#23 integrate .. //depot/projects/smpng/sys/geom/geom_dump.c#18 integrate .. //depot/projects/smpng/sys/geom/geom_event.c#16 integrate .. //depot/projects/smpng/sys/geom/geom_int.h#11 integrate .. //depot/projects/smpng/sys/geom/geom_kern.c#14 integrate .. //depot/projects/smpng/sys/geom/geom_mbr.c#19 integrate .. //depot/projects/smpng/sys/geom/geom_pc98.c#17 integrate .. //depot/projects/smpng/sys/geom/geom_slice.c#20 integrate .. //depot/projects/smpng/sys/geom/geom_slice.h#12 integrate .. //depot/projects/smpng/sys/geom/geom_subr.c#25 integrate .. //depot/projects/smpng/sys/geom/geom_sunlabel.c#20 integrate .. //depot/projects/smpng/sys/i386/conf/NOTES#56 integrate .. //depot/projects/smpng/sys/i386/i386/machdep.c#58 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#36 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#54 integrate .. //depot/projects/smpng/sys/i386/include/_limits.h#2 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_proto.h#7 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_syscall.h#7 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_sysent.c#7 integrate .. //depot/projects/smpng/sys/ia64/ia32/syscalls.master#10 integrate .. //depot/projects/smpng/sys/ia64/ia64/machdep.c#52 integrate .. //depot/projects/smpng/sys/ia64/include/_limits.h#2 integrate .. //depot/projects/smpng/sys/kern/kern_context.c#4 integrate .. //depot/projects/smpng/sys/kern/kern_mac.c#23 integrate .. //depot/projects/smpng/sys/kern/kern_proc.c#50 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#62 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#30 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#13 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#49 integrate .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#54 integrate .. //depot/projects/smpng/sys/net/if_ethersubr.c#31 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vfsops.c#21 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#28 integrate .. //depot/projects/smpng/sys/nfsserver/nfs_serv.c#27 integrate .. //depot/projects/smpng/sys/pc98/conf/NOTES#5 integrate .. //depot/projects/smpng/sys/pc98/i386/machdep.c#52 integrate .. //depot/projects/smpng/sys/pccard/cardinfo.h#6 integrate .. //depot/projects/smpng/sys/pccard/pccard.c#19 integrate .. //depot/projects/smpng/sys/pccard/pccard_nbk.c#10 integrate .. //depot/projects/smpng/sys/pccard/slot.h#7 integrate .. //depot/projects/smpng/sys/powerpc/include/_limits.h#2 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/machdep.c#36 integrate .. //depot/projects/smpng/sys/sparc64/include/_limits.h#2 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/machdep.c#48 integrate .. //depot/projects/smpng/sys/sys/limits.h#1 branch .. //depot/projects/smpng/sys/sys/proc.h#84 integrate .. //depot/projects/smpng/sys/sys/ucontext.h#7 integrate .. //depot/projects/smpng/sys/vm/swap_pager.h#8 integrate .. //depot/projects/smpng/sys/vm/vm_contig.c#13 integrate .. //depot/projects/smpng/sys/vm/vm_map.c#34 integrate .. //depot/projects/smpng/sys/vm/vm_object.c#31 integrate .. //depot/projects/smpng/sys/vm/vm_page.c#36 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.c#28 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.h#8 integrate .. //depot/projects/smpng/sys/x86_64/include/_limits.h#2 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/machdep.c#55 (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/alpha/alpha/machdep.c,v 1.200 2003/04/18 20:09:03 jhb Exp $ + * $FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.201 2003/04/25 01:50:28 deischen Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -1977,13 +1977,17 @@ } int -get_mcontext(struct thread *td, mcontext_t *mcp) +get_mcontext(struct thread *td, mcontext_t *mcp, int clear_ret) { /* * Use a trapframe for getsetcontext, so just copy the * threads trapframe. */ - bcopy(&td->td_frame, &mcp->mc_regs, sizeof(td->td_frame)); + bcopy(td->td_frame, &mcp->mc_regs, sizeof(struct trapframe)); + if (clear_ret != 0) { + mcp->mc_regs[FRAME_V0] = 0; + mcp->mc_regs[FRAME_A4] = 0; + } /* * When the thread is the current thread, the user stack pointer @@ -2029,7 +2033,7 @@ * The context is a trapframe, so just copy it over the * threads frame. */ - bcopy(&mcp->mc_regs, &td->td_frame, sizeof(td->td_frame)); + bcopy(&mcp->mc_regs, td->td_frame, sizeof(struct trapframe)); } return (0); } ==== //depot/projects/smpng/sys/alpha/include/_limits.h#2 (text+ko) ==== @@ -32,76 +32,61 @@ * * @(#)limits.h 8.3 (Berkeley) 1/4/94 * From: NetBSD: limits.h,v 1.3 1997/04/06 08:47:31 cgd Exp - * $FreeBSD: src/sys/alpha/include/_limits.h,v 1.10 2002/12/22 06:38:44 tjr Exp $ + * $FreeBSD: src/sys/alpha/include/_limits.h,v 1.11 2003/04/23 21:41:58 kan Exp $ */ -#ifndef _MACHINE_LIMITS_H_ -#define _MACHINE_LIMITS_H_ +#ifndef _MACHINE__LIMITS_H_ +#define _MACHINE__LIMITS_H_ -#define CHAR_BIT 8 /* number of bits in a char */ +#define __CHAR_BIT 8 /* number of bits in a char */ -/* - * According to ANSI (section 2.2.4.2), the values below must be usable by - * #if preprocessing directives. Additionally, the expression must have the - * same type as would an expression that is an object of the corresponding - * type converted according to the integral promotions. The subtraction for - * INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an - * unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2). - * These numbers are for the default configuration of gcc. They work for - * some other compilers as well, but this should not be depended on. - */ -#define SCHAR_MAX 0x7f /* max value for a signed char */ -#define SCHAR_MIN (-0x7f-1) /* min value for a signed char */ +#define __SCHAR_MAX 0x7f /* max value for a signed char */ +#define __SCHAR_MIN (-0x7f-1) /* min value for a signed char */ -#define UCHAR_MAX 0xffU /* max value for an unsigned char */ -#define CHAR_MAX 0x7f /* max value for a char */ -#define CHAR_MIN (-0x7f-1) /* min value for a char */ +#define __UCHAR_MAX 0xffU /* max value for an unsigned char */ +#define __CHAR_MAX 0x7f /* max value for a char */ +#define __CHAR_MIN (-0x7f-1) /* min value for a char */ -#define USHRT_MAX 0xffffU /* max value for an unsigned short */ -#define SHRT_MAX 0x7fff /* max value for a short */ -#define SHRT_MIN (-0x7fff-1) /* min value for a short */ +#define __USHRT_MAX 0xffffU /* max value for an unsigned short */ +#define __SHRT_MAX 0x7fff /* max value for a short */ +#define __SHRT_MIN (-0x7fff-1) /* min value for a short */ -#define UINT_MAX 0xffffffffU /* max value for an unsigned int */ -#define INT_MAX 0x7fffffff /* max value for an int */ -#define INT_MIN (-0x7fffffff-1) /* min value for an int */ +#define __UINT_MAX 0xffffffffU /* max value for an unsigned int */ +#define __INT_MAX 0x7fffffff /* max value for an int */ +#define __INT_MIN (-0x7fffffff-1) /* min value for an int */ -#define ULONG_MAX 0xffffffffffffffffUL /* max for an unsigned long */ -#define LONG_MAX 0x7fffffffffffffffL /* max for a long */ -#define LONG_MIN (-0x7fffffffffffffffL-1) /* min for a long */ +#define __ULONG_MAX 0xffffffffffffffffUL /* max for an unsigned long */ +#define __LONG_MAX 0x7fffffffffffffffL /* max for a long */ +#define __LONG_MIN (-0x7fffffffffffffffL-1) /* min for a long */ /* Long longs and longs are the same size on the alpha. */ /* max for an unsigned long long */ -#define ULLONG_MAX 0xffffffffffffffffULL -#define LLONG_MAX 0x7fffffffffffffffLL /* max for a long long */ -#define LLONG_MIN (-0x7fffffffffffffffLL-1) /* min for a long long */ +#define __ULLONG_MAX 0xffffffffffffffffULL +#define __LLONG_MAX 0x7fffffffffffffffLL /* max for a long long */ +#define __LLONG_MIN (-0x7fffffffffffffffLL-1) /* min for a long long */ -#if !defined(_ANSI_SOURCE) -#define SSIZE_MAX LONG_MAX /* max value for a ssize_t */ +#define __SSIZE_MAX __LONG_MAX /* max value for a ssize_t */ -#if !defined(_POSIX_SOURCE) && !defined(_XOPEN_SOURCE) -#define SIZE_T_MAX ULONG_MAX /* max value for a size_t */ +#define __SIZE_T_MAX __ULONG_MAX /* max value for a size_t */ -#define OFF_MAX LONG_MAX /* max value for a off_t */ -#define OFF_MIN LONG_MIN /* min value for a off_t */ +#define __OFF_MAX __LONG_MAX /* max value for a off_t */ +#define __OFF_MIN __LONG_MIN /* min value for a off_t */ /* Quads and longs are the same on the alpha. Ensure they stay in sync. */ -#define UQUAD_MAX (ULONG_MAX) /* max value for a uquad_t */ -#define QUAD_MAX (LONG_MAX) /* max value for a quad_t */ -#define QUAD_MIN (LONG_MIN) /* min value for a quad_t */ -#endif /* !_POSIX_SOURCE && !_XOPEN_SOURCE */ -#endif /* !_ANSI_SOURCE */ +#define __UQUAD_MAX (__ULONG_MAX) /* max value for a uquad_t */ +#define __QUAD_MAX (__LONG_MAX) /* max value for a quad_t */ +#define __QUAD_MIN (__LONG_MIN) /* min value for a quad_t */ -#if (!defined(_ANSI_SOURCE)&&!defined(_POSIX_SOURCE)) || defined(_XOPEN_SOURCE) -#define LONG_BIT 64 -#define WORD_BIT 32 +#define __LONG_BIT 64 +#define __WORD_BIT 32 -#define DBL_DIG 15 -#define DBL_MAX 1.7976931348623157E+308 -#define DBL_MIN 2.2250738585072014E-308 +#define __DBL_DIG 15 +#define __DBL_MAX 1.7976931348623157E+308 +#define __DBL_MIN 2.2250738585072014E-308 -#define FLT_DIG 6 -#define FLT_MAX 3.40282347E+38F -#define FLT_MIN 1.17549435E-38F +#define __FLT_DIG 6 +#define __FLT_MAX 3.40282347E+38F +#define __FLT_MIN 1.17549435E-38F #endif -#endif /* !_MACHINE_LIMITS_H_ */ +#endif /* !_MACHINE__LIMITS_H_ */ ==== //depot/projects/smpng/sys/arm/include/_limits.h#2 (text+ko) ==== @@ -31,75 +31,68 @@ * SUCH DAMAGE. * * @(#)limits.h 8.3 (Berkeley) 1/4/94 - * $FreeBSD: src/sys/arm/include/_limits.h,v 1.3 2002/12/22 06:38:44 tjr Exp $ + * $FreeBSD: src/sys/arm/include/_limits.h,v 1.4 2003/04/23 21:41:58 kan Exp $ */ -#ifndef _MACHINE_LIMITS_H_ -#define _MACHINE_LIMITS_H_ +#ifndef _MACHINE__LIMITS_H_ +#define _MACHINE__LIMITS_H_ -#define CHAR_BIT 8 /* number of bits in a char */ +#define __CHAR_BIT 8 /* number of bits in a char */ -/* - * According to ANSI (section 2.2.4.2), the values below must be usable by - * #if preprocessing directives. Additionally, the expression must have the - * same type as would an expression that is an object of the corresponding - * type converted according to the integral promotions. The subtraction for - * INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an - * unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2). - * These numbers are for the default configuration of gcc. They work for - * some other compilers as well, but this should not be depended on. - */ -#define SCHAR_MAX 0x7f /* max value for a signed char */ -#define SCHAR_MIN (-0x7f - 1) /* min value for a signed char */ +#define __SCHAR_MAX 0x7f /* max value for a signed char */ +#define __SCHAR_MIN (-0x7f - 1) /* min value for a signed char */ -#define UCHAR_MAX 0xff /* max value for an unsigned char */ +#define __UCHAR_MAX 0xff /* max value for an unsigned char */ -#ifdef __CHAR_UNSIGNED__ -#define CHAR_MAX UCHAR_MAX /* max value for a char */ -#define CHAR_MIN 0 /* min value for a char */ -#else -#define CHAR_MAX SCHAR_MAX /* max value for a char */ -#define CHAR_MIN SCHAR_MIN /* min value for a char */ -#endif +#define __USHRT_MAX 0xffff /* max value for an unsigned short */ +#define __SHRT_MAX 0x7fff /* max value for a short */ +#define __SHRT_MIN (-0x7fff - 1) /* min value for a short */ -#define USHRT_MAX 0xffff /* max value for an unsigned short */ -#define SHRT_MAX 0x7fff /* max value for a short */ -#define SHRT_MIN (-0x7fff - 1) /* min value for a short */ - -#define UINT_MAX 0xffffffffU /* max value for an unsigned int */ -#define INT_MAX 0x7fffffff /* max value for an int */ -#define INT_MIN (-0x7fffffff - 1) /* min value for an int */ +#define __UINT_MAX 0xffffffffU /* max value for an unsigned int */ +#define __INT_MAX 0x7fffffff /* max value for an int */ +#define __INT_MIN (-0x7fffffff - 1) /* min value for an int */ /* Bad hack for gcc configured to give 64-bit longs. */ #ifdef _LARGE_LONG -#define ULONG_MAX 0xffffffffffffffffUL -#define LONG_MAX 0x7fffffffffffffffL -#define LONG_MIN (-0x7fffffffffffffffL - 1) +#define __ULONG_MAX 0xffffffffffffffffUL +#define __LONG_MAX 0x7fffffffffffffffL +#define __LONG_MIN (-0x7fffffffffffffffL - 1) #else -#define ULONG_MAX 0xffffffffUL /* max value for an unsigned long */ -#define LONG_MAX 0x7fffffffL /* max value for a long */ -#define LONG_MIN (-0x7fffffffL - 1) /* min value for a long */ +#define __ULONG_MAX 0xffffffffUL /* max value for an unsigned long */ +#define __LONG_MAX 0x7fffffffL /* max value for a long */ +#define __LONG_MIN (-0x7fffffffL - 1) /* min value for a long */ #endif /* max value for an unsigned long long */ -#define ULLONG_MAX 0xffffffffffffffffULL -#define LLONG_MAX 0x7fffffffffffffffLL /* max value for a long long */ -#define LLONG_MIN (-0x7fffffffffffffffLL - 1) /* min for a long long */ +#define __ULLONG_MAX 0xffffffffffffffffULL +#define __LLONG_MAX 0x7fffffffffffffffLL /* max value for a long long */ +#define __LLONG_MIN (-0x7fffffffffffffffLL - 1) /* min for a long long */ -#if !defined(_ANSI_SOURCE) -#define SSIZE_MAX INT_MAX /* max value for a ssize_t */ +#define __SSIZE_MAX __INT_MAX /* max value for a ssize_t */ -#if !defined(_POSIX_SOURCE) -#define SIZE_T_MAX UINT_MAX /* max value for a size_t */ +#define __SIZE_T_MAX __UINT_MAX /* max value for a size_t */ -#define OFF_MAX LLONG_MAX /* max value for a off_t */ -#define OFF_MIN LLONG_MIN /* min value for a off_t */ +#define __OFF_MAX __LLONG_MAX /* max value for a off_t */ +#define __OFF_MIN __LLONG_MIN /* min value for a off_t */ /* Quads and long longs are the same size. Ensure they stay in sync. */ -#define UQUAD_MAX ULLONG_MAX /* max value for a uquad_t */ -#define QUAD_MAX LLONG_MAX /* max value for a quad_t */ -#define QUAD_MIN LLONG_MIN /* min value for a quad_t */ -#endif /* !_POSIX_SOURCE */ -#endif /* !_ANSI_SOURCE */ +#define __UQUAD_MAX __ULLONG_MAX /* max value for a uquad_t */ +#define __QUAD_MAX __LLONG_MAX /* max value for a quad_t */ +#define __QUAD_MIN __LLONG_MIN /* min value for a quad_t */ + +#ifdef _LARGE_LONG +#define __LONG_BIT 64 +#else +#define __LONG_BIT 32 +#endif +#define __WORD_BIT 32 + +#define __DBL_DIG 15 +#define __DBL_MAX 1.7976931348623157E+308 +#define __DBL_MIN 2.2250738585072014E-308 + +#define __FLT_DIG 6 +#define __FLT_MAX 3.40282347E+38F +#define __FLT_MIN 1.17549435E-38F -#endif /* !_MACHINE_LIMITS_H_ */ +#endif /* !_MACHINE__LIMITS_H_ */ ==== //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#26 (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/linux/linux_ioctl.c,v 1.106 2003/04/16 20:57:35 phk Exp $ + * $FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.107 2003/04/24 23:36:35 anholt Exp $ */ #include @@ -69,6 +69,7 @@ static linux_ioctl_function_t linux_ioctl_sound; static linux_ioctl_function_t linux_ioctl_termio; static linux_ioctl_function_t linux_ioctl_private; +static linux_ioctl_function_t linux_ioctl_drm; static linux_ioctl_function_t linux_ioctl_special; static struct linux_ioctl_handler cdrom_handler = @@ -87,6 +88,8 @@ { linux_ioctl_termio, LINUX_IOCTL_TERMIO_MIN, LINUX_IOCTL_TERMIO_MAX }; static struct linux_ioctl_handler private_handler = { linux_ioctl_private, LINUX_IOCTL_PRIVATE_MIN, LINUX_IOCTL_PRIVATE_MAX }; +static struct linux_ioctl_handler drm_handler = +{ linux_ioctl_drm, LINUX_IOCTL_DRM_MIN, LINUX_IOCTL_DRM_MAX }; DATA_SET(linux_ioctl_handler_set, cdrom_handler); DATA_SET(linux_ioctl_handler_set, vfat_handler); @@ -96,6 +99,7 @@ DATA_SET(linux_ioctl_handler_set, sound_handler); DATA_SET(linux_ioctl_handler_set, termio_handler); DATA_SET(linux_ioctl_handler_set, private_handler); +DATA_SET(linux_ioctl_handler_set, drm_handler); struct handler_element { @@ -2331,6 +2335,16 @@ } /* + * DRM ioctl handler (sys/dev/drm) + */ +static int +linux_ioctl_drm(struct thread *td, struct linux_ioctl_args *args) +{ + args->cmd = SETDIR(args->cmd); + return ioctl(td, (struct ioctl_args *)args); +} + +/* * Special ioctl handler */ static int ==== //depot/projects/smpng/sys/compat/linux/linux_ioctl.h#7 (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/linux/linux_ioctl.h,v 1.15 2002/10/11 11:43:08 sobomax Exp $ + * $FreeBSD: src/sys/compat/linux/linux_ioctl.h,v 1.16 2003/04/24 23:36:35 anholt Exp $ */ #ifndef _LINUX_IOCTL_H_ @@ -667,6 +667,9 @@ #define LINUX_ASYNC_CALLOUT_NOHUP 0x0400 #define LINUX_ASYNC_FLAGS 0x0FFF +#define LINUX_IOCTL_DRM_MIN 0x6400 +#define LINUX_IOCTL_DRM_MAX 0x64ff + /* * This doesn't really belong here, but I can't think of a better * place to put it. ==== //depot/projects/smpng/sys/conf/options#53 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.391 2003/04/15 20:59:43 jhb Exp $ +# $FreeBSD: src/sys/conf/options,v 1.392 2003/04/25 01:18:45 anholt Exp $ # # On the handling of kernel options # @@ -394,7 +394,6 @@ NETGRAPH_VJC opt_netgraph.h # DRM options -DRM_LINUX opt_drm.h DRM_DEBUG opt_drm.h ZERO_COPY_SOCKETS opt_zero.h ==== //depot/projects/smpng/sys/dev/drm/drmP.h#3 (text+ko) ==== @@ -27,7 +27,7 @@ * Authors: * Rickard E. (Rik) Faith * Gareth Hughes - * $FreeBSD: src/sys/dev/drm/drmP.h,v 1.3 2003/03/09 02:08:28 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drmP.h,v 1.4 2003/04/25 01:18:46 anholt Exp $ */ #ifndef _DRM_P_H_ @@ -52,15 +52,6 @@ #ifndef __HAVE_DMA_IRQ #define __HAVE_DMA_IRQ 0 #endif -#ifndef __HAVE_DMA_WAITLIST -#define __HAVE_DMA_WAITLIST 0 -#endif -#ifndef __HAVE_DMA_FREELIST -#define __HAVE_DMA_FREELIST 0 -#endif -#ifndef __HAVE_DMA_HISTOGRAM -#define __HAVE_DMA_HISTOGRAM 0 -#endif #define DRM_DEBUG_CODE 0 /* Include debugging code (if > 1, then also include looping detection. */ @@ -83,12 +74,8 @@ #define DRM_HASH_SIZE 16 /* Size of key hash table */ #define DRM_KERNEL_CONTEXT 0 /* Change drm_resctx if changed */ #define DRM_RESERVED_CONTEXTS 1 /* Change drm_resctx if changed */ -#define DRM_LOOPING_LIMIT 5000000 -#define DRM_BSZ 1024 /* Buffer size for /dev/drm? output */ -#define DRM_LOCK_SLICE 1 /* Time slice for lock, in jiffies */ #define DRM_FLAG_DEBUG 0x01 -#define DRM_FLAG_NOCTX 0x02 #define DRM_MEM_DMA 0 #define DRM_MEM_SAREA 1 @@ -96,30 +83,23 @@ #define DRM_MEM_MAGIC 3 #define DRM_MEM_IOCTLS 4 #define DRM_MEM_MAPS 5 -#define DRM_MEM_VMAS 6 -#define DRM_MEM_BUFS 7 -#define DRM_MEM_SEGS 8 -#define DRM_MEM_PAGES 9 -#define DRM_MEM_FILES 10 -#define DRM_MEM_QUEUES 11 -#define DRM_MEM_CMDS 12 -#define DRM_MEM_MAPPINGS 13 -#define DRM_MEM_BUFLISTS 14 -#define DRM_MEM_AGPLISTS 15 -#define DRM_MEM_TOTALAGP 16 -#define DRM_MEM_BOUNDAGP 17 -#define DRM_MEM_CTXBITMAP 18 -#define DRM_MEM_STUB 19 -#define DRM_MEM_SGLISTS 20 +#define DRM_MEM_BUFS 6 +#define DRM_MEM_SEGS 7 +#define DRM_MEM_PAGES 8 +#define DRM_MEM_FILES 9 +#define DRM_MEM_QUEUES 10 +#define DRM_MEM_CMDS 11 +#define DRM_MEM_MAPPINGS 12 +#define DRM_MEM_BUFLISTS 13 +#define DRM_MEM_AGPLISTS 14 +#define DRM_MEM_TOTALAGP 15 +#define DRM_MEM_BOUNDAGP 16 +#define DRM_MEM_CTXBITMAP 17 +#define DRM_MEM_STUB 18 +#define DRM_MEM_SGLISTS 19 #define DRM_MAX_CTXBITMAP (PAGE_SIZE * 8) - /* Backward compatibility section */ - /* _PAGE_WT changed to _PAGE_PWT in 2.2.6 */ -#ifndef _PAGE_PWT -#define _PAGE_PWT _PAGE_WT -#endif - /* Mapping helper macros */ #define DRM_IOREMAP(map) \ (map)->handle = DRM(ioremap)( dev, map ) @@ -147,22 +127,12 @@ } while(0) -typedef struct drm_pci_list { - u16 vendor; - u16 device; -} drm_pci_list_t; - typedef struct drm_ioctl_desc { - d_ioctl_t *func; + int (*func)(DRM_IOCTL_ARGS); int auth_needed; int root_only; } drm_ioctl_desc_t; -typedef struct drm_devstate { - pid_t owner; /* X server pid holding x_lock */ - -} drm_devstate_t; - typedef struct drm_magic_entry { drm_magic_t magic; struct drm_file *priv; @@ -174,12 +144,6 @@ struct drm_magic_entry *tail; } drm_magic_head_t; -typedef struct drm_vma_entry { - struct vm_area_struct *vma; - struct drm_vma_entry *next; - pid_t pid; -} drm_vma_entry_t; - typedef struct drm_buf { int idx; /* Index into master buflist */ int total; /* Buffer size */ @@ -189,12 +153,9 @@ void *address; /* Address of buffer */ unsigned long bus_address; /* Bus address of buffer */ struct drm_buf *next; /* Kernel-only: used for free list */ - __volatile__ int waiting; /* On kernel DMA queue */ __volatile__ int pending; /* On hardware DMA queue */ - wait_queue_head_t dma_wait; /* Processes waiting */ - pid_t pid; /* PID of holding process */ + DRMFILE filp; /* Unique identifier of holding process */ int context; /* Kernel queue for this buffer */ - int while_locked;/* Dispatch this buffer while locked */ enum { DRM_LIST_NONE = 0, DRM_LIST_FREE = 1, @@ -204,39 +165,10 @@ DRM_LIST_RECLAIM = 5 } list; /* Which list we're on */ -#if DRM_DMA_HISTOGRAM - cycles_t time_queued; /* Queued to kernel DMA queue */ - cycles_t time_dispatched; /* Dispatched to hardware */ - cycles_t time_completed; /* Completed by hardware */ - cycles_t time_freed; /* Back on freelist */ -#endif - int dev_priv_size; /* Size of buffer private stoarge */ void *dev_private; /* Per-buffer private storage */ } drm_buf_t; -#if DRM_DMA_HISTOGRAM -#define DRM_DMA_HISTOGRAM_SLOTS 9 -#define DRM_DMA_HISTOGRAM_INITIAL 10 -#define DRM_DMA_HISTOGRAM_NEXT(current) ((current)*10) -typedef struct drm_histogram { - atomic_t total; - - atomic_t queued_to_dispatched[DRM_DMA_HISTOGRAM_SLOTS]; - atomic_t dispatched_to_completed[DRM_DMA_HISTOGRAM_SLOTS]; - atomic_t completed_to_freed[DRM_DMA_HISTOGRAM_SLOTS]; - - atomic_t queued_to_completed[DRM_DMA_HISTOGRAM_SLOTS]; - atomic_t queued_to_freed[DRM_DMA_HISTOGRAM_SLOTS]; - - atomic_t dma[DRM_DMA_HISTOGRAM_SLOTS]; - atomic_t schedule[DRM_DMA_HISTOGRAM_SLOTS]; - atomic_t ctx[DRM_DMA_HISTOGRAM_SLOTS]; - atomic_t lacq[DRM_DMA_HISTOGRAM_SLOTS]; - atomic_t lhld[DRM_DMA_HISTOGRAM_SLOTS]; -} drm_histogram_t; -#endif - /* bufs is one longer than it has to be */ typedef struct drm_waitlist { int count; /* Number of possible buffers */ @@ -253,10 +185,8 @@ atomic_t count; /* Number of free buffers */ drm_buf_t *next; /* End pointer */ - wait_queue_head_t waiting; /* Processes waiting on free bufs */ int low_mark; /* Low water mark */ int high_mark; /* High water mark */ - atomic_t wfh; /* If waiting for high mark */ DRM_SPINTYPE lock; } drm_freelist_t; @@ -289,48 +219,14 @@ struct drm_device *devXX; }; -typedef struct drm_queue { - atomic_t use_count; /* Outstanding uses (+1) */ - atomic_t finalization; /* Finalization in progress */ - atomic_t block_count; /* Count of processes waiting */ - atomic_t block_read; /* Queue blocked for reads */ - wait_queue_head_t read_queue; /* Processes waiting on block_read */ - atomic_t block_write; /* Queue blocked for writes */ - wait_queue_head_t write_queue; /* Processes waiting on block_write */ -#if 1 - atomic_t total_queued; /* Total queued statistic */ - atomic_t total_flushed;/* Total flushes statistic */ - atomic_t total_locks; /* Total locks statistics */ -#endif - drm_ctx_flags_t flags; /* Context preserving and 2D-only */ - drm_waitlist_t waitlist; /* Pending buffers */ - wait_queue_head_t flush_queue; /* Processes waiting until flush */ -} drm_queue_t; - typedef struct drm_lock_data { drm_hw_lock_t *hw_lock; /* Hardware lock */ - pid_t pid; /* PID of lock holder (0=kernel) */ + DRMFILE filp; /* Unique identifier of holding process (NULL is kernel)*/ wait_queue_head_t lock_queue; /* Queue of blocked processes */ unsigned long lock_time; /* Time of last lock in jiffies */ } drm_lock_data_t; typedef struct drm_device_dma { -#if 0 - /* Performance Counters */ - atomic_t total_prio; /* Total DRM_DMA_PRIORITY */ - atomic_t total_bytes; /* Total bytes DMA'd */ - atomic_t total_dmas; /* Total DMA buffers dispatched */ - - atomic_t total_missed_dma; /* Missed drm_do_dma */ - atomic_t total_missed_lock; /* Missed lock in drm_do_dma */ - atomic_t total_missed_free; /* Missed drm_free_this_buffer */ - atomic_t total_missed_sched;/* Missed drm_dma_schedule */ - - atomic_t total_tried; /* Tried next_buffer */ - atomic_t total_hit; /* Sent next_buffer */ - atomic_t total_lost; /* Lost interrupt */ -#endif - drm_buf_entry_t bufs[DRM_MAX_ORDER+1]; int buf_count; drm_buf_t **buflist; /* Vector of pointers info bufs */ @@ -346,8 +242,6 @@ /* DMA support */ drm_buf_t *this_buffer; /* Buffer being sent */ drm_buf_t *next_buffer; /* Selected buffer to send */ - drm_queue_t *next_queue; /* Queue from which buffer selected*/ - wait_queue_head_t waiting; /* Processes waiting on free bufs */ } drm_device_dma_t; #if __REALLY_HAVE_AGP @@ -381,11 +275,6 @@ dma_addr_t *busaddr; } drm_sg_mem_t; -typedef struct drm_sigdata { - int context; - drm_hw_lock_t *lock; -} drm_sigdata_t; - typedef struct drm_local_map { unsigned long offset; /* Physical address (0 for SAREA)*/ unsigned long size; /* Physical size (bytes) */ @@ -424,21 +313,16 @@ device_t device; /* Device instance from newbus */ #endif dev_t devnode; /* Device number for mknod */ - char *devname; /* For /proc/interrupts */ - int blocked; /* Blocked due to VC switch? */ int flags; /* Flags to open(2) */ - int writable; /* Opened with FWRITE */ /* Locks */ - DRM_SPINTYPE count_lock; /* For inuse, open_count, buf_use */ + DRM_SPINTYPE count_lock; /* For open_count, buf_use, buf_alloc */ struct lock dev_lock; /* For others */ /* Usage Counters */ int open_count; /* Outstanding files open */ - atomic_t ioctl_count; /* Outstanding IOCTLs pending */ - atomic_t vma_count; /* Outstanding vma areas open */ int buf_use; /* Buffers in use -- cannot alloc */ - atomic_t buf_alloc; /* Buffer allocation in progress */ + int buf_alloc; /* Buffer allocation in progress */ /* Performance counters */ unsigned long counters; @@ -451,19 +335,13 @@ /* Memory management */ drm_map_list_t *maplist; /* Linked list of regions */ - int map_count; /* Number of mappable regions */ drm_local_map_t **context_sareas; int max_context; - drm_vma_entry_t *vmalist; /* List of vmas (for debugging) */ drm_lock_data_t lock; /* Information on hardware lock */ /* DMA queues (contexts) */ - int queue_count; /* Number of active DMA queues */ - int queue_reserved; /* Number of reserved DMA queues */ - int queue_slots; /* Actual length of queuelist */ - drm_queue_t **queuelist; /* Vector of pointers to DMA queues */ drm_device_dma_t *dma; /* Optional pointer for DMA support */ /* Context support */ @@ -477,45 +355,25 @@ #endif void *irqh; /* Handle from bus_setup_intr */ atomic_t context_flag; /* Context swapping flag */ - atomic_t interrupt_flag; /* Interruption handler flag */ - atomic_t dma_flag; /* DMA dispatch flag */ struct callout timer; /* Timer for delaying ctx switch */ - wait_queue_head_t context_wait; /* Processes waiting on ctx switch */ - int last_checked; /* Last context checked for DMA */ int last_context; /* Last current context */ - unsigned long last_switch; /* jiffies at last context switch */ #if __FreeBSD_version >= 400005 struct task task; #endif #if __HAVE_VBL_IRQ wait_queue_head_t vbl_queue; /* vbl wait channel */ atomic_t vbl_received; -#if 0 /* vbl signals are untested, ntested */ +#if 0 /* vbl signals are untested */ struct drm_vbl_sig_list vbl_sig_list; DRM_SPINTYPE vbl_lock; #endif #endif - cycles_t ctx_start; - cycles_t lck_start; -#if __HAVE_DMA_HISTOGRAM - drm_histogram_t histo; -#endif - /* Callback to X server for context switch - and for heavy-handed reset. */ - char buf[DRM_BSZ]; /* Output buffer */ - char *buf_rp; /* Read pointer */ - char *buf_wp; /* Write pointer */ - char *buf_end; /* End pointer */ #ifdef __FreeBSD__ struct sigio *buf_sigio; /* Processes waiting for SIGIO */ #elif defined(__NetBSD__) pid_t buf_pgid; #endif - struct selinfo buf_sel; /* Workspace for select/poll */ - int buf_selecting;/* True if poll sleeper */ - wait_queue_head_t buf_readers; /* Processes waiting to read */ - wait_queue_head_t buf_writers; /* Processes waiting to ctx switch */ /* Sysctl support */ struct drm_sysctl_info *sysctl; @@ -526,13 +384,9 @@ drm_sg_mem_t *sg; /* Scatter gather memory */ atomic_t *ctx_bitmap; void *dev_private; - drm_sigdata_t sigdata; /* For block_all_signals */ - sigset_t sigmask; }; extern int DRM(flags); -extern void DRM(parse_options)( char *s ); -extern int DRM(cpu_valid)( void ); /* Authentication (drm_auth.h) */ extern int DRM(add_magic)(drm_device_t *dev, drm_file_t *priv, @@ -541,7 +395,6 @@ /* Driver support (drm_drv.h) */ extern int DRM(version)( DRM_IOCTL_ARGS ); -extern int DRM(write_string)(drm_device_t *dev, const char *s); /* Memory management support (drm_memory.h) */ extern void DRM(mem_init)(void); @@ -582,11 +435,6 @@ extern int DRM(lock_free)(drm_device_t *dev, __volatile__ unsigned int *lock, unsigned int context); -extern int DRM(flush_unblock)(drm_device_t *dev, int context, - drm_lock_flags_t flags); -extern int DRM(flush_block_and_flush)(drm_device_t *dev, int context, - drm_lock_flags_t flags); -extern int DRM(notifier)(void *priv); /* Buffer management support (drm_bufs.h) */ extern int DRM(order)( unsigned long size ); @@ -596,16 +444,7 @@ extern int DRM(dma_setup)(drm_device_t *dev); extern void DRM(dma_takedown)(drm_device_t *dev); extern void DRM(free_buffer)(drm_device_t *dev, drm_buf_t *buf); -extern void DRM(reclaim_buffers)(drm_device_t *dev, pid_t pid); -#if __HAVE_OLD_DMA -/* GH: This is a dirty hack for now... - */ -extern void DRM(clear_next_buffer)(drm_device_t *dev); -extern int DRM(select_queue)(drm_device_t *dev, - void (*wrapper)(unsigned long)); -extern int DRM(dma_enqueue)(drm_device_t *dev, drm_dma_t *dma); -extern int DRM(dma_get_buffers)(drm_device_t *dev, drm_dma_t *dma); -#endif +extern void DRM(reclaim_buffers)(drm_device_t *dev, DRMFILE filp); #if __HAVE_DMA_IRQ extern int DRM(irq_install)( drm_device_t *dev, int irq ); extern int DRM(irq_uninstall)( drm_device_t *dev ); @@ -617,10 +456,6 @@ extern void DRM(dma_immediate_bh)( DRM_TASKQUEUE_ARGS ); #endif #endif -#if DRM_DMA_HISTOGRAM -extern int DRM(histogram_slot)(unsigned long count); -extern void DRM(histogram_compute)(drm_device_t *dev, drm_buf_t *buf); -#endif /* Buffer list support (drm_lists.h) */ #if __HAVE_DMA_WAITLIST @@ -629,13 +464,6 @@ extern int DRM(waitlist_put)(drm_waitlist_t *bl, drm_buf_t *buf); extern drm_buf_t *DRM(waitlist_get)(drm_waitlist_t *bl); #endif -#if __HAVE_DMA_FREELIST -extern int DRM(freelist_create)(drm_freelist_t *bl, int count); -extern int DRM(freelist_destroy)(drm_freelist_t *bl); -extern int DRM(freelist_put)(drm_device_t *dev, drm_freelist_t *bl, - drm_buf_t *buf); -extern drm_buf_t *DRM(freelist_get)(drm_freelist_t *bl, int block); -#endif #endif /* __HAVE_DMA */ #if __HAVE_VBL_IRQ extern int DRM(vblank_wait)(drm_device_t *dev, unsigned int *vbl_seq); @@ -668,5 +496,75 @@ dma_addr_t bus_addr); #endif +/* Locking IOCTL support (drm_drv.h) */ +extern int DRM(lock)(DRM_IOCTL_ARGS); +extern int DRM(unlock)(DRM_IOCTL_ARGS); + +/* Misc. IOCTL support (drm_ioctl.h) */ +extern int DRM(irq_busid)(DRM_IOCTL_ARGS); +extern int DRM(getunique)(DRM_IOCTL_ARGS); +extern int DRM(setunique)(DRM_IOCTL_ARGS); +extern int DRM(getmap)(DRM_IOCTL_ARGS); +extern int DRM(getclient)(DRM_IOCTL_ARGS); +extern int DRM(getstats)(DRM_IOCTL_ARGS); +extern int DRM(noop)(DRM_IOCTL_ARGS); + +/* Context IOCTL support (drm_context.h) */ +extern int DRM(resctx)(DRM_IOCTL_ARGS); +extern int DRM(addctx)(DRM_IOCTL_ARGS); +extern int DRM(modctx)(DRM_IOCTL_ARGS); +extern int DRM(getctx)(DRM_IOCTL_ARGS); +extern int DRM(switchctx)(DRM_IOCTL_ARGS); +extern int DRM(newctx)(DRM_IOCTL_ARGS); +extern int DRM(rmctx)(DRM_IOCTL_ARGS); +extern int DRM(setsareactx)(DRM_IOCTL_ARGS); +extern int DRM(getsareactx)(DRM_IOCTL_ARGS); + +/* Drawable IOCTL support (drm_drawable.h) */ +extern int DRM(adddraw)(DRM_IOCTL_ARGS); +extern int DRM(rmdraw)(DRM_IOCTL_ARGS); + +/* Authentication IOCTL support (drm_auth.h) */ +extern int DRM(getmagic)(DRM_IOCTL_ARGS); +extern int DRM(authmagic)(DRM_IOCTL_ARGS); + +/* Buffer management support (drm_bufs.h) */ +extern int DRM(addmap)(DRM_IOCTL_ARGS); +extern int DRM(rmmap)(DRM_IOCTL_ARGS); +#if __HAVE_DMA +extern int DRM(addbufs)(DRM_IOCTL_ARGS); +extern int DRM(infobufs)(DRM_IOCTL_ARGS); +extern int DRM(markbufs)(DRM_IOCTL_ARGS); +extern int DRM(freebufs)(DRM_IOCTL_ARGS); +extern int DRM(mapbufs)(DRM_IOCTL_ARGS); +#endif + +/* DMA support (drm_dma.h) */ +#if __HAVE_DMA +extern int DRM(control)(DRM_IOCTL_ARGS); +#endif +#if __HAVE_VBL_IRQ +extern int DRM(wait_vblank)(DRM_IOCTL_ARGS); +#endif + +/* AGP/GART support (drm_agpsupport.h) */ +#if __REALLY_HAVE_AGP +extern int DRM(agp_acquire)(DRM_IOCTL_ARGS); +extern int DRM(agp_release)(DRM_IOCTL_ARGS); +extern int DRM(agp_enable)(DRM_IOCTL_ARGS); +extern int DRM(agp_info)(DRM_IOCTL_ARGS); +extern int DRM(agp_alloc)(DRM_IOCTL_ARGS); +extern int DRM(agp_free)(DRM_IOCTL_ARGS); +extern int DRM(agp_unbind)(DRM_IOCTL_ARGS); +extern int DRM(agp_bind)(DRM_IOCTL_ARGS); +#endif + +/* Scatter Gather Support (drm_scatter.h) */ +#if __HAVE_SG +extern int DRM(sg_alloc)(DRM_IOCTL_ARGS); +extern int DRM(sg_free)(DRM_IOCTL_ARGS); +#endif + + #endif /* __KERNEL__ */ #endif /* _DRM_P_H_ */ ==== //depot/projects/smpng/sys/dev/drm/drm_bufs.h#3 (text+ko) ==== >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Apr 25 10:02:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9628837B404; Fri, 25 Apr 2003 10:02:03 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 49DCE37B401 for ; Fri, 25 Apr 2003 10:02:03 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 566A243F3F for ; Fri, 25 Apr 2003 10:02:02 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PH220U040949 for ; Fri, 25 Apr 2003 10:02:02 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PH21MM040942 for perforce@freebsd.org; Fri, 25 Apr 2003 10:02:01 -0700 (PDT) Date: Fri, 25 Apr 2003 10:02:01 -0700 (PDT) Message-Id: <200304251702.h3PH21MM040942@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to tzukanov@freebsd.org using -f From: Serguei Tzukanov To: Perforce Change Reviews Subject: PERFORCE change 29703 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 17:02:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29703 Change 29703 by tzukanov@tzukanov_antares on 2003/04/25 10:01:21 Rewrite boot memory allocator to use linker sets. Affected files ... .. //depot/projects/s390/sys/conf/files.s390#4 edit .. //depot/projects/s390/sys/dev/dasd/dasd.c#2 edit .. //depot/projects/s390/sys/dev/mts/mts.c#2 edit .. //depot/projects/s390/sys/s390/css/css.c#2 edit .. //depot/projects/s390/sys/s390/css/css.h#2 edit .. //depot/projects/s390/sys/s390/css/css_VM.c#2 edit .. //depot/projects/s390/sys/s390/css/css_bio.c#2 edit .. //depot/projects/s390/sys/s390/css/css_blinders.c#2 edit .. //depot/projects/s390/sys/s390/css/css_bus.c#2 edit .. //depot/projects/s390/sys/s390/css/css_chpath.c#2 edit .. //depot/projects/s390/sys/s390/css/css_cio.c#2 edit .. //depot/projects/s390/sys/s390/css/css_cold.c#2 edit .. //depot/projects/s390/sys/s390/css/css_debug.c#2 edit .. //depot/projects/s390/sys/s390/css/css_dynamic.c#2 edit .. //depot/projects/s390/sys/s390/css/css_if.m#2 edit .. //depot/projects/s390/sys/s390/css/css_interrupt.c#2 edit .. //depot/projects/s390/sys/s390/css/css_mbuf.c#2 edit .. //depot/projects/s390/sys/s390/css/css_memory.c#2 edit .. //depot/projects/s390/sys/s390/css/css_monitor.c#2 edit .. //depot/projects/s390/sys/s390/css/css_private.h#2 edit .. //depot/projects/s390/sys/s390/css/css_request.c#2 edit .. //depot/projects/s390/sys/s390/css/css_subch.c#2 edit .. //depot/projects/s390/sys/s390/s390/clock.c#3 edit .. //depot/projects/s390/sys/s390/s390/dat.h#3 edit .. //depot/projects/s390/sys/s390/s390/esa.h#2 edit .. //depot/projects/s390/sys/s390/s390/external.c#2 edit .. //depot/projects/s390/sys/s390/s390/hmcsc.c#7 edit .. //depot/projects/s390/sys/s390/s390/identcpu.c#4 edit .. //depot/projects/s390/sys/s390/s390/machdep.c#7 edit .. //depot/projects/s390/sys/s390/s390/mcheck.c#2 edit .. //depot/projects/s390/sys/s390/s390/mcheck.h#2 edit .. //depot/projects/s390/sys/s390/s390/mem.c#5 edit .. //depot/projects/s390/sys/s390/s390/pmap.c#11 edit Differences ... ==== //depot/projects/s390/sys/conf/files.s390#4 (text+ko) ==== @@ -45,8 +45,10 @@ libkern/udivdi3.c standard libkern/umoddi3.c standard +#s390/css/css.c standard +#s390/css/css_VM.c standard #s390/css/css_bio.c standard -#s390/css/css_blinders.c standard +#s390/css/css_blinders.c standard #s390/css/css_bus.c standard #s390/css/css_chpath.c standard #s390/css/css_cio.c standard @@ -59,8 +61,6 @@ #s390/css/css_monitor.c standard #s390/css/css_request.c standard #s390/css/css_subch.c standard -#s390/css/css_VM.c standard -#s390/css/css.c standard s390/s390/autoconf.c standard s390/s390/clock.c standard ==== //depot/projects/s390/sys/dev/dasd/dasd.c#2 (text+ko) ==== @@ -24,7 +24,10 @@ MTX_SYSINIT(classes_mutex, &classes_mutex, "classes mutex", MTX_DEF); static __inline struct dasd * -dasd_softc(dev_t dev) { return (struct dasd *)dev->si_drv1; } +dasd_softc(dev_t dev) +{ + return (struct dasd *)dev->si_drv1; +} static int dasd_release(struct dasd *dasd) ==== //depot/projects/s390/sys/dev/mts/mts.c#2 (text+ko) ==== @@ -242,7 +242,7 @@ struct css_ccw cp[1]; css_define_request(&req, cp, 1, ip, 0xff, mts_callback, - CSS_REQ_SYNC|CSS_DER_DEFAULT); + CSS_REQ_SYNC | CSS_DER_DEFAULT); css_define_request_ccw(cp, NULL, cmd, 0, 0, 0); return css_start_request(&req); } ==== //depot/projects/s390/sys/s390/css/css.c#2 (text+ko) ==== @@ -12,10 +12,13 @@ #include #include #include -#include -#include +#include +#include +/* This variable reflects stage of startup */ int css_cold = 1; + +/* Number of kicked subchannels */ volatile int css_init_counter; static __inline void @@ -47,9 +50,9 @@ struct css_subchannel *subch; int subchno, devno, error; - css_cold_init(); - css_mcheck_init(); - css_subch_init(); + css_init_cold(); + css_init_dynamic(); + css_init_subchannels(); for (subchno = 0; subchno < SUBCHNO_MAX; subchno++) { error = css_probe_subchannel(subchno, &devno); @@ -91,7 +94,7 @@ * Print (possible deprecated/incomplete) info about attached subchannels. */ void -css_startup_print_subchannels(void) +css_init_info(void) { struct css_subchannel *subch; ==== //depot/projects/s390/sys/s390/css/css.h#2 (text+ko) ==== @@ -197,21 +197,34 @@ uint8_t sense[32]; /* Extended-Control Word actually */ }; +/* Sense-ID Information Block. */ +struct css_sense_id { + uint8_t xFF; + uint16_t cu_type; + uint8_t cu_model; + uint16_t dev_type; + uint8_t dev_model; + uint8_t reserved; + struct css_ciw ciw[3]; /* (256 - 8) / 4 = 62 */ +} __attribute__ ((packed)); + /*----------------------------------------------------------------------------* - * Exported implementtion specific data structures * + * Exported implementation specific data structures * *----------------------------------------------------------------------------*/ +struct bio; + /* Drivers don't need to know internals of subchannel structure. */ struct css_subchannel; struct css_request; -/* "Probe" analogue in the css_cold = 1 time. */ +/* "Probe" analogue during css_cold = 1 time. */ struct css_cold_find_info { - uint8_t mask; /* Validity mask for other fields. */ + uint16_t mask; /* Validity mask for other fields. */ + uint8_t cu_model; + uint8_t dev_model; uint16_t cu_type; - uint8_t cu_model; uint16_t dev_type; - uint8_t dev_model; uint16_t dev_number; }; @@ -323,20 +336,28 @@ } static __inline u_int css_sense_id_cut_dt(struct css_sense_id *sense_id) -{ return ((u_int)sense_id->cu_type << 16) | (u_int)sense_id->dev_type; } +{ + return ((u_int)sense_id->cu_type << 16) | (u_int)sense_id->dev_type; +} static __inline u_int css_sense_id_cut_cum(struct css_sense_id *sense_id) -{ return ((u_int)sense_id->cu_type << 8) | (u_int)sense_id->cu_model; } +{ + return ((u_int)sense_id->cu_type << 8) | (u_int)sense_id->cu_model; +} static __inline u_int css_sense_id_dt_dm(struct css_sense_id *sense_id) -{ return ((u_int)sense_id->dev_type << 8) | (u_int)sense_id->dev_model; } +{ + return ((u_int)sense_id->dev_type << 8) | (u_int)sense_id->dev_model; +} /*----------------------------------------------------------------------------* * Bus related inlines * *----------------------------------------------------------------------------*/ static __inline struct css_subchannel *css_dev2subch(device_t dev) -{ return (struct css_subchannel *)device_get_ivars(dev); } +{ + return (struct css_subchannel *)device_get_ivars(dev); +} #define CSS_IVAR_SUBCHNO 0 #define CSS_IVAR_DEVNO 1 ==== //depot/projects/s390/sys/s390/css/css_VM.c#2 (text+ko) ==== @@ -11,8 +11,8 @@ #include #include -#include -#include +#include +#include /* * Use DIAGNOSE 210 call to build fake Sense-ID data to ==== //depot/projects/s390/sys/s390/css/css_bio.c#2 (text+ko) ==== @@ -12,8 +12,8 @@ #include #include #include -#include -#include +#include +#include /* * It's assumed that sva is mapped above 2 GB. @@ -57,6 +57,7 @@ #else (atop(lra(sva)) != pi)) return trunc_page(sva); +#endif } return eva; ==== //depot/projects/s390/sys/s390/css/css_blinders.c#2 (text+ko) ==== @@ -20,8 +20,8 @@ #include #include -#include -#include +#include +#include #define BLINDERS_MAX ((DEVNO_MAX + NBLO - 1) / NBLO) @@ -154,7 +154,7 @@ if ((l < 0) || (r >= DEVNO_MAX) || (l > r)) return EINVAL; may_be_spaces(&s); - if ((*s != ',') && (*s != '\0)) + if ((*s != ',') && (*s != '\0')) return EINVAL; if (action) { if (add) { ==== //depot/projects/s390/sys/s390/css/css_bus.c#2 (text+ko) ==== @@ -17,8 +17,8 @@ #include #include #include -#include -#include +#include +#include device_t css_bus; ==== //depot/projects/s390/sys/s390/css/css_chpath.c#2 (text+ko) ==== @@ -11,9 +11,10 @@ #include #include -#include -#include +#include +#include +#if notyet int css_generate_pgid(struct css_pgid *pgid) { @@ -30,3 +31,4 @@ css_completion_t completion) { } +#endif ==== //depot/projects/s390/sys/s390/css/css_cio.c#2 (text+ko) ==== @@ -11,8 +11,8 @@ #include #include -#include -#include +#include +#include static void css_sense_callback(struct css_request *sense_req) @@ -95,7 +95,7 @@ css_unlock_subchannel(subch); if (sense_id == NULL) { sense_id = css_any_malloc(sizeof(*sense_id), - M_CSS, M_WAITOK|M_ZERO); + M_CSS, M_WAITOK | M_ZERO); css_lock_subchannel(subch); subch->sense_id = sense_id; css_unlock_subchannel(subch); ==== //depot/projects/s390/sys/s390/css/css_cold.c#2 (text+ko) ==== @@ -17,8 +17,8 @@ #include #include -#include -#include +#include +#include static __inline int css_cfi_compare(struct css_subchannel *subch, ==== //depot/projects/s390/sys/s390/css/css_debug.c#2 (text+ko) ==== @@ -11,8 +11,8 @@ #include #include -#include -#include +#include +#include static char * bitstring(int n, void *p, char *s) ==== //depot/projects/s390/sys/s390/css/css_dynamic.c#2 (text+ko) ==== @@ -11,9 +11,9 @@ #include #include -#include -#include -#include +#include +#include +#include /* * Reconfiguration is relatively rare operation, so I decided to use @@ -259,7 +259,7 @@ * This is called from css_startup(). */ void -css_reconf_init(void) +css_init_dynamic(void) { /* * By registering before scan for available ==== //depot/projects/s390/sys/s390/css/css_if.m#2 (text+ko) ==== ==== //depot/projects/s390/sys/s390/css/css_interrupt.c#2 (text+ko) ==== @@ -12,16 +12,16 @@ /* * Subchannel's ithread run with I/O interruptions disabled on local CPU. * That way we can efficiently use TPI to reduce number of context switches - * in case of heavy I/O and still can be preempted. + * in case of heavy I/O and still be preempted by timer. */ #include #include #include #include -#include -#include -#include +#include +#include +#include static void css_interruption_handler(void *arg) @@ -49,6 +49,8 @@ KASSERT(subch->flags & SUBCH_VALID, ("css_callback: subch not enabled")); + + for (;;) { valid_sc = scsw_valid_sc[irb.scsw.mask & SCSW_SC]; if (css_monitor & CSS_MONITOR_DCTM) @@ -63,6 +65,7 @@ case SCSW_SC_AS|SCSW_SC_PS|SCSW_SC_IS: case SCSW_SC_AS|SCSW_SC_SS: + /* */ if ((irb.scsw.mask & SCSW_SC_SP) == 0) { } @@ -78,7 +81,7 @@ if (do_callback) { if (alert_status) { - if (!csense + if (!csense) } } @@ -89,10 +92,11 @@ cc = tpi(0); if () continue; + } void -css_interruption(void) +io_intr(void) { struct css_subchannel *subch; struct css_ioic *ioic; ==== //depot/projects/s390/sys/s390/css/css_mbuf.c#2 (text+ko) ==== @@ -12,8 +12,8 @@ #include #include #include -#include -#include +#include +#include int css_mbuf2cp(struct mbuf *); ==== //depot/projects/s390/sys/s390/css/css_memory.c#2 (text+ko) ==== @@ -16,8 +16,8 @@ #include #include #include -#include -#include +#include +#include MALLOC_DEFINE(M_CSS, "css", "Memory used for channel subsystem layer"); ==== //depot/projects/s390/sys/s390/css/css_monitor.c#2 (text+ko) ==== @@ -11,8 +11,8 @@ #include #include -#include -#include +#include +#include #define CSS_MONITOR_MB #define CSS_MONITOR_DCTM @@ -23,7 +23,6 @@ void css_monitor_startup() { - css_malloc_contig(); } ==== //depot/projects/s390/sys/s390/css/css_private.h#2 (text+ko) ==== @@ -119,17 +119,6 @@ uint16_t count; }; -/* Sense-ID Information Block. */ -struct css_sense_id { - uint8_t xFF; - uint16_t cu_type; - uint8_t cu_model; - uint16_t dev_type; - uint8_t dev_model; - uint8_t reserved; - struct css_ciw ciw[3]; /* (256 - 8) / 4 = 62 */ -} __attribute__ ((packed)); - /* Horrible name. */ struct css_vrdc { uint16_t vrdc_dvno; /* Virtual device number */ @@ -465,10 +454,14 @@ *----------------------------------------------------------------------------*/ static __inline void css_lock_subch_dir(void) -{ mtx_lock_spin(&subch_dir_lock); } +{ + mtx_lock_spin(&subch_dir_lock); +} static __inline void css_unlock_subch_dir(void) -{ mtx_unlock_spin(&subch_dir_lock); } +{ + mtx_unlock_spin(&subch_dir_lock); +} /* * Get a pointer to wanted subchannel if it @@ -507,9 +500,13 @@ } static __inline void css_set_bit(u_long *bitmap, int n) -{ atomic_set_long(&bitmap[n >> L2NBLO], 1 << (n & (NBLO-1))); } +{ + atomic_set_long(&bitmap[n >> L2NBLO], 1 << (n & (NBLO-1))); +} static __inline void css_clear_bit(u_long *bitmap, int n) -{ atomic_clear_long(&bitmap[n >> L2NBLO], 1 << (n & (NBLO-1))); } +{ + atomic_clear_long(&bitmap[n >> L2NBLO], 1 << (n & (NBLO-1))); +} #endif /* !_CSS_CSS_PRIVATE_H_ */ ==== //depot/projects/s390/sys/s390/css/css_request.c#2 (text+ko) ==== @@ -11,8 +11,8 @@ #include #include -#include -#include +#include +#include static MALLOC_DEFINE(M_CSSREQ); @@ -78,7 +78,7 @@ if (req->flags & CSS_REQ_INITIAL) orb->mask1 |= ORB_I; orb->lpm = (req->lpm == 0) ? subch->pathmask : req->lpm; - orb->mask2 = ORB_L|ORB_X; + orb->mask2 = ORB_L | ORB_X; orb->cpa = lra(req->cp); } @@ -290,9 +290,13 @@ } if (error && (subch->toh == NULL) && !css_cold) - subch->toh = timeout(css_request_timeout, req, timeout); + req->toh = timeout(css_restart_request_timeout, req, req->restart_to); + if (req->flags & CSS_REQ_SYNC) + css_sleep(); css_unlock_subchannel(subch); + + return error; } int @@ -302,6 +306,14 @@ } void +css_restart_request_timeout(void *arg) +{ + css_lock_subchannel(subch); + + css_unlock_subchannel(subch); +} + +void css_request_timeout(void *arg) { struct css_request *req = (struct css_request *)arg; ==== //depot/projects/s390/sys/s390/css/css_subch.c#2 (text+ko) ==== @@ -11,8 +11,8 @@ #include #include -#include -#include +#include +#include #define NSCPP (PAGE_SIZE/sizeof(void *)) #define NSCPP_SHIFT (PAGE_SHIFT - L2NBLO) @@ -30,10 +30,14 @@ CTASSERT(sizeof(struct css_subchannel_page) == PAGE_SIZE); static __inline void css_lock_free_subchannels(void) -{ mtx_lock(&free_subchannels_mutex); } +{ + mtx_lock(&free_subchannels_mutex); +} static __inline void css_unlock_free_subchannels(void) -{ mtx_unlock(&free_subchannels_mutex); } +{ + mtx_unlock(&free_subchannels_mutex); +} /* * Allocate memory for subchannel, initialize fields and insert into @@ -332,7 +336,7 @@ } void -css_subch_init(void) +css_init_subchannels(void) { mtx_init(&free_subchannels_mutex, "free subchannels", NULL, MTX_DEF); mtx_init(&subch_dir_lock, "subch dir lock", NULL, MTX_SPIN); ==== //depot/projects/s390/sys/s390/s390/clock.c#3 (text+ko) ==== @@ -86,9 +86,9 @@ clock_comparator_set(tod_clock_get() + cc_delta); #ifdef SMP - if (PCPU_GET(cpuid) == 0) + if (PCPU_GET(cpuid) == 0) { hardclock(cf); - else { + } else { mtx_lock_spin(&sched_lock); hardclock_process(curthread, CLKF_USERMODE(cf)); statclock_process(curthread->td_kse, CLKF_PC(cf), ==== //depot/projects/s390/sys/s390/s390/dat.h#3 (text+ko) ==== @@ -15,8 +15,8 @@ /* Include machine-dependent DAT definitions. */ #include -#define SACF_ACCESS_REGISTER 0x00000200 -#define SACF_PRIMARY_SPACE 0x00000000 +#define SACF_ACCESS_REGISTER 0x00000200 +#define SACF_PRIMARY_SPACE 0x00000000 #define CR0_SECONDARY_SPACE 0x04000000ul #define CR0_ADDRESS_SPACE_FUNCTION 0x00010000ul ==== //depot/projects/s390/sys/s390/s390/esa.h#2 (text+ko) ==== @@ -14,24 +14,35 @@ #define KERNELDUMP_ESA_VERSION 1 -struct sccb; +struct trapframe; void esa_init(void); void esa_check_features(void); void esa_cpu_model(void); -void pmap_bootstrap(void); -void io_intr_entry(void); -void css_interruption(void); +void dat_init(void); +void io_intr(struct trapframe *tf); +void css_init(void); +void css_init_info(void); -#define css_startup() -#define css_startup_print() +void io_intr_entry(struct trapframe *tf); extern uint8_t esa_sm_per; extern int esa_features; -extern struct sccb *sccb; /* bogus name */ -extern caddr_t devmempage; extern vm_offset_t kstack0; +struct dat_init_map { + vm_offset_t *vap; + int n; +}; + +#define DAT_INIT_MAP(uniq, va, n) \ + static struct dat_init_map uniq ## _dat_init = { \ + (vm_offset_t *)&(va), \ + (n) \ + }; \ + DATA_SET(dat_init_set, uniq ## _dat_init) + + /* System masks for intr_restore() and friends. */ #define SM_R 0x40 /* PER Mask */ #define SM_T 0x04 /* DAT Mode */ ==== //depot/projects/s390/sys/s390/s390/external.c#2 (text+ko) ==== @@ -32,17 +32,17 @@ char * name; /* pretty name for KTR */ external_handler_t handler; } external[] = { - {EI_CLOCK_COMPARATOR, "Clock-Comparator"}, - {EI_EXTERNAL_CALL, "External-Call"}, - {EI_VM_DIAGNOSE, "VM Diagnose"}, - {EI_SERVICE_SIGNAL, "Service-Signal"}, - {EI_IUCV, "IUCV"}, - {EI_MALFUNCTION_ALERT, "Malfunction-Alert"}, - {EI_CPU_TIMER, "CPU-Timer"}, - {EI_INTERRUPT_KEY, "Interrupt-Key"}, - {EI_TOD_CLOCK_SYNC_CHECK, "TOD-Clock-Sync-Check"}, - {EI_EMERGENCY_SIGNAL, "Emergency-Signal"}, - {EI_ETR, "ETR"}, + {EI_CLOCK_COMPARATOR, "Clock-Comparator"}, + {EI_EXTERNAL_CALL, "External-Call"}, + {EI_VM_DIAGNOSE, "VM Diagnose"}, + {EI_SERVICE_SIGNAL, "Service-Signal"}, + {EI_IUCV, "IUCV"}, + {EI_MALFUNCTION_ALERT, "Malfunction-Alert"}, + {EI_CPU_TIMER, "CPU-Timer"}, + {EI_INTERRUPT_KEY, "Interrupt-Key"}, + {EI_TOD_CLOCK_SYNC_CHECK, "TOD-Clock-Sync-Check"}, + {EI_EMERGENCY_SIGNAL, "Emergency-Signal"}, + {EI_ETR, "ETR"}, }; #define EXTERNAL_NUM (sizeof(external) / sizeof(external[0])) ==== //depot/projects/s390/sys/s390/s390/hmcsc.c#7 (text+ko) ==== @@ -57,7 +57,9 @@ /* This is overkill on UP. */ struct mtx hmcsc_lock; -struct sccb *sccb; +static struct sccb *sccb; +DAT_INIT_MAP(sccb, sccb, 1); + static struct sccb_edh *edh; static struct sccb_edb *edb; static struct sccb_mcdb *mcdb; ==== //depot/projects/s390/sys/s390/s390/identcpu.c#4 (text+ko) ==== @@ -176,7 +176,7 @@ if (idp.vc == 0xff); esa_features |= ESA_FEATURE_VM_FLAG; - /* kstack0 is not used at this time. */ + /* kstack0 is not used at this time so let's abuse it. */ sysib = (struct stsi_sysib111 *)kstack0; cc = stsi(0x10000001, 0x00000001, sysib); switch (cc) { ==== //depot/projects/s390/sys/s390/s390/machdep.c#7 (text+ko) ==== @@ -106,6 +106,12 @@ int cold = 1; +struct msgbuf *msgbufp; + +DAT_INIT_MAP(kstack0, kstack0, KSTACK_PAGES + 1); +DAT_INIT_MAP(msgbufp, msgbufp, atop(round_page(MSGBUF_SIZE))); +DAT_INIT_MAP(pcpu, sysarea.pcpu, 1); + void io_intr(struct trapframe *tf) { @@ -166,16 +172,16 @@ sysarea.sp_align_mask = ~7ul; psw_define(&sysarea.svc_new_psw, - PSW_0|PSW_T|PSW_M|PSW_KEY, (u_long)svc_intr_entry); + PSW_0 | PSW_T | PSW_M | PSW_KEY, (u_long)svc_intr_entry); psw_define(&sysarea.program_new_psw, - PSW_0|PSW_T|PSW_M|PSW_KEY, (u_long)program_intr_entry); + PSW_0 | PSW_T | PSW_M | PSW_KEY, (u_long)program_intr_entry); psw_define(&sysarea.external_new_psw, - PSW_0|PSW_T|PSW_M|PSW_KEY, (u_long)external_intr_entry); + PSW_0 | PSW_T | PSW_M | PSW_KEY, (u_long)external_intr_entry); psw_define(&sysarea.io_new_psw, - PSW_0|PSW_T|PSW_M|PSW_KEY, (u_long)io_intr_entry); + PSW_0 | PSW_T | PSW_M | PSW_KEY, (u_long)io_intr_entry); mcheck_init(); - intr_restore(SM_T|SM_EX|esa_sm_per); + intr_restore(SM_T | SM_EX | esa_sm_per); } void @@ -191,7 +197,10 @@ mp_early_probe(); /* Enable DAT. */ - pmap_bootstrap(); + dat_init(); +#ifndef __s390x__ + sysarea.pcpu += EXTENDED_SAVE_AREA_SIZE; +#endif init_param1(); init_param2(physmem); @@ -221,13 +230,17 @@ msgbufinit(msgbufp, MSGBUF_SIZE); /* Probe available subchannels and fire up CSS layer. */ - css_startup(); +#if 0 + css_init(); +#endif /* Now we can init console, even a channel attached one. */ cninit(); /* Print info about found subchannels/devices. */ - css_startup_print(); +#if 0 + css_init_info(); +#endif esa_cpu_model(); } ==== //depot/projects/s390/sys/s390/s390/mcheck.c#2 (text+ko) ==== @@ -255,7 +255,7 @@ mcheck_init(void) { psw_define(&sysarea.mcheck_new_psw, - PSW_0|PSW_T|PSW_KEY, (u_long)mcheck_intr_entry); + PSW_0 | PSW_T | PSW_KEY, (u_long)mcheck_intr_entry); mcheck_cpu_init(); mtx_init(&mciq_lock, "mciq_lock", NULL, MTX_SPIN|MTX_RECURSE); } ==== //depot/projects/s390/sys/s390/s390/mcheck.h#2 (text+ko) ==== @@ -62,11 +62,8 @@ #define CR14_EXTERNAL_DAMAGE 0x02000000ul #define CR14_WARNING 0x01000000ul -#ifdef __s390x__ -#define EXTENDED_SAVE_AREA_SIZE 0 -#else +#ifndef __s390x__ #define EXTENDED_SAVE_AREA_SIZE 144 - #define CR14_EXTENDED_SAVE_AREA 0x20000000ul #endif ==== //depot/projects/s390/sys/s390/s390/mem.c#5 (text+ko) ==== @@ -62,8 +62,11 @@ #include #include #include +#include + +static caddr_t devmempage; -caddr_t devmempage; +DAT_INIT_MAP(devmempage, devmempage, 1); static int mmclose(dev_t dev, int flags, int fmt, struct thread *td) ==== //depot/projects/s390/sys/s390/s390/pmap.c#11 (text+ko) ==== @@ -109,8 +109,6 @@ static unsigned nkptp; vm_offset_t kernel_vm_end; -struct msgbuf *msgbufp; - /* Data for the pv entry allocation mechanism. */ static uma_zone_t pvzone; static struct vm_object pvzone_obj; @@ -133,6 +131,15 @@ static vm_offset_t pmap_ptepa(pmap_t pmap, vm_offset_t va); +SET_DECLARE(dat_init_set, struct dat_init_map); + +DAT_INIT_MAP(proc0sto, proc0sto, NKPTP0 + 1); +DAT_INIT_MAP(csrc_va, csrc_va, 1); +DAT_INIT_MAP(cdst_va, cdst_va, 1); +DAT_INIT_MAP(z_va, z_va, 1); +DAT_INIT_MAP(zi_va, zi_va, 1); +DAT_INIT_MAP(crashdumpmap, crashdumpmap, MAXDUMPPGS); + static void ipte(vm_offset_t ptepa) { @@ -153,33 +160,9 @@ } } -#define BOOTSTRAP_MAP_ENTRY(va,n) {(vm_offset_t *)&(va), (n)} -#define BOOTSTRAP_MAP_TABLE_SIZE (sizeof(bsme)/sizeof(bsme[0])) - -static struct bootstrap_map_entry { - vm_offset_t *ptr; - int size; -} bsme[] = { - BOOTSTRAP_MAP_ENTRY(proc0sto, NKPTP0 + 1), - BOOTSTRAP_MAP_ENTRY(csrc_va, 1), - BOOTSTRAP_MAP_ENTRY(cdst_va, 1), - BOOTSTRAP_MAP_ENTRY(z_va, 1), - BOOTSTRAP_MAP_ENTRY(zi_va, 1), - BOOTSTRAP_MAP_ENTRY(kstack0, KSTACK_PAGES + 1), - BOOTSTRAP_MAP_ENTRY(devmempage, 1), - BOOTSTRAP_MAP_ENTRY(msgbufp, atop(round_page(MSGBUF_SIZE))), -#ifdef DEV_HMCSC - BOOTSTRAP_MAP_ENTRY(sccb, 1), -#endif - BOOTSTRAP_MAP_ENTRY(crashdumpmap, MAXDUMPPGS), -/* BOOTSTRAP_MAP_ENTRY(sysarea.pcpu, 1),*/ -#ifdef DDB - BOOTSTRAP_MAP_ENTRY(ddbstack, DDBSTACK_PAGES), -#endif -}; static vm_offset_t -pmap_bootstrap_map(int n) +dat_init_map(int n) { vm_offset_t pa = avail_start; @@ -194,8 +177,9 @@ } void -pmap_bootstrap(void) +dat_init(void) { + struct dat_init_map **dimp; vm_offset_t va; ste_t *ste; pte_t *pte; @@ -216,9 +200,11 @@ virtual_avail = avail_start = (vm_offset_t)_end; virtual_end = VM_MAX_KERNEL_ADDRESS; - for (i = 0; i < BOOTSTRAP_MAP_TABLE_SIZE; i++) - *bsme[i].ptr = pmap_bootstrap_map(bsme[i].size); + SET_FOREACH(dimp, dat_init_set) { + *(*dimp)->vap = dat_init_map((*dimp)->n); + } +#if 0 sysarea.pcpu = (struct pcpu *) (pmap_bootstrap_map(1) + EXTENDED_SAVE_AREA_SIZE); #ifdef SMP @@ -229,38 +215,6 @@ mp_sysarea = pmap_bootstrap_map((mp_ncpus - 1) * SYSAREA_PAGES); mp_pcpu = pmap_bootstrap_map(mp_ncpus - 1); #endif - -#if 0 - proc0sto = (ste_t *)pmap_bootstrap_map(NKPTP0 + 1); - - /* Reserve some special page table entries. */ - csrc_va = (caddr_t)pmap_bootstrap_map(1); - cdst_va = (caddr_t)pmap_bootstrap_map(1); - z_va = (caddr_t)pmap_bootstrap_map(1); - zi_va = (caddr_t)pmap_bootstrap_map(1); - - /* Allocate kstack for thread0. */ - kstack0 = pmap_bootstrap_map(KSTACK_PAGES + 1); - - /* For /dev/mem. */ - devmempage = (caddr_t)pmap_bootstrap_map(1); - - /* Map the message buffer. */ - msgbufp = (struct msgbuf *) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Apr 25 10:54:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E690437B404; Fri, 25 Apr 2003 10:54:21 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 707F037B401 for ; Fri, 25 Apr 2003 10:54:21 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6783043FBD for ; Fri, 25 Apr 2003 10:54:19 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PHsJ0U079318 for ; Fri, 25 Apr 2003 10:54:19 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PHs7He079146 for perforce@freebsd.org; Fri, 25 Apr 2003 10:54:07 -0700 (PDT) Date: Fri, 25 Apr 2003 10:54:07 -0700 (PDT) Message-Id: <200304251754.h3PHs7He079146@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to tzukanov@freebsd.org using -f From: Serguei Tzukanov To: Perforce Change Reviews Subject: PERFORCE change 29707 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 17:54:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=29707 Change 29707 by tzukanov@tzukanov_antares on 2003/04/25 10:53:33 Integrate from -current. Affected files ... .. //depot/projects/s390/MAINTAINERS#9 integrate .. //depot/projects/s390/Makefile#9 integrate .. //depot/projects/s390/Makefile.inc1#13 integrate .. //depot/projects/s390/Makefile.upgrade#2 delete .. //depot/projects/s390/UPDATING#9 integrate .. //depot/projects/s390/bin/chflags/chflags.1#2 integrate .. //depot/projects/s390/bin/chio/chio.1#3 integrate .. //depot/projects/s390/bin/cp/cp.1#3 integrate .. //depot/projects/s390/bin/cp/cp.c#4 integrate .. //depot/projects/s390/bin/cp/extern.h#4 integrate .. //depot/projects/s390/bin/cp/utils.c#4 integrate .. //depot/projects/s390/bin/dd/args.c#3 integrate .. //depot/projects/s390/bin/echo/echo.1#2 integrate .. //depot/projects/s390/bin/ps/keyword.c#6 integrate .. //depot/projects/s390/bin/ps/print.c#6 integrate .. //depot/projects/s390/bin/ps/ps.h#4 integrate .. //depot/projects/s390/bin/pwd/pwd.1#2 integrate .. //depot/projects/s390/bin/sh/expand.c#4 integrate .. //depot/projects/s390/bin/sh/jobs.c#5 integrate .. //depot/projects/s390/bin/sh/sh.1#6 integrate .. //depot/projects/s390/contrib/cvs/src/parseinfo.c#4 integrate .. //depot/projects/s390/contrib/gcc/FAQ#2 delete .. //depot/projects/s390/contrib/gcc/GNATS#2 delete .. //depot/projects/s390/contrib/gcc/MAINTAINERS#2 delete .. //depot/projects/s390/contrib/gcc/bugs.html#2 delete .. //depot/projects/s390/contrib/gcc/config-ml.in#2 delete .. //depot/projects/s390/contrib/gcc/config.if#2 delete .. //depot/projects/s390/contrib/gcc/config.sub#2 delete .. //depot/projects/s390/contrib/gcc/config/ChangeLog#2 delete .. //depot/projects/s390/contrib/gcc/config/acinclude.m4#2 delete .. //depot/projects/s390/contrib/gcc/config/i386/freebsd.h#4 integrate .. //depot/projects/s390/contrib/gcc/config/mh-a68bsd#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-aix386#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-apollo68#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-armpic#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-cxux#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-cygwin#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-decstation#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-delta88#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-dgux#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-dgux386#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-djgpp#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-elfalphapic#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-hp300#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-hpux#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-hpux8#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-i370pic#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-ia64pic#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-interix#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-irix4#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-irix5#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-irix6#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-lynxos#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-lynxrs6k#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-m68kpic#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-mingw32#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-ncr3000#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-ncrsvr43#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-necv4#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-openedition#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-papic#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-ppcpic#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-riscos#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-sco#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-solaris#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-sparcpic#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-sun3#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-sysv#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-sysv4#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-sysv5#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-vaxult2#2 delete .. //depot/projects/s390/contrib/gcc/config/mh-x86pic#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw-mh-mpw#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/ChangeLog#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/MoveIfChange#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/README#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/forward-include#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/g-mpw-make.sed#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/mpw-touch#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/mpw-true#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/null-command#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/open-brace#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/tr-7to8-src#2 delete .. //depot/projects/s390/contrib/gcc/config/mpw/true#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-aix43#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-alphaieee#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-armpic#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-d30v#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-elfalphapic#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-i370pic#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-ia64pic#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-linux#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-m68kpic#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-netware#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-ospace#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-papic#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-ppcpic#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-sparcpic#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-v810#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-wince#2 delete .. //depot/projects/s390/contrib/gcc/config/mt-x86pic#2 delete .. //depot/projects/s390/contrib/gcc/config/rs6000/sysv4.h#4 integrate .. //depot/projects/s390/contrib/gcc/contrib/ChangeLog#2 delete .. //depot/projects/s390/contrib/gcc/contrib/analyze_brprob#2 delete .. //depot/projects/s390/contrib/gcc/contrib/compare_tests#2 delete .. //depot/projects/s390/contrib/gcc/contrib/convert_to_f2c#2 delete .. //depot/projects/s390/contrib/gcc/contrib/convert_to_g2c#2 delete .. //depot/projects/s390/contrib/gcc/contrib/download_f2c#2 delete .. //depot/projects/s390/contrib/gcc/contrib/gcc_build#2 delete .. //depot/projects/s390/contrib/gcc/contrib/gcc_update#2 delete .. //depot/projects/s390/contrib/gcc/contrib/gccbug.el#2 delete .. //depot/projects/s390/contrib/gcc/contrib/gennews#2 delete .. //depot/projects/s390/contrib/gcc/contrib/index-prop#2 delete .. //depot/projects/s390/contrib/gcc/contrib/newcvsroot#2 delete .. //depot/projects/s390/contrib/gcc/contrib/regression/ChangeLog#2 delete .. //depot/projects/s390/contrib/gcc/contrib/regression/README#2 delete .. //depot/projects/s390/contrib/gcc/contrib/regression/btest-gcc.sh#2 delete .. //depot/projects/s390/contrib/gcc/contrib/regression/objs-gcc.sh#2 delete .. //depot/projects/s390/contrib/gcc/contrib/regression/site.exp#2 delete .. //depot/projects/s390/contrib/gcc/contrib/test_installed#2 delete .. //depot/projects/s390/contrib/gcc/contrib/test_summary#2 delete .. //depot/projects/s390/contrib/gcc/contrib/texi2pod.pl#2 delete .. //depot/projects/s390/contrib/gcc/contrib/warn_summary#2 delete .. //depot/projects/s390/contrib/gcc/faq.html#2 delete .. //depot/projects/s390/contrib/gcc/gnats.html#2 delete .. //depot/projects/s390/contrib/gcc/include/COPYING#2 delete .. //depot/projects/s390/contrib/gcc/include/ChangeLog#2 delete .. //depot/projects/s390/contrib/gcc/include/ansidecl.h#2 delete .. //depot/projects/s390/contrib/gcc/include/demangle.h#2 delete .. //depot/projects/s390/contrib/gcc/include/dyn-string.h#2 delete .. //depot/projects/s390/contrib/gcc/include/fibheap.h#2 delete .. //depot/projects/s390/contrib/gcc/include/floatformat.h#2 delete .. //depot/projects/s390/contrib/gcc/include/fnmatch.h#2 delete .. //depot/projects/s390/contrib/gcc/include/getopt.h#2 delete .. //depot/projects/s390/contrib/gcc/include/hashtab.h#2 delete .. //depot/projects/s390/contrib/gcc/include/libiberty.h#2 delete .. //depot/projects/s390/contrib/gcc/include/md5.h#2 delete .. //depot/projects/s390/contrib/gcc/include/objalloc.h#2 delete .. //depot/projects/s390/contrib/gcc/include/obstack.h#2 delete .. //depot/projects/s390/contrib/gcc/include/partition.h#2 delete .. //depot/projects/s390/contrib/gcc/include/safe-ctype.h#2 delete .. //depot/projects/s390/contrib/gcc/include/sort.h#2 delete .. //depot/projects/s390/contrib/gcc/include/splay-tree.h#2 delete .. //depot/projects/s390/contrib/gcc/include/symcat.h#2 delete .. //depot/projects/s390/contrib/gcc/include/ternary.h#2 delete .. //depot/projects/s390/contrib/gcc/include/xregex.h#2 delete .. //depot/projects/s390/contrib/gcc/include/xregex2.h#2 delete .. //depot/projects/s390/contrib/gcc/install-sh#2 delete .. //depot/projects/s390/contrib/gcc/libtool.m4#2 delete .. //depot/projects/s390/contrib/gcc/ltcf-c.sh#2 delete .. //depot/projects/s390/contrib/gcc/ltcf-cxx.sh#2 delete .. //depot/projects/s390/contrib/gcc/ltcf-gcj.sh#2 delete .. //depot/projects/s390/contrib/gcc/ltconfig#2 delete .. //depot/projects/s390/contrib/gcc/ltmain.sh#2 delete .. //depot/projects/s390/contrib/gcc/missing#2 delete .. //depot/projects/s390/contrib/gcc/mkdep#2 delete .. //depot/projects/s390/contrib/gcc/mkinstalldirs#2 delete .. //depot/projects/s390/contrib/gcc/symlink-tree#2 delete .. //depot/projects/s390/contrib/gcc/ylwrap#2 delete .. //depot/projects/s390/contrib/gdtoa/README#2 integrate .. //depot/projects/s390/contrib/gdtoa/g__fmt.c#2 integrate .. //depot/projects/s390/contrib/gdtoa/gdtoaimp.h#2 integrate .. //depot/projects/s390/contrib/gdtoa/gethex.c#2 integrate .. //depot/projects/s390/contrib/gdtoa/strtod.c#2 integrate .. //depot/projects/s390/contrib/gdtoa/strtodg.c#2 integrate .. //depot/projects/s390/contrib/gdtoa/xsum0.out#2 integrate .. //depot/projects/s390/contrib/ipfilter/Makefile#3 integrate .. //depot/projects/s390/contrib/ipfilter/man/ipmon.8#4 integrate .. //depot/projects/s390/contrib/isc-dhcp/client/dhclient.8#3 integrate .. //depot/projects/s390/contrib/isc-dhcp/client/dhclient.c#4 integrate .. //depot/projects/s390/contrib/one-true-awk/FIXES#3 integrate .. //depot/projects/s390/contrib/one-true-awk/README#3 integrate .. //depot/projects/s390/contrib/one-true-awk/b.c#3 integrate .. //depot/projects/s390/contrib/one-true-awk/lib.c#3 integrate .. //depot/projects/s390/contrib/one-true-awk/main.c#3 integrate .. //depot/projects/s390/contrib/one-true-awk/makefile#3 integrate .. //depot/projects/s390/contrib/one-true-awk/run.c#3 integrate .. //depot/projects/s390/contrib/sendmail/FREEBSD-upgrade#5 integrate .. //depot/projects/s390/contrib/sendmail/RELEASE_NOTES#5 integrate .. //depot/projects/s390/contrib/sendmail/cf/README#5 integrate .. //depot/projects/s390/contrib/sendmail/cf/cf/submit.cf#5 integrate .. //depot/projects/s390/contrib/sendmail/cf/m4/cfhead.m4#3 integrate .. //depot/projects/s390/contrib/sendmail/cf/m4/proto.m4#4 integrate .. //depot/projects/s390/contrib/sendmail/cf/m4/version.m4#5 integrate .. //depot/projects/s390/contrib/sendmail/cf/mailer/usenet.m4#2 integrate .. //depot/projects/s390/contrib/sendmail/contrib/buildvirtuser#2 integrate .. //depot/projects/s390/contrib/sendmail/doc/op/op.me#5 integrate .. //depot/projects/s390/contrib/sendmail/editmap/editmap.8#2 integrate .. //depot/projects/s390/contrib/sendmail/include/sm/bdb.h#2 integrate .. //depot/projects/s390/contrib/sendmail/include/sm/conf.h#4 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/api.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/design.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/index.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/installation.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/other.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/overview.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/sample.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_addheader.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_addrcpt.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_chgheader.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_delrcpt.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_getpriv.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_getsymval.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_main.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_register.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_replacebody.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_setbacklog.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_setconn.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_setpriv.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_setreply.html#3 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/smfi_settimeout.html#3 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_abort.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_body.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_close.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_connect.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_envfrom.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_envrcpt.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_eoh.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_eom.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_header.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libmilter/docs/xxfi_helo.html#2 integrate .. //depot/projects/s390/contrib/sendmail/libsm/clock.c#3 integrate .. //depot/projects/s390/contrib/sendmail/libsm/config.c#2 integrate .. //depot/projects/s390/contrib/sendmail/mail.local/mail.local.c#5 integrate .. //depot/projects/s390/contrib/sendmail/src/README#4 integrate .. //depot/projects/s390/contrib/sendmail/src/collect.c#4 integrate .. //depot/projects/s390/contrib/sendmail/src/conf.c#6 integrate .. //depot/projects/s390/contrib/sendmail/src/deliver.c#5 integrate .. //depot/projects/s390/contrib/sendmail/src/headers.c#6 integrate .. //depot/projects/s390/contrib/sendmail/src/main.c#5 integrate .. //depot/projects/s390/contrib/sendmail/src/milter.c#5 integrate .. //depot/projects/s390/contrib/sendmail/src/parseaddr.c#5 integrate .. //depot/projects/s390/contrib/sendmail/src/queue.c#5 integrate .. //depot/projects/s390/contrib/sendmail/src/readcf.c#4 integrate .. //depot/projects/s390/contrib/sendmail/src/sendmail.h#5 integrate .. //depot/projects/s390/contrib/sendmail/src/sm_resolve.c#2 integrate .. //depot/projects/s390/contrib/sendmail/src/srvrsmtp.c#5 integrate .. //depot/projects/s390/contrib/sendmail/src/tls.c#4 integrate .. //depot/projects/s390/contrib/sendmail/src/usersmtp.c#4 integrate .. //depot/projects/s390/contrib/sendmail/src/version.c#5 integrate .. //depot/projects/s390/contrib/smbfs/lib/smb/ctx.c#2 integrate .. //depot/projects/s390/crypto/openssh/ChangeLog#3 integrate .. //depot/projects/s390/crypto/openssh/FREEBSD-tricks#2 integrate .. //depot/projects/s390/crypto/openssh/FREEBSD-upgrade#4 integrate .. //depot/projects/s390/crypto/openssh/Makefile.in#3 integrate .. //depot/projects/s390/crypto/openssh/README#2 integrate .. //depot/projects/s390/crypto/openssh/README.privsep#2 integrate .. //depot/projects/s390/crypto/openssh/TODO#3 integrate .. //depot/projects/s390/crypto/openssh/acconfig.h#3 integrate .. //depot/projects/s390/crypto/openssh/auth-chall.c#3 integrate .. //depot/projects/s390/crypto/openssh/auth-krb4.c#3 integrate .. //depot/projects/s390/crypto/openssh/auth-krb5.c#3 integrate .. //depot/projects/s390/crypto/openssh/auth-pam.c#3 integrate .. //depot/projects/s390/crypto/openssh/auth-passwd.c#3 integrate .. //depot/projects/s390/crypto/openssh/auth-sia.c#2 integrate .. //depot/projects/s390/crypto/openssh/auth-sia.h#2 integrate .. //depot/projects/s390/crypto/openssh/auth.c#4 integrate .. //depot/projects/s390/crypto/openssh/auth.h#3 integrate .. //depot/projects/s390/crypto/openssh/auth1.c#3 integrate .. //depot/projects/s390/crypto/openssh/auth2-pam-freebsd.c#8 integrate .. //depot/projects/s390/crypto/openssh/auth2-pam.c#3 integrate .. //depot/projects/s390/crypto/openssh/auth2.c#4 integrate .. //depot/projects/s390/crypto/openssh/authfd.c#3 integrate .. //depot/projects/s390/crypto/openssh/authfd.h#3 integrate .. //depot/projects/s390/crypto/openssh/authfile.c#2 integrate .. //depot/projects/s390/crypto/openssh/bufaux.c#2 integrate .. //depot/projects/s390/crypto/openssh/canohost.c#3 integrate .. //depot/projects/s390/crypto/openssh/channels.c#3 integrate .. //depot/projects/s390/crypto/openssh/cipher.c#3 integrate .. //depot/projects/s390/crypto/openssh/clientloop.c#3 integrate .. //depot/projects/s390/crypto/openssh/compat.c#3 integrate .. //depot/projects/s390/crypto/openssh/compat.h#3 integrate .. //depot/projects/s390/crypto/openssh/config.guess#3 integrate .. //depot/projects/s390/crypto/openssh/config.h#3 integrate .. //depot/projects/s390/crypto/openssh/config.sub#3 integrate .. //depot/projects/s390/crypto/openssh/configure.ac#3 integrate .. //depot/projects/s390/crypto/openssh/crc32.c#2 integrate .. //depot/projects/s390/crypto/openssh/crc32.h#2 integrate .. //depot/projects/s390/crypto/openssh/defines.h#3 integrate .. //depot/projects/s390/crypto/openssh/dh.c#3 integrate .. //depot/projects/s390/crypto/openssh/fixpaths#2 integrate .. //depot/projects/s390/crypto/openssh/hostfile.h#3 integrate .. //depot/projects/s390/crypto/openssh/includes.h#3 integrate .. //depot/projects/s390/crypto/openssh/kex.c#2 integrate .. //depot/projects/s390/crypto/openssh/kex.h#3 integrate .. //depot/projects/s390/crypto/openssh/kexdh.c#2 integrate .. //depot/projects/s390/crypto/openssh/kexdhc.c#1 branch .. //depot/projects/s390/crypto/openssh/kexdhs.c#1 branch .. //depot/projects/s390/crypto/openssh/kexgex.c#2 integrate .. //depot/projects/s390/crypto/openssh/kexgexc.c#1 branch .. //depot/projects/s390/crypto/openssh/kexgexs.c#1 branch .. //depot/projects/s390/crypto/openssh/key.c#3 integrate .. //depot/projects/s390/crypto/openssh/key.h#2 integrate .. //depot/projects/s390/crypto/openssh/log.c#3 integrate .. //depot/projects/s390/crypto/openssh/loginrec.c#3 integrate .. //depot/projects/s390/crypto/openssh/misc.c#2 integrate .. //depot/projects/s390/crypto/openssh/monitor.c#5 integrate .. //depot/projects/s390/crypto/openssh/monitor_wrap.c#3 integrate .. //depot/projects/s390/crypto/openssh/msg.c#3 integrate .. //depot/projects/s390/crypto/openssh/msg.h#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/Makefile.in#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/base64.c#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/base64.h#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/basename.c#1 branch .. //depot/projects/s390/crypto/openssh/openbsd-compat/basename.h#1 branch .. //depot/projects/s390/crypto/openssh/openbsd-compat/bsd-arc4random.c#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/bsd-cray.h#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/bsd-cygwin_util.c#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/bsd-getpeereid.c#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/bsd-misc.c#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/bsd-misc.h#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/bsd-snprintf.c#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/fake-getaddrinfo.c#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/fake-getaddrinfo.h#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/getcwd.c#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/getopt.c#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/mktemp.c#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/mktemp.h#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/openbsd-compat.h#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/port-aix.h#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/setenv.c#3 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/setproctitle.c#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/setproctitle.h#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/sys-tree.h#2 integrate .. //depot/projects/s390/crypto/openssh/openbsd-compat/vis.c#1 branch .. //depot/projects/s390/crypto/openssh/openbsd-compat/vis.h#1 branch .. //depot/projects/s390/crypto/openssh/packet.c#3 integrate .. //depot/projects/s390/crypto/openssh/packet.h#2 integrate .. //depot/projects/s390/crypto/openssh/progressmeter.c#1 branch .. //depot/projects/s390/crypto/openssh/progressmeter.h#1 branch .. //depot/projects/s390/crypto/openssh/readconf.c#3 integrate .. //depot/projects/s390/crypto/openssh/readconf.h#2 integrate .. //depot/projects/s390/crypto/openssh/readpass.c#2 integrate .. //depot/projects/s390/crypto/openssh/regress/Makefile#2 integrate .. //depot/projects/s390/crypto/openssh/regress/agent-getpeereid.sh#1 branch .. //depot/projects/s390/crypto/openssh/regress/agent-ptrace.sh#1 branch .. //depot/projects/s390/crypto/openssh/regress/agent-timeout.sh#1 branch .. //depot/projects/s390/crypto/openssh/regress/keygen-change.sh#1 branch .. //depot/projects/s390/crypto/openssh/regress/proxy-connect.sh#2 integrate .. //depot/projects/s390/crypto/openssh/regress/sftp-batch.sh#1 branch .. //depot/projects/s390/crypto/openssh/regress/sftp-cmds.sh#1 branch .. //depot/projects/s390/crypto/openssh/regress/ssh-com-client.sh#2 integrate .. //depot/projects/s390/crypto/openssh/regress/ssh-com-keygen.sh#2 integrate .. //depot/projects/s390/crypto/openssh/regress/ssh-com-sftp.sh#2 integrate .. //depot/projects/s390/crypto/openssh/regress/ssh-com.sh#2 integrate .. //depot/projects/s390/crypto/openssh/scp.1#2 integrate .. //depot/projects/s390/crypto/openssh/scp.c#3 integrate .. //depot/projects/s390/crypto/openssh/servconf.c#3 integrate .. //depot/projects/s390/crypto/openssh/serverloop.c#3 integrate .. //depot/projects/s390/crypto/openssh/session.c#5 integrate .. //depot/projects/s390/crypto/openssh/sftp-client.c#3 integrate .. //depot/projects/s390/crypto/openssh/sftp-common.c#3 integrate .. //depot/projects/s390/crypto/openssh/sftp-int.c#3 integrate .. //depot/projects/s390/crypto/openssh/sftp-int.h#2 integrate .. //depot/projects/s390/crypto/openssh/sftp-server.c#3 integrate .. //depot/projects/s390/crypto/openssh/sftp.1#3 integrate .. //depot/projects/s390/crypto/openssh/sftp.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-add.1#2 integrate .. //depot/projects/s390/crypto/openssh/ssh-add.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-agent.1#2 integrate .. //depot/projects/s390/crypto/openssh/ssh-agent.c#4 integrate .. //depot/projects/s390/crypto/openssh/ssh-dss.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-dss.h#2 integrate .. //depot/projects/s390/crypto/openssh/ssh-keygen.1#2 integrate .. //depot/projects/s390/crypto/openssh/ssh-keygen.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-keyscan.1#2 integrate .. //depot/projects/s390/crypto/openssh/ssh-keyscan.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-keysign.8#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-keysign.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-rand-helper.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-rsa.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh-rsa.h#2 integrate .. //depot/projects/s390/crypto/openssh/ssh.1#3 integrate .. //depot/projects/s390/crypto/openssh/ssh.c#3 integrate .. //depot/projects/s390/crypto/openssh/ssh_config#5 integrate .. //depot/projects/s390/crypto/openssh/ssh_config.5#5 integrate .. //depot/projects/s390/crypto/openssh/sshconnect.c#3 integrate .. //depot/projects/s390/crypto/openssh/sshconnect2.c#3 integrate .. //depot/projects/s390/crypto/openssh/sshd.8#5 integrate .. //depot/projects/s390/crypto/openssh/sshd.c#4 integrate .. //depot/projects/s390/crypto/openssh/sshd_config#5 integrate .. //depot/projects/s390/crypto/openssh/sshd_config.5#5 integrate .. //depot/projects/s390/crypto/openssh/sshpty.c#3 integrate .. //depot/projects/s390/crypto/openssh/version.h#4 integrate .. //depot/projects/s390/crypto/openssl/crypto/rsa/rsa_eay.c#5 integrate .. //depot/projects/s390/crypto/openssl/crypto/rsa/rsa_lib.c#4 integrate .. //depot/projects/s390/crypto/openssl/ssl/s3_srvr.c#4 integrate .. //depot/projects/s390/etc/Makefile#9 integrate .. //depot/projects/s390/etc/defaults/pccard.conf#7 integrate .. //depot/projects/s390/etc/defaults/periodic.conf#5 integrate .. //depot/projects/s390/etc/defaults/rc.conf#8 integrate .. //depot/projects/s390/etc/disktab#1 branch .. //depot/projects/s390/etc/etc.alpha/disktab#2 delete .. //depot/projects/s390/etc/etc.i386/disktab#2 delete .. //depot/projects/s390/etc/etc.ia64/disktab#2 delete .. //depot/projects/s390/etc/etc.sparc64/disktab#2 delete .. //depot/projects/s390/etc/mac.conf#2 integrate .. //depot/projects/s390/etc/mail/aliases#3 integrate .. //depot/projects/s390/etc/mtree/BSD.local.dist#4 integrate .. //depot/projects/s390/etc/network.subr#1 branch .. //depot/projects/s390/etc/newsyslog.conf#4 integrate .. //depot/projects/s390/etc/pam.d/passwd#3 integrate .. //depot/projects/s390/etc/periodic/daily/220.backup-distfile#2 delete .. //depot/projects/s390/etc/periodic/daily/320.rdist#2 delete .. //depot/projects/s390/etc/periodic/daily/Makefile#3 integrate .. //depot/projects/s390/etc/printcap#3 integrate .. //depot/projects/s390/etc/rc#7 integrate .. //depot/projects/s390/etc/rc.d/Makefile#5 integrate .. //depot/projects/s390/etc/rc.d/NETWORKING#4 integrate .. //depot/projects/s390/etc/rc.d/adjkerntz#2 integrate .. //depot/projects/s390/etc/rc.d/atm1#3 integrate .. //depot/projects/s390/etc/rc.d/atm2.sh#4 integrate .. //depot/projects/s390/etc/rc.d/bgfsck#4 integrate .. //depot/projects/s390/etc/rc.d/cleanvar#4 integrate .. //depot/projects/s390/etc/rc.d/dhclient#2 integrate .. //depot/projects/s390/etc/rc.d/early.sh#1 branch .. //depot/projects/s390/etc/rc.d/hostname#1 branch .. //depot/projects/s390/etc/rc.d/ipfilter#6 integrate .. //depot/projects/s390/etc/rc.d/ipfs#2 integrate .. //depot/projects/s390/etc/rc.d/ipfw#4 integrate .. //depot/projects/s390/etc/rc.d/ipmon#4 integrate .. //depot/projects/s390/etc/rc.d/ipnat#5 integrate .. //depot/projects/s390/etc/rc.d/isdnd#5 integrate .. //depot/projects/s390/etc/rc.d/jail#1 branch .. //depot/projects/s390/etc/rc.d/kldxref#1 branch .. //depot/projects/s390/etc/rc.d/mrouted#3 integrate .. //depot/projects/s390/etc/rc.d/netif#1 branch .. //depot/projects/s390/etc/rc.d/network1#6 integrate .. //depot/projects/s390/etc/rc.d/network2#3 integrate .. //depot/projects/s390/etc/rc.d/nisdomain#1 branch .. //depot/projects/s390/etc/rc.d/ppp-user#4 integrate .. //depot/projects/s390/etc/rc.d/random#3 integrate .. //depot/projects/s390/etc/rc.d/routed#4 integrate .. //depot/projects/s390/etc/rc.d/securelevel#3 integrate .. //depot/projects/s390/etc/rc.d/sppp#2 integrate .. //depot/projects/s390/etc/rc.d/sysctl#4 integrate .. //depot/projects/s390/etc/sendmail/freebsd.mc#3 integrate .. //depot/projects/s390/etc/syslog.conf#3 integrate .. //depot/projects/s390/games/caesar/caesar.6#2 integrate .. //depot/projects/s390/games/fortune/datfiles/fortunes-o.real#2 integrate .. //depot/projects/s390/games/fortune/datfiles/fortunes2-o#3 integrate .. //depot/projects/s390/games/fortune/datfiles/murphy#3 integrate .. //depot/projects/s390/games/fortune/datfiles/murphy-o#2 integrate .. //depot/projects/s390/games/grdc/grdc.6#3 integrate .. //depot/projects/s390/games/grdc/grdc.c#2 integrate .. //depot/projects/s390/gnu/lib/libobjc/Makefile#3 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/addr2line/Makefile#2 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/ar/Makefile#2 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/as/Makefile.inc0#4 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/gdb/Makefile#4 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/gdb/fbsd-kgdb.h#3 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/gdb/kvm-fbsd.c#5 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/gdb/solib-fbsd-kld.c#1 branch .. //depot/projects/s390/gnu/usr.bin/binutils/ld/Makefile#3 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/libiberty/Makefile#3 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/nm/Makefile#3 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/objcopy/Makefile#2 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/objdump/Makefile#2 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/ranlib/Makefile#2 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/readelf/Makefile#2 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/size/Makefile#2 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/strings/Makefile#2 integrate .. //depot/projects/s390/gnu/usr.bin/binutils/strip/Makefile#3 integrate .. //depot/projects/s390/gnu/usr.bin/cc/include/Makefile#3 integrate .. //depot/projects/s390/gnu/usr.bin/send-pr/send-pr.1#3 integrate .. //depot/projects/s390/gnu/usr.bin/send-pr/send-pr.sh#2 integrate .. //depot/projects/s390/include/Makefile#8 integrate .. //depot/projects/s390/include/fstab.h#2 integrate .. //depot/projects/s390/include/grp.h#3 integrate .. //depot/projects/s390/include/nss.h#1 branch .. //depot/projects/s390/include/nsswitch.h#2 integrate .. //depot/projects/s390/include/paths.h#3 integrate .. //depot/projects/s390/include/pthread.h#4 integrate .. //depot/projects/s390/include/pwd.h#3 integrate .. //depot/projects/s390/include/signal.h#4 integrate .. //depot/projects/s390/kerberos5/lib/libasn1/Makefile#4 integrate .. //depot/projects/s390/kerberos5/lib/libhdb/Makefile#4 integrate .. //depot/projects/s390/lib/Makefile#7 integrate .. //depot/projects/s390/lib/libalias/Makefile#3 integrate .. //depot/projects/s390/lib/libatm/Makefile#2 integrate .. //depot/projects/s390/lib/libatm/atm_addr.c#2 integrate .. //depot/projects/s390/lib/libatm/cache_key.c#2 integrate .. //depot/projects/s390/lib/libatm/ip_addr.c#2 integrate .. //depot/projects/s390/lib/libatm/libatm.h#2 integrate .. //depot/projects/s390/lib/libatm/timer.c#2 integrate .. //depot/projects/s390/lib/libc/alpha/_fpmath.h#2 integrate .. //depot/projects/s390/lib/libc/gdtoa/Makefile.inc#2 integrate .. //depot/projects/s390/lib/libc/gdtoa/_ldtoa.c#1 branch .. //depot/projects/s390/lib/libc/gdtoa/machdep_ldisQ.c#2 integrate .. //depot/projects/s390/lib/libc/gdtoa/machdep_ldisx.c#2 integrate .. //depot/projects/s390/lib/libc/gen/Makefile.inc#7 integrate .. //depot/projects/s390/lib/libc/gen/_spinlock_stub.c#2 integrate .. //depot/projects/s390/lib/libc/gen/dlinfo.3#2 integrate .. //depot/projects/s390/lib/libc/gen/fstab.c#2 integrate .. //depot/projects/s390/lib/libc/gen/getbootfile.c#2 integrate .. //depot/projects/s390/lib/libc/gen/getfsent.3#2 integrate .. //depot/projects/s390/lib/libc/gen/getgrent.3#3 integrate .. //depot/projects/s390/lib/libc/gen/getgrent.c#3 integrate .. //depot/projects/s390/lib/libc/gen/getpwent.3#3 integrate .. //depot/projects/s390/lib/libc/gen/getpwent.c#4 integrate .. //depot/projects/s390/lib/libc/gen/getusershell.c#2 integrate .. //depot/projects/s390/lib/libc/i386/_fpmath.h#2 integrate .. //depot/projects/s390/lib/libc/i386/gen/signalcontext.c#3 integrate .. //depot/projects/s390/lib/libc/i386/string/Makefile.inc#3 integrate .. //depot/projects/s390/lib/libc/i386/string/wcschr.S#1 branch .. //depot/projects/s390/lib/libc/ia64/_fpmath.h#3 integrate .. //depot/projects/s390/lib/libc/include/namespace.h#5 integrate .. //depot/projects/s390/lib/libc/include/nss_tls.h#1 branch .. //depot/projects/s390/lib/libc/include/spinlock.h#2 integrate .. //depot/projects/s390/lib/libc/include/un-namespace.h#5 integrate .. //depot/projects/s390/lib/libc/locale/lnumeric.c#3 integrate .. //depot/projects/s390/lib/libc/locale/setlocale.3#3 integrate .. //depot/projects/s390/lib/libc/locale/wcrtomb.c#3 integrate .. //depot/projects/s390/lib/libc/net/Makefile.inc#6 integrate .. //depot/projects/s390/lib/libc/net/getaddrinfo.c#5 integrate .. //depot/projects/s390/lib/libc/net/gethostnamadr.c#2 integrate .. //depot/projects/s390/lib/libc/net/getnetnamadr.c#2 integrate .. //depot/projects/s390/lib/libc/net/name6.c#5 integrate .. //depot/projects/s390/lib/libc/net/nsdispatch.3#5 integrate .. //depot/projects/s390/lib/libc/net/nsdispatch.c#3 integrate .. //depot/projects/s390/lib/libc/net/nslexer.l#3 integrate .. //depot/projects/s390/lib/libc/net/nsparser.y#2 integrate .. //depot/projects/s390/lib/libc/net/nss_backends.h#1 branch .. //depot/projects/s390/lib/libc/net/nss_compat.c#1 branch .. //depot/projects/s390/lib/libc/posix1e/Makefile.inc#5 integrate .. //depot/projects/s390/lib/libc/posix1e/mac.3#6 integrate .. //depot/projects/s390/lib/libc/posix1e/mac.conf.5#1 branch .. //depot/projects/s390/lib/libc/posix1e/mac_prepare.3#3 integrate .. //depot/projects/s390/lib/libc/powerpc/_fpmath.h#2 integrate .. //depot/projects/s390/lib/libc/sparc64/_fpmath.h#2 integrate .. //depot/projects/s390/lib/libc/sparc64/gen/Makefile.inc#3 integrate .. //depot/projects/s390/lib/libc/sparc64/gen/_ctx_start.S#1 branch .. //depot/projects/s390/lib/libc/sparc64/gen/makecontext.c#1 branch .. //depot/projects/s390/lib/libc/stdio/floatio.h#2 integrate .. //depot/projects/s390/lib/libc/stdio/vfprintf.c#5 integrate .. //depot/projects/s390/lib/libc/stdio/vfwprintf.c#4 integrate .. //depot/projects/s390/lib/libc/stdlib/Makefile.inc#8 integrate .. //depot/projects/s390/lib/libc/stdlib/realpath.3#4 integrate .. //depot/projects/s390/lib/libc/stdlib/realpath.c#4 integrate .. //depot/projects/s390/lib/libc/stdlib/strfmon.c#5 integrate .. //depot/projects/s390/lib/libc/stdlib/strtod.c#5 delete .. //depot/projects/s390/lib/libc/stdtime/strptime.c#5 integrate .. //depot/projects/s390/lib/libc/sys/Makefile.inc#6 integrate .. //depot/projects/s390/lib/libc/sys/connect.2#3 integrate .. //depot/projects/s390/lib/libc/sys/jail.2#3 integrate .. //depot/projects/s390/lib/libc/sys/madvise.2#5 integrate .. //depot/projects/s390/lib/libc/sys/ntp_adjtime.2#1 branch .. //depot/projects/s390/lib/libc/sys/ntp_gettime.2#1 branch .. //depot/projects/s390/lib/libc/sys/open.2#3 integrate .. //depot/projects/s390/lib/libc/sys/sigaction.2#6 integrate .. //depot/projects/s390/lib/libc/sys/socket.2#5 integrate .. //depot/projects/s390/lib/libc_r/man/Makefile.inc#5 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_attr_get_np.3#7 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_condattr.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_create.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_detach.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_equal.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_exit.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_getconcurrency.3#1 branch .. //depot/projects/s390/lib/libc_r/man/pthread_getspecific.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_join.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_key_create.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_key_delete.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_kill.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_mutex_destroy.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_mutex_init.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_mutex_lock.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_mutex_trylock.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_mutex_unlock.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_mutexattr.3#3 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_once.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_rwlockattr_destroy.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_rwlockattr_getpshared.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_rwlockattr_setpshared.3#3 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_schedparam.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_self.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_setspecific.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_sigmask.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/pthread_testcancel.3#2 integrate .. //depot/projects/s390/lib/libc_r/man/sem_destroy.3#4 integrate .. //depot/projects/s390/lib/libc_r/man/sem_getvalue.3#4 integrate .. //depot/projects/s390/lib/libc_r/man/sem_init.3#3 integrate .. //depot/projects/s390/lib/libc_r/man/sem_wait.3#3 integrate .. //depot/projects/s390/lib/libc_r/man/sigwait.3#3 integrate .. //depot/projects/s390/lib/libc_r/uthread/Makefile.inc#4 integrate .. //depot/projects/s390/lib/libc_r/uthread/uthread_concurrency.c#1 branch .. //depot/projects/s390/lib/libc_r/uthread/uthread_spinlock.c#2 integrate .. //depot/projects/s390/lib/libcompat/4.1/cftime.3#2 integrate .. //depot/projects/s390/lib/libcompat/4.4/cuserid.3#2 integrate .. //depot/projects/s390/lib/libdevstat/Makefile#3 integrate .. //depot/projects/s390/lib/libdevstat/devstat.3#3 integrate .. //depot/projects/s390/lib/libdevstat/devstat.c#3 integrate .. //depot/projects/s390/lib/libdevstat/devstat.h#2 integrate .. //depot/projects/s390/lib/libdisk/Makefile#3 integrate .. //depot/projects/s390/lib/libdisk/create_chunk.c#6 integrate .. //depot/projects/s390/lib/libdisk/disk.c#6 integrate .. //depot/projects/s390/lib/libdisk/libdisk.3#3 integrate .. //depot/projects/s390/lib/libdisk/rules.c#4 integrate .. //depot/projects/s390/lib/libdisk/write_alpha_disk.c#3 integrate .. //depot/projects/s390/lib/libdisk/write_disk.c#5 integrate .. //depot/projects/s390/lib/libdisk/write_i386_disk.c#3 integrate .. //depot/projects/s390/lib/libdisk/write_ia64_disk.c#3 integrate .. //depot/projects/s390/lib/libdisk/write_pc98_disk.c#4 integrate .. //depot/projects/s390/lib/libdisk/write_sparc64_disk.c#2 integrate .. //depot/projects/s390/lib/libfetch/ftp.c#6 integrate .. //depot/projects/s390/lib/libfetch/http.c#6 integrate .. //depot/projects/s390/lib/libgeom/Makefile#2 integrate .. //depot/projects/s390/lib/libgeom/geom_ctl.c#1 branch .. //depot/projects/s390/lib/libgeom/geom_stats.c#2 integrate .. //depot/projects/s390/lib/libgeom/geom_xml2tree.c#2 integrate .. //depot/projects/s390/lib/libgeom/libgeom.h#2 integrate .. //depot/projects/s390/lib/libipsec/ipsec_set_policy.3#4 integrate .. //depot/projects/s390/lib/libipsec/pfkey_dump.c#2 integrate .. //depot/projects/s390/lib/libkvm/kvm.3#4 integrate .. //depot/projects/s390/lib/libkvm/kvm_getfiles.3#2 integrate .. //depot/projects/s390/lib/libkvm/kvm_getprocs.3#2 integrate .. //depot/projects/s390/lib/libkvm/kvm_nlist.3#2 integrate .. //depot/projects/s390/lib/libkvm/kvm_open.3#3 integrate .. //depot/projects/s390/lib/libkvm/kvm_proc.c#5 integrate .. //depot/projects/s390/lib/libmd/mdX.3#2 integrate .. //depot/projects/s390/lib/libmd/ripemd.3#2 integrate .. //depot/projects/s390/lib/libncp/ncpl_conn.c#2 integrate .. //depot/projects/s390/lib/libncp/ncpl_subr.c#3 integrate .. //depot/projects/s390/lib/libncurses/Makefile#5 integrate .. //depot/projects/s390/lib/libpam/modules/modules.inc#4 integrate .. //depot/projects/s390/lib/libpam/modules/pam_chroot/Makefile#1 branch .. //depot/projects/s390/lib/libpam/modules/pam_chroot/pam_chroot.8#1 branch .. //depot/projects/s390/lib/libpam/modules/pam_chroot/pam_chroot.c#1 branch .. //depot/projects/s390/lib/libpam/modules/pam_unix/pam_unix.c#2 integrate .. //depot/projects/s390/lib/libpthread/Makefile#3 integrate .. //depot/projects/s390/lib/libpthread/arch/i386/i386/ksd.c#1 branch .. //depot/projects/s390/lib/libpthread/arch/i386/i386/thr_enter_uts.S#2 integrate .. //depot/projects/s390/lib/libpthread/arch/i386/i386/thr_getcontext.S#1 branch .. //depot/projects/s390/lib/libpthread/arch/i386/i386/thr_switch.S#2 integrate .. //depot/projects/s390/lib/libpthread/arch/i386/include/atomic_ops.h#1 branch .. //depot/projects/s390/lib/libpthread/arch/i386/include/ksd.h#1 branch .. //depot/projects/s390/lib/libpthread/arch/i386/include/pthread_md.h#1 branch .. //depot/projects/s390/lib/libpthread/sys/Makefile.inc#3 integrate .. //depot/projects/s390/lib/libpthread/sys/lock.c#1 branch .. //depot/projects/s390/lib/libpthread/sys/lock.h#1 branch .. //depot/projects/s390/lib/libpthread/sys/thr_error.c#3 integrate .. //depot/projects/s390/lib/libpthread/thread/Makefile.inc#6 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_acl_aclcheck_fd.c#2 delete .. //depot/projects/s390/lib/libpthread/thread/thr_aio_suspend.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_attr_get_np.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_attr_init.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_attr_setcreatesuspend_np.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_attr_setguardsize.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_attr_setschedparam.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_attr_setscope.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_autoinit.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_cancel.c#3 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_clean.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_close.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_concurrency.c#1 branch .. //depot/projects/s390/lib/libpthread/thread/thr_cond.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_condattr_init.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_creat.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_create.c#3 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_detach.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_exit.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_fcntl.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_find_thread.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_fork.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_fsync.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_gc.c#2 delete .. //depot/projects/s390/lib/libpthread/thread/thr_getschedparam.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_info.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_init.c#4 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_join.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_kern.c#5 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_kill.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_main_np.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_mattr_init.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_msync.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_mutex.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_mutex_prioceiling.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_mutex_protocol.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_nanosleep.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_once.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_open.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_pause.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_poll.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_printf.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_priority_queue.c#3 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_private.h#4 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_pselect.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_read.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_readv.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_resume_np.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_rwlock.c#3 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_select.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_self.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_sem.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_seterrno.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_setschedparam.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_sig.c#4 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_sigaction.c#3 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_sigmask.c#3 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_sigpending.c#3 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_sigsuspend.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_sigwait.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_sleep.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_spec.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_spinlock.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_stack.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_suspend_np.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_switch_np.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_system.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_tcdrain.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_wait.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_wait4.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_waitpid.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_write.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_writev.c#2 integrate .. //depot/projects/s390/lib/libpthread/thread/thr_yield.c#2 integrate .. //depot/projects/s390/lib/libstand/bzlib_private.h.diff#2 integrate .. //depot/projects/s390/lib/libstand/libstand.3#4 integrate .. //depot/projects/s390/lib/libstand/printf.c#3 integrate .. //depot/projects/s390/lib/libstand/zalloc_defs.h#4 integrate .. //depot/projects/s390/lib/libthr/Makefile#1 branch .. //depot/projects/s390/lib/libthr/arch/i386/Makefile.inc#1 branch .. //depot/projects/s390/lib/libthr/arch/i386/i386/_curthread.S#1 branch .. //depot/projects/s390/lib/libthr/arch/i386/i386/_setcurthread.c#1 branch .. //depot/projects/s390/lib/libthr/arch/ia64/Makefile.inc#1 branch .. //depot/projects/s390/lib/libthr/arch/ia64/ia64/_curthread.c#1 branch .. //depot/projects/s390/lib/libthr/arch/sparc64/Makefile.inc#1 branch .. //depot/projects/s390/lib/libthr/arch/sparc64/sparc64/_setcurthread.c#1 branch .. //depot/projects/s390/lib/libthr/sys/Makefile.inc#1 branch .. //depot/projects/s390/lib/libthr/sys/thr_error.c#1 branch .. //depot/projects/s390/lib/libthr/thread/Makefile.inc#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_attr.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_autoinit.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_cancel.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_clean.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_concurrency.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_cond.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_condattr_destroy.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_condattr_init.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_create.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_detach.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_equal.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_exit.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_find_thread.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_gc.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_getprio.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_getschedparam.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_info.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_init.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_join.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_kern.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_main_np.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_mattr_init.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_mattr_kind_np.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_multi_np.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_mutex.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_mutex_prioceiling.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_mutex_protocol.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_mutexattr_destroy.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_once.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_printf.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_private.h#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_resume_np.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_rwlock.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_rwlockattr.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_self.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_sem.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_seterrno.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_setprio.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_setschedparam.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_sig.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_spec.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_spinlock.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_stack.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_suspend_np.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_syscalls.c#1 branch .. //depot/projects/s390/lib/libthr/thread/thr_yield.c#1 branch .. //depot/projects/s390/lib/libufs/block.c#5 integrate .. //depot/projects/s390/lib/libufs/type.c#5 integrate .. //depot/projects/s390/lib/libusbhid/Makefile#3 integrate .. //depot/projects/s390/lib/libusbhid/data.c#2 integrate .. //depot/projects/s390/lib/libusbhid/descr.c#2 integrate .. //depot/projects/s390/lib/libusbhid/libusbhid.h#2 delete .. //depot/projects/s390/lib/libusbhid/parse.c#2 integrate .. //depot/projects/s390/lib/libusbhid/usage.c#2 integrate .. //depot/projects/s390/lib/libusbhid/usbhid.3#2 integrate .. //depot/projects/s390/lib/libusbhid/usbhid.h#1 branch .. //depot/projects/s390/lib/libutil/_secure_path.3#2 integrate .. //depot/projects/s390/lib/libutil/login_cap.3#3 integrate .. //depot/projects/s390/lib/libutil/login_class.3#2 integrate .. //depot/projects/s390/lib/libutil/login_ok.3#2 integrate .. //depot/projects/s390/lib/libutil/login_times.3#2 integrate .. //depot/projects/s390/lib/libutil/login_tty.3#2 integrate .. //depot/projects/s390/lib/libutil/logout.3#2 integrate .. //depot/projects/s390/lib/libutil/property.3#2 integrate .. //depot/projects/s390/lib/libutil/pty.3#2 integrate .. //depot/projects/s390/lib/libutil/pw_util.c#3 integrate .. //depot/projects/s390/lib/libutil/realhostname.3#2 integrate .. //depot/projects/s390/lib/libutil/realhostname_sa.3#4 integrate .. //depot/projects/s390/lib/libutil/trimdomain.3#2 integrate .. //depot/projects/s390/lib/msun/src/math.h#6 integrate .. //depot/projects/s390/libexec/ftpd/ftpd.8#7 integrate .. //depot/projects/s390/libexec/rpc.rstatd/rstat_proc.c#4 integrate .. //depot/projects/s390/libexec/rtld-elf/Makefile#3 integrate .. //depot/projects/s390/libexec/rtld-elf/ia64/reloc.c#5 integrate .. //depot/projects/s390/libexec/rtld-elf/libmap.c#1 branch .. //depot/projects/s390/libexec/rtld-elf/libmap.h#1 branch .. //depot/projects/s390/libexec/rtld-elf/rtld.1#4 integrate .. //depot/projects/s390/libexec/rtld-elf/rtld.c#6 integrate .. //depot/projects/s390/libexec/save-entropy/Makefile#2 integrate .. //depot/projects/s390/libexec/talkd/announce.c#2 integrate .. //depot/projects/s390/libexec/talkd/extern.h#2 integrate .. //depot/projects/s390/libexec/talkd/print.c#2 integrate .. //depot/projects/s390/libexec/talkd/table.c#2 integrate .. //depot/projects/s390/libexec/talkd/talkd.c#2 integrate .. //depot/projects/s390/libexec/tftpd/tftpd.c#2 integrate .. //depot/projects/s390/release/Makefile#13 integrate .. //depot/projects/s390/release/alpha/dokern.sh#4 integrate .. //depot/projects/s390/release/alpha/drivers.conf#4 integrate .. //depot/projects/s390/release/alpha/fixit_crunch.conf#3 integrate .. //depot/projects/s390/release/doc/en_US.ISO8859-1/early-adopter/article.sgml#4 integrate .. //depot/projects/s390/release/doc/en_US.ISO8859-1/errata/article.sgml#7 integrate .. //depot/projects/s390/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#8 integrate .. //depot/projects/s390/release/doc/en_US.ISO8859-1/hardware/i386/proc-i386.sgml#5 integrate .. //depot/projects/s390/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#14 integrate .. //depot/projects/s390/release/doc/ja_JP.eucJP/errata/article.sgml#5 integrate .. //depot/projects/s390/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#7 integrate .. //depot/projects/s390/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#8 integrate .. //depot/projects/s390/release/i386/dokern.sh#6 integrate .. //depot/projects/s390/release/i386/drivers.conf#10 integrate .. //depot/projects/s390/release/i386/fixit_crunch.conf#3 integrate .. //depot/projects/s390/release/ia64/doFS.sh#2 integrate .. //depot/projects/s390/release/pc98/dokern.sh#6 integrate .. //depot/projects/s390/release/pc98/drivers.conf#6 integrate .. //depot/projects/s390/release/pc98/fixit-small_crunch.conf#2 integrate .. //depot/projects/s390/release/pc98/fixit_crunch.conf#3 integrate .. //depot/projects/s390/release/picobsd/tinyware/simple_httpd/simple_httpd.c#3 integrate .. //depot/projects/s390/release/scripts/doFS.sh#5 integrate .. //depot/projects/s390/sbin/atacontrol/Makefile#2 integrate .. //depot/projects/s390/sbin/atacontrol/atacontrol.c#3 integrate .. //depot/projects/s390/sbin/atm/ilmid/ilmid.c#4 integrate .. //depot/projects/s390/sbin/bsdlabel/Makefile#1 branch .. //depot/projects/s390/sbin/bsdlabel/bsdlabel.5#1 branch .. //depot/projects/s390/sbin/bsdlabel/bsdlabel.8#1 branch .. //depot/projects/s390/sbin/bsdlabel/bsdlabel.c#1 branch .. //depot/projects/s390/sbin/bsdlabel/pathnames.h#1 branch .. //depot/projects/s390/sbin/bsdlabel/runtest.sh#1 branch .. //depot/projects/s390/sbin/camcontrol/modeedit.c#3 integrate .. //depot/projects/s390/sbin/devd/Makefile#3 integrate .. //depot/projects/s390/sbin/devd/devd.8#5 integrate .. //depot/projects/s390/sbin/devd/devd.cc#3 integrate .. //depot/projects/s390/sbin/dhclient/Makefile#2 integrate .. //depot/projects/s390/sbin/dhclient/Makefile.inc#2 integrate .. //depot/projects/s390/sbin/dhclient/dhcpctl/Makefile#1 branch .. //depot/projects/s390/sbin/dhclient/omshell/Makefile#1 branch .. //depot/projects/s390/sbin/disklabel/disklabel.8#8 integrate .. //depot/projects/s390/sbin/disklabel/disklabel.c#8 integrate .. //depot/projects/s390/sbin/dump/dump.h#5 integrate .. //depot/projects/s390/sbin/dump/main.c#6 integrate .. //depot/projects/s390/sbin/dump/optr.c#3 integrate .. //depot/projects/s390/sbin/fdisk/Makefile#2 integrate .. //depot/projects/s390/sbin/fdisk/fdisk.c#5 integrate .. //depot/projects/s390/sbin/fdisk/runtest.sh#1 branch .. //depot/projects/s390/sbin/fsck/fsck.c#5 integrate .. //depot/projects/s390/sbin/gbde/Makefile#3 integrate .. //depot/projects/s390/sbin/gbde/gbde.c#4 integrate .. //depot/projects/s390/sbin/ifconfig/ifconfig.c#6 integrate .. //depot/projects/s390/sbin/init/init.8#4 integrate .. //depot/projects/s390/sbin/ip6fw/ip6fw.c#3 integrate .. //depot/projects/s390/sbin/ipmon/Makefile#2 integrate .. //depot/projects/s390/sbin/kldconfig/Makefile#2 integrate .. //depot/projects/s390/sbin/kldconfig/kldconfig.c#2 integrate .. //depot/projects/s390/sbin/kldload/Makefile#2 integrate .. //depot/projects/s390/sbin/kldstat/Makefile#2 integrate .. //depot/projects/s390/sbin/kldstat/kldstat.c#2 integrate .. //depot/projects/s390/sbin/kldunload/Makefile#2 integrate .. //depot/projects/s390/sbin/kldunload/kldunload.c#2 integrate .. //depot/projects/s390/sbin/mdconfig/mdconfig.c#5 integrate .. //depot/projects/s390/sbin/mknod/mknod.8#4 integrate .. //depot/projects/s390/sbin/mount/mount.8#6 integrate .. //depot/projects/s390/sbin/mount/mount.c#4 integrate .. //depot/projects/s390/sbin/mount_nfs/Makefile#2 integrate .. //depot/projects/s390/sbin/mount_nfs/mount_nfs.8#4 integrate .. //depot/projects/s390/sbin/mount_nfs/mount_nfs.c#3 integrate .. //depot/projects/s390/sbin/newfs/newfs.8#6 integrate .. //depot/projects/s390/sbin/newfs/newfs.c#6 integrate .. //depot/projects/s390/sbin/ping/ping.8#7 integrate .. //depot/projects/s390/sbin/ping/ping.c#7 integrate .. //depot/projects/s390/sbin/reboot/reboot.c#3 integrate .. //depot/projects/s390/sbin/route/route.c#4 integrate .. //depot/projects/s390/sbin/sunlabel/Makefile#2 integrate .. //depot/projects/s390/sbin/sunlabel/runtest.sh#1 branch .. //depot/projects/s390/sbin/sunlabel/sunlabel.c#2 integrate .. //depot/projects/s390/sbin/sysctl/sysctl.c#6 integrate .. //depot/projects/s390/sbin/umount/umount.8#3 integrate .. //depot/projects/s390/sbin/umount/umount.c#4 integrate .. //depot/projects/s390/sbin/vinum/commands.c#4 integrate .. //depot/projects/s390/sbin/vinum/list.c#4 integrate .. //depot/projects/s390/secure/lib/Makefile#2 integrate .. //depot/projects/s390/secure/lib/libcrypto/Makefile#9 integrate .. //depot/projects/s390/secure/lib/libssh/Makefile#4 integrate .. //depot/projects/s390/secure/libexec/Makefile#2 integrate .. //depot/projects/s390/secure/libexec/sftp-server/Makefile#2 integrate .. //depot/projects/s390/secure/usr.bin/Makefile#2 integrate .. //depot/projects/s390/secure/usr.bin/bdes/bdes.1#2 integrate .. //depot/projects/s390/secure/usr.bin/ssh/Makefile#3 integrate .. //depot/projects/s390/secure/usr.sbin/sshd/Makefile#4 integrate .. //depot/projects/s390/share/dict/freebsd#3 integrate .. //depot/projects/s390/share/examples/cvsup/refuse#4 integrate .. //depot/projects/s390/share/examples/cvsup/refuse.README#4 integrate .. //depot/projects/s390/share/examples/ppp/ppp.conf.isdn#2 integrate .. //depot/projects/s390/share/examples/ppp/ppp.conf.sample#3 integrate .. //depot/projects/s390/share/examples/ppp/ppp.conf.span-isp#2 integrate .. //depot/projects/s390/share/examples/ppp/ppp.conf.span-isp.working#2 integrate .. //depot/projects/s390/share/man/Makefile#2 integrate .. //depot/projects/s390/share/man/man4/Makefile#10 integrate .. //depot/projects/s390/share/man/man4/acpi.4#4 integrate .. //depot/projects/s390/share/man/man4/ahc.4#2 integrate .. //depot/projects/s390/share/man/man4/amr.4#2 integrate .. //depot/projects/s390/share/man/man4/asr.4#2 integrate .. //depot/projects/s390/share/man/man4/axe.4#1 branch .. //depot/projects/s390/share/man/man4/bge.4#4 integrate .. //depot/projects/s390/share/man/man4/card.4#3 delete .. //depot/projects/s390/share/man/man4/ccd.4#4 integrate .. //depot/projects/s390/share/man/man4/firewire.4#7 integrate .. //depot/projects/s390/share/man/man4/fwohci.4#6 integrate .. //depot/projects/s390/share/man/man4/fxp.4#4 integrate .. //depot/projects/s390/share/man/man4/icmp.4#2 integrate .. //depot/projects/s390/share/man/man4/iir.4#3 integrate .. //depot/projects/s390/share/man/man4/inet.4#3 integrate .. //depot/projects/s390/share/man/man4/intro.4#3 integrate .. //depot/projects/s390/share/man/man4/ip.4#4 integrate .. //depot/projects/s390/share/man/man4/isp.4#2 integrate .. //depot/projects/s390/share/man/man4/kld.4#3 integrate .. //depot/projects/s390/share/man/man4/mac.4#4 integrate .. //depot/projects/s390/share/man/man4/mac_biba.4#6 integrate .. //depot/projects/s390/share/man/man4/mac_bsdextended.4#5 integrate .. //depot/projects/s390/share/man/man4/mac_ifoff.4#4 integrate .. //depot/projects/s390/share/man/man4/mac_lomac.4#3 integrate .. //depot/projects/s390/share/man/man4/mac_mls.4#6 integrate .. //depot/projects/s390/share/man/man4/mac_none.4#4 integrate .. //depot/projects/s390/share/man/man4/mac_partition.4#4 integrate .. //depot/projects/s390/share/man/man4/mac_portacl.4#1 branch .. //depot/projects/s390/share/man/man4/mac_seeotheruids.4#4 integrate .. //depot/projects/s390/share/man/man4/mac_test.4#4 integrate .. //depot/projects/s390/share/man/man4/man4.i386/Makefile#3 integrate .. //depot/projects/s390/share/man/man4/man4.i386/asr.4#3 delete .. //depot/projects/s390/share/man/man4/man4.i386/cx.4#2 integrate .. //depot/projects/s390/share/man/man4/man4.i386/dgb.4#2 integrate .. //depot/projects/s390/share/man/man4/man4.i386/pae.4#1 branch .. //depot/projects/s390/share/man/man4/man4.i386/sbni.4#1 branch .. //depot/projects/s390/share/man/man4/man4.i386/smapi.4#1 branch .. //depot/projects/s390/share/man/man4/man4.i386/vpd.4#1 branch .. //depot/projects/s390/share/man/man4/mlx.4#2 integrate .. //depot/projects/s390/share/man/man4/oldcard.4#2 integrate .. //depot/projects/s390/share/man/man4/pcm.4#3 integrate .. //depot/projects/s390/share/man/man4/polling.4#3 integrate .. //depot/projects/s390/share/man/man4/sbsh.4#1 branch .. //depot/projects/s390/share/man/man4/smp.4#4 integrate .. //depot/projects/s390/share/man/man4/sym.4#2 integrate .. //depot/projects/s390/share/man/man4/syscons.4#3 integrate .. //depot/projects/s390/share/man/man4/tap.4#3 integrate .. //depot/projects/s390/share/man/man4/tcp.4#7 integrate .. //depot/projects/s390/share/man/man4/tun.4#2 integrate .. //depot/projects/s390/share/man/man4/ukbd.4#4 integrate .. //depot/projects/s390/share/man/man4/umass.4#5 integrate .. //depot/projects/s390/share/man/man4/urio.4#2 integrate .. //depot/projects/s390/share/man/man4/wi.4#10 integrate .. //depot/projects/s390/share/man/man4/wlan.4#1 branch .. //depot/projects/s390/share/man/man4/xl.4#3 integrate .. //depot/projects/s390/share/man/man5/Makefile#5 integrate .. //depot/projects/s390/share/man/man5/fs.5#4 integrate .. //depot/projects/s390/share/man/man5/libmap.conf.5#1 branch .. //depot/projects/s390/share/man/man5/rc.conf.5#10 integrate .. //depot/projects/s390/share/man/man7/environ.7#2 integrate .. //depot/projects/s390/share/man/man7/release.7#6 integrate .. //depot/projects/s390/share/man/man8/MAKEDEV.8#1 branch .. //depot/projects/s390/share/man/man8/Makefile#3 integrate .. //depot/projects/s390/share/man/man8/intro.8#4 integrate .. //depot/projects/s390/share/man/man8/man8.alpha/MAKEDEV.8#3 delete .. //depot/projects/s390/share/man/man8/man8.alpha/Makefile#2 delete .. //depot/projects/s390/share/man/man8/man8.i386/MAKEDEV.8#3 delete .. //depot/projects/s390/share/man/man8/man8.i386/Makefile#2 delete .. //depot/projects/s390/share/man/man8/rc.subr.8#3 integrate .. //depot/projects/s390/share/man/man9/BUS_SETUP_INTR.9#2 integrate .. //depot/projects/s390/share/man/man9/Makefile#5 integrate .. //depot/projects/s390/share/man/man9/at_exit.9#2 delete .. //depot/projects/s390/share/man/man9/at_fork.9#2 delete .. //depot/projects/s390/share/man/man9/bus_activate_resource.9#1 branch .. //depot/projects/s390/share/man/man9/bus_alloc_resource.9#2 integrate .. //depot/projects/s390/share/man/man9/bus_child_present.9#1 branch .. //depot/projects/s390/share/man/man9/bus_set_resource.9#1 branch .. //depot/projects/s390/share/man/man9/byteorder.9#2 integrate .. //depot/projects/s390/share/man/man9/device_get_ivars.9#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Apr 25 12:12:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 40EDF37B405; Fri, 25 Apr 2003 12:12:56 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E1F2B37B404 for ; Fri, 25 Apr 2003 12:12:55 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4439F43FB1 for ; Fri, 25 Apr 2003 12:12:55 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PJCt0U036892 for ; Fri, 25 Apr 2003 12:12:55 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PJCsuI036882 for perforce@freebsd.org; Fri, 25 Apr 2003 12:12:54 -0700 (PDT) Date: Fri, 25 Apr 2003 12:12:54 -0700 (PDT) Message-Id: <200304251912.h3PJCsuI036882@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to tzukanov@freebsd.org using -f From: Serguei Tzukanov To: Perforce Change Reviews Subject: PERFORCE change 29709 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 19:12:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=29709 Change 29709 by tzukanov@tzukanov_antares on 2003/04/25 12:12:54 Blind update to -current. Affected files ... .. //depot/projects/s390/lib/libc/s390/_fpmath.h#2 edit .. //depot/projects/s390/lib/libc/s390x/_fpmath.h#2 edit .. //depot/projects/s390/sys/s390/conf/GENERIC#9 edit .. //depot/projects/s390/sys/s390/include/_types.h#3 edit .. //depot/projects/s390/sys/s390/include/cpufunc.h#2 edit .. //depot/projects/s390/sys/s390/include/pmap.h#3 edit .. //depot/projects/s390/sys/s390/s390/genassym.c#3 edit .. //depot/projects/s390/sys/s390/s390/machdep.c#8 edit .. //depot/projects/s390/sys/s390/s390/mem.c#6 edit .. //depot/projects/s390/sys/s390/s390/pmap.c#12 edit .. //depot/projects/s390/sys/s390/s390/support.S#2 edit .. //depot/projects/s390/sys/s390/s390/swtch.S#3 edit .. //depot/projects/s390/sys/s390/s390/trap.c#7 edit Differences ... ==== //depot/projects/s390/lib/libc/s390/_fpmath.h#2 (text+ko) ==== @@ -38,3 +38,12 @@ }; #define mask_nbit_l(u) ((void)0) +#define LDBL_IMPLICIT_NBIT + +#define LDBL_TO_ARRAY32(u, a) do { \ + (a)[0] = (uint32_t)(u).bits.manl; \ + (a)[1] = (uint32_t)((u).bits.manl >> 32); \ + (a)[2] = (uint32_t)(u).bits.manh; \ + (a)[3] = (uint32_t)((u).bits.manh >> 32); \ +} while (0) + ==== //depot/projects/s390/lib/libc/s390x/_fpmath.h#2 (text+ko) ==== @@ -38,3 +38,12 @@ }; #define mask_nbit_l(u) ((void)0) +#define LDBL_IMPLICIT_NBIT + +#defineLDBL_TO_ARRAY32(u, a) do { \ + (a)[0] = (uint32_t)(u).bits.manl; \ + (a)[1] = (uint32_t)((u).bits.manl >> 32); \ + (a)[2] = (uint32_t)(u).bits.manh; \ + (a)[3] = (uint32_t)((u).bits.manh >> 32); \ +} while (0) + ==== //depot/projects/s390/sys/s390/conf/GENERIC#9 (text+ko) ==== @@ -21,7 +21,6 @@ machine s390 cpu G5_CPU # No-op ident GENERIC -maxusers 0 #To statically compile in device wiring instead of /boot/device.hints hints "GENERIC.hints" ==== //depot/projects/s390/sys/s390/include/_types.h#3 (text+ko) ==== @@ -97,6 +97,7 @@ typedef __uint32_t __u_register_t; typedef __uint32_t __vm_offset_t; typedef __int64_t __vm_ooffset_t; +typedef __uint32_t __vm_paddr_t; typedef __uint64_t __vm_pindex_t; typedef __uint32_t __vm_size_t; ==== //depot/projects/s390/sys/s390/include/cpufunc.h#2 (text+ko) ==== @@ -53,7 +53,7 @@ /* Load using real address. */ static __inline u_long -lura(vm_offset_t pa) +lura(vm_paddr_t pa) { u_long x; @@ -66,7 +66,7 @@ /* Store using real address. */ static __inline void -stura(vm_offset_t pa, u_long x) +stura(vm_paddr_t pa, u_long x) { __asm volatile ( " stura %[x], %[pa]" @@ -109,10 +109,10 @@ cr_write(cid, cr_read(cid) & ~mask); } -static __inline vm_offset_t +static __inline vm_paddr_t lra(vm_offset_t va) { - vm_offset_t pa; + vm_paddr_t pa; __asm __volatile ( " lra %[pa], 0(%[va])\n" ==== //depot/projects/s390/sys/s390/include/pmap.h#3 (text+ko) ==== @@ -90,11 +90,11 @@ vm_page_t pv_mpte; /* VM page for pte */ } *pv_entry_t; -extern vm_offset_t avail_start; -extern vm_offset_t avail_end; +extern vm_paddr_t avail_start; +extern vm_paddr_t avail_end; extern vm_offset_t clean_eva; extern vm_offset_t clean_sva; -extern vm_offset_t phys_avail[]; +extern vm_paddr_t phys_avail[]; extern vm_offset_t virtual_avail; extern vm_offset_t virtual_end; ==== //depot/projects/s390/sys/s390/s390/genassym.c#3 (text+ko) ==== @@ -85,7 +85,6 @@ ASSYM(TD_FLAGS, offsetof(struct thread, td_flags)); ASSYM(TD_FRAME, offsetof(struct thread, td_frame)); -ASSYM(TD_KSE, offsetof(struct thread, td_kse)); ASSYM(TD_PCB, offsetof(struct thread, td_pcb)); ASSYM(TD_PROC, offsetof(struct thread, td_proc)); ASSYM(TD_STATE, offsetof(struct thread, td_state)); ==== //depot/projects/s390/sys/s390/s390/machdep.c#8 (text+ko) ==== @@ -135,7 +135,7 @@ } } - return status; + return (status); } static void @@ -337,22 +337,24 @@ error = copyin(uap->sigcntxp, &uc, sizeof(uc)); if (error) - return error; + return (error); - if (psw_insecure(&uc.uc_mcontext.mc_psw)) - return EINVAL; + if (psw_insecure(&uc.uc_mcontext.mc_psw)) { + trapsignal(td, SIGBUS, 0); + return (EINVAL); + } tf = td->td_frame; bcopy(&uc.uc_mcontext.mc_context, &tf->tf_context, ESA_CONTEXT_SIZE); p = td->td_proc; PROC_LOCK(p); - p->p_sigmask = uc.uc_sigmask; - SIG_CANTMASK(p->p_sigmask); - signotify(p); + td->td_sigmask = uc.uc_sigmask; + SIG_CANTMASK(td->td_sigmask); + signotify(td); PROC_UNLOCK(p); - return EJUSTRETURN; + return (EJUSTRETURN); } #ifdef COMPAT_FREEBSD4 @@ -364,15 +366,15 @@ #endif int -get_mcontext(struct thread *td, mcontext_t *mcp) +get_mcontext(struct thread *td, mcontext_t *mcp, int clear_ret) { - return ENOSYS; + return (ENOSYS); } int set_mcontext(struct thread *td, const mcontext_t *mcp) { - return ENOSYS; + return (ENOSYS); } void @@ -444,7 +446,7 @@ { psw_define_addr(&td->td_frame->tf_psw, addr); - return 0; + return (0); } int @@ -453,7 +455,7 @@ /* XXX - wrong */ td->td_frame->tf_psw.mask |= PSW_W; - return 0; + return (0); } int @@ -461,18 +463,18 @@ { bcopy(&td->td_frame->tf_psw, ®s->r_psw, sizeof(*regs)); - return 0; + return (0); } int set_regs(struct thread *td, struct reg *regs) { if (psw_insecure(®s->r_psw)) - return EINVAL; + return (EINVAL); bcopy(&td->td_frame->tf_psw, ®s->r_psw, sizeof(*regs)); - return 0; + return (0); } int @@ -480,7 +482,7 @@ { bcopy(&td->td_frame->tf_fpr, &fpregs->fr_fpr, sizeof(*fpregs)); - return 0; + return (0); } int @@ -488,19 +490,19 @@ { bcopy(&td->td_frame->tf_fpr, &fpregs->fr_fpr, sizeof(*fpregs)); - return 0; + return (0); } int fill_dbregs(struct thread *td, struct dbreg *dbregs) { - return 0; + return (0); } int set_dbregs(struct thread *td, struct dbreg *dbregs) { - return 0; + return (0); } #ifndef DDB ==== //depot/projects/s390/sys/s390/s390/mem.c#6 (text+ko) ==== @@ -156,7 +156,7 @@ } static int -memmmap(dev_t dev, vm_offset_t offset, vm_offset_t *paddr, int prot) +memmmap(dev_t dev, vm_offset_t offset, vm_paddr_t *paddr, int prot) { switch (minor(dev)) { case 1: ==== //depot/projects/s390/sys/s390/s390/pmap.c#12 (text+ko) ==== @@ -96,12 +96,12 @@ static ste_t *proc0sto; -vm_offset_t avail_start; /* pa of first available physical page */ -vm_offset_t avail_end; /* pa of first non-available physical page */ +vm_paddr_t avail_start; /* pa of first available physical page */ +vm_paddr_t avail_end; /* pa of first non-available physical page */ vm_offset_t virtual_avail; /* va of first page after kernel end */ vm_offset_t virtual_end; /* va of first page after kernel space */ -vm_offset_t phys_avail[128]; +vm_paddr_t phys_avail[128]; long Maxmem; /* highest page */ static boolean_t pmap_initialized = FALSE; @@ -141,7 +141,7 @@ DAT_INIT_MAP(crashdumpmap, crashdumpmap, MAXDUMPPGS); static void -ipte(vm_offset_t ptepa) +ipte(vm_paddr_t ptepa) { pte_t pte; @@ -161,10 +161,10 @@ } -static vm_offset_t +static vm_paddr_t dat_init_map(int n) { - vm_offset_t pa = avail_start; + vm_paddr_t pa = avail_start; avail_start += n * PAGE_SIZE; @@ -304,7 +304,7 @@ pmap_assert_pt_free(ste_t ste) { int i; - vm_offset_t ptepa = STE_PTO(ste); + vm_paddr_t ptepa = STE_PTO(ste); pte_t pte; for (i = 0; i < 256; i++, ptepa += sizeof(pte_t)) { @@ -329,7 +329,7 @@ } static __inline void -pmap_set_ste_quad(ste_t *ste, vm_offset_t ptepa) +pmap_set_ste_quad(ste_t *ste, vm_paddr_t ptepa) { *ste++ = ptepa + STE_PTL; *ste++ = ptepa + PTSIZE + STE_PTL; @@ -494,7 +494,7 @@ void pmap_remove_all(vm_page_t m) { - vm_offset_t ptepa; + vm_ptepa_t ptepa; pv_entry_t pv; pmap_t pmap; pte_t pte; @@ -592,7 +592,7 @@ } static int -pmap_remove_pte(pmap_t pmap, vm_offset_t ptepa, vm_offset_t va) +pmap_remove_pte(pmap_t pmap, vm_paddr_t ptepa, vm_offset_t va) { vm_page_t m; pte_t pte; @@ -624,7 +624,7 @@ } static void * -pmap_allocf(uma_zone_t zone, int size, uint8_t *pflag, int wait) +pmap_pv_allocf(uma_zone_t zone, int size, uint8_t *pflag, int wait) { *pflag = UMA_SLAB_PRIV; @@ -681,7 +681,7 @@ void pmap_clear_modify(vm_page_t m) { - vm_offset_t pa = VM_PAGE_TO_PHYS(m); + vm_paddr_t pa = VM_PAGE_TO_PHYS(m); CTR1(KTR_PMAP, "pmap_clear_modify: pa = %x", pa); @@ -691,7 +691,7 @@ void pmap_clear_reference(vm_page_t m) { - vm_offset_t pa = VM_PAGE_TO_PHYS(m); + vm_paddr_t pa = VM_PAGE_TO_PHYS(m); CTR1(KTR_PMAP, "pmap_clear_reference: pa = %x", pa); @@ -713,8 +713,8 @@ void pmap_copy_page(vm_page_t src, vm_page_t dst) { - vm_offset_t srcpa = VM_PAGE_TO_PHYS(src); - vm_offset_t dstpa = VM_PAGE_TO_PHYS(dst); + vm_paddr_t srcpa = VM_PAGE_TO_PHYS(src); + vm_paddr_t dstpa = VM_PAGE_TO_PHYS(dst); CTR2(KTR_PMAP, "pmap_copy_page: srcpa = %x, dstpa = %x", srcpa, dstpa); @@ -783,7 +783,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, boolean_t wired) { - vm_offset_t ptepa, opa; + vm_paddr_t ptepa, opa; pte_t opte, pte; vm_page_t mpte; @@ -881,16 +881,16 @@ stura(ptepa, pte); } -vm_offset_t +vm_paddr_t pmap_extract(pmap_t pmap, vm_offset_t va) { - vm_offset_t ptepa = pmap_ptepa(pmap, va); + vm_paddr_t ptepa = pmap_ptepa(pmap, va); pte_t pte = lura(ptepa); if (pte_valid(pte)) - return PTE_PFRA(pte) + VA_BX(va); + return (PTE_PFRA(pte) + VA_BX(va)); else - return 0; + return (0); } void @@ -901,7 +901,7 @@ } void -pmap_init(vm_offset_t spa, vm_offset_t epa) +pmap_init(vm_paddr_t spa, vm_paddr_t epa) { int i; @@ -919,7 +919,7 @@ /* Init the pv free list. */ pvzone = uma_zcreate("PV ENTRY", sizeof(struct pv_entry), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM); - uma_zone_set_allocf(pvzone, pmap_allocf); + uma_zone_set_allocf(pvzone, pmap_pv_allocf); uma_prealloc(pvzone, vm_page_array_size); pmap_initialized = TRUE; @@ -942,7 +942,7 @@ boolean_t pmap_is_modified(vm_page_t m) { - vm_offset_t pa = VM_PAGE_TO_PHYS(m); + vm_paddr_t pa = VM_PAGE_TO_PHYS(m); CTR1(KTR_PMAP, "pmap_is_modified: pa = %x", pa); @@ -953,9 +953,9 @@ } void -pmap_kenter(vm_offset_t va, vm_offset_t pa) +pmap_kenter(vm_offset_t va, vm_paddr_t pa) { - vm_offset_t ptepa; + vm_paddr_t ptepa; CTR2(KTR_PMAP, "pmap_kenter: va = %x, pa = %x", va, pa); @@ -984,7 +984,7 @@ } vm_offset_t -pmap_map(vm_offset_t *vap, vm_offset_t spa, vm_offset_t epa, int prot) +pmap_map(vm_offset_t *vap, vm_paddr_t spa, vm_paddr_t epa, int prot) { vm_offset_t va, sva; @@ -1194,7 +1194,7 @@ void pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot) { - vm_offset_t ptepa; + vm_paddr_t ptepa; int anychanged; pte_t pte; @@ -1237,8 +1237,8 @@ void pmap_qenter(vm_offset_t va, vm_page_t *mp, int count) { + vm_paddr_t ptepa; vm_offset_t eva; - vm_offset_t ptepa; CTR3(KTR_PMAP, "pmap_qenter: va = %x, mp = %p, count = %d", va, mp, count); @@ -1295,7 +1295,7 @@ void pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) { - vm_offset_t ptepa; + vm_paddr_t ptepa; int anyvalid; pte_t pte; @@ -1321,11 +1321,11 @@ void pmap_remove_pages(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) { - vm_offset_t ptepa; + pv_entry_t pv, npv; + vm_paddr_t ptepa; vm_page_t m; pmap_t pm; pte_t pte; - pv_entry_t pv, npv; CTR3(KTR_PMAP, "pmap_remove_pages: pmap = %p, sva = %x, eva = %x", pmap, sva, eva); @@ -1436,7 +1436,7 @@ boolean_t pmap_ts_referenced(vm_page_t m) { - vm_offset_t pa = VM_PAGE_TO_PHYS(m); + vm_paddr_t pa = VM_PAGE_TO_PHYS(m); boolean_t rv = 0; CTR1(KTR_PMAP, "pmap_ts_referenced: pa = %x", pa); @@ -1457,7 +1457,7 @@ void pmap_zero_page(vm_page_t m) { - vm_offset_t pa = VM_PAGE_TO_PHYS(m); + vm_paddr_t pa = VM_PAGE_TO_PHYS(m); CTR1(KTR_PMAP, "pmap_zero_page: pa = %x", pa); @@ -1475,7 +1475,7 @@ void pmap_zero_page_area(vm_page_t m, int off, int size) { - vm_offset_t pa = VM_PAGE_TO_PHYS(m); + vm_paddr_t pa = VM_PAGE_TO_PHYS(m); CTR3(KTR_PMAP, "pmap_zero_page_area: pa = %x, off = %d, size = %d", pa, off, size); ==== //depot/projects/s390/sys/s390/s390/support.S#2 (text+ko) ==== @@ -170,6 +170,10 @@ lm %r6, %r8, SF_GPR6(%r15) br %r14 +/* intptr_t casuptr(intptr_t *p, intptr_t old, intptr_t new) */ +ENTRY(casuptr) + xr %r2, %r2 + br %r14 /* int fubyte(const void *base) */ ENTRY(fubyte) ==== //depot/projects/s390/sys/s390/s390/swtch.S#3 (text+ko) ==== @@ -1,8 +1,6 @@ /*- * S/390 context switch routines. * - * WHO AND WHY DID ABBREVIATE WORD 'switch' TO 'swtch'?! - * * Copyright (c) 2002 Serguei Tzukanov. * * All rights reserved. Terms for use and redistribution ==== //depot/projects/s390/sys/s390/s390/trap.c#7 (text+ko) ==== @@ -472,7 +472,7 @@ #endif /* Dispose signal for process. */ - trapsignal(p, signo, sigcode); + trapsignal(tf, signo, sigcode); user: userret(td, tf, sticks); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 12:26:11 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9E9EA37B407; Fri, 25 Apr 2003 12:26:09 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 46E3F37B404; Fri, 25 Apr 2003 12:26:09 -0700 (PDT) Received: from k6.locore.ca (k6.locore.ca [198.96.117.170]) by mx1.FreeBSD.org (Postfix) with ESMTP id 50EBD43F85; Fri, 25 Apr 2003 12:26:08 -0700 (PDT) (envelope-from jake@k6.locore.ca) Received: from k6.locore.ca (localhost.locore.ca [127.0.0.1]) by k6.locore.ca (8.12.8/8.12.8) with ESMTP id h3PJShxS076721; Fri, 25 Apr 2003 15:28:43 -0400 (EDT) (envelope-from jake@k6.locore.ca) Received: (from jake@localhost) by k6.locore.ca (8.12.8/8.12.8/Submit) id h3PJShV3076720; Fri, 25 Apr 2003 15:28:43 -0400 (EDT) Date: Fri, 25 Apr 2003 15:28:43 -0400 From: Jake Burkholder To: Serguei Tzukanov Message-ID: <20030425192843.GD73769@locore.ca> References: <200304251912.h3PJCsuI036882@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200304251912.h3PJCsuI036882@repoman.freebsd.org> User-Agent: Mutt/1.4i cc: Perforce Change Reviews Subject: Re: PERFORCE change 29709 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 19:26:12 -0000 Apparently, On Fri, Apr 25, 2003 at 12:12:54PM -0700, Serguei Tzukanov said words to the effect of; > http://perforce.freebsd.org/chv.cgi?CH=29709 > > Change 29709 by tzukanov@tzukanov_antares on 2003/04/25 12:12:54 > > Blind update to -current. > > Affected files ... > > .. //depot/projects/s390/lib/libc/s390/_fpmath.h#2 edit > .. //depot/projects/s390/lib/libc/s390x/_fpmath.h#2 edit > .. //depot/projects/s390/sys/s390/conf/GENERIC#9 edit > .. //depot/projects/s390/sys/s390/include/_types.h#3 edit > .. //depot/projects/s390/sys/s390/include/cpufunc.h#2 edit > .. //depot/projects/s390/sys/s390/include/pmap.h#3 edit > .. //depot/projects/s390/sys/s390/s390/genassym.c#3 edit > .. //depot/projects/s390/sys/s390/s390/machdep.c#8 edit > .. //depot/projects/s390/sys/s390/s390/mem.c#6 edit > .. //depot/projects/s390/sys/s390/s390/pmap.c#12 edit > .. //depot/projects/s390/sys/s390/s390/support.S#2 edit > .. //depot/projects/s390/sys/s390/s390/swtch.S#3 edit > .. //depot/projects/s390/sys/s390/s390/trap.c#7 edit > > Differences ... > > ==== //depot/projects/s390/sys/s390/include/pmap.h#3 (text+ko) ==== > > @@ -90,11 +90,11 @@ > vm_page_t pv_mpte; /* VM page for pte */ > } *pv_entry_t; > > -extern vm_offset_t avail_start; > -extern vm_offset_t avail_end; > +extern vm_paddr_t avail_start; > +extern vm_paddr_t avail_end; > extern vm_offset_t clean_eva; > extern vm_offset_t clean_sva; > -extern vm_offset_t phys_avail[]; > +extern vm_paddr_t phys_avail[]; > extern vm_offset_t virtual_avail; > extern vm_offset_t virtual_end; > Cool, thanks for updating your pmap to use vm_paddr_t. Jake From owner-p4-projects@FreeBSD.ORG Fri Apr 25 12:57:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DD8E537B40B; Fri, 25 Apr 2003 12:57:53 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 89E5B37B40C for ; Fri, 25 Apr 2003 12:57:53 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 20D7743F93 for ; Fri, 25 Apr 2003 12:57:53 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PJvq0U074599 for ; Fri, 25 Apr 2003 12:57:52 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PJvqJ8074593 for perforce@freebsd.org; Fri, 25 Apr 2003 12:57:52 -0700 (PDT) Date: Fri, 25 Apr 2003 12:57:52 -0700 (PDT) Message-Id: <200304251957.h3PJvqJ8074593@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29714 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 19:57:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=29714 Change 29714 by peter@peter_daintree on 2003/04/25 12:56:52 GC unused symbol Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#23 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#23 (text+ko) ==== @@ -220,7 +220,6 @@ .type doreti,@function doreti: FAKE_MCOUNT(bintr) /* init "from" bintr -> doreti */ -doreti_next: /* * Check if ASTs can be handled now. */ From owner-p4-projects@FreeBSD.ORG Fri Apr 25 13:31:41 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4B07737B404; Fri, 25 Apr 2003 13:31:40 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ED18837B401 for ; Fri, 25 Apr 2003 13:31:39 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E757B43FDF for ; Fri, 25 Apr 2003 13:31:38 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PKVc0U099457 for ; Fri, 25 Apr 2003 13:31:38 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PKVaUZ099428 for perforce@freebsd.org; Fri, 25 Apr 2003 13:31:36 -0700 (PDT) Date: Fri, 25 Apr 2003 13:31:36 -0700 (PDT) Message-Id: <200304252031.h3PKVaUZ099428@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 Subject: PERFORCE change 29719 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 20:31:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=29719 Change 29719 by jhb@jhb_laptop on 2003/04/25 13:31:22 IFC @29718 (proc locking). Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/sys_machdep.c#15 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#21 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_signal.c#18 integrate .. //depot/projects/smpng/sys/compat/linux/linux_signal.c#12 integrate .. //depot/projects/smpng/sys/dev/en/midway.c#10 integrate .. //depot/projects/smpng/sys/dev/en/midwayreg.h#2 integrate .. //depot/projects/smpng/sys/dev/en/midwayvar.h#4 integrate .. //depot/projects/smpng/sys/geom/bde/g_bde_work.c#7 integrate .. //depot/projects/smpng/sys/i386/i386/sys_machdep.c#27 integrate .. //depot/projects/smpng/sys/ia64/ia64/sys_machdep.c#4 integrate .. //depot/projects/smpng/sys/kern/kern_ktrace.c#30 integrate .. //depot/projects/smpng/sys/kern/kern_prot.c#68 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#63 integrate .. //depot/projects/smpng/sys/kern/sys_process.c#28 integrate .. //depot/projects/smpng/sys/modules/Makefile#50 integrate .. //depot/projects/smpng/sys/modules/en/Makefile#1 branch .. //depot/projects/smpng/sys/pci/if_en_pci.c#4 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/sys_machdep.c#4 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/sys_machdep.c#9 integrate .. //depot/projects/smpng/sys/vm/vm_glue.c#25 integrate .. //depot/user/jhb/proc/kern/kern_sig.c#66 edit Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/sys_machdep.c#15 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * from: @(#)sys_machdep.c 5.5 (Berkeley) 1/19/91 - * $FreeBSD: src/sys/alpha/alpha/sys_machdep.c,v 1.23 2003/04/18 18:06:32 jhb Exp $ + * $FreeBSD: src/sys/alpha/alpha/sys_machdep.c,v 1.24 2003/04/25 20:04:02 jhb Exp $ * */ @@ -77,7 +77,7 @@ struct thread *td; register struct sysarch_args *uap; { - int error = 0; + int error; switch(uap->op) { case ALPHA_SETHAE: ==== //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#21 (text+ko) ==== @@ -29,7 +29,7 @@ /* * Additional Copyright (c) 1999 by Andrew Gallatin - * $FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.40 2003/02/19 05:46:56 imp Exp $ + * $FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.41 2003/04/25 19:51:41 jhb Exp $ */ @@ -1781,6 +1781,9 @@ } +/* + * MPSAFE + */ int osf1_sysinfo(td, uap) struct thread *td; @@ -1804,8 +1807,10 @@ len = uap->count; name[0] = CTL_KERN; name[1] = KERN_HOSTNAME; + mtx_lock(&Giant); retval = userland_sysctl(td, name, 2, uap->buf, &len, 1, 0, 0, &bytes); + mtx_unlock(&Giant); td->td_retval[0] = bytes; return(retval); break; ==== //depot/projects/smpng/sys/alpha/osf1/osf1_signal.c#18 (text+ko) ==== @@ -30,7 +30,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/alpha/osf1/osf1_signal.c,v 1.30 2003/04/22 18:23:47 jhb Exp $ + * $FreeBSD: src/sys/alpha/osf1/osf1_signal.c,v 1.31 2003/04/25 19:52:30 jhb Exp $ */ #include "opt_compat.h" @@ -572,6 +572,7 @@ p = td->td_proc; scp = uap->sigcntxp; + mtx_lock(&Giant); if (useracc((caddr_t)scp, sizeof (*scp), VM_PROT_READ) == 0 ) { uprintf("uac fails\n"); uprintf("scp: %p\n", scp); @@ -581,8 +582,11 @@ * We grab it all at once for speed. */ if (useracc((caddr_t)scp, sizeof (*scp), VM_PROT_READ) == 0 || - copyin((caddr_t)scp, (caddr_t)&ksc, sizeof ksc)) + copyin((caddr_t)scp, (caddr_t)&ksc, sizeof ksc)) { + mtx_unlock(&Giant); return (EFAULT); + } + mtx_unlock(&Giant); /* * Restore the user-supplied information. ==== //depot/projects/smpng/sys/compat/linux/linux_signal.c#12 (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/linux/linux_signal.c,v 1.42 2003/04/22 18:23:47 jhb Exp $ + * $FreeBSD: src/sys/compat/linux/linux_signal.c,v 1.43 2003/04/25 19:26:18 jhb Exp $ */ #include @@ -233,14 +233,25 @@ td->td_retval[0] = 0; + switch (how) { + case LINUX_SIG_BLOCK: + how = SIG_BLOCK; + break; + case LINUX_SIG_UNBLOCK: + how = SIG_UNBLOCK; + break; + case LINUX_SIG_SETMASK: + how = SIG_SETMASK; + break; + default: + return (EINVAL); + } if (new != NULL) { linux_to_bsd_sigset(new, &nmask); nmaskp = &nmask; } else nmaskp = NULL; - - /* Linux sigprocmask flag values are one less than FreeBSD values. */ - error = kern_sigprocmask(td, how + 1, nmaskp, &omask, 0); + error = kern_sigprocmask(td, how, nmaskp, &omask, 0); if (error != 0 && old != NULL) bsd_to_linux_sigset(&omask, old); ==== //depot/projects/smpng/sys/dev/en/midway.c#10 (text+ko) ==== @@ -32,7 +32,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/dev/en/midway.c,v 1.36 2003/03/12 10:28:26 kjc Exp $ + * $FreeBSD: src/sys/dev/en/midway.c,v 1.37 2003/04/25 16:14:03 harti Exp $ */ /* @@ -49,25 +49,11 @@ * generally helpful. */ -#undef EN_DEBUG -#undef EN_DEBUG_RANGE /* check ranges on en_read/en_write's? */ -#define EN_MBUF_OPT /* try and put more stuff in mbuf? */ #define EN_DIAG -#define EN_STAT -#ifndef EN_DMA -#define EN_DMA 1 /* use dma? */ -#endif -#define EN_NOTXDMA 0 /* hook to disable tx dma only */ -#define EN_NORXDMA 0 /* hook to disable rx dma only */ #define EN_DDBHOOK 1 /* compile in ddb functions */ -#if defined(MIDWAY_ADPONLY) -#define EN_ENIDMAFIX 0 /* no ENI cards to worry about */ -#else -#define EN_ENIDMAFIX 1 /* avoid byte DMA on the ENI card (see below) */ -#endif /* - * note on EN_ENIDMAFIX: the byte aligner on the ENI version of the card + * Note on EN_ENIDMAFIX: the byte aligner on the ENI version of the card * appears to be broken. it works just fine if there is no load... however * when the card is loaded the data get corrupted. to see this, one only * has to use "telnet" over ATM. do the following command in "telnet": @@ -91,48 +77,68 @@ #if defined(DIAGNOSTIC) && !defined(EN_DIAG) #define EN_DIAG /* link in with master DIAG option */ #endif -#ifdef EN_STAT + #define EN_COUNT(X) (X)++ -#else -#define EN_COUNT(X) /* nothing */ -#endif #ifdef EN_DEBUG + #undef EN_DDBHOOK #define EN_DDBHOOK 1 -#define STATIC /* nothing */ -#define INLINE /* nothing */ + +/* + * This macro removes almost all the EN_DEBUG conditionals in the code that make + * to code a good deal less readable. + */ +#define DBG(SC, FL, PRINT) do { \ + if ((SC)->debug & DBG_##FL) { \ + if_printf(&(SC)->enif, "%s: "#FL": ", __func__); \ + printf PRINT; \ + printf("\n"); \ + } \ + } while (0) + +enum { + DBG_INIT = 0x0001, /* debug attach/detach */ + DBG_TX = 0x0002, /* debug transmitting */ + DBG_SERV = 0x0004, /* debug service interrupts */ + DBG_IOCTL = 0x0008, /* debug ioctls */ + DBG_VC = 0x0010, /* debug VC handling */ + DBG_INTR = 0x0020, /* debug interrupts */ + DBG_DMA = 0x0040, /* debug DMA probing */ + DBG_IPACKETS = 0x0080, /* print input packets */ + DBG_REG = 0x0100, /* print all register access */ + DBG_LOCK = 0x0200, /* debug locking */ +}; + #else /* EN_DEBUG */ -#define STATIC static -#define INLINE __inline + +#define DBG(SC, FL, PRINT) do { } while (0) + #endif /* EN_DEBUG */ -#ifdef __FreeBSD__ #include "opt_inet.h" #include "opt_natm.h" #include "opt_ddb.h" -/* enable DDBHOOK when DDB is available */ + +#ifdef DDB #undef EN_DDBHOOK -#ifdef DDB #define EN_DDBHOOK 1 #endif -#endif #include #include #include -#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__bsdi__) -#include -#endif #include +#include #include -#include +#include +#include +#include +#include #include #include -#include - #if defined(INET) || defined(INET6) #include #include @@ -142,115 +148,45 @@ #include #endif -#if defined(__NetBSD__) || defined(__OpenBSD__) -#include -#include -#include -#elif defined(__FreeBSD__) #include #include #include +#include +#include +#include #include #include #include -#include /* for vtophys proto */ -#ifndef IFF_NOTRAILERS -#define IFF_NOTRAILERS 0 -#endif - -#endif /* __FreeBSD__ */ - -#if defined(__alpha__) -/* XXX XXX NEED REAL DMA MAPPING SUPPORT XXX XXX */ -#undef vtophys -#define vtophys(va) alpha_XXX_dmamap((vm_offset_t)(va)) -#endif - -#ifdef __FreeBSD__ -#define NBPF 1 -#else -#include "bpf.h" -#endif -#if NBPF > 0 #include -#ifdef __FreeBSD__ -#define BPFATTACH(ifp, dlt, hlen) bpfattach((ifp), (dlt), (hlen)) -#else -#define BPFATTACH(ifp, dlt, hlen) bpfattach(&(ifp)->if_bpf, (ifp), (dlt), (hlen)) -#define BPF_MTAP(ifp, m) bpf_mtap((ifp)->if_bpf, (m)) -#endif -#endif /* NBPF > 0 */ /* * params */ - #ifndef EN_TXHIWAT -#define EN_TXHIWAT (64*1024) /* max 64 KB waiting to be DMAd out */ +#define EN_TXHIWAT (64 * 1024) /* max 64 KB waiting to be DMAd out */ #endif -#ifndef EN_MINDMA -#define EN_MINDMA 32 /* don't DMA anything less than this (bytes) */ -#endif - -#define RX_NONE 0xffff /* recv VC not in use */ - -#define EN_OBHDR ATM_PH_DRIVER7 /* TBD in first mbuf ! */ -#define EN_OBTRL ATM_PH_DRIVER8 /* PDU trailier in last mbuf ! */ +#define RX_NONE 0xffff /* recv VC not in use */ #define ENOTHER_FREE 0x01 /* free rxslot */ #define ENOTHER_DRAIN 0x02 /* almost free (drain DRQ dma) */ -#define ENOTHER_RAW 0x04 /* 'raw' access (aka boodi mode) */ #define ENOTHER_SWSL 0x08 /* in software service list */ -static int en_dma = EN_DMA; /* use DMA (switch off for dbg) */ - -#ifndef __FreeBSD__ -/* - * autoconfig attachments - */ +SYSCTL_NODE(_hw, OID_AUTO, en, CTLFLAG_RW, 0, "ENI 155p"); -struct cfdriver en_cd = { - 0, "en", DV_IFNET, -}; -#endif - /* - * local structures - */ - -/* - * params to en_txlaunch() function - */ - -struct en_launch { - u_int32_t tbd1; /* TBD 1 */ - u_int32_t tbd2; /* TBD 2 */ - u_int32_t pdu1; /* PDU 1 (aal5) */ - int nodma; /* don't use DMA */ - int need; /* total space we need (pad out if less data) */ - int mlen; /* length of mbuf (for dtq) */ - struct mbuf *t; /* data */ - u_int32_t aal; /* aal code */ - u_int32_t atm_vci; /* vci */ - u_int8_t atm_flags; /* flags */ -}; - - -/* - * dma table (index by # of words) + * dma tables * - * plan A: use WMAYBE (obsolete) - * plan B: avoid WMAYBE + * The plan is indexed by the number of words to transfer. + * The maximum index is 15 for 60 words. */ - struct en_dmatab { - u_int8_t bcode; /* code */ - u_int8_t divshift; /* byte divisor */ + uint8_t bcode; /* code */ + uint8_t divshift; /* byte divisor */ }; -static struct en_dmatab en_dma_planB[] = { +static const struct en_dmatab en_dmaplan[] = { { 0, 0 }, /* 0 */ { MIDDMA_WORD, 2}, /* 1 */ { MIDDMA_2WORD, 3}, /* 2 */ { MIDDMA_WORD, 2}, /* 3 */ { MIDDMA_4WORD, 4}, /* 4 */ { MIDDMA_WORD, 2}, /* 5 */ @@ -259,2882 +195,2733 @@ { MIDDMA_2WORD, 3}, /* 10 */ { MIDDMA_WORD, 2}, /* 11 */ { MIDDMA_4WORD, 4}, /* 12 */ { MIDDMA_WORD, 2}, /* 13 */ { MIDDMA_2WORD, 3}, /* 14 */ { MIDDMA_WORD, 2}, /* 15 */ - { MIDDMA_16WORD, 6}, /* 16 */ + { MIDDMA_16WORD,6}, /* 16 */ }; -static struct en_dmatab *en_dmaplan = en_dma_planB; - /* * prototypes */ - -STATIC INLINE int en_b2sz(int) __attribute__ ((unused)); #ifdef EN_DDBHOOK - int en_dump(int,int); - int en_dumpmem(int,int,int); +int en_dump(int unit, int level); +int en_dumpmem(int,int,int); #endif -STATIC void en_dmaprobe(struct en_softc *); -STATIC int en_dmaprobe_doit(struct en_softc *, u_int8_t *, - u_int8_t *, int); -STATIC INLINE int en_dqneed(struct en_softc *, caddr_t, u_int, - u_int) __attribute__ ((unused)); -STATIC void en_init(struct en_softc *); -STATIC int en_ioctl(struct ifnet *, EN_IOCTL_CMDT, caddr_t); -STATIC INLINE int en_k2sz(int) __attribute__ ((unused)); -STATIC void en_loadvc(struct en_softc *, int); -STATIC int en_mfix(struct en_softc *, struct mbuf **, struct mbuf *); -STATIC INLINE struct mbuf *en_mget(struct en_softc *, u_int, - u_int *) __attribute__ ((unused)); -STATIC INLINE u_int32_t en_read(struct en_softc *, - u_int32_t) __attribute__ ((unused)); -STATIC int en_rxctl(struct en_softc *, struct atm_pseudoioctl *, int); -STATIC void en_txdma(struct en_softc *, int); -STATIC void en_txlaunch(struct en_softc *, int, - struct en_launch *); -STATIC void en_service(struct en_softc *); -STATIC void en_start(struct ifnet *); -STATIC INLINE int en_sz2b(int) __attribute__ ((unused)); -STATIC INLINE void en_write(struct en_softc *, u_int32_t, - u_int32_t) __attribute__ ((unused)); -/* - * macros/inline - */ +#define EN_LOCK(SC) do { \ + DBG(SC, LOCK, ("ENLOCK %d\n", __LINE__)); \ + mtx_lock(&sc->en_mtx); \ + } while (0) +#define EN_UNLOCK(SC) do { \ + DBG(SC, LOCK, ("ENUNLOCK %d\n", __LINE__)); \ + mtx_unlock(&sc->en_mtx); \ + } while (0) /* - * raw read/write macros + * While a transmit mbuf is waiting to get transmit DMA resources we + * need to keep some information with it. We don't want to allocate + * additional memory for this so we stuff it into free fields in the + * mbuf packet header. Neither the checksum fields nor the rcvif field are used + * so use these. */ +#define TX_AAL5 0x1 /* transmit AAL5 PDU */ +#define TX_HAS_TBD 0x2 /* TBD did fit into mbuf */ +#define TX_HAS_PAD 0x4 /* padding did fit into mbuf */ +#define TX_HAS_PDU 0x8 /* PDU trailer did fit into mbuf */ -#define EN_READDAT(SC,R) en_read(SC,R) -#define EN_WRITEDAT(SC,R,V) en_write(SC,R,V) +#define MBUF_SET_TX(M, VCI, FLAGS, DATALEN, PAD, MAP) do { \ + (M)->m_pkthdr.csum_data = (VCI) | ((FLAGS) << MID_VCI_BITS); \ + (M)->m_pkthdr.csum_flags = ((DATALEN) & 0xffff) | \ + ((PAD & 0x3f) << 16); \ + (M)->m_pkthdr.rcvif = (void *)(MAP); \ + } while (0) -/* - * cooked read/write macros - */ +#define MBUF_GET_TX(M, VCI, FLAGS, DATALEN, PAD, MAP) do { \ + (VCI) = (M)->m_pkthdr.csum_data & ((1 << MID_VCI_BITS) - 1); \ + (FLAGS) = ((M)->m_pkthdr.csum_data >> MID_VCI_BITS) & 0xf; \ + (DATALEN) = (M)->m_pkthdr.csum_flags & 0xffff; \ + (PAD) = ((M)->m_pkthdr.csum_flags >> 16) & 0x3f; \ + (MAP) = (void *)((M)->m_pkthdr.rcvif); \ + } while (0) -#define EN_READ(SC,R) (u_int32_t)ntohl(en_read(SC,R)) -#define EN_WRITE(SC,R,V) en_write(SC,R, htonl(V)) -#define EN_WRAPADD(START,STOP,CUR,VAL) { \ - (CUR) = (CUR) + (VAL); \ - if ((CUR) >= (STOP)) \ - (CUR) = (START) + ((CUR) - (STOP)); \ - } +#define EN_WRAPADD(START, STOP, CUR, VAL) do { \ + (CUR) = (CUR) + (VAL); \ + if ((CUR) >= (STOP)) \ + (CUR) = (START) + ((CUR) - (STOP)); \ + } while (0) -#define WORD_IDX(START, X) (((X) - (START)) / sizeof(u_int32_t)) +#define WORD_IDX(START, X) (((X) - (START)) / sizeof(uint32_t)) -/* we store sc->dtq and sc->drq data in the following format... */ -#define EN_DQ_MK(SLOT,LEN) (((SLOT) << 20)|(LEN)|(0x80000)) - /* the 0x80000 ensures we != 0 */ -#define EN_DQ_SLOT(X) ((X) >> 20) -#define EN_DQ_LEN(X) ((X) & 0x3ffff) - -/* format of DTQ/DRQ word 1 differs between ENI and ADP */ -#if defined(MIDWAY_ENIONLY) - -#define MID_MK_TXQ(SC,CNT,CHAN,END,BCODE) \ - EN_WRITE((SC), (SC)->dtq_us, \ - MID_MK_TXQ_ENI((CNT), (CHAN), (END), (BCODE))); - -#define MID_MK_RXQ(SC,CNT,VCI,END,BCODE) \ - EN_WRITE((SC), (SC)->drq_us, \ - MID_MK_RXQ_ENI((CNT), (VCI), (END), (BCODE))); - -#elif defined(MIDWAY_ADPONLY) - -#define MID_MK_TXQ(SC,CNT,CHAN,END,JK) \ - EN_WRITE((SC), (SC)->dtq_us, \ - MID_MK_TXQ_ADP((CNT), (CHAN), (END), (JK))); - -#define MID_MK_RXQ(SC,CNT,VCI,END,JK) \ - EN_WRITE((SC), (SC)->drq_us, \ - MID_MK_RXQ_ADP((CNT), (VCI), (END), (JK))); - -#else - -#define MID_MK_TXQ(SC,CNT,CHAN,END,JK_OR_BCODE) { \ - if ((SC)->is_adaptec) \ - EN_WRITE((SC), (SC)->dtq_us, \ - MID_MK_TXQ_ADP((CNT), (CHAN), (END), (JK_OR_BCODE))); \ - else \ - EN_WRITE((SC), (SC)->dtq_us, \ - MID_MK_TXQ_ENI((CNT), (CHAN), (END), (JK_OR_BCODE))); \ - } +#define SETQ_END(SC, VAL) ((SC)->is_adaptec ? \ + ((VAL) | (MID_DMA_END >> 4)) : \ + ((VAL) | (MID_DMA_END))) -#define MID_MK_RXQ(SC,CNT,VCI,END,JK_OR_BCODE) { \ - if ((SC)->is_adaptec) \ - EN_WRITE((SC), (SC)->drq_us, \ - MID_MK_RXQ_ADP((CNT), (VCI), (END), (JK_OR_BCODE))); \ - else \ - EN_WRITE((SC), (SC)->drq_us, \ - MID_MK_RXQ_ENI((CNT), (VCI), (END), (JK_OR_BCODE))); \ - } - -#endif - -/* add an item to the DTQ */ -#define EN_DTQADD(SC,CNT,CHAN,JK_OR_BCODE,ADDR,LEN,END) { \ - if (END) \ - (SC)->dtq[MID_DTQ_A2REG((SC)->dtq_us)] = EN_DQ_MK(CHAN,LEN); \ - MID_MK_TXQ(SC,CNT,CHAN,END,JK_OR_BCODE); \ - (SC)->dtq_us += 4; \ - EN_WRITE((SC), (SC)->dtq_us, (ADDR)); \ - EN_WRAPADD(MID_DTQOFF, MID_DTQEND, (SC)->dtq_us, 4); \ - (SC)->dtq_free--; \ - if (END) \ - EN_WRITE((SC), MID_DMA_WRTX, MID_DTQ_A2REG((SC)->dtq_us)); \ -} - -/* DRQ add macro */ -#define EN_DRQADD(SC,CNT,VCI,JK_OR_BCODE,ADDR,LEN,SLOT,END) { \ - if (END) \ - (SC)->drq[MID_DRQ_A2REG((SC)->drq_us)] = EN_DQ_MK(SLOT,LEN); \ - MID_MK_RXQ(SC,CNT,VCI,END,JK_OR_BCODE); \ - (SC)->drq_us += 4; \ - EN_WRITE((SC), (SC)->drq_us, (ADDR)); \ - EN_WRAPADD(MID_DRQOFF, MID_DRQEND, (SC)->drq_us, 4); \ - (SC)->drq_free--; \ - if (END) \ - EN_WRITE((SC), MID_DMA_WRRX, MID_DRQ_A2REG((SC)->drq_us)); \ -} - /* - * the driver code + * The dtq and drq members are set for each END entry in the corresponding + * card queue entry. It is used to find out, when a buffer has been + * finished DMAing and can be freed. * - * the code is arranged in a specific way: - * [1] short/inline functions - * [2] autoconfig stuff - * [3] ioctl stuff - * [4] reset -> init -> trasmit -> intr -> receive functions - * + * We store sc->dtq and sc->drq data in the following format... + * the 0x80000 ensures we != 0 */ +#define EN_DQ_MK(SLOT, LEN) (((SLOT) << 20) | (LEN) | (0x80000)) +#define EN_DQ_SLOT(X) ((X) >> 20) +#define EN_DQ_LEN(X) ((X) & 0x3ffff) /***********************************************************************/ /* - * en_read: read a word from the card. this is the only function - * that reads from the card. + * en_read{x}: read a word from the card. These are the only functions + * that read from the card. */ +static __inline uint32_t +en_readx(struct en_softc *sc, uint32_t r) +{ + uint32_t v; -STATIC INLINE u_int32_t en_read(sc, r) +#ifdef EN_DIAG + if (r > MID_MAXOFF || (r % 4)) + panic("en_read out of range, r=0x%x", r); +#endif + v = bus_space_read_4(sc->en_memt, sc->en_base, r); + return (v); +} -struct en_softc *sc; -u_int32_t r; - +static __inline uint32_t +en_read(struct en_softc *sc, uint32_t r) { + uint32_t v; -#ifdef EN_DEBUG_RANGE - if (r > MID_MAXOFF || (r % 4)) - panic("en_read out of range, r=0x%x", r); +#ifdef EN_DIAG + if (r > MID_MAXOFF || (r % 4)) + panic("en_read out of range, r=0x%x", r); #endif - - return(bus_space_read_4(sc->en_memt, sc->en_base, r)); + v = bus_space_read_4(sc->en_memt, sc->en_base, r); + DBG(sc, REG, ("en_read(%#x) -> %08x", r, v)); + return (v); } /* - * en_write: write a word to the card. this is the only function that + * en_write: write a word to the card. This is the only function that * writes to the card. */ - -STATIC INLINE void en_write(sc, r, v) - -struct en_softc *sc; -u_int32_t r, v; - +static __inline void +en_write(struct en_softc *sc, uint32_t r, uint32_t v) { -#ifdef EN_DEBUG_RANGE - if (r > MID_MAXOFF || (r % 4)) - panic("en_write out of range, r=0x%x", r); +#ifdef EN_DIAG + if (r > MID_MAXOFF || (r % 4)) + panic("en_write out of range, r=0x%x", r); #endif - - bus_space_write_4(sc->en_memt, sc->en_base, r, v); + DBG(sc, REG, ("en_write(%#x) <- %08x", r, v)); + bus_space_write_4(sc->en_memt, sc->en_base, r, v); } /* * en_k2sz: convert KBytes to a size parameter (a log2) */ - -STATIC INLINE int en_k2sz(k) - -int k; - +static __inline int +en_k2sz(int k) { - switch(k) { - case 1: return(0); - case 2: return(1); - case 4: return(2); - case 8: return(3); - case 16: return(4); - case 32: return(5); - case 64: return(6); - case 128: return(7); - default: panic("en_k2sz"); - } - return(0); + switch(k) { + case 1: return (0); + case 2: return (1); + case 4: return (2); + case 8: return (3); + case 16: return (4); + case 32: return (5); + case 64: return (6); + case 128: return (7); + default: + panic("en_k2sz"); + } + return (0); } #define en_log2(X) en_k2sz(X) - /* * en_b2sz: convert a DMA burst code to its byte size */ - -STATIC INLINE int en_b2sz(b) - -int b; - +static __inline int +en_b2sz(int b) { - switch (b) { - case MIDDMA_WORD: return(1*4); - case MIDDMA_2WMAYBE: - case MIDDMA_2WORD: return(2*4); - case MIDDMA_4WMAYBE: - case MIDDMA_4WORD: return(4*4); - case MIDDMA_8WMAYBE: - case MIDDMA_8WORD: return(8*4); - case MIDDMA_16WMAYBE: - case MIDDMA_16WORD: return(16*4); - default: panic("en_b2sz"); - } - return(0); + switch (b) { + case MIDDMA_WORD: return (1*4); + case MIDDMA_2WMAYBE: + case MIDDMA_2WORD: return (2*4); + case MIDDMA_4WMAYBE: + case MIDDMA_4WORD: return (4*4); + case MIDDMA_8WMAYBE: + case MIDDMA_8WORD: return (8*4); + case MIDDMA_16WMAYBE: + case MIDDMA_16WORD: return (16*4); + default: + panic("en_b2sz"); + } + return (0); } - /* * en_sz2b: convert a burst size (bytes) to DMA burst code */ - -STATIC INLINE int en_sz2b(sz) - -int sz; - +static __inline int +en_sz2b(int sz) { - switch (sz) { - case 1*4: return(MIDDMA_WORD); - case 2*4: return(MIDDMA_2WORD); - case 4*4: return(MIDDMA_4WORD); - case 8*4: return(MIDDMA_8WORD); - case 16*4: return(MIDDMA_16WORD); - default: panic("en_sz2b"); - } - return(0); + switch (sz) { + case 1*4: return (MIDDMA_WORD); + case 2*4: return (MIDDMA_2WORD); + case 4*4: return (MIDDMA_4WORD); + case 8*4: return (MIDDMA_8WORD); + case 16*4: return (MIDDMA_16WORD); + default: + panic("en_sz2b"); + } + return(0); } - +#ifdef EN_DEBUG /* - * en_dqneed: calculate number of DTQ/DRQ's needed for a buffer + * Dump a packet */ - -STATIC INLINE int en_dqneed(sc, data, len, tx) - -struct en_softc *sc; -caddr_t data; -u_int len, tx; - +static void +en_dump_packet(struct en_softc *sc, struct mbuf *m) { - int result, needalign, sz; + int plen = m->m_pkthdr.len; + u_int pos = 0; + u_int totlen = 0; + int len; + u_char *ptr; -#if !defined(MIDWAY_ENIONLY) -#if !defined(MIDWAY_ADPONLY) - if (sc->is_adaptec) -#endif /* !MIDWAY_ADPONLY */ - return(1); /* adaptec can DMA anything in one go */ + if_printf(&sc->enif, "packet len=%d", plen); + while (m != NULL) { + totlen += m->m_len; + ptr = mtod(m, u_char *); + for (len = 0; len < m->m_len; len++, pos++, ptr++) { + if (pos % 16 == 8) + printf(" "); + if (pos % 16 == 0) + printf("\n"); + printf(" %02x", *ptr); + } + m = m->m_next; + } + printf("\n"); + if (totlen != plen); + printf("sum of m_len=%u\n", totlen); +} #endif - -#if !defined(MIDWAY_ADPONLY) - result = 0; - if (len < EN_MINDMA) { - if (!tx) /* XXX: conservative */ - return(1); /* will copy/DMA_JK */ - } - if (tx) { /* byte burst? */ - needalign = (((uintptr_t) (void *) data) % sizeof(u_int32_t)); - if (needalign) { - result++; - sz = min(len, sizeof(u_int32_t) - needalign); - len -= sz; - data += sz; - } - } +/*********************************************************************/ +/* + * DMA maps + */ - if (sc->alburst && len) { - needalign = (((uintptr_t) (void *) data) & sc->bestburstmask); - if (needalign) { - result++; /* alburst */ - sz = min(len, sc->bestburstlen - needalign); - len -= sz; - } - } +/* + * Map constructor for a MAP. + * + * This is called each time when a map is allocated + * from the pool and about to be returned to the user. Here we actually + * allocate the map if there isn't one. The problem is that we may fail + * to allocate the DMA map yet have no means to signal this error. Therefor + * when allocating a map, the call must check that there is a map. An + * additional problem is, that i386 maps will be NULL, yet are ok and must + * be freed so let's use a flag to signal allocation. + * + * Caveat: we have no way to know that we are called from an interrupt context + * here. We rely on the fact, that bus_dmamap_create uses M_NOWAIT in all + * its allocations. + * + * LOCK: any, not needed + */ +static void +en_map_ctor(void *mem, int size, void *arg) +{ + struct en_softc *sc = arg; + struct en_map *map = mem; + int err; - if (len >= sc->bestburstlen) { - sz = len / sc->bestburstlen; - sz = sz * sc->bestburstlen; - len -= sz; - result++; /* best shot */ - } - - if (len) { - result++; /* clean up */ - if (tx && (len % sizeof(u_int32_t)) != 0) - result++; /* byte cleanup */ - } + if (map->sc == NULL) + map->sc = sc; - return(result); -#endif /* !MIDWAY_ADPONLY */ + if (!(map->flags & ENMAP_ALLOC)) { + err = bus_dmamap_create(sc->txtag, 0, &map->map); + if (err != 0) + if_printf(&sc->enif, "cannot create DMA map %d\n", err); + else + map->flags |= ENMAP_ALLOC; + } + map->flags &= ~ENMAP_LOADED; } - /* - * en_mget: get an mbuf chain that can hold totlen bytes and return it - * (for recv) [based on am7990_get from if_le and ieget from if_ie] - * after this call the sum of all the m_len's in the chain will be totlen. + * Map destructor. + * + * Called when a map is disposed into the zone. If the map is loaded, unload + * it. + * + * LOCK: any, not needed */ +static void +en_map_dtor(void *mem, int size, void *arg) +{ + struct en_map *map = mem; -STATIC INLINE struct mbuf *en_mget(sc, totlen, drqneed) + if (map->flags & ENMAP_LOADED) { + bus_dmamap_unload(map->sc->txtag, map->map); + map->flags &= ~ENMAP_LOADED; + } +} -struct en_softc *sc; -u_int totlen, *drqneed; - +/* + * Map finializer. + * + * This is called each time a map is returned from the zone to the system. + * Get rid of the dmamap here. + * + * LOCK: any, not needed + */ +static void +en_map_fini(void *mem, int size) { - struct mbuf *m; - struct mbuf *top, **mp; - *drqneed = 0; + struct en_map *map = mem; - MGETHDR(m, M_DONTWAIT, MT_DATA); - if (m == NULL) - return(NULL); - m->m_pkthdr.rcvif = &sc->enif; - m->m_pkthdr.len = totlen; - m->m_len = MHLEN; - top = NULL; - mp = ⊤ - - /* if (top != NULL) then we've already got 1 mbuf on the chain */ - while (totlen > 0) { - if (top) { - MGET(m, M_DONTWAIT, MT_DATA); - if (!m) { - m_freem(top); - return(NULL); /* out of mbufs */ - } - m->m_len = MLEN; - } - if (totlen >= MINCLSIZE) { - MCLGET(m, M_DONTWAIT); - if ((m->m_flags & M_EXT) == 0) { - m_free(m); - m_freem(top); - return(NULL); /* out of mbuf clusters */ - } - m->m_len = MCLBYTES; - } - m->m_len = min(totlen, m->m_len); - totlen -= m->m_len; - *mp = m; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Apr 25 13:47:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7B54137B405; Fri, 25 Apr 2003 13:47:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3FFF437B401 for ; Fri, 25 Apr 2003 13:47:04 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CA70D43FA3 for ; Fri, 25 Apr 2003 13:47:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PKl30U011552 for ; Fri, 25 Apr 2003 13:47:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PKl3Xe011546 for perforce@freebsd.org; Fri, 25 Apr 2003 13:47:03 -0700 (PDT) Date: Fri, 25 Apr 2003 13:47:03 -0700 (PDT) Message-Id: <200304252047.h3PKl3Xe011546@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29724 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 20:47:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29724 Change 29724 by peter@peter_daintree on 2003/04/25 13:46:08 get sizeof(struct trapframe) in TF_SIZE Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#21 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#21 (text+ko) ==== @@ -152,6 +152,7 @@ ASSYM(TF_RFLAGS, offsetof(struct trapframe, tf_rflags)); ASSYM(TF_RSP, offsetof(struct trapframe, tf_rsp)); ASSYM(TF_SS, offsetof(struct trapframe, tf_ss)); +ASSYM(TF_SIZE, sizeof(struct trapframe)); ASSYM(SIGF_HANDLER, offsetof(struct sigframe, sf_ahu.sf_handler)); ASSYM(SIGF_UC, offsetof(struct sigframe, sf_uc)); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 14:09:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 750D637B404; Fri, 25 Apr 2003 14:09:37 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0EBCF37B401 for ; Fri, 25 Apr 2003 14:09:37 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9958D43F75 for ; Fri, 25 Apr 2003 14:09:36 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PL9a0U027706 for ; Fri, 25 Apr 2003 14:09:36 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PL9adp027701 for perforce@freebsd.org; Fri, 25 Apr 2003 14:09:36 -0700 (PDT) Date: Fri, 25 Apr 2003 14:09:36 -0700 (PDT) Message-Id: <200304252109.h3PL9adp027701@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29729 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 21:09:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=29729 Change 29729 by peter@peter_daintree on 2003/04/25 14:09:13 export KUDSEL and KUCSEL (user code and data selectors) Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#22 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#22 (text+ko) ==== @@ -171,6 +171,8 @@ ASSYM(KCSEL, GSEL(GCODE_SEL, SEL_KPL)); ASSYM(KDSEL, GSEL(GDATA_SEL, SEL_KPL)); +ASSYM(KUCSEL, GSEL(GUCODE_SEL, SEL_UPL)); +ASSYM(KUDSEL, GSEL(GUDATA_SEL, SEL_UPL)); ASSYM(GPROC0_SEL, GPROC0_SEL); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 14:10:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3E3AA37B404; Fri, 25 Apr 2003 14:10:39 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 069AC37B401 for ; Fri, 25 Apr 2003 14:10:39 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A51C743FAF for ; Fri, 25 Apr 2003 14:10:38 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PLAc0U028313 for ; Fri, 25 Apr 2003 14:10:38 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PLAcQu028305 for perforce@freebsd.org; Fri, 25 Apr 2003 14:10:38 -0700 (PDT) Date: Fri, 25 Apr 2003 14:10:38 -0700 (PDT) Message-Id: <200304252110.h3PLAcQu028305@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29730 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 21:10:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=29730 Change 29730 by peter@peter_daintree on 2003/04/25 14:10:23 Add a pcpu variable for storing the user stack pointer during a syscall instruction. All the scratch registers are used up :-(. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/pcpu.h#9 edit .. //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#23 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/pcpu.h#9 (text+ko) ==== @@ -39,7 +39,8 @@ * other processors" */ #define PCPU_MD_FIELDS \ - struct pcpu *pc_prvspace; /* Self-reference */ \ + struct pcpu *pc_prvspace; /* Self-reference */ \ + register_t pc_scratch_rsp; /* User %rsp in syscall */ #if defined(lint) ==== //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#23 (text+ko) ==== @@ -168,6 +168,7 @@ ASSYM(PC_IDLETHREAD, offsetof(struct pcpu, pc_idlethread)); ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); ASSYM(PC_CPUID, offsetof(struct pcpu, pc_cpuid)); +ASSYM(PC_SCRATCH_RSP, offsetof(struct pcpu, pc_scratch_rsp)); ASSYM(KCSEL, GSEL(GCODE_SEL, SEL_KPL)); ASSYM(KDSEL, GSEL(GDATA_SEL, SEL_KPL)); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 14:12:43 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CF56537B404; Fri, 25 Apr 2003 14:12:42 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 69BFB37B401 for ; Fri, 25 Apr 2003 14:12:42 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EBA2543F93 for ; Fri, 25 Apr 2003 14:12:41 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PLCf0U029962 for ; Fri, 25 Apr 2003 14:12:41 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PLCfoN029953 for perforce@freebsd.org; Fri, 25 Apr 2003 14:12:41 -0700 (PDT) Date: Fri, 25 Apr 2003 14:12:41 -0700 (PDT) Message-Id: <200304252112.h3PLCfoN029953@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29731 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 21:12:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=29731 Change 29731 by peter@peter_daintree on 2003/04/25 14:12:33 Make some guesses about what fast_syscall could look like. It isn't enabled on the cpu yet though. This is still pretty rough, and the swapgs stuff is commented out since the PCPU stuff is commented out, hence it doesn't gain anything yet. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#24 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#24 (text+ko) ==== @@ -191,6 +191,68 @@ MEXITCOUNT jmp doreti +/* + * Fast syscall entry point. We enter here with just our new %cs/%ss set, + * and the new privilige level. We are still running on the old user stack + * pointer. We have to juggle a few things around to find our stack etc. + * swapgs gives us access to our PCPU space only. + * XXX The PCPU stuff is stubbed out right now... + */ +IDTVEC(fast_syscall) + #swapgs + movq %rsp,PCPU(SCRATCH_RSP) + movq common_tss+COMMON_TSS_RSP0,%rsp + sti + /* Now emulate a trapframe. Ugh. */ + subq $TF_SIZE,%rsp + movq $KUDSEL,TF_SS(%rsp) + /* defer TF_RSP till we have a spare register */ + movq %r11,TF_RFLAGS(%rsp) + movq $KUCSEL,TF_CS(%rsp) + movq %rcx,TF_RIP(%rsp) /* %rcx original value is in %r10 */ + movq $2,TF_ERR(%rsp) + movq %rdi,TF_RDI(%rsp) /* arg 1 */ + movq %rsi,TF_RSI(%rsp) /* arg 2 */ + movq %rdx,TF_RDX(%rsp) /* arg 3 */ + movq %r10,TF_RCX(%rsp) /* arg 4 */ + movq %r8,TF_R8(%rsp) /* arg 5 */ + movq %r9,TF_R9(%rsp) /* arg 6 */ + movq %rax,TF_RAX(%rsp) /* syscall number */ + movq %rbx,TF_RBX(%rsp) /* C preserved */ + movq %rbp,TF_RBP(%rsp) /* C preserved */ + movq %r12,TF_R12(%rsp) /* C preserved */ + movq %r13,TF_R13(%rsp) /* C preserved */ + movq %r14,TF_R14(%rsp) /* C preserved */ + movq %r15,TF_R15(%rsp) /* C preserved */ + movq PCPU(SCRATCH_RSP),%r12 /* %r12 already saved */ + movq %r12,TF_RSP(%rsp) /* user stack pointer */ + call syscall + /* simplified from doreti */ +1: /* Check for and handle AST's on return to userland */ + cli + movq PCPU(CURTHREAD),%rax + testl $TDF_ASTPENDING | TDF_NEEDRESCHED,TD_FLAGS(%rax) + je 2f + sti + movq %rsp, %rdi + call ast + jmp 1b +2: /* restore preserved registers */ + movq TF_RSP(%rsp),%rdi /* user stack pointer */ + movq TF_RAX(%rsp),%rax /* return value 1 */ + movq TF_RDX(%rsp),%rdx /* return value 2 */ + movq TF_RBX(%rsp),%rbx /* C preserved */ + movq TF_RBP(%rsp),%rbp /* C preserved */ + movq TF_R12(%rsp),%r12 /* C preserved */ + movq TF_R13(%rsp),%r13 /* C preserved */ + movq TF_R14(%rsp),%r14 /* C preserved */ + movq TF_R15(%rsp),%r15 /* C preserved */ + movq TF_R11(%rsp),%r11 /* original %rflags */ + movq TF_RIP(%rsp),%rcx /* original %rip */ + sti + #swapgs + sysret + ENTRY(fork_trampoline) movq %r12, %rdi /* function */ movq %rbx, %rsi /* arg1 */ From owner-p4-projects@FreeBSD.ORG Fri Apr 25 14:18:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AAE4C37B404; Fri, 25 Apr 2003 14:18:50 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5FD4537B401 for ; Fri, 25 Apr 2003 14:18:50 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EAD2943F85 for ; Fri, 25 Apr 2003 14:18:49 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PLIn0U034607 for ; Fri, 25 Apr 2003 14:18:49 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PLInLB034602 for perforce@freebsd.org; Fri, 25 Apr 2003 14:18:49 -0700 (PDT) Date: Fri, 25 Apr 2003 14:18:49 -0700 (PDT) Message-Id: <200304252118.h3PLInLB034602@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29732 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 21:18:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=29732 Change 29732 by peter@peter_daintree on 2003/04/25 14:18:38 set KernelGSBase msr for swapgs's use Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#82 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#82 (text+ko) ==== @@ -1166,6 +1166,7 @@ wrmsr(MSR_FSBASE, (u_int64_t)pc); wrmsr(MSR_GSBASE, (u_int64_t)pc); + wrmsr(MSR_KGSBASE, (u_int64_t)pc); pcpu_init(pc, 0, sizeof(struct pcpu)); PCPU_SET(prvspace, pc); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 14:39:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 280CB37B404; Fri, 25 Apr 2003 14:39:18 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B911737B401 for ; Fri, 25 Apr 2003 14:39:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 603EA43FB1 for ; Fri, 25 Apr 2003 14:39:17 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PLdH0U049052 for ; Fri, 25 Apr 2003 14:39:17 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PLdGfA049047 for perforce@freebsd.org; Fri, 25 Apr 2003 14:39:16 -0700 (PDT) Date: Fri, 25 Apr 2003 14:39:16 -0700 (PDT) Message-Id: <200304252139.h3PLdGfA049047@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to tzukanov@freebsd.org using -f From: Serguei Tzukanov To: Perforce Change Reviews Subject: PERFORCE change 29736 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 21:39:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=29736 Change 29736 by tzukanov@tzukanov_antares on 2003/04/25 14:38:16 Remove nonexisting include. Affected files ... .. //depot/projects/s390/lib/libdisk/write_s390_disk.c#2 edit .. //depot/projects/s390/lib/libdisk/write_s390x_disk.c#2 edit Differences ... ==== //depot/projects/s390/lib/libdisk/write_s390_disk.c#2 (text+ko) ==== @@ -19,14 +19,9 @@ #include #include #include -#include #include #include "libdisk.h" -/* - * XXX: A lot of hardcoded 512s probably should be foo->sector_size; - * I'm not sure which, so I leave it like it worked before. --schweikh - */ int Write_Disk(const struct disk *d1) { ==== //depot/projects/s390/lib/libdisk/write_s390x_disk.c#2 (text+ko) ==== @@ -19,14 +19,9 @@ #include #include #include -#include #include #include "libdisk.h" -/* - * XXX: A lot of hardcoded 512s probably should be foo->sector_size; - * I'm not sure which, so I leave it like it worked before. --schweikh - */ int Write_Disk(const struct disk *d1) { From owner-p4-projects@FreeBSD.ORG Fri Apr 25 14:45:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A35D837B405; Fri, 25 Apr 2003 14:45:26 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3DD4537B401 for ; Fri, 25 Apr 2003 14:45:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A2EB043FE5 for ; Fri, 25 Apr 2003 14:45:25 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PLjP0U054072 for ; Fri, 25 Apr 2003 14:45:25 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PLjPT0054066 for perforce@freebsd.org; Fri, 25 Apr 2003 14:45:25 -0700 (PDT) Date: Fri, 25 Apr 2003 14:45:25 -0700 (PDT) Message-Id: <200304252145.h3PLjPT0054066@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29737 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 21:45:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=29737 Change 29737 by peter@peter_daintree on 2003/04/25 14:45:09 enable syscall instruction. Note that MSR_LSTAR isn't set, so that when compatability mode is enabled, it must point to something. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#25 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#83 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#25 (text+ko) ==== @@ -251,7 +251,7 @@ movq TF_RIP(%rsp),%rcx /* original %rip */ sti #swapgs - sysret + sysretq ENTRY(fork_trampoline) movq %r12, %rdi /* function */ ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#83 (text+ko) ==== @@ -643,7 +643,7 @@ IDTVEC(bnd), IDTVEC(ill), IDTVEC(dna), IDTVEC(fpusegm), IDTVEC(tss), IDTVEC(missing), IDTVEC(stk), IDTVEC(prot), IDTVEC(page), IDTVEC(mchk), IDTVEC(rsvd), IDTVEC(fpu), IDTVEC(align), - IDTVEC(xmm), IDTVEC(int0x80_syscall); + IDTVEC(xmm), IDTVEC(int0x80_syscall), IDTVEC(fast_syscall); void sdtossd(sd, ssd) @@ -1118,7 +1118,11 @@ int gsel_tss, off, x; struct region_descriptor r_gdt, r_idt; struct pcpu *pc; + u_int64_t msr; + /* Turn on PTE NX (no execute) bit */ + msr = rdmsr(MSR_EFER) | EFER_NXE; + wrmsr(MSR_EFER, msr); create_pagetables(); /* XXX do %cr0 as well */ @@ -1242,6 +1246,14 @@ gsel_tss = GSEL(GPROC0_SEL, SEL_KPL); ltr(gsel_tss); + /* Set up the fast syscall stuff */ + msr = rdmsr(MSR_EFER) | EFER_SCE; + wrmsr(MSR_EFER, msr); + wrmsr(MSR_LSTAR, (uint64_t)IDTVEC(fast_syscall)); + msr = ((u_int64_t)GSEL(GCODE_SEL, SEL_KPL) << 32) | + ((u_int64_t)GSEL(GUCODE_SEL, SEL_UPL) << 48); + wrmsr(MSR_STAR, msr); + getmemsize(kmdp, physfree); init_param2(physmem); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 15:02:49 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C2F337B404; Fri, 25 Apr 2003 15:02:49 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F2F0137B401 for ; Fri, 25 Apr 2003 15:02:48 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9A22743FA3 for ; Fri, 25 Apr 2003 15:02:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PM2m0U065891 for ; Fri, 25 Apr 2003 15:02:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PM2lD2065881 for perforce@freebsd.org; Fri, 25 Apr 2003 15:02:47 -0700 (PDT) Date: Fri, 25 Apr 2003 15:02:47 -0700 (PDT) Message-Id: <200304252202.h3PM2lD2065881@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 Subject: PERFORCE change 29740 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 22:02:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=29740 Change 29740 by marcel@marcel_nfs on 2003/04/25 15:01:57 Remove emulating the MBR::type attribute. There never really was a need for it and it currently causes breakages because we don't emulate the recently (for some definition of recently) added MBR::offset. Affected files ... .. //depot/projects/ia64/sys/geom/geom_gpt.c#18 edit Differences ... ==== //depot/projects/ia64/sys/geom/geom_gpt.c#18 (text+ko) ==== @@ -79,28 +79,8 @@ static int g_gpt_start(struct bio *bp) { - struct uuid freebsd = GPT_ENT_TYPE_FREEBSD; - struct g_provider *pp = bp->bio_to; - struct g_geom *gp = pp->geom; - struct g_slicer *gsp = gp->softc; - struct g_gpt_softc *gs = gsp->softc; - u_int type; - if (bp->bio_cmd != BIO_GETATTR) - return (0); - - /* - * XXX: this is bogus. The BSD class has a strong dependency on - * the MBR/MBREXT class, because it asks for an attribute that's - * specific to the MBR/MBREXT class and the value of the attribute - * is just as specific to the MBR class. In an extensible scheme - * a geom would ask another geom if it could possible accomodate a - * class and the answer should be yes or no. Now we're forced to - * emulate a MBR class :-/ - */ - type = (memcmp(&gs->part[pp->index]->ent_type, &freebsd, - sizeof(freebsd))) ? 0 : 165; - return ((g_handleattr_int(bp, "MBR::type", type)) ? 1 : 0); + return (0); } static void From owner-p4-projects@FreeBSD.ORG Fri Apr 25 15:03:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 45EF237B407; Fri, 25 Apr 2003 15:03:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D6CCE37B401 for ; Fri, 25 Apr 2003 15:03:50 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7DB4543F75 for ; Fri, 25 Apr 2003 15:03:50 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PM3o0U067795 for ; Fri, 25 Apr 2003 15:03:50 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PM3org067788 for perforce@freebsd.org; Fri, 25 Apr 2003 15:03:50 -0700 (PDT) Date: Fri, 25 Apr 2003 15:03:50 -0700 (PDT) Message-Id: <200304252203.h3PM3org067788@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 Subject: PERFORCE change 29741 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 22:03:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=29741 Change 29741 by marcel@marcel_pluto1 on 2003/04/25 15:03:18 IFia64 Affected files ... .. //depot/projects/ia64_epc/sys/geom/geom_gpt.c#5 integrate Differences ... ==== //depot/projects/ia64_epc/sys/geom/geom_gpt.c#5 (text+ko) ==== @@ -79,28 +79,8 @@ static int g_gpt_start(struct bio *bp) { - struct uuid freebsd = GPT_ENT_TYPE_FREEBSD; - struct g_provider *pp = bp->bio_to; - struct g_geom *gp = pp->geom; - struct g_slicer *gsp = gp->softc; - struct g_gpt_softc *gs = gsp->softc; - u_int type; - if (bp->bio_cmd != BIO_GETATTR) - return (0); - - /* - * XXX: this is bogus. The BSD class has a strong dependency on - * the MBR/MBREXT class, because it asks for an attribute that's - * specific to the MBR/MBREXT class and the value of the attribute - * is just as specific to the MBR class. In an extensible scheme - * a geom would ask another geom if it could possible accomodate a - * class and the answer should be yes or no. Now we're forced to - * emulate a MBR class :-/ - */ - type = (memcmp(&gs->part[pp->index]->ent_type, &freebsd, - sizeof(freebsd))) ? 0 : 165; - return ((g_handleattr_int(bp, "MBR::type", type)) ? 1 : 0); + return (0); } static void From owner-p4-projects@FreeBSD.ORG Fri Apr 25 15:12:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2245C37B404; Fri, 25 Apr 2003 15:12:02 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C56E737B401 for ; Fri, 25 Apr 2003 15:12:01 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7133D43FDD for ; Fri, 25 Apr 2003 15:12:01 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PMC10U073340 for ; Fri, 25 Apr 2003 15:12:01 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PMC0fY073327 for perforce@freebsd.org; Fri, 25 Apr 2003 15:12:00 -0700 (PDT) Date: Fri, 25 Apr 2003 15:12:00 -0700 (PDT) Message-Id: <200304252212.h3PMC0fY073327@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29742 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 22:12:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=29742 Change 29742 by peter@peter_daintree on 2003/04/25 15:11:48 fix a couple of silly errors. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#26 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#26 (text+ko) ==== @@ -247,9 +247,10 @@ movq TF_R13(%rsp),%r13 /* C preserved */ movq TF_R14(%rsp),%r14 /* C preserved */ movq TF_R15(%rsp),%r15 /* C preserved */ - movq TF_R11(%rsp),%r11 /* original %rflags */ + movq TF_RFLAGS(%rsp),%r11 /* original %rflags */ movq TF_RIP(%rsp),%rcx /* original %rip */ sti + movq %rdi,%rsp /* original %rsp */ #swapgs sysretq From owner-p4-projects@FreeBSD.ORG Fri Apr 25 15:34:30 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E599837B404; Fri, 25 Apr 2003 15:34:29 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9BC6137B401 for ; Fri, 25 Apr 2003 15:34:29 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3293E43FD7 for ; Fri, 25 Apr 2003 15:34:29 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PMYT0U089639 for ; Fri, 25 Apr 2003 15:34:29 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PMYSOf089634 for perforce@freebsd.org; Fri, 25 Apr 2003 15:34:28 -0700 (PDT) Date: Fri, 25 Apr 2003 15:34:28 -0700 (PDT) Message-Id: <200304252234.h3PMYSOf089634@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29743 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 22:34:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=29743 Change 29743 by peter@peter_daintree on 2003/04/25 15:33:37 oops, disable interrupts before stack switch, not enable.. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#27 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#27 (text+ko) ==== @@ -249,7 +249,7 @@ movq TF_R15(%rsp),%r15 /* C preserved */ movq TF_RFLAGS(%rsp),%r11 /* original %rflags */ movq TF_RIP(%rsp),%rcx /* original %rip */ - sti + cli movq %rdi,%rsp /* original %rsp */ #swapgs sysretq From owner-p4-projects@FreeBSD.ORG Fri Apr 25 16:02:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 57AA837B404; Fri, 25 Apr 2003 16:02:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0AC2837B401 for ; Fri, 25 Apr 2003 16:02:04 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8A8543FA3 for ; Fri, 25 Apr 2003 16:02:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PN230U008779 for ; Fri, 25 Apr 2003 16:02:03 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PN23r2008772 for perforce@freebsd.org; Fri, 25 Apr 2003 16:02:03 -0700 (PDT) Date: Fri, 25 Apr 2003 16:02:03 -0700 (PDT) Message-Id: <200304252302.h3PN23r2008772@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29745 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 23:02:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29745 Change 29745 by peter@peter_daintree on 2003/04/25 16:01:39 Add a pcb flag to indicate that a full trapframe restore is required, even from syscall.. eg: a sigreturn(2). I'm not sure if this is the right place for it. mdthread perhaps? Anyway, it'll do for now. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/pcb.h#13 edit .. //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#24 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/pcb.h#13 (text+ko) ==== @@ -60,8 +60,9 @@ struct savefpu pcb_save; u_long pcb_flags; -#define PCB_NPXTRAP 0x04 /* npx trap pending */ -#define PCB_NPXINITDONE 0x08 /* fpu state is initialized */ +#define PCB_NPXTRAP 0x01 /* npx trap pending */ +#define PCB_NPXINITDONE 0x02 /* fpu state is initialized */ +#define PCB_FULLCTX 0x04 /* full context restore on sysret */ caddr_t pcb_onfault; /* copyin/out fault recovery */ }; ==== //depot/projects/hammer/sys/x86_64/x86_64/genassym.c#24 (text+ko) ==== @@ -122,6 +122,7 @@ ASSYM(PCB_RFLAGS, offsetof(struct pcb, pcb_rflags)); ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags)); +ASSYM(PCB_FULLCTX, PCB_FULLCTX); ASSYM(PCB_SAVEFPU, offsetof(struct pcb, pcb_save)); ASSYM(PCB_SAVEFPU_SIZE, sizeof(struct savefpu)); ASSYM(PCB_ONFAULT, offsetof(struct pcb, pcb_onfault)); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 16:04:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7D2D037B404; Fri, 25 Apr 2003 16:04:07 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2DAF137B401 for ; Fri, 25 Apr 2003 16:04:07 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CCAD443F75 for ; Fri, 25 Apr 2003 16:04:06 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PN460U011551 for ; Fri, 25 Apr 2003 16:04:06 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PN4658011543 for perforce@freebsd.org; Fri, 25 Apr 2003 16:04:06 -0700 (PDT) Date: Fri, 25 Apr 2003 16:04:06 -0700 (PDT) Message-Id: <200304252304.h3PN4658011543@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29746 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 23:04:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=29746 Change 29746 by peter@peter_daintree on 2003/04/25 16:03:09 use PCB_FULLCTX to cause fast_syscall to restore a full frame via doreti. eg: in response to *context or sigreturn(2). Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#28 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#84 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#28 (text+ko) ==== @@ -227,6 +227,9 @@ movq PCPU(SCRATCH_RSP),%r12 /* %r12 already saved */ movq %r12,TF_RSP(%rsp) /* user stack pointer */ call syscall + movq PCPU(CURPCB),%rax + testq $PCB_FULLCTX,PCB_FLAGS(%rax) + jnz doreti_ast /* simplified from doreti */ 1: /* Check for and handle AST's on return to userland */ cli ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#84 (text+ko) ==== @@ -384,6 +384,7 @@ SIG_CANTMASK(td->td_sigmask); signotify(td); PROC_UNLOCK(p); + td->td_pcb->pcb_flags |= PCB_FULLCTX; return (EJUSTRETURN); } From owner-p4-projects@FreeBSD.ORG Fri Apr 25 16:07:12 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 061BB37B404; Fri, 25 Apr 2003 16:07:12 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ADC7D37B401 for ; Fri, 25 Apr 2003 16:07:11 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 39A7D43FBF for ; Fri, 25 Apr 2003 16:07:11 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3PN7B0U014077 for ; Fri, 25 Apr 2003 16:07:11 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3PN7Af8014071 for perforce@freebsd.org; Fri, 25 Apr 2003 16:07:10 -0700 (PDT) Date: Fri, 25 Apr 2003 16:07:10 -0700 (PDT) Message-Id: <200304252307.h3PN7Af8014071@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29747 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Apr 2003 23:07:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=29747 Change 29747 by peter@peter_daintree on 2003/04/25 16:06:14 acid test, use syscall in sigcode.. It seems to work... Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/sigtramp.s#4 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/sigtramp.s#4 (text+ko) ==== @@ -60,7 +60,7 @@ lea SIGF_UC(%rsp),%rdi /* get ucontext_t */ pushq $0 /* junk to fake return addr. */ movq $SYS_sigreturn,%rax - int $0x80 /* enter kernel with args */ + syscall /* enter kernel with args */ 0: hlt /* trap priviliged instruction */ jmp 0b From owner-p4-projects@FreeBSD.ORG Fri Apr 25 17:21:45 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1FCD537B404; Fri, 25 Apr 2003 17:21:45 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BBC2237B401 for ; Fri, 25 Apr 2003 17:21:44 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9031E43F93 for ; Fri, 25 Apr 2003 17:21:43 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q0Lh0U071274 for ; Fri, 25 Apr 2003 17:21:43 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q0LeDB071207 for perforce@freebsd.org; Fri, 25 Apr 2003 17:21:40 -0700 (PDT) Date: Fri, 25 Apr 2003 17:21:40 -0700 (PDT) Message-Id: <200304260021.h3Q0LeDB071207@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 Subject: PERFORCE change 29748 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 00:21:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=29748 Change 29748 by marcel@marcel_pluto1 on 2003/04/25 17:21:20 IFC @29744 Affected files ... .. //depot/projects/ia64/UPDATING#37 integrate .. //depot/projects/ia64/etc/pam.d/passwd#3 integrate .. //depot/projects/ia64/etc/rc.d/Makefile#12 integrate .. //depot/projects/ia64/etc/rc.d/early.sh#1 branch .. //depot/projects/ia64/etc/rc.d/hostname#2 integrate .. //depot/projects/ia64/etc/rc.d/ipfilter#8 integrate .. //depot/projects/ia64/etc/rc.d/ipfs#2 integrate .. //depot/projects/ia64/etc/rc.d/ipmon#5 integrate .. //depot/projects/ia64/etc/rc.d/ipnat#6 integrate .. //depot/projects/ia64/etc/rc.d/securelevel#5 integrate .. //depot/projects/ia64/etc/rc.d/sysctl#7 integrate .. //depot/projects/ia64/gnu/lib/libstdc++/c++config.h#4 integrate .. //depot/projects/ia64/gnu/lib/libstdc++/config.h#4 integrate .. //depot/projects/ia64/lib/Makefile#21 integrate .. //depot/projects/ia64/lib/libc/gen/getgrent.c#8 integrate .. //depot/projects/ia64/lib/libc/gen/getpwent.c#10 integrate .. //depot/projects/ia64/lib/libc/gen/getusershell.c#4 integrate .. //depot/projects/ia64/lib/libc/net/getaddrinfo.c#10 integrate .. //depot/projects/ia64/lib/libc/net/gethostnamadr.c#3 integrate .. //depot/projects/ia64/lib/libc/net/getnetnamadr.c#3 integrate .. //depot/projects/ia64/lib/libc/net/name6.c#8 integrate .. //depot/projects/ia64/lib/libc/net/nsdispatch.c#7 integrate .. //depot/projects/ia64/lib/libpam/modules/pam_unix/pam_unix.c#13 integrate .. //depot/projects/ia64/lib/libpthread/Makefile#6 integrate .. //depot/projects/ia64/lib/libpthread/arch/i386/include/ksd.h#2 integrate .. //depot/projects/ia64/lib/libpthread/sys/thr_error.c#4 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#11 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_private.h#8 integrate .. //depot/projects/ia64/lib/libstand/bzlib_private.h.diff#2 integrate .. //depot/projects/ia64/release/Makefile#47 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/i386/proc-i386.sgml#6 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#82 integrate .. //depot/projects/ia64/sbin/devd/devd.cc#6 integrate .. //depot/projects/ia64/sbin/fsck/fsck.c#9 integrate .. //depot/projects/ia64/share/man/man4/acpi.4#5 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/pae.4#2 integrate .. //depot/projects/ia64/share/man/man4/syscons.4#5 integrate .. //depot/projects/ia64/sys/alpha/alpha/machdep.c#27 integrate .. //depot/projects/ia64/sys/alpha/alpha/sys_machdep.c#8 integrate .. //depot/projects/ia64/sys/alpha/include/_limits.h#2 integrate .. //depot/projects/ia64/sys/alpha/osf1/osf1_misc.c#15 integrate .. //depot/projects/ia64/sys/alpha/osf1/osf1_signal.c#13 integrate .. //depot/projects/ia64/sys/arm/include/_limits.h#2 integrate .. //depot/projects/ia64/sys/compat/linux/linux_ioctl.c#24 integrate .. //depot/projects/ia64/sys/compat/linux/linux_ioctl.h#7 integrate .. //depot/projects/ia64/sys/compat/linux/linux_signal.c#10 integrate .. //depot/projects/ia64/sys/conf/options#51 integrate .. //depot/projects/ia64/sys/dev/drm/drmP.h#3 integrate .. //depot/projects/ia64/sys/dev/drm/drm_bufs.h#3 integrate .. //depot/projects/ia64/sys/dev/drm/drm_context.h#3 integrate .. //depot/projects/ia64/sys/dev/drm/drm_dma.h#4 integrate .. //depot/projects/ia64/sys/dev/drm/drm_drv.h#10 integrate .. //depot/projects/ia64/sys/dev/drm/drm_fops.h#5 integrate .. //depot/projects/ia64/sys/dev/drm/drm_init.h#3 delete .. //depot/projects/ia64/sys/dev/drm/drm_ioctl.h#3 integrate .. //depot/projects/ia64/sys/dev/drm/drm_lists.h#3 delete .. //depot/projects/ia64/sys/dev/drm/drm_lock.h#3 integrate .. //depot/projects/ia64/sys/dev/drm/drm_memory.h#7 integrate .. //depot/projects/ia64/sys/dev/drm/drm_os_freebsd.h#7 integrate .. //depot/projects/ia64/sys/dev/drm/drm_sysctl.h#3 integrate .. //depot/projects/ia64/sys/dev/drm/drm_vm.h#5 integrate .. //depot/projects/ia64/sys/dev/drm/mga_dma.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/mga_drv.c#3 integrate .. //depot/projects/ia64/sys/dev/drm/mga_drv.h#4 integrate .. //depot/projects/ia64/sys/dev/drm/mga_state.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/r128_cce.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/r128_drv.c#3 integrate .. //depot/projects/ia64/sys/dev/drm/r128_drv.h#4 integrate .. //depot/projects/ia64/sys/dev/drm/r128_state.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/radeon.h#3 integrate .. //depot/projects/ia64/sys/dev/drm/radeon_cp.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/radeon_drm.h#3 integrate .. //depot/projects/ia64/sys/dev/drm/radeon_drv.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/radeon_drv.h#4 integrate .. //depot/projects/ia64/sys/dev/drm/radeon_irq.c#2 integrate .. //depot/projects/ia64/sys/dev/drm/radeon_mem.c#2 integrate .. //depot/projects/ia64/sys/dev/drm/radeon_state.c#4 integrate .. //depot/projects/ia64/sys/dev/drm/tdfx_drv.c#3 integrate .. //depot/projects/ia64/sys/dev/en/midway.c#11 integrate .. //depot/projects/ia64/sys/dev/en/midwayreg.h#2 integrate .. //depot/projects/ia64/sys/dev/en/midwayvar.h#4 integrate .. //depot/projects/ia64/sys/dev/firewire/firewire.c#24 integrate .. //depot/projects/ia64/sys/dev/firewire/fwohci.c#22 integrate .. //depot/projects/ia64/sys/dev/firewire/fwohci_pci.c#15 integrate .. //depot/projects/ia64/sys/dev/firewire/fwohcireg.h#8 integrate .. //depot/projects/ia64/sys/dev/firewire/sbp.c#25 integrate .. //depot/projects/ia64/sys/dev/fxp/if_fxp.c#28 integrate .. //depot/projects/ia64/sys/dev/fxp/if_fxpvar.h#7 integrate .. //depot/projects/ia64/sys/dev/iir/iir.c#6 integrate .. //depot/projects/ia64/sys/dev/iir/iir.h#3 integrate .. //depot/projects/ia64/sys/dev/iir/iir_ctrl.c#8 integrate .. //depot/projects/ia64/sys/dev/iir/iir_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/pccard/pccardvar.h#10 integrate .. //depot/projects/ia64/sys/fs/msdosfs/msdosfs_vfsops.c#16 integrate .. //depot/projects/ia64/sys/geom/bde/g_bde_work.c#7 integrate .. //depot/projects/ia64/sys/geom/geom.h#27 integrate .. //depot/projects/ia64/sys/geom/geom_disk.c#30 integrate .. //depot/projects/ia64/sys/geom/geom_dump.c#19 integrate .. //depot/projects/ia64/sys/geom/geom_event.c#18 integrate .. //depot/projects/ia64/sys/geom/geom_kern.c#18 integrate .. //depot/projects/ia64/sys/geom/geom_sunlabel.c#20 integrate .. //depot/projects/ia64/sys/i386/conf/NOTES#38 integrate .. //depot/projects/ia64/sys/i386/conf/PAE#3 integrate .. //depot/projects/ia64/sys/i386/i386/machdep.c#38 integrate .. //depot/projects/ia64/sys/i386/i386/pmap.c#40 integrate .. //depot/projects/ia64/sys/i386/i386/sys_machdep.c#14 integrate .. //depot/projects/ia64/sys/i386/i386/trap.c#29 integrate .. //depot/projects/ia64/sys/i386/include/_limits.h#2 integrate .. //depot/projects/ia64/sys/ia64/ia32/ia32_proto.h#9 integrate .. //depot/projects/ia64/sys/ia64/ia32/ia32_syscall.h#10 integrate .. //depot/projects/ia64/sys/ia64/ia32/ia32_sysent.c#11 integrate .. //depot/projects/ia64/sys/ia64/ia32/syscalls.master#16 integrate .. //depot/projects/ia64/sys/ia64/ia64/machdep.c#64 integrate .. //depot/projects/ia64/sys/ia64/ia64/sys_machdep.c#3 integrate .. //depot/projects/ia64/sys/ia64/include/_limits.h#2 integrate .. //depot/projects/ia64/sys/kern/kern_context.c#4 integrate .. //depot/projects/ia64/sys/kern/kern_ktrace.c#18 integrate .. //depot/projects/ia64/sys/kern/kern_mac.c#24 integrate .. //depot/projects/ia64/sys/kern/kern_malloc.c#20 integrate .. //depot/projects/ia64/sys/kern/kern_proc.c#37 integrate .. //depot/projects/ia64/sys/kern/kern_prot.c#23 integrate .. //depot/projects/ia64/sys/kern/kern_sig.c#46 integrate .. //depot/projects/ia64/sys/kern/kern_thread.c#41 integrate .. //depot/projects/ia64/sys/kern/sys_process.c#20 integrate .. //depot/projects/ia64/sys/kern/vfs_mount.c#16 integrate .. //depot/projects/ia64/sys/kern/vfs_subr.c#41 integrate .. //depot/projects/ia64/sys/kern/vfs_syscalls.c#40 integrate .. //depot/projects/ia64/sys/modules/Makefile#46 integrate .. //depot/projects/ia64/sys/modules/en/Makefile#1 branch .. //depot/projects/ia64/sys/net/if_ethersubr.c#28 integrate .. //depot/projects/ia64/sys/nfsclient/nfs_vfsops.c#18 integrate .. //depot/projects/ia64/sys/nfsclient/nfs_vnops.c#20 integrate .. //depot/projects/ia64/sys/nfsserver/nfs_serv.c#20 integrate .. //depot/projects/ia64/sys/pc98/conf/NOTES#4 integrate .. //depot/projects/ia64/sys/pc98/i386/machdep.c#35 integrate .. //depot/projects/ia64/sys/pccard/cardinfo.h#5 integrate .. //depot/projects/ia64/sys/pccard/pccard.c#17 integrate .. //depot/projects/ia64/sys/pccard/pccard_nbk.c#6 integrate .. //depot/projects/ia64/sys/pccard/slot.h#6 integrate .. //depot/projects/ia64/sys/pci/if_en_pci.c#4 integrate .. //depot/projects/ia64/sys/powerpc/include/_limits.h#2 integrate .. //depot/projects/ia64/sys/powerpc/powerpc/machdep.c#24 integrate .. //depot/projects/ia64/sys/powerpc/powerpc/sys_machdep.c#3 integrate .. //depot/projects/ia64/sys/sparc64/include/_limits.h#2 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/machdep.c#36 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/sys_machdep.c#6 integrate .. //depot/projects/ia64/sys/sys/limits.h#1 branch .. //depot/projects/ia64/sys/sys/proc.h#60 integrate .. //depot/projects/ia64/sys/sys/ucontext.h#7 integrate .. //depot/projects/ia64/sys/vm/swap_pager.h#9 integrate .. //depot/projects/ia64/sys/vm/vm_contig.c#12 integrate .. //depot/projects/ia64/sys/vm/vm_glue.c#24 integrate .. //depot/projects/ia64/sys/vm/vm_map.c#51 integrate .. //depot/projects/ia64/sys/vm/vm_object.c#46 integrate .. //depot/projects/ia64/sys/vm/vm_page.c#44 integrate .. //depot/projects/ia64/sys/vm/vm_pageout.c#35 integrate .. //depot/projects/ia64/sys/vm/vm_pageout.h#7 integrate .. //depot/projects/ia64/sys/x86_64/include/_limits.h#2 integrate .. //depot/projects/ia64/tools/regression/fsx/fsx.c#2 integrate .. //depot/projects/ia64/usr.bin/calendar/calendars/calendar.birthday#8 integrate .. //depot/projects/ia64/usr.bin/login/login.c#17 integrate .. //depot/projects/ia64/usr.sbin/apm/apm.c#5 integrate .. //depot/projects/ia64/usr.sbin/chown/Makefile#3 integrate .. //depot/projects/ia64/usr.sbin/chown/chgrp.1#2 integrate .. //depot/projects/ia64/usr.sbin/chown/chown.8#6 integrate .. //depot/projects/ia64/usr.sbin/chown/chown.c#8 integrate .. //depot/projects/ia64/usr.sbin/config/mkmakefile.c#6 integrate .. //depot/projects/ia64/usr.sbin/moused/moused.8#4 integrate .. //depot/projects/ia64/usr.sbin/newsyslog/newsyslog.8#8 integrate .. //depot/projects/ia64/usr.sbin/pccard/pccardd/cardd.c#7 integrate .. //depot/projects/ia64/usr.sbin/pccard/pccardd/cardd.h#4 integrate .. //depot/projects/ia64/usr.sbin/quot/quot.c#7 integrate .. //depot/projects/ia64/usr.sbin/rpc.lockd/lockd.c#7 integrate Differences ... ==== //depot/projects/ia64/UPDATING#37 (text+ko) ==== @@ -17,6 +17,31 @@ developers choose to disable these features on build machines to maximize performance. +20030423: + A bug has been fixed in /dev/devctl which would cause devd + to hang on boot, were it not for a workaround in devd. The + work around in devd will be removed around 20030507. You + have until then to upgrade your kernel before updating + userland. In general, you should have a userland and + kernel that's in sync with each other. However, given the + effects of this bug (hang on boot when starting devd), some + allowances are made. + +20030329: + Alphas with libc from between 20030312 and 20030329 exhibit + floating point exceptions (FPEs), most notably in awk(1) + while upgrading the system through a buildworld. + + So, to successfully upgrade your Alpha, you must either + downgrade your libc.so to a pre-20030312 version, or update + /usr/share/mk/bsd.cpu.mk to revision 1.26 which adds -mieee + to CFLAGS, then forcibly rebuild and install libc: + + cd /usr/src/lib/libc && \ + make cleandir && make obj && \ + make -DNOMAN -DNOPROFILE all && \ + make -DNOMAN -DNOPROFILE install + 20030208: sendmail 8.12.7 has been imported. It has one important change for IPv6 users. The default submit.mc now uses @@ -1234,4 +1259,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.245 2003/04/23 14:28:13 schweikh Exp $ +$FreeBSD: src/UPDATING,v 1.247 2003/04/25 20:11:17 ru Exp $ ==== //depot/projects/ia64/etc/pam.d/passwd#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/etc/pam.d/passwd,v 1.2 2003/02/10 00:50:03 des Exp $ +# $FreeBSD: src/etc/pam.d/passwd,v 1.3 2003/04/24 12:22:42 des Exp $ # # PAM configuration for the "passwd" service # @@ -8,4 +8,4 @@ # password #password requisite pam_passwdqc.so enforce=users -password required pam_unix.so no_warn try_first_pass +password required pam_unix.so no_warn try_first_pass nullok ==== //depot/projects/ia64/etc/rc.d/Makefile#12 (text+ko) ==== @@ -1,14 +1,14 @@ # $NetBSD: Makefile,v 1.16 2001/01/14 15:37:22 minoura Exp $ -# $FreeBSD: src/etc/rc.d/Makefile,v 1.14 2003/04/19 01:56:44 mtm Exp $ +# $FreeBSD: src/etc/rc.d/Makefile,v 1.15 2003/04/24 08:20:47 mtm Exp $ .include FILES= DAEMON LOGIN NETWORKING SERVERS abi accounting addswap adjkerntz amd \ apm apmd atm1 atm2.sh atm3.sh archdep bgfsck bootparams ccd cleanvar \ cleartmp cron devd devdb devfs dhclient diskless dmesg dumpon fsck \ - hostname inetd initdiskless initrandom ip6fw ipfilter ipfw ipmon ipnat \ - ipsec ipxrouted isdnd jail kadmind kerberos keyserv kldxref ldconfig \ - local localdaemons lomac lpd motd mountcritlocal mountcritremote \ + hostname inetd initdiskless initrandom ip6fw ipfilter ipfs ipfw ipmon \ + ipnat ipsec ipxrouted isdnd jail kadmind kerberos keyserv kldxref \ + ldconfig local localdaemons lomac lpd motd mountcritlocal mountcritremote \ mountd moused mroute6d mrouted msgs named netif network1 network2 network3 \ network_ipv6 nfsclient nfsd nfslocking nfsserver nisdomain ntpd \ ntpdate othermta pccard pcvt ppp-user pppoed pwcheck quota random \ ==== //depot/projects/ia64/etc/rc.d/hostname#2 (text+ko) ==== @@ -23,11 +23,11 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/rc.d/hostname,v 1.1 2003/04/18 17:51:53 mtm Exp $ +# $FreeBSD: src/etc/rc.d/hostname,v 1.2 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: hostname -# REQUIRE: mountcritlocal sysctl tty +# REQUIRE: mountcritlocal tty # BEFORE: netif # KEYWORD: FreeBSD ==== //depot/projects/ia64/etc/rc.d/ipfilter#8 (text+ko) ==== @@ -1,11 +1,12 @@ #!/bin/sh # # $NetBSD: ipfilter,v 1.10 2001/02/28 17:03:50 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipfilter,v 1.7 2003/03/22 14:53:23 ume Exp $ +# $FreeBSD: src/etc/rc.d/ipfilter,v 1.8 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipfilter -# REQUIRE: root beforenetlkm mountcritlocal tty +# REQUIRE: root beforenetlkm mountcritlocal tty ipmon +# BEFORE: netif # KEYWORD: FreeBSD NetBSD . /etc/rc.subr @@ -43,8 +44,7 @@ if kldload ipl; then echo 'IP-filter module loaded.' else - warn 'IP-filter module failed to load.' - return 1 + err 1 'IP-filter module failed to load.' fi fi ==== //depot/projects/ia64/etc/rc.d/ipfs#2 (text+ko) ==== @@ -1,23 +1,47 @@ #!/bin/sh # # $NetBSD: ipfs,v 1.3 2002/02/11 13:55:42 lukem Exp $ +# $FreeBSD: src/etc/rc.d/ipfs,v 1.2 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipfs -# REQUIRE: ipnat mountcritremote -# KEYWORD: shutdown +# REQUIRE: ipnat +# BEFORE: netif +# KEYWORD: FreeBSD NetBSD shutdown . /etc/rc.subr name="ipfs" -rcvar=$name +rcvar=`set_rcvar` start_cmd="ipfs_start" stop_cmd="ipfs_stop" +case ${OSTYPE} in +FreeBSD) + start_precmd="ipfs_prestart" + ;; +NetBSD) + ipfs_program="/usr/sbin/ipfs" + ;; +esac + +ipfs_prestart() +{ + # Do not continue if either ipnat or ipfilter is not enabled or + # if the ipfilter module is not loaded. + # + if ! checkyesno ipfilter_enable -o ! checkyesno ipnat_enable ; then + err 1 "${name} requires either ipfilter or ipnat enabled" + fi + if ! sysctl net.inet.ipf.fr_pass >/dev/null 2>&1; then + err 1 "ipfilter module is not loaded" + fi + return 0 +} ipfs_start() { if [ -r /var/db/ipf/ipstate.ipf -a -r /var/db/ipf/ipnat.ipf ]; then - /usr/sbin/ipfs -R ${rc_flags} + ${ipfs_program} -R ${rc_flags} rm -f /var/db/ipf/ipstate.ipf /var/db/ipf/ipnat.ipf fi } @@ -29,7 +53,7 @@ chmod 700 /var/db/ipf chown root:wheel /var/db/ipf fi - /usr/sbin/ipfs -W ${rc_flags} + ${ipfs_program} -W ${rc_flags} } load_rc_config $name ==== //depot/projects/ia64/etc/rc.d/ipmon#5 (text+ko) ==== @@ -1,11 +1,11 @@ #!/bin/sh # # $NetBSD: ipmon,v 2002/04/18 05:02:01 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipmon,v 1.4 2002/10/12 10:31:31 schweikh Exp $ +# $FreeBSD: src/etc/rc.d/ipmon,v 1.5 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipmon -# REQUIRE: syslogd +# REQUIRE: mountcritlocal hostname sysctl # BEFORE: SERVERS # KEYWORD: FreeBSD NetBSD @@ -26,9 +26,14 @@ ipmon_precmd() { - # Make sure ipfilter is loaded before continuing + # Continue only if ipfilter or ipnat is enabled and the + # ipfilter module is loaded. + # + if ! checkyesno ipfilter_enable -o ! checkyesno ipnat_enable ; then + err 1 "${name} requires either ipfilter or ipnat enabled" + fi if ! sysctl net.inet.ipf.fr_pass >/dev/null 2>&1; then - return 1 + err 1 "ipfilter module is not loaded" fi return 0 } ==== //depot/projects/ia64/etc/rc.d/ipnat#6 (text+ko) ==== @@ -1,84 +1,65 @@ #!/bin/sh # # $NetBSD: ipnat,v 1.6 2000/09/19 13:04:38 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipnat,v 1.5 2002/10/26 00:18:06 fenner Exp $ +# $FreeBSD: src/etc/rc.d/ipnat,v 1.7 2003/04/24 18:14:52 mtm Exp $ # # PROVIDE: ipnat -# REQUIRE: ipfilter mountcritremote -# BEFORE: DAEMON +# REQUIRE: ipfilter +# BEFORE: DAEMON netif # KEYWORD: FreeBSD NetBSD . /etc/rc.subr name="ipnat" rcvar=`set_rcvar` +load_rc_config $name case ${OSTYPE} in -FreeBSD) - IPNATDIR="/sbin" - start_precmd="ipnat_precmd" - reload_cmd="ipnat_start" - ;; NetBSD) - IPNATDIR="/usr/sbin" - config="/etc/ipnat.conf" - reload_cmd="/usr/sbin/ipnat -F -C -f ${config}" - start_precmd= + ipnat_flags= + ipnat_rules="/etc/ipnat.conf" + ipnat_program="/usr/sbin/ipnat" ;; esac +start_precmd="ipnat_precmd" start_cmd="ipnat_start" -stop_cmd="${ipnat_program:-${IPNATDIR}/${name}} -F -C" +stop_cmd="${ipnat_program} -F -C" +reload_cmd="${ipnat_program} -F -C -f ${ipnat_rules}" extra_commands="reload" ipnat_precmd() { + case ${OSTYPE} in + NetBSD) + if ! checkyesno ipfilter || [ ! -f /etc/ipf.conf ]; then + echo "Enabling ipfilter for NAT." + /sbin/ipf -E -Fa + fi + return 0 + ;; + esac + # Make sure ipfilter is loaded before continuing if ! ${SYSCTL} net.inet.ipf.fr_pass >/dev/null 2>&1; then - err 1 'ipnat requires ipfilter be loaded' + if kldload ipl; then + echo 'IP-filter module loaded.' + else + err 1 'IP-filter module failed to load.' + fi fi return 0 } ipnat_start() { - case ${OSTYPE} in - FreeBSD) - echo -n 'Installing NAT rules ... ' - if [ -r "${ipnat_rules}" ]; then - ${ipnat_program:-/sbin/ipnat} -CF -f \ - "${ipnat_rules}" ${ipnat_flags} - else - echo -n ' NO IPNAT RULES' - fi - echo '.' - - # restore filter/NAT state tables after loading the rules - if checkyesno ipfs_enable; then - if [ -r "/var/db/ipf/ipstate.ipf" ]; then - echo -n ' ipfs' - ${ipfs_program:-/sbin/ipfs} -R ${ipfs_flags} - # remove files to avoid reloading old state - # after an ungraceful shutdown - rm -f /var/db/ipf/ipstate.ipf - rm -f /var/db/ipf/ipnat.ipf - fi - fi - ;; - NetBSD) - if [ ! -f ${config} ]; then - return 0 - fi - if ! checkyesno ipfilter || [ ! -f /etc/ipf.conf ]; then - echo "Enabling ipfilter for NAT." - /sbin/ipf -E -Fa - fi - echo -n "Installing NAT rules ... " - /usr/sbin/ipnat -F -f ${config} - ;; - esac + if [ ! -f ${ipnat_rules} ]; then + echo -n ' NO IPNAT RULES' + return 0 + fi + echo -n "Installing NAT rules ... " + ${ipnat_program} -CF -f ${ipnat_rules} ${ipnat_flags} } -load_rc_config $name run_rc_command "$1" ==== //depot/projects/ia64/etc/rc.d/securelevel#5 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: securelevel,v 1.4 2002/03/22 04:34:00 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/securelevel,v 1.4 2002/09/06 16:18:05 gordon Exp $ +# $FreeBSD: src/etc/rc.d/securelevel,v 1.5 2003/04/24 08:27:29 mtm Exp $ # # PROVIDE: securelevel @@ -17,6 +17,10 @@ securelevel_start() { + # Last chance to set sysctl variables that failed the first time. + # + /etc/rc.d/sysctl lastload + case ${OSTYPE} in FreeBSD) case ${kern_securelevel_enable} in ==== //depot/projects/ia64/etc/rc.d/sysctl#7 (text+ko) ==== @@ -1,11 +1,11 @@ #!/bin/sh # # $NetBSD: sysctl,v 1.12 2002/04/29 12:10:23 lukem Exp $ -# $FreeBSD: src/etc/rc.d/sysctl,v 1.11 2002/10/25 23:02:54 fenner Exp $ +# $FreeBSD: src/etc/rc.d/sysctl,v 1.12 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: sysctl -# REQUIRE: root ipfilter ipsec +# REQUIRE: root # BEFORE: DAEMON # KEYWORD: FreeBSD NetBSD ==== //depot/projects/ia64/gnu/lib/libstdc++/c++config.h#4 (text+ko) ==== @@ -1,4 +1,4 @@ -// $FreeBSD: src/gnu/lib/libstdc++/c++config.h,v 1.3 2003/02/19 04:28:12 kan Exp $ +// $FreeBSD: src/gnu/lib/libstdc++/c++config.h,v 1.4 2003/04/25 21:17:31 obrien Exp $ // Predefined symbols and macros -*- C++ -*- @@ -101,7 +101,7 @@ #define _GLIBCPP_USE_LONG_LONG 1 // Define if C99 features such as lldiv_t, llabs, lldiv should be exposed. -/* #undef _GLIBCPP_USE_C99 */ +#define _GLIBCPP_USE_C99 1 // Define if code specialized for wchar_t should be used. /* #undef _GLIBCPP_USE_WCHAR_T */ @@ -649,10 +649,10 @@ /* #undef _GLIBCPP_HAVE_SQRTL */ /* Define if you have the strtof function. */ -/* #undef _GLIBCPP_HAVE_STRTOF */ +#define _GLIBCPP_HAVE_STRTOF 1 /* Define if you have the strtold function. */ -/* #undef _GLIBCPP_HAVE_STRTOLD */ +#define _GLIBCPP_HAVE_STRTOLD 1 /* Define if you have the swprintf function. */ #define _GLIBCPP_HAVE_SWPRINTF 1 @@ -748,7 +748,7 @@ #define _GLIBCPP_HAVE_WCSTOD 1 /* Define if you have the wcstof function. */ -/* #undef _GLIBCPP_HAVE_WCSTOF */ +#define _GLIBCPP_HAVE_WCSTOF 1 /* Define if you have the wcstok function. */ #define _GLIBCPP_HAVE_WCSTOK 1 @@ -832,7 +832,7 @@ #define _GLIBCPP_HAVE_SYS_RESOURCE_H 1 /* Define if you have the header file. */ -/* #undef _GLIBCPP_HAVE_SYS_STAT_H */ +#define _GLIBCPP_HAVE_SYS_STAT_H 1 /* Define if you have the header file. */ #define _GLIBCPP_HAVE_SYS_TYPES_H 1 ==== //depot/projects/ia64/gnu/lib/libstdc++/config.h#4 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/gnu/lib/libstdc++/config.h,v 1.4 2003/02/19 04:28:12 kan Exp $ */ +/* $FreeBSD: src/gnu/lib/libstdc++/config.h,v 1.5 2003/04/25 21:17:31 obrien Exp $ */ /* config.h. Generated automatically by configure. */ /* config.h.in. Generated automatically from configure.in by autoheader. */ @@ -13,7 +13,7 @@ #define _GLIBCPP_USE_LONG_LONG 1 // Define if C99 features such as lldiv_t, llabs, lldiv should be exposed. -/* #undef _GLIBCPP_USE_C99 */ +#define _GLIBCPP_USE_C99 1 // Define if code specialized for wchar_t should be used. /* #undef _GLIBCPP_USE_WCHAR_T */ @@ -561,10 +561,10 @@ /* #undef HAVE_SQRTL */ /* Define if you have the strtof function. */ -/* #undef HAVE_STRTOF */ +#define HAVE_STRTOF 1 /* Define if you have the strtold function. */ -/* #undef HAVE_STRTOLD */ +#define HAVE_STRTOLD 1 /* Define if you have the swprintf function. */ #define HAVE_SWPRINTF 1 @@ -660,7 +660,7 @@ #define HAVE_WCSTOD 1 /* Define if you have the wcstof function. */ -/* #undef HAVE_WCSTOF */ +#define HAVE_WCSTOF 1 /* Define if you have the wcstok function. */ #define HAVE_WCSTOK 1 ==== //depot/projects/ia64/lib/Makefile#21 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/Makefile,v 1.150 2003/03/08 11:01:31 markm Exp $ +# $FreeBSD: src/lib/Makefile,v 1.151 2003/04/25 01:34:43 deischen Exp $ # To satisfy shared library or ELF linkage when only the libraries being # built are visible: @@ -27,7 +27,7 @@ libcalendar libcam libcompat libdevinfo libdevstat ${_libdisk} \ libedit libexpat libfetch libform libftpio libgeom ${_libio} libipsec \ libipx libisc libmenu ${_libmilter} ${_libmp} ${_libncp} \ - libnetgraph libopie libpam libpanel libpcap \ + libnetgraph libopie libpam libpanel libpcap ${_libpthread} \ ${_libsm} ${_libsmb} ${_libsmdb} ${_libsmutil} \ libstand ${_libtelnet} libufs libugidfw libusbhid ${_libvgl} \ libwrap libxpg4 liby libz @@ -60,6 +60,9 @@ _libncp= libncp _libsmb= libsmb _libvgl= libvgl +.if !defined(NOLIBPTHREAD) +_libpthread= libpthread +.endif .endif .if ${MACHINE_ARCH} == "alpha" ==== //depot/projects/ia64/lib/libc/gen/getgrent.c#8 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.28 2003/04/22 22:19:05 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.29 2003/04/25 18:25:19 nectar Exp $"); #include "namespace.h" #include @@ -819,9 +819,31 @@ static int compat_setgrent(void *retval, void *mdata, va_list ap) { + static const ns_src compatsrc[] = { +#ifdef YP + { NSSRC_NIS, NS_SUCCESS }, +#endif + { NULL, 0 } + }; + ns_dtab dtab[] = { +#ifdef HESIOD + { NSSRC_DNS, dns_setgrent, NULL }, +#endif +#ifdef YP + { NSSRC_NIS, nis_setgrent, NULL }, +#endif + { NULL, NULL, NULL } + }; struct compat_state *st; int rv, stayopen; +#define set_setent(x, y) do { \ + int i; \ + \ + for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ + x[i].mdata = (void *)y; \ +} while (0) + rv = compat_getstate(&st); if (rv != 0) return (NS_UNAVAIL); @@ -832,12 +854,18 @@ rewind(st->fp); else if (stayopen) st->fp = fopen(_PATH_GROUP, "r"); + set_setent(dtab, mdata); + (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "setgrent", + compatsrc, 0); break; case ENDGRENT: if (st->fp != NULL) { fclose(st->fp); st->fp = NULL; } + set_setent(dtab, mdata); + (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "endgrent", + compatsrc, 0); break; default: break; @@ -846,6 +874,7 @@ free(st->name); st->name = NULL; return (NS_UNAVAIL); +#undef set_setent } ==== //depot/projects/ia64/lib/libc/gen/getpwent.c#10 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getpwent.c,v 1.77 2003/04/21 13:57:58 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getpwent.c,v 1.79 2003/04/25 18:25:19 nectar Exp $"); #include "namespace.h" #include @@ -1321,6 +1321,7 @@ for (i = 0; i < sizeof(dtab)/sizeof(dtab[0]) - 1; i++) dtab[i].mdata = (void *)lookup_how; more: + pwd_init(pwd); switch (lookup_how) { case nss_lt_all: rv = _nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, @@ -1391,9 +1392,31 @@ static int compat_setpwent(void *retval, void *mdata, va_list ap) { + static const ns_src compatsrc[] = { +#ifdef YP + { NSSRC_NIS, NS_SUCCESS }, +#endif + { NULL, 0 } + }; + ns_dtab dtab[] = { +#ifdef YP + { NSSRC_NIS, nis_setpwent, NULL }, +#endif +#ifdef HESIOD + { NSSRC_DNS, dns_setpwent, NULL }, +#endif + { NULL, NULL, NULL } + }; struct compat_state *st; int rv, stayopen; +#define set_setent(x, y) do { \ + int i; \ + \ + for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ + x[i].mdata = (void *)y; \ +} while (0) + rv = compat_getstate(&st); if (rv != 0) return (NS_UNAVAIL); @@ -1404,17 +1427,24 @@ if (stayopen) st->db = pwdbopen(&st->version); st->stayopen = stayopen; + set_setent(dtab, mdata); + (void)_nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "setpwent", + compatsrc, 0); break; case ENDPWENT: if (st->db != NULL) { (void)st->db->close(st->db); st->db = NULL; } + set_setent(dtab, mdata); + (void)_nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "endpwent", + compatsrc, 0); break; default: break; } return (NS_UNAVAIL); +#undef set_setent } ==== //depot/projects/ia64/lib/libc/gen/getusershell.c#4 (text+ko) ==== @@ -36,8 +36,9 @@ #endif /* LIBC_SCCS and not lint */ /* $NetBSD: getusershell.c,v 1.17 1999/01/25 01:09:34 lukem Exp $ */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getusershell.c,v 1.8 2003/03/19 14:17:24 robert Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getusershell.c,v 1.9 2003/04/24 20:16:21 nectar Exp $"); +#include "namespace.h" #include #include @@ -59,6 +60,7 @@ #include #include #endif +#include "un-namespace.h" /* * Local shells should NOT be added here. They should be added in @@ -259,7 +261,7 @@ sl_free(sl, 1); sl = sl_init(); - if (nsdispatch(NULL, dtab, NSDB_SHELLS, "initshells", __nsdefaultsrc) + if (_nsdispatch(NULL, dtab, NSDB_SHELLS, "initshells", __nsdefaultsrc) != NS_SUCCESS) { if (sl) sl_free(sl, 1); ==== //depot/projects/ia64/lib/libc/net/getaddrinfo.c#10 (text+ko) ==== @@ -63,7 +63,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.37 2003/02/27 13:40:00 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.38 2003/04/24 17:41:20 nectar Exp $"); #include "namespace.h" #include @@ -607,7 +607,7 @@ return 0; } - switch (nsdispatch(&result, dtab, NSDB_HOSTS, "getaddrinfo", + switch (_nsdispatch(&result, dtab, NSDB_HOSTS, "getaddrinfo", default_dns_files, hostname, pai)) { case NS_TRYAGAIN: error = EAI_AGAIN; ==== //depot/projects/ia64/lib/libc/net/gethostnamadr.c#3 (text+ko) ==== @@ -24,8 +24,9 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/gethostnamadr.c,v 1.20 2002/03/22 21:52:29 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/gethostnamadr.c,v 1.21 2003/04/24 18:05:48 nectar Exp $"); +#include "namespace.h" #include #include #include @@ -38,6 +39,7 @@ #include #include /* XXX hack for _res */ #include /* XXX hack for _res */ +#include "un-namespace.h" extern int _ht_gethostbyname(void *, void *, va_list); extern int _dns_gethostbyname(void *, void *, va_list); @@ -83,7 +85,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyname", + rval = _nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyname", default_src, name, type); if (rval != NS_SUCCESS) @@ -105,7 +107,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyaddr", + rval = _nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyaddr", default_src, addr, len, type); if (rval != NS_SUCCESS) ==== //depot/projects/ia64/lib/libc/net/getnetnamadr.c#3 (text+ko) ==== @@ -24,8 +24,9 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getnetnamadr.c,v 1.16 2002/03/22 21:52:29 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getnetnamadr.c,v 1.17 2003/04/24 18:05:48 nectar Exp $"); +#include "namespace.h" #include #include #include @@ -36,6 +37,7 @@ #include #include #include +#include "un-namespace.h" extern int _ht_getnetbyname(void *, void *, va_list); extern int _dns_getnetbyname(void *, void *, va_list); @@ -65,7 +67,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyname", + rval = _nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyname", default_src, name); if (rval != NS_SUCCESS) @@ -87,7 +89,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyaddr", + rval = _nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyaddr", default_src, addr, af); if (rval != NS_SUCCESS) ==== //depot/projects/ia64/lib/libc/net/name6.c#8 (text+ko) ==== @@ -94,7 +94,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/name6.c,v 1.31 2003/02/16 17:29:10 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/name6.c,v 1.32 2003/04/24 17:41:20 nectar Exp $"); #include "namespace.h" #include @@ -291,7 +291,7 @@ } THREAD_LOCK(); - rval = nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyname", default_src, + rval = _nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyname", default_src, name, af, errp); THREAD_UNLOCK(); return (rval == NS_SUCCESS) ? hp : NULL; @@ -438,7 +438,7 @@ } THREAD_LOCK(); - rval = nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyaddr", default_src, + rval = _nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyaddr", default_src, src, len, af, errp); THREAD_UNLOCK(); return (rval == NS_SUCCESS) ? hp : NULL; ==== //depot/projects/ia64/lib/libc/net/nsdispatch.c#7 (text+ko) ==== @@ -68,7 +68,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.7 2003/04/17 14:14:22 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.8 2003/04/24 19:57:31 nectar Exp $"); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Apr 25 17:23:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7587337B404; Fri, 25 Apr 2003 17:23:50 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 103F537B401 for ; Fri, 25 Apr 2003 17:23:50 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D69BB43FE1 for ; Fri, 25 Apr 2003 17:23:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q0Nm0U074417 for ; Fri, 25 Apr 2003 17:23:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q0NkFV074376 for perforce@freebsd.org; Fri, 25 Apr 2003 17:23:46 -0700 (PDT) Date: Fri, 25 Apr 2003 17:23:46 -0700 (PDT) Message-Id: <200304260023.h3Q0NkFV074376@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 Subject: PERFORCE change 29749 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 00:23:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=29749 Change 29749 by marcel@marcel_pluto1 on 2003/04/25 17:23:07 IFia64 Affected files ... .. //depot/projects/ia64_epc/UPDATING#5 integrate .. //depot/projects/ia64_epc/etc/pam.d/passwd#2 integrate .. //depot/projects/ia64_epc/etc/rc.d/Makefile#5 integrate .. //depot/projects/ia64_epc/etc/rc.d/early.sh#1 branch .. //depot/projects/ia64_epc/etc/rc.d/hostname#2 integrate .. //depot/projects/ia64_epc/etc/rc.d/ipfilter#4 integrate .. //depot/projects/ia64_epc/etc/rc.d/ipfs#2 integrate .. //depot/projects/ia64_epc/etc/rc.d/ipmon#2 integrate .. //depot/projects/ia64_epc/etc/rc.d/ipnat#2 integrate .. //depot/projects/ia64_epc/etc/rc.d/securelevel#2 integrate .. //depot/projects/ia64_epc/etc/rc.d/sysctl#2 integrate .. //depot/projects/ia64_epc/gnu/lib/libstdc++/c++config.h#3 integrate .. //depot/projects/ia64_epc/gnu/lib/libstdc++/config.h#3 integrate .. //depot/projects/ia64_epc/lib/Makefile#4 integrate .. //depot/projects/ia64_epc/lib/libc/gen/getgrent.c#6 integrate .. //depot/projects/ia64_epc/lib/libc/gen/getpwent.c#6 integrate .. //depot/projects/ia64_epc/lib/libc/gen/getusershell.c#3 integrate .. //depot/projects/ia64_epc/lib/libc/net/getaddrinfo.c#3 integrate .. //depot/projects/ia64_epc/lib/libc/net/gethostnamadr.c#2 integrate .. //depot/projects/ia64_epc/lib/libc/net/getnetnamadr.c#2 integrate .. //depot/projects/ia64_epc/lib/libc/net/name6.c#3 integrate .. //depot/projects/ia64_epc/lib/libc/net/nsdispatch.c#4 integrate .. //depot/projects/ia64_epc/lib/libpam/modules/pam_unix/pam_unix.c#2 integrate .. //depot/projects/ia64_epc/lib/libpthread/Makefile#4 integrate .. //depot/projects/ia64_epc/lib/libpthread/arch/i386/include/ksd.h#2 integrate .. //depot/projects/ia64_epc/lib/libpthread/sys/thr_error.c#3 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_kern.c#6 integrate .. //depot/projects/ia64_epc/lib/libpthread/thread/thr_private.h#6 integrate .. //depot/projects/ia64_epc/lib/libstand/bzlib_private.h.diff#2 integrate .. //depot/projects/ia64_epc/release/Makefile#9 integrate .. //depot/projects/ia64_epc/release/doc/en_US.ISO8859-1/hardware/i386/proc-i386.sgml#3 integrate .. //depot/projects/ia64_epc/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#13 integrate .. //depot/projects/ia64_epc/sbin/devd/devd.cc#3 integrate .. //depot/projects/ia64_epc/sbin/fsck/fsck.c#3 integrate .. //depot/projects/ia64_epc/share/man/man4/acpi.4#2 integrate .. //depot/projects/ia64_epc/share/man/man4/man4.i386/pae.4#2 integrate .. //depot/projects/ia64_epc/share/man/man4/syscons.4#3 integrate .. //depot/projects/ia64_epc/sys/alpha/alpha/machdep.c#5 integrate .. //depot/projects/ia64_epc/sys/alpha/alpha/sys_machdep.c#4 integrate .. //depot/projects/ia64_epc/sys/alpha/include/_limits.h#2 integrate .. //depot/projects/ia64_epc/sys/alpha/osf1/osf1_misc.c#3 integrate .. //depot/projects/ia64_epc/sys/alpha/osf1/osf1_signal.c#5 integrate .. //depot/projects/ia64_epc/sys/arm/include/_limits.h#2 integrate .. //depot/projects/ia64_epc/sys/compat/linux/linux_ioctl.c#7 integrate .. //depot/projects/ia64_epc/sys/compat/linux/linux_ioctl.h#2 integrate .. //depot/projects/ia64_epc/sys/compat/linux/linux_signal.c#6 integrate .. //depot/projects/ia64_epc/sys/conf/options#8 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drmP.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_bufs.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_context.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_dma.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_drv.h#5 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_fops.h#4 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_init.h#3 delete .. //depot/projects/ia64_epc/sys/dev/drm/drm_ioctl.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_lists.h#3 delete .. //depot/projects/ia64_epc/sys/dev/drm/drm_lock.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_memory.h#4 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_os_freebsd.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_sysctl.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_vm.h#5 integrate .. //depot/projects/ia64_epc/sys/dev/drm/mga_dma.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/mga_drv.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/mga_drv.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/mga_state.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/r128_cce.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/r128_drv.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/r128_drv.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/r128_state.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/radeon.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/radeon_cp.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/radeon_drm.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/radeon_drv.c#4 integrate .. //depot/projects/ia64_epc/sys/dev/drm/radeon_drv.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/radeon_irq.c#2 integrate .. //depot/projects/ia64_epc/sys/dev/drm/radeon_mem.c#2 integrate .. //depot/projects/ia64_epc/sys/dev/drm/radeon_state.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/drm/tdfx_drv.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/en/midway.c#5 integrate .. //depot/projects/ia64_epc/sys/dev/en/midwayreg.h#2 integrate .. //depot/projects/ia64_epc/sys/dev/en/midwayvar.h#2 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/firewire.c#7 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/fwohci.c#7 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/fwohci_pci.c#6 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/fwohcireg.h#4 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/sbp.c#9 integrate .. //depot/projects/ia64_epc/sys/dev/fxp/if_fxp.c#11 integrate .. //depot/projects/ia64_epc/sys/dev/fxp/if_fxpvar.h#4 integrate .. //depot/projects/ia64_epc/sys/dev/iir/iir.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/iir/iir.h#2 integrate .. //depot/projects/ia64_epc/sys/dev/iir/iir_ctrl.c#4 integrate .. //depot/projects/ia64_epc/sys/dev/iir/iir_pci.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/pccard/pccardvar.h#4 integrate .. //depot/projects/ia64_epc/sys/fs/msdosfs/msdosfs_vfsops.c#3 integrate .. //depot/projects/ia64_epc/sys/geom/bde/g_bde_work.c#3 integrate .. //depot/projects/ia64_epc/sys/geom/geom.h#7 integrate .. //depot/projects/ia64_epc/sys/geom/geom_disk.c#8 integrate .. //depot/projects/ia64_epc/sys/geom/geom_dump.c#5 integrate .. //depot/projects/ia64_epc/sys/geom/geom_event.c#8 integrate .. //depot/projects/ia64_epc/sys/geom/geom_kern.c#5 integrate .. //depot/projects/ia64_epc/sys/geom/geom_sunlabel.c#7 integrate .. //depot/projects/ia64_epc/sys/i386/conf/NOTES#9 integrate .. //depot/projects/ia64_epc/sys/i386/conf/PAE#3 integrate .. //depot/projects/ia64_epc/sys/i386/i386/machdep.c#5 integrate .. //depot/projects/ia64_epc/sys/i386/i386/pmap.c#6 integrate .. //depot/projects/ia64_epc/sys/i386/i386/sys_machdep.c#5 integrate .. //depot/projects/ia64_epc/sys/i386/i386/trap.c#7 integrate .. //depot/projects/ia64_epc/sys/i386/include/_limits.h#2 integrate .. //depot/projects/ia64_epc/sys/ia64/ia32/ia32_proto.h#2 integrate .. //depot/projects/ia64_epc/sys/ia64/ia32/ia32_syscall.h#2 integrate .. //depot/projects/ia64_epc/sys/ia64/ia32/ia32_sysent.c#2 integrate .. //depot/projects/ia64_epc/sys/ia64/ia32/syscalls.master#4 integrate .. //depot/projects/ia64_epc/sys/ia64/ia64/machdep.c#18 integrate .. //depot/projects/ia64_epc/sys/ia64/ia64/sys_machdep.c#2 integrate .. //depot/projects/ia64_epc/sys/ia64/include/_limits.h#2 integrate .. //depot/projects/ia64_epc/sys/kern/kern_context.c#4 integrate .. //depot/projects/ia64_epc/sys/kern/kern_ktrace.c#4 integrate .. //depot/projects/ia64_epc/sys/kern/kern_mac.c#8 integrate .. //depot/projects/ia64_epc/sys/kern/kern_malloc.c#5 integrate .. //depot/projects/ia64_epc/sys/kern/kern_proc.c#7 integrate .. //depot/projects/ia64_epc/sys/kern/kern_prot.c#3 integrate .. //depot/projects/ia64_epc/sys/kern/kern_sig.c#11 integrate .. //depot/projects/ia64_epc/sys/kern/kern_thread.c#14 integrate .. //depot/projects/ia64_epc/sys/kern/sys_process.c#5 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_mount.c#6 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_subr.c#8 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_syscalls.c#5 integrate .. //depot/projects/ia64_epc/sys/modules/Makefile#10 integrate .. //depot/projects/ia64_epc/sys/modules/en/Makefile#1 branch .. //depot/projects/ia64_epc/sys/net/if_ethersubr.c#6 integrate .. //depot/projects/ia64_epc/sys/nfsclient/nfs_vfsops.c#3 integrate .. //depot/projects/ia64_epc/sys/nfsclient/nfs_vnops.c#7 integrate .. //depot/projects/ia64_epc/sys/nfsserver/nfs_serv.c#4 integrate .. //depot/projects/ia64_epc/sys/pc98/conf/NOTES#4 integrate .. //depot/projects/ia64_epc/sys/pc98/i386/machdep.c#5 integrate .. //depot/projects/ia64_epc/sys/pccard/cardinfo.h#2 integrate .. //depot/projects/ia64_epc/sys/pccard/pccard.c#4 integrate .. //depot/projects/ia64_epc/sys/pccard/pccard_nbk.c#2 integrate .. //depot/projects/ia64_epc/sys/pccard/slot.h#2 integrate .. //depot/projects/ia64_epc/sys/pci/if_en_pci.c#3 integrate .. //depot/projects/ia64_epc/sys/powerpc/include/_limits.h#2 integrate .. //depot/projects/ia64_epc/sys/powerpc/powerpc/machdep.c#4 integrate .. //depot/projects/ia64_epc/sys/powerpc/powerpc/sys_machdep.c#3 integrate .. //depot/projects/ia64_epc/sys/sparc64/include/_limits.h#2 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/machdep.c#8 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/sys_machdep.c#3 integrate .. //depot/projects/ia64_epc/sys/sys/limits.h#1 branch .. //depot/projects/ia64_epc/sys/sys/proc.h#12 integrate .. //depot/projects/ia64_epc/sys/sys/ucontext.h#2 integrate .. //depot/projects/ia64_epc/sys/vm/swap_pager.h#3 integrate .. //depot/projects/ia64_epc/sys/vm/vm_contig.c#4 integrate .. //depot/projects/ia64_epc/sys/vm/vm_glue.c#4 integrate .. //depot/projects/ia64_epc/sys/vm/vm_map.c#9 integrate .. //depot/projects/ia64_epc/sys/vm/vm_object.c#10 integrate .. //depot/projects/ia64_epc/sys/vm/vm_page.c#8 integrate .. //depot/projects/ia64_epc/sys/vm/vm_pageout.c#7 integrate .. //depot/projects/ia64_epc/sys/vm/vm_pageout.h#2 integrate .. //depot/projects/ia64_epc/sys/x86_64/include/_limits.h#2 integrate .. //depot/projects/ia64_epc/tools/regression/fsx/fsx.c#2 integrate .. //depot/projects/ia64_epc/usr.bin/calendar/calendars/calendar.birthday#3 integrate .. //depot/projects/ia64_epc/usr.bin/login/login.c#3 integrate .. //depot/projects/ia64_epc/usr.sbin/apm/apm.c#2 integrate .. //depot/projects/ia64_epc/usr.sbin/chown/Makefile#3 integrate .. //depot/projects/ia64_epc/usr.sbin/chown/chgrp.1#2 integrate .. //depot/projects/ia64_epc/usr.sbin/chown/chown.8#2 integrate .. //depot/projects/ia64_epc/usr.sbin/chown/chown.c#2 integrate .. //depot/projects/ia64_epc/usr.sbin/config/mkmakefile.c#4 integrate .. //depot/projects/ia64_epc/usr.sbin/moused/moused.8#2 integrate .. //depot/projects/ia64_epc/usr.sbin/newsyslog/newsyslog.8#2 integrate .. //depot/projects/ia64_epc/usr.sbin/pccard/pccardd/cardd.c#2 integrate .. //depot/projects/ia64_epc/usr.sbin/pccard/pccardd/cardd.h#2 integrate .. //depot/projects/ia64_epc/usr.sbin/quot/quot.c#2 integrate .. //depot/projects/ia64_epc/usr.sbin/rpc.lockd/lockd.c#2 integrate Differences ... ==== //depot/projects/ia64_epc/UPDATING#5 (text+ko) ==== @@ -17,6 +17,31 @@ developers choose to disable these features on build machines to maximize performance. +20030423: + A bug has been fixed in /dev/devctl which would cause devd + to hang on boot, were it not for a workaround in devd. The + work around in devd will be removed around 20030507. You + have until then to upgrade your kernel before updating + userland. In general, you should have a userland and + kernel that's in sync with each other. However, given the + effects of this bug (hang on boot when starting devd), some + allowances are made. + +20030329: + Alphas with libc from between 20030312 and 20030329 exhibit + floating point exceptions (FPEs), most notably in awk(1) + while upgrading the system through a buildworld. + + So, to successfully upgrade your Alpha, you must either + downgrade your libc.so to a pre-20030312 version, or update + /usr/share/mk/bsd.cpu.mk to revision 1.26 which adds -mieee + to CFLAGS, then forcibly rebuild and install libc: + + cd /usr/src/lib/libc && \ + make cleandir && make obj && \ + make -DNOMAN -DNOPROFILE all && \ + make -DNOMAN -DNOPROFILE install + 20030208: sendmail 8.12.7 has been imported. It has one important change for IPv6 users. The default submit.mc now uses @@ -1234,4 +1259,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.245 2003/04/23 14:28:13 schweikh Exp $ +$FreeBSD: src/UPDATING,v 1.247 2003/04/25 20:11:17 ru Exp $ ==== //depot/projects/ia64_epc/etc/pam.d/passwd#2 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/etc/pam.d/passwd,v 1.2 2003/02/10 00:50:03 des Exp $ +# $FreeBSD: src/etc/pam.d/passwd,v 1.3 2003/04/24 12:22:42 des Exp $ # # PAM configuration for the "passwd" service # @@ -8,4 +8,4 @@ # password #password requisite pam_passwdqc.so enforce=users -password required pam_unix.so no_warn try_first_pass +password required pam_unix.so no_warn try_first_pass nullok ==== //depot/projects/ia64_epc/etc/rc.d/Makefile#5 (text+ko) ==== @@ -1,14 +1,14 @@ # $NetBSD: Makefile,v 1.16 2001/01/14 15:37:22 minoura Exp $ -# $FreeBSD: src/etc/rc.d/Makefile,v 1.14 2003/04/19 01:56:44 mtm Exp $ +# $FreeBSD: src/etc/rc.d/Makefile,v 1.15 2003/04/24 08:20:47 mtm Exp $ .include FILES= DAEMON LOGIN NETWORKING SERVERS abi accounting addswap adjkerntz amd \ apm apmd atm1 atm2.sh atm3.sh archdep bgfsck bootparams ccd cleanvar \ cleartmp cron devd devdb devfs dhclient diskless dmesg dumpon fsck \ - hostname inetd initdiskless initrandom ip6fw ipfilter ipfw ipmon ipnat \ - ipsec ipxrouted isdnd jail kadmind kerberos keyserv kldxref ldconfig \ - local localdaemons lomac lpd motd mountcritlocal mountcritremote \ + hostname inetd initdiskless initrandom ip6fw ipfilter ipfs ipfw ipmon \ + ipnat ipsec ipxrouted isdnd jail kadmind kerberos keyserv kldxref \ + ldconfig local localdaemons lomac lpd motd mountcritlocal mountcritremote \ mountd moused mroute6d mrouted msgs named netif network1 network2 network3 \ network_ipv6 nfsclient nfsd nfslocking nfsserver nisdomain ntpd \ ntpdate othermta pccard pcvt ppp-user pppoed pwcheck quota random \ ==== //depot/projects/ia64_epc/etc/rc.d/hostname#2 (text+ko) ==== @@ -23,11 +23,11 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/rc.d/hostname,v 1.1 2003/04/18 17:51:53 mtm Exp $ +# $FreeBSD: src/etc/rc.d/hostname,v 1.2 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: hostname -# REQUIRE: mountcritlocal sysctl tty +# REQUIRE: mountcritlocal tty # BEFORE: netif # KEYWORD: FreeBSD ==== //depot/projects/ia64_epc/etc/rc.d/ipfilter#4 (text+ko) ==== @@ -1,11 +1,12 @@ #!/bin/sh # # $NetBSD: ipfilter,v 1.10 2001/02/28 17:03:50 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipfilter,v 1.7 2003/03/22 14:53:23 ume Exp $ +# $FreeBSD: src/etc/rc.d/ipfilter,v 1.8 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipfilter -# REQUIRE: root beforenetlkm mountcritlocal tty +# REQUIRE: root beforenetlkm mountcritlocal tty ipmon +# BEFORE: netif # KEYWORD: FreeBSD NetBSD . /etc/rc.subr @@ -43,8 +44,7 @@ if kldload ipl; then echo 'IP-filter module loaded.' else - warn 'IP-filter module failed to load.' - return 1 + err 1 'IP-filter module failed to load.' fi fi ==== //depot/projects/ia64_epc/etc/rc.d/ipfs#2 (text+ko) ==== @@ -1,23 +1,47 @@ #!/bin/sh # # $NetBSD: ipfs,v 1.3 2002/02/11 13:55:42 lukem Exp $ +# $FreeBSD: src/etc/rc.d/ipfs,v 1.2 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipfs -# REQUIRE: ipnat mountcritremote -# KEYWORD: shutdown +# REQUIRE: ipnat +# BEFORE: netif +# KEYWORD: FreeBSD NetBSD shutdown . /etc/rc.subr name="ipfs" -rcvar=$name +rcvar=`set_rcvar` start_cmd="ipfs_start" stop_cmd="ipfs_stop" +case ${OSTYPE} in +FreeBSD) + start_precmd="ipfs_prestart" + ;; +NetBSD) + ipfs_program="/usr/sbin/ipfs" + ;; +esac + +ipfs_prestart() +{ + # Do not continue if either ipnat or ipfilter is not enabled or + # if the ipfilter module is not loaded. + # + if ! checkyesno ipfilter_enable -o ! checkyesno ipnat_enable ; then + err 1 "${name} requires either ipfilter or ipnat enabled" + fi + if ! sysctl net.inet.ipf.fr_pass >/dev/null 2>&1; then + err 1 "ipfilter module is not loaded" + fi + return 0 +} ipfs_start() { if [ -r /var/db/ipf/ipstate.ipf -a -r /var/db/ipf/ipnat.ipf ]; then - /usr/sbin/ipfs -R ${rc_flags} + ${ipfs_program} -R ${rc_flags} rm -f /var/db/ipf/ipstate.ipf /var/db/ipf/ipnat.ipf fi } @@ -29,7 +53,7 @@ chmod 700 /var/db/ipf chown root:wheel /var/db/ipf fi - /usr/sbin/ipfs -W ${rc_flags} + ${ipfs_program} -W ${rc_flags} } load_rc_config $name ==== //depot/projects/ia64_epc/etc/rc.d/ipmon#2 (text+ko) ==== @@ -1,11 +1,11 @@ #!/bin/sh # # $NetBSD: ipmon,v 2002/04/18 05:02:01 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipmon,v 1.4 2002/10/12 10:31:31 schweikh Exp $ +# $FreeBSD: src/etc/rc.d/ipmon,v 1.5 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: ipmon -# REQUIRE: syslogd +# REQUIRE: mountcritlocal hostname sysctl # BEFORE: SERVERS # KEYWORD: FreeBSD NetBSD @@ -26,9 +26,14 @@ ipmon_precmd() { - # Make sure ipfilter is loaded before continuing + # Continue only if ipfilter or ipnat is enabled and the + # ipfilter module is loaded. + # + if ! checkyesno ipfilter_enable -o ! checkyesno ipnat_enable ; then + err 1 "${name} requires either ipfilter or ipnat enabled" + fi if ! sysctl net.inet.ipf.fr_pass >/dev/null 2>&1; then - return 1 + err 1 "ipfilter module is not loaded" fi return 0 } ==== //depot/projects/ia64_epc/etc/rc.d/ipnat#2 (text+ko) ==== @@ -1,84 +1,65 @@ #!/bin/sh # # $NetBSD: ipnat,v 1.6 2000/09/19 13:04:38 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipnat,v 1.5 2002/10/26 00:18:06 fenner Exp $ +# $FreeBSD: src/etc/rc.d/ipnat,v 1.7 2003/04/24 18:14:52 mtm Exp $ # # PROVIDE: ipnat -# REQUIRE: ipfilter mountcritremote -# BEFORE: DAEMON +# REQUIRE: ipfilter +# BEFORE: DAEMON netif # KEYWORD: FreeBSD NetBSD . /etc/rc.subr name="ipnat" rcvar=`set_rcvar` +load_rc_config $name case ${OSTYPE} in -FreeBSD) - IPNATDIR="/sbin" - start_precmd="ipnat_precmd" - reload_cmd="ipnat_start" - ;; NetBSD) - IPNATDIR="/usr/sbin" - config="/etc/ipnat.conf" - reload_cmd="/usr/sbin/ipnat -F -C -f ${config}" - start_precmd= + ipnat_flags= + ipnat_rules="/etc/ipnat.conf" + ipnat_program="/usr/sbin/ipnat" ;; esac +start_precmd="ipnat_precmd" start_cmd="ipnat_start" -stop_cmd="${ipnat_program:-${IPNATDIR}/${name}} -F -C" +stop_cmd="${ipnat_program} -F -C" +reload_cmd="${ipnat_program} -F -C -f ${ipnat_rules}" extra_commands="reload" ipnat_precmd() { + case ${OSTYPE} in + NetBSD) + if ! checkyesno ipfilter || [ ! -f /etc/ipf.conf ]; then + echo "Enabling ipfilter for NAT." + /sbin/ipf -E -Fa + fi + return 0 + ;; + esac + # Make sure ipfilter is loaded before continuing if ! ${SYSCTL} net.inet.ipf.fr_pass >/dev/null 2>&1; then - err 1 'ipnat requires ipfilter be loaded' + if kldload ipl; then + echo 'IP-filter module loaded.' + else + err 1 'IP-filter module failed to load.' + fi fi return 0 } ipnat_start() { - case ${OSTYPE} in - FreeBSD) - echo -n 'Installing NAT rules ... ' - if [ -r "${ipnat_rules}" ]; then - ${ipnat_program:-/sbin/ipnat} -CF -f \ - "${ipnat_rules}" ${ipnat_flags} - else - echo -n ' NO IPNAT RULES' - fi - echo '.' - - # restore filter/NAT state tables after loading the rules - if checkyesno ipfs_enable; then - if [ -r "/var/db/ipf/ipstate.ipf" ]; then - echo -n ' ipfs' - ${ipfs_program:-/sbin/ipfs} -R ${ipfs_flags} - # remove files to avoid reloading old state - # after an ungraceful shutdown - rm -f /var/db/ipf/ipstate.ipf - rm -f /var/db/ipf/ipnat.ipf - fi - fi - ;; - NetBSD) - if [ ! -f ${config} ]; then - return 0 - fi - if ! checkyesno ipfilter || [ ! -f /etc/ipf.conf ]; then - echo "Enabling ipfilter for NAT." - /sbin/ipf -E -Fa - fi - echo -n "Installing NAT rules ... " - /usr/sbin/ipnat -F -f ${config} - ;; - esac + if [ ! -f ${ipnat_rules} ]; then + echo -n ' NO IPNAT RULES' + return 0 + fi + echo -n "Installing NAT rules ... " + ${ipnat_program} -CF -f ${ipnat_rules} ${ipnat_flags} } -load_rc_config $name run_rc_command "$1" ==== //depot/projects/ia64_epc/etc/rc.d/securelevel#2 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: securelevel,v 1.4 2002/03/22 04:34:00 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/securelevel,v 1.4 2002/09/06 16:18:05 gordon Exp $ +# $FreeBSD: src/etc/rc.d/securelevel,v 1.5 2003/04/24 08:27:29 mtm Exp $ # # PROVIDE: securelevel @@ -17,6 +17,10 @@ securelevel_start() { + # Last chance to set sysctl variables that failed the first time. + # + /etc/rc.d/sysctl lastload + case ${OSTYPE} in FreeBSD) case ${kern_securelevel_enable} in ==== //depot/projects/ia64_epc/etc/rc.d/sysctl#2 (text+ko) ==== @@ -1,11 +1,11 @@ #!/bin/sh # # $NetBSD: sysctl,v 1.12 2002/04/29 12:10:23 lukem Exp $ -# $FreeBSD: src/etc/rc.d/sysctl,v 1.11 2002/10/25 23:02:54 fenner Exp $ +# $FreeBSD: src/etc/rc.d/sysctl,v 1.12 2003/04/24 08:20:47 mtm Exp $ # # PROVIDE: sysctl -# REQUIRE: root ipfilter ipsec +# REQUIRE: root # BEFORE: DAEMON # KEYWORD: FreeBSD NetBSD ==== //depot/projects/ia64_epc/gnu/lib/libstdc++/c++config.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -// $FreeBSD: src/gnu/lib/libstdc++/c++config.h,v 1.3 2003/02/19 04:28:12 kan Exp $ +// $FreeBSD: src/gnu/lib/libstdc++/c++config.h,v 1.4 2003/04/25 21:17:31 obrien Exp $ // Predefined symbols and macros -*- C++ -*- @@ -101,7 +101,7 @@ #define _GLIBCPP_USE_LONG_LONG 1 // Define if C99 features such as lldiv_t, llabs, lldiv should be exposed. -/* #undef _GLIBCPP_USE_C99 */ +#define _GLIBCPP_USE_C99 1 // Define if code specialized for wchar_t should be used. /* #undef _GLIBCPP_USE_WCHAR_T */ @@ -649,10 +649,10 @@ /* #undef _GLIBCPP_HAVE_SQRTL */ /* Define if you have the strtof function. */ -/* #undef _GLIBCPP_HAVE_STRTOF */ +#define _GLIBCPP_HAVE_STRTOF 1 /* Define if you have the strtold function. */ -/* #undef _GLIBCPP_HAVE_STRTOLD */ +#define _GLIBCPP_HAVE_STRTOLD 1 /* Define if you have the swprintf function. */ #define _GLIBCPP_HAVE_SWPRINTF 1 @@ -748,7 +748,7 @@ #define _GLIBCPP_HAVE_WCSTOD 1 /* Define if you have the wcstof function. */ -/* #undef _GLIBCPP_HAVE_WCSTOF */ +#define _GLIBCPP_HAVE_WCSTOF 1 /* Define if you have the wcstok function. */ #define _GLIBCPP_HAVE_WCSTOK 1 @@ -832,7 +832,7 @@ #define _GLIBCPP_HAVE_SYS_RESOURCE_H 1 /* Define if you have the header file. */ -/* #undef _GLIBCPP_HAVE_SYS_STAT_H */ +#define _GLIBCPP_HAVE_SYS_STAT_H 1 /* Define if you have the header file. */ #define _GLIBCPP_HAVE_SYS_TYPES_H 1 ==== //depot/projects/ia64_epc/gnu/lib/libstdc++/config.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/gnu/lib/libstdc++/config.h,v 1.4 2003/02/19 04:28:12 kan Exp $ */ +/* $FreeBSD: src/gnu/lib/libstdc++/config.h,v 1.5 2003/04/25 21:17:31 obrien Exp $ */ /* config.h. Generated automatically by configure. */ /* config.h.in. Generated automatically from configure.in by autoheader. */ @@ -13,7 +13,7 @@ #define _GLIBCPP_USE_LONG_LONG 1 // Define if C99 features such as lldiv_t, llabs, lldiv should be exposed. -/* #undef _GLIBCPP_USE_C99 */ +#define _GLIBCPP_USE_C99 1 // Define if code specialized for wchar_t should be used. /* #undef _GLIBCPP_USE_WCHAR_T */ @@ -561,10 +561,10 @@ /* #undef HAVE_SQRTL */ /* Define if you have the strtof function. */ -/* #undef HAVE_STRTOF */ +#define HAVE_STRTOF 1 /* Define if you have the strtold function. */ -/* #undef HAVE_STRTOLD */ +#define HAVE_STRTOLD 1 /* Define if you have the swprintf function. */ #define HAVE_SWPRINTF 1 @@ -660,7 +660,7 @@ #define HAVE_WCSTOD 1 /* Define if you have the wcstof function. */ -/* #undef HAVE_WCSTOF */ +#define HAVE_WCSTOF 1 /* Define if you have the wcstok function. */ #define HAVE_WCSTOK 1 ==== //depot/projects/ia64_epc/lib/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/Makefile,v 1.150 2003/03/08 11:01:31 markm Exp $ +# $FreeBSD: src/lib/Makefile,v 1.151 2003/04/25 01:34:43 deischen Exp $ # To satisfy shared library or ELF linkage when only the libraries being # built are visible: @@ -27,7 +27,7 @@ libcalendar libcam libcompat libdevinfo libdevstat ${_libdisk} \ libedit libexpat libfetch libform libftpio libgeom ${_libio} libipsec \ libipx libisc libmenu ${_libmilter} ${_libmp} ${_libncp} \ - libnetgraph libopie libpam libpanel libpcap \ + libnetgraph libopie libpam libpanel libpcap ${_libpthread} \ ${_libsm} ${_libsmb} ${_libsmdb} ${_libsmutil} \ libstand ${_libtelnet} libufs libugidfw libusbhid ${_libvgl} \ libwrap libxpg4 liby libz @@ -60,6 +60,9 @@ _libncp= libncp _libsmb= libsmb _libvgl= libvgl +.if !defined(NOLIBPTHREAD) +_libpthread= libpthread +.endif .endif .if ${MACHINE_ARCH} == "alpha" ==== //depot/projects/ia64_epc/lib/libc/gen/getgrent.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.28 2003/04/22 22:19:05 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.29 2003/04/25 18:25:19 nectar Exp $"); #include "namespace.h" #include @@ -819,9 +819,31 @@ static int compat_setgrent(void *retval, void *mdata, va_list ap) { + static const ns_src compatsrc[] = { +#ifdef YP + { NSSRC_NIS, NS_SUCCESS }, +#endif + { NULL, 0 } + }; + ns_dtab dtab[] = { +#ifdef HESIOD + { NSSRC_DNS, dns_setgrent, NULL }, +#endif +#ifdef YP + { NSSRC_NIS, nis_setgrent, NULL }, +#endif + { NULL, NULL, NULL } + }; struct compat_state *st; int rv, stayopen; +#define set_setent(x, y) do { \ + int i; \ + \ + for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ + x[i].mdata = (void *)y; \ +} while (0) + rv = compat_getstate(&st); if (rv != 0) return (NS_UNAVAIL); @@ -832,12 +854,18 @@ rewind(st->fp); else if (stayopen) st->fp = fopen(_PATH_GROUP, "r"); + set_setent(dtab, mdata); + (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "setgrent", + compatsrc, 0); break; case ENDGRENT: if (st->fp != NULL) { fclose(st->fp); st->fp = NULL; } + set_setent(dtab, mdata); + (void)_nsdispatch(NULL, dtab, NSDB_GROUP_COMPAT, "endgrent", + compatsrc, 0); break; default: break; @@ -846,6 +874,7 @@ free(st->name); st->name = NULL; return (NS_UNAVAIL); +#undef set_setent } ==== //depot/projects/ia64_epc/lib/libc/gen/getpwent.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getpwent.c,v 1.77 2003/04/21 13:57:58 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getpwent.c,v 1.79 2003/04/25 18:25:19 nectar Exp $"); #include "namespace.h" #include @@ -1321,6 +1321,7 @@ for (i = 0; i < sizeof(dtab)/sizeof(dtab[0]) - 1; i++) dtab[i].mdata = (void *)lookup_how; more: + pwd_init(pwd); switch (lookup_how) { case nss_lt_all: rv = _nsdispatch(&discard, dtab, NSDB_PASSWD_COMPAT, @@ -1391,9 +1392,31 @@ static int compat_setpwent(void *retval, void *mdata, va_list ap) { + static const ns_src compatsrc[] = { +#ifdef YP + { NSSRC_NIS, NS_SUCCESS }, +#endif + { NULL, 0 } + }; + ns_dtab dtab[] = { +#ifdef YP + { NSSRC_NIS, nis_setpwent, NULL }, +#endif +#ifdef HESIOD + { NSSRC_DNS, dns_setpwent, NULL }, +#endif + { NULL, NULL, NULL } + }; struct compat_state *st; int rv, stayopen; +#define set_setent(x, y) do { \ + int i; \ + \ + for (i = 0; i < (sizeof(x)/sizeof(x[0])) - 1; i++) \ + x[i].mdata = (void *)y; \ +} while (0) + rv = compat_getstate(&st); if (rv != 0) return (NS_UNAVAIL); @@ -1404,17 +1427,24 @@ if (stayopen) st->db = pwdbopen(&st->version); st->stayopen = stayopen; + set_setent(dtab, mdata); + (void)_nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "setpwent", + compatsrc, 0); break; case ENDPWENT: if (st->db != NULL) { (void)st->db->close(st->db); st->db = NULL; } + set_setent(dtab, mdata); + (void)_nsdispatch(NULL, dtab, NSDB_PASSWD_COMPAT, "endpwent", + compatsrc, 0); break; default: break; } return (NS_UNAVAIL); +#undef set_setent } ==== //depot/projects/ia64_epc/lib/libc/gen/getusershell.c#3 (text+ko) ==== @@ -36,8 +36,9 @@ #endif /* LIBC_SCCS and not lint */ /* $NetBSD: getusershell.c,v 1.17 1999/01/25 01:09:34 lukem Exp $ */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getusershell.c,v 1.8 2003/03/19 14:17:24 robert Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getusershell.c,v 1.9 2003/04/24 20:16:21 nectar Exp $"); +#include "namespace.h" #include #include @@ -59,6 +60,7 @@ #include #include #endif +#include "un-namespace.h" /* * Local shells should NOT be added here. They should be added in @@ -259,7 +261,7 @@ sl_free(sl, 1); sl = sl_init(); - if (nsdispatch(NULL, dtab, NSDB_SHELLS, "initshells", __nsdefaultsrc) + if (_nsdispatch(NULL, dtab, NSDB_SHELLS, "initshells", __nsdefaultsrc) != NS_SUCCESS) { if (sl) sl_free(sl, 1); ==== //depot/projects/ia64_epc/lib/libc/net/getaddrinfo.c#3 (text+ko) ==== @@ -63,7 +63,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.37 2003/02/27 13:40:00 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.38 2003/04/24 17:41:20 nectar Exp $"); #include "namespace.h" #include @@ -607,7 +607,7 @@ return 0; } - switch (nsdispatch(&result, dtab, NSDB_HOSTS, "getaddrinfo", + switch (_nsdispatch(&result, dtab, NSDB_HOSTS, "getaddrinfo", default_dns_files, hostname, pai)) { case NS_TRYAGAIN: error = EAI_AGAIN; ==== //depot/projects/ia64_epc/lib/libc/net/gethostnamadr.c#2 (text+ko) ==== @@ -24,8 +24,9 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/gethostnamadr.c,v 1.20 2002/03/22 21:52:29 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/gethostnamadr.c,v 1.21 2003/04/24 18:05:48 nectar Exp $"); +#include "namespace.h" #include #include #include @@ -38,6 +39,7 @@ #include #include /* XXX hack for _res */ #include /* XXX hack for _res */ +#include "un-namespace.h" extern int _ht_gethostbyname(void *, void *, va_list); extern int _dns_gethostbyname(void *, void *, va_list); @@ -83,7 +85,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyname", + rval = _nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyname", default_src, name, type); if (rval != NS_SUCCESS) @@ -105,7 +107,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyaddr", + rval = _nsdispatch((void *)&hp, dtab, NSDB_HOSTS, "gethostbyaddr", default_src, addr, len, type); if (rval != NS_SUCCESS) ==== //depot/projects/ia64_epc/lib/libc/net/getnetnamadr.c#2 (text+ko) ==== @@ -24,8 +24,9 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/getnetnamadr.c,v 1.16 2002/03/22 21:52:29 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/getnetnamadr.c,v 1.17 2003/04/24 18:05:48 nectar Exp $"); +#include "namespace.h" #include #include #include @@ -36,6 +37,7 @@ #include #include #include +#include "un-namespace.h" extern int _ht_getnetbyname(void *, void *, va_list); extern int _dns_getnetbyname(void *, void *, va_list); @@ -65,7 +67,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyname", + rval = _nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyname", default_src, name); if (rval != NS_SUCCESS) @@ -87,7 +89,7 @@ { 0 } }; - rval = nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyaddr", + rval = _nsdispatch((void *)&hp, dtab, NSDB_NETWORKS, "getnetbyaddr", default_src, addr, af); if (rval != NS_SUCCESS) ==== //depot/projects/ia64_epc/lib/libc/net/name6.c#3 (text+ko) ==== @@ -94,7 +94,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/name6.c,v 1.31 2003/02/16 17:29:10 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/name6.c,v 1.32 2003/04/24 17:41:20 nectar Exp $"); #include "namespace.h" #include @@ -291,7 +291,7 @@ } THREAD_LOCK(); - rval = nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyname", default_src, + rval = _nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyname", default_src, name, af, errp); THREAD_UNLOCK(); return (rval == NS_SUCCESS) ? hp : NULL; @@ -438,7 +438,7 @@ } THREAD_LOCK(); - rval = nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyaddr", default_src, + rval = _nsdispatch(&hp, dtab, NSDB_HOSTS, "ghbyaddr", default_src, src, len, af, errp); THREAD_UNLOCK(); return (rval == NS_SUCCESS) ? hp : NULL; ==== //depot/projects/ia64_epc/lib/libc/net/nsdispatch.c#4 (text+ko) ==== @@ -68,7 +68,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.7 2003/04/17 14:14:22 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.8 2003/04/24 19:57:31 nectar Exp $"); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Apr 25 17:47:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7CEEB37B404; Fri, 25 Apr 2003 17:47:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EFD8637B401 for ; Fri, 25 Apr 2003 17:47:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5312343FA3 for ; Fri, 25 Apr 2003 17:47:17 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q0lH0U092478 for ; Fri, 25 Apr 2003 17:47:17 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q0lGUB092471 for perforce@freebsd.org; Fri, 25 Apr 2003 17:47:16 -0700 (PDT) Date: Fri, 25 Apr 2003 17:47:16 -0700 (PDT) Message-Id: <200304260047.h3Q0lGUB092471@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29750 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 00:47:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=29750 Change 29750 by peter@peter_daintree on 2003/04/25 17:47:13 do not forget to clear PCB_FULLCTX after acting on it Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#29 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#29 (text+ko) ==== @@ -229,7 +229,9 @@ call syscall movq PCPU(CURPCB),%rax testq $PCB_FULLCTX,PCB_FLAGS(%rax) - jnz doreti_ast + je 1f + andq $~PCB_FULLCTX,PCB_FLAGS(%rax) + jmp doreti /* simplified from doreti */ 1: /* Check for and handle AST's on return to userland */ cli From owner-p4-projects@FreeBSD.ORG Fri Apr 25 17:52:25 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6994A37B404; Fri, 25 Apr 2003 17:52:25 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E49BE37B401 for ; Fri, 25 Apr 2003 17:52:24 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 804F243F3F for ; Fri, 25 Apr 2003 17:52:24 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q0qO0U095472 for ; Fri, 25 Apr 2003 17:52:24 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q0qNqQ095460 for perforce@freebsd.org; Fri, 25 Apr 2003 17:52:23 -0700 (PDT) Date: Fri, 25 Apr 2003 17:52:23 -0700 (PDT) Message-Id: <200304260052.h3Q0qNqQ095460@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29751 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 00:52:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=29751 Change 29751 by peter@peter_daintree on 2003/04/25 17:51:55 words cannot express my joy at discovering that I'd misread the sysret description and how it requires an both a 32 bit and 64 bit %cs slot for userland, where the 64 bit slot comes after the shared %ss slot. Also, I neglected to use MSR_SF_MAST to clear PSL_I etc, so get out the big hammer and use it. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/segments.h#18 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#85 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/segments.h#18 (text+ko) ==== @@ -176,11 +176,12 @@ #define GNULL_SEL 0 /* Null Descriptor */ #define GCODE_SEL 1 /* Kernel Code Descriptor */ #define GDATA_SEL 2 /* Kernel Data Descriptor */ -#define GUCODE_SEL 3 /* User Code Descriptor */ -#define GUDATA_SEL 4 /* User Data Descriptor */ -#define GPROC0_SEL 5 /* TSS for entering kernel etc */ +#define GUCODE32_SEL 3 /* User 32 bit code Descriptor */ +#define GUDATA_SEL 4 /* User 32/64 bit Data Descriptor */ +#define GUCODE_SEL 5 /* User 64 bit Code Descriptor */ +#define GPROC0_SEL 6 /* TSS for entering kernel etc */ /* slot 6 is second half of GPROC0_SEL */ -#define NGDT 7 +#define NGDT 8 #ifdef _KERNEL extern struct user_segment_descriptor gdt[]; ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#85 (text+ko) ==== @@ -575,27 +575,36 @@ SEL_KPL, /* segment descriptor priority level */ 1, /* segment descriptor present */ 1, /* long */ + 0, /* default 32 vs 16 bit size */ + 1 /* limit granularity (byte/page units)*/ }, +/* GUCODE32_SEL 3 32 bit Code Descriptor for user */ +{ 0x0, /* segment base address */ + 0xfffff, /* length - all address space */ + SDT_MEMERA, /* segment type */ + SEL_UPL, /* segment descriptor priority level */ + 0, /* segment descriptor present */ + 0, /* long */ 1, /* default 32 vs 16 bit size */ 1 /* limit granularity (byte/page units)*/ }, -/* GUCODE_SEL 3 Code Descriptor for user */ +/* GUDATA_SEL 4 32/64 bit Data Descriptor for user */ { 0x0, /* segment base address */ 0xfffff, /* length - all address space */ - SDT_MEMERA, /* segment type */ + SDT_MEMRWA, /* segment type */ SEL_UPL, /* segment descriptor priority level */ 1, /* segment descriptor present */ - 1, /* long */ - 0, /* default 32 vs 16 bit size */ + 0, /* long */ + 1, /* default 32 vs 16 bit size */ 1 /* limit granularity (byte/page units)*/ }, -/* GUDATA_SEL 4 Code Descriptor for user */ +/* GUCODE_SEL 5 64 bit Code Descriptor for user */ { 0x0, /* segment base address */ 0xfffff, /* length - all address space */ - SDT_MEMRWA, /* segment type */ + SDT_MEMERA, /* segment type */ SEL_UPL, /* segment descriptor priority level */ 1, /* segment descriptor present */ 1, /* long */ 0, /* default 32 vs 16 bit size */ 1 /* limit granularity (byte/page units)*/ }, -/* GPROC0_SEL 5 Proc 0 Tss Descriptor */ +/* GPROC0_SEL 6 Proc 0 Tss Descriptor */ { 0x0, /* segment base address */ sizeof(struct x86_64tss)-1,/* length - all address space */ @@ -1250,10 +1259,11 @@ /* Set up the fast syscall stuff */ msr = rdmsr(MSR_EFER) | EFER_SCE; wrmsr(MSR_EFER, msr); - wrmsr(MSR_LSTAR, (uint64_t)IDTVEC(fast_syscall)); + wrmsr(MSR_LSTAR, (u_int64_t)IDTVEC(fast_syscall)); msr = ((u_int64_t)GSEL(GCODE_SEL, SEL_KPL) << 32) | - ((u_int64_t)GSEL(GUCODE_SEL, SEL_UPL) << 48); + ((u_int64_t)GSEL(GUCODE32_SEL, SEL_UPL) << 48); wrmsr(MSR_STAR, msr); + wrmsr(MSR_SF_MASK, PSL_NT|PSL_T|PSL_I|PSL_C|PSL_D); getmemsize(kmdp, physfree); init_param2(physmem); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 17:53:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2403837B404; Fri, 25 Apr 2003 17:53:27 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C275C37B401 for ; Fri, 25 Apr 2003 17:53:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F81543FAF for ; Fri, 25 Apr 2003 17:53:26 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q0rQ0U095856 for ; Fri, 25 Apr 2003 17:53:26 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q0rP6i095851 for perforce@freebsd.org; Fri, 25 Apr 2003 17:53:25 -0700 (PDT) Date: Fri, 25 Apr 2003 17:53:25 -0700 (PDT) Message-Id: <200304260053.h3Q0rP6i095851@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29752 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 00:53:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=29752 Change 29752 by peter@peter_daintree on 2003/04/25 17:52:59 Use the 'syscall' instruction for syscalls. Unfortunately, syscall clobbers %rcx, which is one of the syscall arguments according to the ABI. I had a look to see what NetBSD did and they use %r10 instead. Do the same here. Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/SYS.h#4 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/SYS.h#4 (text+ko) ==== @@ -55,4 +55,4 @@ .set CNAME(__CONCAT(_,x)),CNAME(__CONCAT(__sys_,x)); \ mov __CONCAT($SYS_,x),%rax; KERNCALL; ret -#define KERNCALL int $0x80 +#define KERNCALL movq %rcx, %r10; syscall From owner-p4-projects@FreeBSD.ORG Fri Apr 25 18:06:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D158C37B404; Fri, 25 Apr 2003 18:06:43 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6603237B401 for ; Fri, 25 Apr 2003 18:06:43 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0F1FF43FCB for ; Fri, 25 Apr 2003 18:06:43 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q16g0U002416 for ; Fri, 25 Apr 2003 18:06:42 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q16g1k002410 for perforce@freebsd.org; Fri, 25 Apr 2003 18:06:42 -0700 (PDT) Date: Fri, 25 Apr 2003 18:06:42 -0700 (PDT) Message-Id: <200304260106.h3Q16g1k002410@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29753 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 01:06:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=29753 Change 29753 by peter@peter_daintree on 2003/04/25 18:06:27 Optimize a little. The cli is redundant, the only code path there is via the AST check which leaves interrupts disabled. Branch for the unusual case (full context restore), not the usual case. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#30 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#30 (text+ko) ==== @@ -229,9 +229,7 @@ call syscall movq PCPU(CURPCB),%rax testq $PCB_FULLCTX,PCB_FLAGS(%rax) - je 1f - andq $~PCB_FULLCTX,PCB_FLAGS(%rax) - jmp doreti + jne 3f /* simplified from doreti */ 1: /* Check for and handle AST's on return to userland */ cli @@ -243,7 +241,6 @@ call ast jmp 1b 2: /* restore preserved registers */ - movq TF_RSP(%rsp),%rdi /* user stack pointer */ movq TF_RAX(%rsp),%rax /* return value 1 */ movq TF_RDX(%rsp),%rdx /* return value 2 */ movq TF_RBX(%rsp),%rbx /* C preserved */ @@ -254,10 +251,13 @@ movq TF_R15(%rsp),%r15 /* C preserved */ movq TF_RFLAGS(%rsp),%r11 /* original %rflags */ movq TF_RIP(%rsp),%rcx /* original %rip */ - cli + movq TF_RSP(%rsp),%rdi /* user stack pointer */ movq %rdi,%rsp /* original %rsp */ #swapgs sysretq +3: /* Requested full context restore, use doreti for that */ + andq $~PCB_FULLCTX,PCB_FLAGS(%rax) + jmp doreti ENTRY(fork_trampoline) movq %r12, %rdi /* function */ From owner-p4-projects@FreeBSD.ORG Fri Apr 25 18:15:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AFBDC37B404; Fri, 25 Apr 2003 18:15:55 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4A36D37B401 for ; Fri, 25 Apr 2003 18:15:55 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D5B0043F3F for ; Fri, 25 Apr 2003 18:15:54 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q1Fs0U006229 for ; Fri, 25 Apr 2003 18:15:54 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q1Fs28006224 for perforce@freebsd.org; Fri, 25 Apr 2003 18:15:54 -0700 (PDT) Date: Fri, 25 Apr 2003 18:15:54 -0700 (PDT) Message-Id: <200304260115.h3Q1Fs28006224@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29754 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 01:15:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=29754 Change 29754 by peter@peter_daintree on 2003/04/25 18:15:52 remove stub pcpu stuff, use %gs instead of %fs since we have hardware support for %gs via syscall/sysret Affected files ... .. //depot/projects/hammer/sys/x86_64/include/asmacros.h#5 edit .. //depot/projects/hammer/sys/x86_64/include/pcpu.h#10 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/asmacros.h#5 (text+ko) ==== @@ -64,13 +64,9 @@ #define NON_GPROF_RET .byte 0xc3 /* opcode for `ret' */ #ifdef LOCORE -#if 0 -#define PCPU(member) %fs:PC_ ## member -#define PCPU_ADDR(member, reg) movq %fs:PC_PRVSPACE,reg; \ +#define PCPU(member) %gs:PC_ ## member +#define PCPU_ADDR(member, reg) movq %gs:PC_PRVSPACE,reg; \ addq $PC_ ## member,reg -#else -#define PCPU(member) __pcpu + PC_ ## member -#endif #endif #ifdef GPROF ==== //depot/projects/hammer/sys/x86_64/include/pcpu.h#10 (text+ko) ==== @@ -52,7 +52,6 @@ #elif defined(__GNUC__) -#if 0 /* * Evaluates to the byte offset of the per-cpu variable name. */ @@ -71,7 +70,7 @@ #define __PCPU_PTR(name) ({ \ __pcpu_type(name) *__p; \ \ - __asm __volatile("movq %%fs:%1,%0; addq %2,%0" \ + __asm __volatile("movq %%gs:%1,%0; addq %2,%0" \ : "=r" (__p) \ : "m" (*(struct pcpu *)(__pcpu_offset(pc_prvspace))), \ "i" (__pcpu_offset(name))); \ @@ -87,25 +86,25 @@ \ if (sizeof(__result) == 1) { \ u_char __b; \ - __asm __volatile("movb %%fs:%1,%0" \ + __asm __volatile("movb %%gs:%1,%0" \ : "=r" (__b) \ : "m" (*(u_char *)(__pcpu_offset(name)))); \ __result = *(__pcpu_type(name) *)&__b; \ } else if (sizeof(__result) == 2) { \ u_short __w; \ - __asm __volatile("movw %%fs:%1,%0" \ + __asm __volatile("movw %%gs:%1,%0" \ : "=r" (__w) \ : "m" (*(u_short *)(__pcpu_offset(name)))); \ __result = *(__pcpu_type(name) *)&__w; \ } else if (sizeof(__result) == 4) { \ u_int __i; \ - __asm __volatile("movl %%fs:%1,%0" \ + __asm __volatile("movl %%gs:%1,%0" \ : "=r" (__i) \ : "m" (*(u_int *)(__pcpu_offset(name)))); \ __result = *(__pcpu_type(name) *)&__i; \ } else if (sizeof(__result) == 8) { \ u_long __l; \ - __asm __volatile("movq %%fs:%1,%0" \ + __asm __volatile("movq %%gs:%1,%0" \ : "=r" (__l) \ : "m" (*(u_long *)(__pcpu_offset(name)))); \ __result = *(__pcpu_type(name) *)&__l; \ @@ -125,25 +124,25 @@ if (sizeof(__val) == 1) { \ u_char __b; \ __b = *(u_char *)&__val; \ - __asm __volatile("movb %1,%%fs:%0" \ + __asm __volatile("movb %1,%%gs:%0" \ : "=m" (*(u_char *)(__pcpu_offset(name))) \ : "r" (__b)); \ } else if (sizeof(__val) == 2) { \ u_short __w; \ __w = *(u_short *)&__val; \ - __asm __volatile("movw %1,%%fs:%0" \ + __asm __volatile("movw %1,%%gs:%0" \ : "=m" (*(u_short *)(__pcpu_offset(name))) \ : "r" (__w)); \ } else if (sizeof(__val) == 4) { \ u_int __i; \ __i = *(u_int *)&__val; \ - __asm __volatile("movl %1,%%fs:%0" \ + __asm __volatile("movl %1,%%gs:%0" \ : "=m" (*(u_int *)(__pcpu_offset(name))) \ : "r" (__i)); \ } else if (sizeof(__val) == 8) { \ u_long __l; \ __l = *(u_long *)&__val; \ - __asm __volatile("movq %1,%%fs:%0" \ + __asm __volatile("movq %1,%%gs:%0" \ : "=m" (*(u_long *)(__pcpu_offset(name))) \ : "r" (__l)); \ } else { \ @@ -154,15 +153,6 @@ #define PCPU_GET(member) __PCPU_GET(pc_ ## member) #define PCPU_PTR(member) __PCPU_PTR(pc_ ## member) #define PCPU_SET(member, val) __PCPU_SET(pc_ ## member, val) -#else - -extern struct pcpu __pcpu; - -#define PCPU_GET(member) (__pcpu.pc_ ## member) -#define PCPU_PTR(member) (&__pcpu.pc_ ## member) -#define PCPU_SET(member,value) (__pcpu.pc_ ## member = (value)) - -#endif #else #error gcc or lint is required to use this file From owner-p4-projects@FreeBSD.ORG Fri Apr 25 18:22:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A6A8137B407; Fri, 25 Apr 2003 18:22:03 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 55B7D37B405 for ; Fri, 25 Apr 2003 18:22:03 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EFE9643FB1 for ; Fri, 25 Apr 2003 18:22:02 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q1M20U009187 for ; Fri, 25 Apr 2003 18:22:02 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q1M2xW009180 for perforce@freebsd.org; Fri, 25 Apr 2003 18:22:02 -0700 (PDT) Date: Fri, 25 Apr 2003 18:22:02 -0700 (PDT) Message-Id: <200304260122.h3Q1M2xW009180@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29755 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 01:22:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29755 Change 29755 by peter@peter_daintree on 2003/04/25 18:21:54 Add a stub 32 bit 'syscall' entry point so that we can point MSR_CSTAR to it. Note that GUCODE32_SEL exists but does not have the 'p' (present) bit set, so theoretically this is impossible. Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/exception.s#31 edit .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#86 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/exception.s#31 (text+ko) ==== @@ -259,6 +259,14 @@ andq $~PCB_FULLCTX,PCB_FLAGS(%rax) jmp doreti +/* + * Here for CYA insurance, in case a "syscall" instruction gets + * issued from 32 bit compatability mode. MSR_CSTAR has to point + * to *something* if EFER_SCE is enabled. + */ +IDTVEC(fast_syscall32) + sysret + ENTRY(fork_trampoline) movq %r12, %rdi /* function */ movq %rbx, %rsi /* arg1 */ ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#86 (text+ko) ==== @@ -151,7 +151,7 @@ struct kva_md_info kmi; static struct trapframe proc0_tf; -struct pcpu __pcpu; +static struct pcpu __pcpu; struct mtx icu_lock; @@ -653,7 +653,8 @@ IDTVEC(bnd), IDTVEC(ill), IDTVEC(dna), IDTVEC(fpusegm), IDTVEC(tss), IDTVEC(missing), IDTVEC(stk), IDTVEC(prot), IDTVEC(page), IDTVEC(mchk), IDTVEC(rsvd), IDTVEC(fpu), IDTVEC(align), - IDTVEC(xmm), IDTVEC(int0x80_syscall), IDTVEC(fast_syscall); + IDTVEC(xmm), IDTVEC(int0x80_syscall), + IDTVEC(fast_syscall), IDTVEC(fast_syscall32); void sdtossd(sd, ssd) @@ -1260,6 +1261,7 @@ msr = rdmsr(MSR_EFER) | EFER_SCE; wrmsr(MSR_EFER, msr); wrmsr(MSR_LSTAR, (u_int64_t)IDTVEC(fast_syscall)); + wrmsr(MSR_CSTAR, (u_int64_t)IDTVEC(fast_syscall32)); msr = ((u_int64_t)GSEL(GCODE_SEL, SEL_KPL) << 32) | ((u_int64_t)GSEL(GUCODE32_SEL, SEL_UPL) << 48); wrmsr(MSR_STAR, msr); From owner-p4-projects@FreeBSD.ORG Fri Apr 25 18:37:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EA26F37B404; Fri, 25 Apr 2003 18:37:22 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A246237B401 for ; Fri, 25 Apr 2003 18:37:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3A2F443F85 for ; Fri, 25 Apr 2003 18:37:22 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q1bL0U018875 for ; Fri, 25 Apr 2003 18:37:21 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q1bL4e018871 for perforce@freebsd.org; Fri, 25 Apr 2003 18:37:21 -0700 (PDT) Date: Fri, 25 Apr 2003 18:37:21 -0700 (PDT) Message-Id: <200304260137.h3Q1bL4e018871@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29756 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 01:37:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=29756 Change 29756 by peter@peter_daintree on 2003/04/25 18:36:30 actually, since we have native PC-RELATIVE stuff, we dont need this crud Affected files ... .. //depot/projects/hammer/sys/x86_64/include/asm.h#6 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/asm.h#6 (text+ko) ==== @@ -49,8 +49,6 @@ #define PIC_PLT(x) x #define PIC_GOT(x) x #endif -#define PIC_PROLOGUE -#define PIC_EPILOGUE /* * CNAME and HIDENAME manage the relationship between symbol names in C From owner-p4-projects@FreeBSD.ORG Fri Apr 25 18:43:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E2D237B404; Fri, 25 Apr 2003 18:43:31 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D238337B401 for ; Fri, 25 Apr 2003 18:43:30 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6613943FCB for ; Fri, 25 Apr 2003 18:43:30 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q1hU0U024949 for ; Fri, 25 Apr 2003 18:43:30 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q1hTEq024934 for perforce@freebsd.org; Fri, 25 Apr 2003 18:43:29 -0700 (PDT) Date: Fri, 25 Apr 2003 18:43:29 -0700 (PDT) Message-Id: <200304260143.h3Q1hTEq024934@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29757 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 01:43:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=29757 Change 29757 by peter@peter_daintree on 2003/04/25 18:42:41 murder the toxic PIC_PROLOGUE/PIC_EPILOGUE crud. There's still a bit more #ifdef PIC stuff left that I have to check out and convert/cleanup. Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/gen/rfork_thread.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/gen/setjmp.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/gen/sigsetjmp.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/Ovfork.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/brk.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/cerror.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/exect.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/ptrace.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/sbrk.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/setlogin.S#2 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/gen/rfork_thread.S#2 (text+ko) ==== @@ -109,5 +109,4 @@ * Branch here if the thread creation fails: */ 2: - PIC_PROLOGUE jmp PIC_PLT(HIDENAME(cerror)) ==== //depot/projects/hammer/lib/libc/x86_64/gen/setjmp.S#3 (text+ko) ==== @@ -55,12 +55,10 @@ ENTRY(setjmp) pushq %rdi movq %rdi,%rcx - PIC_PROLOGUE leaq 72(%rcx),%rdi /* (sigset_t*)oset */ movq $0,%rsi /* (sigset_t*)set */ movq $1,%rdx /* SIG_BLOCK */ call PIC_PLT(CNAME(_sigprocmask)) - PIC_EPILOGUE popq %rdi movq %rdi,%rcx movq 0(%rsp),%rdx /* retval */ @@ -82,12 +80,10 @@ pushq %rdi pushq %rsi movq %rdi,%rdx - PIC_PROLOGUE movq $0,%rdi /* (sigset_t*)oset */ leaq 72(%rdx),%rsi /* (sigset_t*)set */ movq $3,%rdx /* SIG_SETMASK */ call PIC_PLT(CNAME(_sigprocmask)) - PIC_EPILOGUE popq %rsi popq %rdi /* jmpbuf */ movq %rdi,%rdx ==== //depot/projects/hammer/lib/libc/x86_64/gen/sigsetjmp.S#3 (text+ko) ==== @@ -63,12 +63,10 @@ movl %esi,88(%rcx) testl %esi,%esi jz 2f - PIC_PROLOGUE leaq 72(%rcx),%rdi /* (sigset_t*)oset */ movq $0,%rsi /* (sigset_t*)set */ movq $1,%rdx /* SIG_BLOCK */ call PIC_PLT(CNAME(_sigprocmask)) - PIC_EPILOGUE popq %rdi movq %rdi,%rcx 2: movq 0(%rsp),%rdx /* retval */ @@ -92,12 +90,10 @@ movq %rdi,%rdx pushq %rdi pushq %rsi - PIC_PROLOGUE movq $0,%rdi /* (sigset_t*)oset */ leaq 72(%rdx),%rsi /* (sigset_t*)set */ movq $3,%rdx /* SIG_SETMASK */ call PIC_PLT(CNAME(_sigprocmask)) - PIC_EPILOGUE popq %rsi popq %rdi /* jmpbuf */ 2: movq %rdi,%rdx ==== //depot/projects/hammer/lib/libc/x86_64/sys/Ovfork.S#3 (text+ko) ==== @@ -54,5 +54,4 @@ jmp *%rcx 1: pushq %rcx - PIC_PROLOGUE jmp PIC_PLT(HIDENAME(cerror)) ==== //depot/projects/hammer/lib/libc/x86_64/sys/brk.S#3 (text+ko) ==== @@ -51,10 +51,8 @@ ENTRY(brk) #ifdef PIC movl 4(%esp),%eax - PIC_PROLOGUE movl PIC_GOT(HIDENAME(curbrk)),%edx # set up GOT addressing movl PIC_GOT(HIDENAME(minbrk)),%ecx # - PIC_EPILOGUE cmpl %eax,(%ecx) jbe ok movl (%ecx),%eax @@ -68,7 +66,6 @@ movl $0,%eax ret err: - PIC_PROLOGUE jmp PIC_PLT(HIDENAME(cerror)) #else ==== //depot/projects/hammer/lib/libc/x86_64/sys/cerror.S#3 (text+ko) ==== @@ -53,15 +53,8 @@ .type CNAME(__error),@function HIDENAME(cerror): pushq %rax -#ifdef PIC - /* The caller must execute the PIC prologue before jumping to cerror. */ call PIC_PLT(CNAME(__error)) popq %rcx - PIC_EPILOGUE -#else - call CNAME(__error) - popq %rcx -#endif movq %rcx,(%rax) movq $-1,%rax movq $-1,%rdx ==== //depot/projects/hammer/lib/libc/x86_64/sys/exect.S#3 (text+ko) ==== @@ -51,5 +51,4 @@ pushq %rdx popfq KERNCALL - PIC_PROLOGUE jmp PIC_PLT(HIDENAME(cerror)) /* exect(file, argv, env); */ ==== //depot/projects/hammer/lib/libc/x86_64/sys/ptrace.S#2 (text+ko) ==== @@ -45,10 +45,8 @@ ENTRY(ptrace) xorl %eax,%eax #ifdef PIC - PIC_PROLOGUE movl PIC_GOT(CNAME(errno)),%edx movl %eax,(%edx) - PIC_EPILOGUE #else movl %eax,CNAME(errno) #endif @@ -57,5 +55,4 @@ jb err ret err: - PIC_PROLOGUE jmp PIC_PLT(HIDENAME(cerror)) ==== //depot/projects/hammer/lib/libc/x86_64/sys/sbrk.S#3 (text+ko) ==== @@ -54,25 +54,20 @@ ENTRY(sbrk) #ifdef PIC movl 4(%esp),%ecx - PIC_PROLOGUE movl PIC_GOT(HIDENAME(curbrk)),%edx movl (%edx),%eax - PIC_EPILOGUE testl %ecx,%ecx jz back addl %eax,4(%esp) mov $SYS_break,%eax KERNCALL jb err - PIC_PROLOGUE movl PIC_GOT(HIDENAME(curbrk)),%edx movl (%edx),%eax addl %ecx,(%edx) - PIC_EPILOGUE back: ret err: - PIC_PROLOGUE jmp PIC_PLT(HIDENAME(cerror)) #else /* !PIC */ ==== //depot/projects/hammer/lib/libc/x86_64/sys/setlogin.S#2 (text+ko) ==== @@ -46,12 +46,10 @@ SYSCALL(setlogin) #ifdef PIC - PIC_PROLOGUE pushl %eax movl PIC_GOT(CNAME(_logname_valid)),%eax movl $0,(%eax) popl %eax - PIC_EPILOGUE #else movl $0,CNAME(_logname_valid) #endif From owner-p4-projects@FreeBSD.ORG Fri Apr 25 19:04:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5B7D137B404; Fri, 25 Apr 2003 19:03:59 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D837937B401 for ; Fri, 25 Apr 2003 19:03:58 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 655E143F75 for ; Fri, 25 Apr 2003 19:03:58 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q23w0U048706 for ; Fri, 25 Apr 2003 19:03:58 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q23v2i048696 for perforce@freebsd.org; Fri, 25 Apr 2003 19:03:57 -0700 (PDT) Date: Fri, 25 Apr 2003 19:03:57 -0700 (PDT) Message-Id: <200304260203.h3Q23v2i048696@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29759 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 02:04:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=29759 Change 29759 by peter@peter_daintree on 2003/04/25 19:03:43 update for PIC. Oh my, that's a lot nicer with pc-relative modes. Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/sys/brk.S#4 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/ptrace.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/sbrk.S#4 edit .. //depot/projects/hammer/lib/libc/x86_64/sys/setlogin.S#3 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/sys/brk.S#4 (text+ko) ==== @@ -49,41 +49,19 @@ jmp ok ENTRY(brk) -#ifdef PIC - movl 4(%esp),%eax - movl PIC_GOT(HIDENAME(curbrk)),%edx # set up GOT addressing - movl PIC_GOT(HIDENAME(minbrk)),%ecx # - cmpl %eax,(%ecx) - jbe ok - movl (%ecx),%eax - movl %eax,4(%esp) -ok: - mov $SYS_break,%eax - KERNCALL - jb err - movl 4(%esp),%eax - movl %eax,(%edx) - movl $0,%eax - ret -err: - jmp PIC_PLT(HIDENAME(cerror)) - -#else - pushq %rdi movq %rdi,%rax - cmpq %rax,HIDENAME(minbrk) + cmpq %rax,PIC_GOT(HIDENAME(minbrk)) jbe ok - movq HIDENAME(minbrk),%rdi + movq PIC_GOT(HIDENAME(minbrk)),%rdi ok: movq $SYS_break,%rax KERNCALL jb err movq 0(%rsp),%rax - movq %rax,HIDENAME(curbrk) + movq %rax,PIC_GOT(HIDENAME(curbrk)) movq $0,%rax popq %rdi ret err: - jmp HIDENAME(cerror) -#endif + jmp PIC_PLT(HIDENAME(cerror)) ==== //depot/projects/hammer/lib/libc/x86_64/sys/ptrace.S#3 (text+ko) ==== @@ -44,12 +44,7 @@ ENTRY(ptrace) xorl %eax,%eax -#ifdef PIC - movl PIC_GOT(CNAME(errno)),%edx - movl %eax,(%edx) -#else - movl %eax,CNAME(errno) -#endif + movl %eax,PIC_GOT(CNAME(errno)) mov $SYS_ptrace,%eax KERNCALL jb err ==== //depot/projects/hammer/lib/libc/x86_64/sys/sbrk.S#4 (text+ko) ==== @@ -52,42 +52,21 @@ .text ENTRY(sbrk) -#ifdef PIC - movl 4(%esp),%ecx - movl PIC_GOT(HIDENAME(curbrk)),%edx - movl (%edx),%eax - testl %ecx,%ecx - jz back - addl %eax,4(%esp) - mov $SYS_break,%eax - KERNCALL - jb err - movl PIC_GOT(HIDENAME(curbrk)),%edx - movl (%edx),%eax - addl %ecx,(%edx) -back: - ret -err: - jmp PIC_PLT(HIDENAME(cerror)) - -#else /* !PIC */ - pushq %rdi movq %rdi,%rcx - movq HIDENAME(curbrk),%rax + movq PIC_GOT(HIDENAME(curbrk)),%rax testq %rcx,%rcx jz back addq %rax,%rdi mov $SYS_break,%eax KERNCALL jb err - movq HIDENAME(curbrk),%rax + movq PIC_GOT(HIDENAME(curbrk)),%rax movq 0(%rsp), %rcx - addq %rcx,HIDENAME(curbrk) + addq %rcx,PIC_GOT(HIDENAME(curbrk)) back: addq $8, %rsp ret err: addq $8, %rsp - jmp HIDENAME(cerror) -#endif /* PIC */ + jmp PIC_PLT(HIDENAME(cerror)) ==== //depot/projects/hammer/lib/libc/x86_64/sys/setlogin.S#3 (text+ko) ==== @@ -45,12 +45,5 @@ .globl CNAME(_logname_valid) /* in _getlogin() */ SYSCALL(setlogin) -#ifdef PIC - pushl %eax - movl PIC_GOT(CNAME(_logname_valid)),%eax - movl $0,(%eax) - popl %eax -#else - movl $0,CNAME(_logname_valid) -#endif + movl $0,PIC_GOT(CNAME(_logname_valid)) ret /* setlogin(name) */ From owner-p4-projects@FreeBSD.ORG Fri Apr 25 19:26:28 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D7D1437B404; Fri, 25 Apr 2003 19:26:27 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8B41037B401 for ; Fri, 25 Apr 2003 19:26:27 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D9BC743FDF for ; Fri, 25 Apr 2003 19:26:26 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q2QQ0U065110 for ; Fri, 25 Apr 2003 19:26:26 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q2QQqd065102 for perforce@freebsd.org; Fri, 25 Apr 2003 19:26:26 -0700 (PDT) Date: Fri, 25 Apr 2003 19:26:26 -0700 (PDT) Message-Id: <200304260226.h3Q2QQqd065102@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29761 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 02:26:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=29761 Change 29761 by peter@peter_daintree on 2003/04/25 19:26:23 oops, this is user-visible which might not have register_t Affected files ... .. //depot/projects/hammer/sys/x86_64/include/signal.h#11 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/signal.h#11 (text+ko) ==== @@ -73,29 +73,29 @@ */ struct sigcontext { struct __sigset sc_mask; /* signal mask to restore */ - register_t sc_onstack; /* sigstack state to restore */ - register_t sc_r15; /* machine state (struct trapframe) */ - register_t sc_r14; - register_t sc_r13; - register_t sc_r12; - register_t sc_r11; - register_t sc_r10; - register_t sc_r9; - register_t sc_r8; - register_t sc_rdi; - register_t sc_rsi; - register_t sc_rbp; - register_t sc_rbx; - register_t sc_rdx; - register_t sc_rcx; - register_t sc_rax; - register_t sc_trapno; - register_t sc_err; - register_t sc_rip; - register_t sc_cs; - register_t sc_rflags; - register_t sc_rsp; - register_t sc_ss; + long sc_onstack; /* sigstack state to restore */ + long sc_r15; /* machine state (struct trapframe) */ + long sc_r14; + long sc_r13; + long sc_r12; + long sc_r11; + long sc_r10; + long sc_r9; + long sc_r8; + long sc_rdi; + long sc_rsi; + long sc_rbp; + long sc_rbx; + long sc_rdx; + long sc_rcx; + long sc_rax; + long sc_trapno; + long sc_err; + long sc_rip; + long sc_cs; + long sc_rflags; + long sc_rsp; + long sc_ss; long sc_len; /* sizeof(mcontext_t) */ /* * XXX - See and for From owner-p4-projects@FreeBSD.ORG Fri Apr 25 19:29:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1A63737B404; Fri, 25 Apr 2003 19:29:32 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A750437B401 for ; Fri, 25 Apr 2003 19:29:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3C32A43FD7 for ; Fri, 25 Apr 2003 19:29:31 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q2TV0U066585 for ; Fri, 25 Apr 2003 19:29:31 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q2TUur066580 for perforce@freebsd.org; Fri, 25 Apr 2003 19:29:30 -0700 (PDT) Date: Fri, 25 Apr 2003 19:29:30 -0700 (PDT) Message-Id: <200304260229.h3Q2TUur066580@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 Subject: PERFORCE change 29762 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 02:29:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=29762 Change 29762 by marcel@marcel_pluto2 on 2003/04/25 19:29:11 + INET6 - COMPAT_FREEBSD4 Affected files ... .. //depot/projects/ia64_epc/sys/ia64/conf/HP_RX2600#2 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/conf/HP_RX2600#2 (text+ko) ==== @@ -8,11 +8,10 @@ options ATA_STATIC_ID options CD9660 options COMPAT_43 -options COMPAT_FREEBSD4 options DDB options FFS options INET -#options INET6 +options INET6 options KTRACE options MSDOSFS options NFS_ROOT From owner-p4-projects@FreeBSD.ORG Fri Apr 25 19:44:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D7C8737B404; Fri, 25 Apr 2003 19:44:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6BC8537B401 for ; Fri, 25 Apr 2003 19:44:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1212443F85 for ; Fri, 25 Apr 2003 19:44:51 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q2io0U078056 for ; Fri, 25 Apr 2003 19:44:50 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q2iom2078046 for perforce@freebsd.org; Fri, 25 Apr 2003 19:44:50 -0700 (PDT) Date: Fri, 25 Apr 2003 19:44:50 -0700 (PDT) Message-Id: <200304260244.h3Q2iom2078046@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29764 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 02:44:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=29764 Change 29764 by peter@peter_daintree on 2003/04/25 19:44:22 trivial implementations Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/net/Makefile.inc#3 edit .. //depot/projects/hammer/lib/libc/x86_64/net/htonl.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/net/htons.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/net/ntohl.S#2 edit .. //depot/projects/hammer/lib/libc/x86_64/net/ntohs.S#2 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/net/Makefile.inc#3 (text+ko) ==== @@ -1,2 +1,4 @@ # @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 # $FreeBSD: src/lib/libc/i386/net/Makefile.inc,v 1.6 1999/08/27 23:59:24 peter Exp $ + +SRCS+= htonl.S htons.S ntohl.S ntohs.S ==== //depot/projects/hammer/lib/libc/x86_64/net/htonl.S#2 (text+ko) ==== @@ -45,8 +45,6 @@ .weak CNAME(htonl) .set CNAME(htonl),CNAME(__htonl) ENTRY(__htonl) - movl 4(%esp),%eax - xchgb %al,%ah - roll $16,%eax - xchgb %al,%ah + movl %edi,%eax + bswap %eax ret ==== //depot/projects/hammer/lib/libc/x86_64/net/htons.S#2 (text+ko) ==== @@ -45,6 +45,6 @@ .weak CNAME(htons) .set CNAME(htons),CNAME(__htons) ENTRY(__htons) - movzwl 4(%esp),%eax + movzwl %edi,%eax xchgb %al,%ah ret ==== //depot/projects/hammer/lib/libc/x86_64/net/ntohl.S#2 (text+ko) ==== @@ -45,8 +45,6 @@ .weak CNAME(ntohl) .set CNAME(ntohl),CNAME(__ntohl) ENTRY(__ntohl) - movl 4(%esp),%eax - xchgb %al,%ah - roll $16,%eax - xchgb %al,%ah + movl %edi,%eax + bswap %eax ret ==== //depot/projects/hammer/lib/libc/x86_64/net/ntohs.S#2 (text+ko) ==== @@ -47,6 +47,6 @@ .weak CNAME(ntohs) .set CNAME(ntohs),CNAME(__ntohs) ENTRY(__ntohs) - movzwl 4(%esp),%eax + movzwl %edi,%eax xchgb %al,%ah ret From owner-p4-projects@FreeBSD.ORG Fri Apr 25 19:45:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CA18E37B407; Fri, 25 Apr 2003 19:45:53 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7D57537B404 for ; Fri, 25 Apr 2003 19:45:53 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F168143F93 for ; Fri, 25 Apr 2003 19:45:52 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q2jq0U079013 for ; Fri, 25 Apr 2003 19:45:52 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q2jqZu079005 for perforce@freebsd.org; Fri, 25 Apr 2003 19:45:52 -0700 (PDT) Date: Fri, 25 Apr 2003 19:45:52 -0700 (PDT) Message-Id: <200304260245.h3Q2jqZu079005@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 29765 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 02:45:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=29765 Change 29765 by peter@peter_daintree on 2003/04/25 19:45:50 doh! that wasn't very clever! Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/net/htons.S#3 edit .. //depot/projects/hammer/lib/libc/x86_64/net/ntohs.S#3 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/net/htons.S#3 (text+ko) ==== @@ -45,6 +45,6 @@ .weak CNAME(htons) .set CNAME(htons),CNAME(__htons) ENTRY(__htons) - movzwl %edi,%eax + movl %edi,%eax xchgb %al,%ah ret ==== //depot/projects/hammer/lib/libc/x86_64/net/ntohs.S#3 (text+ko) ==== @@ -47,6 +47,6 @@ .weak CNAME(ntohs) .set CNAME(ntohs),CNAME(__ntohs) ENTRY(__ntohs) - movzwl %edi,%eax + movl %edi,%eax xchgb %al,%ah ret From owner-p4-projects@FreeBSD.ORG Fri Apr 25 22:52:45 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C811237B404; Fri, 25 Apr 2003 22:52:44 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A07E37B401 for ; Fri, 25 Apr 2003 22:52:44 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 07EA743F3F for ; Fri, 25 Apr 2003 22:52:44 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q5qh0U019065 for ; Fri, 25 Apr 2003 22:52:43 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q5qhmR019057 for perforce@freebsd.org; Fri, 25 Apr 2003 22:52:43 -0700 (PDT) Date: Fri, 25 Apr 2003 22:52:43 -0700 (PDT) Message-Id: <200304260552.h3Q5qhmR019057@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 Subject: PERFORCE change 29773 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 05:52:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=29773 Change 29773 by marcel@marcel_nfs on 2003/04/25 22:51:52 Implement the signal trampoline for EPC syscalls. While here, make sure we preserve the stacked registers passed to us. That way we can more easily restart the system call. Note that we change the previous frame marker in the trapframe to mark all registers as locals. This will force all registers to be loaded from the backing store after sigreturn(). This mimics the behaviour of an interrupt return. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#11 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#11 (text+ko) ==== @@ -158,8 +158,65 @@ END(break_sigtramp) ENTRY(epc_sigtramp, 0) - break 0x80100 +{ .mib + mov ar.rsc=0 + cmp.ne p15,p0=0,gp + cover + ;; +} +{ .mmi + flushrs +(p15) invala + add r16=16+UC_MCONTEXT+MC_SPECIAL,sp + ;; +} +{ .mmi + mov r17=ar.bsp + mov r18=ar.rnat + add r14=32,r16 + ;; +} +{ .mmi +(p15) mov ar.bspstore=gp + ld8 r19=[r14],8 + add r15=48,r16 + ;; +} +{ .mmi + st8 [r14]=r17,64 // bspstore + st8 [r15]=r18,-16 // rnat + dep r19=r19,r19,7,7 + ;; +} +{ .mmi + st8 [r14]=r0 // ndirty + st8 [r15]=r19 // pfs + nop 0 + ;; +} +{ .mmi + alloc r14=ar.pfs, 0, 0, 3, 0 + mov ar.rsc=15 + mov out0=r8 + ;; +} +{ .mmi + ld8 r16=[r10],8 // function address + ;; + ld8 gp=[r10] // function's gp value + mov b7=r16 + ;; +} +{ .mib + mov out1=r9 + add out2=16,sp + br.call.sptk rp=b7 ;; +} + add out0=16,sp + CALLSYS_NOERROR(sigreturn) + mov out0=ret0 + CALLSYS_NOERROR(exit) END(epc_sigtramp) .align PAGE_SIZE @@ -264,45 +321,45 @@ ;; } { .mmi + alloc r14=ar.pfs,8,0,3,0 st8 [r30]=r8,16 // syscall number (=r15) - .mem.offset 0,0 - st8.spill [r31]=r32,16 // arg0 (=r16) nop 0 ;; } { .mmi + .mem.offset 0,0 + st8.spill [r31]=in0,16 // arg0 (=r16) .mem.offset 8,0 - st8.spill [r30]=r33,16 // arg1 (=r17) - .mem.offset 16,0 - st8.spill [r31]=r34,16 // arg2 (=r18) + st8.spill [r30]=in1,16 // arg1 (=r17) nop 0 ;; } { .mmi + .mem.offset 16,0 + st8.spill [r31]=in2,16 // arg2 (=r18) .mem.offset 24,0 - st8.spill [r30]=r35,16 // arg3 (=r19) - .mem.offset 32,0 - st8.spill [r31]=r36,16 // arg4 (=r20) + st8.spill [r30]=in3,16 // arg3 (=r19) nop 0 ;; } { .mmi + .mem.offset 32,0 + st8.spill [r31]=in4,16 // arg4 (=r20) .mem.offset 40,0 - st8.spill [r30]=r37,16 // arg5 (=r21) - .mem.offset 48,0 - st8.spill [r31]=r38,16 // arg6 (=r22) + st8.spill [r30]=in5,16 // arg5 (=r21) nop 0 ;; } { .mmi + .mem.offset 48,0 + st8.spill [r31]=in6,16 // arg6 (=r22) .mem.offset 56,0 - st8.spill [r30]=r39,8 // arg7 (=r23) - ssm psr.dfh|psr.ac + st8.spill [r30]=in7,8 // arg7 (=r23) nop 0 ;; } { .mlx - alloc r14=ar.pfs,0,0,3,0 + ssm psr.dfh|psr.ac movl gp=__gp ;; } From owner-p4-projects@FreeBSD.ORG Sat Apr 26 00:36:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 46DBF37B404; Sat, 26 Apr 2003 00:36:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0349237B401 for ; Sat, 26 Apr 2003 00:36:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8D17B43FDD for ; Sat, 26 Apr 2003 00:36:50 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q7ao0U095454 for ; Sat, 26 Apr 2003 00:36:50 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q7an2D095448 for perforce@freebsd.org; Sat, 26 Apr 2003 00:36:49 -0700 (PDT) Date: Sat, 26 Apr 2003 00:36:49 -0700 (PDT) Message-Id: <200304260736.h3Q7an2D095448@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29775 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 07:36:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=29775 Change 29775 by jmallett@jmallett_dalek on 2003/04/26 00:36:01 Nop a lot after turning on the FPU so it works. Affected files ... .. //depot/projects/mips/sys/mips/mips/locore.S#2 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/locore.S#2 (text+ko) ==== @@ -80,6 +80,10 @@ mfc0 t0, MIPS_COP_0_STATUS or t0, MIPS_SR_COP_1_BIT mtc0 t0, MIPS_COP_0_STATUS + nop + nop + nop + nop COP0_SYNC # Get the processor ID from coprocessor 0, and the FPU ID from From owner-p4-projects@FreeBSD.ORG Sat Apr 26 00:38:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C215737B404; Sat, 26 Apr 2003 00:38:54 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 73B5237B401 for ; Sat, 26 Apr 2003 00:38:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1E21443FBD for ; Sat, 26 Apr 2003 00:38:54 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3Q7cr0U096305 for ; Sat, 26 Apr 2003 00:38:53 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3Q7crUk096298 for perforce@freebsd.org; Sat, 26 Apr 2003 00:38:53 -0700 (PDT) Date: Sat, 26 Apr 2003 00:38:53 -0700 (PDT) Message-Id: <200304260738.h3Q7crUk096298@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29776 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 07:38:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=29776 Change 29776 by jmallett@jmallett_dalek on 2003/04/26 00:38:10 Copy bit 31 by hand to fix addresses used now that we are -mlong64. This was especially confusing since the IP22 ARCS exception handlers print 32-bit addresses, making it unclear that the bigger kuseg was being used, and dump,etc. only work on 32-bit addresses, so bad addr exceptions had addresses listed which worked just fine. Affected files ... .. //depot/projects/mips/sys/mips/include/cpuregs.h#3 edit Differences ... ==== //depot/projects/mips/sys/mips/include/cpuregs.h#3 (text+ko) ==== @@ -76,9 +76,9 @@ */ #define MIPS_KUSEG_START 0x0 -#define MIPS_KSEG0_START 0x80000000 -#define MIPS_KSEG1_START 0xa0000000 -#define MIPS_KSEG2_START 0xc0000000 +#define MIPS_KSEG0_START 0xffffffff80000000 +#define MIPS_KSEG1_START 0xffffffffa0000000 +#define MIPS_KSEG2_START 0xffffffffc0000000 #define MIPS_MAX_MEM_ADDR 0xbe000000 #define MIPS_RESERVED_ADDR 0xbfc80000 From owner-p4-projects@FreeBSD.ORG Sat Apr 26 05:32:58 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D1C9E37B404; Sat, 26 Apr 2003 05:32:57 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3CF9D37B401 for ; Sat, 26 Apr 2003 05:32:57 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D6BB743F85 for ; Sat, 26 Apr 2003 05:32:56 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QCWu0U020897 for ; Sat, 26 Apr 2003 05:32:56 -0700 (PDT) (envelope-from tzukanov@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QCWu6p020889 for perforce@freebsd.org; Sat, 26 Apr 2003 05:32:56 -0700 (PDT) Date: Sat, 26 Apr 2003 05:32:56 -0700 (PDT) Message-Id: <200304261232.h3QCWu6p020889@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to tzukanov@freebsd.org using -f From: Serguei Tzukanov To: Perforce Change Reviews Subject: PERFORCE change 29790 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 12:32:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=29790 Change 29790 by tzukanov@tzukanov_antares on 2003/04/26 05:32:42 Fix typos. Affected files ... .. //depot/projects/s390/sys/conf/Makefile.s390#4 edit .. //depot/projects/s390/sys/conf/files.s390#5 edit .. //depot/projects/s390/sys/s390/s390/esa.h#3 edit .. //depot/projects/s390/sys/s390/s390/pmap.c#13 edit .. //depot/projects/s390/sys/s390/s390/trap.c#8 edit Differences ... ==== //depot/projects/s390/sys/conf/Makefile.s390#4 (text+ko) ==== @@ -36,7 +36,7 @@ FMT= # Which version of config(8) is required. -%VERSREQ= 500011 +%VERSREQ= 500012 STD8X16FONT?= iso ==== //depot/projects/s390/sys/conf/files.s390#5 (text+ko) ==== @@ -34,6 +34,9 @@ dev/dasd/dasd_if.m optional dasd dev/dasd/dasd.c optional dasd +geom/geom_bsd.c standard +geom/geom_bsd_enc.c standard + libkern/ashldi3.c standard libkern/ashrdi3.c standard libkern/divdi3.c standard ==== //depot/projects/s390/sys/s390/s390/esa.h#3 (text+ko) ==== @@ -20,11 +20,12 @@ void esa_check_features(void); void esa_cpu_model(void); void dat_init(void); -void io_intr(struct trapframe *tf); void css_init(void); void css_init_info(void); - +void io_intr(struct trapframe *tf); void io_intr_entry(struct trapframe *tf); +void pmap_kenter(vm_offset_t va, vm_paddr_t pa); +void pmap_kremove(vm_offset_t va); extern uint8_t esa_sm_per; extern int esa_features; ==== //depot/projects/s390/sys/s390/s390/pmap.c#13 (text+ko) ==== @@ -494,7 +494,7 @@ void pmap_remove_all(vm_page_t m) { - vm_ptepa_t ptepa; + vm_paddr_t ptepa; pv_entry_t pv; pmap_t pmap; pte_t pte; ==== //depot/projects/s390/sys/s390/s390/trap.c#8 (text+ko) ==== @@ -472,7 +472,7 @@ #endif /* Dispose signal for process. */ - trapsignal(tf, signo, sigcode); + trapsignal(td, signo, sigcode); user: userret(td, tf, sticks); From owner-p4-projects@FreeBSD.ORG Sat Apr 26 10:34:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 21EE237B404; Sat, 26 Apr 2003 10:34:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B170D37B401 for ; Sat, 26 Apr 2003 10:34:05 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5968843F3F for ; Sat, 26 Apr 2003 10:34:05 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QHY50U045612 for ; Sat, 26 Apr 2003 10:34:05 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QHY40C045604 for perforce@freebsd.org; Sat, 26 Apr 2003 10:34:04 -0700 (PDT) Date: Sat, 26 Apr 2003 10:34:04 -0700 (PDT) Message-Id: <200304261734.h3QHY40C045604@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29799 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 17:34:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=29799 Change 29799 by jmallett@jmallett_dalek on 2003/04/26 10:33:50 Look like a real early console. Affected files ... .. //depot/projects/mips/sys/dev/arcbios/arcbios.c#5 edit Differences ... ==== //depot/projects/mips/sys/dev/arcbios/arcbios.c#5 (text+ko) ==== @@ -36,11 +36,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include - #include - #include +#include #include #include @@ -63,23 +61,8 @@ void arcbios_fetch_system_identifier(struct arcbios_component *, struct arcbios_treewalk_context *); -#define CDEV_MAJOR 97 - -struct consdev arcbios_cn = { - NULL /* Probe */, - NULL /* Init */, - NULL /* Term */, - arcbios_cngetc /* getc */, - NULL /* checkc */, - arcbios_cnputc /* putc */, - NULL /* dbctl */, - NULL /* tty */, - NODEV /* cn_dev */, - CN_NORMAL /* priority */ -}; +CONS_DRIVER(arcbios, NULL, NULL, NULL, arcbios_cngetc, NULL, arcbios_cnputc, NULL); -extern const struct cdevsw arcbios_cdevsw; - /* * arcbios_init: * @@ -106,11 +89,6 @@ /* Initialize our pointer to the firmware vector. */ ARCBIOS = ARCBIOS_SPB->FirmwareVector; - arcbios_cn.cn_dev = makedev(CDEV_MAJOR, 0); - - /* Initialize the bootstrap console. */ - cn_tab = &arcbios_cn; - /* * Fetch the system ID. */ From owner-p4-projects@FreeBSD.ORG Sat Apr 26 11:25:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A74CB37B404; Sat, 26 Apr 2003 11:25:08 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 56B5F37B401 for ; Sat, 26 Apr 2003 11:25:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E142443F85 for ; Sat, 26 Apr 2003 11:25:07 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QIP70U082939 for ; Sat, 26 Apr 2003 11:25:07 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QIP7Hf082929 for perforce@freebsd.org; Sat, 26 Apr 2003 11:25:07 -0700 (PDT) Date: Sat, 26 Apr 2003 11:25:07 -0700 (PDT) Message-Id: <200304261825.h3QIP7Hf082929@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29801 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 18:25:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=29801 Change 29801 by jmallett@jmallett_dalek on 2003/04/26 11:24:58 Convert to use ArcPointer_t for at least the stuff we pull from memory, and access everything by way of KSEG1. The pointers I get back, at least on IP22, are in KSEG1, but 32-bit, and something is preserving bit values rather than extending to fill the top 64-bits. This hacks around that. Probably all of these things will become macros/typedefs. Affected files ... .. //depot/projects/mips/sys/dev/arcbios/arcbios.c#6 edit .. //depot/projects/mips/sys/dev/arcbios/arcbios.h#3 edit .. //depot/projects/mips/sys/dev/arcbios/arcbiosvar.h#3 edit Differences ... ==== //depot/projects/mips/sys/dev/arcbios/arcbios.c#6 (text+ko) ==== @@ -45,8 +45,12 @@ #include #include +#include + const struct arcbios_spb *ARCBIOS_SPB; -const struct arcbios_fv *ARCBIOS; +const struct arcbios_fv *ARCBIOS_FV; +struct arcbios ARCBIOS_Vector; +struct arcbios *ARCBIOS = &ARCBIOS_Vector; char arcbios_sysid_vendor[ARCBIOS_SYSID_FIELDLEN + 1]; char arcbios_sysid_product[ARCBIOS_SYSID_FIELDLEN + 1]; @@ -58,6 +62,7 @@ static cn_getc_t arcbios_cngetc; static cn_putc_t arcbios_cnputc; +static void arcbios_fill_vector(struct arcbios *, const struct arcbios_fv *); void arcbios_fetch_system_identifier(struct arcbios_component *, struct arcbios_treewalk_context *); @@ -87,7 +92,8 @@ } /* Initialize our pointer to the firmware vector. */ - ARCBIOS = ARCBIOS_SPB->FirmwareVector; + ARCBIOS_FV = (struct arcbios_fv *) MIPS_PHYS_TO_KSEG1(ARCBIOS_SPB->FirmwareVector); + arcbios_fill_vector(ARCBIOS, ARCBIOS_FV); /* * Fetch the system ID. @@ -130,6 +136,60 @@ } } +static void +arcbios_fill_vector(struct arcbios *A, const struct arcbios_fv *V) +{ +#define ARCSET(Func) A->Func = (void (*)(void))(int) V->Func + ARCSET(Load); + ARCSET(Invoke); + ARCSET(Execute); + ARCSET(Halt); + ARCSET(PowerDown); + ARCSET(Restart); + ARCSET(Reboot); + ARCSET(EnterInteractiveMode); +#if defined(sgimips) + ARCSET(reserved0); +#else + ARCSET(ReturnFromMain); +#endif + ARCSET(GetPeer); + ARCSET(GetChild); + ARCSET(GetParent); + ARCSET(GetConfigurationData); + ARCSET(AddChild); + ARCSET(DeleteComponent); + ARCSET(GetComponent); + ARCSET(SaveConfiguration); + ARCSET(GetSystemId); + ARCSET(GetMemoryDescriptor); +#if defined(sgimips) + ARCSET(reserved1); +#else + ARCSET(Signal); +#endif + ARCSET(GetTime); + ARCSET(GetRelativeTime); + ARCSET(GetDirectoryEntry); + ARCSET(Open); + ARCSET(Close); + ARCSET(Read); + ARCSET(GetReadStatus); + ARCSET(Write); + ARCSET(Seek); + ARCSET(Mount); + ARCSET(GetEnvironmentVariable); + ARCSET(SetEnvironmentVariable); + ARCSET(GetFileInformation); + ARCSET(SetFileInformation); + ARCSET(FlushAllCaches); +#if !defined(sgimips) + ARCSET(TestUnicode); + ARCSET(GetDisplayStatus); +#endif +#undef ARCSET +} + /**************************************************************************** * ARC component tree walking routines. ****************************************************************************/ @@ -170,7 +230,7 @@ dstsize--; if (dstsize > node->IdentifierLength) dstsize = node->IdentifierLength; - memcpy(dst, node->Identifier, dstsize); + memcpy(dst, MIPS_PHYS_TO_KSEG1(node->Identifier), dstsize); dst[dstsize] = '\0'; } ==== //depot/projects/mips/sys/dev/arcbios/arcbios.h#3 (text+ko) ==== @@ -78,6 +78,8 @@ #define ARCBIOS_ENOCONNECT 34 /* not connected */ #endif /* sgimips */ +typedef uint32_t ArcPointer_t;/* XXX */ + /* * 4.2.2: System Parameter Block */ @@ -86,18 +88,18 @@ uint32_t SPBLength; uint16_t Version; uint16_t Revision; - void *RestartBlock; - void *DebugBlock; - void *GEVector; - void *UTLBMissVector; + ArcPointer_t RestartBlock; + ArcPointer_t DebugBlock; + ArcPointer_t GEVector; + ArcPointer_t UTLBMissVector; uint32_t FirmwareVectorLength; - void *FirmwareVector; + ArcPointer_t FirmwareVector; uint32_t PrivateVectorLength; - void *PrivateVector; + ArcPointer_t PrivateVector; uint32_t AdapterCount; uint32_t AdapterType; uint32_t AdapterVectorLength; - void *AdapterVector; + ArcPointer_t AdapterVector; }; #define ARCBIOS_SPB_SIGNATURE 0x53435241 /* A R C S */ @@ -116,7 +118,7 @@ uint32_t AffinityMask; uint32_t ConfigurationDataSize; uint32_t IdentifierLength; - char *Identifier; + ArcPointer_t Identifier; }; /* @@ -321,9 +323,9 @@ }; /* - * ARC firmware vector + * ARC firmware vector, and the API we present. */ -struct arcbios_fv { +struct arcbios { uint32_t (*Load)( char *, /* image to load */ uint32_t, /* top address */ @@ -467,3 +469,53 @@ uint32_t); /* file ID */ #endif }; + +struct arcbios_fv { + ArcPointer_t Load; + ArcPointer_t Invoke; + ArcPointer_t Execute; + ArcPointer_t Halt; + ArcPointer_t PowerDown; + ArcPointer_t Restart; + ArcPointer_t Reboot; + ArcPointer_t EnterInteractiveMode; +#if defined(sgimips) + ArcPointer_t reserved0; +#else + ArcPointer_t ReturnFromMain; +#endif + ArcPointer_t GetPeer; + ArcPointer_t GetChild; + ArcPointer_t GetParent; + ArcPointer_t GetConfigurationData; + ArcPointer_t AddChild; + ArcPointer_t DeleteComponent; + ArcPointer_t GetComponent; + ArcPointer_t SaveConfiguration; + ArcPointer_t GetSystemId; + ArcPointer_t GetMemoryDescriptor; +#if defined(sgimips) + ArcPointer_t reserved1; +#else + ArcPointer_t Signal; +#endif + ArcPointer_t GetTime; + ArcPointer_t GetRelativeTime; + ArcPointer_t GetDirectoryEntry; + ArcPointer_t Open; + ArcPointer_t Close; + ArcPointer_t Read; + ArcPointer_t GetReadStatus; + ArcPointer_t Write; + ArcPointer_t Seek; + ArcPointer_t Mount; + ArcPointer_t GetEnvironmentVariable; + ArcPointer_t SetEnvironmentVariable; + ArcPointer_t GetFileInformation; + ArcPointer_t SetFileInformation; + ArcPointer_t FlushAllCaches; +#if !defined(sgimips) + ArcPointer_t TestUnicode; + ArcPointer_t GetDisplayStatus; +#endif +}; ==== //depot/projects/mips/sys/dev/arcbios/arcbiosvar.h#3 (text+ko) ==== @@ -47,7 +47,8 @@ }; extern const struct arcbios_spb *ARCBIOS_SPB; -extern const struct arcbios_fv *ARCBIOS; +extern const struct arcbios_fv *ARCBIOS_FV; +extern struct arcbios *ARCBIOS; extern char arcbios_sysid_vendor[]; extern char arcbios_sysid_product[]; From owner-p4-projects@FreeBSD.ORG Sat Apr 26 11:55:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 29DAB37B404; Sat, 26 Apr 2003 11:55:48 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CF4D037B401 for ; Sat, 26 Apr 2003 11:55:47 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 77E4443FAF for ; Sat, 26 Apr 2003 11:55:47 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QItl0U005200 for ; Sat, 26 Apr 2003 11:55:47 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QItkQS005189 for perforce@freebsd.org; Sat, 26 Apr 2003 11:55:46 -0700 (PDT) Date: Sat, 26 Apr 2003 11:55:46 -0700 (PDT) Message-Id: <200304261855.h3QItkQS005189@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29804 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 18:55:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=29804 Change 29804 by jmallett@jmallett_dalek on 2003/04/26 11:55:29 Function to attach a bootstrap console off of ARCS. Affected files ... .. //depot/projects/mips/sys/dev/arcbios/arcbios.c#7 edit .. //depot/projects/mips/sys/dev/arcbios/arcbiosvar.h#4 edit Differences ... ==== //depot/projects/mips/sys/dev/arcbios/arcbios.c#7 (text+ko) ==== @@ -57,8 +57,6 @@ char arcbios_system_identifier[64 + 1]; -struct consdev *cn_tab; - static cn_getc_t arcbios_cngetc; static cn_putc_t arcbios_cnputc; @@ -66,6 +64,7 @@ void arcbios_fetch_system_identifier(struct arcbios_component *, struct arcbios_treewalk_context *); +extern struct cdevsw arcbios_cdevsw; CONS_DRIVER(arcbios, NULL, NULL, NULL, arcbios_cngetc, NULL, arcbios_cnputc, NULL); /* @@ -238,6 +237,16 @@ * Bootstrap console routines. ****************************************************************************/ +void +arcbios_cnattach(void) +{ + arcbios_consdev.cn_pri = CN_NORMAL; + arcbios_consdev.cn_dev = makedev(MAJOR_AUTO, 0); + make_dev(&arcbios_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600, "arccons"); + cnadd(&arcbios_consdev); + return (0); +} + int arcbios_cngetc(struct consdev *cdev) { ==== //depot/projects/mips/sys/dev/arcbios/arcbiosvar.h#4 (text+ko) ==== @@ -62,4 +62,6 @@ void arcbios_component_id_copy(struct arcbios_component *, char *, size_t); +void arcbios_cnattach(void); + #endif /* _KERNEL */ From owner-p4-projects@FreeBSD.ORG Sat Apr 26 11:58:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8FF7937B404; Sat, 26 Apr 2003 11:58:52 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2D67437B401 for ; Sat, 26 Apr 2003 11:58:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CDB8F43F93 for ; Sat, 26 Apr 2003 11:58:51 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QIwp0U006858 for ; Sat, 26 Apr 2003 11:58:51 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QIwpEq006853 for perforce@freebsd.org; Sat, 26 Apr 2003 11:58:51 -0700 (PDT) Date: Sat, 26 Apr 2003 11:58:51 -0700 (PDT) Message-Id: <200304261858.h3QIwpEq006853@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29805 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 18:58:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=29805 Change 29805 by jmallett@jmallett_dalek on 2003/04/26 11:58:28 Reset when we fall off the bottom. Slap the console on after ARCS is initialised. Access ARCS through KSEG1. Affected files ... .. //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#6 edit Differences ... ==== //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#6 (text+ko) ==== @@ -32,6 +32,7 @@ #include #include #include +#include #include #include @@ -55,6 +56,8 @@ /* * Initialise the ARCBIOS stuff. */ - arcbios_init(MIPS_PHYS_TO_KSEG0(0x00001000)); + arcbios_init(MIPS_PHYS_TO_KSEG1(0x00001000)); + arcbios_cnattach(); printf("See MIPS Run\n"); + cpu_reset(); } From owner-p4-projects@FreeBSD.ORG Sat Apr 26 12:16:15 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E52EC37B404; Sat, 26 Apr 2003 12:16:14 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7DF4C37B401 for ; Sat, 26 Apr 2003 12:16:14 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0925043F3F for ; Sat, 26 Apr 2003 12:16:14 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QJGD0U020231 for ; Sat, 26 Apr 2003 12:16:13 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QJGDe8020223 for perforce@freebsd.org; Sat, 26 Apr 2003 12:16:13 -0700 (PDT) Date: Sat, 26 Apr 2003 12:16:13 -0700 (PDT) Message-Id: <200304261916.h3QJGDe8020223@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29807 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 19:16:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=29807 Change 29807 by jmallett@jmallett_dalek on 2003/04/26 12:16:00 Stubbed out support for multiple models, IP22 in particular, as it's what I'm working on. Affected files ... .. //depot/projects/mips/sys/conf/options.mips#8 edit .. //depot/projects/mips/sys/mips/conf/GENERIC#11 edit .. //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#7 edit Differences ... ==== //depot/projects/mips/sys/conf/options.mips#8 (text+ko) ==== @@ -1,6 +1,8 @@ # $FreeBSD$ # Options specific to the mips platform kernels +IP22 opt_model.h + R4000 opt_global.h R4400 opt_global.h R10000 opt_global.h ==== //depot/projects/mips/sys/mips/conf/GENERIC#11 (text+ko) ==== @@ -15,6 +15,7 @@ # Platform support platform sgimips #SGI MIPS systems. +options IP22 #IP22 (Indy, Indigo2, ...) # Hardware support device arcbios #ARCBIOS ==== //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#7 (text+ko) ==== @@ -26,7 +26,7 @@ * $FreeBSD$ */ -#include +#include #include #include @@ -37,6 +37,18 @@ #include #include +#include "opt_model.h" + +static void ip22_init(void); + +struct machine_type { + const char *identifier; + void (*init)(void); +} machines[] = { + { "SGI-IP22", ip22_init }, + { NULL, NULL } +}; + void platform_halt(void) { @@ -52,6 +64,8 @@ void platform_start(int argc, char **argv) { + struct machine_type *mtp; + const char *cpufreq; /* * Initialise the ARCBIOS stuff. @@ -59,5 +73,31 @@ arcbios_init(MIPS_PHYS_TO_KSEG1(0x00001000)); arcbios_cnattach(); printf("See MIPS Run\n"); + + cpufreq = ARCBIOS->GetEnvironmentVariable("cpufreq"); + if (cpufreq == NULL) + panic("$cpufreq not set"); + + printf("%s at %sMHz\n", arcbios_system_identifier, cpufreq); + + for (mtp = machines; mtp->identifier != NULL; mtp++) { + if (strcmp(mtp->identifier, arcbios_system_identifier) == 0) + break; + } + if (mtp->identifier == NULL) + printf("Warning: unsupported system, nothing will work.\n"); + else + (*mtp->init)(); + cpu_reset(); } + +static void +ip22_init(void) +{ +#ifdef IP22 + ; +#else + printf("Warning: IP22 support not compiled in.\n"); +#endif +} From owner-p4-projects@FreeBSD.ORG Sat Apr 26 12:53:01 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9798137B404; Sat, 26 Apr 2003 12:53:00 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 49F3337B401 for ; Sat, 26 Apr 2003 12:53:00 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E608A43FA3 for ; Sat, 26 Apr 2003 12:52:59 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QJqx0U051334 for ; Sat, 26 Apr 2003 12:52:59 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QJqxEX051324 for perforce@freebsd.org; Sat, 26 Apr 2003 12:52:59 -0700 (PDT) Date: Sat, 26 Apr 2003 12:52:59 -0700 (PDT) Message-Id: <200304261952.h3QJqxEX051324@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 Subject: PERFORCE change 29809 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 19:53:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=29809 Change 29809 by marcel@marcel_nfs on 2003/04/26 12:52:49 Delay restoring the stack pointer until after we're done with the trapframe and in this case after the loadrs. We had a nice "window of pain" in which an exception would clobber the stack because we already set the stack pointer to that of the process. Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#12 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#12 (text+ko) ==== @@ -406,19 +406,19 @@ { .mmi ld8 r19=[r15],16 // pr ld8 r20=[r14],16 // pfs (syscall stub) - mov sp=r16 + mov b6=r18 ;; } { .mmi ld8 r21=[r15],24 // bspstore ld8 r22=[r14],24 // rnat - mov b6=r18 + mov pr=r19,0x1fffe ;; } -{ .mmi +{ .mmb ld8 r23=[r15],16 // tp ld8 r24=[r14],16 // rsc - mov pr=r19,0x1fffe + nop 0 ;; } { .mmi @@ -427,7 +427,7 @@ mov ar.pfs=r20 ;; } -{ .mmi +{ .mmb ld8 gp=[r15],16 // gp ld8 r27=[r14],16 // ndirty nop 0 @@ -439,7 +439,7 @@ shl r27=r27,16 ;; } -{ .mmi +{ .mmb ld8 r8=[r15],16 // r8 mov ar.rsc=r27 nop 0 @@ -448,13 +448,13 @@ { .mmi ld8 r9=[r14] // r9 ld8 r10=[r15] // r10 - nop 0 + dep r26=-1,r26,19,1 // Set psr.dfh ;; } { .mmi loadrs mov r14=ar.k5 - dep r26=-1,r26,19,1 // Set psr.dfh + mov sp=r16 ;; } { .mmi From owner-p4-projects@FreeBSD.ORG Sat Apr 26 12:59:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4F05737B404; Sat, 26 Apr 2003 12:59:09 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DFC1837B401 for ; Sat, 26 Apr 2003 12:59:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 377F243FB1 for ; Sat, 26 Apr 2003 12:59:08 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QJx70U055693 for ; Sat, 26 Apr 2003 12:59:07 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QJx7fp055687 for perforce@freebsd.org; Sat, 26 Apr 2003 12:59:07 -0700 (PDT) Date: Sat, 26 Apr 2003 12:59:07 -0700 (PDT) Message-Id: <200304261959.h3QJx7fp055687@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 Subject: PERFORCE change 29810 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 19:59:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=29810 Change 29810 by marcel@marcel_nfs on 2003/04/26 12:58:17 ntpd(8) has an unaligned memory reference, but we're not yet fixing it up, as it may involve unwinding and the likes. Give a SIGBUS instead of panicing :-) Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#15 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#15 (text+ko) ==== @@ -335,9 +335,8 @@ struct proc *p; struct thread *td; u_int64_t ucode; - int i; + int i, user; u_int sticks; - int user; user = ((framep->tf_special.psr & IA64_PSR_CPL) == IA64_PSR_CPL_USER); @@ -376,17 +375,19 @@ * signalling is appropriate (based on system-wide * and per-process unaligned-access-handling flags). */ -#if 0 if (user) { +#if NOTYET mtx_lock(&Giant); i = unaligned_fixup(framep, td); mtx_unlock(&Giant); if (i == 0) goto out; +#else + i = SIGBUS; +#endif ucode = framep->tf_special.ifa; /* VA */ break; } -#endif /* * Unaligned access from kernel mode is always an error, From owner-p4-projects@FreeBSD.ORG Sat Apr 26 13:31:49 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 75EBF37B404; Sat, 26 Apr 2003 13:31:49 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2656937B401 for ; Sat, 26 Apr 2003 13:31:49 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C66E443FCB for ; Sat, 26 Apr 2003 13:31:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QKVm0U079869 for ; Sat, 26 Apr 2003 13:31:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QKVmk5079862 for perforce@freebsd.org; Sat, 26 Apr 2003 13:31:48 -0700 (PDT) Date: Sat, 26 Apr 2003 13:31:48 -0700 (PDT) Message-Id: <200304262031.h3QKVmk5079862@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 Subject: PERFORCE change 29812 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 20:31:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=29812 Change 29812 by marcel@marcel_nfs on 2003/04/26 13:31:38 - COMPAT_FREEBSD4 + INET6 Add device ehci. We have one... Affected files ... .. //depot/projects/ia64/sys/ia64/conf/HP_RX2600#9 edit Differences ... ==== //depot/projects/ia64/sys/ia64/conf/HP_RX2600#9 (text+ko) ==== @@ -8,11 +8,10 @@ options ATA_STATIC_ID options CD9660 options COMPAT_43 -options COMPAT_FREEBSD4 options DDB options FFS options INET -#options INET6 +options INET6 options KTRACE options MSDOSFS options NFS_ROOT @@ -36,6 +35,7 @@ device atapicd device bpf device da +device ehci device ether device fxp device bge From owner-p4-projects@FreeBSD.ORG Sat Apr 26 14:25:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2359637B404; Sat, 26 Apr 2003 14:25:36 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C904E37B401 for ; Sat, 26 Apr 2003 14:25:35 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5CC7A43F3F for ; Sat, 26 Apr 2003 14:25:35 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QLPZ0U019618 for ; Sat, 26 Apr 2003 14:25:35 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QLPYI0019609 for perforce@freebsd.org; Sat, 26 Apr 2003 14:25:34 -0700 (PDT) Date: Sat, 26 Apr 2003 14:25:34 -0700 (PDT) Message-Id: <200304262125.h3QLPYI0019609@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to obrien@freebsd.org using -f From: "David E. O'Brien" To: Perforce Change Reviews Subject: PERFORCE change 29816 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 21:25:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=29816 Change 29816 by obrien@obrien_trang on 2003/04/26 14:24:33 amd64 uses the i386 sys/boot code for now, to get thru a buildworld. Affected files ... .. //depot/projects/hammer/sys/boot/Makefile#3 edit Differences ... ==== //depot/projects/hammer/sys/boot/Makefile#3 (text+ko) ==== @@ -1,5 +1,10 @@ # $FreeBSD: src/sys/boot/Makefile,v 1.15 2003/02/13 04:35:04 benno Exp $ +.if ${MACHINE_ARCH} == "amd64" +MACHINE_ARCH=i386 +MACHINE=i386 +.endif + .if !defined(NOFORTH) # Build the add-in FORTH interpreter SUBDIR+= ficl From owner-p4-projects@FreeBSD.ORG Sat Apr 26 14:51:10 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1B2FE37B407; Sat, 26 Apr 2003 14:51:10 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C166737B401 for ; Sat, 26 Apr 2003 14:51:09 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 580A343FAF for ; Sat, 26 Apr 2003 14:51:09 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QLp90U037647 for ; Sat, 26 Apr 2003 14:51:09 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QLp8TF037636 for perforce@freebsd.org; Sat, 26 Apr 2003 14:51:08 -0700 (PDT) Date: Sat, 26 Apr 2003 14:51:08 -0700 (PDT) Message-Id: <200304262151.h3QLp8TF037636@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29820 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 21:51:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=29820 Change 29820 by jmallett@jmallett_dalek on 2003/04/26 14:50:23 Correct end label to match entry label. Affected files ... .. //depot/projects/mips/sys/mips/mips/support.S#7 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/support.S#7 (text+ko) ==== @@ -261,7 +261,7 @@ ENTRY(copystr) jr ra nop -END(copyout) +END(copystr) /* * copyinstr(9) From owner-p4-projects@FreeBSD.ORG Sat Apr 26 14:55:19 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5A0BE37B401; Sat, 26 Apr 2003 14:55:18 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0A01137B404 for ; Sat, 26 Apr 2003 14:55:18 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E5F5143FBF for ; Sat, 26 Apr 2003 14:55:16 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QLtG0U042058 for ; Sat, 26 Apr 2003 14:55:16 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QLtFEi042044 for perforce@freebsd.org; Sat, 26 Apr 2003 14:55:15 -0700 (PDT) Date: Sat, 26 Apr 2003 14:55:15 -0700 (PDT) Message-Id: <200304262155.h3QLtFEi042044@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to obrien@freebsd.org using -f From: "David E. O'Brien" To: Perforce Change Reviews Subject: PERFORCE change 29823 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 21:55:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=29823 Change 29823 by obrien@obrien_trang on 2003/04/26 14:55:03 MFC the amd64 toolchain changes. Affected files ... .. //depot/projects/hammer/contrib/gcc/config/i386/freebsd.h#4 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/freebsd64.h#2 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/i386.h#5 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile#1 branch .. //depot/projects/hammer/gnu/usr.bin/binutils/as/amd64-freebsd/config.h#1 branch .. //depot/projects/hammer/gnu/usr.bin/binutils/as/amd64-freebsd/itbl-cpu.h#1 branch .. //depot/projects/hammer/gnu/usr.bin/binutils/as/amd64-freebsd/targ-cpu.h#1 branch .. //depot/projects/hammer/gnu/usr.bin/binutils/as/x86-64-freebsd/Makefile#2 delete .. //depot/projects/hammer/gnu/usr.bin/binutils/as/x86-64-freebsd/config.h#4 delete .. //depot/projects/hammer/gnu/usr.bin/binutils/as/x86-64-freebsd/itbl-cpu.h#2 delete .. //depot/projects/hammer/gnu/usr.bin/binutils/as/x86-64-freebsd/targ-cpu.h#2 delete .. //depot/projects/hammer/gnu/usr.bin/binutils/ld/Makefile.amd64#1 branch .. //depot/projects/hammer/gnu/usr.bin/binutils/ld/Makefile.x86-64#2 delete .. //depot/projects/hammer/gnu/usr.bin/binutils/libbfd/Makefile#5 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/libbfd/Makefile.amd64#1 branch .. //depot/projects/hammer/gnu/usr.bin/binutils/libbfd/Makefile.x86-64#3 delete .. //depot/projects/hammer/gnu/usr.bin/binutils/libbfd/amd64/bfd.h#1 branch .. //depot/projects/hammer/gnu/usr.bin/binutils/libbfd/elf-fbsd-brand.c#1 branch .. //depot/projects/hammer/gnu/usr.bin/binutils/libbfd/x86-64/bfd.h#3 delete .. //depot/projects/hammer/gnu/usr.bin/cc/Makefile.tgt#4 integrate .. //depot/projects/hammer/gnu/usr.bin/cc/cc_tools/Makefile#4 integrate .. //depot/projects/hammer/gnu/usr.bin/cc/cc_tools/auto-host.h#6 integrate .. //depot/projects/hammer/gnu/usr.bin/cc/include/Makefile#4 integrate Differences ... ==== //depot/projects/hammer/contrib/gcc/config/i386/freebsd.h#4 (text+ko) ==== @@ -22,12 +22,10 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.60 2003/04/13 01:04:01 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.61 2003/04/26 19:16:54 obrien Exp $ */ #undef CC1_SPEC -#define CC1_SPEC "%(cc1_cpu) %{profile:-p} \ - %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \ - " +#define CC1_SPEC "%(cc1_cpu) %{profile:-p}" #undef ASM_SPEC #define ASM_SPEC "%{v*: -v}" ==== //depot/projects/hammer/contrib/gcc/config/i386/freebsd64.h#2 (text+ko) ==== @@ -19,7 +19,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/i386/freebsd64.h,v 1.2 2002/06/21 22:54:24 obrien Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/freebsd64.h,v 1.4 2003/04/26 19:20:25 obrien Exp $ */ #undef TARGET_VERSION @@ -29,20 +29,9 @@ This is a copy of LINK_SPEC from tweaked for the x86-64 target. */ -#undef CC1_SPEC -#define CC1_SPEC "%(cc1_cpu) %{profile:-p} \ - %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \ - %{maout: %{!mno-underscores: %{!munderscores: -munderscores }}}" - -#undef ASM_SPEC -#define ASM_SPEC "%{v*: -v} %{maout: %{fpic:-k} %{fPIC:-k}} \ - %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} \ - %{Wa,*:%*} %{m32:--32}" - #undef LINK_SPEC #define LINK_SPEC "\ - %{!m32:-m elf_x86_64} \ - %{m32:-m elf_i386} \ + %{m32:-m elf_i386_fbsd -Y P,/usr/lib/i386} \ %{Wl,*:%*} \ %{v:-V} \ %{assert*} %{R*} %{rpath*} %{defsym*} \ ==== //depot/projects/hammer/contrib/gcc/config/i386/i386.h#5 (text+ko) ==== @@ -35,7 +35,7 @@ that start with ASM_ or end in ASM_OP. */ -/* $FreeBSD: src/contrib/gcc/config/i386/i386.h,v 1.15 2003/02/10 06:05:16 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/i386.h,v 1.16 2003/04/26 20:04:37 obrien Exp $ */ /* Stubs for half-pic support if not OSF/1 reference platform. */ @@ -585,7 +585,7 @@ -D__i386__ %(cpp_cpu32sizet)" #define CPP_CPU64_SPEC \ - "-Acpu=x86_64 -Amachine=x86_64 -D__x86_64 -D__x86_64__ %(cpp_cpu64sizet)" + "-Acpu=x86_64 -Amachine=x86_64 -D__x86_64 -D__x86_64__ %(cpp_cpu64sizet) -D__amd64__ -D__AMD64__" #define CPP_CPUCOMMON_SPEC "\ %{march=i386:%{!mcpu*:-D__tune_i386__ }}\ ==== //depot/projects/hammer/gnu/usr.bin/binutils/libbfd/Makefile#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile,v 1.23 2002/12/02 09:53:59 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile,v 1.24 2003/04/26 03:28:21 obrien Exp $ .include "../Makefile.inc0" @@ -20,7 +20,9 @@ CLEANFILES+= config.h targmatch.h SELARCH= -.if ${TARGET_ARCH} == "sparc64" +.if ${TARGET_ARCH} == "amd64" +SELARCH= &bfd_i386_arch +.elif ${TARGET_ARCH} == "sparc64" SELARCH= &bfd_sparc_arch .else .for _a in ${ARCHS} ==== //depot/projects/hammer/gnu/usr.bin/cc/Makefile.tgt#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/cc/Makefile.tgt,v 1.6 2002/11/06 07:00:59 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/Makefile.tgt,v 1.7 2003/04/26 20:04:37 obrien Exp $ TARGET_ARCH?= ${MACHINE_ARCH} @@ -6,7 +6,7 @@ GCC_CPU= alpha .elif ${TARGET_ARCH} == "arm" GCC_CPU= arm -.elif ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.elif ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" GCC_CPU= i386 .elif ${TARGET_ARCH} == "ia64" GCC_CPU= ia64 ==== //depot/projects/hammer/gnu/usr.bin/cc/cc_tools/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/cc/cc_tools/Makefile,v 1.66 2002/10/10 04:56:35 kan Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/cc_tools/Makefile,v 1.67 2003/04/26 20:04:37 obrien Exp $ # # This could probably be merged with ../cc_int/Makefile, but bsd.lib.mk @@ -148,7 +148,7 @@ .endif echo '#include "ansidecl.h"' >> ${.TARGET} echo '#include "${GCC_CPU}/${GCC_CPU}.h"' >> ${.TARGET} -.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" echo '#include "${GCC_CPU}/att.h"' >> ${.TARGET} .endif .if ${TARGET_ARCH} != "alpha" @@ -161,14 +161,14 @@ .if ${TARGET_ARCH} == "alpha" echo '#include "${GCC_CPU}/elf.h"' >> ${.TARGET} .endif -.if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "x86_64" +.if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "amd64" .if exists(${GCCDIR}/config/${GCC_CPU}/sysv4.h) echo '#include "${GCC_CPU}/sysv4.h"' >> ${.TARGET} .endif .endif echo '#include "${GCC_CPU}/freebsd.h"' >> ${.TARGET} -.if ${TARGET_ARCH} == "x86_64" - echo '#include "${GCC_CPU}/${TARGET_ARCH:S/_/-/}.h"' >> ${.TARGET} +.if ${TARGET_ARCH} == "amd64" + echo '#include "${GCC_CPU}/x86-64.h"' >> ${.TARGET} echo '#include "${GCC_CPU}/freebsd64.h"' >> ${.TARGET} .endif echo '#include "defaults.h"' >> ${.TARGET} ==== //depot/projects/hammer/gnu/usr.bin/cc/cc_tools/auto-host.h#6 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/auto-host.h,v 1.12 2002/11/26 18:25:18 obrien Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/auto-host.h,v 1.13 2003/04/26 20:04:37 obrien Exp $ */ #include @@ -338,7 +338,7 @@ /* #define SIZEOF_LONG 4 */ #if defined(__i386__) || defined(__powerpc__) || defined(__strongarm__) #define SIZEOF_LONG SIZEOF_INT -#elif defined(__alpha__) || defined(__sparc64__) || defined(__ia64__) || defined(__x86_64__) +#elif defined(__alpha__) || defined(__sparc64__) || defined(__ia64__) || defined(__amd64__) #define SIZEOF_LONG SIZEOF_LONG_LONG #else #error "I don't know what arch this is." ==== //depot/projects/hammer/gnu/usr.bin/cc/include/Makefile#4 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/gnu/usr.bin/cc/include/Makefile,v 1.4 2003/04/01 12:37:54 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/include/Makefile,v 1.5 2003/04/26 20:04:38 obrien Exp $ .include "../Makefile.inc" .PATH: ${GCCDIR}/config/${GCC_CPU} -.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" INCS= mmintrin.h xmmintrin.h .elif ${TARGET_ARCH} == "ia64" INCS= ia64intrin.h From owner-p4-projects@FreeBSD.ORG Sat Apr 26 14:55:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DA75037B407; Sat, 26 Apr 2003 14:55:18 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1E14837B405 for ; Sat, 26 Apr 2003 14:55:18 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D3E2843FB1 for ; Sat, 26 Apr 2003 14:55:15 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QLtF0U042038 for ; Sat, 26 Apr 2003 14:55:15 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QLtEVF042015 for perforce@freebsd.org; Sat, 26 Apr 2003 14:55:14 -0700 (PDT) Date: Sat, 26 Apr 2003 14:55:14 -0700 (PDT) Message-Id: <200304262155.h3QLtEVF042015@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 Subject: PERFORCE change 29822 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 21:55:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=29822 Change 29822 by marcel@marcel_pluto1 on 2003/04/26 14:54:14 IFC @29819 Affected files ... .. //depot/projects/ia64/bin/ls/ls.c#16 integrate .. //depot/projects/ia64/contrib/gcc/config/i386/freebsd.h#15 integrate .. //depot/projects/ia64/contrib/gcc/config/i386/freebsd64.h#3 integrate .. //depot/projects/ia64/contrib/gcc/config/i386/i386.h#10 integrate .. //depot/projects/ia64/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile#1 branch .. //depot/projects/ia64/gnu/usr.bin/binutils/as/amd64-freebsd/config.h#1 branch .. //depot/projects/ia64/gnu/usr.bin/binutils/as/amd64-freebsd/itbl-cpu.h#1 branch .. //depot/projects/ia64/gnu/usr.bin/binutils/as/amd64-freebsd/targ-cpu.h#1 branch .. //depot/projects/ia64/gnu/usr.bin/binutils/as/x86-64-freebsd/Makefile#2 delete .. //depot/projects/ia64/gnu/usr.bin/binutils/as/x86-64-freebsd/config.h#4 delete .. //depot/projects/ia64/gnu/usr.bin/binutils/as/x86-64-freebsd/itbl-cpu.h#2 delete .. //depot/projects/ia64/gnu/usr.bin/binutils/as/x86-64-freebsd/targ-cpu.h#2 delete .. //depot/projects/ia64/gnu/usr.bin/binutils/ld/Makefile.amd64#1 branch .. //depot/projects/ia64/gnu/usr.bin/binutils/ld/Makefile.x86-64#2 delete .. //depot/projects/ia64/gnu/usr.bin/binutils/libbfd/Makefile#9 integrate .. //depot/projects/ia64/gnu/usr.bin/binutils/libbfd/Makefile.amd64#1 branch .. //depot/projects/ia64/gnu/usr.bin/binutils/libbfd/Makefile.x86-64#3 delete .. //depot/projects/ia64/gnu/usr.bin/binutils/libbfd/amd64/bfd.h#1 branch .. //depot/projects/ia64/gnu/usr.bin/binutils/libbfd/elf-fbsd-brand.c#1 branch .. //depot/projects/ia64/gnu/usr.bin/binutils/libbfd/x86-64/bfd.h#3 delete .. //depot/projects/ia64/gnu/usr.bin/cc/Makefile.tgt#8 integrate .. //depot/projects/ia64/gnu/usr.bin/cc/cc_tools/Makefile#14 integrate .. //depot/projects/ia64/gnu/usr.bin/cc/cc_tools/auto-host.h#10 integrate .. //depot/projects/ia64/gnu/usr.bin/cc/include/Makefile#4 integrate .. //depot/projects/ia64/lib/libc/posix1e/mac.conf.5#2 integrate .. //depot/projects/ia64/lib/libkvm/kvm_getprocs.3#3 integrate .. //depot/projects/ia64/lib/libutil/login_class.3#3 integrate .. //depot/projects/ia64/release/Makefile.inc.docports#9 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#83 integrate .. //depot/projects/ia64/release/doc/ja_JP.eucJP/errata/article.sgml#11 integrate .. //depot/projects/ia64/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#10 integrate .. //depot/projects/ia64/release/doc/ja_JP.eucJP/hardware/i386/proc-i386.sgml#4 integrate .. //depot/projects/ia64/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#21 integrate .. //depot/projects/ia64/sbin/devd/devd.cc#7 integrate .. //depot/projects/ia64/sbin/devd/devd.h#3 integrate .. //depot/projects/ia64/sbin/devd/devd.hh#1 branch .. //depot/projects/ia64/sbin/growfs/growfs.c#9 integrate .. //depot/projects/ia64/share/man/man7/firewall.7#7 integrate .. //depot/projects/ia64/share/man/man9/style.9#21 integrate .. //depot/projects/ia64/sys/dev/bge/if_bge.c#26 integrate .. //depot/projects/ia64/sys/dev/drm/drm_os_freebsd.h#8 integrate .. //depot/projects/ia64/sys/dev/firewire/firewire.c#25 integrate .. //depot/projects/ia64/sys/dev/firewire/firewirereg.h#16 integrate .. //depot/projects/ia64/sys/dev/firewire/fwcrom.c#4 integrate .. //depot/projects/ia64/sys/dev/firewire/iec13213.h#4 integrate .. //depot/projects/ia64/sys/dev/firewire/sbp.c#26 integrate .. //depot/projects/ia64/sys/geom/bde/g_bde.c#9 integrate .. //depot/projects/ia64/sys/geom/bde/g_bde_work.c#8 integrate .. //depot/projects/ia64/sys/kern/vfs_bio.c#50 integrate .. //depot/projects/ia64/sys/kern/vfs_default.c#20 integrate .. //depot/projects/ia64/sys/kern/vfs_subr.c#42 integrate .. //depot/projects/ia64/sys/sparc64/include/asm.h#4 integrate .. //depot/projects/ia64/sys/sparc64/include/asmacros.h#9 integrate .. //depot/projects/ia64/sys/sparc64/include/ktr.h#3 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/exception.S#13 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/interrupt.S#4 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/locore.S#5 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/mp_exception.S#4 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/mp_locore.S#3 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/support.S#4 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/swtch.S#6 integrate .. //depot/projects/ia64/sys/sys/vnode.h#29 integrate .. //depot/projects/ia64/sys/vm/swap_pager.c#23 integrate .. //depot/projects/ia64/sys/vm/uma_core.c#39 integrate .. //depot/projects/ia64/sys/vm/vm_map.c#52 integrate .. //depot/projects/ia64/sys/vm/vm_object.c#47 integrate .. //depot/projects/ia64/sys/vm/vm_object.h#19 integrate .. //depot/projects/ia64/sys/vm/vnode_pager.c#30 integrate .. //depot/projects/ia64/usr.bin/login/login.c#18 integrate .. //depot/projects/ia64/usr.sbin/fwcontrol/Makefile#3 integrate .. //depot/projects/ia64/usr.sbin/fwcontrol/fwcrom.c#4 delete Differences ... ==== //depot/projects/ia64/bin/ls/ls.c#16 (text+ko) ==== @@ -46,7 +46,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.72 2002/12/18 21:05:15 rwatson Exp $"); +__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.73 2003/04/26 02:31:26 rwatson Exp $"); #include #include @@ -732,7 +732,7 @@ mac_free(label); label_out: if (labelstr == NULL) - labelstr = strdup(""); + labelstr = strdup("-"); labelstrlen = strlen(labelstr); if (labelstrlen > maxlabelstr) maxlabelstr = labelstrlen; ==== //depot/projects/ia64/contrib/gcc/config/i386/freebsd.h#15 (text+ko) ==== @@ -22,12 +22,10 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.60 2003/04/13 01:04:01 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.61 2003/04/26 19:16:54 obrien Exp $ */ #undef CC1_SPEC -#define CC1_SPEC "%(cc1_cpu) %{profile:-p} \ - %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \ - " +#define CC1_SPEC "%(cc1_cpu) %{profile:-p}" #undef ASM_SPEC #define ASM_SPEC "%{v*: -v}" ==== //depot/projects/ia64/contrib/gcc/config/i386/freebsd64.h#3 (text+ko) ==== @@ -19,7 +19,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/i386/freebsd64.h,v 1.2 2002/06/21 22:54:24 obrien Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/freebsd64.h,v 1.4 2003/04/26 19:20:25 obrien Exp $ */ #undef TARGET_VERSION @@ -29,20 +29,9 @@ This is a copy of LINK_SPEC from tweaked for the x86-64 target. */ -#undef CC1_SPEC -#define CC1_SPEC "%(cc1_cpu) %{profile:-p} \ - %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \ - %{maout: %{!mno-underscores: %{!munderscores: -munderscores }}}" - -#undef ASM_SPEC -#define ASM_SPEC "%{v*: -v} %{maout: %{fpic:-k} %{fPIC:-k}} \ - %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} \ - %{Wa,*:%*} %{m32:--32}" - #undef LINK_SPEC #define LINK_SPEC "\ - %{!m32:-m elf_x86_64} \ - %{m32:-m elf_i386} \ + %{m32:-m elf_i386_fbsd -Y P,/usr/lib/i386} \ %{Wl,*:%*} \ %{v:-V} \ %{assert*} %{R*} %{rpath*} %{defsym*} \ ==== //depot/projects/ia64/contrib/gcc/config/i386/i386.h#10 (text+ko) ==== @@ -35,7 +35,7 @@ that start with ASM_ or end in ASM_OP. */ -/* $FreeBSD: src/contrib/gcc/config/i386/i386.h,v 1.15 2003/02/10 06:05:16 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/i386.h,v 1.16 2003/04/26 20:04:37 obrien Exp $ */ /* Stubs for half-pic support if not OSF/1 reference platform. */ @@ -585,7 +585,7 @@ -D__i386__ %(cpp_cpu32sizet)" #define CPP_CPU64_SPEC \ - "-Acpu=x86_64 -Amachine=x86_64 -D__x86_64 -D__x86_64__ %(cpp_cpu64sizet)" + "-Acpu=x86_64 -Amachine=x86_64 -D__x86_64 -D__x86_64__ %(cpp_cpu64sizet) -D__amd64__ -D__AMD64__" #define CPP_CPUCOMMON_SPEC "\ %{march=i386:%{!mcpu*:-D__tune_i386__ }}\ ==== //depot/projects/ia64/gnu/usr.bin/binutils/libbfd/Makefile#9 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile,v 1.23 2002/12/02 09:53:59 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile,v 1.24 2003/04/26 03:28:21 obrien Exp $ .include "../Makefile.inc0" @@ -20,7 +20,9 @@ CLEANFILES+= config.h targmatch.h SELARCH= -.if ${TARGET_ARCH} == "sparc64" +.if ${TARGET_ARCH} == "amd64" +SELARCH= &bfd_i386_arch +.elif ${TARGET_ARCH} == "sparc64" SELARCH= &bfd_sparc_arch .else .for _a in ${ARCHS} ==== //depot/projects/ia64/gnu/usr.bin/cc/Makefile.tgt#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/cc/Makefile.tgt,v 1.6 2002/11/06 07:00:59 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/Makefile.tgt,v 1.7 2003/04/26 20:04:37 obrien Exp $ TARGET_ARCH?= ${MACHINE_ARCH} @@ -6,7 +6,7 @@ GCC_CPU= alpha .elif ${TARGET_ARCH} == "arm" GCC_CPU= arm -.elif ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.elif ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" GCC_CPU= i386 .elif ${TARGET_ARCH} == "ia64" GCC_CPU= ia64 ==== //depot/projects/ia64/gnu/usr.bin/cc/cc_tools/Makefile#14 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/cc/cc_tools/Makefile,v 1.66 2002/10/10 04:56:35 kan Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/cc_tools/Makefile,v 1.67 2003/04/26 20:04:37 obrien Exp $ # # This could probably be merged with ../cc_int/Makefile, but bsd.lib.mk @@ -148,7 +148,7 @@ .endif echo '#include "ansidecl.h"' >> ${.TARGET} echo '#include "${GCC_CPU}/${GCC_CPU}.h"' >> ${.TARGET} -.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" echo '#include "${GCC_CPU}/att.h"' >> ${.TARGET} .endif .if ${TARGET_ARCH} != "alpha" @@ -161,14 +161,14 @@ .if ${TARGET_ARCH} == "alpha" echo '#include "${GCC_CPU}/elf.h"' >> ${.TARGET} .endif -.if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "x86_64" +.if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "amd64" .if exists(${GCCDIR}/config/${GCC_CPU}/sysv4.h) echo '#include "${GCC_CPU}/sysv4.h"' >> ${.TARGET} .endif .endif echo '#include "${GCC_CPU}/freebsd.h"' >> ${.TARGET} -.if ${TARGET_ARCH} == "x86_64" - echo '#include "${GCC_CPU}/${TARGET_ARCH:S/_/-/}.h"' >> ${.TARGET} +.if ${TARGET_ARCH} == "amd64" + echo '#include "${GCC_CPU}/x86-64.h"' >> ${.TARGET} echo '#include "${GCC_CPU}/freebsd64.h"' >> ${.TARGET} .endif echo '#include "defaults.h"' >> ${.TARGET} ==== //depot/projects/ia64/gnu/usr.bin/cc/cc_tools/auto-host.h#10 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/auto-host.h,v 1.12 2002/11/26 18:25:18 obrien Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/auto-host.h,v 1.13 2003/04/26 20:04:37 obrien Exp $ */ #include @@ -338,7 +338,7 @@ /* #define SIZEOF_LONG 4 */ #if defined(__i386__) || defined(__powerpc__) || defined(__strongarm__) #define SIZEOF_LONG SIZEOF_INT -#elif defined(__alpha__) || defined(__sparc64__) || defined(__ia64__) || defined(__x86_64__) +#elif defined(__alpha__) || defined(__sparc64__) || defined(__ia64__) || defined(__amd64__) #define SIZEOF_LONG SIZEOF_LONG_LONG #else #error "I don't know what arch this is." ==== //depot/projects/ia64/gnu/usr.bin/cc/include/Makefile#4 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/gnu/usr.bin/cc/include/Makefile,v 1.4 2003/04/01 12:37:54 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/include/Makefile,v 1.5 2003/04/26 20:04:38 obrien Exp $ .include "../Makefile.inc" .PATH: ${GCCDIR}/config/${GCC_CPU} -.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" INCS= mmintrin.h xmmintrin.h .elif ${TARGET_ARCH} == "ia64" INCS= ia64intrin.h ==== //depot/projects/ia64/lib/libc/posix1e/mac.conf.5#2 (text+ko) ==== @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/posix1e/mac.conf.5,v 1.2 2003/04/20 04:43:56 rwatson Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac.conf.5,v 1.3 2003/04/26 03:32:18 rwatson Exp $ .\" .Dd April 19, 2003 .Dt MAC.CONF 5 @@ -74,6 +74,7 @@ default_ifnet_labels ?biba,?mls,?sebsd default_process_labels ?biba,?mls,partition,?sebsd .Ed +.Pp In this example, userland applications will attempt to retrieve Biba, MLS, and SEBSD labels for all object classes; for processes, they will additionally attempt to retrieve a Partition identifier. ==== //depot/projects/ia64/lib/libkvm/kvm_getprocs.3#3 (text+ko) ==== @@ -34,7 +34,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)kvm_getprocs.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libkvm/kvm_getprocs.3,v 1.13 2003/03/24 15:58:53 charnier Exp $ +.\" $FreeBSD: src/lib/libkvm/kvm_getprocs.3,v 1.14 2003/04/26 15:00:57 trhodes Exp $ .\" .Dd June 4, 1993 .Dt KVM_GETPROCS 3 @@ -50,6 +50,7 @@ .In kvm.h .In sys/param.h .In sys/sysctl.h +.In sys/user.h .\" .Fa kvm_t *kd .Ft struct kinfo_proc * .Fn kvm_getprocs "kvm_t *kd" "int op" "int arg" "int *cnt" ==== //depot/projects/ia64/lib/libutil/login_class.3#3 (text+ko) ==== @@ -17,7 +17,7 @@ .\" 5. Modifications may be freely made to this file providing the above .\" conditions are met. .\" -.\" $FreeBSD: src/lib/libutil/login_class.3,v 1.14 2003/03/24 15:55:03 charnier Exp $ +.\" $FreeBSD: src/lib/libutil/login_class.3,v 1.16 2003/04/26 15:18:27 trhodes Exp $ .\" .Dd December 28, 1996 .Os @@ -112,6 +112,7 @@ maxproc RLIMIT_NPROC openfiles RLIMIT_NOFILE sbsize RLIMIT_SBSIZE +vmemoryuse RLIMIT_VMEM .Ed .It LOGIN_SETPRIORITY Set the scheduling priority for the current process based on the ==== //depot/projects/ia64/release/Makefile.inc.docports#9 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/release/Makefile.inc.docports,v 1.16 2002/11/10 14:38:27 tmm Exp $ +# $FreeBSD: src/release/Makefile.inc.docports,v 1.17 2003/04/26 07:31:43 murray Exp $ # # List of (dependent) ports that are minimally required to be # checked out from CVS in order to get ${DOCPORTS} built and @@ -35,7 +35,6 @@ ports/graphics/peps \ ports/graphics/png \ ports/graphics/scr2png \ - ports/textproc/scr2txt \ ports/graphics/tiff \ ports/lang/perl5 \ ports/print/freetype2 \ @@ -46,6 +45,8 @@ ports/textproc/docbook-310 \ ports/textproc/docbook-400 \ ports/textproc/docbook-410 \ + ports/textproc/docbook-xml \ + ports/textproc/docbook-xsl \ ports/textproc/docproj \ ports/textproc/dsssl-docbook-modular \ ports/textproc/expat2 \ @@ -55,6 +56,8 @@ ports/textproc/libxslt \ ports/textproc/linuxdoc \ ports/textproc/mkcatalog \ + ports/textproc/scr2txt \ + ports/textproc/sdocbook-xml \ ports/textproc/sgmlformat \ ports/textproc/xhtml \ ports/www/links1 \ ==== //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#83 (text+ko) ==== @@ -3,7 +3,7 @@ The FreeBSD Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.552 2003/04/25 14:42:53 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.553 2003/04/26 19:07:33 hrs Exp $ 2000 @@ -858,7 +858,7 @@ The following new articles have been added to the documentation set: FreeBSD From Scratch, - The Roadmap for 5-STABLE. + The Roadmap for 5-STABLE. A new Danish (da_DK.ISO8859-1) translation project has been started. ==== //depot/projects/ia64/release/doc/ja_JP.eucJP/errata/article.sgml#11 (text+ko) ==== @@ -1,8 +1,8 @@ - $FreeBSD: src/release/doc/ja_JP.eucJP/hardware/common/dev.sgml,v 1.11 2003/03/16 12:41:12 rushani Exp $ + $FreeBSD: src/release/doc/ja_JP.eucJP/hardware/common/dev.sgml,v 1.12 2003/04/26 19:48:15 hrs Exp $ Âбþ¥Ï¡¼¥É¥¦¥§¥¢ @@ -1700,6 +1700,23 @@ + ASIX Electronics AX88172 ¥Ù¡¼¥¹¤Î USB Ethernet NIC + (&man.axe.4; ¥É¥é¥¤¥Ð) + + + + D-Link DUBE100 + + + Linksys USB200M + + + Netgear FA120 + + + + + ASIX Electronics AX88140A PCI NIC (&man.dc.4; ¥É¥é¥¤¥Ð) @@ -1839,7 +1856,7 @@ - Intel 82557, 82258, 82559, 82550, + Intel 82557, 82258, 82559, 82550, 82562 ¥Ù¡¼¥¹¤Î Fast Ethernet NIC (&man.fxp.4; ¥É¥é¥¤¥Ð) @@ -2453,7 +2470,7 @@ ¤½¤Î¾¤Î¥Í¥Ã¥È¥ï¡¼¥¯µ¡´ï - Granch SBNI12 point-to-point ÄÌ¿®¥¢¥À¥×¥¿ (sbni ¥É¥é¥¤¥Ð) + Granch SBNI12 point-to-point ÄÌ¿®¥¢¥À¥×¥¿ (&man.sbni.4; ¥É¥é¥¤¥Ð) SBNI12-XX ¤ª¤è¤Ó SBNI12D-XX ISA ÈÇ/PCI ÈÇ @@ -2461,6 +2478,9 @@ + Granch SBNI16 SHDSL ¥â¥Ç¥à (&man.sbsh.4; + ¥É¥é¥¤¥Ð) + SMC COM90cx6 ARCNET ¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥À¥×¥¿ (cm ¥É¥é¥¤¥Ð) @@ -2627,24 +2647,72 @@ PCI ¥Ù¡¼¥¹¤Î¥Þ¥ë¥Á¥Ý¡¼¥È¥·¥ê¥¢¥ë¥Ü¡¼¥É (&man.puc.4; ¥É¥é¥¤¥Ð) + + Actiontech 56K PCI + - Avlab Technology, PCI IO 2S + Avlab Technology, PCI IO 2S ¤ª¤è¤Ó PCI IO 4S + + + Comtrol RocketPort 550 + + + Decision Computers PCCOM 4-port ¥·¥ê¥¢¥ë¤ª¤è¤Ó¥Ç¥å¥¢¥ë¥Ý¡¼¥È RS232/422/485 + + + Dolphin Peripherals 4025/4035/4036 + + + IC Book Labs Dreadnought 16x Lite ¤ª¤è¤Ó Pro - - Moxa Industio CP-114 + + Lava Computers 2SP-PCI/DSerial-PCI/Quattro-PCI/Octopus-550 + + Middle Digital, Weasle ¥·¥ê¥¢¥ë¥Ý¡¼¥È + - Syba Tech Ltd. PCI-4S2P-550-ECP + Moxa Industio CP-114, Smartio C104H-PCI ¤ª¤è¤Ó C168H/PCI + + NEC PK-UG-X001 ¤ª¤è¤Ó PK-UG-X008 + Netmos NM9835 PCI-2S-550 + + Oxford Semiconductor OX16PCI954 PCI UART + + + Syba Tech SD-LAB PCI-4S2P-550-ECP + + + SIIG Cyber I/O PCI 16C550/16C650/16C850 + + + SIIG Cyber 2P1S PCI 16C550/16C650/16C850 + + + SIIG Cyber 2S1P PCI 16C550/16C650/16C850 + + + SIIG Cyber 4S PCI 16C550/16C650/16C850 + + + SIIG Cyber Serial (¥·¥ó¥°¥ë¤ª¤è¤Ó¥Ç¥å¥¢¥ë) PCI 16C550/16C650/16C850 + + + Syba Tech Ltd. PCI-4S2P-550-ECP + - PCCOM dual port RS232/422/485 + Titan PCI-200H ¤ª¤è¤Ó PCI-800H + + + US Robotics (3Com) 3CP5609 ¥â¥Ç¥à - - SIIG Cyber Serial Dual PCI 16C550 - + + VScom PCI-400 ¤ª¤è¤Ó PCI-800 + @@ -3021,6 +3089,10 @@ + + EHCI ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»È¤Ã¤¿ + USB 2.0 ¥³¥ó¥È¥í¡¼¥é (ehci ¥É¥é¥¤¥Ð) + ¥Ï¥Ö @@ -3218,7 +3290,7 @@ IEEE 1394 (FireWire) ¥Ç¥Ð¥¤¥¹ - ¥Û¥¹¥È¥³¥ó¥È¥í¡¼¥é (&man.fwohci.4; + ¥Û¥¹¥È¥³¥ó¥È¥í¡¼¥é (&man.fwohci.4; ¥É¥é¥¤¥Ð) @@ -3241,7 +3313,7 @@ - ¥¹¥È¥ì¡¼¥¸ (&man.sbp.4; ¥É¥é¥¤¥Ð) + ¥¹¥È¥ì¡¼¥¸ (&man.sbp.4; ¥É¥é¥¤¥Ð) @@ -3337,7 +3409,7 @@ - ¥Õ¥í¥Ã¥Ô¥É¥é¥¤¥Ö (&man.fd.4; ¥É¥é¥¤¥Ð) + ¥Õ¥í¥Ã¥Ô¥É¥é¥¤¥Ö (&man.fdc.4; ¥É¥é¥¤¥Ð) Genius ¤ª¤è¤Ó Mustek ¥Ï¥ó¥É¥¹¥­¥ã¥Ê GPB ¤ª¤è¤Ó Transputer ¥É¥é¥¤¥Ð ¥­¡¼¥Ü¡¼¥É ==== //depot/projects/ia64/release/doc/ja_JP.eucJP/hardware/i386/proc-i386.sgml#4 (text+ko) ==== @@ -1,6 +1,6 @@ Âбþ¥×¥í¥»¥Ã¥µ¤ª¤è¤Ó¥Þ¥¶¡¼¥Ü¡¼¥É @@ -32,6 +32,30 @@ BIOS ¤ä¥Þ¥¶¡¼¥Ü¡¼¥É¤Î¥Ð¥°¤Ë¤è¤ê¡¢ÌäÂ꤬½Ð¤ë¥±¡¼¥¹¤¬¤¢¤ê¤Þ¤¹¡£ ÂнèÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï &a.smp; ¤ò½ÏÆɤ¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ + &os; ¤Ï¡¢Intel ¤Î CPU ¤ËÅëºÜ¤µ¤ì¤Æ¤¤¤ë + HyperThreading (HTT) µ¡Ç½¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + options SMP µ¡Ç½¤òÍ­¸ú¤Ë¤·¤Æ¤¤¤ë¥«¡¼¥Í¥ë¤Ï + ÏÀÍý¥×¥í¥»¥Ã¥µ¤ò¼«Æ°Åª¤Ë¸¡½Ð¤·¡¢Í­¸ú¤Ë¤·¤Þ¤¹¡£ + &os; ¤Î¥Ç¥Õ¥©¥ë¥È¤Î¥¹¥±¥¸¥å¡¼¥é¤Ï¡¢¤³¤ÎÏÀÍý CPU + ¤òÄɲ䵤줿ʪÍý CPU ¤ÈƱÅù¤Ë°·¤¤¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢ + Ʊ¤¸ CPU Æâ¤ÎÏÀÍý¥×¥í¥»¥Ã¥µ´Ö¤Ç¶¦Í­¤µ¤ì¤Æ¤¤¤ë»ñ¸»¤ËÂФ·¤Æ¡¢ + ¥¹¥±¥¸¥å¡¼¥ê¥ó¥°·èÄê¤òºÇŬ²½¤·¤Þ¤»¤ó¡£ + ¤³¤Î¥¹¥±¥¸¥å¡¼¥ê¥ó¥°ÊýË¡¤Ç¤ÏºÇŬ¤ÊÀ­Ç½¤òÆÀ¤ë¤³¤È¤¬¤Ç¤­¤Ê¤¤¤¿¤á¡¢ + ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢µ¯Æ°»þ¤ËÏÀÍý CPU ¤òÄä»ß¤µ¤»¤Æ¤¤¤Þ¤¹¡£ + ÏÀÍý CPU ¤Ï machdep.hlt_logical_cpus + sysctl ÊÑ¿ô¤ÇÍ­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢ + machdep.hlt_cpus sysctl ÊÑ¿ô¤ò»È¤Ã¤Æ¡¢ + CPU ¤ò¥¢¥¤¥É¥ë¥ë¡¼¥×¤Ë¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£ + ¾Ü¤·¤¯¤Ï¡¢&man.smp.4; ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ + + &os; ¤Ï¡¢Physical Address Extensions (PAE) µ¡Ç½¤òÅëºÜ¤·¤¿ + CPU ¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + PAE µ¡Ç½¤òÍ­¸ú¤Ë¤·¤¿¥«¡¼¥Í¥ë¤Ï¡¢4GB + °Ê¾å¤Î¥á¥â¥ê¤ò¸¡½Ð¤·¡¢¥·¥¹¥Æ¥à¤«¤éÍøÍѤǤ­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£ + ¤³¤Îµ¡Ç½¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢ÍøÍѤǤ­¤ë¥Ç¥Ð¥¤¥¹¥É¥é¥¤¥Ð¤ä¾¤Î &os; + ¤Îµ¡Ç½¤¬À©¸Â¤µ¤ì¤Þ¤¹¡£¾Ü¤·¤¯¤Ï¡¢&man.pae.4; + ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ + &os; ¤Ï i386 ¥Ù¡¼¥¹¤Î¥é¥Ã¥×¥È¥Ã¥×¤Ç¤âÆ°ºî¤·¤Þ¤¹¤¬¡¢ ¥µ¥¦¥ó¥É¡¢¥°¥é¥Õ¥£¥Ã¥¯¥¹¡¢ÅŸ»´ÉÍý¡¢PCCARD ³ÈÄ¥¥¹¥í¥Ã¥ÈÅù¤Î¥Ï¡¼¥É¥¦¥§¥¢µ¡Ç½¤ÎÂбþ¤Ë¤ÏÊФ꤬¤¢¤ê¤Þ¤¹¡£ ==== //depot/projects/ia64/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#21 (text+ko) ==== @@ -1,9 +1,9 @@ @@ -11,7 +11,7 @@ FreeBSD ¥×¥í¥¸¥§¥¯¥È - $FreeBSD: src/release/doc/ja_JP.eucJP/relnotes/common/new.sgml,v 1.83 2003/03/24 21:42:53 hrs Exp $ + $FreeBSD: src/release/doc/ja_JP.eucJP/relnotes/common/new.sgml,v 1.84 2003/04/26 19:13:00 hrs Exp $ 2000 @@ -133,11 +133,12 @@ ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ &merged; - sendmail ¤¬¥Ð¡¼¥¸¥ç¥ó 8.12.8 - ¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤µ¤ì¤Þ¤·¤¿¡£¤³¤ì¤Ë¤Ï¡¢ - ¥ê¥â¡¼¥È¤«¤é°­ÍѲÄǽ¤Ê¥Ð¥Ã¥Õ¥¡¥ª¡¼¥Ð¥Õ¥í¡¼ÌäÂê¤Î½¤Àµ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ + sendmail ¤Ë¤¢¤Ã¤¿ + ¥ê¥â¡¼¥È¤«¤é°­ÍѲÄǽ¤Ê¥Ð¥Ã¥Õ¥¡¥ª¡¼¥Ð¥Õ¥í¡¼ÌäÂ꤬½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£ ÌäÂê¤Î¾ÜºÙ¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£´«¹ð FreeBSD-SA-03:04 + ¤ª¤è¤Ó FreeBSD-SA-03:07 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ &merged; @@ -171,6 +172,10 @@ ¤³¤ì¤Ï XFree86 4.3.0 ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤â¤Î¤È¤Û¤ÜƱ°ì¤Î¤â¤Î¤Ç¤¹¤¬¡¢ ¤¤¤¯¤Ä¤«¤Î¥Ð¥°½¤Àµ¤âÄɲäǴޤޤì¤Æ¤¤¤Þ¤¹¡£ + ehci ¥É¥é¥¤¥Ð¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï USB 2.0 ¥³¥ó¥È¥í¡¼¥é¤Ç»È¤ï¤ì¤Æ¤¤¤ë + USB Enhanced Host Controller Interface ¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + /dev/tty ¤Îµö²Ä°À­¤Î¼è¤ê°·¤¤¤Ë¤¢¤Ã¤¿¡¢¾®¤µ¤Ê¥Ð¥°¤¬½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£ ¤³¤ì¤Ë¤è¤ê¡¢&man.su.1; ¤Î¼Â¹Ô¸å¤â &man.ssh.1; @@ -186,6 +191,13 @@ Linux ¥¨¥ß¥å¥ì¡¼¥·¥ç¥ó¥â¡¼¥É¤¬ IPv6 ¤ËÂбþ¤·¤Þ¤·¤¿¡£ + &man.madvise.2; ¤¬¡¢¿·¤·¤¯ + MADV_PROTECT ¤È¤¤¤¦Æ°ºî¤ËÂбþ¤·¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢¤½¤Î¥×¥í¥»¥¹¤ÏÈó¾ï¤Ë½ÅÍפʤâ¤Î¤Ç¡¢ + ¥¹¥ï¥Ã¥×¶õ´Ö¤¬¸Ï³é¤·¤Æ¤·¤Þ¤Ã¤¿»þ¤Ç¤â kill + ¤·¤Æ¤Ï¤¤¤±¤Ê¤¤¡¢¤È¤¤¤¦¤³¤È¤ò²¾ÁÛ¥á¥â¥ê¥·¥¹¥Æ¥à¤ËÅÁ¤¨¤ë¤â¤Î¤Ç¤¹¡£ + ¤½¤Î»þ¤Î¥×¥í¥»¥¹¤Ï¡¢¥¹¡¼¥Ñ¥æ¡¼¥¶¤¬½êÍ­¤¹¤ë¤â¤Î¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ + SMP ¤Ë¤ª¤±¤ëÀ­Ç½¸þ¾å¤¬´üÂԤǤ­¤ë¡¢ @@ -202,21 +214,52 @@ (¸ß´¹À­¤òÊݤĤ¿¤á¡¢½¾Íè¤ÎÀÅŪ¤Ê¥á¥¸¥ã¡¼ÈÖ¹æ¤Î¤Þ¤Þ¤Ê¤Ã¤Æ¤¤¤ë¥É¥é¥¤¥Ð¤âÆ󡦻°»Ä¤Ã¤Æ¤¤¤Þ¤¹) ¤Ê¤¯¤Ê¤ê¡¢¥Ç¥Ð¥¤¥¹¤Î¥á¥¸¥ã¡¼Èֹ椬­¤ê¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤âÄ㤯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ + ¥«¡¼¥Í¥ë¥¹¥ì¥Ã¥ÉÍѤδʰ×Ū¤ÊÃٱ䥹¥¤¥Ã¥Áµ¡¹½¤¬¼ÂÁõ¤µ¤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢(³ä¤ê¹þ¤ß¥Ï¥ó¥É¥é¤Ê¤É) ¾¤Î¥×¥í¥»¥¹¤È´Ø·¸¤¬¤Ê¤¤¡¢ + ºÙ¤«¤¤¥³¥ó¥Æ¥­¥¹¥È¥¹¥¤¥Ã¥Á¤Ë¤è¤ë¥ª¡¼¥Ð¥Ø¥Ã¥É¤òºï¸º¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ + ¤³¤Îµ¡Ç½¤Ï options LAZY_SWITCH + ¤ò»ØÄꤹ¤ë¤ÈÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£ + ¥×¥í¥»¥Ã¥µ¡¦¥Þ¥¶¡¼¥Ü¡¼¥É¤ÎÂбþ¾õ¶· - &os; ¤Ë¡¢HyperThreading (HTT) + SMP ¥«¡¼¥Í¥ë¤Ë HyperThreading (HTT) Âбþ¤Î´ðÁÃÉôʬ¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ - HTT ¥«¡¼¥Í¥ë¥ª¥×¥·¥ç¥ó¤òÄɲä·¤¿ - SMP ¥«¡¼¥Í¥ë¤Ï¡¢HTT - ¤ËÂбþ¤·¤¿¥Þ¥·¥ó¾å¤ÇÏÀÍý¥×¥í¥»¥Ã¥µ¤Î¸¡½Ð¤È½é´ü²½¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ - ¤³¤ÎÏÀÍý¥×¥í¥»¥Ã¥µ¤Ï¡¢ÊªÍý¥×¥í¥»¥Ã¥µ¤òÄɲä·¤¿¾ì¹ç¤ÈƱ¤¸¤è¤¦¤Ë¡¢ - ¥×¥í¥»¥¹¤ò¥¹¥±¥¸¥å¡¼¥ê¥ó¥°¤¹¤ë¤¿¤á¤Ë»È¤ï¤ì¤Þ¤¹¡£ - &merged; + ¥¹¥±¥¸¥å¡¼¥é¤ÏÏÀÍý CPU ¤ò¡¢ÊªÍý CPU ¤òÄɲä·¤¿¾ì¹ç¤ÈƱ¤¸¤è¤¦¤Ë + ¥×¥í¥»¥¹¥¹¥±¥¸¥å¡¼¥ê¥ó¥°¤Ë»È¤¤¤Þ¤¹¡£ + HTT ¤Ï¡¢»ñ¸»¤¬Â­¤ê¤Ê¤¯¤Ê¤ë¤¤¤¯¤Ä¤«¤Î¥±¡¼¥¹¤ÇºÇÁ±¤ÎÀ­Ç½¤Ë¤Ê¤é¤Ê¤¤¤³¤È¤¬ + ¤¢¤ë¤¿¤á¡¢µ¯Æ°»þ¤Ë¤ÏÏÀÍý CPU ¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÄä»ß¾õÂ֤ˤʤäƤ¤¤Þ¤¹¡£ + Í­¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢machdep.hlt_logical_cpus sysctl + ÊÑ¿ô¤ò»È¤¤¤Þ¤¹¡£¤Þ¤¿¡¢machdep.hlt_cpus sysctl + ÊÑ¿ô¤ò»È¤¦¤È¡¢¥¢¥¤¥É¥ë¥ë¡¼¥×¤ò»È¤Ã¤Æ CPU ¤òÄä»ß¾õÂ֤ˤ¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£ + ¾Ü¤·¤¯¤Ï &man.smp.4; ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ + + + ½é´ü¤Î 5.0-CURRENT ¥¹¥Ê¥Ã¥×¥·¥ç¥Ã¥È¤ä 4.8-RELEASE ¤Ê¤É¤Î + ¥Ð¡¼¥¸¥ç¥ó¤Î &os; ¤Ï¡¢HyperThreading µ¡Ç½¤òÍ­¸ú¤Ë¤¹¤ë¤¿¤á¤Ë + ¥«¡¼¥Í¥ë¥³¥ó¥Õ¥£¥°»þ¤Ë options HTT + ¤ò»ØÄꤷ¤Æ¤¤¤Þ¤·¤¿¡£¸½ºß¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍ×¤Ï + ¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ + + + + + Intel Pentium Pro °Ê¹ß¤ËÅëºÜ¤µ¤ì¤Æ¤¤¤ë + Physical Address Extensions (PAE) µ¡Ç½¤ËÂбþ¤·¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢°ì¤Ä¤Î¥Þ¥·¥ó¾å¤ÇºÇÂç 64GB ¤Î RAM ¤ò»ÈÍѤ¹¤ë¤³¤È¤¬ + ¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ëµ¡Ç½¤Ç¤¹¤¬¡¢°ì¤Ä¤Î¥×¥í¥»¥¹ (¤È &os; ¥«¡¼¥Í¥ë) + ¤¬»È¤¨¤ë¥á¥â¥êÎ̤Ͻ¾Íè¤Î¤Þ¤Þ¤Ç¤¹¡£ + ¾Ü¤·¤¯¤Ï¡¢&man.pae.4; ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ + ¤³¤Îµ¡Ç½¤Îºî¶È¤Ï¡¢DARPA ¤ª¤è¤Ó Network Associates Laboratories + ¤Î»Ù±ç¤ò¼õ¤±¤Æ¹Ô¤Ê¤ï¤ì¤Þ¤·¤¿¡£ + + &man.vpd.4; ¥É¥é¥¤¥Ð¤¬¿·¤·¤¯Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï IBM ThinkPad ¥·¥ê¡¼¥º¤Î Vital Product Data + ¹½Â¤ÂΤ«¤é¥Ï¡¼¥É¥¦¥§¥¢¾ðÊó¤òÆɤ߽Ф¹¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ - + ¥Ö¡¼¥È¥í¡¼¥À¤ÎÊѹ¹ alpha ¥¢¡¼¥­¥Æ¥¯¥Á¥ãÍѤΥ֡¼¥È¥í¡¼¥À @@ -248,18 +291,32 @@ + ¥³¡¼¥É¥µ¥¤¥º¤ÎÀ©¸Â¤«¤é¡¢ + i386 ¥Ö¡¼¥È¥í¡¼¥À¤«¤éÆɤळ¤È¤Î¤Ç¤­¤ë¥«¡¼¥Í¥ë¤Ï + 1.5TB °Ê²¼¤Î¥ë¡¼¥È¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¤¢¤ë¤â¤Î¤À¤±¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ + - + ¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ÎÂбþ¾õ¶· + &man.axe.4; + ¥Í¥Ã¥È¥ï¡¼¥¯¥É¥é¥¤¥Ð¤¬¿·¤·¤¯Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï ASIX Electronics AX88172 USB 2.0 + ¥Á¥Ã¥×¥»¥Ã¥È¤ò¥Ù¡¼¥¹¤Ë¤·¤¿ + USB Ethernet ¥¢¥À¥×¥¿¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + cm ¥É¥é¥¤¥Ð¤¬ IPX ¤ËÂбþ¤·¤Þ¤·¤¿¡£ &merged; + &man.sbsh.4; ¥É¥é¥¤¥Ð¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï Granch SBNI16 SHDSL ¥â¥Ç¥à¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + &merged; + 802.11 ¥ê¥ó¥¯ÁؤËÂбþ¤·¤¿ wlan ¥â¥¸¥å¡¼¥ë¤¬¿·¤·¤¯Äɲ䵤ì¤Þ¤·¤¿¡£ - ¤³¤Îµ¡Ç½¤Ï¸½ºß¡¢&man.wi.4; ¥É¥é¥¤¥Ð¤ÇÍøÍѤǤ­¤Þ¤¹¡£ + ¸½ºß¡¢&man.wi.4; ¥É¥é¥¤¥Ð¤¬¤³¤Îµ¡Ç½¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£ ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÀßÄê»þ¤Ë¥«¡¼¥Í¥ë¥Ñ¥Ë¥Ã¥¯ (¤ä¾¤ÎÌäÂê) @@ -267,7 +324,7 @@ ¥É¥é¥¤¥Ð¤Î¥¿¥¤¥ß¥ó¥°¥Ð¥°¤¬½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£ - + ¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥È¥³¥ë &man.ipfw.4; ¤Î skipto ¥ë¡¼¥ë¤È @@ -335,7 +392,7 @@ - + ¥Ç¥£¥¹¥¯¡¦µ­²±ÁõÃÖ &man.aac.4; ¥É¥é¥¤¥Ð¤¬¡¢¥¸¥ã¥¤¥¢¥ó¥È¥«¡¼¥Í¥ë¥í¥Ã¥¯¤Ê¤·¤Ë @@ -376,9 +433,19 @@ wfd ¥É¥é¥¤¥Ð¤È wst ¥É¥é¥¤¥Ð¤¬ºï½ü¤µ¤ì¤Þ¤·¤¿¡£ - + ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à + ¿·¤·¤¯ DIRECTIO + ¥«¡¼¥Í¥ë¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¥Ð¥Ã¥Õ¥¡¥­¥ã¥Ã¥·¥å¤ò·Ðͳ¤»¤º¤ËľÀܥǡ¼¥¿¤òÆɤ߹þ¤ó¤À¤ê¡¢ + ¥æ¡¼¥¶¶õ´Ö¤Î¥Ð¥Ã¥Õ¥¡¤ËľÀܥǡ¼¥¿¤ò½ñ¤­¹þ¤à¤³¤È¤ò²Äǽ¤Ë¤·¤Þ¤¹¡£ + ¤³¤Îµ¡Ç½¤ò»È¤¦¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ëµ­½Ò»Ò¤Ë + O_DIRECT ¥Õ¥é¥°¤ò¥»¥Ã¥È¤¹¤ë¤³¤È¤È¡¢ + Æɤ߽Ф·Áàºî»þ¤Î¥ª¥Õ¥»¥Ã¥È¡¦¥Ç¡¼¥¿Ä¹¤ÎξÊý¤Ë¡¢ + ʪÍý¥á¥Ç¥£¥¢¥»¥¯¥¿Ä¹¤ÎÀ°¿ôÇܤò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ + &merged; + NETNCP ¤ª¤è¤Ó Netware Filesystem Âбþ (nwfs) ¤¬¡¢Àµ¤·¤¯Æ°ºî¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ @@ -387,24 +454,22 @@ ½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£ - + PCCARD Âбþ - + ¥Þ¥ë¥Á¥á¥Ç¥£¥¢¤Ø¤ÎÂбþ¾õ¶· - - - - - ´ó£¥½¥Õ¥È¥¦¥§¥¢ - - IPFilter ¤¬¥Ð¡¼¥¸¥ç¥ó - 3.4.31 ¤Ë¹¹¿·¤µ¤ì¤Þ¤·¤¿¡£ - &merged; + &man.speaker.4; ¥Ç¥Ð¥¤¥¹ÍѤΠ+ atspeaker.ko + ¥â¥¸¥å¡¼¥ë¤È + pcspeaker.ko + ¥â¥¸¥å¡¼¥ë¤Ï¡¢ + speaker.ko + ¤È¤¤¤¦Ì¾Á°¤ËÊѤï¤ê¤Þ¤·¤¿¡£ @@ -414,20 +479,32 @@ &man.adduser.8; ¤¬¡¢¥·¥§¥ë¤ÎÆüìʸ»ú¤ò´Þ¤à¥Ñ¥¹¥ï¡¼¥É¤ò Àµ¤·¤¯½èÍý¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ + &man.adduser.8; ¤Ë¡¢¥æ¡¼¥¶¤Î¥Ç¥Õ¥©¥ë¥È¥í¥°¥¤¥ó¥°¥ë¡¼¥×¤òÀßÄꤹ¤ë + ¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + compat4x ÇÛÉÛʪ¤Ë¡¢&os; 4.7-RELEASE ¤Ë´Þ¤Þ¤ì¤ë libcrypto.so.2, libgmp.so.3, libssl.so.2 ¥é¥¤¥Ö¥é¥ê¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + &man.chgrp.1 ¤ª¤è¤Ó &man.chown.8 ¤Ï¡¢ + ¥ª¥×¥·¥ç¥ó¤¬Ê£¿ô¸Ä»ØÄꤵ¤ì¤¿¾ì¹ç¡¢ + ½êÍ­¼Ô/½êÍ­¥°¥ë¡¼¥×¤òÊѹ¹¤¹¤ë»þ¤Ë¿·µì¤Î uid/gid + ¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ + &man.config.8; ¤Ë¡¢ ¥«¡¼¥Í¥ë¥³¥ó¥Õ¥£¥°¥Õ¥¡¥¤¥ë¤Î device »Ø¼¨»Ò¤Î»ØÄê¤ò̵¸ú¤Ë¤¹¤ë nodevice »Ø¼¨»Ò¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ ¤Þ¤¿¡¢nooption ¤È nomakeoption »Ø¼¨»Ò¤âÄɲ䵤ì¤Æ¤ª¤ê¡¢ - ¤½¤ì¤è¤êÁ°¤Ë¤¢¤ë option ¤ª¤è¤Ó - makeoption »Ø¼¨»Ò¤ò¤½¤ì¤¾¤ì̵¸ú¤Ë¤·¤Þ¤¹¡£ + ¤½¤ì¤è¤êÁ°¤Ë¤¢¤ë options ¤ª¤è¤Ó + makeoptions »Ø¼¨»Ò¤ò¤½¤ì¤¾¤ì̵¸ú¤Ë¤·¤Þ¤¹¡£ + + &man.diskinfo.8; ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢¥Ç¥£¥¹¥¯¥Ç¥Ð¥¤¥¹¤Î¾ðÊó¤Îɽ¼¨¤È¡¢ + ¥Í¥¤¥Æ¥£¥Ö¤ÊÀ­Ç½»î¸³¤ò¹Ô¤Ê¤¦¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ &man.disklabel.8; ¤«¤é¡¢ ¥Õ¥é¥°¤È @@ -488,6 +565,10 @@ ¤ª¤è¤Ó ¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ &merged; + &man.gstat.8; ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢&man.geom.4; + ¥µ¥Ö¥·¥¹¥Æ¥à¤Ë¤ª¤±¤ë¥Ç¥£¥¹¥¯¤Î²ÔƯ¾õÂÖ¤òɽ¼¨¤¹¤ë¤â¤Î¤Ç¤¹¡£ + &man.ipfw.8; ¤Ë¡¢(¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ëµ¡Ç½¤½¤Î¤â¤Î¤ÎÍ­¸ú²½¡¦Ìµ¸ú²½¤ò´Þ¤à) &man.ipfw.4; ¤Ë¤ª¤±¤ë¤µ¤Þ¤¶¤Þ¤ÊÀ©¸æ¤ò¼Â¸½¤¹¤ë¤¿¤á¡¢ enable ¥³¥Þ¥ó¥É¡¢ @@ -495,13 +576,21 @@ ¤³¤ì¤é¤Ï¡¢½¾Íè¤Î sysctl ÊÑ¿ô¤è¤ê¤â¤ï¤«¤ê¤ä¤¹¤¯¡¢ ÊØÍø¤ÊÁàºî¼êÃʤòÄ󶡤·¤Þ¤¹¡£&merged; + &man.jail.8; ¤Ë¡¢¿·¤·¤¯ ¥Õ¥é¥°¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢¿·¤·¤¯ºîÀ®¤·¤¿ jail ¤Î¼±Ê̻Ҥò½ÐÎϤ·¤Þ¤¹¡£ + + ´û¸¤Î jail ¤ÎÃæ¤Ç¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¡¢&man.jexec.8; + ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + + ´û¸¤Î jail ¤ò°ìÍ÷ɽ¼¨¤¹¤ë &man.jls.8; ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + &man.kenv.1; ¤¬¡¢¥ë¡¼¥È¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¤ß¤¬¥Þ¥¦¥ó¥È¤µ¤ì¤¿¾õÂÖ¤Ç ¥·¥¹¥Æ¥à¤¬µ¯Æ°¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤âÍøÍѤǤ­¤ë¤è¤¦¡¢ /usr/bin ¤«¤é /bin ¤Ë°Ü¤µ¤ì¤Þ¤·¤¿¡£ - &man.devfs.5; ¤ÎÍøÍѤ¬É¬¿Ü¤È¤Ê¤Ã¤¿¤¿¤á¡¢ - ɬÍפ¬¤Ê¤¯¤Ê¤Ã¤¿ MAKEDEV ¥¹¥¯¥ê¥×¥È¤Ïºï½ü¤µ¤ì¤Þ¤·¤¿¡£ + &man.killall.1; ¤Ë¿·¤·¤¯ ¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢¤Ò¤È¤Ä¤Î jail ¤Ë¤¢¤ë¤¹¤Ù¤Æ¤Î¥×¥í¥»¥¹¤ò kill ¤·¤Þ¤¹¡£ ¥æ¡¼¥¶¥é¥ó¥É¤«¤é &man.geom.4; ¥µ¥Ö¥·¥¹¥Æ¥à¤Î°ìÉô¤Ø¤Î¥¢¥¯¥»¥¹¤òÄ󶡤¹¤ë &man.libgeom.3; ¥é¥¤¥Ö¥é¥ê¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ @@ -513,12 +602,21 @@ net.inet.ip.portrange.reservedhigh sysctl ÊÑ¿ô¤ÈÁȤ߹ç¤ï¤»¤Æ»È¤¦¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£ + &man.devfs.5; ¤¬É¬¿Ü¤È¤Ê¤Ã¤¿¤¿¤á¡¢ + ɬÍפ¬¤Ê¤¯¤Ê¤Ã¤¿ MAKEDEV ¥¹¥¯¥ê¥×¥È¤Ïºï½ü¤µ¤ì¤Þ¤·¤¿¡£ + + &man.mixer.8; ¤Ë¡¢ÁêÂÐÃͤò»È¤Ã¤¿¥Ü¥ê¥å¡¼¥àÄ´À°¤¬¼ÂÁõ¤µ¤ì¤Þ¤·¤¿¡£ + FFS ¥¹¥Ê¥Ã¥×¥·¥ç¥Ã¥È¤ÎºîÀ®¤ò´Êñ¤Ë¹Ô¤Ê¤¦¤¿¤á¤Î >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Apr 26 15:03:28 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 33BC437B404; Sat, 26 Apr 2003 15:03:28 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DA23D37B401 for ; Sat, 26 Apr 2003 15:03:27 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6CABE43F3F for ; Sat, 26 Apr 2003 15:03:27 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QM3R0U048472 for ; Sat, 26 Apr 2003 15:03:27 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QM3Q3m048459 for perforce@freebsd.org; Sat, 26 Apr 2003 15:03:26 -0700 (PDT) Date: Sat, 26 Apr 2003 15:03:26 -0700 (PDT) Message-Id: <200304262203.h3QM3Q3m048459@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to obrien@freebsd.org using -f From: "David E. O'Brien" To: Perforce Change Reviews Subject: PERFORCE change 29824 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 22:03:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=29824 Change 29824 by obrien@obrien_trang on 2003/04/26 15:02:27 repo copy libc/x86_64 to libc/amd64 Affected files ... .. //depot/projects/hammer/amd64mk.sh#1 add .. //depot/projects/hammer/lib/libc/amd64/SYS.h#1 branch .. //depot/projects/hammer/lib/libc/amd64/_fpmath.h#1 branch .. //depot/projects/hammer/lib/libc/amd64/arith.h#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/Makefile.inc#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/_ctx_start.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/_setjmp.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/alloca.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/fabs.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/frexp.c#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/infinity.c#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/isinf.c#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/ldexp.c#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/makecontext.c#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/modf.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/rfork_thread.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/setjmp.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/signalcontext.c#1 branch .. //depot/projects/hammer/lib/libc/amd64/gen/sigsetjmp.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/net/Makefile.inc#1 branch .. //depot/projects/hammer/lib/libc/amd64/net/htonl.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/net/htons.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/net/ntohl.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/net/ntohs.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/stdlib/Makefile.inc#1 branch .. //depot/projects/hammer/lib/libc/amd64/stdlib/abs.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/stdlib/div.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/stdlib/gdtoa.mk#1 branch .. //depot/projects/hammer/lib/libc/amd64/stdlib/labs.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/stdlib/ldiv.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/Makefile.inc#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/bcmp.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/bcopy.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/bzero.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/ffs.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/index.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/memchr.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/memcmp.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/memcpy.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/memmove.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/memset.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/rindex.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/strcat.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/strchr.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/strcmp.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/strcpy.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/strlen.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/strncmp.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/strrchr.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/swab.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/wcschr.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/wcscmp.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/wcslen.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/string/wmemchr.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/Makefile.inc#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/Ovfork.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/brk.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/cerror.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/exect.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/pipe.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/ptrace.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/reboot.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/sbrk.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/setlogin.S#1 branch .. //depot/projects/hammer/lib/libc/amd64/sys/sigreturn.S#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sat Apr 26 15:25:58 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 90AD637B433; Sat, 26 Apr 2003 15:25:57 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D8C6637B42C for ; Sat, 26 Apr 2003 15:25:56 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F39243FA3 for ; Sat, 26 Apr 2003 15:25:56 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QMPu0U065221 for ; Sat, 26 Apr 2003 15:25:56 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QMPtV3065214 for perforce@freebsd.org; Sat, 26 Apr 2003 15:25:55 -0700 (PDT) Date: Sat, 26 Apr 2003 15:25:55 -0700 (PDT) Message-Id: <200304262225.h3QMPtV3065214@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to obrien@freebsd.org using -f From: "David E. O'Brien" To: Perforce Change Reviews Subject: PERFORCE change 29827 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 22:25:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=29827 Change 29827 by obrien@obrien_trang on 2003/04/26 15:25:31 repo copy usr.bin/xlint/arch/x86_64 to usr.bin/xlint/arch/amd64 Affected files ... .. //depot/projects/hammer/usr.bin/xlint/arch/amd64/targparam.h#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sat Apr 26 15:40:15 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 578B437B404; Sat, 26 Apr 2003 15:40:15 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F2D0F37B401 for ; Sat, 26 Apr 2003 15:40:14 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 84C2043FD7 for ; Sat, 26 Apr 2003 15:40:14 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QMeE0U074987 for ; Sat, 26 Apr 2003 15:40:14 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QMeDXJ074980 for perforce@freebsd.org; Sat, 26 Apr 2003 15:40:13 -0700 (PDT) Date: Sat, 26 Apr 2003 15:40:13 -0700 (PDT) Message-Id: <200304262240.h3QMeDXJ074980@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29828 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 22:40:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=29828 Change 29828 by jmallett@jmallett_dalek on 2003/04/26 15:39:18 Define the %PLATFORM value, for e.g. ifdef(sgimips) in ARCS. Affected files ... .. //depot/projects/mips/sys/conf/Makefile.mips#8 edit Differences ... ==== //depot/projects/mips/sys/conf/Makefile.mips#8 (text+ko) ==== @@ -43,6 +43,8 @@ MIPSOPTS?= -mips3 COPTS+= ${MIPSOPTS} -mno-abicalls -fno-pic -msoft-float +CFLAGS+= -D${PLATFORM} + .if defined(TEXTADDR) LDFLAGS+= -Ttext ${TEXTADDR} .endif From owner-p4-projects@FreeBSD.ORG Sat Apr 26 15:45:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 92B7A37B404; Sat, 26 Apr 2003 15:45:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4168037B401 for ; Sat, 26 Apr 2003 15:45:23 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ED7CD43F75 for ; Sat, 26 Apr 2003 15:45:21 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QMjL0U079478 for ; Sat, 26 Apr 2003 15:45:21 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QMjKd5079465 for perforce@freebsd.org; Sat, 26 Apr 2003 15:45:20 -0700 (PDT) Date: Sat, 26 Apr 2003 15:45:20 -0700 (PDT) Message-Id: <200304262245.h3QMjKd5079465@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 Subject: PERFORCE change 29829 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 22:45:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=29829 Change 29829 by marcel@marcel_pluto1 on 2003/04/26 15:45:19 IFia64 Affected files ... .. //depot/projects/ia64_epc/bin/ls/ls.c#2 integrate .. //depot/projects/ia64_epc/contrib/gcc/config/i386/freebsd.h#3 integrate .. //depot/projects/ia64_epc/contrib/gcc/config/i386/freebsd64.h#2 integrate .. //depot/projects/ia64_epc/contrib/gcc/config/i386/i386.h#2 integrate .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile#1 branch .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/as/amd64-freebsd/config.h#1 branch .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/as/amd64-freebsd/itbl-cpu.h#1 branch .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/as/amd64-freebsd/targ-cpu.h#1 branch .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/as/x86-64-freebsd/Makefile#2 delete .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/as/x86-64-freebsd/config.h#2 delete .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/as/x86-64-freebsd/itbl-cpu.h#2 delete .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/as/x86-64-freebsd/targ-cpu.h#2 delete .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/ld/Makefile.amd64#1 branch .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/ld/Makefile.x86-64#2 delete .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/libbfd/Makefile#2 integrate .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/libbfd/Makefile.amd64#1 branch .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/libbfd/Makefile.x86-64#2 delete .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/libbfd/amd64/bfd.h#1 branch .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/libbfd/elf-fbsd-brand.c#1 branch .. //depot/projects/ia64_epc/gnu/usr.bin/binutils/libbfd/x86-64/bfd.h#2 delete .. //depot/projects/ia64_epc/gnu/usr.bin/cc/Makefile.tgt#2 integrate .. //depot/projects/ia64_epc/gnu/usr.bin/cc/cc_tools/Makefile#2 integrate .. //depot/projects/ia64_epc/gnu/usr.bin/cc/cc_tools/auto-host.h#2 integrate .. //depot/projects/ia64_epc/gnu/usr.bin/cc/include/Makefile#3 integrate .. //depot/projects/ia64_epc/lib/libc/posix1e/mac.conf.5#2 integrate .. //depot/projects/ia64_epc/lib/libkvm/kvm_getprocs.3#3 integrate .. //depot/projects/ia64_epc/lib/libutil/login_class.3#3 integrate .. //depot/projects/ia64_epc/release/Makefile.inc.docports#2 integrate .. //depot/projects/ia64_epc/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#14 integrate .. //depot/projects/ia64_epc/release/doc/ja_JP.eucJP/errata/article.sgml#4 integrate .. //depot/projects/ia64_epc/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#3 integrate .. //depot/projects/ia64_epc/release/doc/ja_JP.eucJP/hardware/i386/proc-i386.sgml#2 integrate .. //depot/projects/ia64_epc/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#4 integrate .. //depot/projects/ia64_epc/sbin/devd/devd.cc#4 integrate .. //depot/projects/ia64_epc/sbin/devd/devd.h#2 integrate .. //depot/projects/ia64_epc/sbin/devd/devd.hh#1 branch .. //depot/projects/ia64_epc/sbin/growfs/growfs.c#2 integrate .. //depot/projects/ia64_epc/share/man/man7/firewall.7#2 integrate .. //depot/projects/ia64_epc/share/man/man9/style.9#3 integrate .. //depot/projects/ia64_epc/sys/dev/bge/if_bge.c#6 integrate .. //depot/projects/ia64_epc/sys/dev/drm/drm_os_freebsd.h#4 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/firewire.c#8 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/firewirereg.h#6 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/fwcrom.c#3 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/iec13213.h#3 integrate .. //depot/projects/ia64_epc/sys/dev/firewire/sbp.c#10 integrate .. //depot/projects/ia64_epc/sys/geom/bde/g_bde.c#5 integrate .. //depot/projects/ia64_epc/sys/geom/bde/g_bde_work.c#4 integrate .. //depot/projects/ia64_epc/sys/ia64/conf/HP_RX2600#3 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_bio.c#10 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_default.c#6 integrate .. //depot/projects/ia64_epc/sys/kern/vfs_subr.c#9 integrate .. //depot/projects/ia64_epc/sys/sparc64/include/asm.h#2 integrate .. //depot/projects/ia64_epc/sys/sparc64/include/asmacros.h#2 integrate .. //depot/projects/ia64_epc/sys/sparc64/include/ktr.h#2 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/exception.S#4 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/interrupt.S#2 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/locore.S#3 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/mp_exception.S#3 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/mp_locore.S#2 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/support.S#3 integrate .. //depot/projects/ia64_epc/sys/sparc64/sparc64/swtch.S#4 integrate .. //depot/projects/ia64_epc/sys/sys/vnode.h#4 integrate .. //depot/projects/ia64_epc/sys/vm/swap_pager.c#5 integrate .. //depot/projects/ia64_epc/sys/vm/uma_core.c#7 integrate .. //depot/projects/ia64_epc/sys/vm/vm_map.c#10 integrate .. //depot/projects/ia64_epc/sys/vm/vm_object.c#11 integrate .. //depot/projects/ia64_epc/sys/vm/vm_object.h#7 integrate .. //depot/projects/ia64_epc/sys/vm/vnode_pager.c#5 integrate .. //depot/projects/ia64_epc/usr.bin/login/login.c#4 integrate .. //depot/projects/ia64_epc/usr.sbin/fwcontrol/Makefile#2 integrate .. //depot/projects/ia64_epc/usr.sbin/fwcontrol/fwcrom.c#3 delete Differences ... ==== //depot/projects/ia64_epc/bin/ls/ls.c#2 (text+ko) ==== @@ -46,7 +46,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.72 2002/12/18 21:05:15 rwatson Exp $"); +__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.73 2003/04/26 02:31:26 rwatson Exp $"); #include #include @@ -732,7 +732,7 @@ mac_free(label); label_out: if (labelstr == NULL) - labelstr = strdup(""); + labelstr = strdup("-"); labelstrlen = strlen(labelstr); if (labelstrlen > maxlabelstr) maxlabelstr = labelstrlen; ==== //depot/projects/ia64_epc/contrib/gcc/config/i386/freebsd.h#3 (text+ko) ==== @@ -22,12 +22,10 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.60 2003/04/13 01:04:01 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.61 2003/04/26 19:16:54 obrien Exp $ */ #undef CC1_SPEC -#define CC1_SPEC "%(cc1_cpu) %{profile:-p} \ - %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \ - " +#define CC1_SPEC "%(cc1_cpu) %{profile:-p}" #undef ASM_SPEC #define ASM_SPEC "%{v*: -v}" ==== //depot/projects/ia64_epc/contrib/gcc/config/i386/freebsd64.h#2 (text+ko) ==== @@ -19,7 +19,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/i386/freebsd64.h,v 1.2 2002/06/21 22:54:24 obrien Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/freebsd64.h,v 1.4 2003/04/26 19:20:25 obrien Exp $ */ #undef TARGET_VERSION @@ -29,20 +29,9 @@ This is a copy of LINK_SPEC from tweaked for the x86-64 target. */ -#undef CC1_SPEC -#define CC1_SPEC "%(cc1_cpu) %{profile:-p} \ - %{gline:%{!g:%{!g0:%{!g1:%{!g2: -g1}}}}} \ - %{maout: %{!mno-underscores: %{!munderscores: -munderscores }}}" - -#undef ASM_SPEC -#define ASM_SPEC "%{v*: -v} %{maout: %{fpic:-k} %{fPIC:-k}} \ - %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} \ - %{Wa,*:%*} %{m32:--32}" - #undef LINK_SPEC #define LINK_SPEC "\ - %{!m32:-m elf_x86_64} \ - %{m32:-m elf_i386} \ + %{m32:-m elf_i386_fbsd -Y P,/usr/lib/i386} \ %{Wl,*:%*} \ %{v:-V} \ %{assert*} %{R*} %{rpath*} %{defsym*} \ ==== //depot/projects/ia64_epc/contrib/gcc/config/i386/i386.h#2 (text+ko) ==== @@ -35,7 +35,7 @@ that start with ASM_ or end in ASM_OP. */ -/* $FreeBSD: src/contrib/gcc/config/i386/i386.h,v 1.15 2003/02/10 06:05:16 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/i386.h,v 1.16 2003/04/26 20:04:37 obrien Exp $ */ /* Stubs for half-pic support if not OSF/1 reference platform. */ @@ -585,7 +585,7 @@ -D__i386__ %(cpp_cpu32sizet)" #define CPP_CPU64_SPEC \ - "-Acpu=x86_64 -Amachine=x86_64 -D__x86_64 -D__x86_64__ %(cpp_cpu64sizet)" + "-Acpu=x86_64 -Amachine=x86_64 -D__x86_64 -D__x86_64__ %(cpp_cpu64sizet) -D__amd64__ -D__AMD64__" #define CPP_CPUCOMMON_SPEC "\ %{march=i386:%{!mcpu*:-D__tune_i386__ }}\ ==== //depot/projects/ia64_epc/gnu/usr.bin/binutils/libbfd/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile,v 1.23 2002/12/02 09:53:59 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/libbfd/Makefile,v 1.24 2003/04/26 03:28:21 obrien Exp $ .include "../Makefile.inc0" @@ -20,7 +20,9 @@ CLEANFILES+= config.h targmatch.h SELARCH= -.if ${TARGET_ARCH} == "sparc64" +.if ${TARGET_ARCH} == "amd64" +SELARCH= &bfd_i386_arch +.elif ${TARGET_ARCH} == "sparc64" SELARCH= &bfd_sparc_arch .else .for _a in ${ARCHS} ==== //depot/projects/ia64_epc/gnu/usr.bin/cc/Makefile.tgt#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/cc/Makefile.tgt,v 1.6 2002/11/06 07:00:59 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/Makefile.tgt,v 1.7 2003/04/26 20:04:37 obrien Exp $ TARGET_ARCH?= ${MACHINE_ARCH} @@ -6,7 +6,7 @@ GCC_CPU= alpha .elif ${TARGET_ARCH} == "arm" GCC_CPU= arm -.elif ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.elif ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" GCC_CPU= i386 .elif ${TARGET_ARCH} == "ia64" GCC_CPU= ia64 ==== //depot/projects/ia64_epc/gnu/usr.bin/cc/cc_tools/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/cc/cc_tools/Makefile,v 1.66 2002/10/10 04:56:35 kan Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/cc_tools/Makefile,v 1.67 2003/04/26 20:04:37 obrien Exp $ # # This could probably be merged with ../cc_int/Makefile, but bsd.lib.mk @@ -148,7 +148,7 @@ .endif echo '#include "ansidecl.h"' >> ${.TARGET} echo '#include "${GCC_CPU}/${GCC_CPU}.h"' >> ${.TARGET} -.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" echo '#include "${GCC_CPU}/att.h"' >> ${.TARGET} .endif .if ${TARGET_ARCH} != "alpha" @@ -161,14 +161,14 @@ .if ${TARGET_ARCH} == "alpha" echo '#include "${GCC_CPU}/elf.h"' >> ${.TARGET} .endif -.if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "x86_64" +.if ${TARGET_ARCH} != "i386" && ${TARGET_ARCH} != "amd64" .if exists(${GCCDIR}/config/${GCC_CPU}/sysv4.h) echo '#include "${GCC_CPU}/sysv4.h"' >> ${.TARGET} .endif .endif echo '#include "${GCC_CPU}/freebsd.h"' >> ${.TARGET} -.if ${TARGET_ARCH} == "x86_64" - echo '#include "${GCC_CPU}/${TARGET_ARCH:S/_/-/}.h"' >> ${.TARGET} +.if ${TARGET_ARCH} == "amd64" + echo '#include "${GCC_CPU}/x86-64.h"' >> ${.TARGET} echo '#include "${GCC_CPU}/freebsd64.h"' >> ${.TARGET} .endif echo '#include "defaults.h"' >> ${.TARGET} ==== //depot/projects/ia64_epc/gnu/usr.bin/cc/cc_tools/auto-host.h#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/auto-host.h,v 1.12 2002/11/26 18:25:18 obrien Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/auto-host.h,v 1.13 2003/04/26 20:04:37 obrien Exp $ */ #include @@ -338,7 +338,7 @@ /* #define SIZEOF_LONG 4 */ #if defined(__i386__) || defined(__powerpc__) || defined(__strongarm__) #define SIZEOF_LONG SIZEOF_INT -#elif defined(__alpha__) || defined(__sparc64__) || defined(__ia64__) || defined(__x86_64__) +#elif defined(__alpha__) || defined(__sparc64__) || defined(__ia64__) || defined(__amd64__) #define SIZEOF_LONG SIZEOF_LONG_LONG #else #error "I don't know what arch this is." ==== //depot/projects/ia64_epc/gnu/usr.bin/cc/include/Makefile#3 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/gnu/usr.bin/cc/include/Makefile,v 1.4 2003/04/01 12:37:54 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/cc/include/Makefile,v 1.5 2003/04/26 20:04:38 obrien Exp $ .include "../Makefile.inc" .PATH: ${GCCDIR}/config/${GCC_CPU} -.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "x86_64" +.if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64" INCS= mmintrin.h xmmintrin.h .elif ${TARGET_ARCH} == "ia64" INCS= ia64intrin.h ==== //depot/projects/ia64_epc/lib/libc/posix1e/mac.conf.5#2 (text+ko) ==== @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/posix1e/mac.conf.5,v 1.2 2003/04/20 04:43:56 rwatson Exp $ +.\" $FreeBSD: src/lib/libc/posix1e/mac.conf.5,v 1.3 2003/04/26 03:32:18 rwatson Exp $ .\" .Dd April 19, 2003 .Dt MAC.CONF 5 @@ -74,6 +74,7 @@ default_ifnet_labels ?biba,?mls,?sebsd default_process_labels ?biba,?mls,partition,?sebsd .Ed +.Pp In this example, userland applications will attempt to retrieve Biba, MLS, and SEBSD labels for all object classes; for processes, they will additionally attempt to retrieve a Partition identifier. ==== //depot/projects/ia64_epc/lib/libkvm/kvm_getprocs.3#3 (text+ko) ==== @@ -34,7 +34,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)kvm_getprocs.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libkvm/kvm_getprocs.3,v 1.13 2003/03/24 15:58:53 charnier Exp $ +.\" $FreeBSD: src/lib/libkvm/kvm_getprocs.3,v 1.14 2003/04/26 15:00:57 trhodes Exp $ .\" .Dd June 4, 1993 .Dt KVM_GETPROCS 3 @@ -50,6 +50,7 @@ .In kvm.h .In sys/param.h .In sys/sysctl.h +.In sys/user.h .\" .Fa kvm_t *kd .Ft struct kinfo_proc * .Fn kvm_getprocs "kvm_t *kd" "int op" "int arg" "int *cnt" ==== //depot/projects/ia64_epc/lib/libutil/login_class.3#3 (text+ko) ==== @@ -17,7 +17,7 @@ .\" 5. Modifications may be freely made to this file providing the above .\" conditions are met. .\" -.\" $FreeBSD: src/lib/libutil/login_class.3,v 1.14 2003/03/24 15:55:03 charnier Exp $ +.\" $FreeBSD: src/lib/libutil/login_class.3,v 1.16 2003/04/26 15:18:27 trhodes Exp $ .\" .Dd December 28, 1996 .Os @@ -112,6 +112,7 @@ maxproc RLIMIT_NPROC openfiles RLIMIT_NOFILE sbsize RLIMIT_SBSIZE +vmemoryuse RLIMIT_VMEM .Ed .It LOGIN_SETPRIORITY Set the scheduling priority for the current process based on the ==== //depot/projects/ia64_epc/release/Makefile.inc.docports#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/release/Makefile.inc.docports,v 1.16 2002/11/10 14:38:27 tmm Exp $ +# $FreeBSD: src/release/Makefile.inc.docports,v 1.17 2003/04/26 07:31:43 murray Exp $ # # List of (dependent) ports that are minimally required to be # checked out from CVS in order to get ${DOCPORTS} built and @@ -35,7 +35,6 @@ ports/graphics/peps \ ports/graphics/png \ ports/graphics/scr2png \ - ports/textproc/scr2txt \ ports/graphics/tiff \ ports/lang/perl5 \ ports/print/freetype2 \ @@ -46,6 +45,8 @@ ports/textproc/docbook-310 \ ports/textproc/docbook-400 \ ports/textproc/docbook-410 \ + ports/textproc/docbook-xml \ + ports/textproc/docbook-xsl \ ports/textproc/docproj \ ports/textproc/dsssl-docbook-modular \ ports/textproc/expat2 \ @@ -55,6 +56,8 @@ ports/textproc/libxslt \ ports/textproc/linuxdoc \ ports/textproc/mkcatalog \ + ports/textproc/scr2txt \ + ports/textproc/sdocbook-xml \ ports/textproc/sgmlformat \ ports/textproc/xhtml \ ports/www/links1 \ ==== //depot/projects/ia64_epc/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#14 (text+ko) ==== @@ -3,7 +3,7 @@ The FreeBSD Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.552 2003/04/25 14:42:53 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.553 2003/04/26 19:07:33 hrs Exp $ 2000 @@ -858,7 +858,7 @@ The following new articles have been added to the documentation set: FreeBSD From Scratch, - The Roadmap for 5-STABLE. + The Roadmap for 5-STABLE. A new Danish (da_DK.ISO8859-1) translation project has been started. ==== //depot/projects/ia64_epc/release/doc/ja_JP.eucJP/errata/article.sgml#4 (text+ko) ==== @@ -1,8 +1,8 @@ - $FreeBSD: src/release/doc/ja_JP.eucJP/hardware/common/dev.sgml,v 1.11 2003/03/16 12:41:12 rushani Exp $ + $FreeBSD: src/release/doc/ja_JP.eucJP/hardware/common/dev.sgml,v 1.12 2003/04/26 19:48:15 hrs Exp $ Âбþ¥Ï¡¼¥É¥¦¥§¥¢ @@ -1700,6 +1700,23 @@ + ASIX Electronics AX88172 ¥Ù¡¼¥¹¤Î USB Ethernet NIC + (&man.axe.4; ¥É¥é¥¤¥Ð) + + + + D-Link DUBE100 + + + Linksys USB200M + + + Netgear FA120 + + + + + ASIX Electronics AX88140A PCI NIC (&man.dc.4; ¥É¥é¥¤¥Ð) @@ -1839,7 +1856,7 @@ - Intel 82557, 82258, 82559, 82550, + Intel 82557, 82258, 82559, 82550, 82562 ¥Ù¡¼¥¹¤Î Fast Ethernet NIC (&man.fxp.4; ¥É¥é¥¤¥Ð) @@ -2453,7 +2470,7 @@ ¤½¤Î¾¤Î¥Í¥Ã¥È¥ï¡¼¥¯µ¡´ï - Granch SBNI12 point-to-point ÄÌ¿®¥¢¥À¥×¥¿ (sbni ¥É¥é¥¤¥Ð) + Granch SBNI12 point-to-point ÄÌ¿®¥¢¥À¥×¥¿ (&man.sbni.4; ¥É¥é¥¤¥Ð) SBNI12-XX ¤ª¤è¤Ó SBNI12D-XX ISA ÈÇ/PCI ÈÇ @@ -2461,6 +2478,9 @@ + Granch SBNI16 SHDSL ¥â¥Ç¥à (&man.sbsh.4; + ¥É¥é¥¤¥Ð) + SMC COM90cx6 ARCNET ¥Í¥Ã¥È¥ï¡¼¥¯¥¢¥À¥×¥¿ (cm ¥É¥é¥¤¥Ð) @@ -2627,24 +2647,72 @@ PCI ¥Ù¡¼¥¹¤Î¥Þ¥ë¥Á¥Ý¡¼¥È¥·¥ê¥¢¥ë¥Ü¡¼¥É (&man.puc.4; ¥É¥é¥¤¥Ð) + + Actiontech 56K PCI + - Avlab Technology, PCI IO 2S + Avlab Technology, PCI IO 2S ¤ª¤è¤Ó PCI IO 4S + + + Comtrol RocketPort 550 + + + Decision Computers PCCOM 4-port ¥·¥ê¥¢¥ë¤ª¤è¤Ó¥Ç¥å¥¢¥ë¥Ý¡¼¥È RS232/422/485 + + + Dolphin Peripherals 4025/4035/4036 + + + IC Book Labs Dreadnought 16x Lite ¤ª¤è¤Ó Pro - - Moxa Industio CP-114 + + Lava Computers 2SP-PCI/DSerial-PCI/Quattro-PCI/Octopus-550 + + Middle Digital, Weasle ¥·¥ê¥¢¥ë¥Ý¡¼¥È + - Syba Tech Ltd. PCI-4S2P-550-ECP + Moxa Industio CP-114, Smartio C104H-PCI ¤ª¤è¤Ó C168H/PCI + + NEC PK-UG-X001 ¤ª¤è¤Ó PK-UG-X008 + Netmos NM9835 PCI-2S-550 + + Oxford Semiconductor OX16PCI954 PCI UART + + + Syba Tech SD-LAB PCI-4S2P-550-ECP + + + SIIG Cyber I/O PCI 16C550/16C650/16C850 + + + SIIG Cyber 2P1S PCI 16C550/16C650/16C850 + + + SIIG Cyber 2S1P PCI 16C550/16C650/16C850 + + + SIIG Cyber 4S PCI 16C550/16C650/16C850 + + + SIIG Cyber Serial (¥·¥ó¥°¥ë¤ª¤è¤Ó¥Ç¥å¥¢¥ë) PCI 16C550/16C650/16C850 + + + Syba Tech Ltd. PCI-4S2P-550-ECP + - PCCOM dual port RS232/422/485 + Titan PCI-200H ¤ª¤è¤Ó PCI-800H + + + US Robotics (3Com) 3CP5609 ¥â¥Ç¥à - - SIIG Cyber Serial Dual PCI 16C550 - + + VScom PCI-400 ¤ª¤è¤Ó PCI-800 + @@ -3021,6 +3089,10 @@ + + EHCI ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»È¤Ã¤¿ + USB 2.0 ¥³¥ó¥È¥í¡¼¥é (ehci ¥É¥é¥¤¥Ð) + ¥Ï¥Ö @@ -3218,7 +3290,7 @@ IEEE 1394 (FireWire) ¥Ç¥Ð¥¤¥¹ - ¥Û¥¹¥È¥³¥ó¥È¥í¡¼¥é (&man.fwohci.4; + ¥Û¥¹¥È¥³¥ó¥È¥í¡¼¥é (&man.fwohci.4; ¥É¥é¥¤¥Ð) @@ -3241,7 +3313,7 @@ - ¥¹¥È¥ì¡¼¥¸ (&man.sbp.4; ¥É¥é¥¤¥Ð) + ¥¹¥È¥ì¡¼¥¸ (&man.sbp.4; ¥É¥é¥¤¥Ð) @@ -3337,7 +3409,7 @@ - ¥Õ¥í¥Ã¥Ô¥É¥é¥¤¥Ö (&man.fd.4; ¥É¥é¥¤¥Ð) + ¥Õ¥í¥Ã¥Ô¥É¥é¥¤¥Ö (&man.fdc.4; ¥É¥é¥¤¥Ð) Genius ¤ª¤è¤Ó Mustek ¥Ï¥ó¥É¥¹¥­¥ã¥Ê GPB ¤ª¤è¤Ó Transputer ¥É¥é¥¤¥Ð ¥­¡¼¥Ü¡¼¥É ==== //depot/projects/ia64_epc/release/doc/ja_JP.eucJP/hardware/i386/proc-i386.sgml#2 (text+ko) ==== @@ -1,6 +1,6 @@ Âбþ¥×¥í¥»¥Ã¥µ¤ª¤è¤Ó¥Þ¥¶¡¼¥Ü¡¼¥É @@ -32,6 +32,30 @@ BIOS ¤ä¥Þ¥¶¡¼¥Ü¡¼¥É¤Î¥Ð¥°¤Ë¤è¤ê¡¢ÌäÂ꤬½Ð¤ë¥±¡¼¥¹¤¬¤¢¤ê¤Þ¤¹¡£ ÂнèÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï &a.smp; ¤ò½ÏÆɤ¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£ + &os; ¤Ï¡¢Intel ¤Î CPU ¤ËÅëºÜ¤µ¤ì¤Æ¤¤¤ë + HyperThreading (HTT) µ¡Ç½¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + options SMP µ¡Ç½¤òÍ­¸ú¤Ë¤·¤Æ¤¤¤ë¥«¡¼¥Í¥ë¤Ï + ÏÀÍý¥×¥í¥»¥Ã¥µ¤ò¼«Æ°Åª¤Ë¸¡½Ð¤·¡¢Í­¸ú¤Ë¤·¤Þ¤¹¡£ + &os; ¤Î¥Ç¥Õ¥©¥ë¥È¤Î¥¹¥±¥¸¥å¡¼¥é¤Ï¡¢¤³¤ÎÏÀÍý CPU + ¤òÄɲ䵤줿ʪÍý CPU ¤ÈƱÅù¤Ë°·¤¤¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢ + Ʊ¤¸ CPU Æâ¤ÎÏÀÍý¥×¥í¥»¥Ã¥µ´Ö¤Ç¶¦Í­¤µ¤ì¤Æ¤¤¤ë»ñ¸»¤ËÂФ·¤Æ¡¢ + ¥¹¥±¥¸¥å¡¼¥ê¥ó¥°·èÄê¤òºÇŬ²½¤·¤Þ¤»¤ó¡£ + ¤³¤Î¥¹¥±¥¸¥å¡¼¥ê¥ó¥°ÊýË¡¤Ç¤ÏºÇŬ¤ÊÀ­Ç½¤òÆÀ¤ë¤³¤È¤¬¤Ç¤­¤Ê¤¤¤¿¤á¡¢ + ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢µ¯Æ°»þ¤ËÏÀÍý CPU ¤òÄä»ß¤µ¤»¤Æ¤¤¤Þ¤¹¡£ + ÏÀÍý CPU ¤Ï machdep.hlt_logical_cpus + sysctl ÊÑ¿ô¤ÇÍ­¸ú¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Þ¤¿¡¢ + machdep.hlt_cpus sysctl ÊÑ¿ô¤ò»È¤Ã¤Æ¡¢ + CPU ¤ò¥¢¥¤¥É¥ë¥ë¡¼¥×¤Ë¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£ + ¾Ü¤·¤¯¤Ï¡¢&man.smp.4; ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ + + &os; ¤Ï¡¢Physical Address Extensions (PAE) µ¡Ç½¤òÅëºÜ¤·¤¿ + CPU ¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + PAE µ¡Ç½¤òÍ­¸ú¤Ë¤·¤¿¥«¡¼¥Í¥ë¤Ï¡¢4GB + °Ê¾å¤Î¥á¥â¥ê¤ò¸¡½Ð¤·¡¢¥·¥¹¥Æ¥à¤«¤éÍøÍѤǤ­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£ + ¤³¤Îµ¡Ç½¤òÍ­¸ú¤Ë¤¹¤ë¤È¡¢ÍøÍѤǤ­¤ë¥Ç¥Ð¥¤¥¹¥É¥é¥¤¥Ð¤ä¾¤Î &os; + ¤Îµ¡Ç½¤¬À©¸Â¤µ¤ì¤Þ¤¹¡£¾Ü¤·¤¯¤Ï¡¢&man.pae.4; + ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ + &os; ¤Ï i386 ¥Ù¡¼¥¹¤Î¥é¥Ã¥×¥È¥Ã¥×¤Ç¤âÆ°ºî¤·¤Þ¤¹¤¬¡¢ ¥µ¥¦¥ó¥É¡¢¥°¥é¥Õ¥£¥Ã¥¯¥¹¡¢ÅŸ»´ÉÍý¡¢PCCARD ³ÈÄ¥¥¹¥í¥Ã¥ÈÅù¤Î¥Ï¡¼¥É¥¦¥§¥¢µ¡Ç½¤ÎÂбþ¤Ë¤ÏÊФ꤬¤¢¤ê¤Þ¤¹¡£ ==== //depot/projects/ia64_epc/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#4 (text+ko) ==== @@ -1,9 +1,9 @@ @@ -11,7 +11,7 @@ FreeBSD ¥×¥í¥¸¥§¥¯¥È - $FreeBSD: src/release/doc/ja_JP.eucJP/relnotes/common/new.sgml,v 1.83 2003/03/24 21:42:53 hrs Exp $ + $FreeBSD: src/release/doc/ja_JP.eucJP/relnotes/common/new.sgml,v 1.84 2003/04/26 19:13:00 hrs Exp $ 2000 @@ -133,11 +133,12 @@ ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ &merged; - sendmail ¤¬¥Ð¡¼¥¸¥ç¥ó 8.12.8 - ¤Ë¥¢¥Ã¥×¥°¥ì¡¼¥É¤µ¤ì¤Þ¤·¤¿¡£¤³¤ì¤Ë¤Ï¡¢ - ¥ê¥â¡¼¥È¤«¤é°­ÍѲÄǽ¤Ê¥Ð¥Ã¥Õ¥¡¥ª¡¼¥Ð¥Õ¥í¡¼ÌäÂê¤Î½¤Àµ¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£ + sendmail ¤Ë¤¢¤Ã¤¿ + ¥ê¥â¡¼¥È¤«¤é°­ÍѲÄǽ¤Ê¥Ð¥Ã¥Õ¥¡¥ª¡¼¥Ð¥Õ¥í¡¼ÌäÂ꤬½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£ ÌäÂê¤Î¾ÜºÙ¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£´«¹ð FreeBSD-SA-03:04 + ¤ª¤è¤Ó FreeBSD-SA-03:07 ¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ &merged; @@ -171,6 +172,10 @@ ¤³¤ì¤Ï XFree86 4.3.0 ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤â¤Î¤È¤Û¤ÜƱ°ì¤Î¤â¤Î¤Ç¤¹¤¬¡¢ ¤¤¤¯¤Ä¤«¤Î¥Ð¥°½¤Àµ¤âÄɲäǴޤޤì¤Æ¤¤¤Þ¤¹¡£ + ehci ¥É¥é¥¤¥Ð¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï USB 2.0 ¥³¥ó¥È¥í¡¼¥é¤Ç»È¤ï¤ì¤Æ¤¤¤ë + USB Enhanced Host Controller Interface ¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + /dev/tty ¤Îµö²Ä°À­¤Î¼è¤ê°·¤¤¤Ë¤¢¤Ã¤¿¡¢¾®¤µ¤Ê¥Ð¥°¤¬½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£ ¤³¤ì¤Ë¤è¤ê¡¢&man.su.1; ¤Î¼Â¹Ô¸å¤â &man.ssh.1; @@ -186,6 +191,13 @@ Linux ¥¨¥ß¥å¥ì¡¼¥·¥ç¥ó¥â¡¼¥É¤¬ IPv6 ¤ËÂбþ¤·¤Þ¤·¤¿¡£ + &man.madvise.2; ¤¬¡¢¿·¤·¤¯ + MADV_PROTECT ¤È¤¤¤¦Æ°ºî¤ËÂбþ¤·¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢¤½¤Î¥×¥í¥»¥¹¤ÏÈó¾ï¤Ë½ÅÍפʤâ¤Î¤Ç¡¢ + ¥¹¥ï¥Ã¥×¶õ´Ö¤¬¸Ï³é¤·¤Æ¤·¤Þ¤Ã¤¿»þ¤Ç¤â kill + ¤·¤Æ¤Ï¤¤¤±¤Ê¤¤¡¢¤È¤¤¤¦¤³¤È¤ò²¾ÁÛ¥á¥â¥ê¥·¥¹¥Æ¥à¤ËÅÁ¤¨¤ë¤â¤Î¤Ç¤¹¡£ + ¤½¤Î»þ¤Î¥×¥í¥»¥¹¤Ï¡¢¥¹¡¼¥Ñ¥æ¡¼¥¶¤¬½êÍ­¤¹¤ë¤â¤Î¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ + SMP ¤Ë¤ª¤±¤ëÀ­Ç½¸þ¾å¤¬´üÂԤǤ­¤ë¡¢ @@ -202,21 +214,52 @@ (¸ß´¹À­¤òÊݤĤ¿¤á¡¢½¾Íè¤ÎÀÅŪ¤Ê¥á¥¸¥ã¡¼ÈÖ¹æ¤Î¤Þ¤Þ¤Ê¤Ã¤Æ¤¤¤ë¥É¥é¥¤¥Ð¤âÆ󡦻°»Ä¤Ã¤Æ¤¤¤Þ¤¹) ¤Ê¤¯¤Ê¤ê¡¢¥Ç¥Ð¥¤¥¹¤Î¥á¥¸¥ã¡¼Èֹ椬­¤ê¤Ê¤¯¤Ê¤ë²ÄǽÀ­¤âÄ㤯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ + ¥«¡¼¥Í¥ë¥¹¥ì¥Ã¥ÉÍѤδʰ×Ū¤ÊÃٱ䥹¥¤¥Ã¥Áµ¡¹½¤¬¼ÂÁõ¤µ¤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢(³ä¤ê¹þ¤ß¥Ï¥ó¥É¥é¤Ê¤É) ¾¤Î¥×¥í¥»¥¹¤È´Ø·¸¤¬¤Ê¤¤¡¢ + ºÙ¤«¤¤¥³¥ó¥Æ¥­¥¹¥È¥¹¥¤¥Ã¥Á¤Ë¤è¤ë¥ª¡¼¥Ð¥Ø¥Ã¥É¤òºï¸º¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ + ¤³¤Îµ¡Ç½¤Ï options LAZY_SWITCH + ¤ò»ØÄꤹ¤ë¤ÈÍ­¸ú¤Ë¤Ê¤ê¤Þ¤¹¡£ + ¥×¥í¥»¥Ã¥µ¡¦¥Þ¥¶¡¼¥Ü¡¼¥É¤ÎÂбþ¾õ¶· - &os; ¤Ë¡¢HyperThreading (HTT) + SMP ¥«¡¼¥Í¥ë¤Ë HyperThreading (HTT) Âбþ¤Î´ðÁÃÉôʬ¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ - HTT ¥«¡¼¥Í¥ë¥ª¥×¥·¥ç¥ó¤òÄɲä·¤¿ - SMP ¥«¡¼¥Í¥ë¤Ï¡¢HTT - ¤ËÂбþ¤·¤¿¥Þ¥·¥ó¾å¤ÇÏÀÍý¥×¥í¥»¥Ã¥µ¤Î¸¡½Ð¤È½é´ü²½¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ - ¤³¤ÎÏÀÍý¥×¥í¥»¥Ã¥µ¤Ï¡¢ÊªÍý¥×¥í¥»¥Ã¥µ¤òÄɲä·¤¿¾ì¹ç¤ÈƱ¤¸¤è¤¦¤Ë¡¢ - ¥×¥í¥»¥¹¤ò¥¹¥±¥¸¥å¡¼¥ê¥ó¥°¤¹¤ë¤¿¤á¤Ë»È¤ï¤ì¤Þ¤¹¡£ - &merged; + ¥¹¥±¥¸¥å¡¼¥é¤ÏÏÀÍý CPU ¤ò¡¢ÊªÍý CPU ¤òÄɲä·¤¿¾ì¹ç¤ÈƱ¤¸¤è¤¦¤Ë + ¥×¥í¥»¥¹¥¹¥±¥¸¥å¡¼¥ê¥ó¥°¤Ë»È¤¤¤Þ¤¹¡£ + HTT ¤Ï¡¢»ñ¸»¤¬Â­¤ê¤Ê¤¯¤Ê¤ë¤¤¤¯¤Ä¤«¤Î¥±¡¼¥¹¤ÇºÇÁ±¤ÎÀ­Ç½¤Ë¤Ê¤é¤Ê¤¤¤³¤È¤¬ + ¤¢¤ë¤¿¤á¡¢µ¯Æ°»þ¤Ë¤ÏÏÀÍý CPU ¤Ï¥Ç¥Õ¥©¥ë¥È¤ÇÄä»ß¾õÂ֤ˤʤäƤ¤¤Þ¤¹¡£ + Í­¸ú¤Ë¤¹¤ë¤Ë¤Ï¡¢machdep.hlt_logical_cpus sysctl + ÊÑ¿ô¤ò»È¤¤¤Þ¤¹¡£¤Þ¤¿¡¢machdep.hlt_cpus sysctl + ÊÑ¿ô¤ò»È¤¦¤È¡¢¥¢¥¤¥É¥ë¥ë¡¼¥×¤ò»È¤Ã¤Æ CPU ¤òÄä»ß¾õÂ֤ˤ¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£ + ¾Ü¤·¤¯¤Ï &man.smp.4; ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ + + + ½é´ü¤Î 5.0-CURRENT ¥¹¥Ê¥Ã¥×¥·¥ç¥Ã¥È¤ä 4.8-RELEASE ¤Ê¤É¤Î + ¥Ð¡¼¥¸¥ç¥ó¤Î &os; ¤Ï¡¢HyperThreading µ¡Ç½¤òÍ­¸ú¤Ë¤¹¤ë¤¿¤á¤Ë + ¥«¡¼¥Í¥ë¥³¥ó¥Õ¥£¥°»þ¤Ë options HTT + ¤ò»ØÄꤷ¤Æ¤¤¤Þ¤·¤¿¡£¸½ºß¤Ï¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍ×¤Ï + ¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ + + + + + Intel Pentium Pro °Ê¹ß¤ËÅëºÜ¤µ¤ì¤Æ¤¤¤ë + Physical Address Extensions (PAE) µ¡Ç½¤ËÂбþ¤·¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢°ì¤Ä¤Î¥Þ¥·¥ó¾å¤ÇºÇÂç 64GB ¤Î RAM ¤ò»ÈÍѤ¹¤ë¤³¤È¤¬ + ¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ëµ¡Ç½¤Ç¤¹¤¬¡¢°ì¤Ä¤Î¥×¥í¥»¥¹ (¤È &os; ¥«¡¼¥Í¥ë) + ¤¬»È¤¨¤ë¥á¥â¥êÎ̤Ͻ¾Íè¤Î¤Þ¤Þ¤Ç¤¹¡£ + ¾Ü¤·¤¯¤Ï¡¢&man.pae.4; ¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ + ¤³¤Îµ¡Ç½¤Îºî¶È¤Ï¡¢DARPA ¤ª¤è¤Ó Network Associates Laboratories + ¤Î»Ù±ç¤ò¼õ¤±¤Æ¹Ô¤Ê¤ï¤ì¤Þ¤·¤¿¡£ + + &man.vpd.4; ¥É¥é¥¤¥Ð¤¬¿·¤·¤¯Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï IBM ThinkPad ¥·¥ê¡¼¥º¤Î Vital Product Data + ¹½Â¤ÂΤ«¤é¥Ï¡¼¥É¥¦¥§¥¢¾ðÊó¤òÆɤ߽Ф¹¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ - + ¥Ö¡¼¥È¥í¡¼¥À¤ÎÊѹ¹ alpha ¥¢¡¼¥­¥Æ¥¯¥Á¥ãÍѤΥ֡¼¥È¥í¡¼¥À @@ -248,18 +291,32 @@ + ¥³¡¼¥É¥µ¥¤¥º¤ÎÀ©¸Â¤«¤é¡¢ + i386 ¥Ö¡¼¥È¥í¡¼¥À¤«¤éÆɤळ¤È¤Î¤Ç¤­¤ë¥«¡¼¥Í¥ë¤Ï + 1.5TB °Ê²¼¤Î¥ë¡¼¥È¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë¤¢¤ë¤â¤Î¤À¤±¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£ + - + ¥Í¥Ã¥È¥ï¡¼¥¯¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ÎÂбþ¾õ¶· + &man.axe.4; + ¥Í¥Ã¥È¥ï¡¼¥¯¥É¥é¥¤¥Ð¤¬¿·¤·¤¯Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï ASIX Electronics AX88172 USB 2.0 + ¥Á¥Ã¥×¥»¥Ã¥È¤ò¥Ù¡¼¥¹¤Ë¤·¤¿ + USB Ethernet ¥¢¥À¥×¥¿¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + cm ¥É¥é¥¤¥Ð¤¬ IPX ¤ËÂбþ¤·¤Þ¤·¤¿¡£ &merged; + &man.sbsh.4; ¥É¥é¥¤¥Ð¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï Granch SBNI16 SHDSL ¥â¥Ç¥à¤ËÂбþ¤·¤Æ¤¤¤Þ¤¹¡£ + &merged; + 802.11 ¥ê¥ó¥¯ÁؤËÂбþ¤·¤¿ wlan ¥â¥¸¥å¡¼¥ë¤¬¿·¤·¤¯Äɲ䵤ì¤Þ¤·¤¿¡£ - ¤³¤Îµ¡Ç½¤Ï¸½ºß¡¢&man.wi.4; ¥É¥é¥¤¥Ð¤ÇÍøÍѤǤ­¤Þ¤¹¡£ + ¸½ºß¡¢&man.wi.4; ¥É¥é¥¤¥Ð¤¬¤³¤Îµ¡Ç½¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£ ¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ÎÀßÄê»þ¤Ë¥«¡¼¥Í¥ë¥Ñ¥Ë¥Ã¥¯ (¤ä¾¤ÎÌäÂê) @@ -267,7 +324,7 @@ ¥É¥é¥¤¥Ð¤Î¥¿¥¤¥ß¥ó¥°¥Ð¥°¤¬½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£ - + ¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥È¥³¥ë &man.ipfw.4; ¤Î skipto ¥ë¡¼¥ë¤È @@ -335,7 +392,7 @@ - + ¥Ç¥£¥¹¥¯¡¦µ­²±ÁõÃÖ &man.aac.4; ¥É¥é¥¤¥Ð¤¬¡¢¥¸¥ã¥¤¥¢¥ó¥È¥«¡¼¥Í¥ë¥í¥Ã¥¯¤Ê¤·¤Ë @@ -376,9 +433,19 @@ wfd ¥É¥é¥¤¥Ð¤È wst ¥É¥é¥¤¥Ð¤¬ºï½ü¤µ¤ì¤Þ¤·¤¿¡£ - + ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à + ¿·¤·¤¯ DIRECTIO + ¥«¡¼¥Í¥ë¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¥Ð¥Ã¥Õ¥¡¥­¥ã¥Ã¥·¥å¤ò·Ðͳ¤»¤º¤ËľÀܥǡ¼¥¿¤òÆɤ߹þ¤ó¤À¤ê¡¢ + ¥æ¡¼¥¶¶õ´Ö¤Î¥Ð¥Ã¥Õ¥¡¤ËľÀܥǡ¼¥¿¤ò½ñ¤­¹þ¤à¤³¤È¤ò²Äǽ¤Ë¤·¤Þ¤¹¡£ + ¤³¤Îµ¡Ç½¤ò»È¤¦¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ëµ­½Ò»Ò¤Ë + O_DIRECT ¥Õ¥é¥°¤ò¥»¥Ã¥È¤¹¤ë¤³¤È¤È¡¢ + Æɤ߽Ф·Áàºî»þ¤Î¥ª¥Õ¥»¥Ã¥È¡¦¥Ç¡¼¥¿Ä¹¤ÎξÊý¤Ë¡¢ + ʪÍý¥á¥Ç¥£¥¢¥»¥¯¥¿Ä¹¤ÎÀ°¿ôÇܤò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£ + &merged; + NETNCP ¤ª¤è¤Ó Netware Filesystem Âбþ (nwfs) ¤¬¡¢Àµ¤·¤¯Æ°ºî¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ @@ -387,24 +454,22 @@ ½¤Àµ¤µ¤ì¤Þ¤·¤¿¡£ - + PCCARD Âбþ - + ¥Þ¥ë¥Á¥á¥Ç¥£¥¢¤Ø¤ÎÂбþ¾õ¶· - - - - - ´ó£¥½¥Õ¥È¥¦¥§¥¢ - - IPFilter ¤¬¥Ð¡¼¥¸¥ç¥ó - 3.4.31 ¤Ë¹¹¿·¤µ¤ì¤Þ¤·¤¿¡£ - &merged; + &man.speaker.4; ¥Ç¥Ð¥¤¥¹ÍѤΠ+ atspeaker.ko + ¥â¥¸¥å¡¼¥ë¤È + pcspeaker.ko + ¥â¥¸¥å¡¼¥ë¤Ï¡¢ + speaker.ko + ¤È¤¤¤¦Ì¾Á°¤ËÊѤï¤ê¤Þ¤·¤¿¡£ @@ -414,20 +479,32 @@ &man.adduser.8; ¤¬¡¢¥·¥§¥ë¤ÎÆüìʸ»ú¤ò´Þ¤à¥Ñ¥¹¥ï¡¼¥É¤ò Àµ¤·¤¯½èÍý¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ + &man.adduser.8; ¤Ë¡¢¥æ¡¼¥¶¤Î¥Ç¥Õ¥©¥ë¥È¥í¥°¥¤¥ó¥°¥ë¡¼¥×¤òÀßÄꤹ¤ë + ¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + compat4x ÇÛÉÛʪ¤Ë¡¢&os; 4.7-RELEASE ¤Ë´Þ¤Þ¤ì¤ë libcrypto.so.2, libgmp.so.3, libssl.so.2 ¥é¥¤¥Ö¥é¥ê¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + &man.chgrp.1 ¤ª¤è¤Ó &man.chown.8 ¤Ï¡¢ + ¥ª¥×¥·¥ç¥ó¤¬Ê£¿ô¸Ä»ØÄꤵ¤ì¤¿¾ì¹ç¡¢ + ½êÍ­¼Ô/½êÍ­¥°¥ë¡¼¥×¤òÊѹ¹¤¹¤ë»þ¤Ë¿·µì¤Î uid/gid + ¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ + &man.config.8; ¤Ë¡¢ ¥«¡¼¥Í¥ë¥³¥ó¥Õ¥£¥°¥Õ¥¡¥¤¥ë¤Î device »Ø¼¨»Ò¤Î»ØÄê¤ò̵¸ú¤Ë¤¹¤ë nodevice »Ø¼¨»Ò¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ ¤Þ¤¿¡¢nooption ¤È nomakeoption »Ø¼¨»Ò¤âÄɲ䵤ì¤Æ¤ª¤ê¡¢ - ¤½¤ì¤è¤êÁ°¤Ë¤¢¤ë option ¤ª¤è¤Ó - makeoption »Ø¼¨»Ò¤ò¤½¤ì¤¾¤ì̵¸ú¤Ë¤·¤Þ¤¹¡£ + ¤½¤ì¤è¤êÁ°¤Ë¤¢¤ë options ¤ª¤è¤Ó + makeoptions »Ø¼¨»Ò¤ò¤½¤ì¤¾¤ì̵¸ú¤Ë¤·¤Þ¤¹¡£ + + &man.diskinfo.8; ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢¥Ç¥£¥¹¥¯¥Ç¥Ð¥¤¥¹¤Î¾ðÊó¤Îɽ¼¨¤È¡¢ + ¥Í¥¤¥Æ¥£¥Ö¤ÊÀ­Ç½»î¸³¤ò¹Ô¤Ê¤¦¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£ &man.disklabel.8; ¤«¤é¡¢ ¥Õ¥é¥°¤È @@ -488,6 +565,10 @@ ¤ª¤è¤Ó ¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ &merged; + &man.gstat.8; ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢&man.geom.4; + ¥µ¥Ö¥·¥¹¥Æ¥à¤Ë¤ª¤±¤ë¥Ç¥£¥¹¥¯¤Î²ÔƯ¾õÂÖ¤òɽ¼¨¤¹¤ë¤â¤Î¤Ç¤¹¡£ + &man.ipfw.8; ¤Ë¡¢(¥Õ¥¡¥¤¥¢¥¦¥©¡¼¥ëµ¡Ç½¤½¤Î¤â¤Î¤ÎÍ­¸ú²½¡¦Ìµ¸ú²½¤ò´Þ¤à) &man.ipfw.4; ¤Ë¤ª¤±¤ë¤µ¤Þ¤¶¤Þ¤ÊÀ©¸æ¤ò¼Â¸½¤¹¤ë¤¿¤á¡¢ enable ¥³¥Þ¥ó¥É¡¢ @@ -495,13 +576,21 @@ ¤³¤ì¤é¤Ï¡¢½¾Íè¤Î sysctl ÊÑ¿ô¤è¤ê¤â¤ï¤«¤ê¤ä¤¹¤¯¡¢ ÊØÍø¤ÊÁàºî¼êÃʤòÄ󶡤·¤Þ¤¹¡£&merged; + &man.jail.8; ¤Ë¡¢¿·¤·¤¯ ¥Õ¥é¥°¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢¿·¤·¤¯ºîÀ®¤·¤¿ jail ¤Î¼±Ê̻Ҥò½ÐÎϤ·¤Þ¤¹¡£ + + ´û¸¤Î jail ¤ÎÃæ¤Ç¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¡¢&man.jexec.8; + ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + + ´û¸¤Î jail ¤ò°ìÍ÷ɽ¼¨¤¹¤ë &man.jls.8; ¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + &man.kenv.1; ¤¬¡¢¥ë¡¼¥È¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¤ß¤¬¥Þ¥¦¥ó¥È¤µ¤ì¤¿¾õÂÖ¤Ç ¥·¥¹¥Æ¥à¤¬µ¯Æ°¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤âÍøÍѤǤ­¤ë¤è¤¦¡¢ /usr/bin ¤«¤é /bin ¤Ë°Ü¤µ¤ì¤Þ¤·¤¿¡£ - &man.devfs.5; ¤ÎÍøÍѤ¬É¬¿Ü¤È¤Ê¤Ã¤¿¤¿¤á¡¢ - ɬÍפ¬¤Ê¤¯¤Ê¤Ã¤¿ MAKEDEV ¥¹¥¯¥ê¥×¥È¤Ïºï½ü¤µ¤ì¤Þ¤·¤¿¡£ + &man.killall.1; ¤Ë¿·¤·¤¯ ¥ª¥×¥·¥ç¥ó¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ + ¤³¤ì¤Ï¡¢¤Ò¤È¤Ä¤Î jail ¤Ë¤¢¤ë¤¹¤Ù¤Æ¤Î¥×¥í¥»¥¹¤ò kill ¤·¤Þ¤¹¡£ ¥æ¡¼¥¶¥é¥ó¥É¤«¤é &man.geom.4; ¥µ¥Ö¥·¥¹¥Æ¥à¤Î°ìÉô¤Ø¤Î¥¢¥¯¥»¥¹¤òÄ󶡤¹¤ë &man.libgeom.3; ¥é¥¤¥Ö¥é¥ê¤¬Äɲ䵤ì¤Þ¤·¤¿¡£ @@ -513,12 +602,21 @@ net.inet.ip.portrange.reservedhigh sysctl ÊÑ¿ô¤ÈÁȤ߹ç¤ï¤»¤Æ»È¤¦¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤Þ¤¹¡£ + &man.devfs.5; ¤¬É¬¿Ü¤È¤Ê¤Ã¤¿¤¿¤á¡¢ + ɬÍפ¬¤Ê¤¯¤Ê¤Ã¤¿ MAKEDEV ¥¹¥¯¥ê¥×¥È¤Ïºï½ü¤µ¤ì¤Þ¤·¤¿¡£ + + &man.mixer.8; ¤Ë¡¢ÁêÂÐÃͤò»È¤Ã¤¿¥Ü¥ê¥å¡¼¥àÄ´À°¤¬¼ÂÁõ¤µ¤ì¤Þ¤·¤¿¡£ + >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Apr 26 15:56:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1DA2137B404; Sat, 26 Apr 2003 15:56:37 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A414937B401 for ; Sat, 26 Apr 2003 15:56:36 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4031243F75 for ; Sat, 26 Apr 2003 15:56:36 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QMua0U087018 for ; Sat, 26 Apr 2003 15:56:36 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QMuZSB087008 for perforce@freebsd.org; Sat, 26 Apr 2003 15:56:35 -0700 (PDT) Date: Sat, 26 Apr 2003 15:56:35 -0700 (PDT) Message-Id: <200304262256.h3QMuZSB087008@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29830 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 22:56:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=29830 Change 29830 by jmallett@jmallett_dalek on 2003/04/26 15:56:10 Move ip22 stubbing out to its own file, fill out subtype, type, board revision, and so on. Do some simple memory probing. Affected files ... .. //depot/projects/mips/sys/conf/files.mips#13 edit .. //depot/projects/mips/sys/mips/sgimips/ip22.c#1 add .. //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#8 edit .. //depot/projects/mips/sys/mips/sgimips/models.h#1 add Differences ... ==== //depot/projects/mips/sys/conf/files.mips#13 (text+ko) ==== @@ -25,6 +25,9 @@ mips/sgimips/clock.c optional sgimips mips/sgimips/machdep_sgimips.c optional sgimips +# This stanza is model files, per platform then per model. +mips/sgimips/ip22.c optional sgimips ip22 + # This stanza is device files. dev/arcbios/arcbios.c optional arcbios dev/arcbios/arcbios_tty.c optional arcbios ==== //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#8 (text+ko) ==== @@ -34,21 +34,25 @@ #include #include +#include + #include #include #include "opt_model.h" -static void ip22_init(void); - struct machine_type { const char *identifier; void (*init)(void); + int type; } machines[] = { - { "SGI-IP22", ip22_init }, - { NULL, NULL } + { "SGI-IP22", ip22_init, MACH_SGI_IP22 }, + { NULL, NULL, 0 } }; +int arcsmem; +int mach_type, mach_subtype, mach_boardrev; + void platform_halt(void) { @@ -64,40 +68,60 @@ void platform_start(int argc, char **argv) { + struct arcbios_mem *mem; struct machine_type *mtp; const char *cpufreq; + int first, i, last, size; /* * Initialise the ARCBIOS stuff. */ arcbios_init(MIPS_PHYS_TO_KSEG1(0x00001000)); arcbios_cnattach(); - printf("See MIPS Run\n"); cpufreq = ARCBIOS->GetEnvironmentVariable("cpufreq"); if (cpufreq == NULL) panic("$cpufreq not set"); - printf("%s at %sMHz\n", arcbios_system_identifier, cpufreq); - for (mtp = machines; mtp->identifier != NULL; mtp++) { if (strcmp(mtp->identifier, arcbios_system_identifier) == 0) break; } if (mtp->identifier == NULL) printf("Warning: unsupported system, nothing will work.\n"); - else + else { + mach_type = mtp->type; (*mtp->init)(); + } + + printf("%s (IP%d), subtype %x, board rev. %x at %sMHz\n", + arcbios_system_identifier, mach_type, mach_subtype, mach_boardrev, cpufreq); + + mem = NULL; + for (i = 0;; i++) { + mem = ARCBIOS->GetMemoryDescriptor(mem); + + if (mem == NULL) + break; - cpu_reset(); -} + first = round_page(mem->BasePage * ARCBIOS_PAGESIZE); + last = trunc_page(first + mem->PageCount * ARCBIOS_PAGESIZE); + size = last - first; -static void -ip22_init(void) -{ -#ifdef IP22 - ; -#else - printf("Warning: IP22 support not compiled in.\n"); -#endif + switch (mem->Type) { + case ARCBIOS_MEM_FirmwareTemporary: + case ARCBIOS_MEM_FirmwarePermanent: + arcsmem += btoc(size); + break; + default: + printf("Memory range %0x-%0x type %d\n", + first, last, mem->Type); + break; + } + physmem += btoc(size); + } + printf("total memory = %ld (%ld MB)\n", ctob(physmem), + ctob(physmem) / (1024 * 1024)); + printf("ARCS memory = %d (%d MB)\n", ctob(arcsmem), + ctob(arcsmem) / (1024 * 1024)); } From owner-p4-projects@FreeBSD.ORG Sat Apr 26 15:57:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0E4C337B404; Sat, 26 Apr 2003 15:57:39 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9FD0A37B401 for ; Sat, 26 Apr 2003 15:57:38 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3ABE743FBF for ; Sat, 26 Apr 2003 15:57:38 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QMvc0U087926 for ; Sat, 26 Apr 2003 15:57:38 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QMvbkc087917 for perforce@freebsd.org; Sat, 26 Apr 2003 15:57:37 -0700 (PDT) Date: Sat, 26 Apr 2003 15:57:37 -0700 (PDT) Message-Id: <200304262257.h3QMvbkc087917@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29831 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 22:57:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=29831 Change 29831 by jmallett@jmallett_dalek on 2003/04/26 15:57:08 Add some printf insanity, return the start address in uncached space for pmap_map. Affected files ... .. //depot/projects/mips/sys/mips/mips/pmap.c#5 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/pmap.c#5 (text+ko) ==== @@ -32,8 +32,10 @@ #include #include #include +#include #include +#include #include #include @@ -58,213 +60,255 @@ int pmap_pagedaemon_waken; +#define UNIMPL() \ +printf("%s unimplemented at %s:%d\n", __func__, __FILE__, __LINE__) + void pmap_activate(struct thread *td) { + UNIMPL(); } vm_offset_t pmap_addr_hint(vm_object_t object, vm_offset_t va, vm_size_t size) -{ +{ + UNIMPL(); return (0); } void pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) { + UNIMPL(); } void pmap_clear_modify(vm_page_t m) { + UNIMPL(); } void pmap_clear_reference(vm_page_t m) { + UNIMPL(); } void pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, vm_size_t len, vm_offset_t src_addr) { + UNIMPL(); } void pmap_copy_page(vm_page_t src, vm_page_t dst) { + UNIMPL(); } void pmap_dispose_altkstack(struct thread *td) { + UNIMPL(); } void pmap_dispose_thread(struct thread *td) { + UNIMPL(); } void pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, boolean_t wired) { + UNIMPL(); } vm_offset_t pmap_extract(pmap_t pmap, vm_offset_t va) { + UNIMPL(); return (0); } void pmap_growkernel(vm_offset_t addr) { + UNIMPL(); } void pmap_init(vm_offset_t phys_start, vm_offset_t phys_end) { + UNIMPL(); } void pmap_init2(void) { + UNIMPL(); } boolean_t pmap_is_modified(vm_page_t m) { + UNIMPL(); return (FALSE); } vm_offset_t pmap_kextract(vm_offset_t va) { + UNIMPL(); return (0); } vm_offset_t pmap_map(vm_offset_t *va, vm_offset_t start, vm_offset_t end, int prot) { - return (0); + return (MIPS_PHYS_TO_KSEG1(start)); } int pmap_mincore(pmap_t pmap, vm_offset_t addr) { + UNIMPL(); return (0); } void pmap_new_altkstack(struct thread *td, int pages) { + UNIMPL(); } void pmap_new_thread(struct thread *td, int pages) { + UNIMPL(); } void pmap_object_init_pt(pmap_t pmap, vm_offset_t addr, vm_object_t object, vm_pindex_t pindex, vm_size_t size, int limit) { + UNIMPL(); } boolean_t pmap_page_exists_quick(pmap_t pmap, vm_page_t m) { + UNIMPL(); return (FALSE); } void pmap_page_protect(vm_page_t m, vm_prot_t prot) { + UNIMPL(); } void pmap_pinit(pmap_t pmap) { + UNIMPL(); } void pmap_pinit0(pmap_t pmap) { + UNIMPL(); } void pmap_pinit2(pmap_t pmap) { + UNIMPL(); } void pmap_prefault(pmap_t pmap, vm_offset_t va, vm_map_entry_t entry) { + UNIMPL(); } void pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot) { + UNIMPL(); } void pmap_qenter(vm_offset_t va, vm_page_t *m, int count) { + UNIMPL(); } void pmap_qremove(vm_offset_t va, int count) { + UNIMPL(); } void pmap_release(pmap_t pmap) { + UNIMPL(); } void pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) { + UNIMPL(); } void pmap_remove_all(vm_page_t m) { + UNIMPL(); } void pmap_remove_pages(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) { + UNIMPL(); } void pmap_swapin_thread(struct thread *td) { + UNIMPL(); } void pmap_swapout_thread(struct thread *td) { + UNIMPL(); } int pmap_ts_referenced(vm_page_t m) { + UNIMPL(); return (0); } void pmap_zero_page(vm_page_t m) { + UNIMPL(); } void pmap_zero_page_area(vm_page_t pa, int off, int size) { + UNIMPL(); } void pmap_zero_page_idle(vm_page_t m) { + UNIMPL(); } From owner-p4-projects@FreeBSD.ORG Sat Apr 26 16:39:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5089037B404; Sat, 26 Apr 2003 16:39:32 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 041DE37B401 for ; Sat, 26 Apr 2003 16:39:32 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9F44A43FBF for ; Sat, 26 Apr 2003 16:39:31 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QNdV0U019260 for ; Sat, 26 Apr 2003 16:39:31 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QNdVs8019255 for perforce@freebsd.org; Sat, 26 Apr 2003 16:39:31 -0700 (PDT) Date: Sat, 26 Apr 2003 16:39:31 -0700 (PDT) Message-Id: <200304262339.h3QNdVs8019255@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29833 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 23:39:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=29833 Change 29833 by jmallett@jmallett_dalek on 2003/04/26 16:38:38 Evil hacks so pcpu isn't explodey. Affected files ... .. //depot/projects/mips/sys/mips/include/cpufunc.h#6 edit .. //depot/projects/mips/sys/mips/include/pcpu.h#2 edit .. //depot/projects/mips/sys/mips/mips/machdep.c#9 edit .. //depot/projects/mips/sys/mips/mips/pmap.c#6 edit Differences ... ==== //depot/projects/mips/sys/mips/include/cpufunc.h#6 (text+ko) ==== @@ -50,16 +50,6 @@ __asm __volatile ("sync" : : : "memory"); } -static __inline struct pcpu * -mips_get_pcpup(void) -{ - struct pcpu *ret; - - /* XXX Get a pointer to the pcpu. */ - - return(ret); -} - #endif /* _KERNEL */ #endif /* !_MACHINE_CPUFUNC_H_ */ ==== //depot/projects/mips/sys/mips/include/pcpu.h#2 (text+ko) ==== @@ -37,12 +37,14 @@ #define PCPU_MD_FIELDS \ /* XXX Nothing to see here. */ -#define PCPUP ((struct pcpu *) mips_get_pcpup()) +#define PCPUP ((struct pcpu *) &pcpu0) #define PCPU_GET(member) (PCPUP->pc_ ## member) #define PCPU_PTR(member) (&PCPUP->pc_ ## member) #define PCPU_SET(member,value) (PCPUP->pc_ ## member = (value)) +extern struct pcpu pcpu0; + #endif /* _KERNEL */ #endif /* !_MACHINE_PCPU_H_ */ ==== //depot/projects/mips/sys/mips/mips/machdep.c#9 (text+ko) ==== @@ -42,6 +42,8 @@ int cold = 1; int cpu_prid, fpu_id; +struct pcpu pcpu0; + void cpu_halt(void) { ==== //depot/projects/mips/sys/mips/mips/pmap.c#6 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Sat Apr 26 16:39:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0A9ED37B404; Sat, 26 Apr 2003 16:39:34 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A8C637B40C for ; Sat, 26 Apr 2003 16:39:32 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 21C7B43FBF for ; Sat, 26 Apr 2003 16:39:32 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3QNdV0U019269 for ; Sat, 26 Apr 2003 16:39:31 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3QNdV89019265 for perforce@freebsd.org; Sat, 26 Apr 2003 16:39:31 -0700 (PDT) Date: Sat, 26 Apr 2003 16:39:31 -0700 (PDT) Message-Id: <200304262339.h3QNdV89019265@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29834 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Apr 2003 23:39:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=29834 Change 29834 by jmallett@jmallett_dalek on 2003/04/26 16:38:53 Fill out phys_avail table. Affected files ... .. //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#9 edit Differences ... ==== //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#9 (text+ko) ==== @@ -36,6 +36,9 @@ #include +#include +#include + #include #include @@ -71,7 +74,7 @@ struct arcbios_mem *mem; struct machine_type *mtp; const char *cpufreq; - int first, i, last, size; + int first, i, j, last, size; /* * Initialise the ARCBIOS stuff. @@ -98,6 +101,7 @@ arcbios_system_identifier, mach_type, mach_subtype, mach_boardrev, cpufreq); mem = NULL; + j = 0; for (i = 0;; i++) { mem = ARCBIOS->GetMemoryDescriptor(mem); @@ -113,6 +117,15 @@ case ARCBIOS_MEM_FirmwarePermanent: arcsmem += btoc(size); break; + case ARCBIOS_MEM_FreeContiguous: + case ARCBIOS_MEM_FreeMemory: + printf("Physical available block %d:\n", j); + printf("Available memory range %0x-%0x\n", + first, last); + phys_avail[j + 0] = first; + phys_avail[j + 1] = last; + j += 2; + break; default: printf("Memory range %0x-%0x type %d\n", first, last, mem->Type); From owner-p4-projects@FreeBSD.ORG Sat Apr 26 18:06:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D049637B404; Sat, 26 Apr 2003 18:06:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6E5FF37B401 for ; Sat, 26 Apr 2003 18:06:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 137AE43FBF for ; Sat, 26 Apr 2003 18:06:19 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3R16I0U085655 for ; Sat, 26 Apr 2003 18:06:18 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3R16IJh085647 for perforce@freebsd.org; Sat, 26 Apr 2003 18:06:18 -0700 (PDT) Date: Sat, 26 Apr 2003 18:06:18 -0700 (PDT) Message-Id: <200304270106.h3R16IJh085647@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29843 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 01:06:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=29843 Change 29843 by jmallett@jmallett_dalek on 2003/04/26 18:05:48 Count and display available memory, call back into machine sources, mips_init, from platform sources, to set up thread0 and so on. Now we blow up much later on, somewhere in mtx code, yuck. Affected files ... .. //depot/projects/mips/sys/mips/include/md_var.h#4 edit .. //depot/projects/mips/sys/mips/mips/machdep.c#10 edit .. //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#10 edit Differences ... ==== //depot/projects/mips/sys/mips/include/md_var.h#4 (text+ko) ==== @@ -30,6 +30,7 @@ void cpu_halt(void); void cpu_reset(void); +void mips_init(void); void swi_vm(void *); #endif /* !_MACHINE_MD_VAR_H_ */ ==== //depot/projects/mips/sys/mips/mips/machdep.c#10 (text+ko) ==== @@ -45,6 +45,16 @@ struct pcpu pcpu0; void +mips_init(void) +{ + struct pcpu *pc; + + proc_linkup(&proc0, &ksegrp0, &kse0, &thread0); + pc = &pcpu0; + pc->pc_curthread = &thread0; +} + +void cpu_halt(void) { platform_halt(); ==== //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#10 (text+ko) ==== @@ -53,7 +53,7 @@ { NULL, NULL, 0 } }; -int arcsmem; +int arcsmem, availmem; int mach_type, mach_subtype, mach_boardrev; void @@ -119,6 +119,7 @@ break; case ARCBIOS_MEM_FreeContiguous: case ARCBIOS_MEM_FreeMemory: + availmem += btoc(size); printf("Physical available block %d:\n", j); printf("Available memory range %0x-%0x\n", first, last); @@ -135,6 +136,10 @@ } printf("total memory = %ld (%ld MB)\n", ctob(physmem), ctob(physmem) / (1024 * 1024)); - printf("ARCS memory = %d (%d MB)\n", ctob(arcsmem), - ctob(arcsmem) / (1024 * 1024)); + printf("ARCS memory = %d (%d KB)\n", ctob(arcsmem), + ctob(arcsmem) / 1024); + printf("avail memory = %d (%d MB)\n", ctob(availmem), + ctob(availmem) / (1024 * 1024)); + + mips_init(); } From owner-p4-projects@FreeBSD.ORG Sat Apr 26 18:06:21 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1449037B404; Sat, 26 Apr 2003 18:06:21 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E638237B40B for ; Sat, 26 Apr 2003 18:06:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B13F43F75 for ; Sat, 26 Apr 2003 18:06:19 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3R16J0U085664 for ; Sat, 26 Apr 2003 18:06:19 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3R16J3A085659 for perforce@freebsd.org; Sat, 26 Apr 2003 18:06:19 -0700 (PDT) Date: Sat, 26 Apr 2003 18:06:19 -0700 (PDT) Message-Id: <200304270106.h3R16J3A085659@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29844 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 01:06:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=29844 Change 29844 by jmallett@jmallett_dalek on 2003/04/26 18:06:14 Add acq and rel membar forms of cmpset atomics. Affected files ... .. //depot/projects/mips/sys/mips/include/atomic.h#13 edit Differences ... ==== //depot/projects/mips/sys/mips/include/atomic.h#13 (text+ko) ==== @@ -43,6 +43,16 @@ mips_write_membar(); \ } +#define ATOMIC_ACQ_CMPSET(type) \ +static __inline int \ +atomic_cmpset_acq_ ## type(volatile u_ ## type *p, u_ ## type old, u_ ## type val) \ +{ \ + int r; \ + r = atomic_cmpset_ ## type(p, old, val); \ + mips_write_membar(); \ + return (r); \ +} + #define ATOMIC_REL_OP(type, op) \ static __inline void \ atomic_ ## op ## _rel_ ## type(volatile u_ ## type *p, u_ ## type val) \ @@ -51,6 +61,16 @@ atomic_ ## op ## _ ## type(p, val); \ } +#define ATOMIC_REL_CMPSET(type) \ +static __inline int \ +atomic_cmpset_rel_ ## type(volatile u_ ## type *p, u_ ## type old, u_ ## type val) \ +{ \ + int r; \ + mips_read_membar(); \ + atomic_cmpset_ ## type(p, old, val); \ + return (r); \ +} + #define ATOMIC_ACQ_LOAD(type) \ static __inline u_ ## type \ atomic_load_acq_ ## type(volatile u_ ## type *p) \ @@ -134,6 +154,9 @@ return res; } +ATOMIC_ACQ_CMPSET(int) +ATOMIC_REL_CMPSET(int) + static __inline u_int atomic_readandclear_int(volatile u_int *p) { @@ -219,6 +242,9 @@ return res; } +ATOMIC_ACQ_CMPSET(long) +ATOMIC_REL_CMPSET(long) + static __inline u_long atomic_readandclear_long(volatile u_long *p) { @@ -308,7 +334,9 @@ * Clean up after the membar stuff. */ #undef ATOMIC_ACQ_OP +#undef ATOMIC_ACQ_CMPSET #undef ATOMIC_REL_OP +#undef ATOMIC_REL_CMPSET #undef ATOMIC_ACQ_LOAD #undef ATOMIC_REL_STORE From owner-p4-projects@FreeBSD.ORG Sat Apr 26 20:26:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AC70B37B404; Sat, 26 Apr 2003 20:26:12 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 43F2337B401 for ; Sat, 26 Apr 2003 20:26:12 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A5BC743F85 for ; Sat, 26 Apr 2003 20:26:11 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3R3QB0U092227 for ; Sat, 26 Apr 2003 20:26:11 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3R3QBIU092218 for perforce@freebsd.org; Sat, 26 Apr 2003 20:26:11 -0700 (PDT) Date: Sat, 26 Apr 2003 20:26:11 -0700 (PDT) Message-Id: <200304270326.h3R3QBIU092218@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 Subject: PERFORCE change 29850 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 03:26:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=29850 Change 29850 by marcel@marcel_nfs on 2003/04/26 20:25:52 Deal with unaligned memory accesses again. Don't try too hard though. There's just too much that can go wrong or that we don't deal with that it's merely intended to get ntpd(8) up and running again. I'll get back here later.. While reverting the change to files.ia64, take this opportunity to resort. Affected files ... .. //depot/projects/ia64_epc/sys/conf/files.ia64#9 edit .. //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#16 edit .. //depot/projects/ia64_epc/sys/ia64/ia64/unaligned.c#3 edit Differences ... ==== //depot/projects/ia64_epc/sys/conf/files.ia64#9 (text+ko) ==== @@ -18,14 +18,49 @@ no-obj no-implicit-rule before-depend \ clean "atkbdmap.h" # +crypto/blowfish/bf_enc.c optional crypto +crypto/blowfish/bf_enc.c optional ipsec ipsec_esp +crypto/des/des_enc.c optional crypto +crypto/des/des_enc.c optional ipsec ipsec_esp +dev/advansys/adv_isa.c optional adv isa +dev/aic/aic_isa.c optional aic isa +dev/fb/fb.c optional fb +dev/fb/fb.c optional vga sc +dev/fb/splash.c optional splash +dev/kbd/atkbd.c optional atkbd +dev/kbd/atkbdc.c optional atkbdc +dev/kbd/kbd.c optional atkbd +dev/kbd/kbd.c optional kbd +dev/kbd/kbd.c optional sc +dev/kbd/kbd.c optional ukbd +dev/sio/sio_isa.c optional sio acpi +dev/sio/sio_isa.c optional sio isa +dev/syscons/schistory.c optional sc +dev/syscons/scmouse.c optional sc +dev/syscons/scterm-dumb.c optional sc +dev/syscons/scterm-sc.c optional sc +dev/syscons/scterm.c optional sc +dev/syscons/scvgarndr.c optional sc vga +dev/syscons/scvidctl.c optional sc +dev/syscons/scvtb.c optional sc +dev/syscons/syscons.c optional sc +dev/syscons/sysmouse.c optional sc +dev/vga/vga.c optional vga +dev/vga/vga_isa.c optional vga isa +dev/vga/vga_pci.c optional vga pci +dev/vga/vga_vid.c optional vga sc +geom/geom_bsd.c standard +geom/geom_bsd_enc.c standard +geom/geom_gpt.c standard +geom/geom_mbr.c standard +geom/geom_mbr_enc.c standard +ia64/acpica/OsdEnvironment.c optional acpi ia64/acpica/acpi_machdep.c optional acpi ia64/acpica/acpi_wakeup.c optional acpi -ia64/acpica/OsdEnvironment.c optional acpi ia64/acpica/madt.c optional acpi ia64/ia32/ia32_misc.c optional ia32 ia64/ia32/ia32_sysent.c optional ia32 ia64/ia32/ia32_sysvec.c optional ia32 -ia64/ia64/ia64-gdbstub.c optional ddb ia64/ia64/autoconf.c standard ia64/ia64/busdma_machdep.c standard ia64/ia64/clock.c standard @@ -40,6 +75,7 @@ ia64/ia64/eficlock.c standard ia64/ia64/elf_machdep.c standard ia64/ia64/exception.s standard +ia64/ia64/ia64-gdbstub.c optional ddb ia64/ia64/in_cksum.c optional inet ia64/ia64/interrupt.c standard ia64/ia64/locore.s standard no-obj @@ -54,55 +90,19 @@ ia64/ia64/sapic.c standard ia64/ia64/setjmp.s standard ia64/ia64/sio_machdep.c optional sio -ia64/ia64/support.s standard ia64/ia64/ssc.c optional ski ia64/ia64/sscdisk.c optional ski +ia64/ia64/support.s standard ia64/ia64/sys_machdep.c standard ia64/ia64/syscall.s standard ia64/ia64/trap.c standard -#ia64/ia64/unaligned.c standard +ia64/ia64/unaligned.c standard ia64/ia64/unwind.c standard ia64/ia64/vga_machdep.c optional vga ia64/ia64/vm_machdep.c standard ia64/isa/isa.c optional isa ia64/isa/isa_dma.c optional isa ia64/pci/pci_cfgreg.c optional pci -crypto/blowfish/bf_enc.c optional ipsec ipsec_esp -crypto/des/des_enc.c optional ipsec ipsec_esp -crypto/blowfish/bf_enc.c optional crypto -crypto/des/des_enc.c optional crypto -dev/advansys/adv_isa.c optional adv isa -dev/aic/aic_isa.c optional aic isa -dev/fb/fb.c optional fb -dev/fb/fb.c optional vga sc -dev/fb/splash.c optional splash -dev/kbd/atkbd.c optional atkbd -dev/kbd/atkbdc.c optional atkbdc -dev/kbd/kbd.c optional atkbd -dev/kbd/kbd.c optional kbd -dev/kbd/kbd.c optional sc -dev/kbd/kbd.c optional ukbd -dev/sio/sio_isa.c optional sio acpi -dev/sio/sio_isa.c optional sio isa -dev/syscons/schistory.c optional sc -dev/syscons/scmouse.c optional sc -dev/syscons/scterm.c optional sc -dev/syscons/scterm-dumb.c optional sc -dev/syscons/scterm-sc.c optional sc -dev/syscons/scvgarndr.c optional sc vga -dev/syscons/scvidctl.c optional sc -dev/syscons/scvtb.c optional sc -dev/syscons/syscons.c optional sc -dev/syscons/sysmouse.c optional sc -dev/vga/vga.c optional vga -dev/vga/vga_isa.c optional vga isa -dev/vga/vga_pci.c optional vga pci -dev/vga/vga_vid.c optional vga sc -geom/geom_bsd.c standard -geom/geom_bsd_enc.c standard -geom/geom_gpt.c standard -geom/geom_mbr.c standard -geom/geom_mbr_enc.c standard isa/atkbd_isa.c optional isa atkbd isa/atkbdc_isa.c optional isa atkbdc isa/fd.c optional fdc isa @@ -110,15 +110,15 @@ isa/psm.c optional psm isa isa/syscons_isa.c optional sc kern/imgact_elf32.c optional ia32 -libkern/ia64/bswap16.S standard -libkern/ia64/bswap32.S standard +libkern/bcmp.c standard +libkern/ffs.c standard +libkern/ia64/__divdi3.S standard libkern/ia64/__divsi3.S standard +libkern/ia64/__moddi3.S standard libkern/ia64/__modsi3.S standard +libkern/ia64/__udivdi3.S standard libkern/ia64/__udivsi3.S standard +libkern/ia64/__umoddi3.S standard libkern/ia64/__umodsi3.S standard -libkern/ia64/__divdi3.S standard -libkern/ia64/__moddi3.S standard -libkern/ia64/__udivdi3.S standard -libkern/ia64/__umoddi3.S standard -libkern/bcmp.c standard -libkern/ffs.c standard +libkern/ia64/bswap16.S standard +libkern/ia64/bswap32.S standard ==== //depot/projects/ia64_epc/sys/ia64/ia64/trap.c#16 (text+ko) ==== @@ -376,15 +376,9 @@ * and per-process unaligned-access-handling flags). */ if (user) { -#if NOTYET - mtx_lock(&Giant); i = unaligned_fixup(framep, td); - mtx_unlock(&Giant); if (i == 0) goto out; -#else - i = SIGBUS; -#endif ucode = framep->tf_special.ifa; /* VA */ break; } ==== //depot/projects/ia64_epc/sys/ia64/ia64/unaligned.c#3 (text+ko) ==== @@ -152,16 +152,45 @@ read_register(struct trapframe *framep, struct thread *td, int reg, u_int64_t *valuep) { - if (reg == 0) { - *valuep = 0; - return 0; - } else if (reg < 32) { - *valuep = framep->tf_r[reg - 1]; - return 0; + + if (reg < 32) { + switch (reg) { + case 0: *valuep = 0; break; + case 1: *valuep = framep->tf_special.gp; break; + case 2: *valuep = framep->tf_scratch.gr2; break; + case 3: *valuep = framep->tf_scratch.gr3; break; + case 8: *valuep = framep->tf_scratch.gr8; break; + case 9: *valuep = framep->tf_scratch.gr9; break; + case 10: *valuep = framep->tf_scratch.gr10; break; + case 11: *valuep = framep->tf_scratch.gr11; break; + case 12: *valuep = framep->tf_special.sp; break; + case 13: *valuep = framep->tf_special.tp; break; + case 14: *valuep = framep->tf_scratch.gr14; break; + case 15: *valuep = framep->tf_scratch.gr15; break; + case 16: *valuep = framep->tf_scratch.gr16; break; + case 17: *valuep = framep->tf_scratch.gr17; break; + case 18: *valuep = framep->tf_scratch.gr18; break; + case 19: *valuep = framep->tf_scratch.gr19; break; + case 20: *valuep = framep->tf_scratch.gr20; break; + case 21: *valuep = framep->tf_scratch.gr21; break; + case 22: *valuep = framep->tf_scratch.gr22; break; + case 23: *valuep = framep->tf_scratch.gr23; break; + case 24: *valuep = framep->tf_scratch.gr24; break; + case 25: *valuep = framep->tf_scratch.gr25; break; + case 26: *valuep = framep->tf_scratch.gr26; break; + case 27: *valuep = framep->tf_scratch.gr27; break; + case 28: *valuep = framep->tf_scratch.gr28; break; + case 29: *valuep = framep->tf_scratch.gr29; break; + case 30: *valuep = framep->tf_scratch.gr30; break; + case 31: *valuep = framep->tf_scratch.gr31; break; + default: + return (EINVAL); + } } else { - u_int64_t cfm = framep->tf_cr_ifs; - u_int64_t *bsp = (u_int64_t *) (td->td_kstack - + framep->tf_ndirty); +#if 0 + u_int64_t cfm = framep->tf_special.cfm; + u_int64_t *bsp = (u_int64_t *)(td->td_kstack + + framep->tf_ndirty); int sof = cfm & 0x7f; int sor = 8*((cfm >> 14) & 15); int rrb_gr = (cfm >> 18) & 0x7f; @@ -181,23 +210,54 @@ } *valuep = *ia64_rse_register_address(bsp, reg); - return 0; + return (0); +#else + return (EINVAL); +#endif } - - return EINVAL; + return (0); } static int write_register(struct trapframe *framep, struct thread *td, int reg, u_int64_t value) { - if (reg == 0) { - return EINVAL; /* can't happen */ - } else if (reg < 32) { - framep->tf_r[reg - 1] = value; - return 0; + + if (reg < 32) { + switch (reg) { + case 1: framep->tf_special.gp = value; break; + case 2: framep->tf_scratch.gr2 = value; break; + case 3: framep->tf_scratch.gr3 = value; break; + case 8: framep->tf_scratch.gr8 = value; break; + case 9: framep->tf_scratch.gr9 = value; break; + case 10: framep->tf_scratch.gr10 = value; break; + case 11: framep->tf_scratch.gr11 = value; break; + case 12: framep->tf_special.sp = value; break; + case 13: framep->tf_special.tp = value; break; + case 14: framep->tf_scratch.gr14 = value; break; + case 15: framep->tf_scratch.gr15 = value; break; + case 16: framep->tf_scratch.gr16 = value; break; + case 17: framep->tf_scratch.gr17 = value; break; + case 18: framep->tf_scratch.gr18 = value; break; + case 19: framep->tf_scratch.gr19 = value; break; + case 20: framep->tf_scratch.gr20 = value; break; + case 21: framep->tf_scratch.gr21 = value; break; + case 22: framep->tf_scratch.gr22 = value; break; + case 23: framep->tf_scratch.gr23 = value; break; + case 24: framep->tf_scratch.gr24 = value; break; + case 25: framep->tf_scratch.gr25 = value; break; + case 26: framep->tf_scratch.gr26 = value; break; + case 27: framep->tf_scratch.gr27 = value; break; + case 28: framep->tf_scratch.gr28 = value; break; + case 29: framep->tf_scratch.gr29 = value; break; + case 30: framep->tf_scratch.gr30 = value; break; + case 31: framep->tf_scratch.gr31 = value; break; + default: + return (EINVAL); + } } else { - u_int64_t cfm = framep->tf_cr_ifs; +#if 0 + u_int64_t cfm = framep->tf_special.cfm; u_int64_t *bsp = (u_int64_t *) (td->td_kstack + framep->tf_ndirty); int sof = cfm & 0x7f; @@ -220,9 +280,11 @@ *ia64_rse_register_address(bsp, reg) = value; return 0; +#else + return (EINVAL); +#endif } - - return EINVAL; + return (0); } /* @@ -366,7 +428,7 @@ int unaligned_fixup(struct trapframe *framep, struct thread *td) { - vm_offset_t va = framep->tf_cr_ifa; + vm_offset_t va = framep->tf_special.ifa; int doprint, dofix, dosigbus; int signal, size = 0; unsigned long uac; @@ -398,7 +460,7 @@ * If psr.ac is set, then clearly the user program *wants* to * fault. */ - if (framep->tf_cr_ipsr & IA64_PSR_AC) { + if (framep->tf_special.psr & IA64_PSR_AC) { dofix = 0; dosigbus = 1; } @@ -418,10 +480,10 @@ * offending instruction. * XXX assume that the instruction is in an 'M' slot. */ - copyin((const void *) framep->tf_cr_iip, &low, 8); - copyin((const void *) (framep->tf_cr_iip + 8), &high, 8); + copyin((const void *) framep->tf_special.iip, &low, 8); + copyin((const void *) (framep->tf_special.iip + 8), &high, 8); ia64_unpack_bundle(low, high, &b); - slot = (framep->tf_cr_ipsr >> 41) & 3; + slot = (framep->tf_special.psr >> 41) & 3; ins.ins = b.slot[slot]; decoded = 0; @@ -450,7 +512,7 @@ */ if (doprint) { uprintf("pid %d (%s): unaligned access: va=0x%lx pc=0x%lx", - p->p_pid, p->p_comm, va, framep->tf_cr_iip); + p->p_pid, p->p_comm, va, framep->tf_special.iip); if (decoded) { uprintf(" op="); if (dec.isload) { @@ -499,7 +561,7 @@ */ __asm __volatile("flushrs"); - isr = framep->tf_cr_isr; + isr = framep->tf_special.isr; error = read_register(framep, td, dec.basereg, &addr); if (error) { signal = SIGBUS; @@ -564,12 +626,12 @@ * Advance to the instruction following the * one which faulted. */ - if ((framep->tf_cr_ipsr & IA64_PSR_RI) + if ((framep->tf_special.psr & IA64_PSR_RI) == IA64_PSR_RI_2) { - framep->tf_cr_ipsr &= ~IA64_PSR_RI; - framep->tf_cr_iip += 16; + framep->tf_special.psr &= ~IA64_PSR_RI; + framep->tf_special.iip += 16; } else { - framep->tf_cr_ipsr += IA64_PSR_RI_1; + framep->tf_special.psr += IA64_PSR_RI_1; } } } else { From owner-p4-projects@FreeBSD.ORG Sat Apr 26 20:30:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1BD6B37B404; Sat, 26 Apr 2003 20:30:18 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AE65237B401 for ; Sat, 26 Apr 2003 20:30:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 450E443F85 for ; Sat, 26 Apr 2003 20:30:17 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3R3UH0U094426 for ; Sat, 26 Apr 2003 20:30:17 -0700 (PDT) (envelope-from obrien@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3R3UGFc094420 for perforce@freebsd.org; Sat, 26 Apr 2003 20:30:16 -0700 (PDT) Date: Sat, 26 Apr 2003 20:30:16 -0700 (PDT) Message-Id: <200304270330.h3R3UGFc094420@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to obrien@freebsd.org using -f From: "David E. O'Brien" To: Perforce Change Reviews Subject: PERFORCE change 29851 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 03:30:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=29851 Change 29851 by obrien@obrien_trang on 2003/04/26 20:29:42 repo copy lib/csu/x86_64 to lib/csu/amd64 Affected files ... .. //depot/projects/hammer/lib/csu/amd64/Makefile#1 branch .. //depot/projects/hammer/lib/csu/amd64/crt1.c#1 branch .. //depot/projects/hammer/lib/csu/amd64/crti.S#1 branch .. //depot/projects/hammer/lib/csu/amd64/crtn.S#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sat Apr 26 21:21:21 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4645F37B404; Sat, 26 Apr 2003 21:21:21 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D0D2137B401 for ; Sat, 26 Apr 2003 21:21:20 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6920243F85 for ; Sat, 26 Apr 2003 21:21:20 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3R4LK0U037248 for ; Sat, 26 Apr 2003 21:21:20 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3R4LJLf037239 for perforce@freebsd.org; Sat, 26 Apr 2003 21:21:19 -0700 (PDT) Date: Sat, 26 Apr 2003 21:21:19 -0700 (PDT) Message-Id: <200304270421.h3R4LJLf037239@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29853 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 04:21:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=29853 Change 29853 by jmallett@jmallett_dalek on 2003/04/26 21:20:30 Lies, placeholders, and a PTE description. Affected files ... .. //depot/projects/mips/sys/mips/include/md_var.h#5 edit .. //depot/projects/mips/sys/mips/include/pmap.h#6 edit .. //depot/projects/mips/sys/mips/include/pte.h#1 add .. //depot/projects/mips/sys/mips/mips/machdep.c#11 edit .. //depot/projects/mips/sys/mips/mips/pmap.c#7 edit .. //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#11 edit Differences ... ==== //depot/projects/mips/sys/mips/include/md_var.h#5 (text+ko) ==== @@ -28,6 +28,9 @@ #ifndef _MACHINE_MD_VAR_H_ #define _MACHINE_MD_VAR_H_ +extern vm_offset_t kstack0; +extern vm_paddr_t kstack0_phys; + void cpu_halt(void); void cpu_reset(void); void mips_init(void); ==== //depot/projects/mips/sys/mips/include/pmap.h#6 (text+ko) ==== @@ -34,6 +34,8 @@ struct pmap { struct pmap_statistics pm_stats; + int pm_asid; + int pm_asidgen; }; typedef struct pmap *pmap_t; @@ -45,7 +47,9 @@ extern vm_offset_t virtual_avail; extern vm_offset_t virtual_end; +void pmap_bootstrap(void); vm_offset_t pmap_kextract(vm_offset_t); +vm_offset_t pmap_steal_memory(vm_size_t); #define pmap_resident_count(pm) ((pm)->pm_stats.resident_count) #define vtophys(va) pmap_kextract((vm_offset_t)(va)) ==== //depot/projects/mips/sys/mips/mips/machdep.c#11 (text+ko) ==== @@ -44,12 +44,16 @@ struct pcpu pcpu0; +vm_offset_t kstack0; +vm_paddr_t kstack0_phys; + void mips_init(void) { struct pcpu *pc; proc_linkup(&proc0, &ksegrp0, &kse0, &thread0); + thread0.td_kstack = kstack0; pc = &pcpu0; pc->pc_curthread = &thread0; } ==== //depot/projects/mips/sys/mips/mips/pmap.c#7 (text+ko) ==== @@ -37,6 +37,8 @@ #include #include #include +#include +#include #include #include @@ -56,10 +58,15 @@ vm_offset_t virtual_avail; vm_offset_t virtual_end; +pt_entry_t *kptemap; +vm_size_t kptemapsize; + struct msgbuf *msgbufp; int pmap_pagedaemon_waken; +static vm_offset_t pmap_bootstrap_alloc(vm_size_t); + #define UNIMPL() \ printf("%s unimplemented at %s:%d\n", __func__, __FILE__, __LINE__) @@ -312,3 +319,78 @@ { UNIMPL(); } + +void +pmap_bootstrap(void) +{ + int i; + + kptemapsize = PAGE_SIZE; /* XXX placeholder */ + kptemap = pmap_bootstrap_alloc(sizeof *kptemap * kptemapsize); + + /* + * Allocate a kernel stack for thread0. + */ + kstack0_phys = pmap_bootstrap_alloc(KSTACK_PAGES * PAGE_SIZE); + kstack0 = kstack0_phys; + + /* + * Calculate the first and last available physical addresses. + */ + avail_start = phys_avail[0]; + for (i = 0; phys_avail[i + 2] != 0; i += 2) + ; + avail_end = phys_avail[i + 1]; +} + +/* + * Allocate a physical page of memory directly from the phys_avail map. + * Can only be called from pmap_bootstrap before avail start and end are + * calculated. + */ +static vm_offset_t +pmap_bootstrap_alloc(vm_size_t size) +{ + vm_offset_t pa; + int i; + + size = round_page(size); + for (i = 0; phys_avail[i + 1] != 0; i += 2) { + if (phys_avail[i + 1] - phys_avail[i] < size) + continue; + pa = phys_avail[i]; + phys_avail[i] += size; + return (pa); + } + panic("pmap_bootstrap_alloc"); +} + +vm_offset_t +pmap_steal_memory(vm_size_t size) +{ + vm_size_t bank_size; + vm_offset_t pa, va; + + size = round_page(size); + + bank_size = phys_avail[1] - phys_avail[0]; + while (size > bank_size) { + int i; + for (i = 0; phys_avail[i+2]; i+= 2) { + phys_avail[i+0] = phys_avail[i+2]; + phys_avail[i+1] = phys_avail[i+3]; + } + phys_avail[i+0] = 0; + phys_avail[i+1] = 0; + if (!phys_avail[0]) + panic("pmap_steal_memory: out of memory"); + bank_size = phys_avail[1] - phys_avail[0]; + } + + pa = phys_avail[0]; + phys_avail[0] += size; + + va = MIPS_PHYS_TO_KSEG1(pa); + bzero(va, size); + return (va); +} ==== //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#11 (text+ko) ==== @@ -141,5 +141,6 @@ printf("avail memory = %d (%d MB)\n", ctob(availmem), ctob(availmem) / (1024 * 1024)); + pmap_bootstrap(); mips_init(); } From owner-p4-projects@FreeBSD.ORG Sat Apr 26 22:45:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 911ED37B48D; Sat, 26 Apr 2003 22:45:35 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D5B8137B428 for ; Sat, 26 Apr 2003 22:45:32 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D861743F75 for ; Sat, 26 Apr 2003 22:45:30 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3R5jU0U099576 for ; Sat, 26 Apr 2003 22:45:30 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3R5jMLo099433 for perforce@freebsd.org; Sat, 26 Apr 2003 22:45:22 -0700 (PDT) Date: Sat, 26 Apr 2003 22:45:22 -0700 (PDT) Message-Id: <200304270545.h3R5jMLo099433@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29863 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 05:45:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=29863 Change 29863 by jmallett@jmallett_dalek on 2003/04/26 22:45:03 IFC. Affected files ... .. //depot/projects/mips/MAINTAINERS#10 integrate .. //depot/projects/mips/Makefile.inc1#15 integrate .. //depot/projects/mips/UPDATING#10 integrate .. //depot/projects/mips/bin/cp/cp.1#2 integrate .. //depot/projects/mips/bin/cp/cp.c#3 integrate .. //depot/projects/mips/bin/cp/extern.h#3 integrate .. //depot/projects/mips/bin/cp/utils.c#3 integrate .. //depot/projects/mips/bin/echo/echo.1#2 integrate .. //depot/projects/mips/bin/ls/ls.c#7 integrate .. //depot/projects/mips/bin/ps/keyword.c#5 integrate .. //depot/projects/mips/bin/ps/print.c#6 integrate .. //depot/projects/mips/bin/ps/ps.h#3 integrate .. //depot/projects/mips/bin/pwd/pwd.1#2 integrate .. //depot/projects/mips/bin/sh/sh.1#4 integrate .. //depot/projects/mips/contrib/gcc/config/i386/freebsd.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/i386/freebsd64.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386.h#5 integrate .. //depot/projects/mips/contrib/gdtoa/gdtoaimp.h#4 integrate .. //depot/projects/mips/contrib/smbfs/lib/smb/ctx.c#2 integrate .. //depot/projects/mips/crypto/openssh/ChangeLog#3 integrate .. //depot/projects/mips/crypto/openssh/FREEBSD-tricks#2 integrate .. //depot/projects/mips/crypto/openssh/FREEBSD-upgrade#3 integrate .. //depot/projects/mips/crypto/openssh/Makefile.in#3 integrate .. //depot/projects/mips/crypto/openssh/README#2 integrate .. //depot/projects/mips/crypto/openssh/README.privsep#2 integrate .. //depot/projects/mips/crypto/openssh/TODO#3 integrate .. //depot/projects/mips/crypto/openssh/acconfig.h#4 integrate .. //depot/projects/mips/crypto/openssh/auth-krb4.c#3 integrate .. //depot/projects/mips/crypto/openssh/auth-krb5.c#3 integrate .. //depot/projects/mips/crypto/openssh/auth-pam.c#3 integrate .. //depot/projects/mips/crypto/openssh/auth-passwd.c#3 integrate .. //depot/projects/mips/crypto/openssh/auth-sia.c#2 integrate .. //depot/projects/mips/crypto/openssh/auth-sia.h#2 integrate .. //depot/projects/mips/crypto/openssh/auth.c#3 integrate .. //depot/projects/mips/crypto/openssh/auth1.c#4 integrate .. //depot/projects/mips/crypto/openssh/auth2-pam.c#3 integrate .. //depot/projects/mips/crypto/openssh/auth2.c#4 integrate .. //depot/projects/mips/crypto/openssh/authfd.c#3 integrate .. //depot/projects/mips/crypto/openssh/authfd.h#3 integrate .. //depot/projects/mips/crypto/openssh/authfile.c#2 integrate .. //depot/projects/mips/crypto/openssh/bufaux.c#2 integrate .. //depot/projects/mips/crypto/openssh/canohost.c#3 integrate .. //depot/projects/mips/crypto/openssh/channels.c#3 integrate .. //depot/projects/mips/crypto/openssh/cipher.c#3 integrate .. //depot/projects/mips/crypto/openssh/clientloop.c#3 integrate .. //depot/projects/mips/crypto/openssh/compat.c#3 integrate .. //depot/projects/mips/crypto/openssh/compat.h#3 integrate .. //depot/projects/mips/crypto/openssh/config.guess#3 integrate .. //depot/projects/mips/crypto/openssh/config.h#3 integrate .. //depot/projects/mips/crypto/openssh/config.sub#3 integrate .. //depot/projects/mips/crypto/openssh/configure.ac#3 integrate .. //depot/projects/mips/crypto/openssh/crc32.c#2 integrate .. //depot/projects/mips/crypto/openssh/crc32.h#2 integrate .. //depot/projects/mips/crypto/openssh/defines.h#3 integrate .. //depot/projects/mips/crypto/openssh/dh.c#3 integrate .. //depot/projects/mips/crypto/openssh/fixpaths#2 integrate .. //depot/projects/mips/crypto/openssh/hostfile.h#3 integrate .. //depot/projects/mips/crypto/openssh/includes.h#3 integrate .. //depot/projects/mips/crypto/openssh/kex.c#2 integrate .. //depot/projects/mips/crypto/openssh/kex.h#3 integrate .. //depot/projects/mips/crypto/openssh/kexdh.c#2 integrate .. //depot/projects/mips/crypto/openssh/kexdhc.c#1 branch .. //depot/projects/mips/crypto/openssh/kexdhs.c#1 branch .. //depot/projects/mips/crypto/openssh/kexgex.c#2 integrate .. //depot/projects/mips/crypto/openssh/kexgexc.c#1 branch .. //depot/projects/mips/crypto/openssh/kexgexs.c#1 branch .. //depot/projects/mips/crypto/openssh/key.c#3 integrate .. //depot/projects/mips/crypto/openssh/key.h#2 integrate .. //depot/projects/mips/crypto/openssh/log.c#3 integrate .. //depot/projects/mips/crypto/openssh/loginrec.c#3 integrate .. //depot/projects/mips/crypto/openssh/misc.c#2 integrate .. //depot/projects/mips/crypto/openssh/monitor.c#4 integrate .. //depot/projects/mips/crypto/openssh/monitor_wrap.c#3 integrate .. //depot/projects/mips/crypto/openssh/msg.c#3 integrate .. //depot/projects/mips/crypto/openssh/msg.h#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/Makefile.in#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/base64.c#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/base64.h#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/basename.c#1 branch .. //depot/projects/mips/crypto/openssh/openbsd-compat/basename.h#1 branch .. //depot/projects/mips/crypto/openssh/openbsd-compat/bsd-arc4random.c#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/bsd-cray.h#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/bsd-cygwin_util.c#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/bsd-getpeereid.c#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/bsd-misc.c#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/bsd-misc.h#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/bsd-snprintf.c#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/fake-getaddrinfo.c#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/fake-getaddrinfo.h#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/getcwd.c#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/getopt.c#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/mktemp.c#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/mktemp.h#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/openbsd-compat.h#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/port-aix.h#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/setenv.c#3 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/setproctitle.c#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/setproctitle.h#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/sys-tree.h#2 integrate .. //depot/projects/mips/crypto/openssh/openbsd-compat/vis.c#1 branch .. //depot/projects/mips/crypto/openssh/openbsd-compat/vis.h#1 branch .. //depot/projects/mips/crypto/openssh/packet.c#3 integrate .. //depot/projects/mips/crypto/openssh/packet.h#2 integrate .. //depot/projects/mips/crypto/openssh/progressmeter.c#1 branch .. //depot/projects/mips/crypto/openssh/progressmeter.h#1 branch .. //depot/projects/mips/crypto/openssh/readconf.c#3 integrate .. //depot/projects/mips/crypto/openssh/readconf.h#2 integrate .. //depot/projects/mips/crypto/openssh/readpass.c#2 integrate .. //depot/projects/mips/crypto/openssh/regress/Makefile#2 integrate .. //depot/projects/mips/crypto/openssh/regress/agent-getpeereid.sh#1 branch .. //depot/projects/mips/crypto/openssh/regress/agent-ptrace.sh#1 branch .. //depot/projects/mips/crypto/openssh/regress/agent-timeout.sh#1 branch .. //depot/projects/mips/crypto/openssh/regress/keygen-change.sh#1 branch .. //depot/projects/mips/crypto/openssh/regress/proxy-connect.sh#2 integrate .. //depot/projects/mips/crypto/openssh/regress/sftp-batch.sh#1 branch .. //depot/projects/mips/crypto/openssh/regress/sftp-cmds.sh#1 branch .. //depot/projects/mips/crypto/openssh/regress/ssh-com-client.sh#2 integrate .. //depot/projects/mips/crypto/openssh/regress/ssh-com-keygen.sh#2 integrate .. //depot/projects/mips/crypto/openssh/regress/ssh-com-sftp.sh#2 integrate .. //depot/projects/mips/crypto/openssh/regress/ssh-com.sh#2 integrate .. //depot/projects/mips/crypto/openssh/scp.1#2 integrate .. //depot/projects/mips/crypto/openssh/scp.c#3 integrate .. //depot/projects/mips/crypto/openssh/servconf.c#3 integrate .. //depot/projects/mips/crypto/openssh/serverloop.c#3 integrate .. //depot/projects/mips/crypto/openssh/session.c#4 integrate .. //depot/projects/mips/crypto/openssh/sftp-client.c#3 integrate .. //depot/projects/mips/crypto/openssh/sftp-common.c#3 integrate .. //depot/projects/mips/crypto/openssh/sftp-int.c#3 integrate .. //depot/projects/mips/crypto/openssh/sftp-int.h#2 integrate .. //depot/projects/mips/crypto/openssh/sftp-server.c#3 integrate .. //depot/projects/mips/crypto/openssh/sftp.1#3 integrate .. //depot/projects/mips/crypto/openssh/sftp.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-add.1#2 integrate .. //depot/projects/mips/crypto/openssh/ssh-add.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-agent.1#2 integrate .. //depot/projects/mips/crypto/openssh/ssh-agent.c#4 integrate .. //depot/projects/mips/crypto/openssh/ssh-dss.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-dss.h#2 integrate .. //depot/projects/mips/crypto/openssh/ssh-keygen.1#2 integrate .. //depot/projects/mips/crypto/openssh/ssh-keygen.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-keyscan.1#2 integrate .. //depot/projects/mips/crypto/openssh/ssh-keyscan.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-keysign.8#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-keysign.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-rand-helper.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-rsa.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh-rsa.h#2 integrate .. //depot/projects/mips/crypto/openssh/ssh.1#3 integrate .. //depot/projects/mips/crypto/openssh/ssh.c#3 integrate .. //depot/projects/mips/crypto/openssh/ssh_config#4 integrate .. //depot/projects/mips/crypto/openssh/ssh_config.5#4 integrate .. //depot/projects/mips/crypto/openssh/sshconnect.c#3 integrate .. //depot/projects/mips/crypto/openssh/sshconnect2.c#3 integrate .. //depot/projects/mips/crypto/openssh/sshd.8#4 integrate .. //depot/projects/mips/crypto/openssh/sshd.c#4 integrate .. //depot/projects/mips/crypto/openssh/sshd_config#4 integrate .. //depot/projects/mips/crypto/openssh/sshd_config.5#4 integrate .. //depot/projects/mips/crypto/openssh/sshpty.c#3 integrate .. //depot/projects/mips/crypto/openssh/version.h#4 integrate .. //depot/projects/mips/etc/Makefile#9 integrate .. //depot/projects/mips/etc/defaults/pccard.conf#6 integrate .. //depot/projects/mips/etc/defaults/rc.conf#11 integrate .. //depot/projects/mips/etc/mac.conf#2 integrate .. //depot/projects/mips/etc/network.subr#1 branch .. //depot/projects/mips/etc/newsyslog.conf#3 integrate .. //depot/projects/mips/etc/pam.d/passwd#3 integrate .. //depot/projects/mips/etc/rc#5 integrate .. //depot/projects/mips/etc/rc.d/Makefile#5 integrate .. //depot/projects/mips/etc/rc.d/NETWORKING#4 integrate .. //depot/projects/mips/etc/rc.d/adjkerntz#2 integrate .. //depot/projects/mips/etc/rc.d/atm1#2 integrate .. //depot/projects/mips/etc/rc.d/atm2.sh#3 integrate .. //depot/projects/mips/etc/rc.d/bgfsck#3 integrate .. //depot/projects/mips/etc/rc.d/cleanvar#4 integrate .. //depot/projects/mips/etc/rc.d/dhclient#2 integrate .. //depot/projects/mips/etc/rc.d/early.sh#1 branch .. //depot/projects/mips/etc/rc.d/hostname#1 branch .. //depot/projects/mips/etc/rc.d/ipfilter#6 integrate .. //depot/projects/mips/etc/rc.d/ipfs#2 integrate .. //depot/projects/mips/etc/rc.d/ipmon#3 integrate .. //depot/projects/mips/etc/rc.d/ipnat#4 integrate .. //depot/projects/mips/etc/rc.d/isdnd#4 integrate .. //depot/projects/mips/etc/rc.d/jail#1 branch .. //depot/projects/mips/etc/rc.d/kldxref#2 integrate .. //depot/projects/mips/etc/rc.d/mrouted#3 integrate .. //depot/projects/mips/etc/rc.d/netif#1 branch .. //depot/projects/mips/etc/rc.d/network1#5 integrate .. //depot/projects/mips/etc/rc.d/network2#2 integrate .. //depot/projects/mips/etc/rc.d/nisdomain#1 branch .. //depot/projects/mips/etc/rc.d/ppp-user#4 integrate .. //depot/projects/mips/etc/rc.d/random#3 integrate .. //depot/projects/mips/etc/rc.d/routed#3 integrate .. //depot/projects/mips/etc/rc.d/securelevel#2 integrate .. //depot/projects/mips/etc/rc.d/sppp#2 integrate .. //depot/projects/mips/etc/rc.d/sysctl#3 integrate .. //depot/projects/mips/etc/sendmail/freebsd.mc#3 integrate .. //depot/projects/mips/etc/syslog.conf#3 integrate .. //depot/projects/mips/gnu/lib/libstdc++/c++config.h#4 integrate .. //depot/projects/mips/gnu/lib/libstdc++/config.h#4 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/addr2line/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/ar/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/as/Makefile.inc0#5 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile#1 branch .. //depot/projects/mips/gnu/usr.bin/binutils/as/amd64-freebsd/config.h#1 branch .. //depot/projects/mips/gnu/usr.bin/binutils/as/amd64-freebsd/itbl-cpu.h#1 branch .. //depot/projects/mips/gnu/usr.bin/binutils/as/amd64-freebsd/targ-cpu.h#1 branch .. //depot/projects/mips/gnu/usr.bin/binutils/as/x86-64-freebsd/Makefile#2 delete .. //depot/projects/mips/gnu/usr.bin/binutils/as/x86-64-freebsd/config.h#4 delete .. //depot/projects/mips/gnu/usr.bin/binutils/as/x86-64-freebsd/itbl-cpu.h#2 delete .. //depot/projects/mips/gnu/usr.bin/binutils/as/x86-64-freebsd/targ-cpu.h#2 delete .. //depot/projects/mips/gnu/usr.bin/binutils/ld/Makefile#3 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/ld/Makefile.amd64#1 branch .. //depot/projects/mips/gnu/usr.bin/binutils/ld/Makefile.x86-64#2 delete .. //depot/projects/mips/gnu/usr.bin/binutils/libbfd/Makefile#4 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/libbfd/Makefile.amd64#1 branch .. //depot/projects/mips/gnu/usr.bin/binutils/libbfd/Makefile.x86-64#3 delete .. //depot/projects/mips/gnu/usr.bin/binutils/libbfd/amd64/bfd.h#1 branch .. //depot/projects/mips/gnu/usr.bin/binutils/libbfd/elf-fbsd-brand.c#1 branch .. //depot/projects/mips/gnu/usr.bin/binutils/libbfd/x86-64/bfd.h#3 delete .. //depot/projects/mips/gnu/usr.bin/binutils/nm/Makefile#3 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/objcopy/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/objdump/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/ranlib/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/readelf/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/size/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/strings/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/binutils/strip/Makefile#2 integrate .. //depot/projects/mips/gnu/usr.bin/cc/Makefile.tgt#4 integrate .. //depot/projects/mips/gnu/usr.bin/cc/cc_tools/Makefile#4 integrate .. //depot/projects/mips/gnu/usr.bin/cc/cc_tools/auto-host.h#5 integrate .. //depot/projects/mips/gnu/usr.bin/cc/include/Makefile#3 integrate .. //depot/projects/mips/include/Makefile#13 integrate .. //depot/projects/mips/include/fstab.h#2 integrate .. //depot/projects/mips/include/grp.h#2 integrate .. //depot/projects/mips/include/nss.h#1 branch .. //depot/projects/mips/include/nsswitch.h#2 integrate .. //depot/projects/mips/include/paths.h#2 integrate .. //depot/projects/mips/include/pthread.h#4 integrate .. //depot/projects/mips/include/pwd.h#2 integrate .. //depot/projects/mips/lib/Makefile#6 integrate .. //depot/projects/mips/lib/libalias/Makefile#2 integrate .. //depot/projects/mips/lib/libatm/atm_addr.c#3 integrate .. //depot/projects/mips/lib/libc/gdtoa/machdep_ldisQ.c#2 integrate .. //depot/projects/mips/lib/libc/gdtoa/machdep_ldisx.c#2 integrate .. //depot/projects/mips/lib/libc/gen/Makefile.inc#8 integrate .. //depot/projects/mips/lib/libc/gen/fstab.c#2 integrate .. //depot/projects/mips/lib/libc/gen/getbootfile.c#2 integrate .. //depot/projects/mips/lib/libc/gen/getfsent.3#2 integrate .. //depot/projects/mips/lib/libc/gen/getgrent.3#3 integrate .. //depot/projects/mips/lib/libc/gen/getgrent.c#4 integrate .. //depot/projects/mips/lib/libc/gen/getpwent.3#3 integrate .. //depot/projects/mips/lib/libc/gen/getpwent.c#4 integrate .. //depot/projects/mips/lib/libc/gen/getusershell.c#3 integrate .. //depot/projects/mips/lib/libc/include/namespace.h#6 integrate .. //depot/projects/mips/lib/libc/include/nss_tls.h#1 branch .. //depot/projects/mips/lib/libc/include/un-namespace.h#5 integrate .. //depot/projects/mips/lib/libc/locale/wcrtomb.c#3 integrate .. //depot/projects/mips/lib/libc/net/Makefile.inc#5 integrate .. //depot/projects/mips/lib/libc/net/getaddrinfo.c#5 integrate .. //depot/projects/mips/lib/libc/net/gethostnamadr.c#2 integrate .. //depot/projects/mips/lib/libc/net/getnetnamadr.c#2 integrate .. //depot/projects/mips/lib/libc/net/name6.c#5 integrate .. //depot/projects/mips/lib/libc/net/nsdispatch.3#4 integrate .. //depot/projects/mips/lib/libc/net/nsdispatch.c#3 integrate .. //depot/projects/mips/lib/libc/net/nslexer.l#3 integrate .. //depot/projects/mips/lib/libc/net/nsparser.y#2 integrate .. //depot/projects/mips/lib/libc/net/nss_backends.h#1 branch .. //depot/projects/mips/lib/libc/net/nss_compat.c#1 branch .. //depot/projects/mips/lib/libc/posix1e/Makefile.inc#6 integrate .. //depot/projects/mips/lib/libc/posix1e/mac.3#7 integrate .. //depot/projects/mips/lib/libc/posix1e/mac.conf.5#1 branch .. //depot/projects/mips/lib/libc/posix1e/mac_prepare.3#3 integrate .. //depot/projects/mips/lib/libc/stdio/vfprintf.c#6 integrate .. //depot/projects/mips/lib/libc/stdio/vfwprintf.c#6 integrate .. //depot/projects/mips/lib/libc/sys/Makefile.inc#5 integrate .. //depot/projects/mips/lib/libc/sys/jail.2#3 integrate .. //depot/projects/mips/lib/libc/sys/ntp_adjtime.2#1 branch .. //depot/projects/mips/lib/libc/sys/ntp_gettime.2#1 branch .. //depot/projects/mips/lib/libc_r/man/Makefile.inc#5 integrate .. //depot/projects/mips/lib/libc_r/man/pthread_getconcurrency.3#1 branch .. //depot/projects/mips/lib/libc_r/uthread/Makefile.inc#4 integrate .. //depot/projects/mips/lib/libc_r/uthread/uthread_concurrency.c#1 branch .. //depot/projects/mips/lib/libdevstat/devstat.c#4 integrate .. //depot/projects/mips/lib/libdisk/Makefile#4 integrate .. //depot/projects/mips/lib/libdisk/rules.c#7 integrate .. //depot/projects/mips/lib/libdisk/write_sparc64_disk.c#4 integrate .. //depot/projects/mips/lib/libgeom/geom_ctl.c#3 integrate .. //depot/projects/mips/lib/libgeom/libgeom.h#5 integrate .. //depot/projects/mips/lib/libipsec/pfkey_dump.c#2 integrate .. //depot/projects/mips/lib/libkvm/kvm_getprocs.3#3 integrate .. //depot/projects/mips/lib/libkvm/kvm_proc.c#5 integrate .. //depot/projects/mips/lib/libncurses/Makefile#5 integrate .. //depot/projects/mips/lib/libpam/modules/modules.inc#4 integrate .. //depot/projects/mips/lib/libpam/modules/pam_chroot/pam_chroot.8#2 integrate .. //depot/projects/mips/lib/libpam/modules/pam_chroot/pam_chroot.c#2 integrate .. //depot/projects/mips/lib/libpam/modules/pam_unix/pam_unix.c#2 integrate .. //depot/projects/mips/lib/libpthread/Makefile#3 integrate .. //depot/projects/mips/lib/libpthread/arch/i386/i386/ksd.c#1 branch .. //depot/projects/mips/lib/libpthread/arch/i386/i386/thr_enter_uts.S#4 integrate .. //depot/projects/mips/lib/libpthread/arch/i386/i386/thr_getcontext.S#1 branch .. //depot/projects/mips/lib/libpthread/arch/i386/i386/thr_switch.S#3 integrate .. //depot/projects/mips/lib/libpthread/arch/i386/include/atomic_ops.h#1 branch .. //depot/projects/mips/lib/libpthread/arch/i386/include/ksd.h#1 branch .. //depot/projects/mips/lib/libpthread/arch/i386/include/pthread_md.h#1 branch .. //depot/projects/mips/lib/libpthread/sys/Makefile.inc#3 integrate .. //depot/projects/mips/lib/libpthread/sys/lock.c#1 branch .. //depot/projects/mips/lib/libpthread/sys/lock.h#1 branch .. //depot/projects/mips/lib/libpthread/sys/thr_error.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/Makefile.inc#6 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_acl_aclcheck_fd.c#2 delete .. //depot/projects/mips/lib/libpthread/thread/thr_aio_suspend.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_attr_get_np.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_attr_init.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_attr_setcreatesuspend_np.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_attr_setguardsize.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_attr_setschedparam.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_attr_setscope.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_autoinit.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_cancel.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_clean.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_close.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_concurrency.c#1 branch .. //depot/projects/mips/lib/libpthread/thread/thr_cond.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_condattr_init.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_creat.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_create.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_detach.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_exit.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_fcntl.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_find_thread.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_fork.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_fsync.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_gc.c#2 delete .. //depot/projects/mips/lib/libpthread/thread/thr_getschedparam.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_info.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_init.c#5 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_join.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_kern.c#7 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_kill.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_main_np.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_mattr_init.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_msync.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_mutex.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_mutex_prioceiling.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_mutex_protocol.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_nanosleep.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_once.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_open.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_pause.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_poll.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_printf.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_priority_queue.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_private.h#5 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_pselect.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_read.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_readv.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_resume_np.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_rwlock.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_select.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_self.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_sem.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_seterrno.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_setschedparam.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_sig.c#4 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_sigaction.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_sigmask.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_sigpending.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_sigsuspend.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_sigwait.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_sleep.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_spec.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_spinlock.c#3 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_stack.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_suspend_np.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_switch_np.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_system.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_tcdrain.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_wait.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_wait4.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_waitpid.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_write.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_writev.c#2 integrate .. //depot/projects/mips/lib/libpthread/thread/thr_yield.c#2 integrate .. //depot/projects/mips/lib/libstand/bzlib_private.h.diff#2 integrate .. //depot/projects/mips/lib/libstand/zalloc_defs.h#4 integrate .. //depot/projects/mips/lib/libthr/arch/ia64/Makefile.inc#1 branch .. //depot/projects/mips/lib/libthr/arch/ia64/ia64/_curthread.c#1 branch .. //depot/projects/mips/lib/libthr/thread/Makefile.inc#2 integrate .. //depot/projects/mips/lib/libthr/thread/thr_concurrency.c#1 branch .. //depot/projects/mips/lib/libthr/thread/thr_create.c#2 integrate .. //depot/projects/mips/lib/libthr/thread/thr_gc.c#2 integrate .. //depot/projects/mips/lib/libthr/thread/thr_kern.c#2 integrate .. //depot/projects/mips/lib/libusbhid/Makefile#2 integrate .. //depot/projects/mips/lib/libusbhid/data.c#2 integrate .. //depot/projects/mips/lib/libusbhid/descr.c#2 integrate .. //depot/projects/mips/lib/libusbhid/libusbhid.h#3 delete .. //depot/projects/mips/lib/libusbhid/parse.c#3 integrate .. //depot/projects/mips/lib/libusbhid/usage.c#3 integrate .. //depot/projects/mips/lib/libusbhid/usbhid.3#2 integrate .. //depot/projects/mips/lib/libusbhid/usbhid.h#1 branch .. //depot/projects/mips/lib/libutil/login_class.3#3 integrate .. //depot/projects/mips/lib/libutil/pw_util.c#4 integrate .. //depot/projects/mips/libexec/rtld-elf/Makefile#3 integrate .. //depot/projects/mips/libexec/rtld-elf/libmap.c#1 branch .. //depot/projects/mips/libexec/rtld-elf/libmap.h#1 branch .. //depot/projects/mips/libexec/rtld-elf/rtld.1#4 integrate .. //depot/projects/mips/libexec/rtld-elf/rtld.c#9 integrate .. //depot/projects/mips/libexec/tftpd/tftpd.c#3 integrate .. //depot/projects/mips/release/Makefile#18 integrate .. //depot/projects/mips/release/Makefile.inc.docports#4 integrate .. //depot/projects/mips/release/alpha/drivers.conf#8 integrate .. //depot/projects/mips/release/alpha/fixit_crunch.conf#3 integrate .. //depot/projects/mips/release/doc/en_US.ISO8859-1/early-adopter/article.sgml#5 integrate .. //depot/projects/mips/release/doc/en_US.ISO8859-1/errata/article.sgml#9 integrate .. //depot/projects/mips/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#12 integrate .. //depot/projects/mips/release/doc/en_US.ISO8859-1/hardware/i386/proc-i386.sgml#4 integrate .. //depot/projects/mips/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#22 integrate .. //depot/projects/mips/release/doc/ja_JP.eucJP/errata/article.sgml#5 integrate .. //depot/projects/mips/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#6 integrate .. //depot/projects/mips/release/doc/ja_JP.eucJP/hardware/i386/proc-i386.sgml#4 integrate .. //depot/projects/mips/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#8 integrate .. //depot/projects/mips/release/i386/dokern.sh#9 integrate .. //depot/projects/mips/release/i386/drivers.conf#12 integrate .. //depot/projects/mips/release/i386/fixit_crunch.conf#3 integrate .. //depot/projects/mips/release/ia64/doFS.sh#4 integrate .. //depot/projects/mips/release/pc98/dokern.sh#11 integrate .. //depot/projects/mips/release/pc98/drivers.conf#8 integrate .. //depot/projects/mips/release/pc98/fixit-small_crunch.conf#2 integrate .. //depot/projects/mips/release/pc98/fixit_crunch.conf#3 integrate .. //depot/projects/mips/release/scripts/doFS.sh#7 integrate .. //depot/projects/mips/sbin/atacontrol/Makefile#2 integrate .. //depot/projects/mips/sbin/atacontrol/atacontrol.c#3 integrate .. //depot/projects/mips/sbin/bsdlabel/Makefile#1 branch .. //depot/projects/mips/sbin/bsdlabel/bsdlabel.5#1 branch .. //depot/projects/mips/sbin/bsdlabel/bsdlabel.8#1 branch .. //depot/projects/mips/sbin/bsdlabel/bsdlabel.c#1 branch .. //depot/projects/mips/sbin/bsdlabel/pathnames.h#1 branch .. //depot/projects/mips/sbin/bsdlabel/runtest.sh#1 branch .. //depot/projects/mips/sbin/devd/devd.8#7 integrate .. //depot/projects/mips/sbin/devd/devd.cc#3 integrate .. //depot/projects/mips/sbin/devd/devd.h#3 integrate .. //depot/projects/mips/sbin/devd/devd.hh#1 branch .. //depot/projects/mips/sbin/disklabel/disklabel.8#9 integrate .. //depot/projects/mips/sbin/dump/dump.h#4 integrate .. //depot/projects/mips/sbin/dump/main.c#5 integrate .. //depot/projects/mips/sbin/dump/optr.c#2 integrate .. //depot/projects/mips/sbin/fdisk/Makefile#2 integrate .. //depot/projects/mips/sbin/fdisk/fdisk.c#5 integrate .. //depot/projects/mips/sbin/fdisk/runtest.sh#1 branch .. //depot/projects/mips/sbin/fsck/fsck.c#4 integrate .. //depot/projects/mips/sbin/gbde/Makefile#5 integrate .. //depot/projects/mips/sbin/gbde/gbde.c#7 integrate .. //depot/projects/mips/sbin/growfs/growfs.c#4 integrate .. //depot/projects/mips/sbin/ifconfig/ifconfig.c#6 integrate .. //depot/projects/mips/sbin/kldconfig/Makefile#2 integrate .. //depot/projects/mips/sbin/kldconfig/kldconfig.c#2 integrate .. //depot/projects/mips/sbin/kldload/Makefile#2 integrate .. //depot/projects/mips/sbin/kldstat/Makefile#2 integrate .. //depot/projects/mips/sbin/kldstat/kldstat.c#2 integrate .. //depot/projects/mips/sbin/kldunload/Makefile#2 integrate .. //depot/projects/mips/sbin/kldunload/kldunload.c#2 integrate .. //depot/projects/mips/sbin/mdconfig/mdconfig.8#3 integrate .. //depot/projects/mips/sbin/mdconfig/mdconfig.c#6 integrate .. //depot/projects/mips/sbin/mdmfs/Makefile#2 integrate .. //depot/projects/mips/sbin/mdmfs/mdmfs.8#4 integrate .. //depot/projects/mips/sbin/mount/mount.8#4 integrate .. //depot/projects/mips/sbin/mount/mount.c#3 integrate .. //depot/projects/mips/sbin/newfs/newfs.8#4 integrate .. //depot/projects/mips/sbin/newfs/newfs.c#6 integrate .. //depot/projects/mips/sbin/ping/ping.c#10 integrate .. //depot/projects/mips/sbin/route/route.c#4 integrate .. //depot/projects/mips/sbin/sunlabel/Makefile#2 integrate .. //depot/projects/mips/sbin/sunlabel/runtest.sh#1 branch .. //depot/projects/mips/sbin/sunlabel/sunlabel.c#2 integrate .. //depot/projects/mips/sbin/umount/umount.8#2 integrate .. //depot/projects/mips/sbin/umount/umount.c#3 integrate .. //depot/projects/mips/secure/lib/Makefile#3 integrate .. //depot/projects/mips/secure/lib/libcrypto/Makefile#9 integrate .. //depot/projects/mips/secure/lib/libssh/Makefile#3 integrate .. //depot/projects/mips/secure/libexec/Makefile#2 integrate .. //depot/projects/mips/secure/libexec/sftp-server/Makefile#2 integrate .. //depot/projects/mips/secure/usr.bin/Makefile#2 integrate .. //depot/projects/mips/secure/usr.bin/ssh/Makefile#3 integrate .. //depot/projects/mips/secure/usr.sbin/sshd/Makefile#3 integrate .. //depot/projects/mips/share/dict/freebsd#2 integrate .. //depot/projects/mips/share/examples/ppp/ppp.conf.isdn#2 integrate .. //depot/projects/mips/share/examples/ppp/ppp.conf.sample#4 integrate .. //depot/projects/mips/share/examples/ppp/ppp.conf.span-isp#2 integrate .. //depot/projects/mips/share/examples/ppp/ppp.conf.span-isp.working#2 integrate .. //depot/projects/mips/share/man/Makefile#2 integrate .. //depot/projects/mips/share/man/man4/Makefile#14 integrate .. //depot/projects/mips/share/man/man4/acpi.4#3 integrate .. //depot/projects/mips/share/man/man4/asr.4#2 integrate .. //depot/projects/mips/share/man/man4/axe.4#1 branch .. //depot/projects/mips/share/man/man4/firewire.4#7 integrate .. //depot/projects/mips/share/man/man4/fwohci.4#6 integrate .. //depot/projects/mips/share/man/man4/fxp.4#3 integrate .. //depot/projects/mips/share/man/man4/isp.4#2 integrate .. //depot/projects/mips/share/man/man4/man4.i386/Makefile#4 integrate .. //depot/projects/mips/share/man/man4/man4.i386/asr.4#3 delete .. //depot/projects/mips/share/man/man4/man4.i386/pae.4#1 branch .. //depot/projects/mips/share/man/man4/man4.i386/sbni.4#1 branch .. //depot/projects/mips/share/man/man4/md.4#3 integrate .. //depot/projects/mips/share/man/man4/mlx.4#2 integrate .. //depot/projects/mips/share/man/man4/polling.4#3 integrate .. //depot/projects/mips/share/man/man4/sbsh.4#1 branch .. //depot/projects/mips/share/man/man4/smp.4#4 integrate .. //depot/projects/mips/share/man/man4/sym.4#2 integrate .. //depot/projects/mips/share/man/man4/syscons.4#2 integrate .. //depot/projects/mips/share/man/man4/umass.4#7 integrate .. //depot/projects/mips/share/man/man4/wi.4#9 integrate .. //depot/projects/mips/share/man/man4/xl.4#3 integrate .. //depot/projects/mips/share/man/man5/Makefile#4 integrate .. //depot/projects/mips/share/man/man5/fs.5#4 integrate .. //depot/projects/mips/share/man/man5/libmap.conf.5#1 branch .. //depot/projects/mips/share/man/man5/rc.conf.5#10 integrate .. //depot/projects/mips/share/man/man7/environ.7#2 integrate .. //depot/projects/mips/share/man/man7/firewall.7#4 integrate .. //depot/projects/mips/share/man/man7/release.7#8 integrate .. //depot/projects/mips/share/man/man8/intro.8#4 integrate .. //depot/projects/mips/share/man/man8/rc.subr.8#3 integrate .. //depot/projects/mips/share/man/man9/Makefile#8 integrate .. //depot/projects/mips/share/man/man9/device_get_ivars.9#2 integrate .. //depot/projects/mips/share/man/man9/device_get_name.9#1 branch .. //depot/projects/mips/share/man/man9/device_get_parent.9#1 branch .. //depot/projects/mips/share/man/man9/device_get_state.9#3 integrate .. //depot/projects/mips/share/man/man9/device_printf.9#1 branch .. //depot/projects/mips/share/man/man9/device_set_driver.9#1 branch .. //depot/projects/mips/share/man/man9/malloc.9#5 integrate .. //depot/projects/mips/share/man/man9/mbuf.9#5 integrate .. //depot/projects/mips/share/man/man9/style.9#7 integrate .. //depot/projects/mips/share/misc/iso3166#2 integrate .. //depot/projects/mips/share/mk/bsd.cpu.mk#3 integrate .. //depot/projects/mips/share/mk/sys.mk#3 integrate .. //depot/projects/mips/sys/alpha/alpha/busdma_machdep.c#8 integrate .. //depot/projects/mips/sys/alpha/alpha/dec_2100_a500.c#2 integrate .. //depot/projects/mips/sys/alpha/alpha/machdep.c#10 integrate .. //depot/projects/mips/sys/alpha/alpha/pmap.c#10 integrate .. //depot/projects/mips/sys/alpha/alpha/sys_machdep.c#4 integrate .. //depot/projects/mips/sys/alpha/alpha/trap.c#9 integrate .. //depot/projects/mips/sys/alpha/alpha/vm_machdep.c#8 integrate .. //depot/projects/mips/sys/alpha/conf/GENERIC#9 integrate .. //depot/projects/mips/sys/alpha/conf/NOTES#3 integrate .. //depot/projects/mips/sys/alpha/include/_limits.h#1 branch .. //depot/projects/mips/sys/alpha/include/bus.h#7 integrate .. //depot/projects/mips/sys/alpha/include/pmap.h#5 integrate .. //depot/projects/mips/sys/alpha/include/proc.h#2 integrate .. //depot/projects/mips/sys/alpha/isa/isa.c#2 integrate .. //depot/projects/mips/sys/alpha/linux/linux.h#3 integrate .. //depot/projects/mips/sys/alpha/linux/linux_machdep.c#3 integrate .. //depot/projects/mips/sys/alpha/osf1/osf1_misc.c#6 integrate .. //depot/projects/mips/sys/alpha/osf1/osf1_signal.c#6 integrate .. //depot/projects/mips/sys/arm/include/_limits.h#1 branch .. //depot/projects/mips/sys/boot/alpha/boot1/boot1.c#2 integrate .. //depot/projects/mips/sys/boot/arc/lib/arcdisk.c#3 integrate .. //depot/projects/mips/sys/boot/arc/lib/devicename.c#2 integrate .. //depot/projects/mips/sys/boot/ofw/libofw/devicename.c#4 integrate .. //depot/projects/mips/sys/boot/ofw/libofw/ofw_disk.c#3 integrate .. //depot/projects/mips/sys/boot/sparc64/boot1/boot1.c#3 integrate .. //depot/projects/mips/sys/cam/scsi/scsi_da.c#13 integrate .. //depot/projects/mips/sys/compat/linprocfs/linprocfs.c#6 integrate .. //depot/projects/mips/sys/compat/linux/linux_file.c#6 integrate .. //depot/projects/mips/sys/compat/linux/linux_ioctl.c#8 integrate .. //depot/projects/mips/sys/compat/linux/linux_ioctl.h#3 integrate .. //depot/projects/mips/sys/compat/linux/linux_misc.c#6 integrate .. //depot/projects/mips/sys/compat/linux/linux_signal.c#4 integrate .. //depot/projects/mips/sys/compat/svr4/svr4_misc.c#5 integrate .. //depot/projects/mips/sys/compat/svr4/svr4_signal.c#4 integrate .. //depot/projects/mips/sys/conf/Makefile.alpha#3 integrate .. //depot/projects/mips/sys/conf/Makefile.i386#3 integrate .. //depot/projects/mips/sys/conf/Makefile.ia64#4 integrate .. //depot/projects/mips/sys/conf/Makefile.pc98#3 integrate .. //depot/projects/mips/sys/conf/Makefile.powerpc#4 integrate .. //depot/projects/mips/sys/conf/Makefile.sparc64#3 integrate .. //depot/projects/mips/sys/conf/Makefile.x86_64#3 integrate .. //depot/projects/mips/sys/conf/NOTES#17 integrate .. //depot/projects/mips/sys/conf/files#21 integrate .. //depot/projects/mips/sys/conf/files.alpha#7 integrate .. //depot/projects/mips/sys/conf/files.i386#12 integrate .. //depot/projects/mips/sys/conf/files.ia64#9 integrate .. //depot/projects/mips/sys/conf/files.pc98#12 integrate .. //depot/projects/mips/sys/conf/files.sparc64#9 integrate .. //depot/projects/mips/sys/conf/options#19 integrate .. //depot/projects/mips/sys/conf/options.i386#9 integrate .. //depot/projects/mips/sys/conf/options.ia64#8 integrate .. //depot/projects/mips/sys/conf/options.pc98#9 integrate .. //depot/projects/mips/sys/conf/options.powerpc#6 integrate .. //depot/projects/mips/sys/conf/options.x86_64#6 integrate .. //depot/projects/mips/sys/contrib/ipfilter/netinet/ip_state.c#3 integrate .. //depot/projects/mips/sys/crypto/blowfish/arch/i386/bf_enc_586.S#2 integrate .. //depot/projects/mips/sys/crypto/des/arch/i386/des_enc.S#2 integrate .. //depot/projects/mips/sys/ddb/db_ps.c#9 integrate .. //depot/projects/mips/sys/dev/acpica/acpi.c#9 integrate .. //depot/projects/mips/sys/dev/adlink/adlink.c#2 integrate .. //depot/projects/mips/sys/dev/advansys/advansys.c#3 integrate .. //depot/projects/mips/sys/dev/advansys/adwcam.c#4 integrate .. //depot/projects/mips/sys/dev/aha/aha.c#6 integrate .. //depot/projects/mips/sys/dev/ahb/ahb.c#4 integrate .. //depot/projects/mips/sys/dev/aic/aic_pccard.c#3 integrate .. //depot/projects/mips/sys/dev/aic7xxx/aic79xx_osm.c#5 integrate .. //depot/projects/mips/sys/dev/aic7xxx/aic7xxx_osm.c#4 integrate .. //depot/projects/mips/sys/dev/amd/amd.c#2 integrate .. //depot/projects/mips/sys/dev/an/if_an.c#8 integrate .. //depot/projects/mips/sys/dev/an/if_an_isa.c#5 integrate .. //depot/projects/mips/sys/dev/an/if_an_pccard.c#6 integrate .. //depot/projects/mips/sys/dev/an/if_an_pci.c#7 integrate .. //depot/projects/mips/sys/dev/ar/if_ar.c#5 integrate .. //depot/projects/mips/sys/dev/ar/if_ar_isa.c#3 integrate .. //depot/projects/mips/sys/dev/ar/if_ar_pci.c#2 integrate .. //depot/projects/mips/sys/dev/ar/if_arregs.h#3 integrate .. //depot/projects/mips/sys/dev/asr/asr.c#6 integrate .. //depot/projects/mips/sys/dev/ata/ata-all.c#12 integrate .. //depot/projects/mips/sys/dev/ata/ata-all.h#7 integrate .. //depot/projects/mips/sys/dev/ata/ata-card.c#6 integrate .. //depot/projects/mips/sys/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/mips/sys/dev/ata/ata-disk.c#9 integrate .. //depot/projects/mips/sys/dev/ata/ata-dma.c#6 integrate .. //depot/projects/mips/sys/dev/ata/ata-pci.c#7 integrate .. //depot/projects/mips/sys/dev/ata/ata-pci.h#4 integrate .. //depot/projects/mips/sys/dev/ata/ata-raid.c#7 integrate .. //depot/projects/mips/sys/dev/ata/ata-raid.h#3 integrate .. //depot/projects/mips/sys/dev/awi/am79c930.c#2 integrate .. //depot/projects/mips/sys/dev/awi/if_awi_pccard.c#4 integrate .. //depot/projects/mips/sys/dev/bge/if_bge.c#8 integrate .. //depot/projects/mips/sys/dev/buslogic/bt.c#5 integrate .. //depot/projects/mips/sys/dev/cardbus/cardbus_cis.c#11 integrate .. //depot/projects/mips/sys/dev/ccd/ccd.c#9 integrate .. //depot/projects/mips/sys/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/mips/sys/dev/cnw/if_cnw.c#5 integrate .. //depot/projects/mips/sys/dev/cs/if_cs_isa.c#2 integrate .. //depot/projects/mips/sys/dev/cs/if_cs_pccard.c#2 integrate .. //depot/projects/mips/sys/dev/dpt/dpt_scsi.c#6 integrate .. //depot/projects/mips/sys/dev/drm/drmP.h#3 integrate .. //depot/projects/mips/sys/dev/drm/drm_bufs.h#3 integrate .. //depot/projects/mips/sys/dev/drm/drm_context.h#3 integrate .. //depot/projects/mips/sys/dev/drm/drm_dma.h#3 integrate .. //depot/projects/mips/sys/dev/drm/drm_drv.h#5 integrate .. //depot/projects/mips/sys/dev/drm/drm_fops.h#4 integrate .. //depot/projects/mips/sys/dev/drm/drm_init.h#3 delete .. //depot/projects/mips/sys/dev/drm/drm_ioctl.h#3 integrate .. //depot/projects/mips/sys/dev/drm/drm_lists.h#3 delete .. //depot/projects/mips/sys/dev/drm/drm_lock.h#3 integrate .. //depot/projects/mips/sys/dev/drm/drm_memory.h#6 integrate .. //depot/projects/mips/sys/dev/drm/drm_os_freebsd.h#3 integrate .. //depot/projects/mips/sys/dev/drm/drm_sysctl.h#3 integrate .. //depot/projects/mips/sys/dev/drm/drm_vm.h#5 integrate .. //depot/projects/mips/sys/dev/drm/mga_dma.c#3 integrate .. //depot/projects/mips/sys/dev/drm/mga_drv.c#3 integrate .. //depot/projects/mips/sys/dev/drm/mga_drv.h#3 integrate .. //depot/projects/mips/sys/dev/drm/mga_state.c#3 integrate .. //depot/projects/mips/sys/dev/drm/r128_cce.c#3 integrate .. //depot/projects/mips/sys/dev/drm/r128_drv.c#3 integrate .. //depot/projects/mips/sys/dev/drm/r128_drv.h#3 integrate .. //depot/projects/mips/sys/dev/drm/r128_state.c#3 integrate .. //depot/projects/mips/sys/dev/drm/radeon.h#3 integrate .. //depot/projects/mips/sys/dev/drm/radeon_cp.c#3 integrate .. //depot/projects/mips/sys/dev/drm/radeon_drm.h#3 integrate .. //depot/projects/mips/sys/dev/drm/radeon_drv.c#3 integrate .. //depot/projects/mips/sys/dev/drm/radeon_drv.h#3 integrate .. //depot/projects/mips/sys/dev/drm/radeon_irq.c#2 integrate .. //depot/projects/mips/sys/dev/drm/radeon_mem.c#2 integrate .. //depot/projects/mips/sys/dev/drm/radeon_state.c#3 integrate .. //depot/projects/mips/sys/dev/drm/tdfx_drv.c#3 integrate .. //depot/projects/mips/sys/dev/ed/if_ed_cbus.c#5 integrate .. //depot/projects/mips/sys/dev/ed/if_ed_isa.c#2 integrate .. //depot/projects/mips/sys/dev/ed/if_ed_pccard.c#6 integrate .. //depot/projects/mips/sys/dev/ed/if_ed_pci.c#2 integrate .. //depot/projects/mips/sys/dev/em/if_em.c#8 integrate .. //depot/projects/mips/sys/dev/en/midway.c#6 integrate .. //depot/projects/mips/sys/dev/en/midwayreg.h#2 integrate .. //depot/projects/mips/sys/dev/en/midwayvar.h#2 integrate .. //depot/projects/mips/sys/dev/ep/if_ep_pccard.c#4 integrate .. //depot/projects/mips/sys/dev/fe/if_fe_pccard.c#3 integrate .. //depot/projects/mips/sys/dev/firewire/firewire.c#14 integrate .. //depot/projects/mips/sys/dev/firewire/firewire.h#6 integrate .. //depot/projects/mips/sys/dev/firewire/firewire_phy.h#2 integrate .. //depot/projects/mips/sys/dev/firewire/firewirereg.h#9 integrate .. //depot/projects/mips/sys/dev/firewire/fwcrom.c#2 integrate .. //depot/projects/mips/sys/dev/firewire/fwdev.c#7 integrate .. //depot/projects/mips/sys/dev/firewire/fwdma.c#1 branch .. //depot/projects/mips/sys/dev/firewire/fwdma.h#1 branch .. //depot/projects/mips/sys/dev/firewire/fwmem.c#8 integrate .. //depot/projects/mips/sys/dev/firewire/fwmem.h#4 integrate .. //depot/projects/mips/sys/dev/firewire/fwohci.c#13 integrate .. //depot/projects/mips/sys/dev/firewire/fwohci_pci.c#11 integrate .. //depot/projects/mips/sys/dev/firewire/fwohcireg.h#5 integrate .. //depot/projects/mips/sys/dev/firewire/fwohcivar.h#4 integrate .. //depot/projects/mips/sys/dev/firewire/iec13213.h#3 integrate .. //depot/projects/mips/sys/dev/firewire/iec68113.h#4 integrate .. //depot/projects/mips/sys/dev/firewire/if_fwe.c#10 integrate .. //depot/projects/mips/sys/dev/firewire/if_fwevar.h#3 integrate .. //depot/projects/mips/sys/dev/firewire/sbp.c#12 integrate .. //depot/projects/mips/sys/dev/fxp/if_fxp.c#11 integrate .. //depot/projects/mips/sys/dev/fxp/if_fxpvar.h#5 integrate .. //depot/projects/mips/sys/dev/gem/if_gem_pci.c#3 integrate .. //depot/projects/mips/sys/dev/gx/if_gx.c#5 integrate .. //depot/projects/mips/sys/dev/hea/eni_transmit.c#3 integrate .. //depot/projects/mips/sys/dev/hea/hea_pci.c#2 integrate .. //depot/projects/mips/sys/dev/hfa/hfa_pci.c#2 integrate .. //depot/projects/mips/sys/dev/hme/if_hme_pci.c#3 integrate .. //depot/projects/mips/sys/dev/hme/if_hme_sbus.c#3 integrate .. //depot/projects/mips/sys/dev/ida/ida.c#7 integrate .. //depot/projects/mips/sys/dev/iir/iir.c#2 integrate .. //depot/projects/mips/sys/dev/iir/iir.h#2 integrate .. //depot/projects/mips/sys/dev/iir/iir_ctrl.c#5 integrate .. //depot/projects/mips/sys/dev/iir/iir_pci.c#4 integrate .. //depot/projects/mips/sys/dev/lge/if_lge.c#6 integrate .. //depot/projects/mips/sys/dev/lnc/if_lnc_cbus.c#3 integrate .. //depot/projects/mips/sys/dev/lnc/if_lnc_isa.c#3 integrate .. //depot/projects/mips/sys/dev/lnc/if_lnc_pci.c#3 integrate .. //depot/projects/mips/sys/dev/mcd/mcd_isa.c#4 integrate .. //depot/projects/mips/sys/dev/md/md.c#13 integrate .. //depot/projects/mips/sys/dev/mpt/mpt_freebsd.c#3 integrate .. //depot/projects/mips/sys/dev/my/if_my.c#8 integrate .. //depot/projects/mips/sys/dev/ncv/ncr53c500_pccard.c#4 integrate .. //depot/projects/mips/sys/dev/nge/if_nge.c#8 integrate .. //depot/projects/mips/sys/dev/pccard/pccard.c#9 integrate .. //depot/projects/mips/sys/dev/pccard/pccarddevs#9 integrate .. //depot/projects/mips/sys/dev/pccard/pccarddevs.h#9 integrate .. //depot/projects/mips/sys/dev/pccard/pccardvar.h#3 integrate .. //depot/projects/mips/sys/dev/pccbb/pccbb.c#7 integrate .. //depot/projects/mips/sys/dev/pci/pci.c#8 integrate .. //depot/projects/mips/sys/dev/pci/pci_if.m#2 integrate .. //depot/projects/mips/sys/dev/pci/pci_private.h#3 integrate .. //depot/projects/mips/sys/dev/pci/pcireg.h#2 integrate .. //depot/projects/mips/sys/dev/pci/pcivar.h#3 integrate .. //depot/projects/mips/sys/dev/pdq/if_fea.c#2 integrate .. //depot/projects/mips/sys/dev/pdq/if_fpa.c#2 integrate .. //depot/projects/mips/sys/dev/puc/pucdata.c#6 integrate .. //depot/projects/mips/sys/dev/sbni/if_sbni_isa.c#2 integrate .. //depot/projects/mips/sys/dev/sbni/if_sbni_pci.c#2 integrate .. //depot/projects/mips/sys/dev/sbsh/if_sbsh.c#1 branch .. //depot/projects/mips/sys/dev/sbsh/if_sbshreg.h#1 branch .. //depot/projects/mips/sys/dev/scd/scd_isa.c#2 integrate .. //depot/projects/mips/sys/dev/sn/if_sn_isa.c#2 integrate .. //depot/projects/mips/sys/dev/sn/if_sn_pccard.c#2 integrate .. //depot/projects/mips/sys/dev/snc/dp83932.c#6 integrate .. //depot/projects/mips/sys/dev/snc/if_snc_cbus.c#2 integrate .. //depot/projects/mips/sys/dev/snc/if_snc_pccard.c#2 integrate .. //depot/projects/mips/sys/dev/sound/pci/ds1.c#5 integrate .. //depot/projects/mips/sys/dev/sound/pci/emu10k1.c#5 integrate .. //depot/projects/mips/sys/dev/sound/pci/ich.c#5 integrate .. //depot/projects/mips/sys/dev/sound/pci/via8233.c#6 integrate .. //depot/projects/mips/sys/dev/sound/pci/via8233.h#3 integrate .. //depot/projects/mips/sys/dev/sound/pcm/ac97.c#10 integrate .. //depot/projects/mips/sys/dev/sound/pcm/buffer.c#6 integrate .. //depot/projects/mips/sys/dev/sound/pcm/feeder_fmt.c#5 integrate .. //depot/projects/mips/sys/dev/sound/pcm/feeder_rate.c#7 integrate .. //depot/projects/mips/sys/dev/sr/if_sr.c#6 integrate .. //depot/projects/mips/sys/dev/sr/if_sr_isa.c#2 integrate .. //depot/projects/mips/sys/dev/sr/if_sr_pci.c#2 integrate .. //depot/projects/mips/sys/dev/sr/if_srregs.h#3 integrate .. //depot/projects/mips/sys/dev/stg/tmc18c30.h#1 branch .. //depot/projects/mips/sys/dev/stg/tmc18c30_isa.c#2 integrate .. //depot/projects/mips/sys/dev/stg/tmc18c30_pccard.c#3 integrate .. //depot/projects/mips/sys/dev/stg/tmc18c30_pci.c#1 branch .. //depot/projects/mips/sys/dev/stg/tmc18c30_subr.c#1 branch .. //depot/projects/mips/sys/dev/sym/sym_hipd.c#5 integrate .. //depot/projects/mips/sys/dev/trm/trm.c#5 integrate .. //depot/projects/mips/sys/dev/tx/if_tx.c#6 integrate .. //depot/projects/mips/sys/dev/tx/if_txreg.h#3 integrate .. //depot/projects/mips/sys/dev/tx/if_txvar.h#5 integrate .. //depot/projects/mips/sys/dev/txp/if_txp.c#6 integrate .. //depot/projects/mips/sys/dev/ubsec/ubsec.c#10 integrate .. //depot/projects/mips/sys/dev/ubsec/ubsecreg.h#5 integrate .. //depot/projects/mips/sys/dev/usb/FILES#2 integrate .. //depot/projects/mips/sys/dev/usb/ehci.c#1 branch .. //depot/projects/mips/sys/dev/usb/ehci_pci.c#1 branch .. //depot/projects/mips/sys/dev/usb/ehcireg.h#1 branch .. //depot/projects/mips/sys/dev/usb/ehcivar.h#1 branch .. //depot/projects/mips/sys/dev/usb/if_aue.c#7 integrate .. //depot/projects/mips/sys/dev/usb/if_axe.c#1 branch .. //depot/projects/mips/sys/dev/usb/if_axereg.h#1 branch .. //depot/projects/mips/sys/dev/usb/if_cue.c#7 integrate .. //depot/projects/mips/sys/dev/usb/if_kue.c#6 integrate .. //depot/projects/mips/sys/dev/usb/uhid.c#5 integrate .. //depot/projects/mips/sys/dev/usb/umass.c#9 integrate .. //depot/projects/mips/sys/dev/usb/usb.c#5 integrate .. //depot/projects/mips/sys/dev/usb/usb_quirks.c#4 integrate .. //depot/projects/mips/sys/dev/usb/usbdevs#10 integrate .. //depot/projects/mips/sys/dev/usb/usbdevs.h#9 integrate .. //depot/projects/mips/sys/dev/usb/usbdevs_data.h#9 integrate .. //depot/projects/mips/sys/dev/vinum/vinumdaemon.c#4 integrate .. //depot/projects/mips/sys/dev/vx/if_vx.c#5 integrate .. //depot/projects/mips/sys/dev/vx/if_vx_pci.c#2 integrate .. //depot/projects/mips/sys/dev/wds/wd7000.c#3 integrate .. //depot/projects/mips/sys/dev/wi/if_wi.c#10 integrate .. //depot/projects/mips/sys/dev/wi/if_wi_pccard.c#8 integrate .. //depot/projects/mips/sys/dev/wi/if_wi_pci.c#4 integrate .. //depot/projects/mips/sys/dev/wl/if_wl.c#5 integrate .. //depot/projects/mips/sys/dev/wl/if_wl.h#2 integrate .. //depot/projects/mips/sys/dev/xe/if_xe_pccard.c#5 integrate .. //depot/projects/mips/sys/fs/msdosfs/msdosfs_denode.c#5 integrate .. //depot/projects/mips/sys/fs/msdosfs/msdosfs_vfsops.c#5 integrate .. //depot/projects/mips/sys/fs/procfs/procfs.c#3 integrate .. //depot/projects/mips/sys/fs/procfs/procfs_ctl.c#3 integrate .. //depot/projects/mips/sys/fs/procfs/procfs_ioctl.c#2 integrate .. //depot/projects/mips/sys/fs/procfs/procfs_status.c#3 integrate .. //depot/projects/mips/sys/geom/bde/g_bde.c#9 integrate .. //depot/projects/mips/sys/geom/bde/g_bde_work.c#7 integrate .. //depot/projects/mips/sys/geom/geom.h#14 integrate .. //depot/projects/mips/sys/geom/geom_aes.c#7 integrate .. //depot/projects/mips/sys/geom/geom_apple.c#5 integrate .. //depot/projects/mips/sys/geom/geom_bsd.c#12 integrate .. //depot/projects/mips/sys/geom/geom_bsd_enc.c#1 branch .. //depot/projects/mips/sys/geom/geom_ctl.c#8 integrate .. //depot/projects/mips/sys/geom/geom_ctl.h#3 integrate .. //depot/projects/mips/sys/geom/geom_disk.c#13 integrate .. //depot/projects/mips/sys/geom/geom_dump.c#11 integrate .. //depot/projects/mips/sys/geom/geom_event.c#8 integrate .. //depot/projects/mips/sys/geom/geom_gpt.c#7 integrate .. //depot/projects/mips/sys/geom/geom_int.h#7 integrate .. //depot/projects/mips/sys/geom/geom_io.c#13 integrate .. //depot/projects/mips/sys/geom/geom_kern.c#11 integrate .. //depot/projects/mips/sys/geom/geom_mbr.c#9 integrate .. //depot/projects/mips/sys/geom/geom_mbr_enc.c#1 branch .. //depot/projects/mips/sys/geom/geom_mirror.c#4 integrate .. //depot/projects/mips/sys/geom/geom_pc98.c#9 integrate .. //depot/projects/mips/sys/geom/geom_slice.c#11 integrate .. //depot/projects/mips/sys/geom/geom_slice.h#5 integrate .. //depot/projects/mips/sys/geom/geom_subr.c#13 integrate .. //depot/projects/mips/sys/geom/geom_sunlabel.c#8 integrate .. //depot/projects/mips/sys/geom/geom_sunlabel_enc.c#1 branch .. //depot/projects/mips/sys/geom/geom_vol_ffs.c#3 integrate .. //depot/projects/mips/sys/gnu/dev/sound/pci/emu10k1-ac97.h#1 branch .. //depot/projects/mips/sys/gnu/dev/sound/pci/emu10k1.h#2 integrate .. //depot/projects/mips/sys/gnu/i386/fpemul/fpu_entry.c#2 integrate .. //depot/projects/mips/sys/i386/conf/GENERIC#11 integrate .. //depot/projects/mips/sys/i386/conf/NOTES#12 integrate .. //depot/projects/mips/sys/i386/conf/PAE#1 branch .. //depot/projects/mips/sys/i386/i386/busdma_machdep.c#8 integrate .. //depot/projects/mips/sys/i386/i386/genassym.c#9 integrate .. //depot/projects/mips/sys/i386/i386/identcpu.c#7 integrate .. //depot/projects/mips/sys/i386/i386/machdep.c#13 integrate .. //depot/projects/mips/sys/i386/i386/pmap.c#14 integrate .. //depot/projects/mips/sys/i386/i386/sys_machdep.c#6 integrate .. //depot/projects/mips/sys/i386/i386/trap.c#11 integrate .. //depot/projects/mips/sys/i386/i386/tsc.c#4 integrate .. //depot/projects/mips/sys/i386/i386/vm_machdep.c#11 integrate .. //depot/projects/mips/sys/i386/ibcs2/ibcs2_signal.c#4 integrate .. //depot/projects/mips/sys/i386/include/_limits.h#1 branch .. //depot/projects/mips/sys/i386/include/bus_dma.h#3 integrate .. //depot/projects/mips/sys/i386/include/cpufunc.h#2 integrate .. //depot/projects/mips/sys/i386/include/pmap.h#5 integrate .. //depot/projects/mips/sys/i386/include/vmparam.h#3 integrate .. //depot/projects/mips/sys/i386/isa/bs/bsif.h#2 integrate .. //depot/projects/mips/sys/i386/isa/if_le.c#7 integrate .. //depot/projects/mips/sys/i386/linux/linux_machdep.c#8 integrate .. //depot/projects/mips/sys/i386/linux/linux_ptrace.c#3 integrate .. //depot/projects/mips/sys/i386/linux/linux_sysvec.c#9 integrate .. //depot/projects/mips/sys/i386/svr4/svr4_locore.s#2 integrate .. //depot/projects/mips/sys/i386/svr4/svr4_machdep.c#4 integrate .. //depot/projects/mips/sys/ia64/conf/GENERIC#13 integrate .. //depot/projects/mips/sys/ia64/conf/SKI#8 integrate .. //depot/projects/mips/sys/ia64/ia32/ia32_misc.c#6 integrate .. //depot/projects/mips/sys/ia64/ia32/ia32_proto.h#5 integrate .. //depot/projects/mips/sys/ia64/ia32/ia32_syscall.h#5 integrate .. //depot/projects/mips/sys/ia64/ia32/ia32_sysent.c#5 integrate .. //depot/projects/mips/sys/ia64/ia32/syscalls.master#8 integrate .. //depot/projects/mips/sys/ia64/ia64/busdma_machdep.c#7 integrate .. //depot/projects/mips/sys/ia64/ia64/machdep.c#11 integrate .. //depot/projects/mips/sys/ia64/ia64/pmap.c#13 integrate .. //depot/projects/mips/sys/ia64/ia64/sys_machdep.c#3 integrate .. //depot/projects/mips/sys/ia64/ia64/trap.c#9 integrate .. //depot/projects/mips/sys/ia64/include/_limits.h#1 branch .. //depot/projects/mips/sys/ia64/include/bus.h#5 integrate .. //depot/projects/mips/sys/ia64/include/pmap.h#5 integrate .. //depot/projects/mips/sys/isa/isa_common.c#3 integrate .. //depot/projects/mips/sys/kern/init_main.c#10 integrate .. //depot/projects/mips/sys/kern/init_sysent.c#10 integrate .. //depot/projects/mips/sys/kern/kern_acct.c#8 integrate .. //depot/projects/mips/sys/kern/kern_clock.c#9 integrate .. //depot/projects/mips/sys/kern/kern_condvar.c#9 integrate .. //depot/projects/mips/sys/kern/kern_conf.c#7 integrate .. //depot/projects/mips/sys/kern/kern_context.c#3 integrate .. //depot/projects/mips/sys/kern/kern_event.c#6 integrate .. //depot/projects/mips/sys/kern/kern_exit.c#14 integrate .. //depot/projects/mips/sys/kern/kern_fork.c#15 integrate .. //depot/projects/mips/sys/kern/kern_idle.c#3 integrate .. //depot/projects/mips/sys/kern/kern_intr.c#8 integrate .. //depot/projects/mips/sys/kern/kern_jail.c#5 integrate .. //depot/projects/mips/sys/kern/kern_kthread.c#2 integrate .. //depot/projects/mips/sys/kern/kern_ktrace.c#5 integrate .. //depot/projects/mips/sys/kern/kern_mac.c#15 integrate .. //depot/projects/mips/sys/kern/kern_malloc.c#8 integrate .. //depot/projects/mips/sys/kern/kern_mutex.c#8 integrate .. //depot/projects/mips/sys/kern/kern_proc.c#10 integrate .. //depot/projects/mips/sys/kern/kern_prot.c#5 integrate .. //depot/projects/mips/sys/kern/kern_resource.c#10 integrate .. //depot/projects/mips/sys/kern/kern_shutdown.c#8 integrate .. //depot/projects/mips/sys/kern/kern_sig.c#11 integrate .. //depot/projects/mips/sys/kern/kern_synch.c#13 integrate .. //depot/projects/mips/sys/kern/kern_thr.c#2 integrate .. //depot/projects/mips/sys/kern/kern_thread.c#16 integrate .. //depot/projects/mips/sys/kern/sched_4bsd.c#8 integrate .. //depot/projects/mips/sys/kern/sched_ule.c#8 integrate .. //depot/projects/mips/sys/kern/subr_bus.c#9 integrate .. //depot/projects/mips/sys/kern/subr_devstat.c#5 integrate .. //depot/projects/mips/sys/kern/subr_disk.c#11 integrate .. //depot/projects/mips/sys/kern/subr_mbuf.c#8 integrate .. //depot/projects/mips/sys/kern/subr_prf.c#10 integrate .. //depot/projects/mips/sys/kern/subr_prof.c#7 integrate .. //depot/projects/mips/sys/kern/subr_smp.c#5 integrate .. //depot/projects/mips/sys/kern/subr_trap.c#12 integrate .. //depot/projects/mips/sys/kern/subr_witness.c#15 integrate .. //depot/projects/mips/sys/kern/sys_process.c#4 integrate .. //depot/projects/mips/sys/kern/syscalls.c#10 integrate .. //depot/projects/mips/sys/kern/syscalls.master#12 integrate .. //depot/projects/mips/sys/kern/sysv_shm.c#6 integrate .. //depot/projects/mips/sys/kern/tty.c#8 integrate .. //depot/projects/mips/sys/kern/uipc_cow.c#6 integrate .. //depot/projects/mips/sys/kern/uipc_jumbo.c#4 integrate .. //depot/projects/mips/sys/kern/uipc_mbuf.c#7 integrate .. //depot/projects/mips/sys/kern/uipc_mbuf2.c#6 integrate .. //depot/projects/mips/sys/kern/uipc_socket.c#9 integrate .. //depot/projects/mips/sys/kern/vfs_aio.c#11 integrate .. //depot/projects/mips/sys/kern/vfs_bio.c#15 integrate .. //depot/projects/mips/sys/kern/vfs_cluster.c#8 integrate .. //depot/projects/mips/sys/kern/vfs_default.c#8 integrate .. //depot/projects/mips/sys/kern/vfs_mount.c#8 integrate .. //depot/projects/mips/sys/kern/vfs_subr.c#11 integrate .. //depot/projects/mips/sys/kern/vfs_syscalls.c#10 integrate .. //depot/projects/mips/sys/modules/Makefile#14 integrate .. //depot/projects/mips/sys/modules/axe/Makefile#1 branch .. //depot/projects/mips/sys/modules/en/Makefile#1 branch .. //depot/projects/mips/sys/modules/firewire/Makefile.inc#2 integrate .. //depot/projects/mips/sys/modules/firewire/firewire/Makefile#6 integrate .. //depot/projects/mips/sys/modules/firewire/fwe/Makefile#3 integrate .. //depot/projects/mips/sys/modules/netgraph/Makefile#3 integrate .. //depot/projects/mips/sys/modules/sbsh/Makefile#1 branch .. //depot/projects/mips/sys/modules/stg/Makefile#2 integrate .. //depot/projects/mips/sys/modules/usb/Makefile#2 integrate .. //depot/projects/mips/sys/net/if_disc.c#5 integrate .. //depot/projects/mips/sys/net/if_ethersubr.c#10 integrate .. //depot/projects/mips/sys/net/if_faith.c#6 integrate .. //depot/projects/mips/sys/net/if_loop.c#7 integrate .. //depot/projects/mips/sys/net/route.c#6 integrate .. //depot/projects/mips/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c#4 integrate .. //depot/projects/mips/sys/netgraph/ng_base.c#4 integrate .. //depot/projects/mips/sys/netgraph/ng_fec.c#4 integrate .. //depot/projects/mips/sys/netgraph/ng_iface.c#5 integrate .. //depot/projects/mips/sys/netgraph/ng_message.h#2 integrate .. //depot/projects/mips/sys/netinet/ip_divert.c#8 integrate .. //depot/projects/mips/sys/netinet/ip_input.c#14 integrate .. //depot/projects/mips/sys/netinet/ip_mroute.c#9 integrate .. //depot/projects/mips/sys/netinet/ip_output.c#12 integrate .. //depot/projects/mips/sys/netinet/tcp_input.c#12 integrate .. //depot/projects/mips/sys/netinet/tcp_subr.c#9 integrate .. //depot/projects/mips/sys/netinet6/icmp6.c#6 integrate .. //depot/projects/mips/sys/netipsec/keysock.c#4 integrate .. //depot/projects/mips/sys/netkey/keysock.c#4 integrate .. //depot/projects/mips/sys/netnatm/natm.c#5 integrate .. //depot/projects/mips/sys/nfsclient/nfs_vfsops.c#5 integrate .. //depot/projects/mips/sys/nfsclient/nfs_vnops.c#8 integrate .. //depot/projects/mips/sys/nfsserver/nfs_serv.c#7 integrate .. //depot/projects/mips/sys/pc98/conf/GENERIC#12 integrate .. //depot/projects/mips/sys/pc98/conf/NOTES#4 integrate .. //depot/projects/mips/sys/pc98/i386/machdep.c#13 integrate .. //depot/projects/mips/sys/pc98/pc98/wd.c#8 integrate .. //depot/projects/mips/sys/pccard/cardinfo.h#2 integrate .. //depot/projects/mips/sys/pccard/pccard.c#6 integrate .. //depot/projects/mips/sys/pccard/pccard_nbk.c#2 integrate .. //depot/projects/mips/sys/pccard/slot.h#2 integrate .. //depot/projects/mips/sys/pci/agp_ali.c#3 integrate .. //depot/projects/mips/sys/pci/agp_amd.c#4 integrate .. //depot/projects/mips/sys/pci/agp_i810.c#6 integrate .. //depot/projects/mips/sys/pci/agp_if.m#2 integrate .. //depot/projects/mips/sys/pci/agp_intel.c#4 integrate .. //depot/projects/mips/sys/pci/agp_sis.c#4 integrate .. //depot/projects/mips/sys/pci/agp_via.c#3 integrate .. //depot/projects/mips/sys/pci/alpm.c#2 integrate .. //depot/projects/mips/sys/pci/amdpm.c#2 integrate .. //depot/projects/mips/sys/pci/cy_pci.c#2 integrate .. //depot/projects/mips/sys/pci/if_dc.c#12 integrate .. //depot/projects/mips/sys/pci/if_dcreg.h#4 integrate .. //depot/projects/mips/sys/pci/if_de.c#6 integrate .. //depot/projects/mips/sys/pci/if_en_pci.c#2 integrate .. //depot/projects/mips/sys/pci/if_pcn.c#7 integrate .. //depot/projects/mips/sys/pci/if_rl.c#10 integrate .. //depot/projects/mips/sys/pci/if_sf.c#7 integrate .. //depot/projects/mips/sys/pci/if_sis.c#8 integrate .. //depot/projects/mips/sys/pci/if_sk.c#6 integrate .. //depot/projects/mips/sys/pci/if_ste.c#7 integrate .. //depot/projects/mips/sys/pci/if_ti.c#9 integrate .. //depot/projects/mips/sys/pci/if_tl.c#7 integrate .. //depot/projects/mips/sys/pci/if_vr.c#9 integrate .. //depot/projects/mips/sys/pci/if_wb.c#7 integrate .. //depot/projects/mips/sys/pci/if_xl.c#11 integrate .. //depot/projects/mips/sys/pci/ncr.c#5 integrate .. //depot/projects/mips/sys/pci/viapm.c#3 integrate .. //depot/projects/mips/sys/pci/xrpu.c#6 integrate .. //depot/projects/mips/sys/powerpc/conf/GENERIC#10 integrate .. //depot/projects/mips/sys/powerpc/include/_limits.h#1 branch .. //depot/projects/mips/sys/powerpc/include/bus.h#5 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Apr 26 22:47:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A3F8D37B404; Sat, 26 Apr 2003 22:47:35 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4E22237B401 for ; Sat, 26 Apr 2003 22:47:35 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D72C443FAF for ; Sat, 26 Apr 2003 22:47:34 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3R5lY0U001270 for ; Sat, 26 Apr 2003 22:47:34 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3R5lYe4001264 for perforce@freebsd.org; Sat, 26 Apr 2003 22:47:34 -0700 (PDT) Date: Sat, 26 Apr 2003 22:47:34 -0700 (PDT) Message-Id: <200304270547.h3R5lYe4001264@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29865 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 05:47:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=29865 Change 29865 by jmallett@jmallett_dalek on 2003/04/26 22:47:09 Chase frontstuff removal. Affected files ... .. //depot/projects/mips/sys/geom/geom_fx.c#12 edit Differences ... ==== //depot/projects/mips/sys/geom/geom_fx.c#12 (text+ko) ==== @@ -156,7 +156,6 @@ sectorsize = cp->provider->sectorsize; if (sectorsize < 512) break; - gsp->frontstuff = 16 * sectorsize; /* XXX */ mediasize = cp->provider->mediasize; buf = g_read_data(cp, 0, sizeof (struct volhdr), &error); if (buf == NULL || error != 0) From owner-p4-projects@FreeBSD.ORG Sat Apr 26 22:48:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B7E4A37B405; Sat, 26 Apr 2003 22:48:37 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6727237B401 for ; Sat, 26 Apr 2003 22:48:37 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BC08A43FA3 for ; Sat, 26 Apr 2003 22:48:36 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3R5ma0U001725 for ; Sat, 26 Apr 2003 22:48:36 -0700 (PDT) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3R5marO001719 for perforce@freebsd.org; Sat, 26 Apr 2003 22:48:36 -0700 (PDT) Date: Sat, 26 Apr 2003 22:48:36 -0700 (PDT) Message-Id: <200304270548.h3R5marO001719@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 29866 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 05:48:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=29866 Change 29866 by jmallett@jmallett_dalek on 2003/04/26 22:47:35 Chase *context api changes. Affected files ... .. //depot/projects/mips/sys/mips/mips/machdep.c#12 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/machdep.c#12 (text+ko) ==== @@ -83,7 +83,7 @@ } int -get_mcontext(struct thread *td, mcontext_t *mcp) +get_mcontext(struct thread *td, mcontext_t *mcp, int clear_ret) { return (0); }