From owner-p4-projects@FreeBSD.ORG Sun Feb 24 00:06:58 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1EAE616A405; Sun, 24 Feb 2008 00:06:58 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C018416A404 for ; Sun, 24 Feb 2008 00:06:57 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id AFB4013C448 for ; Sun, 24 Feb 2008 00:06:57 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1O06vAA052234 for ; Sun, 24 Feb 2008 00:06:57 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1O06vCf052231 for perforce@freebsd.org; Sun, 24 Feb 2008 00:06:57 GMT (envelope-from marcel@freebsd.org) Date: Sun, 24 Feb 2008 00:06:57 GMT Message-Id: <200802240006.m1O06vCf052231@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 136049 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 00:06:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=136049 Change 136049 by marcel@marcel_cluster on 2008/02/24 00:06:00 IFC @136044 Affected files ... .. //depot/projects/e500/sys/libkern/quad.h#3 integrate Differences ... ==== //depot/projects/e500/sys/libkern/quad.h#3 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)quad.h 8.1 (Berkeley) 6/4/93 - * $FreeBSD: src/sys/libkern/quad.h,v 1.18 2004/05/05 15:12:55 bde Exp $ + * $FreeBSD: src/sys/libkern/quad.h,v 1.19 2008/02/23 22:40:05 marcel Exp $ */ #ifndef _LIBKERN_QUAD_H_ From owner-p4-projects@FreeBSD.ORG Sun Feb 24 01:21:18 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1517816A404; Sun, 24 Feb 2008 01:21:18 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 83FCE16A403 for ; Sun, 24 Feb 2008 01:21:17 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8DED213C45D for ; Sun, 24 Feb 2008 01:21:17 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1O1LHZQ067166 for ; Sun, 24 Feb 2008 01:21:17 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1O1LHRn067163 for perforce@freebsd.org; Sun, 24 Feb 2008 01:21:17 GMT (envelope-from marcel@freebsd.org) Date: Sun, 24 Feb 2008 01:21:17 GMT Message-Id: <200802240121.m1O1LHRn067163@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 136055 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 01:21:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=136055 Change 136055 by marcel@marcel_xcllnt on 2008/02/24 01:20:18 Unify o Move the FAULTBUF_* defines to booke/trap.c. That's the only place they're used. o Make the faultbuf 25 registers big for all CPUs. o Put CPU-specific fields in a union, like what is from for o Remove pcb_pmreal for AIM. It's not used. As such, the PCB doesn't change size due to the union. Affected files ... .. //depot/projects/e500/sys/powerpc/aim/swtch.S#4 edit .. //depot/projects/e500/sys/powerpc/aim/vm_machdep.c#8 edit .. //depot/projects/e500/sys/powerpc/booke/swtch.S#2 edit .. //depot/projects/e500/sys/powerpc/booke/trap.c#5 edit .. //depot/projects/e500/sys/powerpc/include/pcb.h#4 edit .. //depot/projects/e500/sys/powerpc/powerpc/genassym.c#5 edit Differences ... ==== //depot/projects/e500/sys/powerpc/aim/swtch.S#4 (text+ko) ==== @@ -88,7 +88,7 @@ stw %r16,PCB_LR(%r5) mfsr %r16,USER_SR /* Save USER_SR for copyin/out */ isync - stw %r16,PCB_USR(%r5) + stw %r16,PCB_AIM_USR(%r5) stw %r1,PCB_SP(%r5) /* Save the stack pointer */ mr %r14,%r3 /* Copy the old thread ptr... */ @@ -125,7 +125,7 @@ mtcr %r5 lwz %r5,PCB_LR(%r3) /* Load the link register */ mtlr %r5 - lwz %r5,PCB_USR(%r3) /* Load the USER_SR segment reg */ + lwz %r5,PCB_AIM_USR(%r3) /* Load the USER_SR segment reg */ mtsr USER_SR,%r5 isync lwz %r1,PCB_SP(%r3) /* Load the stack pointer */ ==== //depot/projects/e500/sys/powerpc/aim/vm_machdep.c#8 (text+ko) ==== @@ -152,7 +152,7 @@ pcb->pcb_sp = (register_t)cf; pcb->pcb_lr = (register_t)fork_trampoline; - pcb->pcb_usr = kernel_pmap->pm_sr[USER_SR]; + pcb->pcb_cpu.aim.usr = kernel_pmap->pm_sr[USER_SR]; /* Setup to release spin count in fork_exit(). */ td2->td_md.md_spinlock_count = 1; @@ -330,7 +330,7 @@ pcb2->pcb_sp = (register_t)cf; pcb2->pcb_lr = (register_t)fork_trampoline; - pcb2->pcb_usr = kernel_pmap->pm_sr[USER_SR]; + pcb2->pcb_cpu.aim.usr = kernel_pmap->pm_sr[USER_SR]; /* Setup to release spin count in fork_exit(). */ td->td_md.md_spinlock_count = 1; ==== //depot/projects/e500/sys/powerpc/booke/swtch.S#2 (text+ko) ==== @@ -82,9 +82,9 @@ mflr %r16 /* Save the link register */ stw %r16, PCB_LR(%r5) mfctr %r16 - stw %r16, PCB_CTR(%r5) + stw %r16, PCB_BOOKE_CTR(%r5) mfxer %r16 - stw %r16, PCB_XER(%r5) + stw %r16, PCB_BOOKE_XER(%r5) stw %r1, PCB_SP(%r5) /* Save the stack pointer */ @@ -108,9 +108,9 @@ mtcr %r5 lwz %r5, PCB_LR(%r3) /* Load the link register */ mtlr %r5 - lwz %r5, PCB_CTR(%r3) + lwz %r5, PCB_BOOKE_CTR(%r3) mtctr %r5 - lwz %r5, PCB_XER(%r3) + lwz %r5, PCB_BOOKE_XER(%r3) mtxer %r5 lwz %r1, PCB_SP(%r3) /* Load the stack pointer */ ==== //depot/projects/e500/sys/powerpc/booke/trap.c#5 (text+ko) ==== @@ -79,6 +79,14 @@ #include #endif +#define FAULTBUF_LR 0 +#define FAULTBUF_R1 1 +#define FAULTBUF_R2 2 +#define FAULTBUF_CR 3 +#define FAULTBUF_CTR 4 +#define FAULTBUF_XER 5 +#define FAULTBUF_R13 6 + void trap(struct trapframe *); static void trap_fatal(struct trapframe *frame); ==== //depot/projects/e500/sys/powerpc/include/pcb.h#4 (text+ko) ==== @@ -35,38 +35,14 @@ #ifndef _MACHINE_PCB_H_ #define _MACHINE_PCB_H_ -#if defined(AIM) - -typedef int faultbuf[23]; - -#else - -#define FAULTBUF_LR 0 -#define FAULTBUF_R1 1 -#define FAULTBUF_R2 2 -#define FAULTBUF_CR 3 -#define FAULTBUF_CTR 4 -#define FAULTBUF_XER 5 -#define FAULTBUF_R13 6 typedef int faultbuf[25]; -#endif - struct pcb { register_t pcb_context[20]; /* non-volatile r14-r31 */ register_t pcb_cr; /* Condition register */ register_t pcb_sp; /* stack pointer */ register_t pcb_lr; /* link register */ -#if defined(AIM) - register_t pcb_usr; /* USER_SR segment register */ -#else - register_t pcb_ctr; - register_t pcb_xer; -#endif struct pmap *pcb_pm; /* pmap of our vmspace */ -#if defined(AIM) - struct pmap *pcb_pmreal; /* real address of above */ -#endif faultbuf *pcb_onfault; /* For use during copyin/copyout */ int pcb_flags; @@ -77,6 +53,16 @@ } pcb_fpu; /* Floating point processor */ unsigned int pcb_fpcpu; /* which CPU had our FPU stuff. */ + + union { + struct { + register_t usr; /* USER_SR segment */ + } aim; + struct { + register_t ctr; + register_t xer; + } booke; + } pcb_cpu; }; #ifdef _KERNEL ==== //depot/projects/e500/sys/powerpc/powerpc/genassym.c#5 (text+ko) ==== @@ -173,23 +173,15 @@ ASSYM(PCB_CONTEXT, offsetof(struct pcb, pcb_context)); ASSYM(PCB_CR, offsetof(struct pcb, pcb_cr)); -#if defined(E500) -ASSYM(PCB_CTR, offsetof(struct pcb, pcb_ctr)); -ASSYM(PCB_XER, offsetof(struct pcb, pcb_xer)); -#endif -#if defined(AIM) -ASSYM(PCB_PMR, offsetof(struct pcb, pcb_pmreal)); -#endif ASSYM(PCB_SP, offsetof(struct pcb, pcb_sp)); ASSYM(PCB_LR, offsetof(struct pcb, pcb_lr)); -#if defined(AIM) -ASSYM(PCB_USR, offsetof(struct pcb, pcb_usr)); -#endif ASSYM(PCB_ONFAULT, offsetof(struct pcb, pcb_onfault)); ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags)); -#if defined(AIM) ASSYM(PCB_FPU, PCB_FPU); -#endif + +ASSYM(PCB_AIM_USR, offsetof(struct pcb, pcb_cpu.aim.usr)); +ASSYM(PCB_BOOKE_CTR, offsetof(struct pcb, pcb_cpu.booke.ctr)); +ASSYM(PCB_BOOKE_XER, offsetof(struct pcb, pcb_cpu.booke.xer)); ASSYM(TD_LOCK, offsetof(struct thread, td_lock)); ASSYM(TD_PROC, offsetof(struct thread, td_proc)); From owner-p4-projects@FreeBSD.ORG Sun Feb 24 03:10:19 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C14016A403; Sun, 24 Feb 2008 03:10:19 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 213ED16A401 for ; Sun, 24 Feb 2008 03:10:19 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2B37513C43E for ; Sun, 24 Feb 2008 03:10:19 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1O3AINh074701 for ; Sun, 24 Feb 2008 03:10:18 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1O3AITV074698 for perforce@freebsd.org; Sun, 24 Feb 2008 03:10:18 GMT (envelope-from marcel@freebsd.org) Date: Sun, 24 Feb 2008 03:10:18 GMT Message-Id: <200802240310.m1O3AITV074698@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 136061 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 03:10:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=136061 Change 136061 by marcel@marcel_cluster on 2008/02/24 03:09:54 IFC @136060 Affected files ... .. //depot/projects/e500/sys/kern/uipc_syscalls.c#9 integrate .. //depot/projects/e500/sys/powerpc/fpu/fpu_add.c#6 integrate .. //depot/projects/e500/sys/powerpc/fpu/fpu_emu.c#7 integrate .. //depot/projects/e500/sys/powerpc/fpu/fpu_emu.h#5 integrate .. //depot/projects/e500/sys/powerpc/fpu/fpu_extern.h#5 integrate .. //depot/projects/e500/sys/powerpc/fpu/fpu_subr.c#6 integrate .. //depot/projects/e500/usr.bin/find/function.c#3 integrate Differences ... ==== //depot/projects/e500/sys/kern/uipc_syscalls.c#9 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/uipc_syscalls.c,v 1.268 2008/02/23 01:01:48 des Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/uipc_syscalls.c,v 1.269 2008/02/24 00:07:00 cperciva Exp $"); #include "opt_sctp.h" #include "opt_compat.h" @@ -2209,7 +2209,9 @@ } /* Quit outer loop on error or when we're done. */ - if (error || done) + if (done) + break; + if (error) goto done; } ==== //depot/projects/e500/sys/powerpc/fpu/fpu_add.c#6 (text+ko) ==== @@ -47,7 +47,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/powerpc/fpu/fpu_add.c,v 1.1 2008/02/23 20:05:26 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/powerpc/fpu/fpu_add.c,v 1.2 2008/02/24 03:01:26 marcel Exp $"); #include #include @@ -58,7 +58,6 @@ #include #include -#include struct fpn * fpu_add(struct fpemu *fe) ==== //depot/projects/e500/sys/powerpc/fpu/fpu_emu.c#7 (text+ko) ==== @@ -76,7 +76,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/powerpc/fpu/fpu_emu.c,v 1.1 2008/02/23 20:05:26 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/powerpc/fpu/fpu_emu.c,v 1.2 2008/02/24 03:01:26 marcel Exp $"); #include "opt_ddb.h" @@ -328,7 +328,7 @@ /* Store as integer */ ra = instr.i_x.i_ra; rb = instr.i_x.i_rb; - DPRINTF(FPE_INSN, ("reg %d has %lx reg %d has %lx\n", + DPRINTF(FPE_INSN, ("reg %d has %x reg %d has %x\n", ra, tf->fixreg[ra], rb, tf->fixreg[rb])); addr = tf->fixreg[rb]; @@ -358,7 +358,7 @@ /* calculate EA of load/store */ ra = instr.i_x.i_ra; rb = instr.i_x.i_rb; - DPRINTF(FPE_INSN, ("reg %d has %lx reg %d has %lx\n", + DPRINTF(FPE_INSN, ("reg %d has %x reg %d has %x\n", ra, tf->fixreg[ra], rb, tf->fixreg[rb])); addr = tf->fixreg[rb]; if (ra != 0) @@ -375,7 +375,7 @@ /* calculate EA of load/store */ ra = instr.i_d.i_ra; addr = instr.i_d.i_d; - DPRINTF(FPE_INSN, ("reg %d has %lx displ %lx\n", + DPRINTF(FPE_INSN, ("reg %d has %x displ %x\n", ra, tf->fixreg[ra], addr)); if (ra != 0) addr += tf->fixreg[ra]; ==== //depot/projects/e500/sys/powerpc/fpu/fpu_emu.h#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* $NetBSD: fpu_emu.h,v 1.3 2005/12/11 12:18:42 christos Exp $ */ -/* $FreeBSD: src/sys/powerpc/fpu/fpu_emu.h,v 1.1 2008/02/23 20:05:26 marcel Exp $ */ +/* $FreeBSD: src/sys/powerpc/fpu/fpu_emu.h,v 1.2 2008/02/24 03:01:26 marcel Exp $ */ /* * Copyright (c) 1992, 1993 @@ -167,6 +167,8 @@ /* Build a new Quiet NaN (sign=0, frac=all 1's). */ struct fpn *fpu_newnan(struct fpemu *); +void fpu_norm(struct fpn *); + /* * Shift a number right some number of bits, taking care of round/sticky. * Note that the result is probably not a well-formed number (it will lack ==== //depot/projects/e500/sys/powerpc/fpu/fpu_extern.h#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* $NetBSD: fpu_extern.h,v 1.3 2005/12/11 12:18:42 christos Exp $ */ -/* $FreeBSD: src/sys/powerpc/fpu/fpu_extern.h,v 1.1 2008/02/23 20:05:26 marcel Exp $ */ +/* $FreeBSD: src/sys/powerpc/fpu/fpu_extern.h,v 1.2 2008/02/24 03:01:26 marcel Exp $ */ /*- * Copyright (c) 1995 The NetBSD Foundation, Inc. @@ -48,36 +48,15 @@ int fpu_emulate(struct trapframe *, struct fpreg *); int fpu_execute(struct trapframe *, struct fpemu *, union instr *); -/* fpu_add.c */ -struct fpn *fpu_add(struct fpemu *); - -/* fpu_compare.c */ -void fpu_compare(struct fpemu *, int); - -/* fpu_div.c */ -struct fpn *fpu_div(struct fpemu *); - /* fpu_explode.c */ int fpu_itof(struct fpn *, u_int); int fpu_xtof(struct fpn *, u_int64_t); int fpu_stof(struct fpn *, u_int); int fpu_dtof(struct fpn *, u_int, u_int); -void fpu_explode(struct fpemu *, struct fpn *, int, int); /* fpu_implode.c */ u_int fpu_ftoi(struct fpemu *, struct fpn *); u_int fpu_ftox(struct fpemu *, struct fpn *, u_int *); u_int fpu_ftos(struct fpemu *, struct fpn *); u_int fpu_ftod(struct fpemu *, struct fpn *, u_int *); -void fpu_implode(struct fpemu *, struct fpn *, int, u_int *); - -/* fpu_mul.c */ -struct fpn *fpu_mul(struct fpemu *); -/* fpu_sqrt.c */ -struct fpn *fpu_sqrt(struct fpemu *); - -/* fpu_subr.c */ -int fpu_shr(struct fpn *, int); -void fpu_norm(struct fpn *); -struct fpn *fpu_newnan(struct fpemu *); ==== //depot/projects/e500/sys/powerpc/fpu/fpu_subr.c#6 (text+ko) ==== @@ -45,7 +45,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/powerpc/fpu/fpu_subr.c,v 1.1 2008/02/23 20:05:26 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/powerpc/fpu/fpu_subr.c,v 1.2 2008/02/24 03:01:26 marcel Exp $"); #include #include @@ -55,7 +55,6 @@ #include #include -#include /* * Shift the given number right rsh bits. Any bits that `fall off' will get ==== //depot/projects/e500/usr.bin/find/function.c#3 (text+ko) ==== @@ -41,7 +41,7 @@ #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/usr.bin/find/function.c,v 1.59 2008/02/23 16:29:04 imp Exp $"); +__FBSDID("$FreeBSD: src/usr.bin/find/function.c,v 1.60 2008/02/24 00:01:06 imp Exp $"); #include #include @@ -1087,9 +1087,16 @@ int f_name(PLAN *plan, FTSENT *entry) { - if ((plan->flags & F_LINK) && !S_ISLNK(entry->fts_statp->st_mode)) - return 0; - return !fnmatch(plan->c_data, entry->fts_name, + char fn[PATH_MAX]; + const char *name; + + if (plan->flags & F_LINK) { + name = fn; + if (readlink(entry->fts_path, fn, sizeof(fn)) == -1) + return 0; + } else + name = entry->fts_name; + return !fnmatch(plan->c_data, name, plan->flags & F_IGNCASE ? FNM_CASEFOLD : 0); } @@ -1102,8 +1109,6 @@ pattern = nextarg(option, argvp); new = palloc(option); new->c_data = pattern; - if (new->flags & F_LINK) - ftsoptions &= ~FTS_NOSTAT; return new; } From owner-p4-projects@FreeBSD.ORG Sun Feb 24 05:43:08 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 13CB816A404; Sun, 24 Feb 2008 05:43:08 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CC1C216A400 for ; Sun, 24 Feb 2008 05:43:07 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D8BCE13C442 for ; Sun, 24 Feb 2008 05:43:07 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1O5h7Y1000593 for ; Sun, 24 Feb 2008 05:43:07 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1O5h7U5000589 for perforce@freebsd.org; Sun, 24 Feb 2008 05:43:07 GMT (envelope-from sam@freebsd.org) Date: Sun, 24 Feb 2008 05:43:07 GMT Message-Id: <200802240543.m1O5h7U5000589@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 136065 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 05:43:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=136065 Change 136065 by sam@sam_ebb on 2008/02/24 05:43:02 o split probe response frame construction into a new ieee80211_alloc_proberesp routine for use by drivers o add missing classification of probe response frames Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_output.c#36 edit .. //depot/projects/vap/sys/net80211/ieee80211_proto.h#16 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_output.c#36 (text+ko) ==== @@ -2037,43 +2037,21 @@ } /* - * Send a probe response frame to the specified mac address. - * This does not go through the normal mgt frame api so we - * can specify the destination address and re-use the bss node - * for the sta reference. + * Return an mbuf with a probe response frame in it. + * Space is left to prepend and 802.11 header at the + * front but it's left to the caller to fill in. */ -int -ieee80211_send_proberesp(struct ieee80211vap *vap, - const uint8_t da[IEEE80211_ADDR_LEN], int legacy) +struct mbuf * +ieee80211_alloc_proberesp(struct ieee80211_node *bss, int legacy) { - struct ieee80211_node *bss = vap->iv_bss; - struct ieee80211com *ic = vap->iv_ic; - struct ieee80211_frame *wh; + struct ieee80211vap *vap = bss->ni_vap; + struct ieee80211com *ic = bss->ni_ic; const struct ieee80211_rateset *rs; struct mbuf *m; uint16_t capinfo; uint8_t *frm; - if (vap->iv_state == IEEE80211_S_CAC) { - IEEE80211_NOTE(vap, IEEE80211_MSG_OUTPUT, bss, - "block %s frame in CAC state", "probe response"); - vap->iv_stats.is_tx_badstate++; - return EIO; /* XXX */ - } - /* - * Hold a reference on the node so it doesn't go away until after - * the xmit is complete all the way in the driver. On error we - * will remove our reference. - */ - IEEE80211_DPRINTF(vap, IEEE80211_MSG_NODE, - "ieee80211_ref_node (%s:%u) %p<%s> refcnt %d\n", - __func__, __LINE__, - bss, ether_sprintf(bss->ni_macaddr), - ieee80211_node_refcnt(bss)+1); - ieee80211_ref_node(bss); - - /* * probe response frame format * [8] time stamp * [2] beacon interval @@ -2123,8 +2101,7 @@ ); if (m == NULL) { vap->iv_stats.is_tx_nobuf++; - ieee80211_free_node(bss); - return ENOMEM; + return NULL; } memset(frm, 0, 8); /* timestamp should be filled later */ @@ -2207,6 +2184,48 @@ frm = add_appie(frm, vap->iv_appie_proberesp); m->m_pkthdr.len = m->m_len = frm - mtod(m, uint8_t *); + return m; +} + +/* + * Send a probe response frame to the specified mac address. + * This does not go through the normal mgt frame api so we + * can specify the destination address and re-use the bss node + * for the sta reference. + */ +int +ieee80211_send_proberesp(struct ieee80211vap *vap, + const uint8_t da[IEEE80211_ADDR_LEN], int legacy) +{ + struct ieee80211_node *bss = vap->iv_bss; + struct ieee80211com *ic = vap->iv_ic; + struct ieee80211_frame *wh; + struct mbuf *m; + + if (vap->iv_state == IEEE80211_S_CAC) { + IEEE80211_NOTE(vap, IEEE80211_MSG_OUTPUT, bss, + "block %s frame in CAC state", "probe response"); + vap->iv_stats.is_tx_badstate++; + return EIO; /* XXX */ + } + + /* + * Hold a reference on the node so it doesn't go away until after + * the xmit is complete all the way in the driver. On error we + * will remove our reference. + */ + IEEE80211_DPRINTF(vap, IEEE80211_MSG_NODE, + "ieee80211_ref_node (%s:%u) %p<%s> refcnt %d\n", + __func__, __LINE__, bss, ether_sprintf(bss->ni_macaddr), + ieee80211_node_refcnt(bss)+1); + ieee80211_ref_node(bss); + + m = ieee80211_alloc_proberesp(bss, legacy); + if (m == NULL) { + ieee80211_free_node(bss); + return ENOMEM; + } + M_PREPEND(m, sizeof(struct ieee80211_frame), M_DONTWAIT); KASSERT(m != NULL, ("no room for header")); @@ -2216,11 +2235,12 @@ vap->iv_myaddr, da, bss->ni_bssid); /* XXX power management? */ - IEEE80211_NODE_STAT(bss, tx_mgmt); + M_WME_SETAC(m, WME_AC_BE); IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_DEBUG | IEEE80211_MSG_DUMPPKTS, wh->i_addr1, "send probe resp on channel %u", ieee80211_chan2ieee(ic, ic->ic_curchan)); + IEEE80211_NODE_STAT(bss, tx_mgmt); return ic->ic_raw_xmit(bss, m, NULL); } ==== //depot/projects/vap/sys/net80211/ieee80211_proto.h#16 (text+ko) ==== @@ -47,16 +47,6 @@ #define IEEE80211_SEND_MGMT(_ni,_type,_arg) \ ((*(_ni)->ni_ic->ic_send_mgmt)(_ni, _type, _arg)) -/* - * The formation of some management frames requires guidance to - * deal with legacy clients. When the client is identified as - * "legacy 11b" this parameter can be passed in the arg param of a - * IEEE80211_SEND_MGMT call. - */ -#define IEEE80211_SEND_LEGACY_11B 0x1 /* legacy 11b client */ -#define IEEE80211_SEND_LEGACY_11 0x2 /* other legacy client */ -#define IEEE80211_SEND_LEGACY 0x3 /* any legacy client */ - extern const char *ieee80211_mgt_subtype_name[]; extern const char *ieee80211_phymode_name[]; @@ -82,6 +72,7 @@ void ieee80211_start(struct ifnet *); int ieee80211_send_nulldata(struct ieee80211_node *); int ieee80211_classify(struct ieee80211_node *, struct mbuf *m); +struct mbuf *ieee80211_encap(struct ieee80211_node *, struct mbuf *); int ieee80211_send_mgmt(struct ieee80211_node *, int, int); struct ieee80211_appie; int ieee80211_send_probereq(struct ieee80211_node *ni, @@ -89,9 +80,17 @@ const uint8_t da[IEEE80211_ADDR_LEN], const uint8_t bssid[IEEE80211_ADDR_LEN], const uint8_t *ssid, size_t ssidlen); +/* + * The formation of ProbeResponse frames requires guidance to + * deal with legacy clients. When the client is identified as + * "legacy 11b" ieee80211_send_proberesp is passed this token. + */ +#define IEEE80211_SEND_LEGACY_11B 0x1 /* legacy 11b client */ +#define IEEE80211_SEND_LEGACY_11 0x2 /* other legacy client */ +#define IEEE80211_SEND_LEGACY 0x3 /* any legacy client */ +struct mbuf *ieee80211_alloc_proberesp(struct ieee80211_node *, int); int ieee80211_send_proberesp(struct ieee80211vap *, const uint8_t da[IEEE80211_ADDR_LEN], int); -struct mbuf *ieee80211_encap(struct ieee80211_node *, struct mbuf *); void ieee80211_reset_erp(struct ieee80211com *); void ieee80211_set_shortslottime(struct ieee80211com *, int onoff); From owner-p4-projects@FreeBSD.ORG Sun Feb 24 05:49:14 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9AFB516A402; Sun, 24 Feb 2008 05:49:14 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5FAB816A400 for ; Sun, 24 Feb 2008 05:49:14 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6C40F13C447 for ; Sun, 24 Feb 2008 05:49:14 +0000 (UTC) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1O5nEPN000897 for ; Sun, 24 Feb 2008 05:49:14 GMT (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1O5nEJH000894 for perforce@freebsd.org; Sun, 24 Feb 2008 05:49:14 GMT (envelope-from marcel@freebsd.org) Date: Sun, 24 Feb 2008 05:49:14 GMT Message-Id: <200802240549.m1O5nEJH000894@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Cc: Subject: PERFORCE change 136066 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 05:49:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=136066 Change 136066 by marcel@marcel_xcllnt on 2008/02/24 05:48:57 Unify This is a bit tricky. The PCPU on Book E is much bigger then the PCPU on AIM. The union trick would pessimize AIM too much. On top of that, PCPU_MD_FIELDS needs to be defined for MI code. We're going to have to test for AIM or E500 here. So, we define all fields separately for AIM and BOOKE so that the co-exist and then test the CPU type for how to define PCPU_MD_FIELDS. To support LINT, we check for COMPILING_LINT and define PCPU_MD_FIELDS to be the union of AIM and BOOKE fields. Affected files ... .. //depot/projects/e500/sys/powerpc/aim/trap_subr.S#5 edit .. //depot/projects/e500/sys/powerpc/booke/trap_subr.S#5 edit .. //depot/projects/e500/sys/powerpc/include/pcpu.h#4 edit .. //depot/projects/e500/sys/powerpc/powerpc/genassym.c#6 edit Differences ... ==== //depot/projects/e500/sys/powerpc/aim/trap_subr.S#5 (text+ko) ==== @@ -140,8 +140,8 @@ stw %r29, FRAME_29+8(%r1); \ stw %r30, FRAME_30+8(%r1); \ stw %r31, FRAME_31+8(%r1); \ - lwz %r28,(savearea+CPUSAVE_DAR)(%r2); /* saved DAR */ \ - lwz %r29,(savearea+CPUSAVE_DSISR)(%r2);/* saved DSISR */ \ + lwz %r28,(savearea+CPUSAVE_AIM_DAR)(%r2); /* saved DAR */ \ + lwz %r29,(savearea+CPUSAVE_AIM_DSISR)(%r2);/* saved DSISR */\ lwz %r30,(savearea+CPUSAVE_SRR0)(%r2); /* saved SRR0 */ \ lwz %r31,(savearea+CPUSAVE_SRR1)(%r2); /* saved SRR1 */ \ mfxer %r3; \ @@ -272,8 +272,8 @@ stw %r31,(PC_TEMPSAVE+CPUSAVE_R31)(%r1) mfdar %r30 mfdsisr %r31 - stw %r30,(PC_TEMPSAVE+CPUSAVE_DAR)(%r1) - stw %r31,(PC_TEMPSAVE+CPUSAVE_DSISR)(%r1) + stw %r30,(PC_TEMPSAVE+CPUSAVE_AIM_DAR)(%r1) + stw %r31,(PC_TEMPSAVE+CPUSAVE_AIM_DSISR)(%r1) mfsprg1 %r1 /* restore SP, in case of branch */ mflr %r28 /* save LR */ mfcr %r29 /* save CR */ @@ -356,8 +356,8 @@ stw %r31,(PC_TEMPSAVE+CPUSAVE_R31)(%r1) mfdar %r30 mfdsisr %r31 - stw %r30,(PC_TEMPSAVE+CPUSAVE_DAR)(%r1) - stw %r31,(PC_TEMPSAVE+CPUSAVE_DSISR)(%r1) + stw %r30,(PC_TEMPSAVE+CPUSAVE_AIM_DAR)(%r1) + stw %r31,(PC_TEMPSAVE+CPUSAVE_AIM_DSISR)(%r1) #ifdef KDB /* Try and detect a kernel stack overflow */ @@ -373,10 +373,10 @@ /* Now convert this DSI into a DDB trap. */ GET_CPUINFO(%r1) - lwz %r30,(PC_TEMPSAVE+CPUSAVE_DAR)(%r1) /* get DAR */ - stw %r30,(PC_DBSAVE +CPUSAVE_DAR)(%r1) /* save DAR */ - lwz %r30,(PC_TEMPSAVE+CPUSAVE_DSISR)(%r1) /* get DSISR */ - lwz %r30,(PC_DBSAVE +CPUSAVE_DSISR)(%r1) /* save DSISR */ + lwz %r30,(PC_TEMPSAVE+CPUSAVE_AIM_DAR)(%r1) /* get DAR */ + stw %r30,(PC_DBSAVE +CPUSAVE_AIM_DAR)(%r1) /* save DAR */ + lwz %r30,(PC_TEMPSAVE+CPUSAVE_AIM_DSISR)(%r1) /* get DSISR */ + lwz %r30,(PC_DBSAVE +CPUSAVE_AIM_DSISR)(%r1) /* save DSISR */ lwz %r30,(PC_DISISAVE+CPUSAVE_R28)(%r1) /* get r28 */ stw %r30,(PC_DBSAVE +CPUSAVE_R28)(%r1) /* save r28 */ lwz %r31,(PC_DISISAVE+CPUSAVE_R29)(%r1) /* get r29 */ ==== //depot/projects/e500/sys/powerpc/booke/trap_subr.S#5 (text+ko) ==== @@ -113,8 +113,8 @@ stw %r31, (savearea+CPUSAVE_R31)(%r1); \ mfdear %r30; \ mfesr %r31; \ - stw %r30, (savearea+CPUSAVE_DEAR)(%r1); \ - stw %r31, (savearea+CPUSAVE_ESR)(%r1) ; \ + stw %r30, (savearea+CPUSAVE_BOOKE_DEAR)(%r1); \ + stw %r31, (savearea+CPUSAVE_BOOKE_ESR)(%r1); \ mfspr %r30, isrr0; \ mfspr %r31, isrr1; /* MSR at interrupt time */ \ stw %r30, (savearea+CPUSAVE_SRR0)(%r1); \ @@ -136,8 +136,8 @@ stw %r31, (savearea+CPUSAVE_R31)(%r1); \ mfdear %r30; \ mfesr %r31; \ - stw %r30, (savearea+CPUSAVE_DEAR)(%r1); \ - stw %r31, (savearea+CPUSAVE_ESR)(%r1) ; \ + stw %r30, (savearea+CPUSAVE_BOOKE_DEAR)(%r1); \ + stw %r31, (savearea+CPUSAVE_BOOKE_ESR)(%r1); \ mfspr %r30, isrr0; \ mfspr %r31, isrr1; /* MSR at interrupt time */ \ stw %r30, (savearea+CPUSAVE_SRR0)(%r1); \ @@ -196,8 +196,8 @@ /* save R3-31 */ \ stmw %r3, FRAME_3+8(%r1) ; \ /* save DEAR, ESR */ \ - lwz %r28, (savearea+CPUSAVE_DEAR)(%r2); \ - lwz %r29, (savearea+CPUSAVE_ESR)(%r2); \ + lwz %r28, (savearea+CPUSAVE_BOOKE_DEAR)(%r2); \ + lwz %r29, (savearea+CPUSAVE_BOOKE_ESR)(%r2); \ stw %r28, FRAME_BOOKE_DEAR+8(1); \ stw %r29, FRAME_BOOKE_ESR+8(1); \ /* save XER, CTR, exc number */ \ @@ -259,27 +259,27 @@ mtsprg6 %r29; \ /* calculate TLB nesting level and TLBSAVE instance address */ \ GET_CPUINFO(%r1); /* Per-cpu structure */ \ - lwz %r28, PC_TLB_LEVEL(%r1); \ + lwz %r28, PC_BOOKE_TLB_LEVEL(%r1); \ rlwinm %r29, %r28, 6, 24, 25; /* 4 x TLBSAVE_LEN */ \ addi %r28, %r28, 1; \ - stw %r28, PC_TLB_LEVEL(%r1); \ - addi %r29, %r29, PC_TLBSAVE@l; \ + stw %r28, PC_BOOKE_TLB_LEVEL(%r1); \ + addi %r29, %r29, PC_BOOKE_TLBSAVE@l; \ add %r1, %r1, %r29; /* current TLBSAVE ptr */ \ \ /* save R20-31 */ \ mfsprg5 %r28; \ mfsprg6 %r29; \ - stmw %r20, (TLBSAVE_R20)(%r1); \ + stmw %r20, (TLBSAVE_BOOKE_R20)(%r1); \ /* save LR, CR */ \ mflr %r30; \ mfcr %r31; \ - stw %r30, (TLBSAVE_LR)(%r1); \ - stw %r31, (TLBSAVE_CR)(%r1); \ + stw %r30, (TLBSAVE_BOOKE_LR)(%r1); \ + stw %r31, (TLBSAVE_BOOKE_CR)(%r1); \ /* save SRR0-1 */ \ mfsrr0 %r30; /* execution addr at interrupt time */ \ mfsrr1 %r31; /* MSR at interrupt time*/ \ - stw %r30, (TLBSAVE_SRR0)(%r1); /* save SRR0 */ \ - stw %r31, (TLBSAVE_SRR1)(%r1); /* save SRR1 */ \ + stw %r30, (TLBSAVE_BOOKE_SRR0)(%r1); /* save SRR0 */ \ + stw %r31, (TLBSAVE_BOOKE_SRR1)(%r1); /* save SRR1 */ \ isync; \ mfsprg4 %r1 @@ -292,25 +292,25 @@ mtsprg4 %r1; /* Save SP */ \ GET_CPUINFO(%r1); /* Per-cpu structure */ \ /* calculate TLB nesting level and TLBSAVE instance addr */ \ - lwz %r28, PC_TLB_LEVEL(%r1); \ + lwz %r28, PC_BOOKE_TLB_LEVEL(%r1); \ subi %r28, %r28, 1; \ - stw %r28, PC_TLB_LEVEL(%r1); \ + stw %r28, PC_BOOKE_TLB_LEVEL(%r1); \ rlwinm %r29, %r28, 6, 24, 25; /* 4 x TLBSAVE_LEN */ \ - addi %r29, %r29, PC_TLBSAVE@l; \ + addi %r29, %r29, PC_BOOKE_TLBSAVE@l; \ add %r1, %r1, %r29; \ \ /* restore LR, CR */ \ - lwz %r30, (TLBSAVE_LR)(%r1); \ - lwz %r31, (TLBSAVE_CR)(%r1); \ + lwz %r30, (TLBSAVE_BOOKE_LR)(%r1); \ + lwz %r31, (TLBSAVE_BOOKE_CR)(%r1); \ mtlr %r30; \ mtcr %r31; \ /* restore SRR0-1 */ \ - lwz %r30, (TLBSAVE_SRR0)(%r1); \ - lwz %r31, (TLBSAVE_SRR1)(%r1); \ + lwz %r30, (TLBSAVE_BOOKE_SRR0)(%r1); \ + lwz %r31, (TLBSAVE_BOOKE_SRR1)(%r1); \ mtsrr0 %r30; \ mtsrr1 %r31; \ /* restore R20-31 */ \ - lmw %r20, (TLBSAVE_R20)(%r1); \ + lmw %r20, (TLBSAVE_BOOKE_R20)(%r1); \ mfsprg4 %r1 @@ -338,8 +338,8 @@ * Critical input interrupt ****************************************/ INTERRUPT(int_critical_input) - STANDARD_PROLOG(SPR_SPRG2, PC_CRITSAVE, SPR_CSRR0, SPR_CSRR1) - FRAME_SETUP(SPR_SPRG2, PC_CRITSAVE, EXC_CRIT) + STANDARD_PROLOG(SPR_SPRG2, PC_BOOKE_CRITSAVE, SPR_CSRR0, SPR_CSRR1) + FRAME_SETUP(SPR_SPRG2, PC_BOOKE_CRITSAVE, EXC_CRIT) addi %r3, %r1, 8 bl CNAME(powerpc_crit_interrupt) FRAME_LEAVE(SPR_CSRR0, SPR_CSRR1) @@ -350,8 +350,8 @@ * Machine check interrupt ****************************************/ INTERRUPT(int_machine_check) - STANDARD_PROLOG(SPR_SPRG3, PC_MCHKSAVE, SPR_MCSRR0, SPR_MCSRR1) - FRAME_SETUP(SPR_SPRG3, PC_MCHKSAVE, EXC_MCHK) + STANDARD_PROLOG(SPR_SPRG3, PC_BOOKE_MCHKSAVE, SPR_MCSRR0, SPR_MCSRR1) + FRAME_SETUP(SPR_SPRG3, PC_BOOKE_MCHKSAVE, EXC_MCHK) addi %r3, %r1, 8 bl CNAME(powerpc_mchk_interrupt) FRAME_LEAVE(SPR_MCSRR0, SPR_MCSRR1) @@ -718,9 +718,9 @@ * Debug interrupt ****************************************/ INTERRUPT(int_debug) - STANDARD_CRIT_PROLOG(SPR_SPRG2, PC_CRITSAVE, SPR_CSRR0, SPR_CSRR1) - FRAME_SETUP(SPR_SPRG2, PC_CRITSAVE, EXC_DEBUG) - lwz %r3, (PC_CRITSAVE+CPUSAVE_SRR0)(%r2); + STANDARD_CRIT_PROLOG(SPR_SPRG2, PC_BOOKE_CRITSAVE, SPR_CSRR0, SPR_CSRR1) + FRAME_SETUP(SPR_SPRG2, PC_BOOKE_CRITSAVE, EXC_DEBUG) + lwz %r3, (PC_BOOKE_CRITSAVE+CPUSAVE_SRR0)(%r2); lis %r4, interrupt_vector_base@ha addi %r4, %r4, interrupt_vector_base@l cmplw cr0, %r3, %r4 @@ -734,9 +734,9 @@ rlwinm %r3,%r3,0,23,21 stw %r3, FRAME_SRR1+8(%r1); /* Restore srr0 and srr1 as they could have been clobbered. */ - lwz %r3, (PC_CRITSAVE+CPUSAVE_SRR0+8)(%r2); + lwz %r3, (PC_BOOKE_CRITSAVE+CPUSAVE_SRR0+8)(%r2); mtspr SPR_SRR0, %r3 - lwz %r4, (PC_CRITSAVE+CPUSAVE_SRR1+8)(%r2); + lwz %r4, (PC_BOOKE_CRITSAVE+CPUSAVE_SRR1+8)(%r2); mtspr SPR_SRR1, %r4 b 9f 1: @@ -812,8 +812,8 @@ mfdear %r30 mfesr %r31 - stw %r30, (PC_DBSAVE+CPUSAVE_DEAR)(%r3) - stw %r31, (PC_DBSAVE+CPUSAVE_ESR)(%r3) + stw %r30, (PC_DBSAVE+CPUSAVE_BOOKE_DEAR)(%r3) + stw %r31, (PC_DBSAVE+CPUSAVE_BOOKE_ESR)(%r3) mfsrr0 %r30 mfsrr1 %r31 ==== //depot/projects/e500/sys/powerpc/include/pcpu.h#4 (text+ko) ==== @@ -39,59 +39,70 @@ #define PCPU_MD_COMMON_FIELDS \ int pc_inside_intr; \ struct pmap *pc_curpmap; /* current pmap */ \ - struct thread *pc_fputhread; /* current fpu user */ \ + struct thread *pc_fputhread; /* current fpu user */ \ register_t pc_tempsave[CPUSAVE_LEN]; \ register_t pc_disisave[CPUSAVE_LEN]; \ register_t pc_dbsave[CPUSAVE_LEN]; -#if defined(AIM) -#define PCPU_MD_FIELDS PCPU_MD_COMMON_FIELDS -#else +#define PCPU_MD_AIM_FIELDS -#define TLBSAVE_LEN 16 -#define TLB_NESTED_MAX 3 +#define BOOKE_CRITSAVE_LEN (CPUSAVE_LEN + 2) +#define BOOKE_TLB_MAXNEST 3 +#define BOOKE_TLB_SAVELEN 16 +#define BOOKE_TLBSAVE_LEN (BOOKE_TLB_SAVELEN * BOOKE_TLB_MAXNEST) -#define PCPU_MD_FIELDS \ - PCPU_MD_COMMON_FIELDS \ - register_t pc_critsave[CPUSAVE_LEN + 2]; \ - register_t pc_mchksave[CPUSAVE_LEN]; \ - register_t pc_tlbsave[TLBSAVE_LEN*TLB_NESTED_MAX]; \ - register_t pc_tlb_level; -#endif +#define PCPU_MD_BOOKE_FIELDS \ + register_t pc_booke_critsave[BOOKE_CRITSAVE_LEN]; \ + register_t pc_booke_mchksave[CPUSAVE_LEN]; \ + register_t pc_booke_tlbsave[BOOKE_TLBSAVE_LEN]; \ + register_t pc_booke_tlb_level; /* Definitions for register offsets within the exception tmp save areas */ #define CPUSAVE_R28 0 /* where r28 gets saved */ #define CPUSAVE_R29 1 /* where r29 gets saved */ #define CPUSAVE_R30 2 /* where r30 gets saved */ #define CPUSAVE_R31 3 /* where r31 gets saved */ -#if defined(AIM) -#define CPUSAVE_DAR 4 /* where SPR_DAR gets saved */ -#define CPUSAVE_DSISR 5 /* where SPR_DSISR gets saved */ -#else -#define CPUSAVE_DEAR 4 /* where SPR_DEAR gets saved */ -#define CPUSAVE_ESR 5 /* where SPR_ESR gets saved */ -#endif +#define CPUSAVE_AIM_DAR 4 /* where SPR_DAR gets saved */ +#define CPUSAVE_AIM_DSISR 5 /* where SPR_DSISR gets saved */ +#define CPUSAVE_BOOKE_DEAR 4 /* where SPR_DEAR gets saved */ +#define CPUSAVE_BOOKE_ESR 5 /* where SPR_ESR gets saved */ #define CPUSAVE_SRR0 6 /* where SRR0 gets saved */ #define CPUSAVE_SRR1 7 /* where SRR1 gets saved */ -/* TLBSAVE is more elaborate */ -#if !defined(AIM) -#define TLBSAVE_LR 0 -#define TLBSAVE_CR 1 -#define TLBSAVE_SRR0 2 -#define TLBSAVE_SRR1 3 -#define TLBSAVE_R20 4 -#define TLBSAVE_R21 5 -#define TLBSAVE_R22 6 -#define TLBSAVE_R23 7 -#define TLBSAVE_R24 8 -#define TLBSAVE_R25 9 -#define TLBSAVE_R26 10 -#define TLBSAVE_R27 11 -#define TLBSAVE_R28 12 -#define TLBSAVE_R29 13 -#define TLBSAVE_R30 14 -#define TLBSAVE_R31 15 +/* Book-E TLBSAVE is more elaborate */ +#define TLBSAVE_BOOKE_LR 0 +#define TLBSAVE_BOOKE_CR 1 +#define TLBSAVE_BOOKE_SRR0 2 +#define TLBSAVE_BOOKE_SRR1 3 +#define TLBSAVE_BOOKE_R20 4 +#define TLBSAVE_BOOKE_R21 5 +#define TLBSAVE_BOOKE_R22 6 +#define TLBSAVE_BOOKE_R23 7 +#define TLBSAVE_BOOKE_R24 8 +#define TLBSAVE_BOOKE_R25 9 +#define TLBSAVE_BOOKE_R26 10 +#define TLBSAVE_BOOKE_R27 11 +#define TLBSAVE_BOOKE_R28 12 +#define TLBSAVE_BOOKE_R29 13 +#define TLBSAVE_BOOKE_R30 14 +#define TLBSAVE_BOOKE_R31 15 + +#ifndef COMPILING_LINT +#ifdef AIM +#define PCPU_MD_FIELDS \ + PCPU_MD_COMMON_FIELDS \ + PCPU_MD_AIM_FIELDS +#endif +#ifdef E500 +#define PCPU_MD_FIELDS \ + PCPU_MD_COMMON_FIELDS \ + PCPU_MD_BOOKE_FIELDS +#endif +#else +#define PCPU_MD_FIELDS \ + PCPU_MD_COMMON_FIELDS \ + PCPU_MD_AIM_FIELDS \ + PCPU_MD_BOOKE_FIELDS #endif #define PCPUP ((struct pcpu *) powerpc_get_pcpup()) ==== //depot/projects/e500/sys/powerpc/powerpc/genassym.c#6 (text+ko) ==== @@ -61,44 +61,41 @@ ASSYM(PC_TEMPSAVE, offsetof(struct pcpu, pc_tempsave)); ASSYM(PC_DISISAVE, offsetof(struct pcpu, pc_disisave)); ASSYM(PC_DBSAVE, offsetof(struct pcpu, pc_dbsave)); -#if defined(E500) -ASSYM(PC_CRITSAVE, offsetof(struct pcpu, pc_critsave)); -ASSYM(PC_MCHKSAVE, offsetof(struct pcpu, pc_mchksave)); -ASSYM(PC_TLBSAVE, offsetof(struct pcpu, pc_tlbsave)); -ASSYM(PC_TLB_LEVEL, offsetof(struct pcpu, pc_tlb_level)); + +#ifdef E500 +ASSYM(PC_BOOKE_CRITSAVE, offsetof(struct pcpu, pc_booke_critsave)); +ASSYM(PC_BOOKE_MCHKSAVE, offsetof(struct pcpu, pc_booke_mchksave)); +ASSYM(PC_BOOKE_TLBSAVE, offsetof(struct pcpu, pc_booke_tlbsave)); +ASSYM(PC_BOOKE_TLB_LEVEL, offsetof(struct pcpu, pc_booke_tlb_level)); #endif ASSYM(CPUSAVE_R28, CPUSAVE_R28*4); ASSYM(CPUSAVE_R29, CPUSAVE_R29*4); ASSYM(CPUSAVE_R30, CPUSAVE_R30*4); ASSYM(CPUSAVE_R31, CPUSAVE_R31*4); -#if defined(AIM) -ASSYM(CPUSAVE_DAR, CPUSAVE_DAR*4); -ASSYM(CPUSAVE_DSISR, CPUSAVE_DSISR*4); -#elif defined(E500) -ASSYM(CPUSAVE_DEAR, CPUSAVE_DEAR*4); -ASSYM(CPUSAVE_ESR, CPUSAVE_ESR*4); -#endif ASSYM(CPUSAVE_SRR0, CPUSAVE_SRR0*4); ASSYM(CPUSAVE_SRR1, CPUSAVE_SRR1*4); -#if defined(E500) -ASSYM(TLBSAVE_LR, TLBSAVE_LR*4); -ASSYM(TLBSAVE_CR, TLBSAVE_CR*4); -ASSYM(TLBSAVE_SRR0, TLBSAVE_SRR0*4); -ASSYM(TLBSAVE_SRR1, TLBSAVE_SRR1*4); -ASSYM(TLBSAVE_R20, TLBSAVE_R20*4); -ASSYM(TLBSAVE_R21, TLBSAVE_R21*4); -ASSYM(TLBSAVE_R22, TLBSAVE_R22*4); -ASSYM(TLBSAVE_R23, TLBSAVE_R23*4); -ASSYM(TLBSAVE_R24, TLBSAVE_R24*4); -ASSYM(TLBSAVE_R25, TLBSAVE_R25*4); -ASSYM(TLBSAVE_R26, TLBSAVE_R26*4); -ASSYM(TLBSAVE_R27, TLBSAVE_R27*4); -ASSYM(TLBSAVE_R28, TLBSAVE_R28*4); -ASSYM(TLBSAVE_R29, TLBSAVE_R29*4); -ASSYM(TLBSAVE_R30, TLBSAVE_R30*4); -ASSYM(TLBSAVE_R31, TLBSAVE_R31*4); -#endif +ASSYM(CPUSAVE_AIM_DAR, CPUSAVE_AIM_DAR*4); +ASSYM(CPUSAVE_AIM_DSISR, CPUSAVE_AIM_DSISR*4); +ASSYM(CPUSAVE_BOOKE_DEAR, CPUSAVE_BOOKE_DEAR*4); +ASSYM(CPUSAVE_BOOKE_ESR, CPUSAVE_BOOKE_ESR*4); + +ASSYM(TLBSAVE_BOOKE_LR, TLBSAVE_BOOKE_LR*4); +ASSYM(TLBSAVE_BOOKE_CR, TLBSAVE_BOOKE_CR*4); +ASSYM(TLBSAVE_BOOKE_SRR0, TLBSAVE_BOOKE_SRR0*4); +ASSYM(TLBSAVE_BOOKE_SRR1, TLBSAVE_BOOKE_SRR1*4); +ASSYM(TLBSAVE_BOOKE_R20, TLBSAVE_BOOKE_R20*4); +ASSYM(TLBSAVE_BOOKE_R21, TLBSAVE_BOOKE_R21*4); +ASSYM(TLBSAVE_BOOKE_R22, TLBSAVE_BOOKE_R22*4); +ASSYM(TLBSAVE_BOOKE_R23, TLBSAVE_BOOKE_R23*4); +ASSYM(TLBSAVE_BOOKE_R24, TLBSAVE_BOOKE_R24*4); +ASSYM(TLBSAVE_BOOKE_R25, TLBSAVE_BOOKE_R25*4); +ASSYM(TLBSAVE_BOOKE_R26, TLBSAVE_BOOKE_R26*4); +ASSYM(TLBSAVE_BOOKE_R27, TLBSAVE_BOOKE_R27*4); +ASSYM(TLBSAVE_BOOKE_R28, TLBSAVE_BOOKE_R28*4); +ASSYM(TLBSAVE_BOOKE_R29, TLBSAVE_BOOKE_R29*4); +ASSYM(TLBSAVE_BOOKE_R30, TLBSAVE_BOOKE_R30*4); +ASSYM(TLBSAVE_BOOKE_R31, TLBSAVE_BOOKE_R31*4); ASSYM(MTX_LOCK, offsetof(struct mtx, mtx_lock)); ASSYM(MTX_RECURSECNT, offsetof(struct mtx, mtx_recurse)); From owner-p4-projects@FreeBSD.ORG Sun Feb 24 06:00:26 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 602A016A404; Sun, 24 Feb 2008 06:00:26 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0D5BF16A400 for ; Sun, 24 Feb 2008 06:00:26 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 1B5D013C4CE for ; Sun, 24 Feb 2008 06:00:26 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1O60PsP003697 for ; Sun, 24 Feb 2008 06:00:25 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1O60PGU003694 for perforce@freebsd.org; Sun, 24 Feb 2008 06:00:25 GMT (envelope-from sam@freebsd.org) Date: Sun, 24 Feb 2008 06:00:25 GMT Message-Id: <200802240600.m1O60PGU003694@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 136067 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 06:00:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=136067 Change 136067 by sam@sam_ebb on 2008/02/24 06:00:01 bring in bwi for conversion Affected files ... .. //depot/projects/vap/sys/contrib/dev/bwi/README#1 branch .. //depot/projects/vap/sys/dev/bwi/bitops.h#1 branch .. //depot/projects/vap/sys/dev/bwi/bwimac.c#1 branch .. //depot/projects/vap/sys/dev/bwi/bwimac.h#1 branch .. //depot/projects/vap/sys/dev/bwi/bwiphy.c#1 branch .. //depot/projects/vap/sys/dev/bwi/bwiphy.h#1 branch .. //depot/projects/vap/sys/dev/bwi/bwirf.c#1 branch .. //depot/projects/vap/sys/dev/bwi/bwirf.h#1 branch .. //depot/projects/vap/sys/dev/bwi/if_bwi.c#1 branch .. //depot/projects/vap/sys/dev/bwi/if_bwi_pci.c#1 branch .. //depot/projects/vap/sys/dev/bwi/if_bwireg.h#1 branch .. //depot/projects/vap/sys/dev/bwi/if_bwivar.h#1 branch .. //depot/projects/vap/sys/gnu/dev/bwi/COPYING#1 branch .. //depot/projects/vap/sys/gnu/dev/bwi/README#1 branch .. //depot/projects/vap/sys/gnu/dev/bwi/b43-fwcutter.1#1 branch .. //depot/projects/vap/sys/gnu/dev/bwi/fwcutter.c#1 branch .. //depot/projects/vap/sys/gnu/dev/bwi/fwcutter.h#1 branch .. //depot/projects/vap/sys/gnu/dev/bwi/fwcutter_list.h#1 branch .. //depot/projects/vap/sys/gnu/dev/bwi/md5.c#1 branch .. //depot/projects/vap/sys/gnu/dev/bwi/md5.h#1 branch .. //depot/projects/vap/sys/modules/bwi/Makefile#1 branch .. //depot/projects/vap/sys/modules/bwifw/Makefile#1 branch .. //depot/projects/vap/sys/modules/bwifw/fwcutter/Makefile#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sun Feb 24 10:21:30 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 56F9516A403; Sun, 24 Feb 2008 10:21:30 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0715616A400 for ; Sun, 24 Feb 2008 10:21:30 +0000 (UTC) (envelope-from peter-gmail@wemm.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id E25A713C442 for ; Sun, 24 Feb 2008 10:21:29 +0000 (UTC) (envelope-from peter-gmail@wemm.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OALTt2025144 for ; Sun, 24 Feb 2008 10:21:29 GMT (envelope-from peter-gmail@wemm.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OALT0C025141 for perforce@freebsd.org; Sun, 24 Feb 2008 10:21:29 GMT (envelope-from peter-gmail@wemm.org) Date: Sun, 24 Feb 2008 10:21:29 GMT Message-Id: <200802241021.m1OALT0C025141@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter-gmail@wemm.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 136071 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 10:21:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=136071 Change 136071 by peter@peter_daintree on 2008/02/24 10:21:20 Test submit Affected files ... .. //depot/projects/hammer/TODO.txt#19 edit Differences ... ==== //depot/projects/hammer/TODO.txt#19 (text+ko) ==== @@ -1,4 +1,5 @@ -$P4: //depot/projects/hammer/TODO.txt#18 $ + +$P4: //depot/projects/hammer/TODO.txt#19 $ reread the logs etc and check out the "XXX worry about this later" stuff From owner-p4-projects@FreeBSD.ORG Sun Feb 24 12:32:58 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A646C16A404; Sun, 24 Feb 2008 12:32:58 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 695C916A401 for ; Sun, 24 Feb 2008 12:32:58 +0000 (UTC) (envelope-from rrs@cisco.com) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 573D513C46E for ; Sun, 24 Feb 2008 12:32:58 +0000 (UTC) (envelope-from rrs@cisco.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OCWwwR031592 for ; Sun, 24 Feb 2008 12:32:58 GMT (envelope-from rrs@cisco.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OCWvp1031589 for perforce@freebsd.org; Sun, 24 Feb 2008 12:32:57 GMT (envelope-from rrs@cisco.com) Date: Sun, 24 Feb 2008 12:32:57 GMT Message-Id: <200802241232.m1OCWvp1031589@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rrs@cisco.com using -f From: "Randall R. Stewart" To: Perforce Change Reviews Cc: Subject: PERFORCE change 136075 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 12:32:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=136075 Change 136075 by rrs@rrs-mips2-jnpr on 2008/02/24 12:32:19 Adds a missing trap type. Affected files ... .. //depot/projects/mips2-jnpr/src/sys/mips/include/trap.h#6 edit Differences ... ==== //depot/projects/mips2-jnpr/src/sys/mips/include/trap.h#6 (text+ko) ==== @@ -64,6 +64,7 @@ #define T_VCEI 14 /* Virtual coherency instruction */ #define T_FPE 15 /* Floating point exception */ #define T_IWATCH 16 /* Inst. Watch address reference */ +#define T_C2E 18 /* Exception from coprocessor 2 */ #define T_DWATCH 23 /* Data Watch address reference */ #define T_MCHECK 24 /* Received an MCHECK */ #define T_VCED 31 /* Virtual coherency data */ From owner-p4-projects@FreeBSD.ORG Sun Feb 24 12:32:59 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 63DD616A52F; Sun, 24 Feb 2008 12:32:59 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 06BF016A502 for ; Sun, 24 Feb 2008 12:32:58 +0000 (UTC) (envelope-from rrs@cisco.com) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C736213C45D for ; Sun, 24 Feb 2008 12:32:58 +0000 (UTC) (envelope-from rrs@cisco.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OCWwPw031598 for ; Sun, 24 Feb 2008 12:32:58 GMT (envelope-from rrs@cisco.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OCWwAX031595 for perforce@freebsd.org; Sun, 24 Feb 2008 12:32:58 GMT (envelope-from rrs@cisco.com) Date: Sun, 24 Feb 2008 12:32:58 GMT Message-Id: <200802241232.m1OCWwAX031595@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rrs@cisco.com using -f From: "Randall R. Stewart" To: Perforce Change Reviews Cc: Subject: PERFORCE change 136076 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 12:32:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=136076 Change 136076 by rrs@rrs-mips2-jnpr on 2008/02/24 12:32:57 More alignment please. Affected files ... .. //depot/projects/mips2-jnpr/src/sys/mips/include/ucontext.h#4 edit Differences ... ==== //depot/projects/mips2-jnpr/src/sys/mips/include/ucontext.h#4 (text+ko) ==== @@ -48,7 +48,8 @@ int mc_onstack; /* sigstack state to restore */ register_t mc_pc; /* pc at time of signal */ register_t mc_regs[32]; /* processor regs 0 to 31 */ - register_t mullo, mulhi; /* mullo and mulhi registers... */ + register_t sr; /* status register */ + register_t mullo, mulhi; /* mullo and mulhi registers... */ int mc_fpused; /* fp has been used */ f_register_t mc_fpregs[33]; /* fp regs 0 to 31 and csr */ register_t mc_fpc_eir; /* fp exception instruction reg */ @@ -93,7 +94,8 @@ #define UCR_SP UCTX_REG(29) #define UCR_S8 UCTX_REG(30) #define UCR_RA UCTX_REG(31) -#define UCR_MDLO UCTX_REG(32) -#define UCR_MDHI UCTX_REG(33) +#define UCR_SR UCTX_REG(32) +#define UCR_MDLO UCTX_REG(33) +#define UCR_MDHI UCTX_REG(34) #endif /* !_MACHINE_UCONTEXT_H_ */ From owner-p4-projects@FreeBSD.ORG Sun Feb 24 12:42:13 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B5EC716A403; Sun, 24 Feb 2008 12:42:13 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5F20916A400 for ; Sun, 24 Feb 2008 12:42:13 +0000 (UTC) (envelope-from rrs@cisco.com) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4B18A13C46E for ; Sun, 24 Feb 2008 12:42:13 +0000 (UTC) (envelope-from rrs@cisco.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OCgDWS032028 for ; Sun, 24 Feb 2008 12:42:13 GMT (envelope-from rrs@cisco.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OCgCGQ032025 for perforce@freebsd.org; Sun, 24 Feb 2008 12:42:12 GMT (envelope-from rrs@cisco.com) Date: Sun, 24 Feb 2008 12:42:12 GMT Message-Id: <200802241242.m1OCgCGQ032025@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rrs@cisco.com using -f From: "Randall R. Stewart" To: Perforce Change Reviews Cc: Subject: PERFORCE change 136077 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 12:42:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=136077 Change 136077 by rrs@rrs-mips2-jnpr on 2008/02/24 12:41:22 Fixes signal handling code. When a system call completes we need to check to see if a ast() is needed, just like the out: label does. Now a caught signal handler no longer causes an infinite loop of syscall/intr/syscall/intr... Affected files ... .. //depot/projects/mips2-jnpr/src/sys/mips/mips/trap.c#13 edit Differences ... ==== //depot/projects/mips2-jnpr/src/sys/mips/mips/trap.c#13 (text+ko) ==== @@ -98,6 +98,7 @@ #ifdef TRAP_DEBUG int trap_debug = 1; + #endif extern unsigned onfault_table[]; @@ -113,82 +114,84 @@ static void log_bad_page_fault(char *, struct trapframe *, int); static void log_frame_dump(struct trapframe *frame); static void get_mapping_info(vm_offset_t, pd_entry_t **, pt_entry_t **); + #ifdef TRAP_DEBUG static void trap_frame_dump(struct trapframe *frame); + #endif extern char edata[]; -void (*machExceptionTable[])(void) = { +void (*machExceptionTable[]) (void)= { /* * The kernel exception handlers. */ - MipsKernIntr, /* external interrupt */ - MipsKernGenException, /* TLB modification */ + MipsKernIntr, /* external interrupt */ + MipsKernGenException, /* TLB modification */ MipsKernTLBInvalidException, /* TLB miss (load or instr. fetch) */ MipsKernTLBInvalidException, /* TLB miss (store) */ - MipsKernGenException, /* address error (load or I-fetch) */ - MipsKernGenException, /* address error (store) */ - MipsKernGenException, /* bus error (I-fetch) */ - MipsKernGenException, /* bus error (load or store) */ - MipsKernGenException, /* system call */ - MipsKernGenException, /* breakpoint */ - MipsKernGenException, /* reserved instruction */ - MipsKernGenException, /* coprocessor unusable */ - MipsKernGenException, /* arithmetic overflow */ - MipsKernGenException, /* trap exception */ - MipsKernGenException, /* viritual coherence exception inst */ - MipsKernGenException, /* floating point exception */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* watch exception */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* reserved */ - MipsKernGenException, /* viritual coherence exception data */ + MipsKernGenException, /* address error (load or I-fetch) */ + MipsKernGenException, /* address error (store) */ + MipsKernGenException, /* bus error (I-fetch) */ + MipsKernGenException, /* bus error (load or store) */ + MipsKernGenException, /* system call */ + MipsKernGenException, /* breakpoint */ + MipsKernGenException, /* reserved instruction */ + MipsKernGenException, /* coprocessor unusable */ + MipsKernGenException, /* arithmetic overflow */ + MipsKernGenException, /* trap exception */ + MipsKernGenException, /* viritual coherence exception inst */ + MipsKernGenException, /* floating point exception */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* watch exception */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* reserved */ + MipsKernGenException, /* viritual coherence exception data */ /* * The user exception handlers. */ - MipsUserIntr, /* 0 */ - MipsUserGenException, /* 1 */ - MipsUserTLBInvalidException, /* 2 */ - MipsUserTLBInvalidException, /* 3 */ - MipsUserGenException, /* 4 */ - MipsUserGenException, /* 5 */ - MipsUserGenException, /* 6 */ - MipsUserGenException, /* 7 */ - MipsUserGenException, /* 8 */ - MipsUserGenException, /* 9 */ - MipsUserGenException, /* 10 */ - MipsUserGenException, /* 11 */ - MipsUserGenException, /* 12 */ - MipsUserGenException, /* 13 */ - MipsUserGenException, /* 14 */ - MipsUserGenException, /* 15 */ - MipsUserGenException, /* 16 */ - MipsUserGenException, /* 17 */ - MipsUserGenException, /* 18 */ - MipsUserGenException, /* 19 */ - MipsUserGenException, /* 20 */ - MipsUserGenException, /* 21 */ - MipsUserGenException, /* 22 */ - MipsUserGenException, /* 23 */ - MipsUserGenException, /* 24 */ - MipsUserGenException, /* 25 */ - MipsUserGenException, /* 26 */ - MipsUserGenException, /* 27 */ - MipsUserGenException, /* 28 */ - MipsUserGenException, /* 29 */ - MipsUserGenException, /* 20 */ - MipsUserGenException, /* 31 */ + MipsUserIntr, /* 0 */ + MipsUserGenException, /* 1 */ + MipsUserTLBInvalidException, /* 2 */ + MipsUserTLBInvalidException, /* 3 */ + MipsUserGenException, /* 4 */ + MipsUserGenException, /* 5 */ + MipsUserGenException, /* 6 */ + MipsUserGenException, /* 7 */ + MipsUserGenException, /* 8 */ + MipsUserGenException, /* 9 */ + MipsUserGenException, /* 10 */ + MipsUserGenException, /* 11 */ + MipsUserGenException, /* 12 */ + MipsUserGenException, /* 13 */ + MipsUserGenException, /* 14 */ + MipsUserGenException, /* 15 */ + MipsUserGenException, /* 16 */ + MipsUserGenException, /* 17 */ + MipsUserGenException, /* 18 */ + MipsUserGenException, /* 19 */ + MipsUserGenException, /* 20 */ + MipsUserGenException, /* 21 */ + MipsUserGenException, /* 22 */ + MipsUserGenException, /* 23 */ + MipsUserGenException, /* 24 */ + MipsUserGenException, /* 25 */ + MipsUserGenException, /* 26 */ + MipsUserGenException, /* 27 */ + MipsUserGenException, /* 28 */ + MipsUserGenException, /* 29 */ + MipsUserGenException, /* 20 */ + MipsUserGenException, /* 31 */ }; char *trap_type[] = { @@ -228,18 +231,21 @@ #if !defined(SMP) && (defined(DDB) || defined(DEBUG)) struct trapdebug trapdebug[TRAPSIZE], *trp = trapdebug; + #endif #if defined(DDB) || defined(DEBUG) void stacktrace(struct trapframe *); void logstacktrace(struct trapframe *); -int kdbpeek(int *); +int kdbpeek(int *); + /* extern functions printed by name in stack backtraces */ extern void MipsTLBMiss(void); extern void MipsUserSyscallException(void); extern char _locore[]; extern char _locoreEnd[]; -#endif /* DDB || DEBUG */ + +#endif /* DDB || DEBUG */ extern void MipsSwitchFPState(struct thread *, struct trapframe *); extern void MipsFPTrap(u_int, u_int, u_int); @@ -328,12 +334,12 @@ } /* - * Enable hardware interrupts if they were on before the trap. - * If it was off disable all (splhigh) so we don't accidently - * enable it when doing a spllower(). + * Enable hardware interrupts if they were on before the trap. If it + * was off disable all (splhigh) so we don't accidently enable it + * when doing a spllower(). */ /*XXX do in locore? */ - if(trapframe->sr & SR_INT_ENAB) { + if (trapframe->sr & SR_INT_ENAB) { set_intr_mask(~(trapframe->sr & ALL_INT_MASK)); enableintr(); } else { @@ -348,7 +354,7 @@ u_int32_t pid; printf("trap type %x (%s - ", type, - trap_type[type & (~T_USER)]); + trap_type[type & (~T_USER)]); if (type & T_USER) printf("user mode)\n"); @@ -359,12 +365,12 @@ printf("cpuid = %d\n", PCPU_GET(cpuid)); #endif MachTLBGetPID(pid); - printf("badaddr = %p, pc = %p, ra = %p, sp = %p, sr = 0x%x, pid = %d, ASID = 0x%x\n", + printf("badaddr = %p, pc = %p, ra = %p, sp = %p, sr = 0x%x, pid = %d, ASID = 0x%x\n", trapframe->badvaddr, trapframe->pc, trapframe->ra, trapframe->sp, trapframe->sr, (curproc ? curproc->p_pid : -1), pid); - switch(type & ~T_USER) { + switch (type & ~T_USER) { case T_TLB_MOD: case T_TLB_LD_MISS: case T_TLB_ST_MISS: @@ -380,7 +386,7 @@ break; } if ((last_badvaddr == this_badvaddr) && - ((type & ~T_USER) != T_SYSCALL)) { + ((type & ~T_USER) != T_SYSCALL)) { if (++count == 3) { trap_frame_dump(trapframe); panic("too many faults at %p\n", last_badvaddr); @@ -391,14 +397,13 @@ } } #endif - switch (type) { case T_MCHECK: #ifdef DDB - kdb_trap(type, 0, trapframe); + kdb_trap(type, 0, trapframe); #endif - panic("MCHECK\n"); - break; + panic("MCHECK\n"); + break; case T_TLB_MOD: /* check for kernel address */ if (KERNLAND(trapframe->badvaddr)) { @@ -406,7 +411,7 @@ PMAP_LOCK(kernel_pmap); if (!(pte = pmap_segmap(kernel_pmap, - trapframe->badvaddr))) + trapframe->badvaddr))) panic("trap: ktlbmod: invalid segmap"); pte += (trapframe->badvaddr >> PGSHIFT) & (NPTEPG - 1); entry = *pte; @@ -442,52 +447,54 @@ } /* FALLTHROUGH */ - case T_TLB_MOD+T_USER: - { - vm_offset_t pa; - pmap = &p->p_vmspace->vm_pmap; + case T_TLB_MOD + T_USER: + { + vm_offset_t pa; + + pmap = &p->p_vmspace->vm_pmap; - PMAP_LOCK(pmap); - if (!(pte = pmap_segmap(pmap, trapframe->badvaddr))) - panic("trap: utlbmod: invalid segmap"); - pte += (trapframe->badvaddr >> PGSHIFT) & (NPTEPG - 1); - entry = *pte; + PMAP_LOCK(pmap); + if (!(pte = pmap_segmap(pmap, trapframe->badvaddr))) + panic("trap: utlbmod: invalid segmap"); + pte += (trapframe->badvaddr >> PGSHIFT) & (NPTEPG - 1); + entry = *pte; #ifdef SMP - /* It is possible that some other CPU changed m-bit */ - if (!mips_pg_v(entry) || (entry & mips_pg_m_bit())) { + /* It is possible that some other CPU changed m-bit */ + if (!mips_pg_v(entry) || (entry & mips_pg_m_bit())) { + trapframe->badvaddr = (trapframe->badvaddr & ~PGOFSET); + pmap_update_page(pmap, trapframe->badvaddr, entry); + PMAP_UNLOCK(pmap); + goto out; + } +#else + if (!mips_pg_v(entry) || (entry & mips_pg_m_bit())) { + panic("trap: utlbmod: invalid pte"); + } +#endif + + if (entry & mips_pg_ro_bit()) { + /* write to read only page */ + ftype = VM_PROT_WRITE; + PMAP_UNLOCK(pmap); + goto dofault; + } + entry |= mips_pg_m_bit(); + *pte = entry; trapframe->badvaddr = (trapframe->badvaddr & ~PGOFSET); pmap_update_page(pmap, trapframe->badvaddr, entry); + trapframe->badvaddr |= (pmap->pm_asid[PCPU_GET(cpuid)].asid << VMTLB_PID_SHIFT); + pa = mips_tlbpfn_to_paddr(entry); + if (!page_is_managed(pa)) + panic("trap: utlbmod: unmanaged page"); + pmap_set_modified(pa); + PMAP_UNLOCK(pmap); + if (!usermode) { + return (trapframe->pc); + } goto out; } -#else - if (!mips_pg_v(entry) || (entry & mips_pg_m_bit())) { - panic("trap: utlbmod: invalid pte"); - } -#endif - if (entry & mips_pg_ro_bit()) { - /* write to read only page */ - ftype = VM_PROT_WRITE; - PMAP_UNLOCK(pmap); - goto dofault; - } - entry |= mips_pg_m_bit(); - *pte = entry; - trapframe->badvaddr = (trapframe->badvaddr & ~PGOFSET); - pmap_update_page(pmap, trapframe->badvaddr, entry); - trapframe->badvaddr |= (pmap->pm_asid[PCPU_GET(cpuid)].asid << VMTLB_PID_SHIFT); - pa = mips_tlbpfn_to_paddr(entry); - if (!page_is_managed(pa)) - panic("trap: utlbmod: unmanaged page"); - pmap_set_modified(pa); - - PMAP_UNLOCK(pmap); - if (!usermode) - return (trapframe->pc); - goto out; - } - case T_TLB_LD_MISS: case T_TLB_ST_MISS: ftype = (type == T_TLB_ST_MISS) ? VM_PROT_WRITE : VM_PROT_READ; @@ -496,7 +503,7 @@ vm_offset_t va; int rv; - kernel_fault: + kernel_fault: va = trunc_page((vm_offset_t)trapframe->badvaddr); rv = vm_fault(kernel_map, va, ftype, VM_FAULT_NORMAL); if (rv == KERN_SUCCESS) @@ -514,96 +521,98 @@ if ((i = td->td_pcb->pcb_onfault) == 0) goto err; /* check for fuswintr() or suswintr() getting a page fault */ - if (i == 4) + if (i == 4) { return (onfault_table[i]); + } goto dofault; - case T_TLB_LD_MISS+T_USER: + case T_TLB_LD_MISS + T_USER: ftype = VM_PROT_READ; goto dofault; - case T_TLB_ST_MISS+T_USER: + case T_TLB_ST_MISS + T_USER: ftype = VM_PROT_WRITE; - dofault: - { - vm_offset_t va; - struct vmspace *vm; - vm_map_t map; - int rv = 0; - int flag; +dofault: + { + vm_offset_t va; + struct vmspace *vm; + vm_map_t map; + int rv = 0; + int flag; + + vm = p->p_vmspace; + map = &vm->vm_map; + va = trunc_page((vm_offset_t)trapframe->badvaddr); + if ((vm_offset_t)trapframe->badvaddr < VM_MIN_KERNEL_ADDRESS) { + if (ftype & VM_PROT_WRITE) + flag = VM_FAULT_DIRTY; + else + flag = VM_FAULT_NORMAL; + } else { + /* + * Don't allow user-mode faults in kernel + * address space. + */ + goto nogo; + } - vm = p->p_vmspace; - map = &vm->vm_map; - va = trunc_page((vm_offset_t)trapframe->badvaddr); - if ((vm_offset_t)trapframe->badvaddr < VM_MIN_KERNEL_ADDRESS) { - if (ftype & VM_PROT_WRITE) - flag = VM_FAULT_DIRTY; - else - flag = VM_FAULT_NORMAL; - } else { /* - * Don't allow user-mode faults in kernel address space. + * Keep swapout from messing with us during this + * critical time. */ - goto nogo; - } + PROC_LOCK(p); + ++p->p_lock; + PROC_UNLOCK(p); - /* - * Keep swapout from messing with us during this - * critical time. - */ - PROC_LOCK(p); - ++p->p_lock; - PROC_UNLOCK(p); + rv = vm_fault(map, va, ftype, flag); - rv = vm_fault(map, va, ftype, flag); - - PROC_LOCK(p); - --p->p_lock; - PROC_UNLOCK(p); + PROC_LOCK(p); + --p->p_lock; + PROC_UNLOCK(p); #ifdef VMFAULT_TRACE - printf("vm_fault(%x (pmap %x), %x (%x), %x, %d) -> %x at pc %x\n", - map, &vm->vm_pmap, va, trapframe->badvaddr, ftype, flag, - rv, trapframe->pc); + printf("vm_fault(%x (pmap %x), %x (%x), %x, %d) -> %x at pc %x\n", + map, &vm->vm_pmap, va, trapframe->badvaddr, ftype, flag, + rv, trapframe->pc); #endif - if (rv == KERN_SUCCESS) { - if (!usermode) - return (trapframe->pc); - goto out; - } -nogo: - if (!usermode) { - if ((i = td->td_pcb->pcb_onfault) != 0) { - td->td_pcb->pcb_onfault = 0; - return (onfault_table[i]); + if (rv == KERN_SUCCESS) { + if (!usermode) { + return (trapframe->pc); + } + goto out; + } + nogo: + if (!usermode) { + if ((i = td->td_pcb->pcb_onfault) != 0) { + td->td_pcb->pcb_onfault = 0; + return (onfault_table[i]); + } + goto err; } - goto err; - } + ucode = ftype; + i = ((rv == KERN_PROTECTION_FAILURE) ? SIGBUS : SIGSEGV); + addr = trapframe->pc; - ucode = ftype; - i = ((rv == KERN_PROTECTION_FAILURE) ? SIGBUS : SIGSEGV); - addr = trapframe->pc; + msg = "BAD_PAGE_FAULT"; + log_bad_page_fault(msg, trapframe, type); - msg = "BAD_PAGE_FAULT"; - log_bad_page_fault(msg, trapframe, type); + break; + } - break; - } - - case T_ADDR_ERR_LD+T_USER: /* misaligned or kseg access */ - case T_ADDR_ERR_ST+T_USER: /* misaligned or kseg access */ + case T_ADDR_ERR_LD + T_USER: /* misaligned or kseg access */ + case T_ADDR_ERR_ST + T_USER: /* misaligned or kseg access */ if (allow_unaligned_acc) { int mode; - if (type == (T_ADDR_ERR_LD+T_USER)) + if (type == (T_ADDR_ERR_LD + T_USER)) mode = VM_PROT_READ; else mode = VM_PROT_WRITE; /* - * ADDR_ERR faults have higher priority than - * TLB Miss faults. Therefore, it is necessary - * to verify that the faulting address is a valid + * ADDR_ERR faults have higher priority than TLB + * Miss faults. Therefore, it is necessary to + * verify that the faulting address is a valid * virtual address within the process' address space * before trying to emulate the unaligned access. */ @@ -620,9 +629,9 @@ /* FALL THROUGH */ - case T_BUS_ERR_IFETCH+T_USER: /* BERR asserted to cpu */ - case T_BUS_ERR_LD_ST+T_USER: /* BERR asserted to cpu */ - ucode = 0; /* XXX should be VM_PROT_something */ + case T_BUS_ERR_IFETCH + T_USER: /* BERR asserted to cpu */ + case T_BUS_ERR_LD_ST + T_USER: /* BERR asserted to cpu */ + ucode = 0; /* XXX should be VM_PROT_something */ i = SIGBUS; addr = trapframe->pc; if (!msg) @@ -630,288 +639,299 @@ log_bad_page_fault(msg, trapframe, type); break; - case T_SYSCALL+T_USER: + case T_SYSCALL + T_USER: { - struct trapframe *locr0 = td->td_frame; - struct sysent *callp; - unsigned int code; - unsigned int tpc; - int nargs, nsaved; - register_t args[8]; + struct trapframe *locr0 = td->td_frame; + struct sysent *callp; + unsigned int code; + unsigned int tpc; + int nargs, nsaved; + register_t args[8]; - /* - * note: PCPU_LAZY_INC() can only be used if we can afford - * occassional inaccuracy in the count. - */ - PCPU_LAZY_INC(cnt.v_syscall); - if (td->td_ucred != p->p_ucred) - cred_update_thread(td); -#ifdef KSE - if (p->p_flag & P_SA) - thread_user_enter(td); -#endif - /* compute next PC after syscall instruction */ - tpc = trapframe->pc; /* Remember if restart */ - if (DELAYBRANCH(trapframe->cause)) { /* Check BD bit */ - locr0->pc = MipsEmulateBranch(locr0, trapframe->pc, 0, - 0); - } else { - locr0->pc += sizeof(int); - } - code = locr0->v0; - - switch (code) { - case SYS_syscall: /* - * Code is first argument, followed by actual args. + * note: PCPU_LAZY_INC() can only be used if we can + * afford occassional inaccuracy in the count. */ - code = locr0->a0; - args[0] = locr0->a1; - args[1] = locr0->a2; - args[2] = locr0->a3; - nsaved = 3; - break; + PCPU_LAZY_INC(cnt.v_syscall); + if (td->td_ucred != p->p_ucred) + cred_update_thread(td); +#ifdef KSE + if (p->p_flag & P_SA) + thread_user_enter(td); +#endif + /* compute next PC after syscall instruction */ + tpc = trapframe->pc; /* Remember if restart */ + if (DELAYBRANCH(trapframe->cause)) { /* Check BD bit */ + locr0->pc = MipsEmulateBranch(locr0, trapframe->pc, 0, + 0); + } else { + locr0->pc += sizeof(int); + } + code = locr0->v0; - case SYS___syscall: - /* - * Like syscall, but code is a quad, so as to maintain - * quad alignment for the rest of the arguments. - */ - if (_QUAD_LOWWORD == 0) { + switch (code) { + case SYS_syscall: + /* + * Code is first argument, followed by + * actual args. + */ code = locr0->a0; - } else { - code = locr0->a1; + args[0] = locr0->a1; + args[1] = locr0->a2; + args[2] = locr0->a3; + nsaved = 3; + break; + + case SYS___syscall: + /* + * Like syscall, but code is a quad, so as + * to maintain quad alignment for the rest + * of the arguments. + */ + if (_QUAD_LOWWORD == 0) { + code = locr0->a0; + } else { + code = locr0->a1; + } + args[0] = locr0->a2; + args[1] = locr0->a3; + nsaved = 2; + quad_syscall = 1; + break; + + default: + args[0] = locr0->a0; + args[1] = locr0->a1; + args[2] = locr0->a2; + args[3] = locr0->a3; + nsaved = 4; } - args[0] = locr0->a2; - args[1] = locr0->a3; - nsaved = 2; - quad_syscall = 1; - break; - - default: - args[0] = locr0->a0; - args[1] = locr0->a1; - args[2] = locr0->a2; - args[3] = locr0->a3; - nsaved = 4; - } -#if TRAP_DEBUG - printf("SYSCALL #%d pid:%u\n", code, p->p_pid); +#ifdef TRAP_DEBUG + printf("SYSCALL #%d pid:%u\n", code, p->p_pid); #endif - if (p->p_sysent->sv_mask) - code &= p->p_sysent->sv_mask; + if (p->p_sysent->sv_mask) + code &= p->p_sysent->sv_mask; - if (code >= p->p_sysent->sv_size) - callp = &p->p_sysent->sv_table[0]; - else - callp = &p->p_sysent->sv_table[code]; + if (code >= p->p_sysent->sv_size) + callp = &p->p_sysent->sv_table[0]; + else + callp = &p->p_sysent->sv_table[code]; - nargs = callp->sy_narg; + nargs = callp->sy_narg; - if (nargs > nsaved) { - i = copyin((caddr_t)(locr0->sp + - 4 * sizeof(register_t)), (caddr_t)&args[nsaved], - (u_int)(nargs - nsaved) * sizeof(register_t)); - if (i) { - locr0->v0 = i; - locr0->a3 = 1; + if (nargs > nsaved) { + i = copyin((caddr_t)(locr0->sp + + 4 * sizeof(register_t)), (caddr_t)&args[nsaved], + (u_int)(nargs - nsaved) * sizeof(register_t)); + if (i) { + locr0->v0 = i; + locr0->a3 = 1; #ifdef KTRACE - if (KTRPOINT(td, KTR_SYSCALL)) - ktrsyscall(code, nargs, args); + if (KTRPOINT(td, KTR_SYSCALL)) + ktrsyscall(code, nargs, args); #endif - goto done; + goto done; + } } - } - #ifdef KTRACE - if (KTRPOINT(td, KTR_SYSCALL)) - ktrsyscall(code, nargs, args); + if (KTRPOINT(td, KTR_SYSCALL)) + ktrsyscall(code, nargs, args); #endif - td->td_retval[0] = 0; - td->td_retval[1] = locr0->v1; + td->td_retval[0] = 0; + td->td_retval[1] = locr0->v1; #if !defined(SMP) && (defined(DDB) || defined(DEBUG)) - if (trp == trapdebug) - trapdebug[TRAPSIZE - 1].code = code; - else - trp[-1].code = code; + if (trp == trapdebug) + trapdebug[TRAPSIZE - 1].code = code; + else + trp[-1].code = code; #endif - STOPEVENT(p, S_SCE, nargs); + STOPEVENT(p, S_SCE, nargs); - PTRACESTOP_SC(p, td, S_PT_SCE); - - i = (*callp->sy_call)(td, args); - + PTRACESTOP_SC(p, td, S_PT_SCE); + i = (*callp->sy_call) (td, args); #if 0 - /* - * Reinitialize proc pointer `p' as it may be different - * if this is a child returning from fork syscall. - */ - td = curthread; - locr0 = td->td_frame; + /* + * Reinitialize proc pointer `p' as it may be + * different if this is a child returning from fork + * syscall. + */ + td = curthread; + locr0 = td->td_frame; #endif - trapdebug_enter(locr0, -code); - switch (i) { - case 0: - if (quad_syscall && code != SYS_lseek) { - /* - * System call invoked through the SYS___syscall - * interface but the return value is really - * just 32 bits. - */ - locr0->v0 = td->td_retval[0]; - if (_QUAD_LOWWORD) - locr0->v1 = td->td_retval[0]; - locr0->a3 = 0; - } else { - locr0->v0 = td->td_retval[0]; - locr0->v1 = td->td_retval[1]; - locr0->a3 = 0; - } - break; + trapdebug_enter(locr0, -code); + switch (i) { + case 0: + if (quad_syscall && code != SYS_lseek) { + /* + * System call invoked through the + * SYS___syscall interface but the + * return value is really just 32 + * bits. + */ + locr0->v0 = td->td_retval[0]; + if (_QUAD_LOWWORD) + locr0->v1 = td->td_retval[0]; + locr0->a3 = 0; + } else { + locr0->v0 = td->td_retval[0]; + locr0->v1 = td->td_retval[1]; + locr0->a3 = 0; + } + break; - case ERESTART: - locr0->pc = tpc; - break; + case ERESTART: + locr0->pc = tpc; + break; - case EJUSTRETURN: - break; /* nothing to do */ + case EJUSTRETURN: + break; /* nothing to do */ - default: - if (quad_syscall && code != SYS_lseek) { - locr0->v0 = i; - if (_QUAD_LOWWORD) - locr0->v1 = i; - locr0->a3 = 1; - } else { - locr0->v0 = i; - locr0->a3 = 1; + default: + if (quad_syscall && code != SYS_lseek) { + locr0->v0 = i; + if (_QUAD_LOWWORD) + locr0->v1 = i; + locr0->a3 = 1; + } else { + locr0->v0 = i; + locr0->a3 = 1; + } } - } - /* - * The sync'ing of I & D caches for SYS_ptrace() is - * done by procfs_domem() through procfs_rwmem() instead - * of being done here under a special check for SYS_ptrace(). - */ + /* + * The sync'ing of I & D caches for SYS_ptrace() is + * done by procfs_domem() through procfs_rwmem() + * instead of being done here under a special check + * for SYS_ptrace(). + */ done: - /* - * Check for misbehavior. - */ - WITNESS_WARN(WARN_PANIC, NULL, "System call %s returning", - (code >= 0 && code < SYS_MAXSYSCALL) ? - syscallnames[code] : "???"); - KASSERT(td->td_critnest == 0, - ("System call %s returning in a critical section", - (code >= 0 && code < SYS_MAXSYSCALL) ? - syscallnames[code] : "???")); - KASSERT(td->td_locks == 0, - ("System call %s returning with %d locks held", - (code >= 0 && code < SYS_MAXSYSCALL) ? - syscallnames[code] : "???", - td->td_locks)); - - userret(td, trapframe); - + /* + * Check for misbehavior. + */ + WITNESS_WARN(WARN_PANIC, NULL, "System call %s returning", + (code >= 0 && code < SYS_MAXSYSCALL) ? + syscallnames[code] : "???"); + KASSERT(td->td_critnest == 0, + ("System call %s returning in a critical section", + (code >= 0 && code < SYS_MAXSYSCALL) ? + syscallnames[code] : "???")); + KASSERT(td->td_locks == 0, + ("System call %s returning with %d locks held", + (code >= 0 && code < SYS_MAXSYSCALL) ? + syscallnames[code] : "???", + td->td_locks)); + userret(td, trapframe); #ifdef KTRACE - if (KTRPOINT(p, KTR_SYSRET)) - ktrsysret(code, i, td->td_retval[0]); + if (KTRPOINT(p, KTR_SYSRET)) + ktrsysret(code, i, td->td_retval[0]); #endif - /* - * This works because errno is findable through the - * register set. If we ever support an emulation where this - * is not the case, this code will need to be revisited. - */ - STOPEVENT(p, S_SCX, code); + /* + * This works because errno is findable through the + * register set. If we ever support an emulation + * where this is not the case, this code will need + * to be revisited. + */ + STOPEVENT(p, S_SCX, code); - PTRACESTOP_SC(p, td, S_PT_SCX); + PTRACESTOP_SC(p, td, S_PT_SCX); - return (trapframe->pc); - } + mtx_assert(&Giant, MA_NOTOWNED); + if (curthread->td_flags & (TDF_ASTPENDING | TDF_NEEDRESCHED)) { + ast(trapframe); + } + return (trapframe->pc); + } #ifdef DDB case T_BREAK: kdb_trap(type, 0, trapframe); - return(trapframe->pc); + return (trapframe->pc); #endif - case T_BREAK+T_USER: - { - unsigned int va, instr; + case T_BREAK + T_USER: + { + unsigned int va, instr; - /* compute address of break instruction */ - va = trapframe->pc; - if (DELAYBRANCH(trapframe->cause)) - va += sizeof(int); + /* compute address of break instruction */ + va = trapframe->pc; + if (DELAYBRANCH(trapframe->cause)) + va += sizeof(int); - /* read break instruction */ - instr = fuword((caddr_t)va); + /* read break instruction */ + instr = fuword((caddr_t)va); #if 0 - printf("trap: %s (%d) breakpoint %x at %x: (adr %x ins %x)\n", - p->p_comm, p->p_pid, instr, trapframe->pc, - p->p_md.md_ss_addr, p->p_md.md_ss_instr); /* XXX */ + printf("trap: %s (%d) breakpoint %x at %x: (adr %x ins %x)\n", + p->p_comm, p->p_pid, instr, trapframe->pc, + p->p_md.md_ss_addr, p->p_md.md_ss_instr); /* XXX */ #endif - if (td->td_md.md_ss_addr != va || instr != BREAK_SSTEP) { + if (td->td_md.md_ss_addr != va || instr != BREAK_SSTEP) { + i = SIGTRAP; + addr = trapframe->pc; + break; + } + /* + * The restoration of the original instruction and + * the clearing of the berakpoint will be done later + * by the call to ptrace_clear_single_step() in + * issignal() when SIGTRAP is processed. + */ + addr = trapframe->pc; i = SIGTRAP; - addr = trapframe->pc; break; } - /* - * The restoration of the original instruction and the - * clearing of the berakpoint will be done later by the - * call to ptrace_clear_single_step() in issignal() - * when SIGTRAP is processed. - */ - addr = trapframe->pc; - i = SIGTRAP; - break; - } + case T_IWATCH + T_USER: + case T_DWATCH + T_USER: + { + unsigned int va; - case T_IWATCH+T_USER: - case T_DWATCH+T_USER: - { - unsigned int va; - /* compute address of trapped instruction */ - va = trapframe->pc; - if (DELAYBRANCH(trapframe->cause)) - va += sizeof(int); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Feb 24 13:33:43 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AFA6316A40A; Sun, 24 Feb 2008 13:33:42 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 70D4E16A407 for ; Sun, 24 Feb 2008 13:33:42 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 57C9813C4EB for ; Sun, 24 Feb 2008 13:33:42 +0000 (UTC) (envelope-from pgj@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1ODXgL8043779 for ; Sun, 24 Feb 2008 13:33:42 GMT (envelope-from pgj@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1ODXehp043776 for perforce@freebsd.org; Sun, 24 Feb 2008 13:33:40 GMT (envelope-from pgj@FreeBSD.org) Date: Sun, 24 Feb 2008 13:33:40 GMT Message-Id: <200802241333.m1ODXehp043776@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to pgj@FreeBSD.org using -f From: Gabor Pali To: Perforce Change Reviews Cc: Subject: PERFORCE change 136080 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 13:33:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=136080 Change 136080 by pgj@disznohal on 2008/02/24 13:32:54 Add initial Hungarian translation of Chapter 28: Firewalls. Affected files ... .. //depot/projects/docproj_hu/books/handbook/firewalls/chapter.sgml#4 edit Differences ... ==== //depot/projects/docproj_hu/books/handbook/firewalls/chapter.sgml#4 (text+ko) ==== @@ -4,581 +4,790 @@ $FreeBSD: doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml,v 1.80 2008/01/17 17:50:30 remko Exp $ --> - + + + Joseph J. Barbish - Contributed by + Írta: Brad Davis - Converted to SGML and updated by + SGML formátumra alakította és + aktualizálta: - Firewalls + Tûzfalak - firewall + tûzfalak - security - - firewalls + biztonság + tûzfalak - Introduction + Bevezetés - Firewalls make it possible to filter - incoming and outgoing traffic that flows through your system. - A firewall can use one or more sets of rules to - inspect the network packets as they come in or go out of your - network connections and either allows the traffic through or - blocks it. The rules of a firewall can inspect one or more - characteristics of the packets, including but not limited to the - protocol type, the source or destination host address, and the - source or destination port. + A tûzfalakkal a rendszerünkön + keresztülfolyó bejövõ és kimenõ + forgalmat tudjuk szûrni. A tûzfalak egy vagy több + szabályrendszer alapján + vizsgálják az éppen érkezõ vagy + távozó hálózati csomagokat, és + vagy továbbengedik ezeket vagy + megállítják. A tûzfalak + szabályai a csomagok egy vagy több + jellemzõjét veszik szemügyre, amik lehetnek + mondjuk a protokoll típusa, a forrás vagy cél + hálózati címe, esetleg a forrás- vagy + a célport. - Firewalls can greatly enhance the security of a host or a - network. They can be used to do one or more of - the following things: + A tûzfalak jelentõs mértékben + képesek gyarapítani egy gép vagy egy + hálózat védelmét. Leginkább a + következõkre tudjuk felhasználni ezeket: - To protect and insulate the applications, services and - machines of your internal network from unwanted traffic - coming in from the public Internet. + a belsõ hálózatunkban futó + alkalmazások, szolgáltatások, gépek + megvédésére és + elszigetelésére az internetrõl + érkezõ nem kívánt forgalom + ellen - To limit or disable access from hosts of the internal - network to services of the public Internet. + a belsõ hálózatban levõ + gépek elérését tudjuk + korlátozni vagy letiltani az interneten + elérhetõ szolgáltatások + felé - To support network address translation - (NAT), which allows your internal network - to use private IP addresses and share a - single connection to the public Internet (either with a - single IP address or by a shared pool of - automatically assigned public addresses). + a hálózati címfordítás + (Network Address Translation, NAT) + beállításához, ahol a belsõ + hálózatunk privát + IP-címeket használnak + és egy közös kapcsolaton keresztül + érik el az internetet (vagy egyetlen + IP-cím, vagy pedig automatikusan + kiosztott publikus címekkel). - After reading this chapter, you will know: + A fejezet elolvasása során + megismerjük: - How to properly define packet filtering rules. + hogyan adjuk meg helyesen a csomagok + szûrését leíró + szabályokat - The differences between the firewalls - built into &os;. + a &os;-be épített tûzfalak közti + különbségeket - How to use and configure the OpenBSD - PF firewall. + hogyan állítsuk be és + használjuk az OpenBSD PF + tûzfalát - How to use and configure - IPFILTER. + hogyan állítsuk be és + használjuk az IPFILTER + tûzfalat - How to use and configure - IPFW. + hogyan állítsuk be és + használjuk az IPFW + tûzfalat - Before reading this chapter, you should: + A fejezet elolvasása elõtt ajánlott: - Understand basic &os; and Internet concepts. + a &os;-hez és az internethez kötõdõ + alapvetõ fogalmak ismerete - Firewall Concepts + Röviden a tûzfalakról - firewall + tûzfalak + szabályrendszerei + - rulesets - + A tûzfalak szabályrendszereit alapvetõen + kétféleképpen tudjuk + összeállítani: inkluzív, + vagyis megengedõ, illetve exkluzív + vagyis kizáró módon. Az exkluzív + tûzfalak minden forgalmat átengednek, amirõl nem + rendelkeznek a tûzfal szabályai. Az inkluzív + tûzfalak ennek pontosan az ellenkezõjét teszik. + Csak azt a forgalmat engedik át, amirõl van + szabály és minden mást blokkolnak. - There are two basic ways to create firewall rulesets: - inclusive or exclusive. An - exclusive firewall allows all traffic through except for the - traffic matching the ruleset. An inclusive firewall does the - reverse. It only allows traffic matching the rules through and - blocks everything else. + Az inkluzív tûzfalak általában + biztonságosabbak az exkluzív társaiknál, + mivel esetükben jelentõs mértékben + visszaszorul az átfolyó nem kívánatos + forgalom. - Inclusive firewalls are generally safer than exclusive - firewalls because they significantly reduce the risk of allowing - unwanted traffic to pass through the firewall. + A védelem még tovább fokozható az + állapottartó tûzfalak (stateful + firewall) használatával. Ilyenkor a tûzfal + szemmel tartja a rajta keresztül megnyitott kapcsolatokat, + és vagy csak a már meglevõ kapcsolathoz + tartozó forgalmat engedi át vagy nyit egy + újat. Az állapottartó tûzfalak + hátránya, hogy a Denial of Service + (DoS) típusú + támadásokkal szemben sokkal + sérülékenyebbek, amikor az új + kapcsolatok nagyon gyorsan jönnek létre. A + legtöbb tûzfal esetében azonban tudjuk + vegyíteni az állapottartó és nem + állapottartó viselkedést, és ezzel egy + ideális beállítást + kialakítani. - Security can be tightened further using a stateful - firewall. With a stateful firewall the firewall keeps - track of which connections are opened through the firewall and - will only allow traffic through which either matches an existing - connection or opens a new one. The disadvantage of a stateful - firewall is that it can be vulnerable to Denial of Service - (DoS) attacks if a lot of new connections are - opened very fast. With most firewalls it is possible to use a - combination of stateful and non-stateful behavior to make an - optimal firewall for the site. - Firewall Packages + Tûzfalak + + A &os; alaprendszerébe három + különbözõ tûzfalat építettek + be. Ezek: az IPFILTER (másik + nevén IPF), az + IPFIREWALL (más néven + IPFW) és az OpenBSD + csomagszûrõje (Packet Filter, azaz + PF). A forgalom + szabályozására (vagyis alapvetõen a + sávszélesség + kihasználtságának + vezérlésére) a &os; két + beépített csomagot tartalmaz: ez az &man.altq.4; + és a &man.dummynet.4;. Általában a Dummynet + az IPFW, míg az ALTQ + a PF partnere. Az IPFILTER + esetében maga az IPFILTER végzi a + címfordítást és a szûrést, + a sávszélességet pedig az + IPFW a &man.dummynet.4; + vagy a PF az + ALTQ segítségével. Az + IPFW és a PF + szabályokkal rendelkezik a rendszerünkbe + érkezõ vagy onnan távozó + csomagokról, habár megoldásaik teljesen + máshogy mûködnek és a szabályok + felírási módja is eltér. - &os; has three different firewall packages built - into the base system. They are: IPFILTER - (also known as IPF), - IPFIREWALL (also known as IPFW), - and OpenBSD's PacketFilter (also known as - PF). &os; also has two built in packages for - traffic shaping (basically controlling bandwidth usage): - &man.altq.4; and &man.dummynet.4;. Dummynet has traditionally been - closely tied with IPFW, and - ALTQ with - PF. Traffic shaping for IPFILTER can currently - be done with IPFILTER for NAT and filtering and - IPFW with &man.dummynet.4; - or by using PF with - ALTQ. - IPFW, and PF all use rules to control the access of packets to and - from your system, although they go about it different ways and - have different rule syntaxes. + A &os; azért tartalmaz egyszerre ennyi tûzfalat, + mert az emberek elvárásai és igényei + egyénenként eltérnek. Egyikõjük + sem tekinthetõ a legjobbnak. - The reason that &os; has multiple built in firewall packages - is that different people have different requirements and - preferences. No single firewall package is the best. + A szerzõ egyébként az IPFILTER + megoldását részesíti elõnyben, + mivel egy hálózati címfordítást + alkalmazó környezetben sokkal könnyebb vele + megfogalmazni az állapottartó szabályokat, + valamint tartalmaz egy beépített FTP proxy-t is, + amivel a kimenõ FTP kapcsolatok + beállítása tovább + egyszerûsödik. - The author prefers IPFILTER because its stateful rules are - much less complicated to use in a NAT - environment and it has a built in ftp proxy that simplifies the - rules to allow secure outbound FTP usage. + Mivel az összes tûzfal a csomagok + fejlécének bizonyos mezõinek alapján + dolgozik, ezért a tûzfal + szabályrendszerét megalkotó egyénnek + teljesen tisztában kell lennie a + TCP/IP + mûködésével, továbbá azzal, + hogy ezekben a mezõkben milyen értékek + szerepelhetnek és ezeket hogyan használják + egy átlagos kapcsolat alatt. Ebben a témában + a + címen találhatunk egy remek ismertetõt + (angolul). - Since all firewalls are based on inspecting the values of - selected packet control fields, the creator of the firewall - rulesets must have an understanding of how - TCP/IP works, what the different values in - the packet control fields are and how these values are used in a - normal session conversation. For a good explanation go to: - . - The OpenBSD Packet Filter (PF) and + <title>Az OpenBSD csomagszûrõje (PF) és az <acronym>ALTQ</acronym> - firewall - + tûzfalak PF - As of July 2003 the OpenBSD firewall software application - known as PF was ported to &os; and was made - available in the &os; Ports Collection; the first release that - contained PF as an integrated part of the - base system was &os; 5.3 in November 2004. - PF is a complete, fully featured firewall - that has optional support for ALTQ (Alternate - Queuing). ALTQ provides Quality of Service - (QoS) bandwidth shaping that allows - guaranteeing bandwidth to different services based on filtering - rules. The OpenBSD Project does an outstanding job of - maintaining the PF User's Guide that it will not be made part of - this handbook firewall section as that would just be duplicated - effort. + 2003. júliusában az OpenBSD + PF néven ismert + csomagszûrõjét átírták + &os;-re és elérhetõvé tették a + &os; Portgyûjteményének + részeként. A PF programot + beépítetten tartalmazó elsõ + kiadás pedig 2004. novemberében a &os; 5.3 + volt. A PF egy teljes, mindentudó + tûzfal, ami támogatja az ún. + ALTQ (Alternate Queuing, vagyis a + váltóbesorolás) + megoldást. Az ALTQ lehetõvé + teszi a sávszélesség + korlátozását a szolgáltatás + minõsége (Quality of Service, QoS) + alapján, aminek köszönhetõen a + különbözõ szolgáltatások a + szûrési szabályok mentén garanált + sávszélességhez juthatnak. Az OpenBSD + projekt kiváló munkát végez a PF + felhasználói útmutatójának + karbantartásával, amit így most nem is + teszük be a kézikönyvbe, mivel ezzel csak + feleslegesen másolnánk. - More info can be found at the PF for &os; web site: . + A PF &os;-n történõ + használatáról a honlapon + olvashatunk többet (angolul). - Enabling PF + A PF engedélyezése - PF is included in the basic &os; install for versions newer - than 5.3 as a separate run time loadable module. The system - will dynamically load the PF kernel loadable module when the - rc.conf statement pf_enable="YES" is used. - The loadable module was created with &man.pflog.4; logging - enabled. + A PF a &os; 5.3 verziója utáni + kiadásokban az alaprendszer része, amit a rendszer + mûködése közben egy külön modul + betöltésével aktiválhatunk. Ha az + rc.conf állományban megadjuk + a pf_enable="YES" sort, akkor a rendszer + magától be is tölti a PF-hez tartozó + rendszermag modult. Ez a betölthetõ modul + egyébként még a &man.pflog.4; + felületen keresztüli naplózást is + engedélyezi. - The module assumes the presence of options - INET and device bpf. Unless - NOINET6 for &os; prior to 6.0-RELEASE and - NO_INET6 for later releases (for example in - &man.make.conf.5;) was defined during the build, it also - requires options INET6. + A modul feltételezi a options + INET és device bpf sorok + jelenlétét. Hacsak nem adtuk meg &os; + 6.0-RELEASE elõtti verzióban a + NOINET6, ill. az utáni + következõ verziókban a + NO_INET6 beállítást + (például a &man.make.conf.5; + állományban) a rendszer + fordítására vonatkozóan, akkor a + options INET6 + beállításra is szükség + lesz. - Once the kernel module is loaded or the kernel is statically - built with PF support, it is possible to enable or disable - pf with the pfctl - command. + Ahogy betöltõdött a modul, vagy ha már + eleve a rendszermagba építettük a PF + támogatását, a + pf használatát a + pfctl paranccsal tudjuk engedélyezni + vagy letiltani. - This example demonstrates how to enable - pf: + Ebben a példában a + pf engedélyezését + láthatjuk: &prompt.root; pfctl -e - The pfctl command provides a way to work - with the pf firewall. It is a good - idea to check the &man.pfctl.8; manual page to find out more - information about using it. + A pfctl parancs + segítségével könnyedén lehet + irányítani a pf + mûködését. A + használatáról többet úgy + tudhatunk meg, ha elolvassuk a &man.pfctl.8; man oldalt. + - Kernel options + A rendszermag beállításai - kernel options - + a rendszermag + beállításai device pf - kernel options - + a rendszermag + beállításai device pflog - kernel options - + a rendszermag + beállításai device pfsync - It is not a mandatory requirement that you enable PF by - compiling the following options into the &os; kernel. It is - only presented here as background information. Compiling PF - into the kernel causes the loadable module to never be - used. + Egyáltalán nem fontos a PF + támogatását beépíteni a + rendszermagba. Az itt szereplõ információk + csupán kiegészítésként + szerepelnek. Ha a PF használatát beletesszük + a rendszermagba, akkor a modulra már nincs + szükségünk. - Sample kernel config PF option statements are in the - /usr/src/sys/conf/NOTES kernel source and - are reproduced here: + A rendszermag forrásai között + található + /usr/src/sys/conf/NOTES + állományban a PF + beállításaira vonatkozó + utasítások így foglalhatóak + össze: device pf device pflog device pfsync - device pf enables support for the - Packet Filter firewall. + A device pf engedélyezi a + csomagszûrõ tûzfalat. + + A device pflog megadásával + keletkezik egy &man.pflog.4; pszeudo hálózati + eszköz, amivel egy &man.bpf.4; leíróra + érkezõ forgalmat tudunk naplózni. A + &man.pflogd.8; démon használható + ezután tõle származó naplózott + adatok rögzítésére. - device pflog enables the optional - &man.pflog.4; pseudo network device which can be used to log - traffic to a &man.bpf.4; descriptor. The &man.pflogd.8; daemon - can be used to store the logging information to disk. + A device pfsync engedélyezi a + &man.pfsync.4; pszeudo hálózati eszköz + létrejöttét, ami az ún. + állapotváltások + megfigyelésére alkalmas. Mivel ez nem + része a betölthetõ modulnak, ezért egy + saját rendszermagot kell készíteni a + használatához. - device pfsync enables the optional - &man.pfsync.4; pseudo network device that is used to monitor - state changes. As this is not part of the - loadable module one has to build a custom kernel to use - it. + Ezek a beállítások csak akkor + lépnek érvénybe, ha fordítunk + velük egy saját rendszermagot és + telepítjük azt. - These settings will take effect only after you have built - and installed a kernel with them set. - Available rc.conf Options + Az <filename>rc.conf</filename> állományban + elérhetõ beállítások + + Az /etc/rc.conf + állományba a következõket kell + betennünk ahhoz, hogy a PF a rendszer + indítása során + aktivizálódjon: - You need the following statements in - /etc/rc.conf to activate PF at boot - time: + pf_enable="YES" # a PF engedélyezése (a modul betöltése, ha kell) +pf_rules="/etc/pf.conf" # a pf szabályait tartalmazó állomány +pf_flags="" # a pfctl indításához szükséges további paraméterek +pflog_enable="YES" # a pflogd(8) elindítása +pflog_logfile="/var/log/pflog" # hol tartsa a pflogd az naplóit +pflog_flags="" # a pflogd indításához szükséges paraméterek - pf_enable="YES" # Enable PF (load module if required) -pf_rules="/etc/pf.conf" # rules definition file for pf -pf_flags="" # additional flags for pfctl startup -pflog_enable="YES" # start pflogd(8) -pflog_logfile="/var/log/pflog" # where pflogd should store the logfile -pflog_flags="" # additional flags for pflogd startup + Ha a tûzfalunk mögött egy helyi + hálózat is meghúzódik, akkor az ott + levõ gépek számára valamilyen + módon tudni kell továbbítani a csomagokat + vagy címfordítást kell végezni, + így ez a beállítás is + mindenképpen kelleni fog: - If you have a LAN behind this firewall and have to forward - packets for the computers in the LAN or want to do NAT, you - have to enable the following option as well: + gateway_enable="YES" # az átjárói funkciók engedélyezése - gateway_enable="YES" # Enable as LAN gateway - Enabling <acronym>ALTQ</acronym> + Az <acronym>ALTQ</acronym> engedélyezése - ALTQ is only available by compiling the - options into the &os; Kernel. ALTQ is not - supported by all of the available network card drivers. Please - see the &man.altq.4; manual page for a list of drivers that are - supported in your release of &os;. The following options will - enable ALTQ and add additional - functionality. + Az ALTQ kizárólag csak + úgy érhetõ el, ha belefordítjuk a &os; + rendszermagjába. Az ALTQ nem minden + hálózati kártya részérõl + támogatott. Az &man.altq.4; man oldalán + megtalálhatjuk a &os; aktuális + kiadásában szereplõ támogató + meghajtók listáját. A következõ + beállítások az ALTQ + további lehetõségeit igyekeznek + engedélyezni. options ALTQ -options ALTQ_CBQ # Class Bases Queuing (CBQ) -options ALTQ_RED # Random Early Detection (RED) -options ALTQ_RIO # RED In/Out -options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC) -options ALTQ_PRIQ # Priority Queuing (PRIQ) -options ALTQ_NOPCC # Required for SMP build +options ALTQ_CBQ # osztályozás alapú besorolás (Class Bases Queuing, CBQ) +options ALTQ_RED # véletlen korai észlelés (Random Early Detection, RED) +options ALTQ_RIO # RED befele/kifele +options ALTQ_HFSC # hiearchikus csomagütemezõ (Hierarchical Packet Scheduler, HFSC) +options ALTQ_PRIQ # prioritásos besorolás (Priority Queuing, PRIQ) +options ALTQ_NOPCC # az SMP esetén kell + + Az options ALTQ az + ALTQ rendszert engedélyezi. - options ALTQ enables the - ALTQ framework. + Az options ALTQ_CBQ engedélyezi a + osztályozás alapú besorolást (Class + Based Queuing, CBQ). A + CBQ használatával a + kapcsolatunkhoz tartozó + sávszélességet + különbözõ osztályokra vagy sorokra + tudjuk szedni, és a szûrési + szabályoknak megfelelõen osztályozni + segítségükkel a forgalmat. - options ALTQ_CBQ enables Class Based - Queuing (CBQ). CBQ - allows you to divide a connection's bandwidth into different - classes or queues to prioritize traffic based on filter - rules. + Az options ALTQ_RED a véletlen + korai észlelés (Random Early Detection, + RED) használatát + engedélyezi. A RED a + hálózati forgalomban keletkezõ + torlódások elkerülésére + alkalmas. A RED ezt a + problémát úgy oldja meg, hogy méri a + sorok hosszát és összeveti a + hozzátartozó minimális és + maximális küszöbértékekkel. Ha a + sor hossza meghaladja a számára elõírt + maximális értéket, akkor az új + csomagokat eldobja. Nevéhez hûen a + RED az eldobásra ítélt + csomagokat véletlenszerûen választja + ki. - options ALTQ_RED enables Random Early - Detection (RED). RED is - used to avoid network congestion. RED does - this by measuring the length of the queue and comparing it to - the minimum and maximum thresholds for the queue. If the - queue is over the maximum all new packets will be dropped. - True to its name, RED drops packets from - different connections randomly. + Az options ALTQ_RIO engedélyezi a + RED használatát mind a + két irányba, tehát be- és + kifelé. - options ALTQ_RIO enables Random Early - Detection In and Out. + Az options ALTQ_HFSC a pártatlan + hierachikus szolgáltatási görbe alapú + csomagütemezõt (Hierarchical Fair Service Curve Packet + Scheduler, HFSC) engedélyezi. Vele + kapcsolatban a + címen találhatunk bõvebben + olvasnivalót (angolul). - options ALTQ_HFSC enables the - Hierarchical Fair Service Curve Packet Scheduler. For more - information about HFSC see: . + Az options ALTQ_PRIQ a prioritásos + besorolást (Priority Queuing, PRIQ) + teszi elérhetõvé. A PRIQ + mindig elsõként a nagyobb értékû + sorban levõ forgalmat továbbítja. - options ALTQ_PRIQ enables Priority - Queuing (PRIQ). PRIQ - will always pass traffic that is in a higher queue - first. + Az options ALTQ_NOPCC az + ALTQ SMP, vagyis + többprocesszoros támogatását adja meg. + Ilyen típusú rendszerekben ez + kötelezõ. - options ALTQ_NOPCC enables - SMP support for ALTQ. - This option is required on SMP - systems. - Creating Filtering Rules + A szûrési szabályok + megfogalmazása - The Packet Filter reads its configuration rules from the - &man.pf.conf.5; file and it modifies, drops or passes packets - according to the rules or definitions specified there. The &os; - installation comes with a default - /etc/pf.conf which contains useful examples - and explanations. + A csomagszûrõ a &man.pf.conf.5; + állományból olvassa be a szabályokat + és a benne szereplõ szabályok vagy + definíciók alapján módosítja, + eldobja vagy átengedi a csomagokat. A &os; + telepítésében alapértelmezés + szerint az /etc/pf.conf + állomány látja el ennek szerepét, + ami számos hasznos példát és + magyarázatot tartalmaz. - Although &os; has its own /etc/pf.conf - the syntax is the same as one used in OpenBSD. A great - resource for configuring the pf - firewall has been written by OpenBSD team and is available at - . + Noha a &os; saját /etc/pf.conf + állománnyal rendelkezik, a + felépítése mégis + tökéletesen megegyezik az OpenBSD-ben + használatossal. A pf + tûzfal beállításával az OpenBSD + csapat által írt nagyszerû írás + foglalkozik, ami a címrõl + érhetõ el (angolul). - When browsing the pf user's guide, please keep in mind that - different versions of &os; contain different versions of pf. The - pf firewall in &os; 5.X is at the level - of OpenBSD version 3.5 and in &os; 6.X is at the level of OpenBSD - version 3.7. + A pf felhasználói + útmutatóját olvasgatva azonban soha nem + szabad elfelejtenünk, hogy &os; egyes változatai a + pf különbözõ + verzióit tartalmazzák. A &os; 5.X + ágában az OpenBSD 3.5 + pf tûzfalát, míg + a &os; 6.X változataiban az OpenBSD 3.7 szerinti + verzióját találjuk. - The &a.pf; is a good place to ask questions about - configuring and running the pf - firewall. Do not forget to check the mailing list archives - before asking questions. + A &a.pf; kitûnõ hely a + pf + beállításával és + mûködtetésével kapcsolatos + kérdések feltevésére. Viszont + mielõtt itt kérdeznénk, ne felejtsük el + átnézni a levelezési lista + archívumait sem. + - The IPFILTER (IPF) Firewall + Az IPFILTER (IPF) tûzfal - firewall - + tûzfalak IPFILTER - This section is work in progress. The contents might - not be accurate at all times. + Ez a szakasz fejlesztés alatt áll. Ennek + megfelelõen a tartalma nem minden esetben pontos. - The author of IPFILTER is Darren Reed. IPFILTER is not - operating system dependent: it is an open source application and - has been ported to &os;, NetBSD, OpenBSD, &sunos;, HP/UX, and - &solaris; operating systems. IPFILTER is actively being - supported and maintained, with updated versions being released - regularly. + Az IPFILTER szerzõje Darren Reed. Az IPFILTER nem + kötõdik egyik rendszerhez sem: ez egy olyan nyílt + forráskódú alkalmazás, amit + átírtak &os;, NetBSD, OpenBSD, &sunos;, HP/UX + és &solaris; operációs rendszerekre. Az + IPFILTER karbantartása és támogatása + pillanatnyilag is aktív, folyamatosan jelennek meg + újabb változatai. - IPFILTER is based on a kernel-side firewall and - NAT mechanism that can be controlled and - monitored by userland interface programs. The firewall rules can - be set or deleted with the &man.ipf.8; utility. The - NAT rules can be set or deleted with the - &man.ipnat.1; utility. The &man.ipfstat.8; utility can print - run-time statistics for the kernel parts of IPFILTER. The - &man.ipmon.8; program can log IPFILTER actions to the system log - files. + Az IPFILTER egy rendszermag oldalán + mûködõ tûzfalazási és egy + címfordítási mechanizmusra alapszik, amit + felhasználói programokkal tudunk felügyelni + és vezérelni. A tûzfal szabályai a + &man.ipf.8; segédprogrammal + állíthatóak be vagy + törölhetõek. A hálózati + címfordításra vonatkozó + szabályokat a &man.ipnat.1; segédprogrammal + állíthatjuk be vagy törölhetjük. A + &man.ipfstat.8; segédprogram képes futás + közben statisztikákat készíteni az + IPFILTER rendszermagban elhelyezkedõ részeinek + viselkedésérõl. A &man.ipmon.8; program pedig + az IPFILTER cselekvéseit képes a + rendszernaplókba feljegyezni. - IPF was originally written using a rule processing logic of - the last matching rule wins and used only - stateless type of rules. Over time IPF has been enhanced to - include a quick option and a stateful keep - state option which drastically modernized the rules - processing logic. IPF's official documentation covers the legacy - rule coding parameters and the legacy rule file processing - logic. The modernized functions are only included as additional - options, completely understating their benefits in producing a - far superior secure firewall. + Az IPF eredetileg olyan szabályfeldolgozási + módszer szerint készült, amiben az + utolsó egyezõ szabály nyer és + csak állapotnélküli szabályokat ismert. + Az idõ múlásával az IPF + részévé vált a quick + opció és a keep state opción + keresztül az állapottartás is, melyek + drámai mértékben + korszerûsítették a szabályok + feldolgozásának elvét. Az IPF hivatalos + dokumentációja tartalmazza a régi + szabályok létrehozását és azok + feldolgozásának leírását. A + korszerûsített funkciók csak + kiegészítésképpen jelennek meg, + és az általuk felkínált + elõnyök megértése egy sokkal magasabb + szintû és biztonságosabb tûzfal + megépítését teszik + lehetõvé. - The instructions contained in this section are based on - using rules that contain the quick option and the - stateful keep state option. This is the basic - framework for coding an inclusive firewall rule set. + A szakaszban szereplõ utasításokban olyan + szabályok szerepelnek, amik kihasználják a + quick és keep state + opciókat. Ezek az inkluzív + tûzfalszabályok létrehozásának + alapjai. - + Az inkluzív tûzfalak csak olyan csomagokat + engednek keresztül, amik megfelelnek a szabályoknak. + Ezen módon képesek vagyunk megmondani, hogy a + tûzfal mögül milyen szolgáltatások + érhetõek el az interneten és + segítségével azt is megadhatjuk, hogy az + internetrõl a belsõ hálózatunkon milyen + szolgáltatásokat érhetnek el. A tûzfal + alapból minden mást visszautasít és + naplóz. Az inkluzív tûzfalak sokkal de sokkal + megbízhatóbbak az exkluzív + tûzfalaknál, ezért itt most csak ilyenekkel + foglalkozunk. - An inclusive firewall only allows packets matching the rules - to pass through. This way you can control what services can - originate behind the firewall destined for the public Internet - and also control the services which can originate from the - public Internet accessing your private network. Everything else - is blocked and logged by default design. Inclusive firewalls are - much, much more secure than exclusive firewall rule sets and is - the only rule set type covered herein. + A régi típusú szabályokról + a + és + címeken olvashatunk (angolul). - For detailed explanation of the legacy rules processing - method see: - and . + Az IPF gyakran ismételt kérdései a címen + érhetõek el (angolul). - The IPF FAQ is at . - - A searchable archive of the open-source IPFilter mailing list is - available at . + A nyílt forrású IPFilter + levelezési list kereshetõ archívumait a + címen találjuk (angolul). - Enabling IPF + Az IPF engedélyezése IPFILTER + engedélyezés + - enabling - + Az IPF megtalálható a &os; + alaptelepítésében mint menet közben + külön betölthetõ modul. Ha az + rc.conf állományba + beírjuk a ipfilter_enable="YES" sort, + akkor ez a modul dinamikusan betöltõdik. A + betölthetõ modul alapból naplóz + és a default pass all + beállítást tartalmazza. Ha helyette a >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Feb 24 14:13:42 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CEA4416A404; Sun, 24 Feb 2008 14:13:41 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 91BD016A400 for ; Sun, 24 Feb 2008 14:13:41 +0000 (UTC) (envelope-from raj@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 761CF13C4D3 for ; Sun, 24 Feb 2008 14:13:41 +0000 (UTC) (envelope-from raj@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OEDfuQ046357 for ; Sun, 24 Feb 2008 14:13:41 GMT (envelope-from raj@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OEDev0046354 for perforce@freebsd.org; Sun, 24 Feb 2008 14:13:40 GMT (envelope-from raj@freebsd.org) Date: Sun, 24 Feb 2008 14:13:40 GMT Message-Id: <200802241413.m1OEDev0046354@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to raj@freebsd.org using -f From: Rafal Jaworowski To: Perforce Change Reviews Cc: Subject: PERFORCE change 136083 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 14:13:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=136083 Change 136083 by raj@raj_mimi on 2008/02/24 14:13:27 Eliminate unused code. Affected files ... .. //depot/projects/e500/sys/powerpc/booke/interrupt.c#5 edit .. //depot/projects/e500/sys/powerpc/include/trap.h#5 edit Differences ... ==== //depot/projects/e500/sys/powerpc/booke/interrupt.c#5 (text+ko) ==== @@ -71,8 +71,6 @@ static void dump_frame(struct trapframe *framep); -void unserviced_intr(struct trapframe *); - static void dump_frame(struct trapframe *frame) { @@ -138,46 +136,3 @@ PIC_DISPATCH(pic, framep); atomic_subtract_int(&td->td_intr_nesting_level, 1); } - -#ifdef INTR_DEBUG - -/* XXX temporary handler for development purposes - DELETEME LATER */ -void -unserviced_intr(struct trapframe *framep) -{ - printf("\n#### Unhandled interrupt ####\n"); - dump_frame(framep); - while(1); -} - -void -dump_savearea(register_t *sa) -{ - int i, j; - - for (i = 0; i < TLB_NESTED_MAX; i++) { - printf(" tlb_nested_level = %d\n", i); - - printf(" LR = 0x%08x\n", sa[TLBSAVE_LR]); - printf(" CR = 0x%08x\n", sa[TLBSAVE_CR]); - printf(" SRR0 = 0x%08x\n", sa[TLBSAVE_SRR0]); - printf(" SRR1 = 0x%08x\n", sa[TLBSAVE_SRR1]); - for (j = TLBSAVE_R20; j <= TLBSAVE_R31; j++) { - printf(" R%02d = 0x%08x", j - TLBSAVE_R20 + 20, sa[j]); - if ((i & 0x3) == 3) - printf("\n"); - } - printf("\n"); - sa = sa + TLBSAVE_LEN; - } -} - -void -dump_pcpu(struct pcpu *pc) -{ - printf("pc_tlbsave:\n"); - printf(" current pc_tlb_level = %d\n", pc->pc_tlb_level); - dump_savearea(pc->pc_tlbsave); -} - -#endif ==== //depot/projects/e500/sys/powerpc/include/trap.h#5 (text+ko) ==== @@ -1,119 +1,9 @@ -/*- - * Copyright (C) 1995, 1996 Wolfgang Solfrank. - * Copyright (C) 1995, 1996 TooLs GmbH. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by TooLs GmbH. - * 4. The name of TooLs GmbH may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; - * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR - * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF - * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * $NetBSD: trap.h,v 1.7 2002/02/22 13:51:40 kleink Exp $ - * $FreeBSD: src/sys/powerpc/include/trap.h,v 1.5 2007/08/07 18:39:28 marcel Exp $ - */ - #if defined(AIM) #include #elif defined(E500) #include #endif -#if 0 -#ifndef _POWERPC_TRAP_H_ -#define _POWERPC_TRAP_H_ - -#define EXC_RSVD 0x0000 /* Reserved */ -#define EXC_RST 0x0100 /* Reset; all but IBM4xx */ -#define EXC_MCHK 0x0200 /* Machine Check */ -#define EXC_DSI 0x0300 /* Data Storage Interrupt */ -#define EXC_ISI 0x0400 /* Instruction Storage Interrupt */ -#define EXC_EXI 0x0500 /* External Interrupt */ -#define EXC_ALI 0x0600 /* Alignment Interrupt */ -#define EXC_PGM 0x0700 /* Program Interrupt */ -#define EXC_FPU 0x0800 /* Floating-point Unavailable */ -#define EXC_DECR 0x0900 /* Decrementer Interrupt */ -#define EXC_SC 0x0c00 /* System Call */ -#define EXC_TRC 0x0d00 /* Trace */ -#define EXC_FPA 0x0e00 /* Floating-point Assist */ - -/* The following is only available on the 601: */ -#define EXC_RUNMODETRC 0x2000 /* Run Mode/Trace Exception */ - -/* The following are only available on 7400(G4): */ -#define EXC_VEC 0x0f20 /* AltiVec Unavailable */ -#define EXC_VECAST 0x1600 /* AltiVec Assist */ - -/* The following are only available on 604/750/7400: */ -#define EXC_PERF 0x0f00 /* Performance Monitoring */ -#define EXC_BPT 0x1300 /* Instruction Breakpoint */ -#define EXC_SMI 0x1400 /* System Managment Interrupt */ - -/* The following are only available on 750/7400: */ -#define EXC_THRM 0x1700 /* Thermal Management Interrupt */ - -/* And these are only on the 603: */ -#define EXC_IMISS 0x1000 /* Instruction translation miss */ -#define EXC_DLMISS 0x1100 /* Data load translation miss */ -#define EXC_DSMISS 0x1200 /* Data store translation miss */ - -/* The following are only available on 405 (and 403?) */ -#define EXC_CII 0x0100 /* Critical Input Interrupt */ -#define EXC_PIT 0x1000 /* Programmable Interval Timer */ -#define EXC_FIT 0x1010 /* Fixed Interval Timer */ -#define EXC_WDOG 0x1020 /* Watchdog Timer */ -#define EXC_DTMISS 0x1100 /* Data TLB Miss */ -#define EXC_ITMISS 0x1200 /* Instruction TLB Miss */ -#define EXC_DEBUG 0x2000 /* Debug trap */ - -#define EXC_LAST 0x2f00 /* Last possible exception vector */ - -#define EXC_AST 0x3000 /* Fake AST vector */ - -/* Trap was in user mode */ -#define EXC_USER 0x10000 - - -/* - * EXC_ALI sets bits in the DSISR and DAR to provide enough - * information to recover from the unaligned access without needing to - * parse the offending instruction. This includes certain bits of the - * opcode, and information about what registers are used. The opcode - * indicator values below come from Appendix F of Book III of "The - * PowerPC Architecture". - */ - -#define EXC_ALI_OPCODE_INDICATOR(dsisr) ((dsisr >> 10) & 0x7f) -#define EXC_ALI_LFD 0x09 -#define EXC_ALI_STFD 0x0b - -/* Macros to extract register information */ -#define EXC_ALI_RST(dsisr) ((dsisr >> 5) & 0x1f) /* source or target */ -#define EXC_ALI_RA(dsisr) (dsisr & 0x1f) - -#endif /* _POWERPC_TRAP_H_ */ - -#endif /* if 0 commenting all the above out */ - #ifndef LOCORE struct trapframe; void trap(struct trapframe *); From owner-p4-projects@FreeBSD.ORG Sun Feb 24 14:30:11 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 933B716A402; Sun, 24 Feb 2008 14:30:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 556F016A400 for ; Sun, 24 Feb 2008 14:30:11 +0000 (UTC) (envelope-from raj@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 2082813C465 for ; Sun, 24 Feb 2008 14:30:11 +0000 (UTC) (envelope-from raj@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OEUB30046978 for ; Sun, 24 Feb 2008 14:30:11 GMT (envelope-from raj@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OEUAVv046975 for perforce@freebsd.org; Sun, 24 Feb 2008 14:30:10 GMT (envelope-from raj@freebsd.org) Date: Sun, 24 Feb 2008 14:30:10 GMT Message-Id: <200802241430.m1OEUAVv046975@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to raj@freebsd.org using -f From: Rafal Jaworowski To: Perforce Change Reviews Cc: Subject: PERFORCE change 136085 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 14:30:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=136085 Change 136085 by raj@raj_mimi on 2008/02/24 14:29:16 Clean up kernel config files for the Freescale MPC85XX. We now have a KERNCONF=MPC85XX Affected files ... .. //depot/projects/e500/sys/powerpc/conf/JUNIPER#5 delete .. //depot/projects/e500/sys/powerpc/conf/MORNINGSTAR#2 delete .. //depot/projects/e500/sys/powerpc/conf/MPC85XX#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sun Feb 24 14:31:16 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 62D2416A403; Sun, 24 Feb 2008 14:31:16 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 241DC16A405 for ; Sun, 24 Feb 2008 14:31:16 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 05BDA13C45D for ; Sun, 24 Feb 2008 14:31:16 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OEVFFW047019 for ; Sun, 24 Feb 2008 14:31:15 GMT (envelope-from sephe@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OEVCUs047016 for perforce@freebsd.org; Sun, 24 Feb 2008 14:31:12 GMT (envelope-from sephe@FreeBSD.org) Date: Sun, 24 Feb 2008 14:31:12 GMT Message-Id: <200802241431.m1OEVCUs047016@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sephe@FreeBSD.org using -f From: Sepherosa Ziehau To: Perforce Change Reviews Cc: Subject: PERFORCE change 136086 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 14:31:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=136086 Change 136086 by sephe@sephe_enigma:sam_wifi on 2008/02/24 14:31:01 IFC Affected files ... .. //depot/projects/wifi/ObsoleteFiles.inc#27 integrate .. //depot/projects/wifi/UPDATING#40 integrate .. //depot/projects/wifi/bin/sh/mksyntax.c#3 integrate .. //depot/projects/wifi/contrib/traceroute/as.c#1 branch .. //depot/projects/wifi/contrib/traceroute/as.h#1 branch .. //depot/projects/wifi/contrib/traceroute/traceroute.8#5 integrate .. //depot/projects/wifi/contrib/traceroute/traceroute.c#8 integrate .. //depot/projects/wifi/etc/mail/access.sample#2 integrate .. //depot/projects/wifi/etc/sendmail/freebsd.mc#7 integrate .. //depot/projects/wifi/games/fortune/strfile/strfile.c#4 integrate .. //depot/projects/wifi/gnu/usr.bin/binutils/ar/Makefile#3 integrate .. //depot/projects/wifi/gnu/usr.bin/binutils/ranlib/Makefile#3 integrate .. //depot/projects/wifi/gnu/usr.bin/groff/tmac/mdoc.local#11 integrate .. //depot/projects/wifi/gnu/usr.bin/man/man/man.c#4 integrate .. //depot/projects/wifi/gnu/usr.bin/man/manpath/manpath.c#2 integrate .. //depot/projects/wifi/lib/libarchive/archive_entry_strmode.c#2 integrate .. //depot/projects/wifi/lib/libarchive/archive_platform.h#15 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_open_filename.c#5 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_compression_bzip2.c#10 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_compression_gzip.c#9 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_ar.c#5 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_iso9660.c#14 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_mtree.c#2 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_disk.c#11 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_open_filename.c#3 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_compression_gzip.c#9 integrate .. //depot/projects/wifi/lib/libarchive/config_freebsd.h#5 integrate .. //depot/projects/wifi/lib/libarchive/test/main.c#9 integrate .. //depot/projects/wifi/lib/libarchive/test/test.h#7 integrate .. //depot/projects/wifi/lib/libc/db/test/btree.tests/main.c#3 integrate .. //depot/projects/wifi/lib/libc/db/test/dbtest.c#3 integrate .. //depot/projects/wifi/lib/libc/regex/grot/main.c#2 integrate .. //depot/projects/wifi/lib/libc/resolv/res_comp.c#4 integrate .. //depot/projects/wifi/lib/libc/stdlib/malloc.3#10 integrate .. //depot/projects/wifi/lib/libc/stdlib/malloc.c#13 integrate .. //depot/projects/wifi/lib/libc/sys/mq_close.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/mq_getattr.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/mq_notify.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/mq_open.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/mq_receive.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/mq_send.2#3 integrate .. //depot/projects/wifi/lib/libc/sys/mq_setattr.2#3 integrate .. //depot/projects/wifi/lib/libdisk/disk.c#7 integrate .. //depot/projects/wifi/lib/libmilter/Makefile#5 integrate .. //depot/projects/wifi/lib/libthr/thread/thr_mutex.c#12 integrate .. //depot/projects/wifi/lib/msun/Makefile#19 integrate .. //depot/projects/wifi/lib/msun/Symbol.map#6 integrate .. //depot/projects/wifi/lib/msun/bsdsrc/b_exp.c#3 integrate .. //depot/projects/wifi/lib/msun/bsdsrc/b_log.c#4 integrate .. //depot/projects/wifi/lib/msun/bsdsrc/b_tgamma.c#5 integrate .. //depot/projects/wifi/lib/msun/ld128/k_cosl.c#1 branch .. //depot/projects/wifi/lib/msun/ld128/k_sinl.c#1 branch .. //depot/projects/wifi/lib/msun/ld128/k_tanl.c#1 branch .. //depot/projects/wifi/lib/msun/ld80/k_cosl.c#1 branch .. //depot/projects/wifi/lib/msun/ld80/k_sinl.c#1 branch .. //depot/projects/wifi/lib/msun/ld80/k_tanl.c#1 branch .. //depot/projects/wifi/lib/msun/man/cos.3#3 integrate .. //depot/projects/wifi/lib/msun/man/j0.3#4 integrate .. //depot/projects/wifi/lib/msun/man/lgamma.3#5 integrate .. //depot/projects/wifi/lib/msun/man/sin.3#3 integrate .. //depot/projects/wifi/lib/msun/man/tan.3#3 integrate .. //depot/projects/wifi/lib/msun/src/e_acos.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_acosf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_acosh.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_acoshf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_asin.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_asinf.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_atan2.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_atan2f.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_atanh.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_atanhf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_cosh.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_coshf.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_exp.c#4 integrate .. //depot/projects/wifi/lib/msun/src/e_expf.c#8 integrate .. //depot/projects/wifi/lib/msun/src/e_fmod.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_fmodf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_gamma.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_gamma_r.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_gammaf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_gammaf_r.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_hypot.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_hypotf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_j0.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_j0f.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_j1.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_j1f.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_jn.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_jnf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_lgamma.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_lgamma_r.c#4 integrate .. //depot/projects/wifi/lib/msun/src/e_lgammaf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_lgammaf_r.c#4 integrate .. //depot/projects/wifi/lib/msun/src/e_log.c#5 integrate .. //depot/projects/wifi/lib/msun/src/e_log10.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_log10f.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_logf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/e_pow.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_powf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/e_rem_pio2.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_rem_pio2f.c#5 integrate .. //depot/projects/wifi/lib/msun/src/e_scalb.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_scalbf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/e_sinh.c#3 integrate .. //depot/projects/wifi/lib/msun/src/e_sinhf.c#3 integrate .. //depot/projects/wifi/lib/msun/src/k_cos.c#5 integrate .. //depot/projects/wifi/lib/msun/src/k_cosf.c#5 integrate .. //depot/projects/wifi/lib/msun/src/k_rem_pio2.c#4 integrate .. //depot/projects/wifi/lib/msun/src/k_sin.c#4 integrate .. //depot/projects/wifi/lib/msun/src/k_sinf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/k_tan.c#4 integrate .. //depot/projects/wifi/lib/msun/src/k_tanf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/math.h#12 integrate .. //depot/projects/wifi/lib/msun/src/math_private.h#7 integrate .. //depot/projects/wifi/lib/msun/src/s_asinh.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_asinhf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_atan.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_atanf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_cbrt.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_cbrtf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/s_ceil.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_ceilf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_ceill.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_copysign.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_copysignf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_cos.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_cosf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/s_cosl.c#1 branch .. //depot/projects/wifi/lib/msun/src/s_erf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_erff.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_exp2.c#5 integrate .. //depot/projects/wifi/lib/msun/src/s_exp2f.c#5 integrate .. //depot/projects/wifi/lib/msun/src/s_fabsf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_finite.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_finitef.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_floor.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_floorf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_floorl.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_frexp.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_frexpf.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_ilogb.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_ilogbf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_ilogbl.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_logbf.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_modff.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_nextafter.c#4 integrate .. //depot/projects/wifi/lib/msun/src/s_nextafterf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/s_nextafterl.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_nexttoward.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_nexttowardf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_rint.c#5 integrate .. //depot/projects/wifi/lib/msun/src/s_rintf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/s_rintl.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_significand.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_significandf.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_sin.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_sinf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/s_sinl.c#1 branch .. //depot/projects/wifi/lib/msun/src/s_tan.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_tanf.c#4 integrate .. //depot/projects/wifi/lib/msun/src/s_tanh.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_tanhf.c#3 integrate .. //depot/projects/wifi/lib/msun/src/s_tanl.c#1 branch .. //depot/projects/wifi/lib/msun/src/s_tgammaf.c#1 branch .. //depot/projects/wifi/lib/msun/src/s_trunc.c#2 integrate .. //depot/projects/wifi/lib/msun/src/s_truncl.c#4 integrate .. //depot/projects/wifi/lib/msun/src/w_cabs.c#3 integrate .. //depot/projects/wifi/lib/ncurses/ncurses/Makefile#10 integrate .. //depot/projects/wifi/release/Makefile#23 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/relnotes/article.sgml#20 integrate .. //depot/projects/wifi/sbin/ipfw/ipfw.8#26 integrate .. //depot/projects/wifi/sbin/ipfw/ipfw2.c#24 integrate .. //depot/projects/wifi/sbin/mount/getmntopts.3#3 integrate .. //depot/projects/wifi/sbin/mount_nfs/mount_nfs.c#9 integrate .. //depot/projects/wifi/sbin/sconfig/sconfig.c#4 integrate .. //depot/projects/wifi/secure/usr.bin/bdes/bdes.c#4 integrate .. //depot/projects/wifi/share/man/man4/Makefile#47 integrate .. //depot/projects/wifi/share/man/man4/geom_linux_lvm.4#1 branch .. //depot/projects/wifi/share/man/man4/geom_lvm.4#2 delete .. //depot/projects/wifi/share/man/man4/hptrr.4#3 integrate .. //depot/projects/wifi/share/man/man4/ip6.4#6 integrate .. //depot/projects/wifi/share/man/man4/sk.4#9 integrate .. //depot/projects/wifi/share/man/man9/Makefile#27 integrate .. //depot/projects/wifi/share/man/man9/lock.9#10 integrate .. //depot/projects/wifi/share/man/man9/pci.9#5 integrate .. //depot/projects/wifi/share/misc/committers-src.dot#8 integrate .. //depot/projects/wifi/share/mk/bsd.libnames.mk#14 integrate .. //depot/projects/wifi/sys/amd64/amd64/dump_machdep.c#5 integrate .. //depot/projects/wifi/sys/amd64/amd64/minidump_machdep.c#4 integrate .. //depot/projects/wifi/sys/amd64/conf/GENERIC#27 integrate .. //depot/projects/wifi/sys/boot/Makefile#6 integrate .. //depot/projects/wifi/sys/boot/common/bootstrap.h#4 integrate .. //depot/projects/wifi/sys/boot/common/load_elf.c#5 integrate .. //depot/projects/wifi/sys/boot/powerpc/Makefile#3 integrate .. //depot/projects/wifi/sys/boot/powerpc/ofw/Makefile#3 integrate .. //depot/projects/wifi/sys/boot/powerpc/uboot/Makefile#1 branch .. //depot/projects/wifi/sys/boot/powerpc/uboot/conf.c#1 branch .. //depot/projects/wifi/sys/boot/powerpc/uboot/help.uboot#1 branch .. //depot/projects/wifi/sys/boot/powerpc/uboot/ldscript.powerpc#1 branch .. //depot/projects/wifi/sys/boot/powerpc/uboot/metadata.c#1 branch .. //depot/projects/wifi/sys/boot/powerpc/uboot/start.S#1 branch .. //depot/projects/wifi/sys/boot/powerpc/uboot/version#1 branch .. //depot/projects/wifi/sys/boot/uboot/Makefile#1 branch .. //depot/projects/wifi/sys/boot/uboot/common/Makefile.inc#1 branch .. //depot/projects/wifi/sys/boot/uboot/common/main.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/Makefile#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/api_public.h#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/console.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/copy.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/devicename.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/disk.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/elf_freebsd.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/glue.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/glue.h#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/libuboot.h#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/module.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/net.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/reboot.c#1 branch .. //depot/projects/wifi/sys/boot/uboot/lib/time.c#1 branch .. //depot/projects/wifi/sys/cam/scsi/scsi_ses.c#8 integrate .. //depot/projects/wifi/sys/compat/linux/linux_misc.c#24 integrate .. //depot/projects/wifi/sys/compat/linux/linux_misc.h#3 integrate .. //depot/projects/wifi/sys/conf/NOTES#51 integrate .. //depot/projects/wifi/sys/conf/files#66 integrate .. //depot/projects/wifi/sys/conf/files.powerpc#13 integrate .. //depot/projects/wifi/sys/conf/options#45 integrate .. //depot/projects/wifi/sys/conf/options.powerpc#3 integrate .. //depot/projects/wifi/sys/dev/acpica/acpi_cpu.c#15 integrate .. //depot/projects/wifi/sys/dev/acpica/acpi_thermal.c#10 integrate .. //depot/projects/wifi/sys/dev/aic7xxx/aic79xx_osm.c#11 integrate .. //depot/projects/wifi/sys/dev/bce/if_bce.c#12 integrate .. //depot/projects/wifi/sys/dev/bce/if_bcefw.h#5 integrate .. //depot/projects/wifi/sys/dev/bce/if_bcereg.h#9 integrate .. //depot/projects/wifi/sys/dev/coretemp/coretemp.c#4 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_ael1002.c#4 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_common.h#6 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_ctl_defs.h#4 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_firmware_exports.h#3 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_mc5.c#5 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_mv88e1xxx.c#3 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_regs.h#3 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_t3_cpl.h#5 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_t3_hw.c#6 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_tcb.h#3 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_version.h#3 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_vsc8211.c#4 integrate .. //depot/projects/wifi/sys/dev/cxgb/common/cxgb_xgmac.c#6 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_adapter.h#11 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_ioctl.h#5 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_l2t.c#4 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_l2t.h#4 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_main.c#14 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_multiq.c#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_offload.c#7 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_osdep.h#8 integrate .. //depot/projects/wifi/sys/dev/cxgb/cxgb_sge.c#14 integrate .. //depot/projects/wifi/sys/dev/cxgb/sys/cxgb_support.c#3 integrate .. //depot/projects/wifi/sys/dev/cxgb/sys/mbufq.h#3 integrate .. //depot/projects/wifi/sys/dev/cxgb/sys/mvec.h#7 integrate .. //depot/projects/wifi/sys/dev/cxgb/sys/uipc_mvec.c#6 integrate .. //depot/projects/wifi/sys/dev/cxgb/t3cdev.h#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/t3fw-4.7.0.bin.gz.uu#2 delete .. //depot/projects/wifi/sys/dev/cxgb/t3fw-5.0.0.bin.gz.uu#1 branch .. //depot/projects/wifi/sys/dev/cxgb/ulp/toecore/cxgb_toedev.h#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#3 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_ddp.c#1 branch .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_defs.h#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_listen.c#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_tcp_subr.c#2 delete .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_tcp_usrreq.c#2 delete .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_toepcb.h#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_tom.c#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_tom.h#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#2 integrate .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_vm.c#1 branch .. //depot/projects/wifi/sys/dev/cxgb/ulp/tom/cxgb_vm.h#1 branch .. //depot/projects/wifi/sys/dev/mxge/if_mxge.c#19 integrate .. //depot/projects/wifi/sys/dev/mxge/if_mxge_var.h#10 integrate .. //depot/projects/wifi/sys/dev/mxge/mxge_lro.c#5 integrate .. //depot/projects/wifi/sys/dev/mxge/rss_eth_z8e.h#2 integrate .. //depot/projects/wifi/sys/dev/mxge/rss_ethp_z8e.h#2 integrate .. //depot/projects/wifi/sys/dev/sk/if_sk.c#10 integrate .. //depot/projects/wifi/sys/dev/sk/if_skreg.h#4 integrate .. //depot/projects/wifi/sys/dev/syscons/syscons.h#9 integrate .. //depot/projects/wifi/sys/dev/ti/if_ti.c#7 integrate .. //depot/projects/wifi/sys/dev/usb/ucom.c#11 integrate .. //depot/projects/wifi/sys/dev/usb/umass.c#20 integrate .. //depot/projects/wifi/sys/dev/usb/usbdevs#36 integrate .. //depot/projects/wifi/sys/fs/coda/TODO#2 integrate .. //depot/projects/wifi/sys/fs/coda/cnode.h#5 integrate .. //depot/projects/wifi/sys/fs/coda/coda_kernel.h#3 delete .. //depot/projects/wifi/sys/fs/coda/coda_psdev.c#5 integrate .. //depot/projects/wifi/sys/fs/coda/coda_subr.c#4 integrate .. //depot/projects/wifi/sys/fs/coda/coda_vnops.c#7 integrate .. //depot/projects/wifi/sys/fs/msdosfs/msdosfs_vfsops.c#24 integrate .. //depot/projects/wifi/sys/geom/geom_disk.c#12 integrate .. //depot/projects/wifi/sys/geom/linux_lvm/g_linux_lvm.c#1 branch .. //depot/projects/wifi/sys/geom/linux_lvm/g_linux_lvm.h#1 branch .. //depot/projects/wifi/sys/geom/lvm/g_lvm.c#2 delete .. //depot/projects/wifi/sys/geom/lvm/g_lvm.h#2 delete .. //depot/projects/wifi/sys/gnu/fs/xfs/FreeBSD/xfs_buf.c#4 integrate .. //depot/projects/wifi/sys/i386/i386/dump_machdep.c#5 integrate .. //depot/projects/wifi/sys/i386/i386/minidump_machdep.c#4 integrate .. //depot/projects/wifi/sys/ia64/conf/GENERIC#14 integrate .. //depot/projects/wifi/sys/ia64/ia64/machdep.c#23 integrate .. //depot/projects/wifi/sys/ia64/ia64/pmap.c#21 integrate .. //depot/projects/wifi/sys/kern/kern_descrip.c#33 integrate .. //depot/projects/wifi/sys/kern/kern_exit.c#26 integrate .. //depot/projects/wifi/sys/kern/kern_ktrace.c#17 integrate .. //depot/projects/wifi/sys/kern/kern_lock.c#25 integrate .. //depot/projects/wifi/sys/kern/kern_mib.c#13 integrate .. //depot/projects/wifi/sys/kern/kern_module.c#7 integrate .. //depot/projects/wifi/sys/kern/kern_mutex.c#19 integrate .. //depot/projects/wifi/sys/kern/kern_tc.c#9 integrate .. //depot/projects/wifi/sys/kern/subr_autoconf.c#4 integrate .. //depot/projects/wifi/sys/kern/subr_sleepqueue.c#19 integrate .. //depot/projects/wifi/sys/kern/uipc_syscalls.c#31 integrate .. //depot/projects/wifi/sys/kern/vfs_bio.c#30 integrate .. //depot/projects/wifi/sys/kern/vfs_default.c#27 integrate .. //depot/projects/wifi/sys/kern/vfs_mount.c#38 integrate .. //depot/projects/wifi/sys/kern/vfs_syscalls.c#30 integrate .. //depot/projects/wifi/sys/libkern/cmpdi2.c#1 branch .. //depot/projects/wifi/sys/libkern/quad.h#2 integrate .. //depot/projects/wifi/sys/modules/coda5/Makefile#5 integrate .. //depot/projects/wifi/sys/modules/cxgb/cxgb/Makefile#3 integrate .. //depot/projects/wifi/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/wifi/sys/modules/geom/Makefile#8 integrate .. //depot/projects/wifi/sys/modules/geom/geom_eli/Makefile#3 integrate .. //depot/projects/wifi/sys/modules/geom/geom_linux_lvm/Makefile#1 branch .. //depot/projects/wifi/sys/modules/geom/geom_lvm/Makefile#2 delete .. //depot/projects/wifi/sys/modules/hwpmc/Makefile#5 integrate .. //depot/projects/wifi/sys/modules/sound/driver/emu10kx/Makefile#4 integrate .. //depot/projects/wifi/sys/modules/zfs/Makefile#6 integrate .. //depot/projects/wifi/sys/net/route.c#13 integrate .. //depot/projects/wifi/sys/netinet/sctp_output.c#21 integrate .. //depot/projects/wifi/sys/netinet/sctp_pcb.c#25 integrate .. //depot/projects/wifi/sys/netinet/tcp_var.h#26 integrate .. //depot/projects/wifi/sys/nfs4client/nfs4_vnops.c#19 integrate .. //depot/projects/wifi/sys/nfsclient/nfs_vfsops.c#23 integrate .. //depot/projects/wifi/sys/nfsclient/nfs_vnops.c#29 integrate .. //depot/projects/wifi/sys/powerpc/conf/GENERIC#16 integrate .. //depot/projects/wifi/sys/powerpc/conf/NOTES#8 integrate .. //depot/projects/wifi/sys/powerpc/fpu/fpu_add.c#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_arith.h#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_compare.c#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_div.c#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_emu.c#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_emu.h#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_explode.c#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_extern.h#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_implode.c#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_instr.h#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_mul.c#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_sqrt.c#1 branch .. //depot/projects/wifi/sys/powerpc/fpu/fpu_subr.c#1 branch .. //depot/projects/wifi/sys/powerpc/include/bootinfo.h#3 integrate .. //depot/projects/wifi/sys/powerpc/include/metadata.h#3 integrate .. //depot/projects/wifi/sys/sys/buf.h#19 integrate .. //depot/projects/wifi/sys/sys/conf.h#21 integrate .. //depot/projects/wifi/sys/sys/ktrace.h#5 integrate .. //depot/projects/wifi/sys/sys/lock.h#11 integrate .. //depot/projects/wifi/sys/sys/lockmgr.h#15 integrate .. //depot/projects/wifi/sys/sys/module.h#3 integrate .. //depot/projects/wifi/sys/sys/param.h#37 integrate .. //depot/projects/wifi/sys/sys/priv.h#10 integrate .. //depot/projects/wifi/sys/ufs/ffs/ffs_vnops.c#23 integrate .. //depot/projects/wifi/tools/regression/fsx/fsx.c#4 integrate .. //depot/projects/wifi/tools/regression/lib/msun/Makefile#7 integrate .. //depot/projects/wifi/tools/regression/lib/msun/test-exponential.c#2 integrate .. //depot/projects/wifi/tools/regression/lib/msun/test-trig.c#1 branch .. //depot/projects/wifi/tools/regression/lib/msun/test-trig.t#1 branch .. //depot/projects/wifi/tools/regression/security/open_to_operation/Makefile#1 branch .. //depot/projects/wifi/tools/regression/security/open_to_operation/open_to_operation.c#1 branch .. //depot/projects/wifi/usr.bin/Makefile#16 integrate .. //depot/projects/wifi/usr.bin/ar/Makefile#1 branch .. //depot/projects/wifi/usr.bin/ar/ar.1#1 branch .. //depot/projects/wifi/usr.bin/ar/ar.c#1 branch .. //depot/projects/wifi/usr.bin/ar/ar.h#1 branch .. //depot/projects/wifi/usr.bin/ar/read.c#1 branch .. //depot/projects/wifi/usr.bin/ar/util.c#1 branch .. //depot/projects/wifi/usr.bin/ar/write.c#1 branch .. //depot/projects/wifi/usr.bin/calendar/calendars/calendar.dutch#4 integrate .. //depot/projects/wifi/usr.bin/find/extern.h#3 integrate .. //depot/projects/wifi/usr.bin/find/find.1#8 integrate .. //depot/projects/wifi/usr.bin/find/find.h#3 integrate .. //depot/projects/wifi/usr.bin/find/function.c#5 integrate .. //depot/projects/wifi/usr.bin/find/option.c#3 integrate .. //depot/projects/wifi/usr.bin/kdump/kdump.1#4 integrate .. //depot/projects/wifi/usr.bin/kdump/kdump.c#8 integrate .. //depot/projects/wifi/usr.bin/kdump/mksubr#6 integrate .. //depot/projects/wifi/usr.bin/ktrace/ktrace.1#4 integrate .. //depot/projects/wifi/usr.bin/ktrace/ktrace.h#2 integrate .. //depot/projects/wifi/usr.bin/ktrace/subr.c#3 integrate .. //depot/projects/wifi/usr.bin/ncplogin/ncplogin.c#3 integrate .. //depot/projects/wifi/usr.bin/netstat/route.c#10 integrate .. //depot/projects/wifi/usr.bin/quota/quota.c#8 integrate .. //depot/projects/wifi/usr.bin/tar/write.c#17 integrate .. //depot/projects/wifi/usr.sbin/cdcontrol/cdcontrol.c#3 integrate .. //depot/projects/wifi/usr.sbin/pmcstat/Makefile#5 integrate .. //depot/projects/wifi/usr.sbin/portsnap/phttpget/phttpget.c#9 integrate .. //depot/projects/wifi/usr.sbin/powerd/powerd.c#11 integrate .. //depot/projects/wifi/usr.sbin/pw/pw.8#6 integrate .. //depot/projects/wifi/usr.sbin/pw/pw.c#4 integrate .. //depot/projects/wifi/usr.sbin/pw/pw_group.c#2 integrate .. //depot/projects/wifi/usr.sbin/rpcbind/rpcbind.c#6 integrate .. //depot/projects/wifi/usr.sbin/sa/db.c#3 integrate .. //depot/projects/wifi/usr.sbin/syslogd/syslogd.c#15 integrate .. //depot/projects/wifi/usr.sbin/traceroute/Makefile#4 integrate .. //depot/projects/wifi/usr.sbin/wpa/wpa_supplicant/wpa_supplicant.8#3 integrate .. //depot/projects/wifi/usr.sbin/zic/zdump.c#2 integrate Differences ... ==== //depot/projects/wifi/ObsoleteFiles.inc#27 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.130 2008/02/06 19:45:25 delphij Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.131 2008/02/20 11:28:28 thompsa Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -14,6 +14,8 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20080220: geom_lvm rename to geom_linux_lvm +OLD_FILES+=usr/share/man/man4/geom_lvm.4.gz # 20080126: oldcard.4 removal OLD_FILES+=usr/share/man/man4/card.4.gz OLD_FILES+=usr/share/man/man4/oldcard.4.gz ==== //depot/projects/wifi/UPDATING#40 (text+ko) ==== @@ -22,6 +22,10 @@ to maximize performance. (To disable malloc debugging, run ln -s aj /etc/malloc.conf.) +20080220: + The new geom_lvm(4) geom class has been renamed to geom_linux_lvm(4), + likewise the kernel option is now GEOM_LINUX_LVM. + 20080211: The default NFS mount mode has changed from UDP to TCP for increased reliability. If you rely on (insecurely) NFS @@ -979,4 +983,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.519 2008/02/11 23:23:20 kris Exp $ +$FreeBSD: src/UPDATING,v 1.520 2008/02/20 07:50:12 thompsa Exp $ ==== //depot/projects/wifi/bin/sh/mksyntax.c#3 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/sh/mksyntax.c,v 1.24 2005/08/13 15:47:13 stefanf Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/mksyntax.c,v 1.25 2008/02/18 20:01:33 marcel Exp $"); /* * This program creates syntax.h and syntax.c. @@ -139,10 +139,7 @@ /* Determine the characteristics of chars. */ c = -1; - if (c < 0) - sign = 1; - else - sign = 0; + sign = (c > 0) ? 0 : 1; for (nbits = 1 ; ; nbits++) { d = (1 << nbits) - 1; if (d == c) ==== //depot/projects/wifi/contrib/traceroute/traceroute.8#5 (text+ko) ==== @@ -14,9 +14,9 @@ .\" WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. .\" .\" $Id: traceroute.8,v 1.19 2000/09/21 08:44:19 leres Exp $ -.\" $FreeBSD: src/contrib/traceroute/traceroute.8,v 1.16 2006/10/15 17:44:49 dwmalone Exp $ +.\" $FreeBSD: src/contrib/traceroute/traceroute.8,v 1.17 2008/02/20 23:29:52 rpaulo Exp $ .\" -.TH TRACEROUTE 8 "21 September 2000" +.TH TRACEROUTE 8 "19 February 2008" .UC 6 .SH NAME traceroute \- print the route packets take to network host @@ -24,7 +24,7 @@ .na .B traceroute [ -.B \-dDeFISnrvx +.B \-adDeFISnrvx ] [ .B \-f .I first_ttl @@ -71,6 +71,9 @@ .B \-w .I waittime ] [ +.B \-A +.I as_server +] [ .B \-z .I pausemsecs ] @@ -98,6 +101,13 @@ .PP Other options are: .TP +.B \-a +Turn on AS# lookups for each hop encountered. +.TP +.B -A +Turn on AS# lookups and use the given server instead of the +default. +.TP .B \-e Firewall evasion mode. Use fixed destination ports for UDP and TCP probes. @@ -443,3 +453,7 @@ router that's filtering packets), but this is not implemented yet. .PP Please send bug reports to traceroute@ee.lbl.gov. +.PP +The AS number capability reports information that may sometimes be +inaccurate due to discrepancies between the contents of the +routing database server and the current state of the Internet. ==== //depot/projects/wifi/contrib/traceroute/traceroute.c#8 (text+ko) ==== @@ -28,7 +28,7 @@ "@(#)$Id: traceroute.c,v 1.68 2000/12/14 08:04:33 leres Exp $ (LBL)"; #endif static const char rcsid[] = - "$FreeBSD: src/contrib/traceroute/traceroute.c,v 1.34 2007/07/01 12:08:05 gnn Exp $"; + "$FreeBSD: src/contrib/traceroute/traceroute.c,v 1.35 2008/02/20 23:29:52 rpaulo Exp $"; #endif /* @@ -263,6 +263,7 @@ #include "findsaddr.h" #include "ifaddrlist.h" +#include "as.h" #include "traceroute.h" /* Maximum number of gateways (include room for one noop) */ @@ -350,6 +351,9 @@ int verbose; int waittime = 5; /* time to wait for response (in seconds) */ int nflag; /* print addresses numerically */ +int as_path; /* print as numbers for each hop */ +char *as_server = NULL; +void *asn; #ifdef CANT_HACK_IPCKSUM int doipcksum = 0; /* don't calculate ip checksums by default */ #else @@ -535,9 +539,17 @@ prog = argv[0]; opterr = 0; - while ((op = getopt(argc, argv, "edDFInrSvxf:g:i:M:m:P:p:q:s:t:w:z:")) != EOF) + while ((op = getopt(argc, argv, "aA:edDFInrSvxf:g:i:M:m:P:p:q:s:t:w:z:")) != EOF) switch (op) { - + case 'a': + as_path = 1; + break; + + case 'A': + as_path = 1; + as_server = optarg; + break; + case 'd': options |= SO_DEBUG; break; @@ -913,6 +925,16 @@ exit (1); } + if (as_path) { + asn = as_setup(as_server); + if (asn == NULL) { + Fprintf(stderr, "%s: as_setup failed, AS# lookups" + " disabled\n", prog); + (void)fflush(stderr); + as_path = 0; + } + } + #if defined(IPSEC) && defined(IPSEC_POLICY_IPSEC) if (setpolicy(sndsock, "in bypass") < 0) errx(1, "%s", ipsec_strerror()); @@ -1118,6 +1140,8 @@ (unreachable > 0 && unreachable >= nprobes - 1)) break; } + if (as_path) + as_shutdown(asn); exit(0); } @@ -1458,6 +1482,9 @@ hlen = ip->ip_hl << 2; cc -= hlen; + if (as_path) + Printf(" [AS%d]", as_lookup(asn, &from->sin_addr)); + if (nflag) Printf(" %s", inet_ntoa(from->sin_addr)); else @@ -1764,8 +1791,8 @@ Fprintf(stderr, "Version %s\n", version); Fprintf(stderr, - "Usage: %s [-dDeFInrSvx] [-f first_ttl] [-g gateway] [-i iface]\n" + "Usage: %s [-adDeFInrSvx] [-f first_ttl] [-g gateway] [-i iface]\n" "\t[-m max_ttl] [-p port] [-P proto] [-q nqueries] [-s src_addr]\n" - "\t[-t tos] [-w waittime] [-z pausemsecs] host [packetlen]\n", prog); + "\t[-t tos] [-w waittime] [-A as_server] [-z pausemsecs] host [packetlen]\n", prog); exit(1); } ==== //depot/projects/wifi/etc/mail/access.sample#2 (text+ko) ==== @@ -1,10 +1,17 @@ -# $FreeBSD: src/etc/mail/access.sample,v 1.3 2000/11/02 23:40:40 dirk Exp $ +# $FreeBSD: src/etc/mail/access.sample,v 1.4 2008/02/17 05:22:08 gshapiro Exp $ # # Mail relay access control list. Default is to reject mail unless the # destination is local, or listed in /etc/mail/local-host-names # -cyberspammer.com 550 We don't accept mail from spammers -FREE.STEALTH.MAILER@ 550 We don't accept mail from spammers -another.source.of.spam REJECT -okay.cyberspammer.com OK -128.32 RELAY + +## Examples (commented out for safety) +#From:cyberspammer.com ERROR:"550 We don't accept mail from spammers" +#From:okay.cyberspammer.com OK +#Connect:sendmail.org RELAY +#To:sendmail.org RELAY +#Connect:128.32 RELAY +#Connect:128.32.2 SKIP +#Connect:IPv6:1:2:3:4:5:6:7 RELAY +#Connect:suspicious.example.com QUARANTINE:Mail from suspicious host +#Connect:[127.0.0.3] OK +#Connect:[IPv6:1:2:3:4:5:6:7:8] OK ==== //depot/projects/wifi/etc/sendmail/freebsd.mc#7 (text+ko) ==== @@ -44,7 +44,7 @@ # divert(0) -VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.35 2007/11/05 00:18:06 gshapiro Exp $') +VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.36 2008/02/17 05:38:29 gshapiro Exp $') OSTYPE(freebsd6) DOMAIN(generic) @@ -71,7 +71,7 @@ dnl NOTE: This is a subscription service as of July 31, 2001 dnl FEATURE(dnsbl) dnl Alternatively, you can provide your own server and rejection message: -dnl FEATURE(dnsbl, `blackholes.mail-abuse.org', `"550 Mail from " $&{client_addr} " rejected, see http://mail-abuse.org/cgi-bin/lookup?" $&{client_addr}') +dnl FEATURE(dnsbl, `blackholes.mail-abuse.org', ``"550 Mail from " $&{client_addr} " rejected, see http://mail-abuse.org/cgi-bin/lookup?" $&{client_addr}'') dnl Dialup users should uncomment and define this appropriately dnl define(`SMART_HOST', `your.isp.mail.server') ==== //depot/projects/wifi/games/fortune/strfile/strfile.c#4 (text+ko) ==== @@ -46,7 +46,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/games/fortune/strfile/strfile.c,v 1.28 2005/02/17 18:06:37 ru Exp $"); +__FBSDID("$FreeBSD: src/games/fortune/strfile/strfile.c,v 1.29 2008/02/19 07:09:17 ru Exp $"); # include # include @@ -270,7 +270,7 @@ { int ch; - while ((ch = getopt(argc, argv, "Cc:iorsx")) != EOF) + while ((ch = getopt(argc, argv, "Cc:iorsx")) != -1) switch(ch) { case 'C': /* embedded comments */ Cflag++; ==== //depot/projects/wifi/gnu/usr.bin/binutils/ar/Makefile#3 (text+ko) ==== @@ -1,10 +1,15 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/ar/Makefile,v 1.13 2004/12/21 09:59:40 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/ar/Makefile,v 1.16 2008/02/21 16:59:02 obrien Exp $ .include "../Makefile.inc0" .PATH: ${SRCDIR}/binutils ${SRCDIR}/binutils/doc +.if defined(WITH_BSDAR) +PROG= gnu-ar +#MAN= gnu-ar.1 +.else PROG= ar +.endif SRCS= ar.c not-ranlib.c CFLAGS+= -D_GNU_SOURCE CFLAGS+= -I${.CURDIR}/${RELTOP}/libbinutils ==== //depot/projects/wifi/gnu/usr.bin/binutils/ranlib/Makefile#3 (text+ko) ==== @@ -1,10 +1,15 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/ranlib/Makefile,v 1.14 2004/12/21 09:59:41 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/ranlib/Makefile,v 1.17 2008/02/21 16:59:02 obrien Exp $ .include "../Makefile.inc0" .PATH: ${SRCDIR}/binutils ${SRCDIR}/binutils/doc +.if defined(WITH_BSDAR) +PROG= gnu-ranlib +#MAN= gnu-ranlib.1 +.else PROG= ranlib +.endif SRCS= ar.c is-ranlib.c CFLAGS+= -D_GNU_SOURCE CFLAGS+= -I${.CURDIR}/${RELTOP}/libbinutils ==== //depot/projects/wifi/gnu/usr.bin/groff/tmac/mdoc.local#11 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/gnu/usr.bin/groff/tmac/mdoc.local,v 1.62 2007/11/27 10:00:33 jkoshy Exp $ +.\" $FreeBSD: src/gnu/usr.bin/groff/tmac/mdoc.local,v 1.63 2008/02/23 19:27:54 ru Exp $ .\" .\" %beginstrip% . @@ -64,7 +64,7 @@ .ds doc-volume-as-arm arm . .\" Default .Os value -.ds doc-default-operating-system FreeBSD\~7.0 +.ds doc-default-operating-system FreeBSD\~8.0 . .\" FreeBSD releases not found in doc-common .ds doc-operating-system-FreeBSD-6.3 6.3 ==== //depot/projects/wifi/gnu/usr.bin/man/man/man.c#4 (text+ko) ==== @@ -16,7 +16,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/gnu/usr.bin/man/man/man.c,v 1.65 2007/09/25 21:41:22 edwin Exp $"; + "$FreeBSD: src/gnu/usr.bin/man/man/man.c,v 1.66 2008/02/19 07:09:17 ru Exp $"; #endif /* not lint */ #define MAN_MAIN @@ -324,7 +324,7 @@ extern void downcase (); extern char *manpath (); - while ((c = getopt (argc, argv, args)) != EOF) + while ((c = getopt (argc, argv, args)) != -1) { switch (c) { ==== //depot/projects/wifi/gnu/usr.bin/man/manpath/manpath.c#2 (text+ko) ==== @@ -13,7 +13,7 @@ * The University of Texas at Austin * Austin, Texas 78712 * - * $FreeBSD: src/gnu/usr.bin/man/manpath/manpath.c,v 1.13 2002/10/27 02:12:52 kris Exp $ + * $FreeBSD: src/gnu/usr.bin/man/manpath/manpath.c,v 1.14 2008/02/19 07:09:18 ru Exp $ */ #define MANPATH_MAIN @@ -78,7 +78,7 @@ prognam = mkprogname (argv[0]); - while ((c = getopt (argc, argv, "dhLq?")) != EOF) + while ((c = getopt (argc, argv, "dhLq?")) != -1) { switch (c) { ==== //depot/projects/wifi/lib/libarchive/archive_entry_strmode.c#2 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry_strmode.c,v 1.1 2007/12/30 04:58:21 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry_strmode.c,v 1.2 2008/02/19 05:49:02 kientzle Exp $"); #ifdef HAVE_SYS_STAT_H #include @@ -65,15 +65,15 @@ bp[i+1] = '-'; if (mode & S_ISUID) { - if (mode & S_IXUSR) bp[3] = 's'; + if (mode & 0100) bp[3] = 's'; else bp[3] = 'S'; } if (mode & S_ISGID) { - if (mode & S_IXGRP) bp[6] = 's'; + if (mode & 0010) bp[6] = 's'; else bp[6] = 'S'; } if (mode & S_ISVTX) { - if (mode & S_IXOTH) bp[9] = 't'; + if (mode & 0001) bp[9] = 't'; else bp[9] = 'T'; } if (archive_entry_acl_count(entry, ARCHIVE_ENTRY_ACL_TYPE_ACCESS)) ==== //depot/projects/wifi/lib/libarchive/archive_platform.h#15 (text+ko) ==== @@ -22,7 +22,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/libarchive/archive_platform.h,v 1.28 2007/12/30 04:58:21 kientzle Exp $ + * $FreeBSD: src/lib/libarchive/archive_platform.h,v 1.29 2008/02/19 06:06:13 kientzle Exp $ */ /* @@ -36,7 +36,10 @@ #ifndef ARCHIVE_PLATFORM_H_INCLUDED #define ARCHIVE_PLATFORM_H_INCLUDED -#if defined(PLATFORM_CONFIG_H) +#ifdef _WIN32 +#include "config_windows.h" +#include "archive_windows.h" +#elif defined(PLATFORM_CONFIG_H) /* Use hand-built config.h in environments that need it. */ #include PLATFORM_CONFIG_H #elif defined(HAVE_CONFIG_H) ==== //depot/projects/wifi/lib/libarchive/archive_read_open_filename.c#5 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_open_filename.c,v 1.20 2007/06/26 03:06:48 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_open_filename.c,v 1.21 2008/02/19 06:10:48 kientzle Exp $"); #ifdef HAVE_SYS_STAT_H #include @@ -47,6 +47,10 @@ #include "archive.h" +#ifndef O_BINARY +#define O_BINARY 0 +#endif + struct read_file_data { int fd; size_t block_size; @@ -113,7 +117,7 @@ return (ARCHIVE_FATAL); } if (mine->filename[0] != '\0') - mine->fd = open(mine->filename, O_RDONLY); + mine->fd = open(mine->filename, O_RDONLY | O_BINARY); else mine->fd = 0; /* Fake "open" for stdin. */ if (mine->fd < 0) { ==== //depot/projects/wifi/lib/libarchive/archive_read_support_compression_bzip2.c#10 (text+ko) ==== @@ -25,7 +25,7 @@ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_compression_bzip2.c,v 1.16 2007/05/29 01:00:18 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_compression_bzip2.c,v 1.17 2008/02/19 05:44:59 kientzle Exp $"); #ifdef HAVE_ERRNO_H #include @@ -145,7 +145,7 @@ (void)buff; /* UNUSED */ (void)n; /* UNUSED */ - archive_set_error(a, -1, + archive_set_error(&a->archive, -1, "This version of libarchive was compiled without bzip2 support"); return (ARCHIVE_FATAL); } ==== //depot/projects/wifi/lib/libarchive/archive_read_support_compression_gzip.c#9 (text+ko) ==== @@ -25,7 +25,7 @@ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_compression_gzip.c,v 1.15 2007/05/29 01:00:19 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_compression_gzip.c,v 1.16 2008/02/19 05:44:59 kientzle Exp $"); #ifdef HAVE_ERRNO_H @@ -146,7 +146,7 @@ (void)buff; /* UNUSED */ (void)n; /* UNUSED */ - archive_set_error(a, -1, + archive_set_error(&a->archive, -1, "This version of libarchive was compiled without gzip support"); return (ARCHIVE_FATAL); } ==== //depot/projects/wifi/lib/libarchive/archive_read_support_format_ar.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_ar.c,v 1.7 2007/12/30 04:58:21 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_ar.c,v 1.8 2008/02/19 05:54:24 kientzle Exp $"); #ifdef HAVE_SYS_STAT_H #include @@ -268,8 +268,7 @@ /* This must come before any call to _read_ahead. */ ar_parse_common_header(ar, entry, h); archive_entry_copy_pathname(entry, filename); - archive_entry_set_mode(entry, - S_IFREG | (archive_entry_mode(entry) & 0777)); + archive_entry_set_filetype(entry, AE_IFREG); /* Get the size of the filename table. */ number = ar_atol10(h + AR_size_offset, AR_size_size); if (number > SIZE_MAX) { @@ -375,8 +374,7 @@ /* Parse the time, owner, mode, size fields. */ r = ar_parse_common_header(ar, entry, h); /* Force the file type to a regular file. */ - archive_entry_set_mode(entry, - S_IFREG | (archive_entry_mode(entry) & 0777)); + archive_entry_set_filetype(entry, AE_IFREG); return (r); } ==== //depot/projects/wifi/lib/libarchive/archive_read_support_format_iso9660.c#14 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_iso9660.c,v 1.24 2007/12/30 04:58:21 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_iso9660.c,v 1.25 2008/02/19 06:02:01 kientzle Exp $"); #ifdef HAVE_ERRNO_H #include @@ -1064,24 +1064,28 @@ if (t->tm_isdst) t->tm_hour -= 1; return (mktime(t)); /* Re-convert. */ -#else - /* - * If you don't have tm_gmtoff, let's try resetting the timezone - * (yecch!). - */ +#elif defined(HAVE_SETENV) && defined(HAVE_UNSETENV) && defined(HAVE_TZSET) + /* No timegm() and no tm_gmtoff, let's try forcing mktime() to UTC. */ time_t ret; char *tz; + /* Reset the timezone, remember the old one. */ tz = getenv("TZ"); setenv("TZ", "UTC 0", 1); tzset(); + >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Feb 24 14:38:30 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9BAFD16A405; Sun, 24 Feb 2008 14:38:30 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5E2C316A402 for ; Sun, 24 Feb 2008 14:38:30 +0000 (UTC) (envelope-from brueffer@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4088C13C442 for ; Sun, 24 Feb 2008 14:38:30 +0000 (UTC) (envelope-from brueffer@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OEcTCP047352 for ; Sun, 24 Feb 2008 14:38:29 GMT (envelope-from brueffer@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OEcS2P047349 for perforce@freebsd.org; Sun, 24 Feb 2008 14:38:28 GMT (envelope-from brueffer@freebsd.org) Date: Sun, 24 Feb 2008 14:38:28 GMT Message-Id: <200802241438.m1OEcS2P047349@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to brueffer@freebsd.org using -f From: Christian Brueffer To: Perforce Change Reviews Cc: Subject: PERFORCE change 136088 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 14:38:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=136088 Change 136088 by brueffer@brueffer_haakonia on 2008/02/24 14:38:02 Fixed for the Socket Token section. Affected files ... .. //depot/projects/trustedbsd/openbsm/man/audit.log.5#17 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/man/audit.log.5#17 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $P4: //depot/projects/trustedbsd/openbsm/man/audit.log.5#16 $ +.\" $P4: //depot/projects/trustedbsd/openbsm/man/audit.log.5#17 $ .\" .Dd November 5, 2006 .Dt AUDIT.LOG 5 @@ -556,13 +556,14 @@ .Ss Socket Token The .Dq socket -token contains informations about UNIX domain and Internet sockets. +token contains information about UNIX domain and Internet sockets. Each token has four or eight fields. -Depend on type of socket a socket token may be created using +Depending on the type of socket, a socket token may be created using .Xr au_to_sock_unix 3 , -.Xr au_to_sock_inet32 3 or +.Xr au_to_sock_inet32 3 +or .Xr au_to_sock_inet128 3 . -.Bl -column -offset ind ".Sy Field Name Width XX" ".Sy XX Bytes XXXX" ".Sy Description" +.Bl -column -offset 3n ".Sy Field Name Width XX" ".Sy XX Bytes XXXX" ".Sy Description" .It Sy "Field" Ta Sy Bytes Ta Sy Description .It Li "Token ID" Ta "1 byte" Ta "Token ID" .It Li "Socket family" Ta "2 bytes" Ta "Socket family" @@ -572,13 +573,13 @@ .Bl -column -offset 3n ".No Terminal Address Type/Length" ".No N bytes + 1 NUL" .It Sy "Field Bytes Description" .It "Token ID 1 byte Token ID" -+.It Li "Socket domain" Ta "4 bytes" Ta "Socket domain" -+.It Li "Socket family" Ta "2 bytes" Ta "Socket family" -+.It Li "Address type" Ta "1 byte" Ta "Address type (IPv4/IPv6)" -+.It Li "Local port" Ta "2 bytes" Ta "Local port" -+.It Li "Local IP address" Ta "4/16 bytes" Ta "Local IP address" -+.It Li "Remote port" Ta "2 bytes" Ta "Remote port" -+.It Li "Remote IP address" Ta "4/16 bytes" Ta "Remote IP address" +.It Li "Socket domain" Ta "4 bytes" Ta "Socket domain" +.It Li "Socket family" Ta "2 bytes" Ta "Socket family" +.It Li "Address type" Ta "1 byte" Ta "Address type (IPv4/IPv6)" +.It Li "Local port" Ta "2 bytes" Ta "Local port" +.It Li "Local IP address" Ta "4/16 bytes" Ta "Local IP address" +.It Li "Remote port" Ta "2 bytes" Ta "Remote port" +.It Li "Remote IP address" Ta "4/16 bytes" Ta "Remote IP address" .El .Ss Expanded Socket Token The From owner-p4-projects@FreeBSD.ORG Sun Feb 24 17:03:45 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 76AB416A406; Sun, 24 Feb 2008 17:03:45 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3890A16A402; Sun, 24 Feb 2008 17:03:45 +0000 (UTC) (envelope-from xcllnt@mac.com) Received: from smtpoutm.mac.com (smtpoutm.mac.com [17.148.16.78]) by mx1.freebsd.org (Postfix) with ESMTP id EA8C913C457; Sun, 24 Feb 2008 17:03:44 +0000 (UTC) (envelope-from xcllnt@mac.com) Received: from mac.com (asmtp006-s [10.150.69.69]) by smtpoutm.mac.com (Xserve/smtpout015/MantshX 4.0) with ESMTP id m1OH3iCS009149; Sun, 24 Feb 2008 09:03:44 -0800 (PST) Received: from [10.20.1.111] (dsl093-166-098.sfo2.dsl.speakeasy.net [66.93.166.98]) (authenticated bits=0) by mac.com (Xserve/asmtp006/MantshX 4.0) with ESMTP id m1OH3h5v011613 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Sun, 24 Feb 2008 09:03:43 -0800 (PST) Message-Id: From: Marcel Moolenaar To: Rafal Jaworowski In-Reply-To: <200802241430.m1OEUAVv046975@repoman.freebsd.org> Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v919.2) Date: Sun, 24 Feb 2008 09:03:42 -0800 References: <200802241430.m1OEUAVv046975@repoman.freebsd.org> X-Mailer: Apple Mail (2.919.2) Cc: Perforce Change Reviews Subject: Re: PERFORCE change 136085 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 17:03:45 -0000 On Feb 24, 2008, at 6:30 AM, Rafal Jaworowski wrote: > http://perforce.freebsd.org/chv.cgi?CH=136085 > > Change 136085 by raj@raj_mimi on 2008/02/24 14:29:16 > > Clean up kernel config files for the Freescale MPC85XX. We now have a > KERNCONF=MPC85XX Thanks! -- Marcel Moolenaar xcllnt@mac.com From owner-p4-projects@FreeBSD.ORG Sun Feb 24 17:24:51 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 556A116A405; Sun, 24 Feb 2008 17:24:51 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1844816A402 for ; Sun, 24 Feb 2008 17:24:51 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id CF12513C45E for ; Sun, 24 Feb 2008 17:24:50 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OHOov7066197 for ; Sun, 24 Feb 2008 17:24:50 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OHOoOb066194 for perforce@freebsd.org; Sun, 24 Feb 2008 17:24:50 GMT (envelope-from csjp@freebsd.org) Date: Sun, 24 Feb 2008 17:24:50 GMT Message-Id: <200802241724.m1OHOoOb066194@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 136101 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 17:24:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=136101 Change 136101 by csjp@ibm01 on 2008/02/24 17:24:45 Check for EINTR instead of EAGAIN, the intent is to identify interrupted system calls that was a result of signal delivery. Affected files ... .. //depot/projects/trustedbsd/netauditd/netauditd.c#6 edit Differences ... ==== //depot/projects/trustedbsd/netauditd/netauditd.c#6 (text+ko) ==== @@ -410,7 +410,7 @@ memcpy(&rfds, &srfds, sizeof(rfds)); ret = select(FD_SETSIZE, &rfds, NULL, NULL, &tv); if (ret == -1) { - if (errno != EAGAIN) + if (errno != EINTR) exit(2); else continue; From owner-p4-projects@FreeBSD.ORG Sun Feb 24 17:34:27 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0E9A116A40B; Sun, 24 Feb 2008 17:34:27 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 928F716A409 for ; Sun, 24 Feb 2008 17:34:26 +0000 (UTC) (envelope-from peter-gmail@wemm.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 6AF9E13C455 for ; Sun, 24 Feb 2008 17:34:26 +0000 (UTC) (envelope-from peter-gmail@wemm.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m1OHYQjt066536 for ; Sun, 24 Feb 2008 17:34:26 GMT (envelope-from peter-gmail@wemm.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m1OHY8wc066531 for perforce@freebsd.org; Sun, 24 Feb 2008 17:34:08 GMT (envelope-from peter-gmail@wemm.org) Date: Sun, 24 Feb 2008 17:34:08 GMT Message-Id: <200802241734.m1OHY8wc066531@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter-gmail@wemm.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 136104 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Feb 2008 17:34:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=136104 Change 136104 by peter@peter_overcee on 2008/02/24 17:33:50 IFC @136100 Affected files ... .. //depot/projects/hammer/LOCKS#3 integrate .. //depot/projects/hammer/MAINTAINERS#46 integrate .. //depot/projects/hammer/Makefile#46 integrate .. //depot/projects/hammer/ObsoleteFiles.inc#45 integrate .. //depot/projects/hammer/UPDATING#112 integrate .. //depot/projects/hammer/bin/date/date.c#8 integrate .. //depot/projects/hammer/bin/sh/mksyntax.c#6 integrate .. //depot/projects/hammer/contrib/binutils/libiberty/cp-demangle.c#4 integrate .. //depot/projects/hammer/contrib/file/FREEBSD-upgrade#5 integrate .. //depot/projects/hammer/contrib/file/Magdir/bFLT#2 delete .. //depot/projects/hammer/contrib/file/Magdir/chi#2 delete .. //depot/projects/hammer/contrib/file/Magdir/cvs#2 delete .. //depot/projects/hammer/contrib/file/Magdir/hdf#2 delete .. //depot/projects/hammer/contrib/file/Magdir/impulse#2 delete .. //depot/projects/hammer/contrib/file/Magdir/wordperfect#2 delete .. //depot/projects/hammer/contrib/file/acconfig.h#4 delete .. //depot/projects/hammer/contrib/file/magic.c#6 integrate .. //depot/projects/hammer/contrib/file/missing#2 delete .. //depot/projects/hammer/contrib/file/stamp-h.in#2 delete .. //depot/projects/hammer/contrib/gdb/FREEBSD-diffs#1 branch .. //depot/projects/hammer/contrib/libiberty/cp-demangle.c#2 delete .. //depot/projects/hammer/contrib/ncurses/FREEBSD-upgrade#3 integrate .. //depot/projects/hammer/contrib/ncurses/FREEBSD-vendor#1 branch .. //depot/projects/hammer/contrib/ncurses/MANIFEST#4 integrate .. //depot/projects/hammer/contrib/ncurses/NEWS#4 integrate .. //depot/projects/hammer/contrib/ncurses/dist.mk#4 integrate .. //depot/projects/hammer/contrib/ncurses/form/frm_driver.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/include/curses.h.in#4 integrate .. //depot/projects/hammer/contrib/ncurses/include/ncurses_defs#4 integrate .. //depot/projects/hammer/contrib/ncurses/man/curs_clear.3x#3 integrate .. //depot/projects/hammer/contrib/ncurses/man/curs_threads.3x#1 branch .. //depot/projects/hammer/contrib/ncurses/man/man_db.renames#4 integrate .. //depot/projects/hammer/contrib/ncurses/man/manlinks.sed#3 integrate .. //depot/projects/hammer/contrib/ncurses/man/toe.1m#4 integrate .. //depot/projects/hammer/contrib/ncurses/misc/terminfo.src#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/MKlib_gen.sh#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/MKunctrl.awk#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_addch.c#3 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_getch.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_insch.c#3 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_newterm.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_newwin.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_set_term.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_slk.c#3 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_slkclear.c#3 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/lib_slkinit.c#3 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/resizeterm.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/base/use_window.c#2 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/curses.priv.h#5 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/llib-lncursest#1 branch .. //depot/projects/hammer/contrib/ncurses/ncurses/tinfo/lib_data.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/ncurses/tinfo/lib_setup.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/progs/infocmp.c#4 integrate .. //depot/projects/hammer/contrib/ncurses/progs/toe.c#4 integrate .. //depot/projects/hammer/contrib/openpam/FREEBSD-vendor#1 branch .. //depot/projects/hammer/contrib/openpam/include/security/openpam_version.h#10 integrate .. //depot/projects/hammer/contrib/pf/man/pf.conf.5#13 integrate .. //depot/projects/hammer/contrib/top/display.c#5 integrate .. //depot/projects/hammer/contrib/top/layout.h#3 integrate .. //depot/projects/hammer/contrib/top/machine.h#6 integrate .. //depot/projects/hammer/contrib/top/top.c#12 integrate .. //depot/projects/hammer/contrib/top/top.h#5 integrate .. //depot/projects/hammer/contrib/traceroute/as.c#1 branch .. //depot/projects/hammer/contrib/traceroute/as.h#1 branch .. //depot/projects/hammer/contrib/traceroute/traceroute.8#6 integrate .. //depot/projects/hammer/contrib/traceroute/traceroute.c#10 integrate .. //depot/projects/hammer/crypto/openssh/FREEBSD-Xlist#4 integrate .. //depot/projects/hammer/crypto/openssh/FREEBSD-upgrade#12 integrate .. //depot/projects/hammer/crypto/openssh/FREEBSD-vendor#1 branch .. //depot/projects/hammer/etc/defaults/rc.conf#82 integrate .. //depot/projects/hammer/etc/devd.conf#31 integrate .. //depot/projects/hammer/etc/mail/access.sample#2 integrate .. //depot/projects/hammer/etc/namedb/named.root#6 integrate .. //depot/projects/hammer/etc/netstart#8 integrate .. //depot/projects/hammer/etc/periodic/security/100.chksetuid#7 integrate .. //depot/projects/hammer/etc/rc#21 integrate .. //depot/projects/hammer/etc/rc.d/dhclient#21 integrate .. //depot/projects/hammer/etc/rc.d/hostid#4 integrate .. //depot/projects/hammer/etc/rc.d/ipfw#15 integrate .. //depot/projects/hammer/etc/rc.d/kerberos#7 integrate .. //depot/projects/hammer/etc/rc.d/mountcritremote#15 integrate .. //depot/projects/hammer/etc/rc.d/netif#21 integrate .. //depot/projects/hammer/etc/rc.d/ppp#8 integrate .. //depot/projects/hammer/etc/rc.firewall#8 integrate .. //depot/projects/hammer/etc/rc.subr#41 integrate .. //depot/projects/hammer/etc/sendmail/freebsd.mc#11 integrate .. //depot/projects/hammer/games/fortune/strfile/strfile.c#7 integrate .. //depot/projects/hammer/gnu/lib/csu/Makefile#11 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/ar/Makefile#5 integrate .. //depot/projects/hammer/gnu/usr.bin/binutils/ranlib/Makefile#6 integrate .. //depot/projects/hammer/gnu/usr.bin/cvs/Makefile#4 integrate .. //depot/projects/hammer/gnu/usr.bin/cvs/contrib/Makefile#4 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/kgdb/Makefile#5 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/kgdb/kgdb.h#7 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/kgdb/kld.c#1 branch .. //depot/projects/hammer/gnu/usr.bin/gdb/kgdb/kthr.c#8 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/kgdb/main.c#12 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/kgdb/trgt.c#6 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/kgdb/trgt_i386.c#6 integrate .. //depot/projects/hammer/gnu/usr.bin/groff/tmac/mdoc.local#30 integrate .. //depot/projects/hammer/gnu/usr.bin/man/man/man.c#7 integrate .. //depot/projects/hammer/gnu/usr.bin/man/manpath/manpath.c#3 integrate .. //depot/projects/hammer/include/fts.h#5 integrate .. //depot/projects/hammer/include/pthread_np.h#7 integrate .. //depot/projects/hammer/include/unistd.h#20 integrate .. //depot/projects/hammer/lib/libarchive/Makefile#46 integrate .. //depot/projects/hammer/lib/libarchive/archive_entry_strmode.c#2 integrate .. //depot/projects/hammer/lib/libarchive/archive_platform.h#20 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_extract.c#35 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_open_filename.c#5 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_support_compression_bzip2.c#14 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_support_compression_gzip.c#14 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_support_format_ar.c#5 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_support_format_cpio.c#22 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_support_format_iso9660.c#16 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_support_format_mtree.c#2 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_support_format_tar.c#40 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_support_format_zip.c#16 integrate .. //depot/projects/hammer/lib/libarchive/archive_write_disk.c#10 integrate .. //depot/projects/hammer/lib/libarchive/archive_write_open_filename.c#3 integrate .. //depot/projects/hammer/lib/libarchive/archive_write_set_compression_gzip.c#16 integrate .. //depot/projects/hammer/lib/libarchive/archive_write_set_format_ar.c#5 integrate .. //depot/projects/hammer/lib/libarchive/archive_write_set_format_cpio_newc.c#3 integrate .. //depot/projects/hammer/lib/libarchive/config_freebsd.h#5 integrate .. //depot/projects/hammer/lib/libarchive/test/Makefile#8 integrate .. //depot/projects/hammer/lib/libarchive/test/main.c#9 integrate .. //depot/projects/hammer/lib/libarchive/test/test.h#6 integrate .. //depot/projects/hammer/lib/libarchive/test/test_compat_tar_hardlink.c#1 branch .. //depot/projects/hammer/lib/libarchive/test/test_compat_tar_hardlink_1.tar.uu#1 branch .. //depot/projects/hammer/lib/libarchive/test/test_write_disk.c#5 integrate .. //depot/projects/hammer/lib/libarchive/test/test_write_disk_hardlink.c#1 branch .. //depot/projects/hammer/lib/libarchive/test/test_write_format_cpio_newc.c#2 integrate .. //depot/projects/hammer/lib/libc/amd64/_fpmath.h#11 integrate .. //depot/projects/hammer/lib/libc/db/test/btree.tests/main.c#3 integrate .. //depot/projects/hammer/lib/libc/db/test/dbtest.c#3 integrate .. //depot/projects/hammer/lib/libc/gen/Makefile.inc#32 integrate .. //depot/projects/hammer/lib/libc/gen/Symbol.map#7 integrate .. //depot/projects/hammer/lib/libc/gen/fts-compat.c#2 integrate .. //depot/projects/hammer/lib/libc/gen/fts-compat.h#2 integrate .. //depot/projects/hammer/lib/libc/gen/fts.3#10 integrate .. //depot/projects/hammer/lib/libc/gen/fts.c#9 integrate .. //depot/projects/hammer/lib/libc/gen/getttyent.c#5 integrate .. //depot/projects/hammer/lib/libc/i386/_fpmath.h#6 integrate .. //depot/projects/hammer/lib/libc/ia64/_fpmath.h#6 integrate .. //depot/projects/hammer/lib/libc/include/namespace.h#11 integrate .. //depot/projects/hammer/lib/libc/include/un-namespace.h#10 integrate .. //depot/projects/hammer/lib/libc/locale/Makefile.inc#25 integrate .. //depot/projects/hammer/lib/libc/locale/ascii.c#1 branch .. //depot/projects/hammer/lib/libc/locale/mblocal.h#7 integrate .. //depot/projects/hammer/lib/libc/locale/setrunelocale.c#21 integrate .. //depot/projects/hammer/lib/libc/net/getaddrinfo.c#33 integrate .. //depot/projects/hammer/lib/libc/regex/grot/main.c#2 integrate .. //depot/projects/hammer/lib/libc/resolv/res_comp.c#4 integrate .. //depot/projects/hammer/lib/libc/sparc64/_fpmath.h#6 integrate .. //depot/projects/hammer/lib/libc/stdlib/grantpt.c#9 integrate .. //depot/projects/hammer/lib/libc/stdlib/malloc.3#19 integrate .. //depot/projects/hammer/lib/libc/stdlib/malloc.c#41 integrate .. //depot/projects/hammer/lib/libc/sys/access.2#5 integrate .. //depot/projects/hammer/lib/libc/sys/extattr_get_file.2#10 integrate .. //depot/projects/hammer/lib/libc/sys/flock.2#7 integrate .. //depot/projects/hammer/lib/libc/sys/mq_close.2#3 integrate .. //depot/projects/hammer/lib/libc/sys/mq_getattr.2#3 integrate .. //depot/projects/hammer/lib/libc/sys/mq_notify.2#4 integrate .. //depot/projects/hammer/lib/libc/sys/mq_open.2#3 integrate .. //depot/projects/hammer/lib/libc/sys/mq_receive.2#3 integrate .. //depot/projects/hammer/lib/libc/sys/mq_send.2#3 integrate .. //depot/projects/hammer/lib/libc/sys/mq_setattr.2#3 integrate .. //depot/projects/hammer/lib/libc/sys/readlink.2#4 integrate .. //depot/projects/hammer/lib/libc/sys/sendfile.2#15 integrate .. //depot/projects/hammer/lib/libdevstat/devstat.h#6 integrate .. //depot/projects/hammer/lib/libdisk/disk.c#24 integrate .. //depot/projects/hammer/lib/libelf/gelf_fsize.3#2 integrate .. //depot/projects/hammer/lib/libfetch/common.c#11 integrate .. //depot/projects/hammer/lib/libfetch/fetch.3#15 integrate .. //depot/projects/hammer/lib/libfetch/ftp.c#14 integrate .. //depot/projects/hammer/lib/libfetch/http.c#16 integrate .. //depot/projects/hammer/lib/libkse/Makefile#4 integrate .. //depot/projects/hammer/lib/libkse/kse.map#3 integrate .. //depot/projects/hammer/lib/libkse/sys/lock.c#4 integrate .. //depot/projects/hammer/lib/libkse/thread/thr_mutex.c#6 integrate .. //depot/projects/hammer/lib/libmilter/Makefile#7 integrate .. //depot/projects/hammer/lib/libpmc/pmc.3#14 integrate .. //depot/projects/hammer/lib/librpcsvc/Makefile#10 integrate .. //depot/projects/hammer/lib/librpcsvc/xcrypt.c#3 integrate .. //depot/projects/hammer/lib/libthr/Makefile#25 integrate .. //depot/projects/hammer/lib/libthr/arch/amd64/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libthr/arch/arm/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libthr/arch/arm/include/pthread_md.h#5 integrate .. //depot/projects/hammer/lib/libthr/arch/i386/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libthr/arch/ia64/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libthr/arch/powerpc/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libthr/arch/sparc64/Makefile.inc#3 integrate .. //depot/projects/hammer/lib/libthr/arch/sparc64/include/pthread_md.h#3 integrate .. //depot/projects/hammer/lib/libthr/pthread.map#17 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_mutex.c#40 integrate .. //depot/projects/hammer/lib/libutil/pty.3#4 integrate .. //depot/projects/hammer/lib/libutil/pty.c#9 integrate .. //depot/projects/hammer/lib/msun/Makefile#38 integrate .. //depot/projects/hammer/lib/msun/Symbol.map#8 integrate .. //depot/projects/hammer/lib/msun/amd64/Makefile.inc#8 integrate .. //depot/projects/hammer/lib/msun/amd64/e_remainder.S#1 branch .. //depot/projects/hammer/lib/msun/amd64/e_remainderf.S#1 branch .. //depot/projects/hammer/lib/msun/bsdsrc/b_exp.c#4 integrate .. //depot/projects/hammer/lib/msun/bsdsrc/b_log.c#5 integrate .. //depot/projects/hammer/lib/msun/bsdsrc/b_tgamma.c#5 integrate .. //depot/projects/hammer/lib/msun/ld128/k_cosl.c#1 branch .. //depot/projects/hammer/lib/msun/ld128/k_sinl.c#1 branch .. //depot/projects/hammer/lib/msun/ld128/k_tanl.c#1 branch .. //depot/projects/hammer/lib/msun/ld128/s_exp2l.c#1 branch .. //depot/projects/hammer/lib/msun/ld80/k_cosl.c#1 branch .. //depot/projects/hammer/lib/msun/ld80/k_sinl.c#1 branch .. //depot/projects/hammer/lib/msun/ld80/k_tanl.c#1 branch .. //depot/projects/hammer/lib/msun/ld80/s_exp2l.c#1 branch .. //depot/projects/hammer/lib/msun/man/cos.3#3 integrate .. //depot/projects/hammer/lib/msun/man/exp.3#8 integrate .. //depot/projects/hammer/lib/msun/man/j0.3#4 integrate .. //depot/projects/hammer/lib/msun/man/lgamma.3#6 integrate .. //depot/projects/hammer/lib/msun/man/log.3#1 branch .. //depot/projects/hammer/lib/msun/man/sin.3#3 integrate .. //depot/projects/hammer/lib/msun/man/tan.3#3 integrate .. //depot/projects/hammer/lib/msun/src/e_acos.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_acosf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_acosh.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_acoshf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_asin.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_asinf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_atan2.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_atan2f.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_atanh.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_atanhf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_cosh.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_coshf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_exp.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_expf.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_fmod.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_fmodf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_gamma.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_gamma_r.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_gammaf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_gammaf_r.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_hypot.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_hypotf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_j0.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_j0f.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_j1.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_j1f.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_jn.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_jnf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_lgamma.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_lgamma_r.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_lgammaf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_lgammaf_r.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_log.c#6 integrate .. //depot/projects/hammer/lib/msun/src/e_log10.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_log10f.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_logf.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_pow.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_powf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_rem_pio2.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_rem_pio2f.c#7 integrate .. //depot/projects/hammer/lib/msun/src/e_remainder.c#4 integrate .. //depot/projects/hammer/lib/msun/src/e_remainderf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/e_scalb.c#6 integrate .. //depot/projects/hammer/lib/msun/src/e_scalbf.c#6 integrate .. //depot/projects/hammer/lib/msun/src/e_sinh.c#3 integrate .. //depot/projects/hammer/lib/msun/src/e_sinhf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/k_cos.c#5 integrate .. //depot/projects/hammer/lib/msun/src/k_cosf.c#8 integrate .. //depot/projects/hammer/lib/msun/src/k_rem_pio2.c#3 integrate .. //depot/projects/hammer/lib/msun/src/k_rem_pio2f.c#4 delete .. //depot/projects/hammer/lib/msun/src/k_sin.c#5 integrate .. //depot/projects/hammer/lib/msun/src/k_sinf.c#7 integrate .. //depot/projects/hammer/lib/msun/src/k_tan.c#6 integrate .. //depot/projects/hammer/lib/msun/src/k_tanf.c#6 integrate .. //depot/projects/hammer/lib/msun/src/math.h#34 integrate .. //depot/projects/hammer/lib/msun/src/math_private.h#9 integrate .. //depot/projects/hammer/lib/msun/src/s_asinh.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_asinhf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_atan.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_atanf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_cbrt.c#6 integrate .. //depot/projects/hammer/lib/msun/src/s_cbrtf.c#7 integrate .. //depot/projects/hammer/lib/msun/src/s_ceil.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_ceilf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_ceill.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_copysign.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_copysignf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_cos.c#4 integrate .. //depot/projects/hammer/lib/msun/src/s_cosf.c#5 integrate .. //depot/projects/hammer/lib/msun/src/s_cosl.c#1 branch .. //depot/projects/hammer/lib/msun/src/s_erf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_erff.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_exp2.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_exp2f.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_expm1.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_expm1f.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_fabsf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_finite.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_finitef.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_floor.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_floorf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_floorl.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_frexp.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_frexpf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_ilogb.c#4 integrate .. //depot/projects/hammer/lib/msun/src/s_ilogbf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_ilogbl.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_log1p.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_log1pf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_logb.c#5 integrate .. //depot/projects/hammer/lib/msun/src/s_logbf.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_modff.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_nextafter.c#4 integrate .. //depot/projects/hammer/lib/msun/src/s_nextafterf.c#4 integrate .. //depot/projects/hammer/lib/msun/src/s_nextafterl.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_nexttoward.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_nexttowardf.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_rint.c#6 integrate .. //depot/projects/hammer/lib/msun/src/s_rintf.c#4 integrate .. //depot/projects/hammer/lib/msun/src/s_rintl.c#2 integrate .. //depot/projects/hammer/lib/msun/src/s_significand.c#3 integrate .. //depot/projects/hammer/lib/msun/src/s_significandf.c#2 integrate .. //depot/projects/hammer