From owner-p4-projects@FreeBSD.ORG Sun Nov 2 01:08:25 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DBFE216A4DA; Sun, 2 Nov 2003 01:08:24 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AD5B216A4E6 for ; Sun, 2 Nov 2003 01:08:24 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DDFFC43FE1 for ; Sun, 2 Nov 2003 01:08:23 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA298NXJ058765 for ; Sun, 2 Nov 2003 01:08:23 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA298NRj058762 for perforce@freebsd.org; Sun, 2 Nov 2003 01:08:23 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 01:08:23 -0800 (PST) Message-Id: <200311020908.hA298NRj058762@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41098 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 09:08:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=41098 Change 41098 by jmallett@jmallett_dalek on 2003/11/02 01:08:20 Perform per-platform trap exit stuff after a tlbmod. Also print the curthread. Affected files ... .. //depot/projects/mips/sys/mips/mips/trap.c#10 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/trap.c#10 (text+ko) ==== @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -105,6 +106,7 @@ case T_TLB_MOD: /* XXX Kernel only. */ tlb_modified(badvaddr); + platform_trap_exit(); return; default: /* Fatal! */ @@ -129,6 +131,7 @@ printf("bad virtual address = %p\n", badvaddr); printf(" cause = %x\n", cause); printf(" status = %lx\n", tf->tf_regs[TF_SR]); + printf(" current thread = %p\n", curthread); switch (code) { case T_BREAK: From owner-p4-projects@FreeBSD.ORG Sun Nov 2 01:10:28 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BECB216A4D0; Sun, 2 Nov 2003 01:10:27 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9864A16A4CE for ; Sun, 2 Nov 2003 01:10:27 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0B0ED43FBF for ; Sun, 2 Nov 2003 01:10:27 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA29AQXJ058893 for ; Sun, 2 Nov 2003 01:10:26 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA29AQiw058888 for perforce@freebsd.org; Sun, 2 Nov 2003 01:10:26 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 01:10:26 -0800 (PST) Message-Id: <200311020910.hA29AQiw058888@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41099 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 09:10:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=41099 Change 41099 by jmallett@jmallett_dalek on 2003/11/02 01:10:00 lowercase insn, no big deal. Affected files ... .. //depot/projects/mips/sys/mips/mips/exception.S#5 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/exception.S#5 (text+ko) ==== @@ -56,7 +56,7 @@ bne k0, k1, 1f nop - J VCED + j VCED /* No BDSlot, save space by just pulling in the next insn. */ 1: From owner-p4-projects@FreeBSD.ORG Sun Nov 2 01:11:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9A92F16A4D0; Sun, 2 Nov 2003 01:11:29 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 76F6F16A4CE for ; Sun, 2 Nov 2003 01:11:29 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E9C1143F75 for ; Sun, 2 Nov 2003 01:11:28 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA29BSXJ059026 for ; Sun, 2 Nov 2003 01:11:28 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA29BSjO059023 for perforce@freebsd.org; Sun, 2 Nov 2003 01:11:28 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 01:11:28 -0800 (PST) Message-Id: <200311020911.hA29BSjO059023@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41100 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 09:11:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=41100 Change 41100 by jmallett@jmallett_dalek on 2003/11/02 01:10:41 Random uselesss hackery and removal of critical section stuff which blows up nicely before thread0 is initialised. Affected files ... .. //depot/projects/mips/sys/mips/mips/db_interface.c#8 edit .. //depot/projects/mips/sys/mips/mips/tlb.c#6 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/db_interface.c#8 (text+ko) ==== ==== //depot/projects/mips/sys/mips/mips/tlb.c#6 (text+ko) ==== @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -105,7 +106,7 @@ pte = tlb_pte_find(pmap->pm_lev1, va); if (pte_valid(pte)) tlb_invalidate_page(va); - *pte = MIPS_PA_TO_PFN(pa) | bits; + *pte = MIPS_PA_TO_PFN(pa) | bits | PG_G; } void @@ -140,13 +141,11 @@ tlb_insert(vm_offset_t va, pt_entry_t pte0, pt_entry_t pte1) { va &= ~PAGE_MASK; - critical_enter(); /* XXX assumes kernel region - region 3. */ mips_wr_entryhi(MIPS_HI_R_KERNEL | MIPS_HI_VA_TO_VPN2(va) /* XXX | ASID */); mips_wr_entrylo0(pte0); mips_wr_entrylo1(pte1); mips_tlbwr(); - critical_exit(); } void @@ -174,7 +173,7 @@ void tlb_modified(void *badvaddr) { - pt_entry_t *pte, entry; + pt_entry_t *pte; vm_offset_t va; va = (vm_offset_t) badvaddr; @@ -183,6 +182,8 @@ /* * Do we really want to dirty this page? */ + if (!pte_valid(pte)) + panic("write to invalid page"); if (pte_ro(pte)) panic("write to ro page"); if (pte_dirty(pte)) @@ -193,15 +194,9 @@ */ *pte |= PG_D; - /* - * Make a PTE purely to insert into the TLB. - */ - entry = *pte & MIPS_PFN_MASK; - entry |= *pte & PG_HW; - if (va & PG_ODDPG) { - tlb_update(va, pte[-1], entry); + tlb_update(va, pte[-1], pte[0]); } else { - tlb_update(va, entry, pte[1]); + tlb_update(va, pte[0], pte[1]); } } From owner-p4-projects@FreeBSD.ORG Sun Nov 2 01:16:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3C54316A4D0; Sun, 2 Nov 2003 01:16:37 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 16C5816A4CE for ; Sun, 2 Nov 2003 01:16:37 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8E12B43FD7 for ; Sun, 2 Nov 2003 01:16:36 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA29GaXJ059401 for ; Sun, 2 Nov 2003 01:16:36 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA29Ga37059398 for perforce@freebsd.org; Sun, 2 Nov 2003 01:16:36 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 01:16:36 -0800 (PST) Message-Id: <200311020916.hA29Ga37059398@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41102 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 09:16:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=41102 Change 41102 by jmallett@jmallett_dalek on 2003/11/02 01:16:21 remove some extraordinarily useless boot clutter. Affected files ... .. //depot/projects/mips/sys/mips/mips/machdep.c#35 edit .. //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#21 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/machdep.c#35 (text+ko) ==== @@ -576,8 +576,8 @@ if (len > max) panic("Exception code too big for vector %lx\n", addr); - printf("Installing exception code %p:%p at %lx, %zu bytes (%zu free)\n", - begin, end, addr, len, max - len); + if (len == max) + printf("Exception vector at %lx has no more free space\n", addr); memcpy((void *)addr, begin, len); } ==== //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#21 (text+ko) ==== @@ -151,23 +151,17 @@ case ARCBIOS_MEM_FreeContiguous: case ARCBIOS_MEM_FreeMemory: availmem += btoc(size); - printf("Physical available block %d:\n", j); - printf("Available memory range %0x-%0x\n", - first, last); phys_avail[j + 0] = first; phys_avail[j + 1] = last; j += 2; break; default: - printf("Memory range %0x-%0x type %d\n", - first, last, mem->Type); break; } physsz += size; } if (kend == 0) panic("End of kernel should not be 0"); - printf("kernel memory ends at %lx\n", kend); init_param2(ctob(availmem)); mips_init(); From owner-p4-projects@FreeBSD.ORG Sun Nov 2 01:43:11 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 43EE716A4D0; Sun, 2 Nov 2003 01:43:11 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 06B0A16A4CE for ; Sun, 2 Nov 2003 01:43:11 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6CB0543F93 for ; Sun, 2 Nov 2003 01:43:10 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA29hAXJ061098 for ; Sun, 2 Nov 2003 01:43:10 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA29h9Ut061095 for perforce@freebsd.org; Sun, 2 Nov 2003 01:43:09 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 01:43:09 -0800 (PST) Message-Id: <200311020943.hA29h9Ut061095@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41105 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 09:43:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=41105 Change 41105 by jmallett@jmallett_dalek on 2003/11/02 01:42:33 Remove TLBUpdate from NetBSD. Affected files ... .. //depot/projects/mips/sys/mips/include/locore.h#10 edit .. //depot/projects/mips/sys/mips/mips/mips_subr.S#15 edit Differences ... ==== //depot/projects/mips/sys/mips/include/locore.h#10 (text+ko) ==== @@ -34,7 +34,6 @@ void mips64_TBIA(int); void mips64_TBIAP(int); void mips64_TBIS(vm_paddr_t); -int mips64_TLBUpdate(u_int, u_int); void mips64_TLBRead(int, struct tlb *); void mips64_wbflush(void); @@ -46,7 +45,6 @@ #define MIPS_TBIA() mips64_TBIA(mips_num_tlb_entries) #define MIPS_TBIAP() mips64_TBIAP(mips_num_tlb_entries) #define MIPS_TBIS mips64_TBIS -#define MachTLBUpdate mips64_TLBUpdate /* * CPU identification, from PRID register. ==== //depot/projects/mips/sys/mips/mips/mips_subr.S#15 (text+ko) ==== @@ -178,129 +178,6 @@ /*-------------------------------------------------------------------------- * - * mipsN_TLBUpdate -- - * - * Update the TLB if highreg is found; otherwise, enter the data. - * - * mips3_TLBUpdate(virpageadr, lowregx) - * unsigned virpageadr, lowregx; - * - * Results: - * < 0 if loaded >= 0 if updated. - * - * Side effects: - * None. - * - *-------------------------------------------------------------------------- - */ -LEAF(MIPSX(TLBUpdate)) - mfc0 v1, MIPS_COP_0_STATUS # Save the status register. - mtc0 zero, MIPS_COP_0_STATUS # Disable interrupts - COP0_SYNC - and t1, a0, PG_ODDPG # t1 = Even/Odd flag - li v0, (PG_HVPN | PG_ASID) - and a0, a0, v0 - _MFC0 t0, MIPS_COP_0_TLB_HI # Save current PID - _MTC0 a0, MIPS_COP_0_TLB_HI # Init high reg - COP0_SYNC - and a2, a1, PG_G # Copy global bit - nop - nop - tlbp # Probe for the entry. - COP0_SYNC - _SLL a1, a1, WIRED_SHIFT # Clear top 34 bits of EntryLo - _SRL a1, a1, WIRED_SHIFT - bne t1, zero, 2f # Decide even odd - mfc0 v0, MIPS_COP_0_TLB_INDEX # See what we got -/* EVEN */ - nop - bltz v0, 1f # index < 0 => !found - nop - nop # required for QED5230 - - tlbr # update, read entry first - COP0_SYNC - nop - nop - nop - _MTC0 a1, MIPS_COP_0_TLB_LO0 # init low reg0. - COP0_SYNC - nop - nop # required for QED5230 - tlbwi # update slot found - COP0_SYNC - nop # required for QED5230 - nop # required for QED5230 - b 4f - nop -1: - mtc0 zero, MIPS_COP_0_TLB_PG_MASK # init mask. - COP0_SYNC - _MTC0 a0, MIPS_COP_0_TLB_HI # init high reg. - COP0_SYNC - _MTC0 a1, MIPS_COP_0_TLB_LO0 # init low reg0. - COP0_SYNC - _MTC0 a2, MIPS_COP_0_TLB_LO1 # init low reg1. - COP0_SYNC - nop - nop # required for QED5230 - tlbwr # enter into a random slot - COP0_SYNC - nop # required for QED5230 - nop # required for QED5230 - b 4f - nop -/* ODD */ -2: - nop - bltz v0, 3f # index < 0 => !found - nop - nop # required for QED5230 - - tlbr # read the entry first - COP0_SYNC - nop - nop - nop - _MTC0 a1, MIPS_COP_0_TLB_LO1 # init low reg1. - COP0_SYNC - nop - nop # required for QED5230 - tlbwi # update slot found - COP0_SYNC - nop # required for QED5230 - nop # required for QED5230 - b 4f - nop -3: - mtc0 zero, MIPS_COP_0_TLB_PG_MASK # init mask. - COP0_SYNC - _MTC0 a0, MIPS_COP_0_TLB_HI # init high reg. - COP0_SYNC - _MTC0 a2, MIPS_COP_0_TLB_LO0 # init low reg0. - COP0_SYNC - _MTC0 a1, MIPS_COP_0_TLB_LO1 # init low reg1. - COP0_SYNC - nop - nop # required for QED5230 - tlbwr # enter into a random slot - COP0_SYNC -4: # Make shure pipeline - nop # advances before we - nop # uses the tlb. - nop - nop - _MTC0 t0, MIPS_COP_0_TLB_HI # restore PID - COP0_SYNC - nop # required for QED5230 - nop # required for QED5230 - j ra - mtc0 v1, MIPS_COP_0_STATUS # Restore the status register - COP0_SYNC # XXXX - not executed!! -END(MIPSX(TLBUpdate)) - -/*-------------------------------------------------------------------------- - * * mipsN_TLBRead -- * * Read the TLB entry. From owner-p4-projects@FreeBSD.ORG Sun Nov 2 01:46:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DC5C616A4CE; Sun, 2 Nov 2003 01:46:15 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8E4AE16A4CE for ; Sun, 2 Nov 2003 01:46:15 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E2A4843FB1 for ; Sun, 2 Nov 2003 01:46:14 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA29kEXJ061363 for ; Sun, 2 Nov 2003 01:46:14 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA29kEuY061355 for perforce@freebsd.org; Sun, 2 Nov 2003 01:46:14 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 01:46:14 -0800 (PST) Message-Id: <200311020946.hA29kEuY061355@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41106 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 09:46:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=41106 Change 41106 by jmallett@jmallett_dalek on 2003/11/02 01:45:19 Remove NetBSD TBIS, ... Affected files ... .. //depot/projects/mips/sys/mips/include/locore.h#11 edit .. //depot/projects/mips/sys/mips/mips/mips_subr.S#16 edit .. //depot/projects/mips/sys/mips/mips/pmap.c#19 edit .. //depot/projects/mips/sys/mips/mips/tlb.c#7 edit Differences ... ==== //depot/projects/mips/sys/mips/include/locore.h#11 (text+ko) ==== @@ -33,7 +33,6 @@ void mips64_TBIA(int); void mips64_TBIAP(int); -void mips64_TBIS(vm_paddr_t); void mips64_TLBRead(int, struct tlb *); void mips64_wbflush(void); @@ -44,7 +43,6 @@ #define MIPS_TBIA() mips64_TBIA(mips_num_tlb_entries) #define MIPS_TBIAP() mips64_TBIAP(mips_num_tlb_entries) -#define MIPS_TBIS mips64_TBIS /* * CPU identification, from PRID register. ==== //depot/projects/mips/sys/mips/mips/mips_subr.S#16 (text+ko) ==== @@ -234,61 +234,6 @@ END(MIPSX(TLBRead)) /* - * void mipsN_TBIS(vaddr_t va) - * - * Invalidate a TLB entry which has the given vaddr and ASID if found. - */ -LEAF_NOPROFILE(MIPSX(TBIS)) - mfc0 v1, MIPS_COP_0_STATUS # save status register - mtc0 zero, MIPS_COP_0_STATUS # disable interrupts - COP0_SYNC - - li v0, (PG_HVPN | PG_ASID | PG_R3) # XXX assumes Region3 - _MFC0 t0, MIPS_COP_0_TLB_HI # save current ASID - mfc0 t3, MIPS_COP_0_TLB_PG_MASK # save current pgMask - and a0, a0, v0 # make sure valid entryHi - _MTC0 a0, MIPS_COP_0_TLB_HI # look for the vaddr & ASID - COP0_SYNC - nop - nop - tlbp # probe the entry in question - COP0_SYNC - nop - nop - mfc0 v0, MIPS_COP_0_TLB_INDEX # see what we got - /*nop # -slip-*/ - /*nop # -slip-*/ - bltz v0, 1f # index < 0 then skip - li t1, MIPS_KSEG0_START # invalid address - sll v0, v0, 13 # PAGE_SHIFT + 1 - addu t1, t1, v0 - _MTC0 t1, MIPS_COP_0_TLB_HI # make entryHi invalid - COP0_SYNC - _MTC0 zero, MIPS_COP_0_TLB_LO0 # zero out entryLo0 - COP0_SYNC - _MTC0 zero, MIPS_COP_0_TLB_LO1 # zero out entryLo1 - COP0_SYNC - mtc0 zero, MIPS_COP_0_TLB_PG_MASK # zero out pageMask - COP0_SYNC - nop - nop - tlbwi - COP0_SYNC - nop - nop -1: - _MTC0 t0, MIPS_COP_0_TLB_HI # restore current ASID - COP0_SYNC - mtc0 t3, MIPS_COP_0_TLB_PG_MASK # restore pgMask - COP0_SYNC - nop - nop - j ra - mtc0 v1, MIPS_COP_0_STATUS # restore status register - COP0_SYNC # XXXX - not executed!! -END(MIPSX(TBIS)) - -/* * void mips3_TBIAP(int sizeofTLB) * * Invalidate TLB entries belong to per process user spaces while ==== //depot/projects/mips/sys/mips/mips/pmap.c#19 (text+ko) ==== @@ -451,7 +451,7 @@ { if (pmap->pm_active) { - MIPS_TBIS(va); + tlb_invalidate_page(va); /* XXX ensure coherency? */ } else { pmap_invalidate_asid(pmap); ==== //depot/projects/mips/sys/mips/mips/tlb.c#7 (text+ko) ==== @@ -152,9 +152,7 @@ tlb_invalidate_page(vm_offset_t va) { va &= ~PAGE_MASK; -#if 0 /* XXX NetBSD code is faulty. Invalidate ALL. */ - MIPS_TBIS(va); -#else +#if 1 /* XXX NetBSD code is faulty. Invalidate ALL. */ MIPS_TBIA(); #endif } From owner-p4-projects@FreeBSD.ORG Sun Nov 2 10:43:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0421416A4D0; Sun, 2 Nov 2003 10:43:18 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CC79C16A4CE for ; Sun, 2 Nov 2003 10:43:17 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5376343FD7 for ; Sun, 2 Nov 2003 10:43:17 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA2IhHXJ014426 for ; Sun, 2 Nov 2003 10:43:17 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA2IhGlG014423 for perforce@freebsd.org; Sun, 2 Nov 2003 10:43:16 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 10:43:16 -0800 (PST) Message-Id: <200311021843.hA2IhGlG014423@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41122 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 18:43:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=41122 Change 41122 by jmallett@jmallett_dalek on 2003/11/02 10:42:59 Kill all PG_ flags referring to EntryHi bits. Affected files ... .. //depot/projects/mips/sys/mips/include/pte.h#12 edit Differences ... ==== //depot/projects/mips/sys/mips/include/pte.h#12 (text+ko) ==== @@ -87,22 +87,6 @@ #define MIPS_HI_VA_TO_VPN2(va) ((va) & MIPS_HI_VPN2_MASK) /* - * TLB page bits that aren't really flags: - * R0: Region 0, user - * R1: Region 1, supervisor - * R3: Region 3, kernel - * ODDPG: Is this page odd? ! XXX NetBSD compat - * HVPN: Hardware VPN mask ! XXX NetBSD compat - * ASID: Address space ID - */ -#define PG_R0 MIPS_HI_R_USER -#define PG_R1 MIPS_HI_R_SUPERVISOR -#define PG_R3 MIPS_HI_R_KERNEL -#define PG_ODDPG 0x00001000 -#define PG_HVPN MIPS_HI_VPN2_MASK -#define PG_ASID 0x000000ff - -/* * TLB flags managed in hardware: * C: We ignore this field, as it will only give us a * headache in certain CPUs. Better not to bother for From owner-p4-projects@FreeBSD.ORG Sun Nov 2 11:27:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5BD5516A4D0; Sun, 2 Nov 2003 11:27:13 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3541016A4CE for ; Sun, 2 Nov 2003 11:27:13 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 49AEA43FD7 for ; Sun, 2 Nov 2003 11:27:12 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA2JRCXJ018174 for ; Sun, 2 Nov 2003 11:27:12 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA2JRBhv018171 for perforce@freebsd.org; Sun, 2 Nov 2003 11:27:11 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 11:27:11 -0800 (PST) Message-Id: <200311021927.hA2JRBhv018171@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41124 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 19:27:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=41124 Change 41124 by jmallett@jmallett_dalek on 2003/11/02 11:27:07 Do things a little more programmatically. Affected files ... .. //depot/projects/mips/sys/mips/mips/tlb.c#8 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/tlb.c#8 (text+ko) ==== @@ -106,6 +106,9 @@ pte = tlb_pte_find(pmap->pm_lev1, va); if (pte_valid(pte)) tlb_invalidate_page(va); + if ((bits & PG_V) == 0) + printf("pmap %p entering invalid mapping for va %lx to pa %lx [%lx]\n", + pmap, (u_long)va, (u_long)pa, (u_long)bits); *pte = MIPS_PA_TO_PFN(pa) | bits | PG_G; } @@ -140,11 +143,18 @@ static void tlb_insert(vm_offset_t va, pt_entry_t pte0, pt_entry_t pte1) { + u_long ehi; + va &= ~PAGE_MASK; - /* XXX assumes kernel region - region 3. */ - mips_wr_entryhi(MIPS_HI_R_KERNEL | MIPS_HI_VA_TO_VPN2(va) /* XXX | ASID */); - mips_wr_entrylo0(pte0); - mips_wr_entrylo1(pte1); + ehi = 0; + ehi |= (va & (1UL << 63 | 1UL << 62)); + if ((va & (1UL << 63)) != 0) + ehi |= (0x800000UL - 1) << 40; + ehi |= MIPS_HI_VA_TO_VPN2(va); + ehi |= /* asid */0; + mips_wr_entryhi(ehi); + mips_wr_entrylo0(pte0 | PG_G); + mips_wr_entrylo1(pte1 | PG_G); mips_tlbwr(); } @@ -192,7 +202,7 @@ */ *pte |= PG_D; - if (va & PG_ODDPG) { + if ((va >> PAGE_SHIFT) & 1) { tlb_update(va, pte[-1], pte[0]); } else { tlb_update(va, pte[0], pte[1]); From owner-p4-projects@FreeBSD.ORG Sun Nov 2 11:44:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B791616A4D0; Sun, 2 Nov 2003 11:44:35 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9279816A4CE for ; Sun, 2 Nov 2003 11:44:35 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E854243FBD for ; Sun, 2 Nov 2003 11:44:34 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA2JiYXJ019239 for ; Sun, 2 Nov 2003 11:44:34 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA2JiY1g019236 for perforce@freebsd.org; Sun, 2 Nov 2003 11:44:34 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 11:44:34 -0800 (PST) Message-Id: <200311021944.hA2JiY1g019236@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41126 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 19:44:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=41126 Change 41126 by jmallett@jmallett_dalek on 2003/11/02 11:44:11 Fun with TLB invalidate. Affected files ... .. //depot/projects/mips/sys/mips/include/cpufunc.h#14 edit .. //depot/projects/mips/sys/mips/include/locore.h#12 edit .. //depot/projects/mips/sys/mips/include/tlb.h#3 edit .. //depot/projects/mips/sys/mips/mips/machdep.c#36 edit .. //depot/projects/mips/sys/mips/mips/mips_subr.S#17 edit .. //depot/projects/mips/sys/mips/mips/pmap.c#20 edit .. //depot/projects/mips/sys/mips/mips/tlb.c#9 edit Differences ... ==== //depot/projects/mips/sys/mips/include/cpufunc.h#14 (text+ko) ==== @@ -86,6 +86,7 @@ MIPS_RDRW64_COP0(entrylo0, MIPS_COP_0_TLB_LO0) MIPS_RDRW64_COP0(entrylo1, MIPS_COP_0_TLB_LO1) MIPS_RDRW64_COP0(entryhi, MIPS_COP_0_TLB_HI) +MIPS_RDRW64_COP0(index, MIPS_COP_0_TLB_INDEX) MIPS_RDRW64_COP0(pagemask, MIPS_COP_0_TLB_PG_MASK) #undef MIPS_RDRW64_COP0 ==== //depot/projects/mips/sys/mips/include/locore.h#12 (text+ko) ==== @@ -31,8 +31,6 @@ struct tlb; -void mips64_TBIA(int); -void mips64_TBIAP(int); void mips64_TLBRead(int, struct tlb *); void mips64_wbflush(void); @@ -41,9 +39,6 @@ uint32_t mipsNN_cp0_config2_read(void); uint32_t mipsNN_cp0_config3_read(void); -#define MIPS_TBIA() mips64_TBIA(mips_num_tlb_entries) -#define MIPS_TBIAP() mips64_TBIAP(mips_num_tlb_entries) - /* * CPU identification, from PRID register. */ ==== //depot/projects/mips/sys/mips/include/tlb.h#3 (text+ko) ==== @@ -20,6 +20,8 @@ void tlb_bootstrap(vm_size_t, vm_offset_t (*)(vm_size_t)); void tlb_enter(pmap_t, vm_offset_t, vm_paddr_t, pt_entry_t); +void tlb_invalidate_all(void); +void tlb_invalidate_one(int); void tlb_invalidate_page(vm_offset_t); void tlb_modified(void *); void tlb_remove(pmap_t, vm_offset_t); ==== //depot/projects/mips/sys/mips/mips/machdep.c#36 (text+ko) ==== @@ -173,6 +173,7 @@ #include #include #include +#include #ifdef DDB #include @@ -730,7 +731,7 @@ case CPU_ARCH_MIPS3: case CPU_ARCH_MIPS64: mips_wr_wired(0); - mips64_TBIA(mips_num_tlb_entries); + tlb_invalidate_all(); mips_wr_wired(MIPS3_TLB_WIRED_UPAGES); mips64_vector_init(); break; ==== //depot/projects/mips/sys/mips/mips/mips_subr.S#17 (text+ko) ==== @@ -232,115 +232,3 @@ j ra # Stand there where you are sd ta1, 24(a1) # Store EntryLo1 END(MIPSX(TLBRead)) - -/* - * void mips3_TBIAP(int sizeofTLB) - * - * Invalidate TLB entries belong to per process user spaces while - * leaving entries for kernel space marked global intact. - */ -LEAF_NOPROFILE(MIPSX(TBIAP)) - mfc0 v1, MIPS_COP_0_STATUS # save status register - mtc0 zero, MIPS_COP_0_STATUS # disable interrupts - COP0_SYNC - - move t2, a0 - mfc0 t1, MIPS_COP_0_TLB_WIRED - li v0, MIPS_KSEG0_START # invalid address - mfc0 t3, MIPS_COP_0_TLB_PG_MASK # save current pgMask - - /* do {} while (t1 < t2) */ -1: - mtc0 t1, MIPS_COP_0_TLB_INDEX # set index - COP0_SYNC - sll ta0, t1, 13 # PAGE_SHIFT + 1 - nop - /* XXX simonb: lose this nop for mips32/64? */ - nop - tlbr # obtain an entry - COP0_SYNC - /* XXX simonb: lose these nops for mips32/64? */ - nop - nop - nop - _MFC0 a0, MIPS_COP_0_TLB_LO1 - and a0, a0, PG_G # check to see it has G bit - bnez a0, 2f - addu ta0, ta0, v0 - - _MTC0 ta0, MIPS_COP_0_TLB_HI # make entryHi invalid - COP0_SYNC - _MTC0 zero, MIPS_COP_0_TLB_LO0 # zero out entryLo0 - COP0_SYNC - _MTC0 zero, MIPS_COP_0_TLB_LO1 # zero out entryLo1 - COP0_SYNC - mtc0 zero, MIPS_COP_0_TLB_PG_MASK # zero out mask entry - COP0_SYNC - /* XXX simonb: lose these nops for mips32/64? */ - nop - nop - tlbwi # invalidate the TLB entry - COP0_SYNC -2: - addu t1, t1, 1 - bne t1, t2, 1b - nop - - mtc0 t3, MIPS_COP_0_TLB_PG_MASK # restore pgMask - COP0_SYNC - /* XXX simonb: lose these nops for mips32/64? */ - nop - nop - j ra # new ASID will be set soon - mtc0 v1, MIPS_COP_0_STATUS # restore status register - COP0_SYNC # XXXX - not executed!! -END(MIPSX(TBIAP)) - -/* - * void mipsN_TBIA(int sizeofTLB) - * - * Invalidate all of non-wired TLB entries. - */ -LEAF_NOPROFILE(MIPSX(TBIA)) - mfc0 v1, MIPS_COP_0_STATUS # save status register - mtc0 zero, MIPS_COP_0_STATUS # disable interrupts - COP0_SYNC - - li v0, MIPS_KSEG0_START # invalid address - _MFC0 t0, MIPS_COP_0_TLB_HI # save current ASID - mfc0 t1, MIPS_COP_0_TLB_WIRED - mfc0 t2, MIPS_COP_0_TLB_PG_MASK # save current pgMask - - _MTC0 zero, MIPS_COP_0_TLB_LO0 # zero out entryLo0 - COP0_SYNC - _MTC0 zero, MIPS_COP_0_TLB_LO1 # zero out entryLo1 - COP0_SYNC - mtc0 zero, MIPS_COP_0_TLB_PG_MASK # zero out pageMask - COP0_SYNC - - /* do {} while (t1 < a0) */ -1: - mtc0 t1, MIPS_COP_0_TLB_INDEX # set TLBindex - COP0_SYNC - sll ta0, t1, 13 # PAGE_SHIFT + 1 - add ta0, v0, ta0 - _MTC0 ta0, MIPS_COP_0_TLB_HI # make entryHi invalid - COP0_SYNC - nop - nop - tlbwi # clear the entry - COP0_SYNC - addu t1, t1, 1 # increment index - bne t1, a0, 1b - nop - - _MTC0 t0, MIPS_COP_0_TLB_HI # restore ASID - COP0_SYNC - mtc0 t2, MIPS_COP_0_TLB_PG_MASK # restore pgMask - COP0_SYNC - nop - nop - j ra - mtc0 v1, MIPS_COP_0_STATUS # restore status register - COP0_SYNC # XXXX - not executed!! -END(MIPSX(TBIA)) ==== //depot/projects/mips/sys/mips/mips/pmap.c#20 (text+ko) ==== @@ -462,7 +462,7 @@ pmap_invalidate_all(pmap_t pmap) { if (pmap->pm_active) { - MIPS_TBIAP(); + tlb_invalidate_all(); /* XXX ensure coherency? */ } else pmap_invalidate_asid(pmap); @@ -507,7 +507,7 @@ * clear out the TLB and the I-cache since they are tagged * with the ASID. */ - MIPS_TBIAP(); + tlb_invalidate_all(); /* XXX flush icache. */ } pmap->pm_asid = PCPU_GET(next_asid); ==== //depot/projects/mips/sys/mips/mips/tlb.c#9 (text+ko) ==== @@ -92,7 +92,7 @@ * Initialise ASID and clear TLB. */ mips_wr_entryhi(0); - MIPS_TBIA(); + tlb_invalidate_all(); } void @@ -159,12 +159,34 @@ } void +tlb_invalidate_all(void) +{ + u_long asid; + int i; + + asid = mips_rd_entryhi(); + for (i = 0; i < mips_num_tlb_entries; i++) + tlb_invalidate_one(i); + mips_wr_entryhi(asid); +} + +void +tlb_invalidate_one(int i) +{ + u_long ehi; + + /* Bogus VPN2. */ + ehi = MIPS_XKSEG_START + 2 * i * PAGE_SIZE; + mips_wr_index(i); + mips_wr_entryhi(ehi); + mips_tlbwi(); +} + +void tlb_invalidate_page(vm_offset_t va) { va &= ~PAGE_MASK; -#if 1 /* XXX NetBSD code is faulty. Invalidate ALL. */ - MIPS_TBIA(); -#endif + tlb_invalidate_all(); } void From owner-p4-projects@FreeBSD.ORG Sun Nov 2 15:05:50 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C44D816A4D1; Sun, 2 Nov 2003 15:05:49 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9DD9116A4CE for ; Sun, 2 Nov 2003 15:05:49 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 761D543FD7 for ; Sun, 2 Nov 2003 15:05:48 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA2N5mXJ042517 for ; Sun, 2 Nov 2003 15:05:48 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA2N5lUm042514 for perforce@freebsd.org; Sun, 2 Nov 2003 15:05:47 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 15:05:47 -0800 (PST) Message-Id: <200311022305.hA2N5lUm042514@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41142 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Nov 2003 23:05:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=41142 Change 41142 by jmallett@jmallett_dalek on 2003/11/02 15:04:49 If we run across a 32-bit TLB refill, then we're confused, but better to go right into trap than to call panic. Affected files ... .. //depot/projects/mips/sys/mips/mips/exception.S#6 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/exception.S#6 (text+ko) ==== @@ -141,15 +141,27 @@ LEAF(TLBMissVector) .set noat - dla a0, 1f - dla k0, panic - dmtc0 k0, MIPS_COP_0_EXC_PC + dsubu sp, sp, TF_SIZE + dla k0, 1f + j exception_save_registers + move k1, sp +1: + /* + * No turning back, and nothing we can do. Just call into + * trap and let it tell the user lovely things about how bad + * their cache has been, + */ + mfc0 a1, MIPS_COP_0_CAUSE + dmfc0 a2, MIPS_COP_0_BAD_VADDR + jal trap + move a0, k1 + + jal exception_restore_registers + move a0, sp + daddu sp, sp, TF_SIZE eret .set at VEND(TLBMissVector) - .data -1: .asciiz "32-bit TLB miss!?\n" - .text /* * XXX kernel only. For now that makes sense. From owner-p4-projects@FreeBSD.ORG Sun Nov 2 16:02:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CED6916A4D0; Sun, 2 Nov 2003 16:01:59 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9199116A4CE for ; Sun, 2 Nov 2003 16:01:59 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF8DD43F3F for ; Sun, 2 Nov 2003 16:01:58 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA301wXJ046547 for ; Sun, 2 Nov 2003 16:01:58 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA301w0a046544 for perforce@freebsd.org; Sun, 2 Nov 2003 16:01:58 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 16:01:58 -0800 (PST) Message-Id: <200311030001.hA301w0a046544@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41145 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Nov 2003 00:02:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=41145 Change 41145 by jmallett@jmallett_dalek on 2003/11/02 16:01:46 Remove useless constants. Remove undefined stuff from pmap, since some of it relies on constants I'm not comfy with right now. Use consistent PAGE_SIZE/PAGE_SHIFT constants (or try to), so as to not be bitten by pages being 4K, but being treated like they're 8K or something stupid like that. The VPN2 *is* divided by two, so don't trim an extra bit for no good reason. Basically, if we're doing 4K pages (we are), then the VPN2 starts at bit13, whereas a VPN starts at bit12, so we have a full 0xf...f, not 0xf...e. Gets to cpu probe stuff again, only to blow up in more confusing ways down the line (callouts being bzero'd). Affected files ... .. //depot/projects/mips/sys/mips/include/param.h#12 edit .. //depot/projects/mips/sys/mips/include/pmap.h#12 edit .. //depot/projects/mips/sys/mips/include/pte.h#13 edit .. //depot/projects/mips/sys/mips/mips/exception.S#7 edit .. //depot/projects/mips/sys/mips/mips/pmap.c#21 edit .. //depot/projects/mips/sys/mips/mips/tlb.c#10 edit Differences ... ==== //depot/projects/mips/sys/mips/include/param.h#12 (text+ko) ==== @@ -29,9 +29,6 @@ * to be the number of per-process-wired kernel-stack pages/PTES. */ -#define SSIZE 1 /* initial stack size/NBPG */ -#define SINCR 1 /* increment of stack/NBPG */ - #define UPAGES 2 /* pages of u-area */ #define USPACE (UPAGES*NBPG) /* size of u-area in bytes */ @@ -69,47 +66,21 @@ #define ALIGNBYTES _ALIGNBYTES #define ALIGN(p) _ALIGN(p) -#define NBPG 8192 /* bytes/page */ -#define PGOFSET (NBPG-1) /* byte offset into page */ -#define PGSHIFT 13 /* LOG2(NBPG) */ -#define NPTEPG (NBPG/4) - -#define NBSEG 0x400000 /* bytes/segment */ -#define SEGOFSET (NBSEG-1) /* byte offset into segment */ -#define SEGSHIFT 22 /* LOG2(NBSEG) */ +#define NBPG (PAGE_SIZE) -/* - * Minimum and maximum sizes of the kernel malloc arena in PAGE_SIZE-sized - * logical pages. - */ -#define NKMEMPAGES_MIN_DEFAULT ((8 * 1024 * 1024) >> PAGE_SHIFT) -#define NKMEMPAGES_MAX_DEFAULT ((128 * 1024 * 1024) >> PAGE_SHIFT) - #define atop(x) ((unsigned long)(x) >> PAGE_SHIFT) #define ptoa(x) ((unsigned long)(x) << PAGE_SHIFT) #define pgtok(x) ((unsigned long)(x) * (PAGE_SIZE / 1024)) -/* pages ("clicks") (4096 bytes) to disk blocks */ -#define ctod(x) ((x) << (PGSHIFT - DEV_BSHIFT)) -#define dtoc(x) ((x) >> (PGSHIFT - DEV_BSHIFT)) - /* pages to bytes */ -#define ctob(x) ((x) << PGSHIFT) -#define btoc(x) (((x) + PGOFSET) >> PGSHIFT) +#define ctob(x) ((x) << PAGE_SHIFT) +#define btoc(x) (((x) + PAGE_MASK) >> PAGE_SHIFT) /* bytes to disk blocks */ #define btodb(x) ((x) >> DEV_BSHIFT) #define dbtob(x) ((x) << DEV_BSHIFT) /* - * Map a ``block device block'' to a file system block. - * This should be device dependent, and should use the bsize - * field from the disk label. - * For now though just use DEV_BSIZE. - */ -#define bdbtofsb(bn) ((bn) / (BLKDEV_IOSIZE/DEV_BSIZE)) - -/* * Mach derived conversion macros */ #define round_page(x) ((((unsigned long)(x)) + NBPG - 1) & ~(NBPG-1)) ==== //depot/projects/mips/sys/mips/include/pmap.h#12 (text+ko) ==== @@ -87,30 +87,6 @@ #endif /*!LOCORE*/ -#define NLPT 3 /* levels of page tables */ -#define MIPS_PTSHIFT (PAGE_SHIFT-NLPT) /* bits that index within page tables */ -#define MIPS_PGBYTES (1 << PAGE_SHIFT) -#define MIPS_L3SHIFT PAGE_SHIFT -#define MIPS_L2SHIFT (MIPS_L3SHIFT+MIPS_PTSHIFT) -#define MIPS_L1SHIFT (MIPS_L2SHIFT+MIPS_PTSHIFT) - -/* - * Pte related macros - */ -#define VADDR(l1, l2, l3) (((l1) << MIPS_L1SHIFT) \ - + ((l2) << MIPS_L2SHIFT) \ - + ((l3) << MIPS_L3SHIFT) - -#ifndef NKPT -#define NKPT 9 /* initial number of kernel page tables */ -#endif -#define NKLEV2MAPS 255 /* max number of lev2 page tables */ -#define NKLEV3MAPS (NKLEV2MAPS << MIPS_PTSHIFT) /* max number of lev3 page tables */ - -#define PTLEV1I (NPTEPG-1) /* Lev0 entry that points to Lev0 */ -#define K0SEGLEV1I (NPTEPG/2) -#define K1SEGLEV1I (K0SEGLEV1I+(NPTEPG/4)) - #define NUSERLEV2MAPS (NPTEPG/2) #define NUSERLEV3MAPS (NUSERLEV2MAPS << MIPS_PTSHIFT) ==== //depot/projects/mips/sys/mips/include/pte.h#13 (text+ko) ==== @@ -79,9 +79,9 @@ #define MIPS_HI_FILL_SHIFT 40 #define MIPS_HI_VPN2_SHIFT 13 #ifdef LOCORE -#define MIPS_HI_VPN2_BMASK 0xFFFFFFE +#define MIPS_HI_VPN2_BMASK 0xFFFFFFF #else -#define MIPS_HI_VPN2_BMASK 0xFFFFFFEUL +#define MIPS_HI_VPN2_BMASK 0xFFFFFFFUL #endif #define MIPS_HI_VPN2_MASK (MIPS_HI_VPN2_BMASK << MIPS_HI_VPN2_SHIFT) #define MIPS_HI_VA_TO_VPN2(va) ((va) & MIPS_HI_VPN2_MASK) ==== //depot/projects/mips/sys/mips/mips/exception.S#7 (text+ko) ==== ==== //depot/projects/mips/sys/mips/mips/pmap.c#21 (text+ko) ==== @@ -622,7 +622,7 @@ pmap_kenter(vm_offset_t va, vm_offset_t pa) { - tlb_enter(kernel_pmap, va, pa, PG_V | PG_W); + tlb_enter(kernel_pmap, va, pa, PG_G | PG_V | PG_W); } /* @@ -903,34 +903,7 @@ pmap_pinit(pmap) register struct pmap *pmap; { - vm_page_t lev1pg; - - /* - * allocate object for the ptes - */ - if (pmap->pm_pteobj == NULL) - pmap->pm_pteobj = vm_object_allocate(OBJT_DEFAULT, NUSERLEV3MAPS + NUSERLEV2MAPS + 1); - - /* - * allocate the page directory page - */ - lev1pg = vm_page_grab(pmap->pm_pteobj, NUSERLEV3MAPS + NUSERLEV2MAPS, - VM_ALLOC_NORMAL | VM_ALLOC_RETRY | VM_ALLOC_WIRED); - - vm_page_lock_queues(); - vm_page_flag_clear(lev1pg, PG_BUSY); - lev1pg->valid = VM_PAGE_BITS_ALL; - vm_page_unlock_queues(); - - pmap->pm_lev1 = (pt_entry_t*) MIPS_PHYS_TO_KSEG0(VM_PAGE_TO_PHYS(lev1pg)); - if ((lev1pg->flags & PG_ZERO) == 0) - bzero(pmap->pm_lev1, PAGE_SIZE); - - - /* install self-referential address mapping entry (no ASID) */ - pmap->pm_lev1[PTLEV1I] = pmap_phys_to_pte(VM_PAGE_TO_PHYS(lev1pg)) - | PG_G | PG_V; - + panic("pmap_pinit %p", pmap); pmap->pm_ptphint = NULL; pmap->pm_active = 0; pmap->pm_asid = 0; @@ -980,9 +953,12 @@ curgeneration = object->generation; for (p = TAILQ_FIRST(&object->memq); p != NULL; p = n) { n = TAILQ_NEXT(p, listq); + panic("release p from pmap (%p, %p)", p, pmap); +#if 0 /* XXX */ if (p->pindex >= NUSERLEV3MAPS) { continue; } +#endif while (1) { if (/*!pmap_release_free_page(pmap, p) &&*/ (object->generation != curgeneration)) @@ -991,6 +967,7 @@ } for (p = TAILQ_FIRST(&object->memq); p != NULL; p = n) { n = TAILQ_NEXT(p, listq); +#if 0 /* XXX */ if (p->pindex < NUSERLEV3MAPS) { /* can this happen? maybe panic */ goto retry; @@ -999,6 +976,7 @@ lev1pg = p; continue; } +#endif while (1) { if (/*!pmap_release_free_page(pmap, p) &&*/ (object->generation != curgeneration)) ==== //depot/projects/mips/sys/mips/mips/tlb.c#10 (text+ko) ==== @@ -109,7 +109,7 @@ if ((bits & PG_V) == 0) printf("pmap %p entering invalid mapping for va %lx to pa %lx [%lx]\n", pmap, (u_long)va, (u_long)pa, (u_long)bits); - *pte = MIPS_PA_TO_PFN(pa) | bits | PG_G; + *pte = MIPS_PA_TO_PFN(pa) | bits; } void @@ -176,7 +176,7 @@ u_long ehi; /* Bogus VPN2. */ - ehi = MIPS_XKSEG_START + 2 * i * PAGE_SIZE; + ehi = MIPS_KSEG1_END + 2 * i * PAGE_SIZE; mips_wr_index(i); mips_wr_entryhi(ehi); mips_tlbwi(); From owner-p4-projects@FreeBSD.ORG Sun Nov 2 20:11:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D265816A4D0; Sun, 2 Nov 2003 20:11:15 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AD14816A4CE for ; Sun, 2 Nov 2003 20:11:15 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3233243FCB for ; Sun, 2 Nov 2003 20:11:15 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA34BFXJ076138 for ; Sun, 2 Nov 2003 20:11:15 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA34BECP076135 for perforce@freebsd.org; Sun, 2 Nov 2003 20:11:14 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sun, 2 Nov 2003 20:11:14 -0800 (PST) Message-Id: <200311030411.hA34BECP076135@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41157 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Nov 2003 04:11:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=41157 Change 41157 by jmallett@jmallett_dalek on 2003/11/02 20:10:14 useless formatting. Affected files ... .. //depot/projects/mips/sys/mips/mips/trap.c#11 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/trap.c#11 (text+ko) ==== @@ -126,12 +126,12 @@ } else printf(" (out of range)"); printf("\n"); - printf(" program counter = %lx\n", tf->tf_regs[TF_EPC]); - printf(" return address = %lx\n", tf->tf_regs[TF_RA]); + printf("program counter = %#lx\n", tf->tf_regs[TF_EPC]); + printf("return address = %#lx\n", tf->tf_regs[TF_RA]); printf("bad virtual address = %p\n", badvaddr); - printf(" cause = %x\n", cause); - printf(" status = %lx\n", tf->tf_regs[TF_SR]); - printf(" current thread = %p\n", curthread); + printf("cause = %#x\n", cause); + printf("status = %#lx\n", tf->tf_regs[TF_SR]); + printf("current thread = %p\n", curthread); switch (code) { case T_BREAK: From owner-p4-projects@FreeBSD.ORG Mon Nov 3 12:09:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B9DFF16A4D0; Mon, 3 Nov 2003 12:09:51 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9398916A4CE for ; Mon, 3 Nov 2003 12:09:51 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0CE8B43FAF for ; Mon, 3 Nov 2003 12:09:51 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA3K9oXJ079104 for ; Mon, 3 Nov 2003 12:09:50 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA3K9n7K079101 for perforce@freebsd.org; Mon, 3 Nov 2003 12:09:49 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 3 Nov 2003 12:09:49 -0800 (PST) Message-Id: <200311032009.hA3K9n7K079101@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41227 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Nov 2003 20:09:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=41227 Change 41227 by rwatson@rwatson_tislabs on 2003/11/03 12:09:04 mac_support.4 with very poor formatting represents the beginning of an attempt to more formally document support for various FreeBSD features in combination with MAC. Affected files ... .. //depot/projects/trustedbsd/mac/share/man/man4/Makefile#34 edit .. //depot/projects/trustedbsd/mac/share/man/man4/mac.4#7 edit .. //depot/projects/trustedbsd/mac/share/man/man4/mac_support.4#1 add Differences ... ==== //depot/projects/trustedbsd/mac/share/man/man4/Makefile#34 (text+ko) ==== @@ -128,6 +128,7 @@ mac_partition.4 \ mac_portacl.4 \ mac_seeotheruids.4 \ + mac_support.4 \ mac_stub.4 \ mac_test.4 \ mouse.4 \ ==== //depot/projects/trustedbsd/mac/share/man/man4/mac.4#7 (text+ko) ==== @@ -48,6 +48,9 @@ they cannot override traditional .Ux security provisions such as file permissions and superuser checks. +Support (and non-support) for a variety of kernel features is documented +in +.Xr mac_support 4 . .Pp Currently, the following MAC policy modules are shipped with .Fx : @@ -247,6 +250,7 @@ .Xr mac_partition 4 , .Xr mac_portacl 4 , .Xr mac_seeotheruids 4 , +.Xr max_support 4 , .Xr mac_test 4 , .Xr login.conf 5 , .Xr maclabel 7 , From owner-p4-projects@FreeBSD.ORG Mon Nov 3 12:11:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D998A16A4D0; Mon, 3 Nov 2003 12:11:54 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B4FDF16A4CE for ; Mon, 3 Nov 2003 12:11:54 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2D8B943FAF for ; Mon, 3 Nov 2003 12:11:54 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA3KBsXJ079330 for ; Mon, 3 Nov 2003 12:11:54 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA3KBrwP079327 for perforce@freebsd.org; Mon, 3 Nov 2003 12:11:53 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 3 Nov 2003 12:11:53 -0800 (PST) Message-Id: <200311032011.hA3KBrwP079327@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41228 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Nov 2003 20:11:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=41228 Change 41228 by rwatson@rwatson_tislabs on 2003/11/03 12:10:55 Synchronize to version comitted to main FreeBSD tree. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#9 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#9 (text+ko) ==== @@ -32,6 +32,8 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. + * + * $FreeBSD: src/sys/security/mac/mac_internal.h,v 1.103 2003/10/25 15:28:20 rwatson Exp $ */ /* @@ -48,6 +50,7 @@ * MAC Framework global types and typedefs. */ LIST_HEAD(mac_policy_list_head, mac_policy_conf); +MALLOC_DECLARE(M_MACTEMP); /* * MAC Framework global variables. @@ -63,11 +66,6 @@ #endif /* - * MAC Framework global types and constants. - */ -MALLOC_DECLARE(M_MACTEMP); - -/* * MAC Framework object/access counter primitives, conditionally * compiled. */ @@ -109,7 +107,6 @@ int mac_internalize_cred_label(struct label *label, char *string); void mac_relabel_cred(struct ucred *cred, struct label *newlabel); - void mac_copy_pipe_label(struct label *src, struct label *dest); void mac_destroy_pipe_label(struct label *label); int mac_externalize_pipe_label(struct label *label, char *elements, From owner-p4-projects@FreeBSD.ORG Mon Nov 3 15:46:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E7B3F16A4D0; Mon, 3 Nov 2003 15:46:04 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9C94516A4CE for ; Mon, 3 Nov 2003 15:46:04 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7BB3343FBF for ; Mon, 3 Nov 2003 15:46:01 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA3Nk1XJ005940 for ; Mon, 3 Nov 2003 15:46:01 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA3NjAW7005058 for perforce@freebsd.org; Mon, 3 Nov 2003 15:45:10 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 3 Nov 2003 15:45:10 -0800 (PST) Message-Id: <200311032345.hA3NjAW7005058@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41285 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Nov 2003 23:46:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=41285 Change 41285 by rwatson@rwatson_tislabs on 2003/11/03 15:44:13 Integrate the TrustedBSD audit branch forward to HEAD of 5.x, possibly imperfectly. Affected files ... .. //depot/projects/trustedbsd/audit/sys/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/alpha-gdbstub.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/api_up1000.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/atomic.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/autoconf.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/busdma_machdep.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/busspace.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/clock.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/cpuconf.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/critical.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/db_disasm.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/db_interface.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/db_trace.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_1000a.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_2100_a50.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_2100_a500.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_3000_300.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_3000_500.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_axppci_33.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_eb164.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_eb64plus.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_kn20aa.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_kn300.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_kn8ae.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_st550.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dec_st6600.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/dump_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/elf_machdep.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/exception.s#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/fp_emulate.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/genassym.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/ieee_float.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/in_cksum.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/interrupt.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/locore.s#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/machdep.c#7 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/mem.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/mp_machdep.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/pmap.c#7 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/prom.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/promcons.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/setdef0.c#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/setdef1.c#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/sgmap.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/support.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/swtch.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/sys_machdep.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/trap.c#6 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/alpha/vm_machdep.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/conf/GENERIC#6 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/conf/GENERIC.hints#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/conf/Makefile#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/conf/NOTES#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/conf/SIMOS#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/conf/gethints.awk#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/conf/gethints.pl#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/include/_inttypes.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/_limits.h#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/include/_stdint.h#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/include/_types.h#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/include/alpha_cpu.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/ansi.h#4 delete .. //depot/projects/trustedbsd/audit/sys/alpha/include/asm.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/atomic.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/bus.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/cpu.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/critical.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/db_machdep.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/elf.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/endian.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/float.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/fpu.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/kse.h#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/include/limits.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/md_var.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/param.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/pc/vesa.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/pcb.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/pmap.h#6 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/proc.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/prom.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/psl.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/include/reg.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/runq.h#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/include/setjmp.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/sigframe.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/signal.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/stdarg.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/types.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/include/ucontext.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/varargs.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/include/vmparam.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/isa/isa.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/isa/isa_dma.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/isa/mcclock_isa.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux_dummy.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux_genassym.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux_ipc64.h#1 branch .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux_machdep.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux_proto.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux_syscall.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux_sysent.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/linux_sysvec.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/linux/syscalls.master#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/mcbus/mcbus.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/mcbus/mcmem.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/mcbus/mcpcia.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/osf1/imgact_osf1.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/osf1/osf1.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/osf1/osf1_ioctl.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/osf1/osf1_misc.c#6 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/osf1/osf1_mount.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/osf1/osf1_signal.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/osf1/osf1_sysvec.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/osf1/osf1_util.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/apecs.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/apecs_pci.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/bwx.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/cia.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/cia_pci.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/irongate.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/irongate_pci.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/lca.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/lca_pci.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/pcibus.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/swiz.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/t2.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/t2_pci.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/tsunami.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/tsunami_pci.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/pci/tsunamireg.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/tc/am7990.c#4 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/am7990reg.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/am7990var.h#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/ascvar.h#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/esp.c#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/espreg.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/espvar.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/if_le_dec.c#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/if_le_ioasic.c#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/if_levar.h#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/ioasic.c#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/ioasicreg.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/ioasicvar.h#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/mcclock_ioasic.c#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/sticreg.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/sticvar.h#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tc.c#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcasic.c#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcdevs.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcdevs_data.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcds.c#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcds_dma.c#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcdsreg.h#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcdsvar.h#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcreg.h#2 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tc/tcvar.h#3 delete .. //depot/projects/trustedbsd/audit/sys/alpha/tlsb/dwlpx.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/tlsb/gbus.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/tlsb/kftxx.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/tlsb/mcclock_tlsb.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/tlsb/tlsb.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/tlsb/tlsbcpu.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/tlsb/tlsbmem.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/alpha/tlsb/zs_tlsb.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/amd64/Makefile#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/amd64-gdbstub.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/amd64_mem.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/atomic.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/autoconf.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/critical.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/db_disasm.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/db_interface.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/db_trace.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/genassym.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/identcpu.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/initcpu.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/legacy.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/mem.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/nexus.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/pmap.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/support.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/trap.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/tsc.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/compile/.cvsignore#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/conf/GENERIC#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/conf/Makefile#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/conf/gethints.awk#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/ia32/ia32_exception.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/ia32/ia32_signal.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/ia32/ia32_syscall.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/_inttypes.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/_limits.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/_stdint.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/_types.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/acpica_machdep.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/asm.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/asmacros.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/atomic.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/bus.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/bus_amd64.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/bus_dma.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/bus_memio.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/bus_pio.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/clock.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/cpu.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/cpufunc.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/cputypes.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/critical.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/db_machdep.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/elf.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/endian.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/exec.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/float.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/floatingpoint.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/frame.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/ieeefp.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/in_cksum.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/kse.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/legacyvar.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/limits.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/md_var.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/metadata.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/mutex.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/npx.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/param.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/pc/display.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/pcb.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/pcb_ext.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/pcpu.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/pmap.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/proc.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/profile.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/psl.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/ptrace.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/reg.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/reloc.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/resource.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/runq.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/segments.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/setjmp.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/sigframe.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/signal.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/smp.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/specialreg.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/stdarg.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/sysarch.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/trap.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/tss.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/ucontext.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/varargs.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/include/vmparam.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/clock.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/icu.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/icu_ipl.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/icu_vector.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/intr_machdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/intr_machdep.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/isa.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/isa.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/isa_dma.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/isa_dma.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/ithread.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/npx.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/timerreg.h#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/isa/vector.S#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/pci/pci_bus.c#1 branch .. //depot/projects/trustedbsd/audit/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/projects/trustedbsd/audit/sys/arm/include/_limits.h#1 branch .. //depot/projects/trustedbsd/audit/sys/arm/include/_stdint.h#1 branch .. //depot/projects/trustedbsd/audit/sys/arm/include/_types.h#1 branch .. //depot/projects/trustedbsd/audit/sys/arm/include/ansi.h#3 delete .. //depot/projects/trustedbsd/audit/sys/arm/include/elf.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/arm/include/endian.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/arm/include/limits.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/arm/include/param.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/arm/include/signal.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/arm/include/types.h#3 delete .. //depot/projects/trustedbsd/audit/sys/boot/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/boot1/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/boot1/boot1.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/boot1/sys.c#3 delete .. //depot/projects/trustedbsd/audit/sys/boot/alpha/cdboot/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/common/Makefile.common#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/common/conf.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/libalpha/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/libalpha/bootinfo.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/libalpha/common.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/libalpha/elf_freebsd.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/libalpha/srmdisk.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/loader/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/alpha/netboot/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/arc/lib/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/arc/lib/arcdisk.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/arc/lib/bootinfo.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/arc/lib/devicename.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/arc/lib/elf_freebsd.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/arc/loader/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/arc/loader/conf.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/bcache.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/boot.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/bootstrap.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/commands.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/console.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/dev_net.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/devopen.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/help.common#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/interp.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/interp_backslash.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/interp_forth.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/interp_parse.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/isapnp.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/load.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/load_aout.c#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/common/load_elf.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/load_elf32.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/common/load_elf64.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/common/loader.8#5 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/ls.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/misc.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/module.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/panic.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/pnp.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/common/ufsread.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/efi/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efi.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efi_nii.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efiapi.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/eficon.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efidebug.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efidef.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efidevp.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efifpswa.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efifs.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efilib.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efinet.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efipart.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efiprot.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efipxebc.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/efiser.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/i386/efibind.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/include/ia64/efibind.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/arch/ia64/ldscript.ia64#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/arch/ia64/start.S#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/bootinfo.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/copy.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/delay.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/efi_console.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/efiboot.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/efifs.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/efinet.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/elf_freebsd.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/exit.c#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/libefi.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/module.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/libefi/time.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/loader/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/loader/conf.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/loader/main.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/efi/loader/version#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ficl/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ficl/alpha/sysdep.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ficl/i386/sysdep.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ficl/ia64/sysdep.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ficl/loader.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ficl/prefix.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ficl/sparc64/sysdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/ficl/sparc64/sysdep.h#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/ficl/words.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/forth/beastie.4th#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/forth/frames.4th#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/forth/loader.4th#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/forth/loader.4th.8#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/forth/loader.conf#5 integrate .. //depot/projects/trustedbsd/audit/sys/boot/forth/loader.conf.5#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/forth/screen.4th#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/forth/support.4th#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/boot0/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/boot0/boot0.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/boot2/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/boot2/boot1.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/boot2/boot2.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/btx/Makefile.inc#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/i386/btx/btx/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/btx/btx/btx.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/btx/btxldr/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/btx/btxldr/btxldr.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/btx/lib/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/cdboot/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/kgzldr/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/kgzldr/boot.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/kgzldr/crt.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/kgzldr/kgzldr.m4#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/i386/kgzldr/lib.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/kgzldr/sio.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/kgzldr/start.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/aout_freebsd.c#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/biosacpi.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/bioscd.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/biosmem.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/biospci.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/biospnp.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/bootinfo.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/comconsole.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/devicename.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/elf_freebsd.c#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/gatea20.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/i386_copy.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/i386_module.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/libi386.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/nullconsole.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/pread.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/pxe.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/pxe.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/time.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/libi386/vidconsole.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/liloldr/Makefile#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/i386/liloldr/lilobsect.s#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/i386/liloldr/liloldr.s#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/i386/loader/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/loader/conf.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/loader/help.i386#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/loader/loader.rc#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/i386/loader/main.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/mbr/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/pxeldr/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/pxeldr/pxeboot.8#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/i386/pxeldr/pxeldr.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/Makefile#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/acpi_stub.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/bootinfo.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/copy.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/delay.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/devicename.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/efi_stub.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/elf_freebsd.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/exit.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/libski.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/module.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/pal_stub.S#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/sal_stub.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/skiconsole.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/skifs.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/ssc.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/libski/time.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/skiload/Makefile#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/skiload/conf.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/skiload/ldscript.ia64#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/skiload/main.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ia64/skiload/start.S#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/ofw/common/main.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/devicename.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/elf_freebsd.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/libofw.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/ofw_copy.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/ofw_devsearch.c#2 delete .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/ofw_disk.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/ofw_memory.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/ofw_net.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/openfirm.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/ofw/libofw/openfirm.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot0.5/start.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/Makefile#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/asm.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/bios.S#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/boot.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/boot.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/dinode.h#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/disk.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/fs.h#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/inode.h#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/io.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/probe_keyboard.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/quota.h#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/serial_16550.S#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/start.S#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/sys.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/boot2/table.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/btx/btx/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/btx/btxldr/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/btx/lib/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/kgzldr/Makefile#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/kgzldr/crt.s#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/libpc98/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/libpc98/biosdisk.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/libpc98/biosmem.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/libpc98/comconsole.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/libpc98/gatea20.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/libpc98/i386_module.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/pc98/libpc98/time.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/libpc98/vidconsole.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/loader/Makefile#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/pc98/loader/conf.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/pc98/loader/help.pc98#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/pc98/loader/main.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/powerpc/loader/Makefile#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/powerpc/loader/conf.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/powerpc/loader/metadata.c#1 branch .. //depot/projects/trustedbsd/audit/sys/boot/powerpc/loader/start.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/sparc64/boot1/Makefile#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/sparc64/boot1/boot1.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/boot/sparc64/loader/Makefile#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/sparc64/loader/locore.S#2 integrate .. //depot/projects/trustedbsd/audit/sys/boot/sparc64/loader/main.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/sparc64/loader/metadata.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/boot/sparc64/loader/version#1 branch .. //depot/projects/trustedbsd/audit/sys/cam/cam.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/cam_ccb.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/cam_extend.c#2 delete .. //depot/projects/trustedbsd/audit/sys/cam/cam_extend.h#2 delete .. //depot/projects/trustedbsd/audit/sys/cam/cam_periph.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/cam_periph.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/cam_queue.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/cam_sim.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/cam_xpt.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_all.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_cd.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_cd.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_ch.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_ch.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_da.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_iu.h#1 branch .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_low.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_low.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_low_pisa.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_message.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_pass.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_pt.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_sa.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_ses.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_targ_bh.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_target.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/cam/scsi/scsi_targetio.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/README#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/cnode.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_fbsd.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_io.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_namecache.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_namecache.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_pioctl.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_psdev.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_subr.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_subr.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_venus.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_venus.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_vfsops.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_vfsops.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_vnops.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/coda/coda_vnops.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/trustedbsd/audit/sys/compat/linprocfs/linprocfs.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_file.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_getcwd.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_ioctl.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_ioctl.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_ipc.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_mib.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_mib.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_misc.c#6 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_signal.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_socket.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_socket.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_stats.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_sysctl.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_uid16.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_util.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/linux/linux_util.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/pecoff/imgact_pecoff.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/imgact_svr4.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_exec.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_fcntl.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_filio.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_ioctl.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_ipc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_misc.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_resource.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_signal.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_socket.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_socket.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_sockio.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_stat.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_stream.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_sysvec.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_termios.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_ttold.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/compat/svr4/svr4_util.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/conf/Makefile.alpha#3 integrate .. //depot/projects/trustedbsd/audit/sys/conf/Makefile.amd64#1 branch .. //depot/projects/trustedbsd/audit/sys/conf/Makefile.i386#4 integrate .. //depot/projects/trustedbsd/audit/sys/conf/Makefile.ia64#4 integrate .. //depot/projects/trustedbsd/audit/sys/conf/Makefile.pc98#3 integrate .. //depot/projects/trustedbsd/audit/sys/conf/Makefile.powerpc#4 integrate .. //depot/projects/trustedbsd/audit/sys/conf/Makefile.sparc64#4 integrate .. //depot/projects/trustedbsd/audit/sys/conf/NOTES#4 integrate .. //depot/projects/trustedbsd/audit/sys/conf/files#11 integrate .. //depot/projects/trustedbsd/audit/sys/conf/files.alpha#5 integrate .. //depot/projects/trustedbsd/audit/sys/conf/files.amd64#1 branch .. //depot/projects/trustedbsd/audit/sys/conf/files.i386#6 integrate .. //depot/projects/trustedbsd/audit/sys/conf/files.ia64#5 integrate .. //depot/projects/trustedbsd/audit/sys/conf/files.pc98#6 integrate .. //depot/projects/trustedbsd/audit/sys/conf/files.powerpc#5 integrate .. //depot/projects/trustedbsd/audit/sys/conf/files.sparc64#4 integrate .. //depot/projects/trustedbsd/audit/sys/conf/kern.mk#1 branch .. //depot/projects/trustedbsd/audit/sys/conf/kern.post.mk#5 integrate .. //depot/projects/trustedbsd/audit/sys/conf/kern.pre.mk#5 integrate .. //depot/projects/trustedbsd/audit/sys/conf/kmod.mk#6 integrate .. //depot/projects/trustedbsd/audit/sys/conf/kmod_syms.awk#3 integrate .. //depot/projects/trustedbsd/audit/sys/conf/ldscript.alpha#2 integrate .. //depot/projects/trustedbsd/audit/sys/conf/ldscript.amd64#1 branch .. //depot/projects/trustedbsd/audit/sys/conf/ldscript.i386#2 integrate .. //depot/projects/trustedbsd/audit/sys/conf/ldscript.ia64#2 integrate .. //depot/projects/trustedbsd/audit/sys/conf/ldscript.sparc64#2 integrate .. //depot/projects/trustedbsd/audit/sys/conf/majors#5 integrate .. //depot/projects/trustedbsd/audit/sys/conf/majors.awk#1 branch .. //depot/projects/trustedbsd/audit/sys/conf/makeLINT.mk#1 branch .. //depot/projects/trustedbsd/audit/sys/conf/makeLINT.sed#1 branch .. //depot/projects/trustedbsd/audit/sys/conf/newvers.sh#2 integrate .. //depot/projects/trustedbsd/audit/sys/conf/options#7 integrate .. //depot/projects/trustedbsd/audit/sys/conf/options.alpha#4 integrate .. //depot/projects/trustedbsd/audit/sys/conf/options.amd64#1 branch .. //depot/projects/trustedbsd/audit/sys/conf/options.i386#3 integrate .. //depot/projects/trustedbsd/audit/sys/conf/options.ia64#3 integrate .. //depot/projects/trustedbsd/audit/sys/conf/options.pc98#3 integrate .. //depot/projects/trustedbsd/audit/sys/conf/options.powerpc#2 integrate .. //depot/projects/trustedbsd/audit/sys/conf/options.sparc64#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/CHANGES.txt#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acapps.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acconfig.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acdebug.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acdisasm.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acdispat.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acdos16.h#2 delete .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acefi.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acenv.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acevents.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acexcep.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acfreebsd.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acgcc.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acglobal.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/achware.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acinterp.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/aclocal.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acmacros.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acnamesp.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acobject.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acoutput.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acparser.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acpi.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acpica_prep.sh#2 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acpiosxf.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acpixf.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acresrc.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acstruct.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/actables.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/actbl.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/actbl1.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/actbl2.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/actbl71.h#3 delete .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/actypes.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/acutils.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/amlcode.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/amlresrc.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/common/adisasm.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/common/getopt.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslanalyze.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslcodegen.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslcompile.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslcompiler.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslcompiler.l#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslcompiler.y#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslerror.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslfiles.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslfold.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslglobal.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/asllength.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/asllisting.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslload.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/asllookup.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslmain.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslmap.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslopcodes.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/asloperands.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslopt.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslresource.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslrestype1.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslrestype2.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslstubs.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/asltransform.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/asltree.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/asltypes.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/compiler/aslutils.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbcmds.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbdisasm.c#3 delete .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbdisply.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbexec.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbfileio.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbhistry.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbinput.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbstats.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbutils.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dbxface.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmbuffer.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmnames.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmobject.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmopcode.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmresrc.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmresrcl.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmresrcs.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmutils.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dmwalk.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dsfield.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dsinit.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dsmethod.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dsmthdat.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dsobject.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dsopcode.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dsutils.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dswexec.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dswload.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dswscope.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/dswstate.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evevent.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evgpe.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evgpeblk.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evmisc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evregion.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evrgnini.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evsci.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evxface.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evxfevnt.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/evxfregn.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exconfig.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exconvrt.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/excreate.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exdump.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exfield.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exfldio.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exmisc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exmutex.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exnames.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exoparg1.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exoparg2.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exoparg3.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exoparg6.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exprep.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exregion.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exresnte.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exresolv.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exresop.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exstore.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exstoren.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exstorob.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exsystem.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/exutils.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/hwacpi.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/hwgpe.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/hwregs.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/hwsleep.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/hwtimer.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsaccess.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsalloc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsdump.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsdumpdv.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nseval.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsinit.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsload.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsnames.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsobject.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsparse.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nssearch.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsutils.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nswalk.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsxfeval.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsxfname.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/nsxfobj.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/osunixxf.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/psargs.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/psfind.c#3 delete .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/psopcode.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/psparse.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/psscope.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/pstree.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/psutils.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/pswalk.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/psxface.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rsaddr.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rscalc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rscreate.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rsdump.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rsio.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rsirq.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rslist.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rsmemory.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rsmisc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rsutils.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/rsxface.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/tbconvrt.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/tbget.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/tbgetall.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/tbinstal.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/tbrsdt.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/tbutils.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/tbxface.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/tbxfroot.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utalloc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utclib.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utcopy.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utdebug.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utdelete.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/uteval.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utglobal.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utinit.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utmath.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utmisc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utobject.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/acpica/utxface.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/COPYRIGHT#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/README#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/ah.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/ah_desc.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/ah_devid.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/freebsd/ah_if.m#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/freebsd/ah_osdep.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/freebsd/ah_osdep.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/freebsd/i386-elf.hal.o.uu#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/freebsd/opt_ah.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/ath/version.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/dev/fla/fla.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/dev/oltr/if_oltr.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/Makefile#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_bstream.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_bstream.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_context.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_context.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_env.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_env.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_self.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_self.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_self_context.s#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_step.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_step.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_str.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_str.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_swap.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_swap.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_trace.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_trace.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_utable.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/src/uwx_utable.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/test/Makefile#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/test/dump_context.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ia64/libuwx/test/dumpmyself.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/fil.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_auth.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_auth.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_compat.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_fil.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_fil.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_frag.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_frag.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_log.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_nat.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_nat.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_proxy.c#6 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_proxy.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_rcmd_pxy.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_state.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ip_state.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/ipl.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ipfilter/netinet/mlfk_ipl.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/misc/unimsg_common.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/saal/saal_sscfu.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/saal/saal_sscop.c#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/saal/sscfu.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/saal/sscfudef.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/saal/sscfupriv.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/saal/sscop.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/saal/sscopdef.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/saal/sscoppriv.h#1 branch .. //depot/projects/trustedbsd/audit/sys/contrib/ngatm/netnatm/unimsg.h#1 branch .. //depot/projects/trustedbsd/audit/sys/crypto/blowfish/arch/i386/bf_enc_586.S#2 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/blowfish/bf_ecb.c#1 branch .. //depot/projects/trustedbsd/audit/sys/crypto/blowfish/bf_enc.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/blowfish/bf_skey.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/blowfish/blowfish.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/cast128/cast128.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/cast128/cast128.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/cast128/cast128_subkey.h#2 delete .. //depot/projects/trustedbsd/audit/sys/crypto/cast128/cast128sb.h#1 branch .. //depot/projects/trustedbsd/audit/sys/crypto/des/arch/i386/des_enc.S#2 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/md5.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/rc4/rc4.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/rijndael/Makefile#1 branch .. //depot/projects/trustedbsd/audit/sys/crypto/rijndael/boxes-fst.dat#2 delete .. //depot/projects/trustedbsd/audit/sys/crypto/rijndael/rijndael-alg-fst.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/rijndael/rijndael-alg-fst.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/rijndael/rijndael-api-fst.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/rijndael/rijndael-api-fst.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/rijndael/rijndael_local.h#2 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/rijndael/test00.c#1 branch .. //depot/projects/trustedbsd/audit/sys/crypto/sha1.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/crypto/sha2/sha2.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_access.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_break.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_break.h#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_command.c#5 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_elf.c#1 branch .. //depot/projects/trustedbsd/audit/sys/ddb/db_examine.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_expr.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_input.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_kld.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_lex.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_output.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_print.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_ps.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_run.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_sym.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_sym.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_sysctl.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_trap.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_variables.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_watch.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/db_write_cmd.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/ddb/ddb.h#4 integrate .. //depot/projects/trustedbsd/audit/sys/dev/aac/aac.c#6 integrate .. //depot/projects/trustedbsd/audit/sys/dev/aac/aac_cam.c#3 integrate .. //depot/projects/trustedbsd/audit/sys/dev/aac/aac_cam.h#2 delete .. //depot/projects/trustedbsd/audit/sys/dev/aac/aac_debug.c#2 integrate .. //depot/projects/trustedbsd/audit/sys/dev/aac/aac_disk.c#4 integrate .. //depot/projects/trustedbsd/audit/sys/dev/aac/aac_linux.c#1 branch .. //depot/projects/trustedbsd/audit/sys/dev/aac/aac_pci.c#6 integrate .. //depot/projects/trustedbsd/audit/sys/dev/aac/aacreg.h#4 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Nov 3 16:43:21 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1CC7116A4D0; Mon, 3 Nov 2003 16:43:21 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D190E16A4CE for ; Mon, 3 Nov 2003 16:43:20 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1289643FBF for ; Mon, 3 Nov 2003 16:43:19 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA40hIXJ036018 for ; Mon, 3 Nov 2003 16:43:18 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA40hDWP036014 for perforce@freebsd.org; Mon, 3 Nov 2003 16:43:13 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 16:43:13 -0800 (PST) Message-Id: <200311040043.hA40hDWP036014@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41289 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:43:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=41289 Change 41289 by peter@peter_daintree on 2003/11/03 16:42:50 IFC @41288 Affected files ... .. //depot/projects/hammer/Makefile.inc1#30 integrate .. //depot/projects/hammer/UPDATING#22 integrate .. //depot/projects/hammer/bin/Makefile.inc#4 integrate .. //depot/projects/hammer/contrib/diff/util.c#3 integrate .. //depot/projects/hammer/contrib/groff/src/roff/nroff/nroff.man#4 integrate .. //depot/projects/hammer/contrib/groff/src/roff/nroff/nroff.sh#5 integrate .. //depot/projects/hammer/contrib/lukemftp/src/cmds.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/cmdtab.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/domacro.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/extern.h#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/fetch.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/ftp.1#4 integrate .. //depot/projects/hammer/contrib/lukemftp/src/ftp.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/ftp_var.h#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/main.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/progressbar.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/ruserpass.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/util.c#3 integrate .. //depot/projects/hammer/contrib/lukemftp/src/version.h#3 integrate .. //depot/projects/hammer/contrib/ngatm/man/libngatm.3#1 branch .. //depot/projects/hammer/contrib/ngatm/man/uniaddr.3#1 branch .. //depot/projects/hammer/contrib/ngatm/man/unifunc.3#1 branch .. //depot/projects/hammer/contrib/ngatm/man/unistruct.3#1 branch .. //depot/projects/hammer/etc/Makefile#20 integrate .. //depot/projects/hammer/etc/mtree/BSD.include.dist#10 integrate .. //depot/projects/hammer/etc/rc.d/ipnat#8 integrate .. //depot/projects/hammer/etc/rc.firewall#3 integrate .. //depot/projects/hammer/etc/rc.firewall6#3 integrate .. //depot/projects/hammer/games/morse/morse.6#2 integrate .. //depot/projects/hammer/games/morse/morse.c#2 integrate .. //depot/projects/hammer/gnu/usr.bin/send-pr/send-pr.sh#4 integrate .. //depot/projects/hammer/lib/libc/locale/Makefile.inc#11 integrate .. //depot/projects/hammer/lib/libc/locale/big5.c#2 integrate .. //depot/projects/hammer/lib/libc/locale/euc.c#2 integrate .. //depot/projects/hammer/lib/libc/locale/mbrtowc.c#3 integrate .. //depot/projects/hammer/lib/libc/locale/mskanji.c#3 integrate .. //depot/projects/hammer/lib/libc/locale/none.c#3 integrate .. //depot/projects/hammer/lib/libc/locale/setrunelocale.c#7 integrate .. //depot/projects/hammer/lib/libc/locale/srune.c#1 branch .. //depot/projects/hammer/lib/libc/locale/table.c#4 integrate .. //depot/projects/hammer/lib/libc/locale/utf8.c#3 integrate .. //depot/projects/hammer/lib/libc/locale/wcrtomb.c#4 integrate .. //depot/projects/hammer/lib/libc/locale/wctrans.c#3 integrate .. //depot/projects/hammer/lib/libc/posix1e/acl_support.c#2 integrate .. //depot/projects/hammer/lib/libc/stdio/fputwc.c#4 integrate .. //depot/projects/hammer/lib/libc/sys/Makefile.inc#9 integrate .. //depot/projects/hammer/lib/libc/sys/utrace.2#1 branch .. //depot/projects/hammer/lib/libdisk/Makefile#5 integrate .. //depot/projects/hammer/lib/libdisk/chunk.c#8 integrate .. //depot/projects/hammer/lib/libdisk/create_chunk.c#12 integrate .. //depot/projects/hammer/lib/libdisk/disk.c#15 integrate .. //depot/projects/hammer/lib/libdisk/libdisk.h#11 integrate .. //depot/projects/hammer/lib/libdisk/open_disk.c#1 branch .. //depot/projects/hammer/lib/libdisk/open_ia64_disk.c#1 branch .. //depot/projects/hammer/lib/libdisk/rules.c#11 integrate .. //depot/projects/hammer/lib/libdisk/tst01.c#5 integrate .. //depot/projects/hammer/lib/libdisk/write_disk.c#7 integrate .. //depot/projects/hammer/lib/libdisk/write_ia64_disk.c#6 integrate .. //depot/projects/hammer/lib/libngatm/Makefile#2 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#31 integrate .. //depot/projects/hammer/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#11 integrate .. //depot/projects/hammer/sbin/Makefile.inc#3 integrate .. //depot/projects/hammer/sbin/ifconfig/ifieee80211.c#4 integrate .. //depot/projects/hammer/sbin/md5/md5.1#2 integrate .. //depot/projects/hammer/sbin/md5/md5.c#4 integrate .. //depot/projects/hammer/sbin/mount_cd9660/mount_cd9660.c#4 integrate .. //depot/projects/hammer/sbin/sysctl/sysctl.c#8 integrate .. //depot/projects/hammer/share/man/man4/Makefile#22 integrate .. //depot/projects/hammer/share/man/man4/led.4#1 branch .. //depot/projects/hammer/share/man/man4/man4.i386/ep.4#4 integrate .. //depot/projects/hammer/sys/boot/common/dev_net.c#3 integrate .. //depot/projects/hammer/sys/conf/files#31 integrate .. //depot/projects/hammer/sys/conf/files.i386#17 integrate .. //depot/projects/hammer/sys/conf/majors#15 integrate .. //depot/projects/hammer/sys/conf/options#26 integrate .. //depot/projects/hammer/sys/conf/options.i386#15 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/ah.h#3 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/freebsd/ah_osdep.c#3 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/freebsd/ah_osdep.h#3 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/freebsd/i386-elf.hal.o.uu#4 integrate .. //depot/projects/hammer/sys/contrib/dev/ath/version.h#3 integrate .. //depot/projects/hammer/sys/contrib/ngatm/FREEBSD-upgrade#2 integrate .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/addr.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/genfiles#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/misc/straddr.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/geniec.awk#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/genieh.awk#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/genmsgc.awk#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/genmsgh.awk#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/ie.def#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/msg.def#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/parseie.awk#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/parsemsg.awk#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/priv.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/privmsg.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/traffic.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uni_config.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uni_hdr.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uni_ie.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uni_ie.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uni_ietab.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uni_msg.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uni_msg.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/unimsglib.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/uniprint.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/msg/unistruct.h#1 branch .. //depot/projects/hammer/sys/dev/aac/aac_pci.c#9 integrate .. //depot/projects/hammer/sys/dev/aic7xxx/ahc_pci.c#10 integrate .. //depot/projects/hammer/sys/dev/aic7xxx/ahd_pci.c#9 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.c#16 integrate .. //depot/projects/hammer/sys/dev/ata/ata-chipset.c#17 integrate .. //depot/projects/hammer/sys/dev/ata/ata-disk.c#11 integrate .. //depot/projects/hammer/sys/dev/ata/ata-lowlevel.c#5 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-cd.c#10 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-cd.h#6 integrate .. //depot/projects/hammer/sys/dev/ath/if_ath.c#10 integrate .. //depot/projects/hammer/sys/dev/ath/if_ath_pci.c#5 integrate .. //depot/projects/hammer/sys/dev/cardbus/cardbus.c#11 integrate .. //depot/projects/hammer/sys/dev/drm/drm_drv.h#8 integrate .. //depot/projects/hammer/sys/dev/drm/drm_os_freebsd.h#8 integrate .. //depot/projects/hammer/sys/dev/ep/if_ep.c#10 integrate .. //depot/projects/hammer/sys/dev/ep/if_ep_pccard.c#8 integrate .. //depot/projects/hammer/sys/dev/ep/if_epreg.h#4 integrate .. //depot/projects/hammer/sys/dev/firewire/fwohci_pci.c#16 integrate .. //depot/projects/hammer/sys/dev/firewire/if_fwe.c#11 integrate .. //depot/projects/hammer/sys/dev/fxp/if_fxp.c#26 integrate .. //depot/projects/hammer/sys/dev/led/led.c#1 branch .. //depot/projects/hammer/sys/dev/led/led.h#1 branch .. //depot/projects/hammer/sys/dev/null/null.c#8 integrate .. //depot/projects/hammer/sys/dev/pccard/pccard.c#15 integrate .. //depot/projects/hammer/sys/dev/pccard/pccarddevs#18 integrate .. //depot/projects/hammer/sys/dev/pccard/pccarddevs.h#18 integrate .. //depot/projects/hammer/sys/dev/pccard/pccardvar.h#10 integrate .. //depot/projects/hammer/sys/dev/pci/pci.c#15 integrate .. //depot/projects/hammer/sys/dev/puc/puc_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/random/randomdev.c#7 integrate .. //depot/projects/hammer/sys/dev/re/if_re.c#4 integrate .. //depot/projects/hammer/sys/dev/sio/sio_pci.c#4 integrate .. //depot/projects/hammer/sys/dev/snc/dp83932.c#6 integrate .. //depot/projects/hammer/sys/dev/uart/uart_bus_pci.c#3 integrate .. //depot/projects/hammer/sys/dev/usb/ehci_pci.c#6 integrate .. //depot/projects/hammer/sys/dev/usb/ohci_pci.c#4 integrate .. //depot/projects/hammer/sys/dev/usb/uhci_pci.c#5 integrate .. //depot/projects/hammer/sys/dev/wi/if_wi.c#20 integrate .. //depot/projects/hammer/sys/dev/xe/if_xe_pccard.c#7 integrate .. //depot/projects/hammer/sys/fs/msdosfs/msdosfs_vfsops.c#13 integrate .. //depot/projects/hammer/sys/fs/unionfs/union_vfsops.c#6 integrate .. //depot/projects/hammer/sys/gnu/ext2fs/alpha-bitops.h#2 delete .. //depot/projects/hammer/sys/gnu/ext2fs/ext2_vfsops.c#9 integrate .. //depot/projects/hammer/sys/i386/acpica/Makefile#3 integrate .. //depot/projects/hammer/sys/i386/acpica/acpi_machdep.c#12 integrate .. //depot/projects/hammer/sys/i386/acpica/acpi_wakecode.S#5 integrate .. //depot/projects/hammer/sys/i386/acpica/acpi_wakeup.c#14 integrate .. //depot/projects/hammer/sys/i386/acpica/madt.c#1 branch .. //depot/projects/hammer/sys/i386/conf/GENERIC#16 integrate .. //depot/projects/hammer/sys/i386/conf/NOTES#22 integrate .. //depot/projects/hammer/sys/i386/conf/PAE#7 integrate .. //depot/projects/hammer/sys/i386/conf/SMP#3 delete .. //depot/projects/hammer/sys/i386/i386/apic_vector.s#1 branch .. //depot/projects/hammer/sys/i386/i386/autoconf.c#7 integrate .. //depot/projects/hammer/sys/i386/i386/bios.c#10 integrate .. //depot/projects/hammer/sys/i386/i386/critical.c#5 integrate .. //depot/projects/hammer/sys/i386/i386/db_interface.c#8 integrate .. //depot/projects/hammer/sys/i386/i386/db_trace.c#8 integrate .. //depot/projects/hammer/sys/i386/i386/elan-mmcr.c#9 integrate .. //depot/projects/hammer/sys/i386/i386/exception.s#5 integrate .. //depot/projects/hammer/sys/i386/i386/genassym.c#11 integrate .. //depot/projects/hammer/sys/i386/i386/identcpu.c#10 integrate .. //depot/projects/hammer/sys/i386/i386/initcpu.c#9 integrate .. //depot/projects/hammer/sys/i386/i386/intr_machdep.c#1 branch .. //depot/projects/hammer/sys/i386/i386/io_apic.c#1 branch .. //depot/projects/hammer/sys/i386/i386/local_apic.c#1 branch .. //depot/projects/hammer/sys/i386/i386/locore.s#10 integrate .. //depot/projects/hammer/sys/i386/i386/machdep.c#24 integrate .. //depot/projects/hammer/sys/i386/i386/mp_machdep.c#17 integrate .. //depot/projects/hammer/sys/i386/i386/mpboot.s#5 integrate .. //depot/projects/hammer/sys/i386/i386/mptable.c#1 branch .. //depot/projects/hammer/sys/i386/i386/mptable_pci.c#1 branch .. //depot/projects/hammer/sys/i386/i386/nexus.c#8 integrate .. //depot/projects/hammer/sys/i386/i386/pmap.c#23 integrate .. //depot/projects/hammer/sys/i386/i386/support.s#7 integrate .. //depot/projects/hammer/sys/i386/i386/trap.c#21 integrate .. //depot/projects/hammer/sys/i386/include/apic.h#7 delete .. //depot/projects/hammer/sys/i386/include/apicreg.h#1 branch .. //depot/projects/hammer/sys/i386/include/apicvar.h#1 branch .. //depot/projects/hammer/sys/i386/include/asmacros.h#2 integrate .. //depot/projects/hammer/sys/i386/include/clock.h#5 integrate .. //depot/projects/hammer/sys/i386/include/critical.h#3 integrate .. //depot/projects/hammer/sys/i386/include/intr_machdep.h#1 branch .. //depot/projects/hammer/sys/i386/include/md_var.h#9 integrate .. //depot/projects/hammer/sys/i386/include/mptable.h#1 branch .. //depot/projects/hammer/sys/i386/include/pcpu.h#5 integrate .. //depot/projects/hammer/sys/i386/include/proc.h#4 integrate .. //depot/projects/hammer/sys/i386/include/segments.h#8 integrate .. //depot/projects/hammer/sys/i386/include/smp.h#5 integrate .. //depot/projects/hammer/sys/i386/include/smptests.h#3 integrate .. //depot/projects/hammer/sys/i386/isa/atpic.c#1 branch .. //depot/projects/hammer/sys/i386/isa/atpic_vector.s#1 branch .. //depot/projects/hammer/sys/i386/isa/bs/bsif.h#3 integrate .. //depot/projects/hammer/sys/i386/isa/clock.c#12 integrate .. //depot/projects/hammer/sys/i386/isa/icu.h#2 integrate .. //depot/projects/hammer/sys/i386/isa/if_rdp.c#10 integrate .. //depot/projects/hammer/sys/i386/isa/nmi.c#1 branch .. //depot/projects/hammer/sys/i386/isa/npx.c#13 integrate .. //depot/projects/hammer/sys/i386/pci/pci_cfgreg.c#13 integrate .. //depot/projects/hammer/sys/ia64/ia64/unaligned.c#5 integrate .. //depot/projects/hammer/sys/ia64/include/_types.h#5 integrate .. //depot/projects/hammer/sys/ia64/include/pc/bios.h#2 delete .. //depot/projects/hammer/sys/ia64/include/pc/msdos.h#2 delete .. //depot/projects/hammer/sys/ia64/include/pc/vesa.h#3 delete .. //depot/projects/hammer/sys/kern/kern_intr.c#15 integrate .. //depot/projects/hammer/sys/kern/sched_ule.c#15 integrate .. //depot/projects/hammer/sys/kern/subr_witness.c#19 integrate .. //depot/projects/hammer/sys/kern/sys_pipe.c#13 integrate .. //depot/projects/hammer/sys/kern/vfs_default.c#16 integrate .. //depot/projects/hammer/sys/modules/Makefile#28 integrate .. //depot/projects/hammer/sys/modules/netgraph/atm/atmbase/Makefile#2 integrate .. //depot/projects/hammer/sys/netinet/in.c#4 integrate .. //depot/projects/hammer/sys/netinet/in_pcb.c#11 integrate .. //depot/projects/hammer/sys/netinet/in_rmx.c#6 integrate .. //depot/projects/hammer/sys/netinet/ip_input.c#17 integrate .. //depot/projects/hammer/sys/netinet/ip_output.c#18 integrate .. //depot/projects/hammer/sys/netinet/tcp_subr.c#11 integrate .. //depot/projects/hammer/sys/netinet/tcp_var.h#7 integrate .. //depot/projects/hammer/sys/netinet6/raw_ip6.c#6 integrate .. //depot/projects/hammer/sys/netinet6/udp6_usrreq.c#7 integrate .. //depot/projects/hammer/sys/netkey/key.c#7 integrate .. //depot/projects/hammer/sys/netkey/key_debug.c#4 integrate .. //depot/projects/hammer/sys/netkey/keydb.c#3 integrate .. //depot/projects/hammer/sys/netkey/keydb.h#3 integrate .. //depot/projects/hammer/sys/netkey/keysock.c#7 integrate .. //depot/projects/hammer/sys/netkey/keysock.h#2 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_vfsops.c#15 integrate .. //depot/projects/hammer/sys/pci/if_dc.c#23 integrate .. //depot/projects/hammer/sys/pci/if_rl.c#19 integrate .. //depot/projects/hammer/sys/pci/if_xl.c#22 integrate .. //depot/projects/hammer/sys/pci/xrpu.c#7 integrate .. //depot/projects/hammer/sys/sys/resource.h#3 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_vfsops.c#14 integrate .. //depot/projects/hammer/sys/ufs/ufs/ufs_quota.c#8 integrate .. //depot/projects/hammer/sys/vm/swap_pager.c#18 integrate .. //depot/projects/hammer/sys/vm/vm_map.c#24 integrate .. //depot/projects/hammer/sys/vm/vm_map.h#9 integrate .. //depot/projects/hammer/sys/vm/vm_object.c#31 integrate .. //depot/projects/hammer/sys/vm/vm_object.h#14 integrate .. //depot/projects/hammer/sys/vm/vm_page.c#18 integrate .. //depot/projects/hammer/usr.bin/Makefile#22 integrate .. //depot/projects/hammer/usr.bin/env/env.1#2 integrate .. //depot/projects/hammer/usr.bin/sed/process.c#6 integrate .. //depot/projects/hammer/usr.bin/su/su.c#9 integrate .. //depot/projects/hammer/usr.bin/systat/iostat.c#4 integrate .. //depot/projects/hammer/usr.bin/xlint/arch/ia64/targparam.h#2 integrate .. //depot/projects/hammer/usr.sbin/Makefile#32 integrate .. //depot/projects/hammer/usr.sbin/mtree/compare.c#6 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/Makefile#5 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/disks.c#12 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/label.c#9 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/sysinstall.h#12 integrate Differences ... ==== //depot/projects/hammer/Makefile.inc1#30 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.393 2003/10/04 18:53:38 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.394 2003/11/03 21:09:47 ru Exp $ # # Make command line options: # -DNO_KERBEROS Do not build Heimdal (Kerberos 5) @@ -345,7 +345,7 @@ _includes: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 4.1: populating ${WORLDTMP}/usr/include" + @echo ">>> stage 4.1: building includes" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${WMAKE} SHARED=symlinks par-includes _libraries: ==== //depot/projects/hammer/UPDATING#22 (text+ko) ==== @@ -17,6 +17,12 @@ developers choose to disable these features on build machines to maximize performance. +20031103: + The i386 APIC_IO kernel option has been replaced by + 'device apic'. The ACPI module has also been temporarily + disabled, so APCI must be statically compiled into your + kernel using 'device acpi' if you wish to use the ACPI driver. + 20031031: The API and ABI of struct ifnet have been changed by removing the if_name and if_unit members and replacing them with @@ -1392,4 +1398,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.274 2003/10/31 21:58:15 brooks Exp $ +$FreeBSD: src/UPDATING,v 1.275 2003/11/03 23:02:17 jhb Exp $ ==== //depot/projects/hammer/bin/Makefile.inc#4 (text+ko) ==== @@ -1,9 +1,9 @@ # @(#)Makefile.inc 8.1 (Berkeley) 5/31/93 -# $FreeBSD: src/bin/Makefile.inc,v 1.17 2003/08/17 08:37:47 gordon Exp $ +# $FreeBSD: src/bin/Makefile.inc,v 1.18 2003/11/02 06:47:38 ru Exp $ BINDIR?= /bin WARNS?= 6 -.if !defined (WITH_DYNAMICROOT) +.if !defined(WITH_DYNAMICROOT) NOSHARED?= YES .endif ==== //depot/projects/hammer/contrib/diff/util.c#3 (text+ko) ==== @@ -17,7 +17,7 @@ along with GNU DIFF; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* $FreeBSD: src/contrib/diff/util.c,v 1.5 2002/11/25 22:59:52 gad Exp $ */ +/* $FreeBSD: src/contrib/diff/util.c,v 1.6 2003/11/03 12:41:27 harti Exp $ */ #include "diff.h" @@ -210,9 +210,9 @@ close (pipes[0]); } #ifdef __FreeBSD__ - execl (PR_PROGRAM, PR_PROGRAM, "-F", "-h", name, 0); + execl (PR_PROGRAM, PR_PROGRAM, "-F", "-h", name, (char *)NULL); #else - execl (PR_PROGRAM, PR_PROGRAM, "-f", "-h", name, 0); + execl (PR_PROGRAM, PR_PROGRAM, "-f", "-h", name, (char *)NULL); #endif pfatal_with_name (PR_PROGRAM); } ==== //depot/projects/hammer/contrib/groff/src/roff/nroff/nroff.man#4 (text+ko) ==== @@ -16,7 +16,7 @@ translations approved by the Free Software Foundation instead of in the original English. - $FreeBSD: src/contrib/groff/src/roff/nroff/nroff.man,v 1.10 2003/05/01 13:18:29 ru Exp $ + $FreeBSD: src/contrib/groff/src/roff/nroff/nroff.man,v 1.11 2003/11/02 07:27:40 ru Exp $ .. .TH @G@NROFF @MAN1EXT@ "@MDATE@" "Groff Version @VERSION@" @@ -34,6 +34,7 @@ .el .RB "[\ " "\\$1" "\ ]" .. .OP \-CchipStUv +.OP \-d cs .OP \-m name .OP \-n num .OP \-o list @@ -89,6 +90,7 @@ .B \-c (using the old output scheme instead of SGR escape sequences). The +.BR \-d , .BR \-C , .BR \-i , .BR \-m , ==== //depot/projects/hammer/contrib/groff/src/roff/nroff/nroff.sh#5 (text+ko) ==== @@ -1,36 +1,38 @@ #!/bin/sh # Emulate nroff with groff. -# $FreeBSD: src/contrib/groff/src/roff/nroff/nroff.sh,v 1.15 2003/06/22 10:41:47 ru Exp $ +# $FreeBSD: src/contrib/groff/src/roff/nroff/nroff.sh,v 1.17 2003/11/02 07:27:40 ru Exp $ prog="$0" # Default device. # First try the "locale charmap" command, because it's most reliable. # On systems where it doesn't exist, look at the environment variables. case "`locale charmap 2>/dev/null`" in + ISO*8859-1 | ISO*8859-15) + T=-Tlatin1 ;; + KOI8-R) + T=-Tkoi8-r ;; UTF-8) T=-Tutf8 ;; - ISO*8859-1 | ISO*8859-15) - T=-Tlatin1 ;; IBM-1047) T=-Tcp1047 ;; - KOI8-R) - T=-Tkoi8-r ;; *) case "${LC_ALL-${LC_CTYPE-${LANG}}}" in + iso_8859_1 | *.ISO*8859-1 | *.ISO*8859-15) + T=-Tlatin1 ;; + *.KOI8-R) + T=-Tkoi8-r ;; *.UTF-8) T=-Tutf8 ;; - iso_8859_1 | *.ISO*8859-1 | *.ISO*8859-15) - T=-Tlatin1 ;; *.IBM-1047) T=-Tcp1047 ;; - *.KOI8-R) - T=-Tkoi8-r ;; *) case "$LESSCHARSET" in + latin1) + T=-Tlatin1 ;; + koi8-r) + T=-Tkoi8-r ;; utf-8) T=-Tutf8 ;; - latin1) - T=-Tlatin1 ;; cp1047) T=-Tcp1047 ;; *) @@ -52,10 +54,10 @@ -[eq] | -s*) # ignore these options ;; - -[mrnoT]) + -[dmrnoT]) echo "$prog: option $1 requires an argument" >&2 exit 1 ;; - -[iptSUC] | -[mrno]*) + -[iptSUC] | -[dmrno]*) opts="$opts $1" ;; -Tascii | -Tlatin1 | -Tkoi8-r | -Tutf8 | -Tcp1047) T=$1 ;; @@ -70,7 +72,7 @@ echo "GNU nroff (groff) version @VERSION@" exit 0 ;; --help) - echo "usage: nroff [-CchipStUv] [-mNAME] [-nNUM] [-oLIST] [-rCN] [-Tname] [FILE...]" + echo "usage: nroff [-CchipStUv] [-dCS] [-mNAME] [-nNUM] [-oLIST] [-rCN] [-Tname] [FILE...]" exit 0 ;; --) shift ==== //depot/projects/hammer/contrib/lukemftp/src/cmds.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: cmds.c,v 1.100 2002/11/30 03:10:55 lukem Exp $ */ +/* $NetBSD: cmds.c,v 1.102 2003/08/07 11:13:52 agc Exp $ */ /*- * Copyright (c) 1996-2002 The NetBSD Foundation, Inc. @@ -52,11 +52,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -107,7 +103,7 @@ #if 0 static char sccsid[] = "@(#)cmds.c 8.6 (Berkeley) 10/9/94"; #else -__RCSID("$NetBSD: cmds.c,v 1.100 2002/11/30 03:10:55 lukem Exp $"); +__RCSID("$NetBSD: cmds.c,v 1.102 2003/08/07 11:13:52 agc Exp $"); #endif #endif /* not lint */ @@ -1185,7 +1181,8 @@ code = -1; return; } - (void)command("DELE %s", argv[1]); + if (command("DELE %s", argv[1]) == COMPLETE) + dirchange = 1; } /* @@ -1215,7 +1212,8 @@ continue; } if (mflag && confirm(argv[0], cp)) { - (void)command("DELE %s", cp); + if (command("DELE %s", cp) == COMPLETE) + dirchange = 1; if (!mflag && fromatty) { ointer = interactive; interactive = 1; @@ -1245,8 +1243,9 @@ code = -1; return; } - if (command("RNFR %s", argv[1]) == CONTINUE) - (void)command("RNTO %s", argv[2]); + if (command("RNFR %s", argv[1]) == CONTINUE && + command("RNTO %s", argv[2]) == COMPLETE) + dirchange = 1; } /* @@ -1553,6 +1552,7 @@ void makedir(int argc, char *argv[]) { + int r; if (argc == 0 || argc > 2 || (argc == 1 && !another(&argc, &argv, "directory-name"))) { @@ -1560,12 +1560,15 @@ code = -1; return; } - if (command("MKD %s", argv[1]) == ERROR && code == 500) { + r = command("MKD %s", argv[1]); + if (r == ERROR && code == 500) { if (verbose) fputs("MKD command not recognized, trying XMKD.\n", ttyout); - (void)command("XMKD %s", argv[1]); + r = command("XMKD %s", argv[1]); } + if (r == COMPLETE) + dirchange = 1; } /* @@ -1574,6 +1577,7 @@ void removedir(int argc, char *argv[]) { + int r; if (argc == 0 || argc > 2 || (argc == 1 && !another(&argc, &argv, "directory-name"))) { @@ -1581,12 +1585,15 @@ code = -1; return; } - if (command("RMD %s", argv[1]) == ERROR && code == 500) { + r = command("RMD %s", argv[1]); + if (r == ERROR && code == 500) { if (verbose) fputs("RMD command not recognized, trying XRMD.\n", ttyout); - (void)command("XRMD %s", argv[1]); + r = command("XRMD %s", argv[1]); } + if (r == COMPLETE) + dirchange = 1; } /* @@ -1643,6 +1650,7 @@ while (getreply(0) == PRELIM) continue; } + dirchange = 1; } void ==== //depot/projects/hammer/contrib/lukemftp/src/cmdtab.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: cmdtab.c,v 1.40 2002/07/29 04:24:47 lukem Exp $ */ +/* $NetBSD: cmdtab.c,v 1.41 2003/08/07 11:13:53 agc Exp $ */ /*- * Copyright (c) 1996-2000 The NetBSD Foundation, Inc. @@ -48,11 +48,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -74,7 +70,7 @@ #if 0 static char sccsid[] = "@(#)cmdtab.c 8.4 (Berkeley) 10/9/94"; #else -__RCSID("$NetBSD: cmdtab.c,v 1.40 2002/07/29 04:24:47 lukem Exp $"); +__RCSID("$NetBSD: cmdtab.c,v 1.41 2003/08/07 11:13:53 agc Exp $"); #endif #endif /* not lint */ ==== //depot/projects/hammer/contrib/lukemftp/src/domacro.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: domacro.c,v 1.19 2002/02/01 05:04:43 itojun Exp $ */ +/* $NetBSD: domacro.c,v 1.20 2003/08/07 11:13:53 agc Exp $ */ /* * Copyright (c) 1985, 1993, 1994 @@ -12,11 +12,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -38,7 +34,7 @@ #if 0 static char sccsid[] = "@(#)domacro.c 8.3 (Berkeley) 4/2/94"; #else -__RCSID("$NetBSD: domacro.c,v 1.19 2002/02/01 05:04:43 itojun Exp $"); +__RCSID("$NetBSD: domacro.c,v 1.20 2003/08/07 11:13:53 agc Exp $"); #endif #endif /* not lint */ ==== //depot/projects/hammer/contrib/lukemftp/src/extern.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: extern.h,v 1.61 2003/01/21 16:08:07 jhawk Exp $ */ +/* $NetBSD: extern.h,v 1.62 2003/08/07 11:13:54 agc Exp $ */ /*- * Copyright (c) 1996-2003 The NetBSD Foundation, Inc. @@ -48,11 +48,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * ==== //depot/projects/hammer/contrib/lukemftp/src/fetch.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: fetch.c,v 1.141 2003/05/14 14:31:00 wiz Exp $ */ +/* $NetBSD: fetch.c,v 1.144 2003/07/31 05:23:59 lukem Exp $ */ /*- * Copyright (c) 1997-2003 The NetBSD Foundation, Inc. @@ -41,7 +41,7 @@ #include #ifndef lint -__RCSID("$NetBSD: fetch.c,v 1.141 2003/05/14 14:31:00 wiz Exp $"); +__RCSID("$NetBSD: fetch.c,v 1.144 2003/07/31 05:23:59 lukem Exp $"); #endif /* not lint */ /* @@ -438,7 +438,7 @@ char *cp, *ep, *buf, *savefile; char *auth, *location, *message; char *user, *pass, *host, *port, *path, *decodedpath; - char *puser, *ppass; + char *puser, *ppass, *useragent; off_t hashbytes, rangestart, rangeend, entitylen; int (*closefunc)(FILE *); FILE *fin, *fout; @@ -666,9 +666,8 @@ */ ai_unmapped(res); if (getnameinfo(res->ai_addr, res->ai_addrlen, - hbuf, sizeof(hbuf), NULL, 0, - NI_NUMERICHOST) != 0) - strncpy(hbuf, "invalid", sizeof(hbuf)); + hbuf, sizeof(hbuf), NULL, 0, NI_NUMERICHOST) != 0) + strlcpy(hbuf, "invalid", sizeof(hbuf)); if (verbose && res != res0) fprintf(ttyout, "Trying %s...\n", hbuf); @@ -752,7 +751,12 @@ if (flushcache) fprintf(fin, "Cache-Control: no-cache\r\n"); } - fprintf(fin, "User-Agent: %s/%s\r\n", FTP_PRODUCT, FTP_VERSION); + if ((useragent=getenv("FTPUSERAGENT")) != NULL) { + fprintf(fin, "User-Agent: %s\r\n", useragent); + } else { + fprintf(fin, "User-Agent: %s/%s\r\n", + FTP_PRODUCT, FTP_VERSION); + } if (wwwauth) { if (verbose) { fprintf(ttyout, "%swith authorization", @@ -1620,18 +1624,19 @@ */ if (strncasecmp(url, ABOUT_URL, sizeof(ABOUT_URL) - 1) == 0) { url += sizeof(ABOUT_URL) -1; - if (strcasecmp(url, "ftp") == 0) { + if (strcasecmp(url, "ftp") == 0 || + strcasecmp(url, "tnftp") == 0) { fputs( -"This version of ftp has been enhanced by Luke Mewburn \n" +"This version of ftp has been enhanced by Luke Mewburn \n" "for the NetBSD project. Execute `man ftp' for more details.\n", ttyout); } else if (strcasecmp(url, "lukem") == 0) { fputs( "Luke Mewburn is the author of most of the enhancements in this ftp client.\n" -"Please email feedback to .\n", ttyout); +"Please email feedback to .\n", ttyout); } else if (strcasecmp(url, "netbsd") == 0) { fputs( "NetBSD is a freely available and redistributable UNIX-like operating system.\n" -"For more information, see http://www.netbsd.org/index.html\n", ttyout); +"For more information, see http://www.NetBSD.org/\n", ttyout); } else if (strcasecmp(url, "version") == 0) { fprintf(ttyout, "Version: %s %s%s\n", FTP_PRODUCT, FTP_VERSION, ==== //depot/projects/hammer/contrib/lukemftp/src/ftp.1#4 (text+ko) ==== @@ -1,4 +1,4 @@ -.\" $NetBSD: ftp.1,v 1.96 2003/06/26 17:48:37 wiz Exp $ +.\" $NetBSD: ftp.1,v 1.100 2003/08/07 11:13:54 agc Exp $ .\" .\" Copyright (c) 1996-2003 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -46,11 +46,7 @@ .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors +.\" 3. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" @@ -68,7 +64,7 @@ .\" .\" @(#)ftp.1 8.3 (Berkeley) 10/9/94 .\" -.Dd January 20, 2003 +.Dd July 31, 2003 .Dt FTP 1 .Os .Sh NAME @@ -2092,10 +2088,7 @@ .It Xo .Sm off .Li \&%c -.Op Oo Li 0 Oc Ar n -.Sm on -.No , -.Sm off +.Op Oo Li 0 Oc Ar n Ns , .Li \&%. .Op Oo Li 0 Oc Ar n .Sm on @@ -2189,6 +2182,11 @@ .Fn getservbyname lookup of .Dq ftpgate/tcp . +.It Ev FTPUSERAGENT +The value to send for the +.Tn HTTP +User-Agent +header. .It Ev HOME For default location of a .Pa .netrc ==== //depot/projects/hammer/contrib/lukemftp/src/ftp.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: ftp.c,v 1.120 2002/06/05 10:20:49 lukem Exp $ */ +/* $NetBSD: ftp.c,v 1.122 2003/08/07 11:13:55 agc Exp $ */ /*- * Copyright (c) 1996-2002 The NetBSD Foundation, Inc. @@ -48,11 +48,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -103,7 +99,7 @@ #if 0 static char sccsid[] = "@(#)ftp.c 8.6 (Berkeley) 10/27/94"; #else -__RCSID("$NetBSD: ftp.c,v 1.120 2002/06/05 10:20:49 lukem Exp $"); +__RCSID("$NetBSD: ftp.c,v 1.122 2003/08/07 11:13:55 agc Exp $"); #endif #endif /* not lint */ @@ -745,6 +741,7 @@ if (command("%s", cmd) != PRELIM) goto cleanupsend; } + dirchange = 1; dout = dataconn(lmode); if (dout == NULL) goto abort; ==== //depot/projects/hammer/contrib/lukemftp/src/ftp_var.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: ftp_var.h,v 1.64 2003/01/21 16:08:07 jhawk Exp $ */ +/* $NetBSD: ftp_var.h,v 1.65 2003/08/07 11:13:56 agc Exp $ */ /*- * Copyright (c) 1996-2003 The NetBSD Foundation, Inc. @@ -48,11 +48,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * ==== //depot/projects/hammer/contrib/lukemftp/src/main.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.84 2003/05/14 14:31:00 wiz Exp $ */ +/* $NetBSD: main.c,v 1.86 2003/08/07 11:13:56 agc Exp $ */ /*- * Copyright (c) 1996-2002 The NetBSD Foundation, Inc. @@ -48,11 +48,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -108,7 +104,7 @@ #if 0 static char sccsid[] = "@(#)main.c 8.6 (Berkeley) 10/9/94"; #else -__RCSID("$NetBSD: main.c,v 1.84 2003/05/14 14:31:00 wiz Exp $"); +__RCSID("$NetBSD: main.c,v 1.86 2003/08/07 11:13:56 agc Exp $"); #endif #endif /* not lint */ @@ -467,7 +463,7 @@ * string "username@", and will append the hostname itself. We * do this by default since many servers are picky about not * having a FQDN in the anonymous password. - * - thorpej@netbsd.org + * - thorpej@NetBSD.org */ len = strlen(anonuser) + 2; anonpass = xmalloc(len); ==== //depot/projects/hammer/contrib/lukemftp/src/progressbar.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: progressbar.c,v 1.3 2003/02/28 09:53:49 lukem Exp $ */ +/* $NetBSD: progressbar.c,v 1.4 2003/07/17 12:06:18 lukem Exp $ */ /*- * Copyright (c) 1997-2003 The NetBSD Foundation, Inc. @@ -7,10 +7,6 @@ * This code is derived from software contributed to The NetBSD Foundation * by Luke Mewburn. * - * This code is derived from software contributed to The NetBSD Foundation - * by Jason R. Thorpe of the Numerical Aerospace Simulation Facility, - * NASA Ames Research Center. - * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -42,7 +38,7 @@ #include #ifndef lint -__RCSID("$NetBSD: progressbar.c,v 1.3 2003/02/28 09:53:49 lukem Exp $"); +__RCSID("$NetBSD: progressbar.c,v 1.4 2003/07/17 12:06:18 lukem Exp $"); #endif /* not lint */ /* ==== //depot/projects/hammer/contrib/lukemftp/src/ruserpass.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: ruserpass.c,v 1.28 2000/11/15 00:11:04 lukem Exp $ */ +/* $NetBSD: ruserpass.c,v 1.29 2003/08/07 11:13:57 agc Exp $ */ /* * Copyright (c) 1985, 1993, 1994 @@ -12,11 +12,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -38,7 +34,7 @@ #if 0 static char sccsid[] = "@(#)ruserpass.c 8.4 (Berkeley) 4/27/95"; #else -__RCSID("$NetBSD: ruserpass.c,v 1.28 2000/11/15 00:11:04 lukem Exp $"); +__RCSID("$NetBSD: ruserpass.c,v 1.29 2003/08/07 11:13:57 agc Exp $"); #endif #endif /* not lint */ ==== //depot/projects/hammer/contrib/lukemftp/src/util.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: util.c,v 1.112 2003/06/15 13:49:46 lukem Exp $ */ +/* $NetBSD: util.c,v 1.114 2003/08/07 11:13:57 agc Exp $ */ /*- * Copyright (c) 1997-2003 The NetBSD Foundation, Inc. @@ -52,11 +52,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -75,7 +71,7 @@ #include #ifndef lint -__RCSID("$NetBSD: util.c,v 1.112 2003/06/15 13:49:46 lukem Exp $"); +__RCSID("$NetBSD: util.c,v 1.114 2003/08/07 11:13:57 agc Exp $"); #endif /* not lint */ /* @@ -177,15 +173,22 @@ parse_feat(const char *line) { - if (strcasecmp(line, " MDTM") == 0) + /* + * work-around broken ProFTPd servers that can't + * even obey RFC 2389. + */ + while (*line && isspace((int)*line)) + line++; + + if (strcasecmp(line, "MDTM") == 0) features[FEAT_MDTM] = 1; - else if (strncasecmp(line, " MLST", sizeof(" MLST") - 1) == 0) { + else if (strncasecmp(line, "MLST", sizeof("MLST") - 1) == 0) { features[FEAT_MLST] = 1; - } else if (strcasecmp(line, " REST STREAM") == 0) + } else if (strcasecmp(line, "REST STREAM") == 0) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Nov 3 16:45:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 367CC16A4D0; Mon, 3 Nov 2003 16:45:23 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EF84516A4CE for ; Mon, 3 Nov 2003 16:45:22 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4919143FB1 for ; Mon, 3 Nov 2003 16:45:22 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA40jMXJ036188 for ; Mon, 3 Nov 2003 16:45:22 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA40jLAO036185 for perforce@freebsd.org; Mon, 3 Nov 2003 16:45:21 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 16:45:21 -0800 (PST) Message-Id: <200311040045.hA40jLAO036185@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41290 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:45:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=41290 Change 41290 by peter@peter_daintree on 2003/11/03 16:45:10 integrate -I smp_hammer @41229 (jhb's sync prior to commits) Affected files ... .. //depot/projects/hammer/sys/amd64/acpica/madt.c#10 integrate .. //depot/projects/hammer/sys/amd64/amd64/io_apic.c#11 integrate .. //depot/projects/hammer/sys/amd64/amd64/local_apic.c#14 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable.c#6 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#2 integrate .. //depot/projects/hammer/sys/amd64/isa/atpic.c#10 integrate .. //depot/projects/hammer/sys/jhb_notes#8 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/acpica/madt.c#10 (text+ko) ==== @@ -10,6 +10,9 @@ * 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. Neither the name of the author nor the names of any co-contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE @@ -22,10 +25,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD$ */ +#include +__FBSDID("$FreeBSD$"); + #include #include #include @@ -643,7 +647,7 @@ break; } } - if (pc->pc_acpi_id == -1) + if (j == NLAPICS + 1) panic("Unable to find ACPI ID for CPU %d", i); } } ==== //depot/projects/hammer/sys/amd64/amd64/io_apic.c#11 (text+ko) ==== @@ -25,10 +25,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD$ */ +#include +__FBSDID("$FreeBSD$"); + #include "opt_isa.h" #include "opt_no_mixed_mode.h" ==== //depot/projects/hammer/sys/amd64/amd64/local_apic.c#14 (text+ko) ==== @@ -10,6 +10,9 @@ * notice, this list of conditions and the following disclaimer. * 2. The name of the developer may NOT be used to endorse or promote products * derived from this software without specific prior written permission. + * 3. Neither the name of the author nor the names of any co-contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE @@ -22,14 +25,15 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/i386/i386/mpapic.c,v 1.60 2002/09/21 19:03:42 markm Exp $ */ /* * Local APIC support on Pentium and later processors. */ +#include +__FBSDID("$FreeBSD$"); + #include #include #include ==== //depot/projects/hammer/sys/amd64/amd64/mptable.c#6 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/i386/i386/mp_machdep.c,v 1.208 2003/05/15 05:12:24 alc Exp $ */ +#include +__FBSDID("$FreeBSD$"); + #include #include #include ==== //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#2 (text+ko) ==== @@ -25,8 +25,6 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD$ */ /* ==== //depot/projects/hammer/sys/amd64/isa/atpic.c#10 (text+ko) ==== @@ -25,14 +25,15 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD$ */ /* * PIC driver for the 8259A Master and Slave PICs in PC/AT machines. */ +#include +__FBSDID("$FreeBSD$"); + #include "opt_auto_eoi.h" #include "opt_isa.h" @@ -45,9 +46,10 @@ #include #include +#include #include -#include #include +#include #include #include @@ -303,6 +305,70 @@ #ifdef DEV_ISA /* + * Bus attachment for the ISA PIC. + */ +static struct isa_pnp_id atpic_ids[] = { + { 0x0000d041 /* PNP0000 */, "AT interrupt controller" }, + { 0 } +}; + +static int +atpic_probe(device_t dev) +{ + int result; + + result = ISA_PNP_PROBE(device_get_parent(dev), dev, atpic_ids); + if (result <= 0) + device_quiet(dev); + return (result); +} + +/* + * We might be granted IRQ 2, as this is typically consumed by chaining + * between the two PIC components. If we're using the APIC, however, + * this may not be the case, and as such we should free the resource. + * (XXX untested) + * + * The generic ISA attachment code will handle allocating any other resources + * that we don't explicitly claim here. + */ +static int +atpic_attach(device_t dev) +{ + struct resource *res; + int rid; + + /* Try to allocate our IRQ and then free it. */ + rid = 0; + res = bus_alloc_resource(dev, SYS_RES_IRQ, &rid, 0, ~0, 1, 0); + if (res != NULL) + bus_release_resource(dev, SYS_RES_IRQ, rid, res); + return (0); +} + +static device_method_t atpic_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, atpic_probe), + DEVMETHOD(device_attach, atpic_attach), + DEVMETHOD(device_detach, bus_generic_detach), + DEVMETHOD(device_shutdown, bus_generic_shutdown), + DEVMETHOD(device_suspend, bus_generic_suspend), + DEVMETHOD(device_resume, bus_generic_resume), + { 0, 0 } +}; + +static driver_t atpic_driver = { + "atpic", + atpic_methods, + 1, /* no softc */ +}; + +static devclass_t atpic_devclass; + +DRIVER_MODULE(atpic, isa, atpic_driver, atpic_devclass, 0, 0); +DRIVER_MODULE(atpic, acpi, atpic_driver, atpic_devclass, 0, 0); + +/* * Return a bitmap of the current interrupt requests. This is 8259-specific * and is only suitable for use at probe time. */ @@ -316,5 +382,4 @@ irr2 = inb(IO_ICU2); return ((irr2 << 8) | irr1); } -#endif - +#endif /* DEV_ISA */ ==== //depot/projects/hammer/sys/jhb_notes#8 (text+ko) ==== @@ -9,6 +9,7 @@ - isa/intr_machdep.h -> include/intr_machdep.h (sort of) New files: +- acpica/madt.c - i386/local_apic.c - i386/io_apic.c - i386/mptable.c (from mp_machdep.c) @@ -28,6 +29,15 @@ - isa/ithread.c - isa/vector.s +Repocopies needed: +- include/apic.h -> include/apicreg.h +- isa/apic_vector.s -> i386/apic_vector.s +- isa/icu_vector.s -> isa/atpic_vector.s +- isa/intr_machdep.c -> isa/atpic.c (nothing will be kept) +- isa/intr_machdep.c -> isa/nmi.c +- i386/mp_machdep.c -> include/mptable.h +- i386/mp_machdep.c -> i386/mptable.c + Todo: - DDB + Add APIC ID to show pcpu From owner-p4-projects@FreeBSD.ORG Mon Nov 3 16:49:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B906316A4D1; Mon, 3 Nov 2003 16:49:31 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7A36916A4CE for ; Mon, 3 Nov 2003 16:49:31 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F359B44030 for ; Mon, 3 Nov 2003 16:49:27 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA40nRXJ042007 for ; Mon, 3 Nov 2003 16:49:27 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA40nRBX042004 for perforce@freebsd.org; Mon, 3 Nov 2003 16:49:27 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 16:49:27 -0800 (PST) Message-Id: <200311040049.hA40nRBX042004@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41291 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:49:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=41291 Change 41291 by peter@peter_daintree on 2003/11/03 16:48:40 p4 integ -b smp_hammer -I (after commits) Affected files ... .. //depot/projects/hammer/sys/amd64/acpica/madt.c#11 integrate .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#11 delete .. //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#4 integrate .. //depot/projects/hammer/sys/amd64/amd64/io_apic.c#12 integrate .. //depot/projects/hammer/sys/amd64/amd64/local_apic.c#15 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#20 integrate .. //depot/projects/hammer/sys/amd64/amd64/mpboot.s#12 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable.c#7 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#3 integrate .. //depot/projects/hammer/sys/amd64/include/apicreg.h#2 delete .. //depot/projects/hammer/sys/amd64/include/apicvar.h#8 integrate .. //depot/projects/hammer/sys/amd64/include/intr_machdep.h#5 integrate .. //depot/projects/hammer/sys/amd64/include/mptable.h#2 integrate .. //depot/projects/hammer/sys/amd64/include/smp.h#8 integrate .. //depot/projects/hammer/sys/amd64/isa/atpic.c#11 integrate .. //depot/projects/hammer/sys/amd64/isa/nmi.c#2 delete .. //depot/projects/hammer/sys/jhb_notes#9 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/acpica/madt.c#11 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.1 2003/11/03 22:17:44 jhb Exp $"); #include #include ==== //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#4 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ + * $FreeBSD: src/sys/i386/i386/intr_machdep.c,v 1.1 2003/11/03 21:25:52 jhb Exp $ */ /* ==== //depot/projects/hammer/sys/amd64/amd64/io_apic.c#12 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/i386/i386/io_apic.c,v 1.1 2003/11/03 21:53:36 jhb Exp $"); #include "opt_isa.h" #include "opt_no_mixed_mode.h" ==== //depot/projects/hammer/sys/amd64/amd64/local_apic.c#15 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/i386/i386/local_apic.c,v 1.1 2003/11/03 21:53:36 jhb Exp $"); #include #include ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#20 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/mp_machdep.c,v 1.219 2003/10/30 21:42:16 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/mp_machdep.c,v 1.220 2003/11/03 22:32:03 jhb Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" ==== //depot/projects/hammer/sys/amd64/amd64/mpboot.s#12 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/i386/i386/mpboot.s,v 1.22 2003/10/30 21:42:44 jhb Exp $ + * $FreeBSD: src/sys/i386/i386/mpboot.s,v 1.23 2003/11/03 22:32:03 jhb Exp $ */ #include /* miscellaneous asm macros */ ==== //depot/projects/hammer/sys/amd64/amd64/mptable.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/i386/i386/mptable.c,v 1.220 2003/11/03 22:12:37 jhb Exp $"); #include #include ==== //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#3 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/i386/i386/mptable_pci.c,v 1.1 2003/11/03 22:12:37 jhb Exp $"); #include #include ==== //depot/projects/hammer/sys/amd64/include/apicvar.h#8 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ + * $FreeBSD: src/sys/i386/include/apicvar.h,v 1.1 2003/11/03 21:53:38 jhb Exp $ */ #ifndef _MACHINE_APICVAR_H_ ==== //depot/projects/hammer/sys/amd64/include/intr_machdep.h#5 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ + * $FreeBSD: src/sys/i386/include/intr_machdep.h,v 1.1 2003/11/03 21:25:52 jhb Exp $ */ #ifndef __MACHINE_INTR_MACHDEP_H__ ==== //depot/projects/hammer/sys/amd64/include/mptable.h#2 (text+ko) ==== @@ -22,7 +22,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ + * $FreeBSD: src/sys/i386/include/mptable.h,v 1.220 2003/11/03 22:12:37 jhb Exp $ */ #ifndef __MACHINE_MPTABLE_H__ ==== //depot/projects/hammer/sys/amd64/include/smp.h#8 (text+ko) ==== @@ -6,7 +6,7 @@ * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp * ---------------------------------------------------------------------------- * - * $FreeBSD: src/sys/i386/include/smp.h,v 1.76 2003/04/02 23:53:29 peter Exp $ + * $FreeBSD: src/sys/i386/include/smp.h,v 1.77 2003/11/03 22:32:04 jhb Exp $ * */ ==== //depot/projects/hammer/sys/amd64/isa/atpic.c#11 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD$"); +__FBSDID("$FreeBSD: src/sys/i386/isa/atpic.c,v 1.1 2003/11/03 21:34:45 jhb Exp $"); #include "opt_auto_eoi.h" #include "opt_isa.h" ==== //depot/projects/hammer/sys/jhb_notes#9 (text+ko) ==== @@ -1,62 +1,12 @@ -All files are under sys/i386 - -Files moved in this branch: -- include/apic.h -> include/apicreg.h -- isa/apic_vector.s -> i386/apic_vector.s -- isa/icu_vector.s -> isa/atpic_vector.s -- isa/intr_machdep.c -> isa/atpic.c (sort of) -- isa/intr_machdep.c -> isa/nmi.c -- isa/intr_machdep.h -> include/intr_machdep.h (sort of) - -New files: -- acpica/madt.c -- i386/local_apic.c -- i386/io_apic.c -- i386/mptable.c (from mp_machdep.c) -- i386/mptable_pci.c -- include/apicvar.h -- include/mptable.h (from mp_machdep.c) - -Files removed in this branch: -- conf/SMP -- i386/mpapic.c -- isa/intr_machdep.c -- isa/intr_machdep.h -- isa/icu_ipl.s -- isa/icu_vector.s -- isa/apic_ipl.s -- isa/apic_vector.s -- isa/ithread.c -- isa/vector.s - -Repocopies needed: -- include/apic.h -> include/apicreg.h -- isa/apic_vector.s -> i386/apic_vector.s -- isa/icu_vector.s -> isa/atpic_vector.s -- isa/intr_machdep.c -> isa/atpic.c (nothing will be kept) -- isa/intr_machdep.c -> isa/nmi.c -- i386/mp_machdep.c -> include/mptable.h -- i386/mp_machdep.c -> i386/mptable.c - Todo: - DDB - + Add APIC ID to show pcpu - + Add 'show intrcnt' - + Add 'show idt' - Add 'show ithread' + Add 'show irqs' - print out PIC driver name for each IRQ? - Add 'show irq' -+ Add nmi.c -+ Set PCPU(apic_id) for UP case in lapic_init(). -+ Use apic id of BSP (current CPU) when programming temporary physical - destinations into I/O APIC RDT entries. + Fix IDT_SYSCALL mapping in APIC case + Retest interrupts - Somehow test IRQ's in this range? -+ Test mixed mode - + works on SMP when single physical destination -+ Fix bogus SMP probe when only 1 CPU - Kill isa_irq_pending() (maybe, is this an MI function?) + Add ACPI MADT APIC enumerator. - Use APIC ID's for index in lapics[] array instead of ACPI IDs, ACPI @@ -79,13 +29,8 @@ + Add NO_MIXED_MODE option - Add runtime decision for IRQ0 mixed mode? - Don't use mixed mode with MADT? -+ SMP bogons - + doesn't work on 750x - + pmap_lazyfix unhappy with old-style critical sections -- Chokes on scott's dual P3 when looking for ACPI RSDT. - Perhaps change the IRQ resource manager such that it starts out empty and a resource entry for each IRQ is added as each IRQ is registered -- Clean up includes in new files. - Add handling of local APIC ERROR lvt. - Use the local apic timer to drive hard/stat/profclock (maybe too hard) - Do we need to be able to renumber I/O APICs? From owner-p4-projects@FreeBSD.ORG Mon Nov 3 16:50:30 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 93EFE16A4D0; Mon, 3 Nov 2003 16:50:30 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6FAA816A4CE for ; Mon, 3 Nov 2003 16:50:30 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DB83843FCB for ; Mon, 3 Nov 2003 16:50:29 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA40oTXJ042094 for ; Mon, 3 Nov 2003 16:50:29 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA40oTBA042090 for perforce@freebsd.org; Mon, 3 Nov 2003 16:50:29 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 16:50:29 -0800 (PST) Message-Id: <200311040050.hA40oTBA042090@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41292 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:50:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=41292 Change 41292 by peter@peter_daintree on 2003/11/03 16:50:27 oops, re-add Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#12 add Differences ... From owner-p4-projects@FreeBSD.ORG Mon Nov 3 16:52:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 099FC16A4D0; Mon, 3 Nov 2003 16:52:34 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D89C116A4CE for ; Mon, 3 Nov 2003 16:52:33 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4B3B843FBD for ; Mon, 3 Nov 2003 16:52:33 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA40qXXJ042268 for ; Mon, 3 Nov 2003 16:52:33 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA40qWGE042265 for perforce@freebsd.org; Mon, 3 Nov 2003 16:52:32 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 16:52:32 -0800 (PST) Message-Id: <200311040052.hA40qWGE042265@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41293 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:52:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=41293 Change 41293 by peter@peter_daintree on 2003/11/03 16:52:02 re-add etc. finish cleaning up after not paying attention to an integrate from source files that went away. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#13 edit .. //depot/projects/hammer/sys/amd64/include/apicreg.h#3 add .. //depot/projects/hammer/sys/amd64/isa/nmi.c#3 add Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#13 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Mon Nov 3 16:55:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5562816A4D0; Mon, 3 Nov 2003 16:55:38 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2F84B16A4CE for ; Mon, 3 Nov 2003 16:55:38 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ADD7A43F3F for ; Mon, 3 Nov 2003 16:55:37 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA40tbXJ042489 for ; Mon, 3 Nov 2003 16:55:37 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA40tbZf042486 for perforce@freebsd.org; Mon, 3 Nov 2003 16:55:37 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 16:55:37 -0800 (PST) Message-Id: <200311040055.hA40tbZf042486@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41294 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:55:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=41294 Change 41294 by peter@peter_daintree on 2003/11/03 16:54:37 re-target source of smp_hammer branch Affected files ... .. //depot/projects/hammer/sys/amd64/include/apicreg.h#4 integrate .. //depot/projects/hammer/sys/amd64/isa/nmi.c#4 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/include/apicreg.h#4 (text+ko) ==== @@ -22,7 +22,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/i386/include/apic.h,v 1.24 2003/09/10 01:11:58 jhb Exp $ + * $FreeBSD: src/sys/i386/include/apicreg.h,v 1.25 2003/11/03 21:53:38 jhb Exp $ */ #ifndef _MACHINE_APICREG_H_ ==== //depot/projects/hammer/sys/amd64/isa/nmi.c#4 (text+ko) ==== @@ -37,7 +37,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/isa/intr_machdep.c,v 1.76 2003/06/02 16:32:54 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/isa/nmi.c,v 1.77 2003/11/03 21:10:17 jhb Exp $"); #include "opt_mca.h" From owner-p4-projects@FreeBSD.ORG Mon Nov 3 16:56:40 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7B43316A4D0; Mon, 3 Nov 2003 16:56:40 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 55C1916A4CE for ; Mon, 3 Nov 2003 16:56:40 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D353C43FE5 for ; Mon, 3 Nov 2003 16:56:39 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA40udXJ042547 for ; Mon, 3 Nov 2003 16:56:39 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA40udBj042544 for perforce@freebsd.org; Mon, 3 Nov 2003 16:56:39 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 16:56:39 -0800 (PST) Message-Id: <200311040056.hA40udBj042544@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41295 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:56:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=41295 Change 41295 by peter@peter_daintree on 2003/11/03 16:55:47 cleanups Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#14 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#14 (text+ko) ==== @@ -1,4 +1,3 @@ -//depot/projects/hammer/sys/amd64/amd64/apic_vector.s#10 - integrate change 41027 (text+ko) /*- * Copyright (c) 1989, 1990 William F. Jolitz. * Copyright (c) 1990 The Regents of the University of California. @@ -33,7 +32,7 @@ * SUCH DAMAGE. * * from: vector.s, 386BSD 0.1 unknown origin - * $FreeBSD: src/sys/i386/isa/apic_vector.s,v 1.90 2003/10/16 10:44:24 bde Exp $ + * $FreeBSD: src/sys/i386/i386/apic_vector.s,v 1.91 2003/11/03 21:53:36 jhb Exp $ */ /* From owner-p4-projects@FreeBSD.ORG Mon Nov 3 16:56:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 08E0916A4D3; Mon, 3 Nov 2003 16:56:42 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D561316A4CE for ; Mon, 3 Nov 2003 16:56:41 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 82D0F43FE5 for ; Mon, 3 Nov 2003 16:56:40 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA40ueXJ042553 for ; Mon, 3 Nov 2003 16:56:40 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA40ud7p042550 for perforce@freebsd.org; Mon, 3 Nov 2003 16:56:39 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 16:56:39 -0800 (PST) Message-Id: <200311040056.hA40ud7p042550@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41296 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 00:56:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=41296 Change 41296 by peter@peter_daintree on 2003/11/03 16:56:30 re-target source of branch Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#15 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#15 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Mon Nov 3 17:01:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1345616A4D0; Mon, 3 Nov 2003 17:01:48 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E13B716A4CE for ; Mon, 3 Nov 2003 17:01:47 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 56AD743FDF for ; Mon, 3 Nov 2003 17:01:47 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA411lXJ042979 for ; Mon, 3 Nov 2003 17:01:47 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA411kAk042976 for perforce@freebsd.org; Mon, 3 Nov 2003 17:01:46 -0800 (PST) (envelope-from peter@freebsd.org) Date: Mon, 3 Nov 2003 17:01:46 -0800 (PST) Message-Id: <200311040101.hA411kAk042976@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41297 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 01:01:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=41297 Change 41297 by peter@peter_daintree on 2003/11/03 17:01:00 re-target source of smp_hammer branch Affected files ... .. //depot/projects/hammer/sys/amd64/isa/atpic_vector.s#7 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/isa/atpic_vector.s#7 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Tue Nov 4 11:50:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 247D516A4D2; Tue, 4 Nov 2003 11:50:18 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D4EA316A4D0 for ; Tue, 4 Nov 2003 11:50:17 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EE07543FAF for ; Tue, 4 Nov 2003 11:50:15 -0800 (PST) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA4JoFXJ058092 for ; Tue, 4 Nov 2003 11:50:15 -0800 (PST) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA4Jo9xO058040 for perforce@freebsd.org; Tue, 4 Nov 2003 11:50:09 -0800 (PST) (envelope-from jhb@freebsd.org) Date: Tue, 4 Nov 2003 11:50:09 -0800 (PST) Message-Id: <200311041950.hA4Jo9xO058040@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 41372 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 19:50:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=41372 Change 41372 by jhb@jhb_laptop on 2003/11/04 11:50:05 IFC @41369. Affected files ... .. //depot/projects/smpng/sys/alpha/osf1/osf1_ioctl.c#8 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#14 integrate .. //depot/projects/smpng/sys/amd64/amd64/trap.c#11 integrate .. //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#9 integrate .. //depot/projects/smpng/sys/boot/common/dev_net.c#4 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32.h#2 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/smpng/sys/compat/ia32/ia32_signal.h#2 integrate .. //depot/projects/smpng/sys/compat/ia32/ia32_sysvec.c#3 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#30 integrate .. //depot/projects/smpng/sys/conf/files#89 integrate .. //depot/projects/smpng/sys/conf/files.i386#48 integrate .. //depot/projects/smpng/sys/conf/files.pc98#49 integrate .. //depot/projects/smpng/sys/conf/kern.post.mk#25 integrate .. //depot/projects/smpng/sys/conf/majors#29 integrate .. //depot/projects/smpng/sys/conf/options#65 integrate .. //depot/projects/smpng/sys/conf/options.i386#32 integrate .. //depot/projects/smpng/sys/conf/options.pc98#32 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/ah.h#3 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/freebsd/ah_osdep.c#3 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/freebsd/ah_osdep.h#3 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/freebsd/i386-elf.hal.o.uu#4 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/version.h#3 integrate .. //depot/projects/smpng/sys/contrib/dev/oltr/if_oltr.c#7 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_compat.h#8 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil.c#12 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_log.c#7 integrate .. //depot/projects/smpng/sys/contrib/ngatm/FREEBSD-upgrade#2 integrate .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/addr.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/genfiles#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/misc/straddr.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/geniec.awk#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/genieh.awk#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/genmsgc.awk#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/genmsgh.awk#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/ie.def#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/msg.def#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/parseie.awk#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/parsemsg.awk#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/priv.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/privmsg.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/traffic.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uni_config.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uni_hdr.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uni_ie.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uni_ie.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uni_ietab.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uni_msg.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uni_msg.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/unimsglib.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/uniprint.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/msg/unistruct.h#1 branch .. //depot/projects/smpng/sys/dev/aac/aac_pci.c#26 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/ahc_pci.c#14 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/ahd_pci.c#12 integrate .. //depot/projects/smpng/sys/dev/an/if_an.c#33 integrate .. //depot/projects/smpng/sys/dev/ar/if_ar.c#10 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#41 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#21 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#33 integrate .. //depot/projects/smpng/sys/dev/ata/ata-lowlevel.c#4 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#13 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.c#38 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.h#13 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath.c#10 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/awi/if_awi_pccard.c#9 integrate .. //depot/projects/smpng/sys/dev/bfe/if_bfe.c#2 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#35 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#20 integrate .. //depot/projects/smpng/sys/dev/cardbus/cardbus.c#18 integrate .. //depot/projects/smpng/sys/dev/cm/if_cm_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/cm/smc90cx6.c#8 integrate .. //depot/projects/smpng/sys/dev/cm/smc90cx6var.h#3 integrate .. //depot/projects/smpng/sys/dev/cnw/if_cnw.c#14 integrate .. //depot/projects/smpng/sys/dev/cs/if_cs.c#6 integrate .. //depot/projects/smpng/sys/dev/cs/if_cs_isa.c#4 integrate .. //depot/projects/smpng/sys/dev/cs/if_cs_pccard.c#7 integrate .. //depot/projects/smpng/sys/dev/cs/if_csreg.h#2 integrate .. //depot/projects/smpng/sys/dev/cs/if_csvar.h#2 integrate .. //depot/projects/smpng/sys/dev/drm/drm_drv.h#12 integrate .. //depot/projects/smpng/sys/dev/drm/drm_os_freebsd.h#12 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed.c#15 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_cbus.c#9 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_isa.c#7 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_pccard.c#19 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/ed/if_edvar.h#5 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#27 integrate .. //depot/projects/smpng/sys/dev/en/if_en_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/en/midway.c#20 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep.c#13 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_pccard.c#13 integrate .. //depot/projects/smpng/sys/dev/ep/if_epreg.h#5 integrate .. //depot/projects/smpng/sys/dev/ex/if_ex.c#7 integrate .. //depot/projects/smpng/sys/dev/fatm/if_fatm.c#7 integrate .. //depot/projects/smpng/sys/dev/fe/if_fe.c#7 integrate .. //depot/projects/smpng/sys/dev/fe/if_fevar.h#2 integrate .. //depot/projects/smpng/sys/dev/firewire/firewirereg.h#14 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci.c#25 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci_pci.c#20 integrate .. //depot/projects/smpng/sys/dev/firewire/if_fwe.c#16 integrate .. //depot/projects/smpng/sys/dev/firewire/sbp.c#27 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxp.c#46 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxpvar.h#12 integrate .. //depot/projects/smpng/sys/dev/gem/if_gem.c#16 integrate .. //depot/projects/smpng/sys/dev/gx/if_gx.c#12 integrate .. //depot/projects/smpng/sys/dev/harp/if_harp.c#3 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm.c#10 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_intr.c#6 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatmvar.h#5 integrate .. //depot/projects/smpng/sys/dev/hme/if_hme.c#13 integrate .. //depot/projects/smpng/sys/dev/ie/if_ie.c#8 integrate .. //depot/projects/smpng/sys/dev/iicbus/if_ic.c#9 integrate .. //depot/projects/smpng/sys/dev/led/led.c#1 branch .. //depot/projects/smpng/sys/dev/led/led.h#1 branch .. //depot/projects/smpng/sys/dev/lge/if_lge.c#16 integrate .. //depot/projects/smpng/sys/dev/lnc/if_lnc.c#9 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#19 integrate .. //depot/projects/smpng/sys/dev/my/if_my.c#12 integrate .. //depot/projects/smpng/sys/dev/nge/if_nge.c#26 integrate .. //depot/projects/smpng/sys/dev/null/null.c#14 integrate .. //depot/projects/smpng/sys/dev/patm/if_patm_attach.c#3 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard.c#26 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs#33 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs.h#33 integrate .. //depot/projects/smpng/sys/dev/pccard/pccardvar.h#17 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#34 integrate .. //depot/projects/smpng/sys/dev/pdq/if_fea.c#7 integrate .. //depot/projects/smpng/sys/dev/pdq/if_fpa.c#7 integrate .. //depot/projects/smpng/sys/dev/pdq/pdq_freebsd.h#6 integrate .. //depot/projects/smpng/sys/dev/pdq/pdqvar.h#5 integrate .. //depot/projects/smpng/sys/dev/ppbus/if_plip.c#8 integrate .. //depot/projects/smpng/sys/dev/puc/puc_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/random/randomdev.c#15 integrate .. //depot/projects/smpng/sys/dev/ray/if_ray.c#10 integrate .. //depot/projects/smpng/sys/dev/re/if_re.c#3 integrate .. //depot/projects/smpng/sys/dev/sbni/if_sbni.c#12 integrate .. //depot/projects/smpng/sys/dev/sbni/if_sbni_isa.c#8 integrate .. //depot/projects/smpng/sys/dev/sbsh/if_sbsh.c#5 integrate .. //depot/projects/smpng/sys/dev/sio/sio_pci.c#11 integrate .. //depot/projects/smpng/sys/dev/sn/if_sn.c#10 integrate .. //depot/projects/smpng/sys/dev/snc/dp83932.c#7 integrate .. //depot/projects/smpng/sys/dev/sound/isa/mpu.c#11 integrate .. //depot/projects/smpng/sys/dev/sr/if_sr.c#11 integrate .. //depot/projects/smpng/sys/dev/syscons/syscons.c#32 integrate .. //depot/projects/smpng/sys/dev/tx/if_tx.c#13 integrate .. //depot/projects/smpng/sys/dev/txp/if_txp.c#17 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/usb/ehci_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/usb/if_aue.c#26 integrate .. //depot/projects/smpng/sys/dev/usb/if_axe.c#6 integrate .. //depot/projects/smpng/sys/dev/usb/if_cue.c#19 integrate .. //depot/projects/smpng/sys/dev/usb/if_kue.c#17 integrate .. //depot/projects/smpng/sys/dev/usb/if_rue.c#5 integrate .. //depot/projects/smpng/sys/dev/usb/ohci_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/usb/uhci_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/vx/if_vx.c#13 integrate .. //depot/projects/smpng/sys/dev/vx/if_vx_eisa.c#6 integrate .. //depot/projects/smpng/sys/dev/vx/if_vx_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/vx/if_vxvar.h#2 integrate .. //depot/projects/smpng/sys/dev/wi/if_wi.c#57 integrate .. //depot/projects/smpng/sys/dev/wl/if_wl.c#15 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe.c#11 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe_pccard.c#10 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_vfsops.c#23 integrate .. //depot/projects/smpng/sys/fs/unionfs/union_vfsops.c#17 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/alpha-bitops.h#2 delete .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_vfsops.c#26 integrate .. //depot/projects/smpng/sys/i386/acpica/Makefile#5 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_machdep.c#12 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_wakecode.S#6 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_wakeup.c#22 integrate .. //depot/projects/smpng/sys/i386/acpica/madt.c#1 branch .. //depot/projects/smpng/sys/i386/conf/GENERIC#43 integrate .. //depot/projects/smpng/sys/i386/conf/NOTES#67 integrate .. //depot/projects/smpng/sys/i386/conf/PAE#7 integrate .. //depot/projects/smpng/sys/i386/conf/SMP#3 delete .. //depot/projects/smpng/sys/i386/i386/apic_vector.s#1 branch .. //depot/projects/smpng/sys/i386/i386/autoconf.c#16 integrate .. //depot/projects/smpng/sys/i386/i386/bios.c#19 integrate .. //depot/projects/smpng/sys/i386/i386/critical.c#9 integrate .. //depot/projects/smpng/sys/i386/i386/db_interface.c#20 integrate .. //depot/projects/smpng/sys/i386/i386/db_trace.c#13 integrate .. //depot/projects/smpng/sys/i386/i386/elan-mmcr.c#11 integrate .. //depot/projects/smpng/sys/i386/i386/exception.s#16 integrate .. //depot/projects/smpng/sys/i386/i386/genassym.c#26 integrate .. //depot/projects/smpng/sys/i386/i386/identcpu.c#26 integrate .. //depot/projects/smpng/sys/i386/i386/initcpu.c#20 integrate .. //depot/projects/smpng/sys/i386/i386/intr_machdep.c#1 branch .. //depot/projects/smpng/sys/i386/i386/io_apic.c#1 branch .. //depot/projects/smpng/sys/i386/i386/local_apic.c#1 branch .. //depot/projects/smpng/sys/i386/i386/locore.s#20 integrate .. //depot/projects/smpng/sys/i386/i386/machdep.c#66 integrate .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#55 integrate .. //depot/projects/smpng/sys/i386/i386/mpapic.c#16 delete .. //depot/projects/smpng/sys/i386/i386/mpboot.s#4 integrate .. //depot/projects/smpng/sys/i386/i386/mptable.c#1 branch .. //depot/projects/smpng/sys/i386/i386/mptable_pci.c#1 branch .. //depot/projects/smpng/sys/i386/i386/nexus.c#9 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#51 integrate .. //depot/projects/smpng/sys/i386/i386/support.s#13 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#64 integrate .. //depot/projects/smpng/sys/i386/include/apic.h#12 delete .. //depot/projects/smpng/sys/i386/include/apicreg.h#1 branch .. //depot/projects/smpng/sys/i386/include/apicvar.h#1 branch .. //depot/projects/smpng/sys/i386/include/asmacros.h#4 integrate .. //depot/projects/smpng/sys/i386/include/clock.h#7 integrate .. //depot/projects/smpng/sys/i386/include/critical.h#5 integrate .. //depot/projects/smpng/sys/i386/include/intr_machdep.h#1 branch .. //depot/projects/smpng/sys/i386/include/md_var.h#23 integrate .. //depot/projects/smpng/sys/i386/include/mptable.h#1 branch .. //depot/projects/smpng/sys/i386/include/pcpu.h#8 integrate .. //depot/projects/smpng/sys/i386/include/proc.h#11 integrate .. //depot/projects/smpng/sys/i386/include/segments.h#8 integrate .. //depot/projects/smpng/sys/i386/include/smp.h#11 integrate .. //depot/projects/smpng/sys/i386/include/smptests.h#5 integrate .. //depot/projects/smpng/sys/i386/isa/apic_ipl.s#7 delete .. //depot/projects/smpng/sys/i386/isa/apic_vector.s#19 delete .. //depot/projects/smpng/sys/i386/isa/atpic.c#1 branch .. //depot/projects/smpng/sys/i386/isa/atpic_vector.s#1 branch .. //depot/projects/smpng/sys/i386/isa/bs/bsif.h#5 integrate .. //depot/projects/smpng/sys/i386/isa/clock.c#30 integrate .. //depot/projects/smpng/sys/i386/isa/cx.c#10 integrate .. //depot/projects/smpng/sys/i386/isa/icu.h#6 integrate .. //depot/projects/smpng/sys/i386/isa/icu_ipl.s#3 delete .. //depot/projects/smpng/sys/i386/isa/icu_vector.s#12 delete .. //depot/projects/smpng/sys/i386/isa/if_cx.c#6 integrate .. //depot/projects/smpng/sys/i386/isa/if_el.c#8 integrate .. //depot/projects/smpng/sys/i386/isa/if_le.c#12 integrate .. //depot/projects/smpng/sys/i386/isa/if_rdp.c#10 integrate .. //depot/projects/smpng/sys/i386/isa/intr_machdep.c#21 delete .. //depot/projects/smpng/sys/i386/isa/intr_machdep.h#13 delete .. //depot/projects/smpng/sys/i386/isa/isa_compat.c#5 integrate .. //depot/projects/smpng/sys/i386/isa/ithread.c#6 delete .. //depot/projects/smpng/sys/i386/isa/nmi.c#1 branch .. //depot/projects/smpng/sys/i386/isa/npx.c#37 integrate .. //depot/projects/smpng/sys/i386/isa/vector.s#4 delete .. //depot/projects/smpng/sys/i386/pci/pci_bus.c#19 integrate .. //depot/projects/smpng/sys/i386/pci/pci_cfgreg.c#22 integrate .. //depot/projects/smpng/sys/i4b/driver/i4b_ipr.c#16 integrate .. //depot/projects/smpng/sys/i4b/driver/i4b_isppp.c#9 integrate .. //depot/projects/smpng/sys/ia64/ia64/unaligned.c#6 integrate .. //depot/projects/smpng/sys/ia64/include/_types.h#5 integrate .. //depot/projects/smpng/sys/ia64/include/pc/bios.h#2 delete .. //depot/projects/smpng/sys/ia64/include/pc/msdos.h#2 delete .. //depot/projects/smpng/sys/ia64/include/pc/vesa.h#3 delete .. //depot/projects/smpng/sys/isa/syscons_isa.c#7 integrate .. //depot/projects/smpng/sys/kern/kern_event.c#21 integrate .. //depot/projects/smpng/sys/kern/kern_intr.c#34 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#78 integrate .. //depot/projects/smpng/sys/kern/kern_timeout.c#14 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#19 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#28 integrate .. //depot/projects/smpng/sys/kern/subr_smp.c#21 integrate .. //depot/projects/smpng/sys/kern/subr_witness.c#106 integrate .. //depot/projects/smpng/sys/kern/sys_pipe.c#35 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#52 integrate .. //depot/projects/smpng/sys/kern/vfs_default.c#23 integrate .. //depot/projects/smpng/sys/modules/Makefile#64 integrate .. //depot/projects/smpng/sys/modules/cs/Makefile#1 branch .. //depot/projects/smpng/sys/modules/netgraph/atm/atmbase/Makefile#2 integrate .. //depot/projects/smpng/sys/modules/ppbus/Makefile#3 integrate .. //depot/projects/smpng/sys/net/bpf.c#28 integrate .. //depot/projects/smpng/sys/net/bridge.c#21 integrate .. //depot/projects/smpng/sys/net/if.c#38 integrate .. //depot/projects/smpng/sys/net/if.h#15 integrate .. //depot/projects/smpng/sys/net/if_arcsubr.c#10 integrate .. //depot/projects/smpng/sys/net/if_atmsubr.c#14 integrate .. //depot/projects/smpng/sys/net/if_disc.c#9 integrate .. //depot/projects/smpng/sys/net/if_ef.c#12 integrate .. //depot/projects/smpng/sys/net/if_ethersubr.c#39 integrate .. //depot/projects/smpng/sys/net/if_faith.c#16 integrate .. //depot/projects/smpng/sys/net/if_gif.c#17 integrate .. //depot/projects/smpng/sys/net/if_gre.c#8 integrate .. //depot/projects/smpng/sys/net/if_loop.c#23 integrate .. //depot/projects/smpng/sys/net/if_media.c#5 integrate .. //depot/projects/smpng/sys/net/if_mib.c#4 integrate .. //depot/projects/smpng/sys/net/if_ppp.c#21 integrate .. //depot/projects/smpng/sys/net/if_sl.c#18 integrate .. //depot/projects/smpng/sys/net/if_spppsubr.c#15 integrate .. //depot/projects/smpng/sys/net/if_stf.c#21 integrate .. //depot/projects/smpng/sys/net/if_tap.c#21 integrate .. //depot/projects/smpng/sys/net/if_tun.c#26 integrate .. //depot/projects/smpng/sys/net/if_var.h#18 integrate .. //depot/projects/smpng/sys/net/if_vlan.c#21 integrate .. //depot/projects/smpng/sys/net/net_osdep.c#5 integrate .. //depot/projects/smpng/sys/net/net_osdep.h#9 integrate .. //depot/projects/smpng/sys/net/ppp_tty.c#11 integrate .. //depot/projects/smpng/sys/net/route.c#13 integrate .. //depot/projects/smpng/sys/net/route.h#13 integrate .. //depot/projects/smpng/sys/net/rtsock.c#27 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_node.c#8 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_proto.c#4 integrate .. //depot/projects/smpng/sys/netatalk/ddp_output.c#5 integrate .. //depot/projects/smpng/sys/netatm/atm_if.c#12 integrate .. //depot/projects/smpng/sys/netatm/atm_if.h#9 integrate .. //depot/projects/smpng/sys/netatm/atm_socket.c#10 integrate .. //depot/projects/smpng/sys/netatm/atm_usrreq.c#11 integrate .. //depot/projects/smpng/sys/netatm/atm_var.h#12 integrate .. //depot/projects/smpng/sys/netatm/ipatm/ipatm_usrreq.c#6 integrate .. //depot/projects/smpng/sys/netatm/spans/spans_arp.c#8 integrate .. //depot/projects/smpng/sys/netatm/uni/uniarp.c#8 integrate .. //depot/projects/smpng/sys/netgraph/atm/ng_atm.c#5 integrate .. //depot/projects/smpng/sys/netgraph/ng_bridge.c#9 integrate .. //depot/projects/smpng/sys/netgraph/ng_eiface.c#6 integrate .. //depot/projects/smpng/sys/netgraph/ng_ether.c#10 integrate .. //depot/projects/smpng/sys/netgraph/ng_fec.c#5 integrate .. //depot/projects/smpng/sys/netgraph/ng_gif.c#5 integrate .. //depot/projects/smpng/sys/netgraph/ng_iface.c#9 integrate .. //depot/projects/smpng/sys/netinet/if_ether.c#19 integrate .. //depot/projects/smpng/sys/netinet/in.c#17 integrate .. //depot/projects/smpng/sys/netinet/in_pcb.c#35 integrate .. //depot/projects/smpng/sys/netinet/in_rmx.c#7 integrate .. //depot/projects/smpng/sys/netinet/ip_divert.c#25 integrate .. //depot/projects/smpng/sys/netinet/ip_dummynet.c#22 integrate .. //depot/projects/smpng/sys/netinet/ip_fw.h#16 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#20 integrate .. //depot/projects/smpng/sys/netinet/ip_input.c#41 integrate .. //depot/projects/smpng/sys/netinet/ip_mroute.c#27 integrate .. //depot/projects/smpng/sys/netinet/ip_output.c#44 integrate .. //depot/projects/smpng/sys/netinet/tcp_output.c#15 integrate .. //depot/projects/smpng/sys/netinet/tcp_subr.c#36 integrate .. //depot/projects/smpng/sys/netinet/tcp_syncache.c#22 integrate .. //depot/projects/smpng/sys/netinet/tcp_var.h#16 integrate .. //depot/projects/smpng/sys/netinet6/esp_input.c#15 integrate .. //depot/projects/smpng/sys/netinet6/icmp6.c#19 integrate .. //depot/projects/smpng/sys/netinet6/in6.c#14 integrate .. //depot/projects/smpng/sys/netinet6/in6.h#12 integrate .. //depot/projects/smpng/sys/netinet6/in6_ifattach.c#8 integrate .. //depot/projects/smpng/sys/netinet6/in6_ifattach.h#2 integrate .. //depot/projects/smpng/sys/netinet6/in6_pcb.c#24 integrate .. //depot/projects/smpng/sys/netinet6/in6_rmx.c#5 integrate .. //depot/projects/smpng/sys/netinet6/in6_src.c#12 integrate .. //depot/projects/smpng/sys/netinet6/in6_var.h#8 integrate .. //depot/projects/smpng/sys/netinet6/ip6_forward.c#8 integrate .. //depot/projects/smpng/sys/netinet6/ip6_fw.c#13 integrate .. //depot/projects/smpng/sys/netinet6/ip6_fw.h#4 integrate .. //depot/projects/smpng/sys/netinet6/ip6_input.c#26 integrate .. //depot/projects/smpng/sys/netinet6/ip6_mroute.c#14 integrate .. //depot/projects/smpng/sys/netinet6/ip6_output.c#20 integrate .. //depot/projects/smpng/sys/netinet6/ipsec.c#11 integrate .. //depot/projects/smpng/sys/netinet6/ipsec.h#6 integrate .. //depot/projects/smpng/sys/netinet6/ipsec6.h#3 integrate .. //depot/projects/smpng/sys/netinet6/mld6.c#7 integrate .. //depot/projects/smpng/sys/netinet6/mld6_var.h#3 integrate .. //depot/projects/smpng/sys/netinet6/nd6.c#15 integrate .. //depot/projects/smpng/sys/netinet6/nd6.h#8 integrate .. //depot/projects/smpng/sys/netinet6/nd6_nbr.c#9 integrate .. //depot/projects/smpng/sys/netinet6/raw_ip6.c#19 integrate .. //depot/projects/smpng/sys/netinet6/udp6_output.c#13 integrate .. //depot/projects/smpng/sys/netinet6/udp6_usrreq.c#23 integrate .. //depot/projects/smpng/sys/netipx/ipx_ip.c#9 integrate .. //depot/projects/smpng/sys/netkey/key.c#19 integrate .. //depot/projects/smpng/sys/netkey/key.h#4 integrate .. //depot/projects/smpng/sys/netkey/key_debug.c#8 integrate .. //depot/projects/smpng/sys/netkey/keydb.c#4 integrate .. //depot/projects/smpng/sys/netkey/keydb.h#4 integrate .. //depot/projects/smpng/sys/netkey/keysock.c#17 integrate .. //depot/projects/smpng/sys/netkey/keysock.h#3 integrate .. //depot/projects/smpng/sys/netnatm/natm.c#14 integrate .. //depot/projects/smpng/sys/nfsclient/bootp_subr.c#21 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_diskless.c#5 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vfsops.c#27 integrate .. //depot/projects/smpng/sys/pc98/conf/GENERIC#37 integrate .. //depot/projects/smpng/sys/pc98/conf/NOTES#13 integrate .. //depot/projects/smpng/sys/pc98/i386/machdep.c#60 integrate .. //depot/projects/smpng/sys/pc98/pc98/clock.c#22 integrate .. //depot/projects/smpng/sys/pc98/pc98/nmi.c#1 branch .. //depot/projects/smpng/sys/pc98/pc98/syscons_pc98.c#7 integrate .. //depot/projects/smpng/sys/pci/if_dc.c#47 integrate .. //depot/projects/smpng/sys/pci/if_de.c#13 integrate .. //depot/projects/smpng/sys/pci/if_devar.h#6 integrate .. //depot/projects/smpng/sys/pci/if_pcn.c#20 integrate .. //depot/projects/smpng/sys/pci/if_rl.c#38 integrate .. //depot/projects/smpng/sys/pci/if_sf.c#22 integrate .. //depot/projects/smpng/sys/pci/if_sis.c#33 integrate .. //depot/projects/smpng/sys/pci/if_sk.c#22 integrate .. //depot/projects/smpng/sys/pci/if_ste.c#24 integrate .. //depot/projects/smpng/sys/pci/if_ti.c#32 integrate .. //depot/projects/smpng/sys/pci/if_tl.c#17 integrate .. //depot/projects/smpng/sys/pci/if_vr.c#20 integrate .. //depot/projects/smpng/sys/pci/if_wb.c#19 integrate .. //depot/projects/smpng/sys/pci/if_xl.c#36 integrate .. //depot/projects/smpng/sys/pci/xrpu.c#11 integrate .. //depot/projects/smpng/sys/security/mac_biba/mac_biba.c#19 integrate .. //depot/projects/smpng/sys/security/mac_lomac/mac_lomac.c#13 integrate .. //depot/projects/smpng/sys/sys/cdefs.h#22 integrate .. //depot/projects/smpng/sys/sys/param.h#50 integrate .. //depot/projects/smpng/sys/sys/proc.h#102 integrate .. //depot/projects/smpng/sys/sys/resource.h#8 integrate .. //depot/projects/smpng/sys/sys/sched.h#5 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_alloc.c#24 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#46 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_quota.c#22 integrate .. //depot/projects/smpng/sys/vm/swap_pager.c#36 integrate .. //depot/projects/smpng/sys/vm/vm_map.c#45 integrate .. //depot/projects/smpng/sys/vm/vm_map.h#23 integrate .. //depot/projects/smpng/sys/vm/vm_object.c#46 integrate .. //depot/projects/smpng/sys/vm/vm_object.h#22 integrate .. //depot/projects/smpng/sys/vm/vm_page.c#43 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/osf1/osf1_ioctl.c#8 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_ioctl.c,v 1.10 2003/08/22 07:20:27 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_ioctl.c,v 1.12 2003/10/31 18:31:55 brooks Exp $"); #include #include @@ -207,7 +207,7 @@ * because osf/1 doesn't know about most of them. */ if (ifp->if_type == IFT_ETHER - && strcmp(ifp->if_name, "ti")) { /* looks good */ + && strcmp(ifp->if_dname, "ti") != 0) { /* looks good */ /* walk the address list */ TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) { if ((sdl = (struct sockaddr_dl *)ifa->ifa_addr) /* we have an address structure */ ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#14 (text+ko) ==== @@ -73,7 +73,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.443 2003/10/14 05:51:31 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.444 2003/10/30 04:08:22 peter Exp $"); /* * Manages physical address maps. @@ -2695,7 +2695,6 @@ vm_size_t size; { vm_offset_t base, offset, tmpva; - pt_entry_t *pte; /* If we gave a direct map region in pmap_mapdev, do nothing */ if (va >= DMAP_MIN_ADDRESS && va < DMAP_MAX_ADDRESS) @@ -2703,10 +2702,8 @@ base = va & PG_FRAME; offset = va & PAGE_MASK; size = roundup(offset + size, PAGE_SIZE); - for (tmpva = base; tmpva < (base + size); tmpva += PAGE_SIZE) { - pte = vtopte(tmpva); - pte_clear(pte); - } + for (tmpva = base; tmpva < (base + size); tmpva += PAGE_SIZE) + pmap_kremove(tmpva); pmap_invalidate_range(kernel_pmap, va, tmpva); kmem_free(kernel_map, base, size); } ==== //depot/projects/smpng/sys/amd64/amd64/trap.c#11 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.267 2003/10/28 01:06:37 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.268 2003/10/30 04:06:28 peter Exp $"); /* * AMD64 Trap and System call handling @@ -261,6 +261,8 @@ break; case T_PAGEFLT: /* page fault */ + if (td->td_flags & TDF_SA) + thread_user_enter(p, td); i = trap_pfault(&frame, TRUE); if (i == -1) goto userout; ==== //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#9 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.217 2003/08/29 20:04:09 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.218 2003/10/30 19:04:58 peter Exp $"); #include "opt_isa.h" #include "opt_kstack_pages.h" @@ -205,7 +205,8 @@ cpu_thread_exit(struct thread *td) { - npxexit(td); + if (td == PCPU_GET(fpcurthread)) + npxdrop(); } void @@ -265,6 +266,7 @@ * more analysis) (need a good safe default). */ bcopy(td0->td_pcb, pcb2, sizeof(*pcb2)); + pcb2->pcb_flags &= ~(PCB_NPXTRAP|PCB_NPXINITDONE); /* * Create a new fresh stack for the new thread. ==== //depot/projects/smpng/sys/boot/common/dev_net.c#4 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/common/dev_net.c,v 1.12 2003/08/25 23:30:41 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/common/dev_net.c,v 1.13 2003/11/03 19:45:05 iedowse Exp $"); /*- * This module implements a "raw device" interface suitable for @@ -270,22 +270,22 @@ return (EIO); } exit: - printf("net_open: server addr: %s\n", inet_ntoa(rootip)); - /* * If present, strip the server's address off of the rootpath * before passing it along. This allows us to be compatible with * the kernel's diskless (BOOTP_NFSROOT) booting conventions */ - - for(i=0; i -__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.13 2003/08/23 00:04:52 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.14 2003/10/30 02:40:30 peter Exp $"); #include "opt_compat.h" @@ -79,6 +79,11 @@ #include #include +CTASSERT(sizeof(struct timeval32) == 8); +CTASSERT(sizeof(struct timespec32) == 8); +CTASSERT(sizeof(struct statfs32) == 256); +CTASSERT(sizeof(struct rusage32) == 72); + /* * [ taken from the linux emulator ] * Search an alternate path before passing pathname arguments on @@ -356,6 +361,8 @@ int ss_flags; }; +CTASSERT(sizeof(struct sigaltstack32) == 12); + int freebsd32_sigaltstack(struct thread *td, struct freebsd32_sigaltstack_args *uap) @@ -589,6 +596,8 @@ struct timeval32 it_value; }; +CTASSERT(sizeof(struct itimerval32) == 16); + int freebsd32_setitimer(struct thread *td, struct freebsd32_setitimer_args *uap) { @@ -668,6 +677,8 @@ u_int32_t udata; /* opaque user data identifier */ }; +CTASSERT(sizeof(struct kevent32) == 20); + int freebsd32_kevent(struct thread *td, struct freebsd32_kevent_args *uap) { @@ -819,6 +830,8 @@ }; #define STACKGAPLEN 400 +CTASSERT(sizeof(struct iovec32) == 8); + int freebsd32_readv(struct thread *td, struct freebsd32_readv_args *uap) { @@ -1198,8 +1211,14 @@ u_int32_t st_blksize; u_int32_t st_flags; u_int32_t st_gen; + struct timespec32 st_birthtimespec; + unsigned int :(8 / 2) * (16 - (int)sizeof(struct timespec32)); + unsigned int :(8 / 2) * (16 - (int)sizeof(struct timespec32)); }; + +CTASSERT(sizeof(struct stat32) == 96); + static void copy_stat( struct stat *in, struct stat32 *out) { @@ -1342,6 +1361,8 @@ sigset_t sa_mask; }; +CTASSERT(sizeof(struct sigaction32) == 24); + int freebsd32_sigaction(struct thread *td, struct freebsd32_sigaction_args *uap) { ==== //depot/projects/smpng/sys/compat/ia32/ia32_signal.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/compat/ia32/ia32_signal.h,v 1.1 2003/05/14 04:10:48 peter Exp $ + * $FreeBSD: src/sys/compat/ia32/ia32_signal.h,v 1.2 2003/10/30 02:40:30 peter Exp $ */ struct ia32_sigaltstack { @@ -35,7 +35,6 @@ int ss_flags; /* SS_DISABLE and/or SS_ONSTACK */ }; -/* XXX should be 640 bytes long; check and see if __packed is needed */ struct ia32_mcontext { int mc_onstack; /* XXX - sigcontext compat. */ int mc_gs; /* machine state (struct trapframe) */ @@ -69,7 +68,6 @@ int mc_spare2[8]; }; -/* XXX should be 704 bytes long; check and see if __packed is needed */ struct ia32_ucontext { sigset_t uc_sigmask; struct ia32_mcontext uc_mcontext; ==== //depot/projects/smpng/sys/compat/ia32/ia32_sysvec.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/ia32/ia32_sysvec.c,v 1.9 2003/09/25 01:10:23 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ia32/ia32_sysvec.c,v 1.10 2003/10/30 02:43:19 peter Exp $"); #include "opt_compat.h" @@ -75,6 +75,16 @@ #include #include +CTASSERT(sizeof(struct ia32_mcontext) == 640); +CTASSERT(sizeof(struct ia32_ucontext) == 704); +CTASSERT(sizeof(struct ia32_sigframe) == 800); +CTASSERT(sizeof(struct ia32_siginfo) == 64); +#ifdef COMPAT_FREEBSD4 +CTASSERT(sizeof(struct ia32_mcontext4) == 260); +CTASSERT(sizeof(struct ia32_ucontext4) == 324); +CTASSERT(sizeof(struct ia32_sigframe4) == 408); +#endif + static register_t *ia32_copyout_strings(struct image_params *imgp); static void ia32_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings); ==== //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#30 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.111 2003/10/20 17:56:10 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.112 2003/10/31 18:31:55 brooks Exp $"); #include #include @@ -1881,8 +1881,7 @@ /* Short-circuit non ethernet interfaces */ if (!IFP_IS_ETH(ifp)) - return (snprintf(buffer, buflen, "%s%d", ifp->if_name, - ifp->if_unit)); + return (strlcpy(buffer, ifp->if_xname, buflen)); /* Determine the (relative) unit number for ethernet interfaces */ ethno = 0; @@ -1932,15 +1931,14 @@ * we never have an interface named "eth", so don't make * the test optional based on is_eth. */ - if (ifp->if_unit == unit && ifp->if_name[len] == '\0' && - strncmp(ifp->if_name, lxname, len) == 0) + if (strncmp(ifp->if_xname, lxname, LINUX_IFNAMSIZ) == 0) break; if (is_eth && IFP_IS_ETH(ifp) && unit == index++) break; } IFNET_RUNLOCK(); if (ifp != NULL) - snprintf(bsdname, IFNAMSIZ, "%s%d", ifp->if_name, ifp->if_unit); + strlcpy(bsdname, ifp->if_xname, IFNAMSIZ); return (ifp); } @@ -1988,8 +1986,7 @@ snprintf(ifr.ifr_name, LINUX_IFNAMSIZ, "eth%d", ethno++); else - snprintf(ifr.ifr_name, LINUX_IFNAMSIZ, "%s%d", - ifp->if_name, ifp->if_unit); + strlcpy(ifr.ifr_name, ifp->if_xname, LINUX_IFNAMSIZ); /* Walk the address list */ TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) { ==== //depot/projects/smpng/sys/conf/files#89 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.841 2003/10/27 11:19:08 harti Exp $ +# $FreeBSD: src/sys/conf/files,v 1.843 2003/11/03 12:05:58 harti Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -495,6 +495,7 @@ dev/joy/joy.c optional joy dev/joy/joy_isa.c optional joy isa dev/joy/joy_pccard.c optional joy pccard +dev/led/led.c optional cpu_soekris dev/lge/if_lge.c optional lge dev/lmc/if_lmc.c optional lmc nowerror dev/lnc/if_lnc.c optional lnc @@ -1372,6 +1373,10 @@ netgraph/atm/atmpif/ng_atmpif_harp.c optional netgraph_atm_atmpif netgraph/atm/ngatmbase.c optional ngatm_atmbase contrib/ngatm/netnatm/misc/unimsg_common.c optional ngatm_atmbase +contrib/ngatm/netnatm/misc/straddr.c optional ngatm_atmbase +contrib/ngatm/netnatm/msg/traffic.c optional ngatm_atmbase +contrib/ngatm/netnatm/msg/uni_ie.c optional ngatm_atmbase +contrib/ngatm/netnatm/msg/uni_msg.c optional ngatm_atmbase netgraph/atm/ng_atm.c optional ngatm_atm netgraph/atm/sscfu/ng_sscfu.c optional ngatm_sscfu contrib/ngatm/netnatm/saal/saal_sscfu.c optional ngatm_sscfu ==== //depot/projects/smpng/sys/conf/files.i386#48 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.i386,v 1.454 2003/09/06 23:23:25 marcel Exp $ +# $FreeBSD: src/sys/conf/files.i386,v 1.456 2003/11/03 22:46:43 jhb Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -167,12 +167,14 @@ no-obj no-implicit-rule before-depend \ clean "acpi_wakecode.h acpi_wakecode.o acpi_wakecode.bin" # +i386/acpica/madt.c optional acpi apic i386/bios/apm.c optional apm i386/bios/mca_machdep.c optional mca i386/bios/smapi.c optional smapi i386/bios/smapi_bios.S optional smapi i386/bios/smbios.c optional smbios i386/bios/vpd.c optional vpd +i386/i386/apic_vector.s optional apic i386/i386/atomic.c standard \ compile-with "${CC} -c ${CFLAGS} ${DEFINED_PROF:S/^$/-fomit-frame-pointer/} ${.IMPSRC}" i386/i386/autoconf.c standard @@ -185,6 +187,7 @@ i386/i386/db_trace.c optional ddb i386/i386/dump_machdep.c standard i386/i386/elan-mmcr.c optional cpu_elan +i386/i386/elan-mmcr.c optional cpu_soekris i386/i386/elf_machdep.c standard i386/i386/exception.s standard i386/i386/geode.c optional cpu_geode @@ -193,15 +196,19 @@ i386/i386/identcpu.c standard i386/i386/in_cksum.c optional inet i386/i386/initcpu.c standard +i386/i386/intr_machdep.c standard +i386/i386/io_apic.c optional apic i386/i386/k6_mem.c standard i386/i386/legacy.c standard +i386/i386/local_apic.c optional apic i386/i386/locore.s standard no-obj i386/i386/machdep.c standard i386/i386/mem.c standard i386/i386/mp_clock.c optional smp i386/i386/mp_machdep.c optional smp -i386/i386/mpapic.c optional smp i386/i386/mpboot.s optional smp +i386/i386/mptable.c optional apic +i386/i386/mptable_pci.c optional apic pci i386/i386/nexus.c standard i386/i386/perfmon.c optional perfmon i386/i386/perfmon.c optional perfmon profiling-routine @@ -233,6 +240,8 @@ i386/ibcs2/ibcs2_xenix_sysent.c optional ibcs2 i386/ibcs2/imgact_coff.c optional ibcs2 i386/isa/asc.c count asc +i386/isa/atpic.c standard +i386/isa/atpic_vector.s standard i386/isa/clock.c standard i386/isa/cronyx.c optional cx i386/isa/ctx.c optional ctx @@ -246,8 +255,6 @@ i386/isa/if_el.c count el i386/isa/if_le.c count le i386/isa/if_rdp.c count rdp -i386/isa/intr_machdep.c standard -i386/isa/ithread.c standard i386/isa/isa.c optional isa i386/isa/isa_compat.c optional isa compat_oldisa \ warning "Old ISA driver compatibility shims present." @@ -255,6 +262,7 @@ i386/isa/istallion.c optional stli nowerror i386/isa/loran.c optional loran i386/isa/mse.c optional mse +i386/isa/nmi.c standard i386/isa/npx.c optional npx i386/isa/pcf.c optional pcf i386/isa/pcvt/pcvt_drv.c optional vt ==== //depot/projects/smpng/sys/conf/files.pc98#49 (text+ko) ==== @@ -3,7 +3,7 @@ # # modified for PC-9801 # -# $FreeBSD: src/sys/conf/files.pc98,v 1.279 2003/09/07 05:05:40 imp Exp $ +# $FreeBSD: src/sys/conf/files.pc98,v 1.280 2003/11/04 13:11:58 nyan Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -137,6 +137,7 @@ geom/geom_pc98.c standard geom/geom_pc98_enc.c standard i386/bios/apm.c optional apm +i386/i386/apic_vector.s optional apic i386/i386/atomic.c standard \ compile-with "${CC} -c ${CFLAGS} ${DEFINED_PROF:S/^$/-fomit-frame-pointer/} ${.IMPSRC}" i386/i386/autoconf.c standard @@ -155,14 +156,18 @@ i386/i386/identcpu.c standard i386/i386/in_cksum.c optional inet i386/i386/initcpu.c standard +i386/i386/intr_machdep.c standard +i386/i386/io_apic.c optional apic i386/i386/k6_mem.c standard i386/i386/legacy.c standard +i386/i386/local_apic.c optional apic i386/i386/locore.s standard no-obj i386/i386/mem.c standard i386/i386/mp_clock.c optional smp i386/i386/mp_machdep.c optional smp -i386/i386/mpapic.c optional smp i386/i386/mpboot.s optional smp +i386/i386/mptable.c optional apic +i386/i386/mptable_pci.c optional apic pci i386/i386/nexus.c standard i386/i386/perfmon.c optional perfmon i386/i386/perfmon.c optional perfmon profiling-routine @@ -193,6 +198,8 @@ i386/ibcs2/ibcs2_xenix.c optional ibcs2 i386/ibcs2/ibcs2_xenix_sysent.c optional ibcs2 i386/ibcs2/imgact_coff.c optional ibcs2 +i386/isa/atpic.c standard +i386/isa/atpic_vector.s standard i386/isa/bs/bs.c optional bs i386/isa/bs/bsfunc.c optional bs i386/isa/bs/bshw.c optional bs @@ -208,8 +215,6 @@ i386/isa/if_el.c count el i386/isa/if_le.c count le i386/isa/if_rdp.c count rdp -i386/isa/intr_machdep.c standard -i386/isa/ithread.c standard i386/isa/isa.c optional isa i386/isa/isa_compat.c optional isa compat_oldisa \ warning "Old ISA driver compatibility shims present." @@ -345,6 +350,7 @@ pc98/pc98/fd.c optional fdc pc98/pc98/isa_dma.c optional isa pc98/pc98/mse.c optional mse +pc98/pc98/nmi.c standard pc98/pc98/olpt.c optional olpt pc98/pc98/pc98gdc.c optional gdc pc98/pc98/pc98kbd.c optional pckbd ==== //depot/projects/smpng/sys/conf/kern.post.mk#25 (text+ko) ==== @@ -6,7 +6,7 @@ # should be defined in the kern.pre.mk so that port makefiles can # override or augment them. # -# $FreeBSD: src/sys/conf/kern.post.mk,v 1.49 2003/08/07 19:12:06 ru Exp $ +# $FreeBSD: src/sys/conf/kern.post.mk,v 1.50 2003/11/04 06:38:37 green Exp $ # # In case the config had a makeoptions DESTDIR... @@ -57,7 +57,7 @@ gdbinit: sed < ${S}/../tools/debugscripts/dot.gdbinit > .gdbinit \ - "s:MODPATH:modules${S}/modules:" + "s:MODPATH:${.OBJDIR}/modules:" cp ${S}/../tools/debugscripts/gdbinit.kernel \ ${S}/../tools/debugscripts/gdbinit.vinum ${.CURDIR} cp ${S}/../tools/debugscripts/gdbinit.${MACHINE_ARCH} \ ==== //depot/projects/smpng/sys/conf/majors#29 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/majors,v 1.180 2003/10/06 09:13:08 phk Exp $ +# $FreeBSD: src/sys/conf/majors,v 1.181 2003/11/03 10:19:33 phk Exp $ # # This list is semi-obsoleted by DEVFS, but for now it still contains # the current allocation of device major numbers. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Nov 4 11:56:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 49B7B16A4D1; Tue, 4 Nov 2003 11:56:26 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F1BE216A4D0 for ; Tue, 4 Nov 2003 11:56:25 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 840C343FD7 for ; Tue, 4 Nov 2003 11:56:24 -0800 (PST) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA4JuOXJ058595 for ; Tue, 4 Nov 2003 11:56:24 -0800 (PST) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA4JuNAB058590 for perforce@freebsd.org; Tue, 4 Nov 2003 11:56:23 -0800 (PST) (envelope-from jhb@freebsd.org) Date: Tue, 4 Nov 2003 11:56:23 -0800 (PST) Message-Id: <200311041956.hA4JuNAB058590@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 41373 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 19:56:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=41373 Change 41373 by jhb@jhb_laptop on 2003/11/04 11:56:13 Backout the cred_free_thread() under INVARIANTS stuff. Also, I mismerged all the PTRACESTOP_SC() bits, so this fixes that. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/trap.c#52 edit .. //depot/projects/smpng/sys/i386/i386/trap.c#65 edit .. //depot/projects/smpng/sys/ia64/ia64/trap.c#59 edit .. //depot/projects/smpng/sys/kern/kern_fork.c#67 edit .. //depot/projects/smpng/sys/kern/kern_prot.c#76 edit .. //depot/projects/smpng/sys/kern/subr_trap.c#59 edit .. //depot/projects/smpng/sys/powerpc/powerpc/trap.c#34 edit .. //depot/projects/smpng/sys/sparc64/sparc64/trap.c#55 edit .. //depot/projects/smpng/sys/sys/ucred.h#21 edit Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/trap.c#52 (text+ko) ==== @@ -586,7 +586,7 @@ framep->tf_regs[FRAME_SP] = alpha_pal_rdusp(); userret(td, framep, sticks); mtx_assert(&Giant, MA_NOTOWNED); -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif } @@ -778,11 +778,9 @@ */ STOPEVENT(p, S_SCX, code); -#ifdef DIAGNOSTIC PTRACESTOP_SC(p, td, S_PT_SCX); -#endif -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif WITNESS_WARN(WARN_PANIC, NULL, "System call %s returning", ==== //depot/projects/smpng/sys/i386/i386/trap.c#65 (text+ko) ==== @@ -639,7 +639,7 @@ userret(td, &frame, sticks); mtx_assert(&Giant, MA_NOTOWNED); userout: -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif out: @@ -1071,11 +1071,9 @@ */ STOPEVENT(p, S_SCX, code); -#ifdef DIAGNOSTIC PTRACESTOP_SC(p, td, S_PT_SCX); -#endif -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif WITNESS_WARN(WARN_PANIC, NULL, "System call %s returning", ==== //depot/projects/smpng/sys/ia64/ia64/trap.c#59 (text+ko) ==== @@ -843,7 +843,7 @@ if (user) { userret(td, framep, sticks); mtx_assert(&Giant, MA_NOTOWNED); -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif do_ast(framep); @@ -1013,11 +1013,9 @@ */ STOPEVENT(p, S_SCX, code); -#ifdef DIAGNOSTIC PTRACESTOP_SC(p, td, S_PT_SCX); -#endif -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif @@ -1193,7 +1191,7 @@ */ STOPEVENT(p, S_SCX, code); -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif WITNESS_WARN(WARN_PANIC, NULL, "System call %s returning", ==== //depot/projects/smpng/sys/kern/kern_fork.c#67 (text+ko) ==== @@ -805,7 +805,7 @@ kthread_exit(0); } PROC_UNLOCK(p); -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif mtx_assert(&Giant, MA_NOTOWNED); ==== //depot/projects/smpng/sys/kern/kern_prot.c#76 (text+ko) ==== @@ -1773,7 +1773,7 @@ return (newcr); } -#ifdef INVARIANTS +#ifdef DIAGNOSTIC void cred_free_thread(struct thread *td) { ==== //depot/projects/smpng/sys/kern/subr_trap.c#59 (text+ko) ==== @@ -265,7 +265,7 @@ } userret(td, framep, sticks); -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif mtx_assert(&Giant, MA_NOTOWNED); ==== //depot/projects/smpng/sys/powerpc/powerpc/trap.c#34 (text+ko) ==== @@ -261,9 +261,9 @@ userret(td, frame, sticks); mtx_assert(&Giant, MA_NOTOWNED); -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); -#endif +#endif /* DIAGNOSTIC */ } static void ==== //depot/projects/smpng/sys/sparc64/sparc64/trap.c#55 (text+ko) ==== @@ -289,7 +289,7 @@ userret(td, tf, sticks); mtx_assert(&Giant, MA_NOTOWNED); -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif } else { @@ -646,11 +646,9 @@ */ STOPEVENT(p, S_SCX, code); -#ifdef DIAGNOSTIC PTRACESTOP_SC(p, td, S_PT_SCX); -#endif -#ifdef INVARIANTS +#ifdef DIAGNOSTIC cred_free_thread(td); #endif WITNESS_WARN(WARN_PANIC, NULL, "System call %s returning", ==== //depot/projects/smpng/sys/sys/ucred.h#21 (text+ko) ==== @@ -85,7 +85,7 @@ #ifdef _KERNEL struct thread; -#ifdef INVARIANTS +#ifdef DIAGNOSTIC void cred_free_thread(struct thread *td); #endif void change_egid(struct ucred *newcred, gid_t egid); From owner-p4-projects@FreeBSD.ORG Tue Nov 4 12:37:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EB2F116A4D0; Tue, 4 Nov 2003 12:37:34 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C30CE16A4CE for ; Tue, 4 Nov 2003 12:37:34 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2005443FFD for ; Tue, 4 Nov 2003 12:37:33 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA4KbWXJ062328 for ; Tue, 4 Nov 2003 12:37:32 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA4KbSR1062325 for perforce@freebsd.org; Tue, 4 Nov 2003 12:37:28 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 12:37:28 -0800 (PST) Message-Id: <200311042037.hA4KbSR1062325@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 Subject: PERFORCE change 41379 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 20:37:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=41379 Change 41379 by sam@sam_ebb on 2003/11/04 12:37:11 IFC @ 41378 Affected files ... .. //depot/projects/netperf/sys/boot/common/dev_net.c#3 integrate .. //depot/projects/netperf/sys/conf/files#20 integrate .. //depot/projects/netperf/sys/conf/files.i386#7 integrate .. //depot/projects/netperf/sys/conf/files.pc98#6 integrate .. //depot/projects/netperf/sys/conf/kern.post.mk#3 integrate .. //depot/projects/netperf/sys/conf/majors#6 integrate .. //depot/projects/netperf/sys/conf/options#16 integrate .. //depot/projects/netperf/sys/conf/options.i386#4 integrate .. //depot/projects/netperf/sys/conf/options.pc98#3 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/ah.h#4 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/ah_devid.h#2 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/freebsd/ah_osdep.c#3 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/freebsd/ah_osdep.h#3 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/freebsd/i386-elf.hal.o.uu#4 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/version.h#4 integrate .. //depot/projects/netperf/sys/contrib/ngatm/FREEBSD-upgrade#2 integrate .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/addr.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/genfiles#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/misc/straddr.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/geniec.awk#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/genieh.awk#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/genmsgc.awk#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/genmsgh.awk#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/ie.def#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/msg.def#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/parseie.awk#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/parsemsg.awk#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/priv.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/privmsg.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/traffic.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/uni_config.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/uni_hdr.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/uni_ie.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/uni_ie.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/uni_ietab.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/uni_msg.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/uni_msg.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/unimsglib.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/uniprint.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/msg/unistruct.h#1 branch .. //depot/projects/netperf/sys/dev/aac/aac_pci.c#5 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/ahc_pci.c#5 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/ahd_pci.c#5 integrate .. //depot/projects/netperf/sys/dev/ata/ata-all.c#9 integrate .. //depot/projects/netperf/sys/dev/ata/ata-chipset.c#9 integrate .. //depot/projects/netperf/sys/dev/ata/ata-disk.c#6 integrate .. //depot/projects/netperf/sys/dev/ata/ata-lowlevel.c#11 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-cd.c#10 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-cd.h#7 integrate .. //depot/projects/netperf/sys/dev/ath/if_ath.c#32 integrate .. //depot/projects/netperf/sys/dev/ath/if_ath_pci.c#6 integrate .. //depot/projects/netperf/sys/dev/cardbus/cardbus.c#4 integrate .. //depot/projects/netperf/sys/dev/cs/if_cs.c#5 integrate .. //depot/projects/netperf/sys/dev/cs/if_csreg.h#2 integrate .. //depot/projects/netperf/sys/dev/drm/drm_drv.h#4 integrate .. //depot/projects/netperf/sys/dev/drm/drm_os_freebsd.h#5 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep.c#9 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_pccard.c#6 integrate .. //depot/projects/netperf/sys/dev/ep/if_epreg.h#4 integrate .. //depot/projects/netperf/sys/dev/firewire/fwohci_pci.c#5 integrate .. //depot/projects/netperf/sys/dev/firewire/if_fwe.c#6 integrate .. //depot/projects/netperf/sys/dev/fxp/if_fxp.c#12 integrate .. //depot/projects/netperf/sys/dev/led/led.c#1 branch .. //depot/projects/netperf/sys/dev/led/led.h#1 branch .. //depot/projects/netperf/sys/dev/null/null.c#5 integrate .. //depot/projects/netperf/sys/dev/pccard/pccard.c#8 integrate .. //depot/projects/netperf/sys/dev/pccard/pccarddevs#9 integrate .. //depot/projects/netperf/sys/dev/pccard/pccarddevs.h#9 integrate .. //depot/projects/netperf/sys/dev/pccard/pccardvar.h#6 integrate .. //depot/projects/netperf/sys/dev/pci/pci.c#8 integrate .. //depot/projects/netperf/sys/dev/puc/puc_pci.c#5 integrate .. //depot/projects/netperf/sys/dev/random/randomdev.c#3 integrate .. //depot/projects/netperf/sys/dev/re/if_re.c#4 integrate .. //depot/projects/netperf/sys/dev/sio/sio_pci.c#4 integrate .. //depot/projects/netperf/sys/dev/snc/dp83932.c#3 integrate .. //depot/projects/netperf/sys/dev/uart/uart_bus_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/usb/ehci_pci.c#4 integrate .. //depot/projects/netperf/sys/dev/usb/ohci_pci.c#5 integrate .. //depot/projects/netperf/sys/dev/usb/uhci_pci.c#4 integrate .. //depot/projects/netperf/sys/dev/wi/if_wi.c#12 integrate .. //depot/projects/netperf/sys/dev/xe/if_xe_pccard.c#6 integrate .. //depot/projects/netperf/sys/fs/msdosfs/msdosfs_vfsops.c#7 integrate .. //depot/projects/netperf/sys/fs/unionfs/union_vfsops.c#2 integrate .. //depot/projects/netperf/sys/gnu/ext2fs/alpha-bitops.h#2 delete .. //depot/projects/netperf/sys/gnu/ext2fs/ext2_vfsops.c#6 integrate .. //depot/projects/netperf/sys/i386/acpica/Makefile#3 integrate .. //depot/projects/netperf/sys/i386/acpica/acpi_machdep.c#6 integrate .. //depot/projects/netperf/sys/i386/acpica/acpi_wakecode.S#6 integrate .. //depot/projects/netperf/sys/i386/acpica/acpi_wakeup.c#7 integrate .. //depot/projects/netperf/sys/i386/acpica/madt.c#1 branch .. //depot/projects/netperf/sys/i386/conf/GENERIC#5 integrate .. //depot/projects/netperf/sys/i386/conf/NOTES#8 integrate .. //depot/projects/netperf/sys/i386/conf/PAE#3 integrate .. //depot/projects/netperf/sys/i386/conf/SMP#2 delete .. //depot/projects/netperf/sys/i386/i386/apic_vector.s#1 branch .. //depot/projects/netperf/sys/i386/i386/autoconf.c#2 integrate .. //depot/projects/netperf/sys/i386/i386/bios.c#4 integrate .. //depot/projects/netperf/sys/i386/i386/critical.c#4 integrate .. //depot/projects/netperf/sys/i386/i386/db_interface.c#4 integrate .. //depot/projects/netperf/sys/i386/i386/db_trace.c#3 integrate .. //depot/projects/netperf/sys/i386/i386/elan-mmcr.c#5 integrate .. //depot/projects/netperf/sys/i386/i386/exception.s#4 integrate .. //depot/projects/netperf/sys/i386/i386/genassym.c#3 integrate .. //depot/projects/netperf/sys/i386/i386/identcpu.c#6 integrate .. //depot/projects/netperf/sys/i386/i386/initcpu.c#4 integrate .. //depot/projects/netperf/sys/i386/i386/intr_machdep.c#1 branch .. //depot/projects/netperf/sys/i386/i386/io_apic.c#1 branch .. //depot/projects/netperf/sys/i386/i386/local_apic.c#1 branch .. //depot/projects/netperf/sys/i386/i386/locore.s#8 integrate .. //depot/projects/netperf/sys/i386/i386/machdep.c#10 integrate .. //depot/projects/netperf/sys/i386/i386/mp_machdep.c#9 integrate .. //depot/projects/netperf/sys/i386/i386/mpapic.c#4 delete .. //depot/projects/netperf/sys/i386/i386/mpboot.s#4 integrate .. //depot/projects/netperf/sys/i386/i386/mptable.c#1 branch .. //depot/projects/netperf/sys/i386/i386/mptable_pci.c#1 branch .. //depot/projects/netperf/sys/i386/i386/nexus.c#3 integrate .. //depot/projects/netperf/sys/i386/i386/pmap.c#22 integrate .. //depot/projects/netperf/sys/i386/i386/support.s#4 integrate .. //depot/projects/netperf/sys/i386/i386/trap.c#6 integrate .. //depot/projects/netperf/sys/i386/include/apic.h#5 delete .. //depot/projects/netperf/sys/i386/include/apicreg.h#1 branch .. //depot/projects/netperf/sys/i386/include/apicvar.h#1 branch .. //depot/projects/netperf/sys/i386/include/asmacros.h#2 integrate .. //depot/projects/netperf/sys/i386/include/clock.h#5 integrate .. //depot/projects/netperf/sys/i386/include/critical.h#4 integrate .. //depot/projects/netperf/sys/i386/include/intr_machdep.h#1 branch .. //depot/projects/netperf/sys/i386/include/md_var.h#4 integrate .. //depot/projects/netperf/sys/i386/include/mptable.h#1 branch .. //depot/projects/netperf/sys/i386/include/pcpu.h#3 integrate .. //depot/projects/netperf/sys/i386/include/proc.h#2 integrate .. //depot/projects/netperf/sys/i386/include/segments.h#4 integrate .. //depot/projects/netperf/sys/i386/include/smp.h#2 integrate .. //depot/projects/netperf/sys/i386/include/smptests.h#2 integrate .. //depot/projects/netperf/sys/i386/isa/apic_ipl.s#2 delete .. //depot/projects/netperf/sys/i386/isa/apic_vector.s#3 delete .. //depot/projects/netperf/sys/i386/isa/atpic.c#1 branch .. //depot/projects/netperf/sys/i386/isa/atpic_vector.s#1 branch .. //depot/projects/netperf/sys/i386/isa/bs/bsif.h#2 integrate .. //depot/projects/netperf/sys/i386/isa/clock.c#6 integrate .. //depot/projects/netperf/sys/i386/isa/icu.h#2 integrate .. //depot/projects/netperf/sys/i386/isa/icu_ipl.s#2 delete .. //depot/projects/netperf/sys/i386/isa/icu_vector.s#2 delete .. //depot/projects/netperf/sys/i386/isa/if_le.c#3 integrate .. //depot/projects/netperf/sys/i386/isa/if_rdp.c#5 integrate .. //depot/projects/netperf/sys/i386/isa/intr_machdep.c#2 delete .. //depot/projects/netperf/sys/i386/isa/intr_machdep.h#2 delete .. //depot/projects/netperf/sys/i386/isa/isa_compat.c#4 integrate .. //depot/projects/netperf/sys/i386/isa/ithread.c#2 delete .. //depot/projects/netperf/sys/i386/isa/nmi.c#1 branch .. //depot/projects/netperf/sys/i386/isa/npx.c#3 integrate .. //depot/projects/netperf/sys/i386/isa/vector.s#2 delete .. //depot/projects/netperf/sys/i386/pci/pci_bus.c#5 integrate .. //depot/projects/netperf/sys/i386/pci/pci_cfgreg.c#5 integrate .. //depot/projects/netperf/sys/ia64/ia64/unaligned.c#4 integrate .. //depot/projects/netperf/sys/ia64/include/_types.h#2 integrate .. //depot/projects/netperf/sys/ia64/include/pc/bios.h#2 delete .. //depot/projects/netperf/sys/ia64/include/pc/msdos.h#2 delete .. //depot/projects/netperf/sys/ia64/include/pc/vesa.h#2 delete .. //depot/projects/netperf/sys/kern/kern_event.c#3 integrate .. //depot/projects/netperf/sys/kern/kern_intr.c#3 integrate .. //depot/projects/netperf/sys/kern/kern_timeout.c#3 integrate .. //depot/projects/netperf/sys/kern/sched_ule.c#15 integrate .. //depot/projects/netperf/sys/kern/subr_bus.c#8 integrate .. //depot/projects/netperf/sys/kern/subr_witness.c#5 integrate .. //depot/projects/netperf/sys/kern/sys_pipe.c#9 integrate .. //depot/projects/netperf/sys/kern/vfs_bio.c#13 integrate .. //depot/projects/netperf/sys/kern/vfs_default.c#4 integrate .. //depot/projects/netperf/sys/modules/Makefile#8 integrate .. //depot/projects/netperf/sys/modules/cs/Makefile#1 branch .. //depot/projects/netperf/sys/modules/netgraph/atm/atmbase/Makefile#2 integrate .. //depot/projects/netperf/sys/modules/ppbus/Makefile#2 integrate .. //depot/projects/netperf/sys/net/net_osdep.h#4 integrate .. //depot/projects/netperf/sys/netinet/in.c#2 integrate .. //depot/projects/netperf/sys/netinet/in_pcb.c#10 integrate .. //depot/projects/netperf/sys/netinet/in_rmx.c#13 integrate .. //depot/projects/netperf/sys/netinet/ip_input.c#17 integrate .. //depot/projects/netperf/sys/netinet/ip_output.c#12 integrate .. //depot/projects/netperf/sys/netinet/tcp_output.c#5 integrate .. //depot/projects/netperf/sys/netinet/tcp_subr.c#8 integrate .. //depot/projects/netperf/sys/netinet/tcp_syncache.c#8 integrate .. //depot/projects/netperf/sys/netinet/tcp_var.h#4 integrate .. //depot/projects/netperf/sys/netinet6/icmp6.c#15 integrate .. //depot/projects/netperf/sys/netinet6/in6.c#13 integrate .. //depot/projects/netperf/sys/netinet6/in6_src.c#17 integrate .. //depot/projects/netperf/sys/netinet6/ip6_forward.c#12 integrate .. //depot/projects/netperf/sys/netinet6/ip6_output.c#21 integrate .. //depot/projects/netperf/sys/netinet6/ipsec.c#6 integrate .. //depot/projects/netperf/sys/netinet6/ipsec.h#3 integrate .. //depot/projects/netperf/sys/netinet6/ipsec6.h#2 integrate .. //depot/projects/netperf/sys/netinet6/nd6.c#14 integrate .. //depot/projects/netperf/sys/netinet6/nd6_nbr.c#8 integrate .. //depot/projects/netperf/sys/netinet6/raw_ip6.c#8 integrate .. //depot/projects/netperf/sys/netinet6/udp6_output.c#6 integrate .. //depot/projects/netperf/sys/netinet6/udp6_usrreq.c#5 integrate .. //depot/projects/netperf/sys/netkey/key.c#6 integrate .. //depot/projects/netperf/sys/netkey/key.h#2 integrate .. //depot/projects/netperf/sys/netkey/key_debug.c#3 integrate .. //depot/projects/netperf/sys/netkey/keydb.c#2 integrate .. //depot/projects/netperf/sys/netkey/keydb.h#2 integrate .. //depot/projects/netperf/sys/netkey/keysock.c#4 integrate .. //depot/projects/netperf/sys/netkey/keysock.h#2 integrate .. //depot/projects/netperf/sys/nfsclient/nfs_vfsops.c#5 integrate .. //depot/projects/netperf/sys/pc98/conf/GENERIC#3 integrate .. //depot/projects/netperf/sys/pc98/conf/NOTES#5 integrate .. //depot/projects/netperf/sys/pc98/i386/machdep.c#8 integrate .. //depot/projects/netperf/sys/pc98/pc98/clock.c#7 integrate .. //depot/projects/netperf/sys/pc98/pc98/nmi.c#1 branch .. //depot/projects/netperf/sys/pci/if_dc.c#11 integrate .. //depot/projects/netperf/sys/pci/if_rl.c#10 integrate .. //depot/projects/netperf/sys/pci/if_xl.c#8 integrate .. //depot/projects/netperf/sys/pci/xrpu.c#4 integrate .. //depot/projects/netperf/sys/sys/resource.h#2 integrate .. //depot/projects/netperf/sys/sys/sched.h#3 integrate .. //depot/projects/netperf/sys/ufs/ffs/ffs_vfsops.c#6 integrate .. //depot/projects/netperf/sys/ufs/ufs/ufs_quota.c#4 integrate .. //depot/projects/netperf/sys/vm/swap_pager.c#12 integrate .. //depot/projects/netperf/sys/vm/vm_map.c#11 integrate .. //depot/projects/netperf/sys/vm/vm_map.h#7 integrate .. //depot/projects/netperf/sys/vm/vm_object.c#10 integrate .. //depot/projects/netperf/sys/vm/vm_object.h#3 integrate .. //depot/projects/netperf/sys/vm/vm_page.c#11 integrate Differences ... ==== //depot/projects/netperf/sys/boot/common/dev_net.c#3 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/common/dev_net.c,v 1.12 2003/08/25 23:30:41 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/common/dev_net.c,v 1.13 2003/11/03 19:45:05 iedowse Exp $"); /*- * This module implements a "raw device" interface suitable for @@ -270,22 +270,22 @@ return (EIO); } exit: - printf("net_open: server addr: %s\n", inet_ntoa(rootip)); - /* * If present, strip the server's address off of the rootpath * before passing it along. This allows us to be compatible with * the kernel's diskless (BOOTP_NFSROOT) booting conventions */ - - for(i=0; i .gdbinit \ - "s:MODPATH:modules${S}/modules:" + "s:MODPATH:${.OBJDIR}/modules:" cp ${S}/../tools/debugscripts/gdbinit.kernel \ ${S}/../tools/debugscripts/gdbinit.vinum ${.CURDIR} cp ${S}/../tools/debugscripts/gdbinit.${MACHINE_ARCH} \ ==== //depot/projects/netperf/sys/conf/majors#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/majors,v 1.180 2003/10/06 09:13:08 phk Exp $ +# $FreeBSD: src/sys/conf/majors,v 1.181 2003/11/03 10:19:33 phk Exp $ # # This list is semi-obsoleted by DEVFS, but for now it still contains # the current allocation of device major numbers. @@ -105,7 +105,6 @@ 97 *prom Alpha PROM console 98 loe Loopback pseudo-ethernet (sbabkin@dcn.att.com) 99 ct Cronyx/Tau serial adaptor -100 *xrpu Xilinx Reprogrammable Processing Unit 103 *streams SVR4 Streams emulation 104 *xpt CAM Transport Layer Services 105 *iic I2C bus generic i/o ==== //depot/projects/netperf/sys/conf/options#16 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.421 2003/10/29 14:22:09 iwasaki Exp $ +# $FreeBSD: src/sys/conf/options,v 1.422 2003/11/01 00:18:29 njl Exp $ # # On the handling of kernel options # @@ -598,7 +598,6 @@ # options for ACPI support ACPI_DEBUG opt_acpi.h ACPI_MAX_THREADS opt_acpi.h -ACPI_NO_RESET_VIDEO opt_acpi.h ACPI_NO_SEMAPHORES opt_acpi.h ACPICA_PEDANTIC opt_acpi.h ==== //depot/projects/netperf/sys/conf/options.i386#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.i386,v 1.198 2003/10/30 21:45:34 jhb Exp $ +# $FreeBSD: src/sys/conf/options.i386,v 1.200 2003/11/03 22:45:54 jhb Exp $ # Options specific to the i386 platform kernels AUTO_EOI_1 opt_auto_eoi.h @@ -7,6 +7,7 @@ COMPAT_OLDISA I586_PMC_GUPROF opt_i586_guprof.h MAXMEM +NO_MIXED_MODE PERFMON DISABLE_PSE opt_pmap.h DISABLE_PG_G opt_pmap.h @@ -25,8 +26,6 @@ DEBUG_SVR4 opt_svr4.h PECOFF_SUPPORT opt_dontuse.h PECOFF_DEBUG opt_pecoff.h -# i386 SMP options -APIC_IO opt_global.h # Change KVM size. Changes things all over the kernel. KVA_PAGES opt_global.h @@ -47,6 +46,7 @@ CPU_DIRECT_MAPPED_CACHE opt_cpu.h CPU_DISABLE_5X86_LSSER opt_cpu.h CPU_ELAN opt_cpu.h +CPU_SOEKRIS opt_cpu.h CPU_FASTER_5X86_FPU opt_cpu.h CPU_GEODE opt_cpu.h CPU_I486_ON_386 opt_cpu.h @@ -146,6 +146,8 @@ IPR_LOG opt_i4b.h # Device options +DEV_ACPI opt_acpi.h +DEV_APIC opt_apic.h DEV_NPX opt_npx.h # ------------------------------- ==== //depot/projects/netperf/sys/conf/options.pc98#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.pc98,v 1.168 2003/10/31 13:50:09 nyan Exp $ +# $FreeBSD: src/sys/conf/options.pc98,v 1.169 2003/11/04 12:19:54 nyan Exp $ # Options specific to the pc98 platform kernels AUTO_EOI_1 opt_auto_eoi.h @@ -7,6 +7,7 @@ COMPAT_OLDISA I586_PMC_GUPROF opt_i586_guprof.h MAXMEM +NO_MIXED_MODE PERFMON DISABLE_PSE opt_pmap.h DISABLE_PG_G opt_pmap.h @@ -25,8 +26,6 @@ DEBUG_SVR4 opt_svr4.h PECOFF_SUPPORT opt_dontuse.h PECOFF_DEBUG opt_pecoff.h -# i386 SMP options -APIC_IO opt_global.h # Change KVM size. Changes things all over the kernel. KVA_PAGES opt_global.h @@ -102,6 +101,7 @@ LINE30 opt_syscons.h # Device options +DEV_APIC opt_apic.h DEV_NPX opt_npx.h DEV_MECIA opt_mecia.h ==== //depot/projects/netperf/sys/contrib/dev/ath/ah.h#4 (text+ko) ==== @@ -33,7 +33,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGES. * - * $Id: ah.h,v 1.35 2003/07/21 02:36:53 sam Exp $ + * $Id: ah.h,v 1.41 2003/11/01 01:05:45 sam Exp $ */ #ifndef _ATH_AH_H_ @@ -54,22 +54,22 @@ * error occurs--i.e. you cannot check it for success. */ typedef enum { - HAL_OK = 0, /* No error */ - HAL_ENXIO, /* No hardware present */ - HAL_ENOMEM, /* Memory allocation failed */ - HAL_EIO, /* Hardware didn't respond as expected */ - HAL_EEMAGIC, /* EEPROM magic number invalid */ - HAL_EEVERSION, /* EEPROM version invalid */ - HAL_EELOCKED, /* EEPROM unreadable */ - HAL_EEBADSUM, /* EEPROM checksum invalid */ - HAL_EEREAD, /* EEPROM read problem */ - HAL_EEBADMAC, /* EEPROM mac address invalid */ - HAL_EESIZE, /* EEPROM size not supported */ - HAL_EEWRITE, /* Attempt to change write-locked EEPROM */ - HAL_EINVAL, /* Invalid parameter to function */ - HAL_ENOTSUPP, /* Hardware revision not supported */ - HAL_ESELFTEST, /* Hardware self-test failed */ - HAL_EINPROGRESS, /* Operation incomplete */ + HAL_OK = 0, /* No error */ + HAL_ENXIO = 1, /* No hardware present */ + HAL_ENOMEM = 2, /* Memory allocation failed */ + HAL_EIO = 3, /* Hardware didn't respond as expected */ + HAL_EEMAGIC = 4, /* EEPROM magic number invalid */ + HAL_EEVERSION = 5, /* EEPROM version invalid */ + HAL_EELOCKED = 6, /* EEPROM unreadable */ + HAL_EEBADSUM = 7, /* EEPROM checksum invalid */ + HAL_EEREAD = 8, /* EEPROM read problem */ + HAL_EEBADMAC = 9, /* EEPROM mac address invalid */ + HAL_EESIZE = 10, /* EEPROM size not supported */ + HAL_EEWRITE = 11, /* Attempt to change write-locked EEPROM */ + HAL_EINVAL = 12, /* Invalid parameter to function */ + HAL_ENOTSUPP = 13, /* Hardware revision not supported */ + HAL_ESELFTEST = 14, /* Hardware self-test failed */ + HAL_EINPROGRESS = 15, /* Operation incomplete */ } HAL_STATUS; typedef enum { @@ -99,10 +99,10 @@ */ typedef enum { HAL_TX_QUEUE_INACTIVE = 0, /* queue is inactive/unused */ - HAL_TX_QUEUE_DATA, /* data xmit q's */ - HAL_TX_QUEUE_BEACON, /* beacon xmit q */ - HAL_TX_QUEUE_CAB, /* "crap after beacon" xmit q */ - HAL_TX_QUEUE_PSPOLL, /* power-save poll xmit q */ + HAL_TX_QUEUE_DATA = 1, /* data xmit q's */ + HAL_TX_QUEUE_BEACON = 2, /* beacon xmit q */ + HAL_TX_QUEUE_CAB = 3, /* "crap after beacon" xmit q */ + HAL_TX_QUEUE_PSPOLL = 4, /* power-save poll xmit q */ } HAL_TX_QUEUE; #define HAL_NUM_TX_QUEUES 10 /* max possible # of queues */ @@ -189,9 +189,9 @@ } HAL_INT; typedef enum { - HAL_RFGAIN_INACTIVE, - HAL_RFGAIN_READ_REQUESTED, - HAL_RFGAIN_NEED_CHANGE + HAL_RFGAIN_INACTIVE = 0, + HAL_RFGAIN_READ_REQUESTED = 1, + HAL_RFGAIN_NEED_CHANGE = 2 } HAL_RFGAIN; /* @@ -278,9 +278,9 @@ } HAL_RATE_SET; typedef enum { - HAL_ANT_VARIABLE, /* variable by programming */ - HAL_ANT_FIXED_A, /* fixed to 11a frequencies */ - HAL_ANT_FIXED_B, /* fixed to 11b frequencies */ + HAL_ANT_VARIABLE = 0, /* variable by programming */ + HAL_ANT_FIXED_A = 1, /* fixed to 11a frequencies */ + HAL_ANT_FIXED_B = 2, /* fixed to 11b frequencies */ } HAL_ANT_SETTING; typedef enum { @@ -296,11 +296,16 @@ } HAL_KEYVAL; typedef enum { - HAL_CIPHER_WEP, - HAL_CIPHER_AES_CCM, - HAL_CIPHER_CKIP + HAL_CIPHER_WEP = 0, + HAL_CIPHER_AES_CCM = 1, + HAL_CIPHER_CKIP = 2 } HAL_CIPHER; +enum { + HAL_SLOT_TIME_9 = 9, + HAL_SLOT_TIME_20 = 20, +}; + /* * Per-station beacon timer state. */ @@ -325,10 +330,14 @@ * Clients of the HAL call ath_hal_attach to obtain a reference to an * ath_hal structure for use with the device. Hardware-related operations * that follow must call back into the HAL through interface, supplying - * the reference as the first parameter. + * the reference as the first parameter. Note that before using the + * reference returned by ath_hal_attach the caller should verify the + * ABI version number. */ struct ath_hal { u_int32_t ah_magic; /* consistency check magic number */ + u_int32_t ah_abi; /* HAL ABI version */ +#define HAL_ABI_VERSION 0x03103100 /* YYMMDDnn */ u_int16_t ah_devid; /* PCI device ID */ u_int16_t ah_subvendorid; /* PCI subvendor ID */ HAL_SOFTC ah_sc; /* back pointer to driver/os state */ @@ -336,6 +345,12 @@ HAL_BUS_HANDLE ah_sh; HAL_CTRY_CODE ah_countryCode; + u_int32_t ah_macVersion; /* MAC version id */ + u_int16_t ah_macRev; /* MAC revision */ + u_int16_t ah_phyRev; /* PHY revision */ + u_int16_t ah_analog5GhzRev;/* 2GHz radio revision */ + u_int16_t ah_analog2GhzRev;/* 5GHz radio revision */ + const HAL_RATE_TABLE *(*ah_getRateTable)(struct ath_hal *, u_int mode); void (*ah_detach)(struct ath_hal*); @@ -424,6 +439,7 @@ u_int32_t (*ah_getDefAntenna)(struct ath_hal*); void (*ah_setDefAntenna)(struct ath_hal*, u_int32_t antenna); #endif + HAL_BOOL (*ah_setSlotTime)(struct ath_hal*, u_int); /* Key Cache Functions */ u_int32_t (*ah_getKeyCacheSize)(struct ath_hal*); @@ -524,4 +540,9 @@ */ extern u_int ath_hal_mhz2ieee(u_int mhz, u_int flags); extern u_int ath_hal_ieee2mhz(u_int ieee, u_int flags); + +/* + * Return a version string for the HAL release. + */ +extern char ath_hal_version[]; #endif /* _ATH_AH_H_ */ ==== //depot/projects/netperf/sys/contrib/dev/ath/ah_devid.h#2 (text+ko) ==== @@ -33,13 +33,19 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGES. * - * $Id: ah_devid.h,v 1.6 2003/06/25 04:50:22 sam Exp $ + * $Id: ah_devid.h,v 1.7 2003/10/22 21:17:40 sam Exp $ */ #ifndef _DEV_ATH_DEVID_H_ #define _DEV_ATH_DEVID_H_ #define ATHEROS_VENDOR_ID 0x168c /* Atheros PCI vendor ID */ +/* + * NB: all Atheros-based devices should have a PCI vendor ID + * of 0x168c, but some vendors, in their infinite wisdom + * do not follow this so we must handle them specially. + */ +#define ATHEROS_3COM_VENDOR_ID 0xa727 /* 3Com PCI vendor ID */ /* AR5210 (for reference) */ #define AR5210_DEFAULT 0x1107 /* No eeprom HW default */ @@ -57,6 +63,7 @@ #define AR5212_DEFAULT 0x1113 /* No eeprom HW default */ #define AR5212_DEVID 0x0013 /* Final ar5212 devid */ #define AR5212_FPGA 0xf013 /* Emulation board */ +#define AR5212_DEVID_IBM 0x1014 /* IBM minipci ID */ #define AR_SUBVENDOR_ID_NOG 0x0e11 /* No 11G subvendor ID */ #endif /* _DEV_ATH_DEVID_H */ ==== //depot/projects/netperf/sys/contrib/dev/ath/freebsd/ah_osdep.c#3 (text+ko) ==== @@ -33,7 +33,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGES. * - * $Id: ah_osdep.c,v 1.22 2003/07/26 14:58:00 sam Exp $ + * $Id: ah_osdep.c,v 1.28 2003/11/01 01:43:21 sam Exp $ */ #include "opt_ah.h" @@ -51,10 +51,6 @@ #include -#define AH_TIMEOUT 1000 - -extern HAL_BOOL ath_hal_wait(struct ath_hal *, u_int reg, - u_int32_t mask, u_int32_t val); extern void ath_hal_printf(struct ath_hal *, const char*, ...) __printflike(2,3); extern void ath_hal_vprintf(struct ath_hal *, const char*, __va_list) @@ -81,8 +77,6 @@ 0, "Atheros HAL debugging printfs"); #endif /* AH_DEBUG */ -#include "version.h" -static char ath_hal_version[] = ATH_HAL_VERSION; SYSCTL_STRING(_hw_ath_hal, OID_AUTO, version, CTLFLAG_RD, ath_hal_version, 0, "Atheros HAL version"); @@ -99,25 +93,6 @@ &ath_hal_additional_swba_backoff, 0, "Atheros HAL additional SWBA backoff time"); -/* - * Poll the register looking for a specific value. - */ -HAL_BOOL -ath_hal_wait(struct ath_hal *ah, u_int reg, u_int32_t mask, u_int32_t val) -{ - int i; - - for (i = 0; i < AH_TIMEOUT; i++) { - if ((OS_REG_READ(ah, reg) & mask) == val) - return AH_TRUE; - DELAY(10); - } - ath_hal_printf(ah, "ath_hal_wait: timeout on reg 0x%x: " - "0x%08x & 0x%08x != 0x%08x\n", reg, OS_REG_READ(ah, reg), - mask, val); - return AH_FALSE; -} - void* ath_hal_malloc(size_t size) { @@ -269,7 +244,7 @@ } void -OS_REG_WRITE(struct ath_hal *ah, u_int32_t reg, u_int32_t val) +ath_hal_reg_write(struct ath_hal *ah, u_int32_t reg, u_int32_t val) { if (ath_hal_alq) { struct ale *ale = ath_hal_alq_get(ah); @@ -281,15 +256,24 @@ alq_post(ath_hal_alq, ale); } } - bus_space_write_4(ah->ah_st, ah->ah_sh, reg, val); +#if _BYTE_ORDER == _BIG_ENDIAN + if (reg >= 0x4000 && reg < 0x5000) + bus_space_write_4(ah->ah_st, ah->ah_sh, reg, htole32(val)); + else +#endif + bus_space_write_4(ah->ah_st, ah->ah_sh, reg, val); } u_int32_t -OS_REG_READ(struct ath_hal *ah, u_int32_t reg) +ath_hal_reg_read(struct ath_hal *ah, u_int32_t reg) { u_int32_t val; val = bus_space_read_4(ah->ah_st, ah->ah_sh, reg); +#if _BYTE_ORDER == _BIG_ENDIAN + if (reg >= 0x4000 && reg < 0x5000) + val = le32toh(val); +#endif if (ath_hal_alq) { struct ale *ale = ath_hal_alq_get(ah); if (ale) { @@ -317,7 +301,42 @@ } } } -#endif /* AH_DEBUG_ALQ */ +#elif defined(AH_DEBUG) || defined(AH_REGOPS_FUNC) +/* + * Memory-mapped device register read/write. These are here + * as routines when debugging support is enabled and/or when + * explicitly configured to use function calls. The latter is + * for architectures that might need to do something before + * referencing memory (e.g. remap an i/o window). + * + * NB: see the comments in ah_osdep.h about byte-swapping register + * reads and writes to understand what's going on below. + */ + +void +ath_hal_reg_write(struct ath_hal *ah, u_int32_t reg, u_int32_t val) +{ +#if _BYTE_ORDER == _BIG_ENDIAN + if (reg >= 0x4000 && reg < 0x5000) + bus_space_write_4(ah->ah_st, ah->ah_sh, reg, htole32(val)); + else +#endif + bus_space_write_4(ah->ah_st, ah->ah_sh, reg, val); +} + +u_int32_t +ath_hal_reg_read(struct ath_hal *ah, u_int32_t reg) +{ + u_int32_t val; + + val = bus_space_read_4(ah->ah_st, ah->ah_sh, reg); +#if _BYTE_ORDER == _BIG_ENDIAN + if (reg >= 0x4000 && reg < 0x5000) + val = le32toh(val); +#endif + return val; +} +#endif /* AH_DEBUG || AH_REGOPS_FUNC */ #ifdef AH_ASSERT void @@ -329,8 +348,17 @@ } #endif /* AH_ASSERT */ +/* + * Delay n microseconds. + */ +void +ath_hal_delay(int n) +{ + DELAY(n); +} + u_int32_t -OS_GETUPTIME(struct ath_hal *ah) +ath_hal_getuptime(struct ath_hal *ah) { struct bintime bt; getbinuptime(&bt); @@ -364,4 +392,3 @@ }; DECLARE_MODULE(ath_hal, ath_hal_mod, SI_SUB_DRIVERS, SI_ORDER_ANY); MODULE_VERSION(ath_hal, 1); -MODULE_DEPEND(ath_hal, wlan, 1,1,1); ==== //depot/projects/netperf/sys/contrib/dev/ath/freebsd/ah_osdep.h#3 (text+ko) ==== @@ -33,7 +33,7 @@ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGES. * - * $Id: ah_osdep.h,v 1.9 2003/07/26 14:55:11 sam Exp $ + * $Id: ah_osdep.h,v 1.10 2003/11/01 01:21:31 sam Exp $ */ #ifndef _ATH_AH_OSDEP_H_ #define _ATH_AH_OSDEP_H_ @@ -42,6 +42,7 @@ */ #include #include +#include #include @@ -50,25 +51,75 @@ typedef bus_space_handle_t HAL_BUS_HANDLE; typedef bus_addr_t HAL_BUS_ADDR; -#define OS_DELAY(_n) DELAY(_n) +/* + * Delay n microseconds. + */ +extern void ath_hal_delay(int); +#define OS_DELAY(_n) ath_hal_delay(_n) + #define OS_INLINE __inline #define OS_MEMZERO(_a, _size) bzero((_a), (_size)) #define OS_MEMCPY(_dst, _src, _size) bcopy((_src), (_dst), (_size)) #define OS_MACEQU(_a, _b) \ (bcmp((_a), (_b), IEEE80211_ADDR_LEN) == 0) +#define OS_QSORT(_a, _n, _es, _cmp) qsort((_a), (_n), (_es), (_cmp)) struct ath_hal; -extern u_int32_t OS_GETUPTIME(struct ath_hal *); +extern u_int32_t ath_hal_getuptime(struct ath_hal *); +#define OS_GETUPTIME(_ah) ath_hal_getuptime(_ah) + +/* + * Register read/write; we assume the registers will always + * be memory-mapped. Note that register accesses are done + * using target-specific functions when debugging is enabled + * (AH_DEBUG) or we are explicitly configured this way. The + * latter is used on some platforms where the full i/o space + * cannot be directly mapped. + */ +#if defined(AH_DEBUG) || defined(AH_REGOPS_FUNC) || defined(AH_DEBUG_ALQ) +#define OS_REG_WRITE(_ah, _reg, _val) ath_hal_reg_write(_ah, _reg, _val) +#define OS_REG_READ(_ah, _reg) ath_hal_reg_read(_ah, _reg) + +extern void ath_hal_reg_write(struct ath_hal *ah, u_int reg, u_int32_t val); +extern u_int32_t ath_hal_reg_read(struct ath_hal *ah, u_int reg); +#else +/* >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Nov 4 12:41:40 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C1BC16A4D2; Tue, 4 Nov 2003 12:41:40 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 25B8516A4CE for ; Tue, 4 Nov 2003 12:41:40 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8BE3443F75 for ; Tue, 4 Nov 2003 12:41:39 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA4KfdXJ062717 for ; Tue, 4 Nov 2003 12:41:39 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA4Kfdhl062714 for perforce@freebsd.org; Tue, 4 Nov 2003 12:41:39 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 12:41:39 -0800 (PST) Message-Id: <200311042041.hA4Kfdhl062714@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 Subject: PERFORCE change 41381 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 20:41:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=41381 Change 41381 by sam@sam_ebb on 2003/11/04 12:41:25 turn MPSAFE back on in my branch Affected files ... .. //depot/projects/netperf/sys/kern/subr_bus.c#9 edit Differences ... ==== //depot/projects/netperf/sys/kern/subr_bus.c#9 (text+ko) ==== @@ -2138,7 +2138,7 @@ * XXX disable INTR_MPSAFE in network drivers without * XXX recompiling--in case of problems. */ -int debug_mpsafenet = 0; +int debug_mpsafenet = 1; TUNABLE_INT("debug.mpsafenet", &debug_mpsafenet); SYSCTL_INT(_debug, OID_AUTO, mpsafenet, CTLFLAG_RW, &debug_mpsafenet, 0, "Enable/disable MPSAFE network support"); From owner-p4-projects@FreeBSD.ORG Tue Nov 4 13:03:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DB3B416A4D1; Tue, 4 Nov 2003 13:03:30 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9FA5016A4CF for ; Tue, 4 Nov 2003 13:03:30 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 22FD043FDD for ; Tue, 4 Nov 2003 13:03:29 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA4L3SXJ071595 for ; Tue, 4 Nov 2003 13:03:28 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA4L3Srn071592 for perforce@freebsd.org; Tue, 4 Nov 2003 13:03:28 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 13:03:28 -0800 (PST) Message-Id: <200311042103.hA4L3Srn071592@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 Subject: PERFORCE change 41387 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Nov 2003 21:03:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=41387 Change 41387 by sam@sam_ebb on 2003/11/04 13:02:57 wrap rtentry reference count manipulations in macros so we can add assertions under INVARIANTS Affected files ... .. //depot/projects/netperf/sys/net/route.c#26 edit .. //depot/projects/netperf/sys/net/route.h#13 edit .. //depot/projects/netperf/sys/net/rtsock.c#9 edit .. //depot/projects/netperf/sys/netinet/if_atm.c#8 edit .. //depot/projects/netperf/sys/netinet/if_ether.c#15 edit .. //depot/projects/netperf/sys/netinet/in_pcb.c#11 edit .. //depot/projects/netperf/sys/netinet/in_pcb.h#10 edit .. //depot/projects/netperf/sys/netinet/ip_dummynet.c#16 edit .. //depot/projects/netperf/sys/netinet/ip_flow.c#7 edit .. //depot/projects/netperf/sys/netinet/tcp_output.c#6 edit .. //depot/projects/netperf/sys/netinet6/in6.c#14 edit .. //depot/projects/netperf/sys/netinet6/ip6_output.c#22 edit .. //depot/projects/netperf/sys/netinet6/nd6.c#15 edit .. //depot/projects/netperf/sys/netinet6/nd6_rtr.c#10 edit Differences ... ==== //depot/projects/netperf/sys/net/route.c#26 (text+ko) ==== @@ -154,7 +154,7 @@ */ newrt = rt; /* existing route */ RT_LOCK(newrt); - newrt->rt_refcnt++; + RT_ADDREF(newrt); goto miss; } KASSERT(newrt, ("no route and no error")); @@ -180,7 +180,7 @@ } else { KASSERT(rt == newrt, ("locking wrong route")); RT_LOCK(newrt); - newrt->rt_refcnt++; + RT_ADDREF(newrt); } RADIX_NODE_HEAD_UNLOCK(rnh); } else { @@ -228,7 +228,8 @@ * decrement the reference count by one and if it reaches 0, * and there is a close function defined, call the close function */ - if (--rt->rt_refcnt > 0) + RT_REMREF(rt); + if (rt->rt_refcnt > 0) goto done; /* @@ -442,7 +443,7 @@ struct rtentry *rt = rtalloc1(gateway, 0, 0UL); if (rt == 0) return (0); - --rt->rt_refcnt; + RT_REMREF(rt); RT_UNLOCK(rt); if ((ifa = rt->rt_ifa) == 0) return (0); @@ -661,7 +662,7 @@ panic ("rtrequest delete"); rt = (struct rtentry *)rn; RT_LOCK(rt); - rt->rt_refcnt++; + RT_ADDREF(rt); rt->rt_flags &= ~RTF_UP; /* @@ -861,7 +862,7 @@ */ if (ret_nrt) { *ret_nrt = rt; - rt->rt_refcnt++; + RT_ADDREF(rt); } RT_UNLOCK(rt); break; @@ -1229,7 +1230,7 @@ * We just wanted to add it.. we don't actually * need a reference. */ - rt->rt_refcnt--; + RT_REMREF(rt); } RT_UNLOCK(rt); } @@ -1269,7 +1270,7 @@ RT_UNLOCK(rt); rt = rtalloc1(dst, 1, 0UL); if (rt != NULL) { - rt->rt_refcnt--; + RT_REMREF(rt); RT_UNLOCK(rt); } else senderr(EHOSTUNREACH); ==== //depot/projects/netperf/sys/net/route.h#13 (text+ko) ==== @@ -266,19 +266,32 @@ #define RT_LOCK_DESTROY(_rt) mtx_destroy(&(_rt)->rt_mtx) #define RT_LOCK_ASSERT(_rt) mtx_assert(&(_rt)->rt_mtx, MA_OWNED) -#define RTFREE_LOCKED(_rt) do { \ - if ((_rt)->rt_refcnt <= 1) \ - rtfree(_rt); \ - else { \ - (_rt)->rt_refcnt--; \ - RT_UNLOCK(_rt); \ - } \ - /* guard against invalid refs */ \ - _rt = 0; \ +#define RT_ADDREF(_rt) do { \ + RT_LOCK_ASSERT(_rt); \ + KASSERT((_rt)->rt_refcnt >= 0, \ + ("negative refcnt %ld", (_rt)->rt_refcnt)); \ + (_rt)->rt_refcnt++; \ +} while (0); +#define RT_REMREF(_rt) do { \ + RT_LOCK_ASSERT(_rt); \ + KASSERT((_rt)->rt_refcnt > 0, \ + ("bogus refcnt %ld", (_rt)->rt_refcnt)); \ + (_rt)->rt_refcnt--; \ +} while (0); + +#define RTFREE_LOCKED(_rt) do { \ + if ((_rt)->rt_refcnt <= 1) \ + rtfree(_rt); \ + else { \ + RT_REMREF(_rt); \ + RT_UNLOCK(_rt); \ + } \ + /* guard against invalid refs */ \ + _rt = 0; \ } while (0) -#define RTFREE(_rt) do { \ - RT_LOCK(_rt); \ - RTFREE_LOCKED(_rt); \ +#define RTFREE(_rt) do { \ + RT_LOCK(_rt); \ + RTFREE_LOCKED(_rt); \ } while (0) extern struct radix_node_head *rt_tables[AF_MAX+1]; ==== //depot/projects/netperf/sys/net/rtsock.c#9 (text+ko) ==== @@ -357,7 +357,7 @@ saved_nrt->rt_rmx.rmx_locks &= ~(rtm->rtm_inits); saved_nrt->rt_rmx.rmx_locks |= (rtm->rtm_inits & rtm->rtm_rmx.rmx_locks); - saved_nrt->rt_refcnt--; + RT_REMREF(saved_nrt); saved_nrt->rt_genmask = info.rti_info[RTAX_GENMASK]; RT_UNLOCK(saved_nrt); } @@ -386,7 +386,7 @@ if (rt == NULL) /* XXX looks bogus */ senderr(ESRCH); RT_LOCK(rt); - rt->rt_refcnt++; + RT_ADDREF(rt); switch(rtm->rtm_type) { ==== //depot/projects/netperf/sys/netinet/if_atm.c#8 (text+ko) ==== @@ -320,7 +320,7 @@ rt = RTALLOC1(dst, 0); if (rt == NULL) goto bad; /* failed */ - rt->rt_refcnt--; /* don't keep LL references */ + RT_REMREF(rt); /* don't keep LL references */ if ((rt->rt_flags & RTF_GATEWAY) != 0 || (rt->rt_flags & RTF_LLINFO) == 0 || /* XXX: are we using LLINFO? */ ==== //depot/projects/netperf/sys/netinet/if_ether.c#15 (text+ko) ==== @@ -954,7 +954,7 @@ return (0); #undef ISDYNCLONE } else { - rt->rt_refcnt--; + RT_REMREF(rt); RT_UNLOCK(rt); return ((struct llinfo_arp *)rt->rt_llinfo); } ==== //depot/projects/netperf/sys/netinet/in_pcb.c#11 (text+ko) ==== ==== //depot/projects/netperf/sys/netinet/in_pcb.h#10 (text+ko) ==== ==== //depot/projects/netperf/sys/netinet/ip_dummynet.c#16 (text+ko) ==== @@ -1197,9 +1197,7 @@ pkt->ro = *(fwa->ro); if (pkt->ro.ro_rt) { RT_LOCK(pkt->ro.ro_rt); - pkt->ro.ro_rt->rt_refcnt++ ; - KASSERT(pkt->ro.ro_rt->rt_refcnt > 0, - ("bogus refcnt %ld", pkt->ro.ro_rt->rt_refcnt)); + RT_ADDREF(pkt->ro.ro_rt) ; RT_UNLOCK(pkt->ro.ro_rt); } if (fwa->dst == (struct sockaddr_in *)&fwa->ro->ro_dst) /* dst points into ro */ ==== //depot/projects/netperf/sys/netinet/ip_flow.c#7 (text+ko) ==== @@ -353,7 +353,7 @@ */ ipf->ipf_ro = *ro; RT_LOCK(ro->ro_rt); - ro->ro_rt->rt_refcnt++; + RT_ADDREF(ro->ro_rt); RT_UNLOCK(ro->ro_rt); ipf->ipf_timer = IPFLOW_TIMER; /* ==== //depot/projects/netperf/sys/netinet/tcp_output.c#6 (text+ko) ==== @@ -134,7 +134,7 @@ #endif #ifndef INET6 - mtx_assert(&tp->t_inpcb->inp_mtx, MA_OWNED); + INP_LOCK_ASSERT(tp->t_inpcb); #endif /* ==== //depot/projects/netperf/sys/netinet6/in6.c#14 (text+ko) ==== @@ -197,7 +197,7 @@ rtfree(nrt); } else { /* the cmd must be RTM_ADD here */ - nrt->rt_refcnt--; + RT_REMREF(nrt); RT_UNLOCK(nrt); } } ==== //depot/projects/netperf/sys/netinet6/ip6_output.c#22 (text+ko) ==== @@ -2908,7 +2908,7 @@ *opt = *stickyopt; if (opt->ip6po_nextroute.ro_rt) { RT_LOCK(opt->ip6po_nextroute.ro_rt); - opt->ip6po_nextroute.ro_rt->rt_refcnt++; + RT_ADDREF(opt->ip6po_nextroute.ro_rt); RT_UNLOCK(opt->ip6po_nextroute.ro_rt); } } else ==== //depot/projects/netperf/sys/netinet6/nd6.c#15 (text+ko) ==== @@ -838,7 +838,7 @@ return (NULL); } RT_LOCK_ASSERT(rt); - rt->rt_refcnt--; + RT_REMREF(rt); /* * Validation for the entry. * Note that the check for rt_llinfo is necessary because a cloned @@ -1834,7 +1834,7 @@ if ((rt->rt_flags & RTF_UP) == 0) { rt0 = rt = rtalloc1((struct sockaddr *)dst, 1, 0UL); if (rt != NULL) { - rt->rt_refcnt--; + RT_REMREF(rt); RT_UNLOCK(rt); if (rt->rt_ifp != ifp) { /* XXX: loop care? */ ==== //depot/projects/netperf/sys/netinet6/nd6_rtr.c#10 (text+ko) ==== @@ -478,7 +478,7 @@ if (newrt) { RT_LOCK(newrt); nd6_rtmsg(RTM_ADD, newrt); /* tell user process */ - newrt->rt_refcnt--; + RT_REMREF(newrt); RT_UNLOCK(newrt); } return; @@ -524,7 +524,7 @@ if (newrt) { RT_LOCK(newrt); nd6_rtmsg(RTM_ADD, newrt); - newrt->rt_refcnt--; + RT_REMREF(newrt); RT_UNLOCK(newrt); } } @@ -1470,7 +1470,7 @@ if (rt != NULL) { RT_LOCK(rt); - rt->rt_refcnt--; + RT_REMREF(rt); RT_UNLOCK(rt); } From owner-p4-projects@FreeBSD.ORG Tue Nov 4 17:02:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8479016A4D0; Tue, 4 Nov 2003 17:02:27 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 458E116A4CF for ; Tue, 4 Nov 2003 17:02:27 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4E58E43FE3 for ; Tue, 4 Nov 2003 17:02:26 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA512QXJ094574 for ; Tue, 4 Nov 2003 17:02:26 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA512Pui094571 for perforce@freebsd.org; Tue, 4 Nov 2003 17:02:25 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Tue, 4 Nov 2003 17:02:25 -0800 (PST) Message-Id: <200311050102.hA512Pui094571@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41400 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 01:02:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=41400 Change 41400 by rwatson@rwatson_paprika on 2003/11/04 17:02:13 Slide trustedbsd_sebsd to the head of trustedbsd_mac: Add mac_support.4. Clean up unnecessary error-checking of malloc return values in uipc_sem.c. Sync mac_internal.h to version in main FreeBSD tree. Affected files ... .. //depot/projects/trustedbsd/sebsd/share/man/man4/Makefile#6 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/mac.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/mac_support.4#1 branch .. //depot/projects/trustedbsd/sebsd/sys/kern/uipc_sem.c#7 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_internal.h#5 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/share/man/man4/Makefile#6 (text+ko) ==== @@ -128,6 +128,7 @@ mac_partition.4 \ mac_portacl.4 \ mac_seeotheruids.4 \ + mac_support.4 \ mac_stub.4 \ mac_test.4 \ mouse.4 \ ==== //depot/projects/trustedbsd/sebsd/share/man/man4/mac.4#3 (text+ko) ==== @@ -48,6 +48,9 @@ they cannot override traditional .Ux security provisions such as file permissions and superuser checks. +Support (and non-support) for a variety of kernel features is documented +in +.Xr mac_support 4 . .Pp Currently, the following MAC policy modules are shipped with .Fx : @@ -247,6 +250,7 @@ .Xr mac_partition 4 , .Xr mac_portacl 4 , .Xr mac_seeotheruids 4 , +.Xr max_support 4 , .Xr mac_test 4 , .Xr login.conf 5 , .Xr maclabel 7 , ==== //depot/projects/trustedbsd/sebsd/sys/kern/uipc_sem.c#7 (text+ko) ==== @@ -1,6 +1,6 @@ /* * Copyright (c) 2002 Alfred Perlstein - * Copyright (c) 2001, 2002, 2003 Networks Associates Technology, Inc. + * Copyright (c) 2003 Networks Associates Technology, Inc. * All rights reserved. * * This software was developed for the FreeBSD Project in part by Network @@ -227,8 +227,7 @@ /* XXX Use p31b_getcfg(CTL_P1003_1B_SEM_VALUE_MAX) instead? */ if (value > SEM_VALUE_MAX) return (EINVAL); - if( (ret = malloc(sizeof(*ret), M_SEM, M_WAITOK | M_ZERO)) == NULL) - return (ENOMEM); + ret = malloc(sizeof(*ret), M_SEM, M_WAITOK | M_ZERO); if (name != NULL) { len = strlen(name); if (len > SEM_MAX_NAMELEN) { @@ -240,10 +239,7 @@ free(ret, M_SEM); return (EINVAL); } - if( (ret->ks_name = malloc(len + 1, M_SEM, M_WAITOK)) == NULL){ - free(ret, M_SEM); - return (ENOMEM); - } + ret->ks_name = malloc(len + 1, M_SEM, M_WAITOK); strcpy(ret->ks_name, name); } else { ret->ks_name = NULL; @@ -598,8 +594,7 @@ mtx_assert(&sem_lock, MA_NOTOWNED); mtx_assert(&ks->ks_mtx, MA_NOTOWNED); - if( (ku = malloc(sizeof(*ku), M_SEM, M_WAITOK | M_ZERO)) == NULL) - return; + ku = malloc(sizeof(*ku), M_SEM, M_WAITOK | M_ZERO); ku->ku_pid = p->p_pid; mtx_lock(&sem_lock); k = sem_getuser(p, ks); ==== //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_internal.h#5 (text+ko) ==== @@ -32,6 +32,8 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. + * + * $FreeBSD: src/sys/security/mac/mac_internal.h,v 1.103 2003/10/25 15:28:20 rwatson Exp $ */ /* @@ -48,6 +50,7 @@ * MAC Framework global types and typedefs. */ LIST_HEAD(mac_policy_list_head, mac_policy_conf); +MALLOC_DECLARE(M_MACTEMP); /* * MAC Framework global variables. @@ -63,11 +66,6 @@ #endif /* - * MAC Framework global types and constants. - */ -MALLOC_DECLARE(M_MACTEMP); - -/* * MAC Framework object/access counter primitives, conditionally * compiled. */ From owner-p4-projects@FreeBSD.ORG Tue Nov 4 17:47:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4BE0B16A4D1; Tue, 4 Nov 2003 17:47:22 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 213EE16A4CE for ; Tue, 4 Nov 2003 17:47:22 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2047743FE9 for ; Tue, 4 Nov 2003 17:47:21 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA51lKXJ098298 for ; Tue, 4 Nov 2003 17:47:20 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA51lKHH098295 for perforce@freebsd.org; Tue, 4 Nov 2003 17:47:20 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 17:47:20 -0800 (PST) Message-Id: <200311050147.hA51lKHH098295@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 Subject: PERFORCE change 41401 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 01:47:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=41401 Change 41401 by sam@sam_ebb on 2003/11/04 17:46:20 first round of inpcb locking assertions Affected files ... .. //depot/projects/netperf/sys/netinet/in_pcb.c#12 edit .. //depot/projects/netperf/sys/netinet/in_pcb.h#11 edit Differences ... ==== //depot/projects/netperf/sys/netinet/in_pcb.c#12 (text+ko) ==== @@ -164,6 +164,7 @@ #if defined(IPSEC) || defined(FAST_IPSEC) int error; #endif + INP_INFO_WLOCK_ASSERT(pcbinfo); inp = uma_zalloc(pcbinfo->ipi_zone, M_NOWAIT | M_ZERO); if (inp == NULL) return (ENOBUFS); @@ -207,6 +208,9 @@ { int anonport, error; + INP_LOCK_ASSERT(inp); + + INP_INFO_WLOCK_ASSERT(inp->inp_pcbinfo); if (inp->inp_lport != 0 || inp->inp_laddr.s_addr != INADDR_ANY) return (EINVAL); anonport = inp->inp_lport == 0 && (nam == NULL || @@ -251,6 +255,9 @@ int wild = 0, reuseport = (so->so_options & SO_REUSEPORT); int error, prison = 0; + INP_LOCK_ASSERT(inp); + + INP_INFO_WLOCK_ASSERT(pcbinfo); if (TAILQ_EMPTY(&in_ifaddrhead)) /* XXX broken! */ return (EADDRNOTAVAIL); laddr.s_addr = *laddrp; @@ -656,6 +663,7 @@ in_pcbdisconnect(inp) struct inpcb *inp; { + INP_LOCK_ASSERT(inp); inp->inp_faddr.s_addr = INADDR_ANY; inp->inp_fport = 0; @@ -674,6 +682,8 @@ struct socket *so = inp->inp_socket; struct inpcbinfo *ipi = inp->inp_pcbinfo; + INP_LOCK_ASSERT(inp); + #if defined(IPSEC) || defined(FAST_IPSEC) ipsec4_delete_pcbpolicy(inp); #endif /*IPSEC*/ @@ -872,6 +882,8 @@ register struct rtentry *rt; struct rt_addrinfo info; + INP_LOCK_ASSERT(inp); + if ((rt = inp->inp_route.ro_rt)) { RT_LOCK(rt); inp->inp_route.ro_rt = NULL; @@ -900,6 +912,8 @@ register struct inpcb *inp; int errno; { + INP_LOCK_ASSERT(inp); + if (inp->inp_route.ro_rt) { RTFREE(inp->inp_route.ro_rt); inp->inp_route.ro_rt = 0; @@ -925,6 +939,7 @@ int matchwild = 3, wildcard; u_short lport = lport_arg; + INP_INFO_RLOCK_ASSERT(pcbinfo); if (!wild_okay) { struct inpcbhead *head; /* @@ -1029,6 +1044,7 @@ register struct inpcb *inp; u_short fport = fport_arg, lport = lport_arg; + INP_INFO_RLOCK_ASSERT(pcbinfo); /* * First look for an exact match. */ @@ -1104,6 +1120,7 @@ struct inpcbport *phd; u_int32_t hashkey_faddr; + INP_INFO_WLOCK_ASSERT(pcbinfo); #ifdef INET6 if (inp->inp_vflag & INP_IPV6) hashkey_faddr = inp->in6p_faddr.s6_addr32[3] /* XXX */; @@ -1152,9 +1169,12 @@ in_pcbrehash(inp) struct inpcb *inp; { + struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; struct inpcbhead *head; u_int32_t hashkey_faddr; + INP_INFO_WLOCK_ASSERT(pcbinfo); + /* XXX? INP_LOCK_ASSERT(inp); */ #ifdef INET6 if (inp->inp_vflag & INP_IPV6) hashkey_faddr = inp->in6p_faddr.s6_addr32[3] /* XXX */; @@ -1162,8 +1182,8 @@ #endif /* INET6 */ hashkey_faddr = inp->inp_faddr.s_addr; - head = &inp->inp_pcbinfo->hashbase[INP_PCBHASH(hashkey_faddr, - inp->inp_lport, inp->inp_fport, inp->inp_pcbinfo->hashmask)]; + head = &pcbinfo->hashbase[INP_PCBHASH(hashkey_faddr, + inp->inp_lport, inp->inp_fport, pcbinfo->hashmask)]; LIST_REMOVE(inp, inp_hash); LIST_INSERT_HEAD(head, inp, inp_hash); @@ -1176,7 +1196,12 @@ in_pcbremlists(inp) struct inpcb *inp; { - inp->inp_gencnt = ++inp->inp_pcbinfo->ipi_gencnt; + struct inpcbinfo *pcbinfo = inp->inp_pcbinfo; + + INP_INFO_WLOCK_ASSERT(pcbinfo); + INP_LOCK_ASSERT(inp); + + inp->inp_gencnt = ++pcbinfo->ipi_gencnt; if (inp->inp_lport) { struct inpcbport *phd = inp->inp_phd; @@ -1188,7 +1213,7 @@ } } LIST_REMOVE(inp, inp_list); - inp->inp_pcbinfo->ipi_count--; + pcbinfo->ipi_count--; } int ==== //depot/projects/netperf/sys/netinet/in_pcb.h#11 (text+ko) ==== @@ -251,6 +251,7 @@ #define INP_LOCK_DESTROY(inp) mtx_destroy(&(inp)->inp_mtx) #define INP_LOCK(inp) mtx_lock(&(inp)->inp_mtx) #define INP_UNLOCK(inp) mtx_unlock(&(inp)->inp_mtx) +#define INP_LOCK_ASSERT(inp) mtx_assert(&(inp)->inp_mtx, MA_OWNED) #define INP_INFO_LOCK_INIT(ipi, d) \ mtx_init(&(ipi)->ipi_mtx, (d), NULL, MTX_DEF | MTX_RECURSE) @@ -258,6 +259,8 @@ #define INP_INFO_WLOCK(ipi) mtx_lock(&(ipi)->ipi_mtx) #define INP_INFO_RUNLOCK(ipi) mtx_unlock(&(ipi)->ipi_mtx) #define INP_INFO_WUNLOCK(ipi) mtx_unlock(&(ipi)->ipi_mtx) +#define INP_INFO_RLOCK_ASSERT(ipi) mtx_assert(&(ipi)->ipi_mtx, MA_OWNED) +#define INP_INFO_WLOCK_ASSERT(ipi) mtx_assert(&(ipi)->ipi_mtx, MA_OWNED) #define INP_PCBHASH(faddr, lport, fport, mask) \ (((faddr) ^ ((faddr) >> 16) ^ ntohs((lport) ^ (fport))) & (mask)) From owner-p4-projects@FreeBSD.ORG Tue Nov 4 17:47:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 76D7016A4E8; Tue, 4 Nov 2003 17:47:22 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3C31016A4CF for ; Tue, 4 Nov 2003 17:47:22 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 938DC43FF3 for ; Tue, 4 Nov 2003 17:47:21 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA51lLXJ098304 for ; Tue, 4 Nov 2003 17:47:21 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA51lLbA098301 for perforce@freebsd.org; Tue, 4 Nov 2003 17:47:21 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 17:47:21 -0800 (PST) Message-Id: <200311050147.hA51lLbA098301@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 Subject: PERFORCE change 41402 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 01:47:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=41402 Change 41402 by sam@sam_ebb on 2003/11/04 17:46:53 move debug_mpsafenet stuff to net/netisr.c Affected files ... .. //depot/projects/netperf/sys/kern/subr_bus.c#10 edit Differences ... ==== //depot/projects/netperf/sys/kern/subr_bus.c#10 (text+ko) ==== @@ -2133,16 +2133,6 @@ return (BUS_RELEASE_RESOURCE(dev->parent, dev, type, rid, r)); } -/* - * XXX this is a temporary measure to allow folks to - * XXX disable INTR_MPSAFE in network drivers without - * XXX recompiling--in case of problems. - */ -int debug_mpsafenet = 1; -TUNABLE_INT("debug.mpsafenet", &debug_mpsafenet); -SYSCTL_INT(_debug, OID_AUTO, mpsafenet, CTLFLAG_RW, &debug_mpsafenet, 0, - "Enable/disable MPSAFE network support"); - int bus_setup_intr(device_t dev, struct resource *r, int flags, driver_intr_t handler, void *arg, void **cookiep) From owner-p4-projects@FreeBSD.ORG Tue Nov 4 17:54:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F6A216A4D0; Tue, 4 Nov 2003 17:54:33 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DD61A16A4CE for ; Tue, 4 Nov 2003 17:54:32 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3CD6A43FBF for ; Tue, 4 Nov 2003 17:54:32 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA51sWXJ098821 for ; Tue, 4 Nov 2003 17:54:32 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA51sVNb098818 for perforce@freebsd.org; Tue, 4 Nov 2003 17:54:31 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 17:54:31 -0800 (PST) Message-Id: <200311050154.hA51sVNb098818@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 Subject: PERFORCE change 41405 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 01:54:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=41405 Change 41405 by sam@sam_ebb on 2003/11/04 17:54:10 add inp lock assertion Affected files ... .. //depot/projects/netperf/sys/netinet/udp_usrreq.c#9 edit Differences ... ==== //depot/projects/netperf/sys/netinet/udp_usrreq.c#9 (text+ko) ==== @@ -696,6 +696,7 @@ int ipflags; u_short fport, lport; + INP_LOCK_ASSERT(inp); #ifdef MAC mac_create_mbuf_from_socket(inp->inp_socket, m); #endif From owner-p4-projects@FreeBSD.ORG Tue Nov 4 17:54:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D319216A4D7; Tue, 4 Nov 2003 17:54:33 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6D11316A4FD for ; Tue, 4 Nov 2003 17:54:33 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BAE0C43FBD for ; Tue, 4 Nov 2003 17:54:31 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA51sVXJ098815 for ; Tue, 4 Nov 2003 17:54:31 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA51sVdo098812 for perforce@freebsd.org; Tue, 4 Nov 2003 17:54:31 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 17:54:31 -0800 (PST) Message-Id: <200311050154.hA51sVdo098812@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 Subject: PERFORCE change 41404 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 01:54:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=41404 Change 41404 by sam@sam_ebb on 2003/11/04 17:53:41 o add an additional flags parameter to netisr_register to identify whether an isr thread is MPSAFE or not (those that are not have Giant acquired+released for them) o add NET_PICKUP_GIANT and NET_DROP_GIANT definitions to acquire and release Giant according to the setting of debug_mpsafenet o cleanup existing code to not explicitly acquire Giant when the netisr code does it for us o move debug_mpsafenet stuff to net/netisr.c and make the sysctl r/o since it's only really meaningful at boot Affected files ... .. //depot/projects/netperf/sys/dev/usb/usb_ethersubr.c#3 edit .. //depot/projects/netperf/sys/kern/kern_poll.c#7 edit .. //depot/projects/netperf/sys/net/if_ppp.c#6 edit .. //depot/projects/netperf/sys/net/netisr.c#6 edit .. //depot/projects/netperf/sys/net/netisr.h#2 edit .. //depot/projects/netperf/sys/netatalk/aarp.c#5 edit .. //depot/projects/netperf/sys/netatalk/ddp_input.c#3 edit .. //depot/projects/netperf/sys/netatalk/ddp_usrreq.c#2 edit .. //depot/projects/netperf/sys/netgraph/ng_base.c#3 edit .. //depot/projects/netperf/sys/netinet/if_ether.c#16 edit .. //depot/projects/netperf/sys/netinet/ip_divert.c#10 edit .. //depot/projects/netperf/sys/netinet/ip_input.c#18 edit .. //depot/projects/netperf/sys/netinet/ip_mroute.c#19 edit .. //depot/projects/netperf/sys/netinet/ip_output.c#13 edit .. //depot/projects/netperf/sys/netinet6/ip6_input.c#18 edit .. //depot/projects/netperf/sys/netipx/ipx_input.c#6 edit .. //depot/projects/netperf/sys/netnatm/natm.c#5 edit .. //depot/projects/netperf/sys/netnatm/natm_proto.c#3 edit .. //depot/projects/netperf/sys/sys/mutex.h#5 edit Differences ... ==== //depot/projects/netperf/sys/dev/usb/usb_ethersubr.c#3 (text+ko) ==== @@ -117,7 +117,7 @@ { if (mtx_inited) return; - netisr_register(NETISR_USB, (netisr_t *)usbintr, NULL); + netisr_register(NETISR_USB, (netisr_t *)usbintr, NULL, 0); mtx_init(&usbq_tx.ifq_mtx, "usbq_tx_mtx", NULL, MTX_DEF); mtx_init(&usbq_rx.ifq_mtx, "usbq_rx_mtx", NULL, MTX_DEF); mtx_inited++; ==== //depot/projects/netperf/sys/kern/kern_poll.c#7 (text+ko) ==== @@ -187,8 +187,8 @@ init_device_poll(void) { - netisr_register(NETISR_POLL, (netisr_t *)netisr_poll, NULL); - netisr_register(NETISR_POLLMORE, (netisr_t *)netisr_pollmore, NULL); + netisr_register(NETISR_POLL, (netisr_t *)netisr_poll, NULL, 0); + netisr_register(NETISR_POLLMORE, (netisr_t *)netisr_pollmore, NULL, 0); } SYSINIT(device_poll, SI_SUB_CLOCKS, SI_ORDER_MIDDLE, init_device_poll, NULL) ==== //depot/projects/netperf/sys/net/if_ppp.c#6 (text+ko) ==== @@ -244,7 +244,7 @@ case MOD_LOAD: if_clone_attach(&ppp_cloner); - netisr_register(NETISR_PPP, (netisr_t *)pppintr, NULL); + netisr_register(NETISR_PPP, (netisr_t *)pppintr, NULL, 0); /* * XXX layering violation - if_ppp can work over any lower * level transport that cares to attach to it. ==== //depot/projects/netperf/sys/net/netisr.c#6 (text+ko) ==== @@ -53,11 +53,22 @@ #include #include +/* + * XXX this is a temporary measure to allow folks to + * XXX disable Giant locking in the network code without + * XXX recompiling--in case of problems. + */ +int debug_mpsafenet = 1; +TUNABLE_INT("debug.mpsafenet", &debug_mpsafenet); +SYSCTL_INT(_debug, OID_AUTO, mpsafenet, CTLFLAG_RD, &debug_mpsafenet, 0, + "Enable/disable MPSAFE network support"); + volatile unsigned int netisr; /* scheduling bits for network */ struct netisr { netisr_t *ni_handler; struct ifqueue *ni_queue; + int ni_flags; } netisrs[32]; static void *net_ih; @@ -69,13 +80,16 @@ } void -netisr_register(int num, netisr_t *handler, struct ifqueue *inq) +netisr_register(int num, netisr_t *handler, struct ifqueue *inq, int flags) { KASSERT(!(num < 0 || num >= (sizeof(netisrs)/sizeof(*netisrs))), ("bad isr %d", num)); netisrs[num].ni_handler = handler; netisrs[num].ni_queue = inq; + if ((flags & NETISR_MPSAFE) && !debug_mpsafenet) + flags &= ~NETISR_MPSAFE; + netisrs[num].ni_flags = flags; } void @@ -166,8 +180,15 @@ * * Currently, we do a). Previously, we did c). */ - netisr_processqueue(ni); - ni->ni_handler(m); + if ((ni->ni_flags & NETISR_MPSAFE) == 0) { + mtx_lock(&Giant); + netisr_processqueue(ni); + ni->ni_handler(m); + mtx_unlock(&Giant); + } else { + netisr_processqueue(ni); + ni->ni_handler(m); + } } else { isrstat.isrs_deferred++; if (IF_HANDOFF(ni->ni_queue, m, NULL)) @@ -224,10 +245,19 @@ printf("swi_net: unregistered isr %d.\n", i); continue; } - if (ni->ni_queue == NULL) - ni->ni_handler(NULL); - else - netisr_processqueue(ni); + if ((ni->ni_flags & NETISR_MPSAFE) == 0) { + mtx_lock(&Giant); + if (ni->ni_queue == NULL) + ni->ni_handler(NULL); + else + netisr_processqueue(ni); + mtx_unlock(&Giant); + } else { + if (ni->ni_queue == NULL) + ni->ni_handler(NULL); + else + netisr_processqueue(ni); + } } } while (polling); } ==== //depot/projects/netperf/sys/net/netisr.h#2 (text+ko) ==== @@ -91,7 +91,8 @@ void netisr_dispatch(int, struct mbuf *); int netisr_queue(int, struct mbuf *); -void netisr_register(int, netisr_t *, struct ifqueue *); +#define NETISR_MPSAFE 0x0001 /* ISR does not need Giant */ +void netisr_register(int, netisr_t *, struct ifqueue *, int); void netisr_unregister(int); #endif ==== //depot/projects/netperf/sys/netatalk/aarp.c#5 (text+ko) ==== @@ -287,9 +287,7 @@ switch( ntohs( ar->ar_pro )) { case ETHERTYPE_AT : - mtx_lock(&Giant); at_aarpinput( ac, m ); - mtx_unlock(&Giant); return; default: @@ -314,6 +312,8 @@ int op; u_short net; + GIANT_REQUIRED(); + ea = mtod( m, struct ether_aarp *); /* Check to see if from my hardware address */ ==== //depot/projects/netperf/sys/netatalk/ddp_input.c#3 (text+ko) ==== @@ -39,13 +39,12 @@ void at2intr(struct mbuf *m) { + GIANT_REQUIRED(); /* * Phase 2 packet handling */ - mtx_lock(&Giant); ddp_input(m, m->m_pkthdr.rcvif, NULL, 2); - mtx_unlock(&Giant); return; } @@ -68,14 +67,14 @@ elhp = mtod(m, struct elaphdr *); m_adj(m, SZ_ELAPHDR); - mtx_lock(&Giant); + GIANT_REQUIRED(); + if (elhp->el_type == ELAP_DDPEXTEND) { ddp_input(m, m->m_pkthdr.rcvif, NULL, 1); } else { bcopy((caddr_t)elhp, (caddr_t)&elh, SZ_ELAPHDR); ddp_input(m, m->m_pkthdr.rcvif, &elh, 1); } - mtx_unlock(&Giant); return; } ==== //depot/projects/netperf/sys/netatalk/ddp_usrreq.c#2 (text+ko) ==== @@ -553,9 +553,9 @@ mtx_init(&atintrq1.ifq_mtx, "at1_inq", NULL, MTX_DEF); mtx_init(&atintrq2.ifq_mtx, "at2_inq", NULL, MTX_DEF); mtx_init(&aarpintrq.ifq_mtx, "aarp_inq", NULL, MTX_DEF); - netisr_register(NETISR_ATALK1, at1intr, &atintrq1); - netisr_register(NETISR_ATALK2, at2intr, &atintrq2); - netisr_register(NETISR_AARP, aarpintr, &aarpintrq); + netisr_register(NETISR_ATALK1, at1intr, &atintrq1, 0); + netisr_register(NETISR_ATALK2, at2intr, &atintrq2, 0); + netisr_register(NETISR_AARP, aarpintr, &aarpintrq, 0); } #if 0 ==== //depot/projects/netperf/sys/netgraph/ng_base.c#3 (text+ko) ==== @@ -2986,7 +2986,8 @@ mtx_init(&ng_idhash_mtx, "netgraph idhash mutex", NULL, 0); mtx_init(&ngq_mtx, "netgraph netisr mutex", NULL, 0); s = splimp(); - netisr_register(NETISR_NETGRAPH, (netisr_t *)ngintr, NULL); + /* XXX could use NETISR_MPSAFE but need to verify code */ + netisr_register(NETISR_NETGRAPH, (netisr_t *)ngintr, NULL, 0); splx(s); break; case MOD_UNLOAD: ==== //depot/projects/netperf/sys/netinet/if_ether.c#16 (text+ko) ==== @@ -980,6 +980,6 @@ mtx_init(&arpintrq.ifq_mtx, "arp_inq", NULL, MTX_DEF); LIST_INIT(&llinfo_arp); callout_init(&arp_callout, CALLOUT_MPSAFE); - netisr_register(NETISR_ARP, arpintr, &arpintrq); + netisr_register(NETISR_ARP, arpintr, &arpintrq, NETISR_MPSAFE); } SYSINIT(arp, SI_SUB_PROTO_DOMAIN, SI_ORDER_ANY, arp_init, 0); ==== //depot/projects/netperf/sys/netinet/ip_divert.c#10 (text+ko) ==== @@ -231,7 +231,7 @@ * the moment we're ignoring this. Once sockets are * locked this cruft can be removed. */ - mtx_lock(&Giant); /* XXX */ + NET_PICKUP_GIANT(); /* Put packet on socket queue, if any */ sa = NULL; nport = htons((u_int16_t)port); @@ -253,7 +253,7 @@ INP_UNLOCK(inp); } INP_INFO_RUNLOCK(&divcbinfo); - mtx_unlock(&Giant); /* XXX */ + NET_DROP_GIANT(); if (sa == NULL) { m_freem(m); ipstat.ips_noproto++; ==== //depot/projects/netperf/sys/netinet/ip_input.c#18 (text+ko) ==== @@ -323,7 +323,7 @@ #endif ipintrq.ifq_maxlen = ipqmaxlen; mtx_init(&ipintrq.ifq_mtx, "ip_inq", NULL, MTX_DEF); - netisr_register(NETISR_IP, ip_input, &ipintrq); + netisr_register(NETISR_IP, ip_input, &ipintrq, NETISR_MPSAFE); } /* @@ -999,7 +999,7 @@ * Switch out to protocol's input routine. */ ipstat.ips_delivered++; - mtx_lock(&Giant); /* XXX */ + NET_PICKUP_GIANT(); if (args.next_hop && ip->ip_p == IPPROTO_TCP) { /* TCP needs IPFORWARD info if available */ struct m_hdr tag; @@ -1013,7 +1013,7 @@ (struct mbuf *)&tag, hlen); } else (*inetsw[ip_protox[ip->ip_p]].pr_input)(m, hlen); - mtx_unlock(&Giant); /* XXX */ + NET_DROP_GIANT(); return; bad: m_freem(m); ==== //depot/projects/netperf/sys/netinet/ip_mroute.c#19 (text+ko) ==== @@ -1289,13 +1289,13 @@ socket_send(struct socket *s, struct mbuf *mm, struct sockaddr_in *src) { if (s) { - mtx_lock(&Giant); /* XXX no socket locking */ + NET_PICKUP_GIANT(); if (sbappendaddr(&s->so_rcv, (struct sockaddr *)src, mm, NULL) != 0) { sorwakeup(s); - mtx_unlock(&Giant); /* XXX */ + NET_DROP_GIANT(); return 0; } - mtx_unlock(&Giant); /* XXX */ + NET_DROP_GIANT(); } m_freem(mm); return -1; ==== //depot/projects/netperf/sys/netinet/ip_output.c#13 (text+ko) ==== @@ -206,6 +206,8 @@ KASSERT(ro != NULL, ("ip_output: no route, proto %d", mtod(m, struct ip *)->ip_p)); #endif + if (inp != NULL) + INP_LOCK_ASSERT(inp); if (args.rule != NULL) { /* dummynet already saw us */ ip = mtod(m, struct ip *); ==== //depot/projects/netperf/sys/netinet6/ip6_input.c#18 (text+ko) ==== @@ -196,7 +196,7 @@ #endif /* PFIL_HOOKS */ ip6intrq.ifq_maxlen = ip6qmaxlen; mtx_init(&ip6intrq.ifq_mtx, "ip6_inq", NULL, MTX_DEF); - netisr_register(NETISR_IPV6, ip6_input, &ip6intrq); + netisr_register(NETISR_IPV6, ip6_input, &ip6intrq, 0); scope6_init(); addrsel_policy_init(); nd6_init(); @@ -249,9 +249,7 @@ #endif int srcrt = 0; - mtx_assert(&Giant, MA_NOTOWNED); - mtx_lock(&Giant); - + GIANT_REQUIRED(); /* XXX for now */ #ifdef IPSEC /* * should the inner packet be considered authentic? @@ -331,7 +329,6 @@ if ((m = m_pullup(m, sizeof(struct ip6_hdr))) == NULL) { ip6stat.ip6s_toosmall++; in6_ifstat_inc(inifp, ifs6_in_hdrerr); - mtx_unlock(&Giant); return; } } @@ -353,14 +350,10 @@ * tell ip6_forward to do the right thing. */ odst = ip6->ip6_dst; - if (pfil_run_hooks(&inet6_pfil_hook, &m, m->m_pkthdr.rcvif, PFIL_IN)) { - mtx_unlock(&Giant); + if (pfil_run_hooks(&inet6_pfil_hook, &m, m->m_pkthdr.rcvif, PFIL_IN)) return; - } - if (m == NULL) { /* consumed by filter */ - mtx_unlock(&Giant); + if (m == NULL) /* consumed by filter */ return; - } ip6 = mtod(m, struct ip6_hdr *); srcrt = !IN6_ARE_ADDR_EQUAL(&odst, &ip6->ip6_dst); #endif /* PFIL_HOOKS */ @@ -378,10 +371,8 @@ m_freem(m); m = NULL; } - if (!m) { - mtx_unlock(&Giant); + if (!m) return; - } } /* @@ -641,7 +632,6 @@ #if 0 /*touches NULL pointer*/ in6_ifstat_inc(m->m_pkthdr.rcvif, ifs6_in_discard); #endif - mtx_unlock(&Giant); return; /* m have already been freed */ } @@ -665,7 +655,6 @@ icmp6_error(m, ICMP6_PARAM_PROB, ICMP6_PARAMPROB_HEADER, (caddr_t)&ip6->ip6_plen - (caddr_t)ip6); - mtx_unlock(&Giant); return; } #ifndef PULLDOWN_TEST @@ -676,7 +665,6 @@ sizeof(struct ip6_hbh)); if (hbh == NULL) { ip6stat.ip6s_tooshort++; - mtx_unlock(&Giant); return; } #endif @@ -725,17 +713,14 @@ if (ip6_mrouter && ip6_mforward(ip6, m->m_pkthdr.rcvif, m)) { ip6stat.ip6s_cantforward++; m_freem(m); - mtx_unlock(&Giant); return; } if (!ours) { m_freem(m); - mtx_unlock(&Giant); return; } } else if (!ours) { ip6_forward(m, srcrt); - mtx_unlock(&Giant); return; } @@ -794,11 +779,9 @@ #endif nxt = (*inet6sw[ip6_protox[nxt]].pr_input)(&m, &off, nxt); } - mtx_unlock(&Giant); return; bad: m_freem(m); - mtx_unlock(&Giant); } /* ==== //depot/projects/netperf/sys/netipx/ipx_input.c#6 (text+ko) ==== @@ -119,7 +119,7 @@ ipxintrq.ifq_maxlen = ipxqmaxlen; mtx_init(&ipxintrq.ifq_mtx, "ipx_inq", NULL, MTX_DEF); - netisr_register(NETISR_IPX, ipxintr, &ipxintrq); + netisr_register(NETISR_IPX, ipxintr, &ipxintrq, 0); } /* @@ -133,7 +133,8 @@ struct ipx_ifaddr *ia; int len; - mtx_lock(&Giant); + GIANT_REQUIRED(); + /* * If no IPX addresses have been set yet but the interfaces * are receiving, can't do anything with incoming packets yet. @@ -192,7 +193,6 @@ if (ipx->ipx_pt == IPXPROTO_NETBIOS) { if (ipxnetbios) { ipx_output_type20(m); - mtx_unlock(&Giant); return; } else goto bad; @@ -228,7 +228,6 @@ */ if (ipx->ipx_tc < IPX_MAXHOPS) { ipx_forward(m); - mtx_unlock(&Giant); return; } } @@ -244,7 +243,6 @@ if (ia == NULL) { ipx_forward(m); - mtx_unlock(&Giant); return; } } @@ -262,19 +260,16 @@ switch (ipx->ipx_pt) { case IPXPROTO_SPX: spx_input(m, ipxp); - mtx_unlock(&Giant); return; } ipx_input(m, ipxp); } else goto bad; - mtx_unlock(&Giant); return; bad: m_freem(m); - mtx_unlock(&Giant); } void ==== //depot/projects/netperf/sys/netnatm/natm.c#5 (text+ko) ==== @@ -685,7 +685,7 @@ struct socket *so; struct natmpcb *npcb; - mtx_lock(&Giant); + GIANT_REQUIRED(); #ifdef DIAGNOSTIC M_ASSERTPKTHDR(m); @@ -702,12 +702,12 @@ m_freem(m); if (npcb->npcb_inq == 0) FREE(npcb, M_PCB); /* done! */ - goto done; + return; } if (npcb->npcb_flags & NPCB_FREE) { m_freem(m); /* drop */ - goto done; + return; } #ifdef NEED_TO_RESTORE_IFP @@ -732,8 +732,6 @@ #endif m_freem(m); } -done: - mtx_unlock(&Giant); } /* ==== //depot/projects/netperf/sys/netnatm/natm_proto.c#3 (text+ko) ==== @@ -122,7 +122,7 @@ bzero(&natmintrq, sizeof(natmintrq)); natmintrq.ifq_maxlen = natmqmaxlen; mtx_init(&natmintrq.ifq_mtx, "natm_inq", NULL, MTX_DEF); - netisr_register(NETISR_NATM, natmintr, &natmintrq); + netisr_register(NETISR_NATM, natmintr, &natmintrq, 0); } #if defined(__FreeBSD__) ==== //depot/projects/netperf/sys/sys/mutex.h#5 (text+ko) ==== @@ -339,6 +339,27 @@ WITNESS_RESTORE(&Giant.mtx_object, Giant) #endif +/* + * Network MPSAFE temporary workarounds. When debug_mpsafenet + * is 1 the network is assumed to operate without Giant on the + * input path and protocols that require Giant must collect it + * on entry. When 0 Giant is grabbed in the network interface + * ISR's and in the netisr path and there is no need to grab + * the Giant lock. + * + * This mechanism is intended as temporary until everything of + * importance is properly locked. + */ +extern int debug_mpsafenet; /* defined in kern/subr_bus.c */ +#define NET_PICKUP_GIANT() do { \ + if (debug_mpsafenet) \ + mtx_lock(&Giant); \ +} while (0) +#define NET_DROP_GIANT() do { \ + if (debug_mpsafenet) \ + mtx_unlock(&Giant); \ +} while (0) + #define UGAR(rval) do { \ int _val = (rval); \ mtx_unlock(&Giant); \ From owner-p4-projects@FreeBSD.ORG Tue Nov 4 21:50:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3138B16A4D0; Tue, 4 Nov 2003 21:50:23 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0688A16A4CE for ; Tue, 4 Nov 2003 21:50:23 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0278A43FD7 for ; Tue, 4 Nov 2003 21:50:22 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA55oLXJ022980 for ; Tue, 4 Nov 2003 21:50:21 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA55oLWD022949 for perforce@freebsd.org; Tue, 4 Nov 2003 21:50:21 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 21:50:21 -0800 (PST) Message-Id: <200311050550.hA55oLWD022949@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 Subject: PERFORCE change 41413 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 05:50:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=41413 Change 41413 by sam@sam_ebb on 2003/11/04 21:49:51 fix merge botch Affected files ... .. //depot/projects/netperf/sys/contrib/dev/ath/freebsd/i386-elf.hal.o.uu#5 edit Differences ... ==== //depot/projects/netperf/sys/contrib/dev/ath/freebsd/i386-elf.hal.o.uu#5 (text+ko) ==== @@ -2214,5 +2214,1083 @@ M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````#`.@`````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M`````/L%`````````08```0````'!@``"`````H&```,````#P8``!0````3 +M!@``'````!<&```@````&P8``"0````?!@``*````",&```P````*08``#0` +M```O!@``0````#0&``!$````.08``$@```!`!@``3````$<&``!0````308` +M`%0```!3!@``6````%@&````0```6P8```1```!?!@``"$```&<&```,0``` +M:P8``!!```!R!@``%$```'D&```@0```?@8```"```"&!@``!(```(X&```( +M@```E@8```R```">!@``$(```*<&```4@```L`8``!B```"Y!@``'(```,(& +M```@@```QP8``"2```#.!@``*(```-8&```L@```W08``#"```#D!@``-(`` +M`.L&```X@```\@8``$"```#W!@``1(```/P&``!(@```!`<``$R````-!P`` +M4(```!4'``!4@```'0<``%B````E!P``7(```"T'``!D@```-0<``&B````] +M!P``;(```$4'``!P@```30<``("```!6!P``A(```%\'``"(@```9P<``(R` +M``!K!P``D(```'('``"4@```>P<``)B```"$!P``G(```(T'``"@@``````` +M`````````````````````````````)@``$<````(F`````````R8``"FCH0) +M$)@```#@,CT4F```:P<``!R8````````()@````"`@(DF```#@X``"B8```! +M`@(*+)@``/QO`P`PF````````#28```.#@``.)@```<````\F`````$"`$"8 +M`````&.)1)@``)P6)@```0`````F0````````29````````")D````````, +MF0````"``!"9```#`````)L````````$FP``(`````B;```0````#)L``#`` +M```0FP``"````!2;```H````&)L``"@````)L``"T```!\FP```P`` +M`(";```C````A)L``!,```"(FP``,P```(R;```+````D)L``"L```"4FP`` +M!P```)B;```G````G)L``!<```"@FP``-P```*2;```/````J)L``"\```"L +MFP``+P```+";```O````M)L``"\```"XFP``+P```+R;```O````P)L``"\` +M``#$FP``+P```,B;```O````S)L``"\```#0FP``+P```-2;```O````V)L` +M`"\```#Z&`!INA@`:;H8`%"8``#@ +MM"@,X+0H#."T*`S@M"@,6)@``"X-@'XN#8!^+@W`?BX-@'Y73HQ7ETW,6"8```0O0``$+T``#B]```0O0``9)@```#.`0``S@$``,X! +M``#.`0`4F0``$"<``!`G``!\%0``$"<``!B9``"0`0``D`$``(0```"0`0`` +M1)D``"`0X&\@$.!O(`G@;R`0X&^`H0``_Q3_!?\4_P7_%/\%_QG_!=28```0 +M````%````!`````0``````````P`````````*````)R)@```P`````F0`````` +M``29````````")D````````,F0````"``!"9```!````')D``"H)```@F0`` +M`````"29```%B@4`*)D```$````LF0```````#"9````````-)D````````X +MF0```````#R9```_````0)D```0```!(F0```````$R9````````4)D````` +M``!4F0``3/%075B9```8````7)D``(YJ2P"$H0``_P7_!HBA``#_!_\'C*$` +M`/\(_PB0H0``_PG_"92A``#_"O\*F*$``/\+_PN)H``,H!```.````?)H```H```!.````@)H``$H```".````A)H``(H```!> +M`0``B)H``+H!``">`0``C)H``/H!``#>`0``D)H``#H````)````E)H``'H` +M``!)````F)H``(8!``")````G)H``,8!``!Y`0``H)H```8```"Y`0``I)H` +M`$8```#Y`0``J)H``(8````Y````K)H``,8```!Y````L)H``,8```"Y```` +MM)H``,8```"]`0``N)H``,8```#]`0``O)H``,8````]````P)H``,8```!] +M````Q)H``,8```"]````R)H``,8```#]````S)H``,8```#]````T)H``,8` +M``#]````U)H``,8```#]````V)H``,8```#]````W)H``,8```#]````X)H` +M`,8```#]````Y)H``,8```#]````Z)H``,8```#]````[)H``,8```#]```` +M\)H``,8```#]````])H``,8```#]````^)H``,8```#]````_)H``,8```#] +M`````0```$8```!@`````0```$8```!A`````0```$8```!B`````0```$8` +M``!C`````0```$8```!D`````0```$8```!E`````0```$8```!F`````0`` +M`$8```!G`````0```$8```!H`````0```$8```!I`````0```$8```!J```` +M`0```$8```!K`````0```$8```!L`````0```$8```!T`````0```$8```!T +M`````0```$8```!T`````0```$8```!T`````0```$8```!T`````0```$8` +M``!T`````0```$8```!T`````0```$8```!T`````0```$8```!U`````0`` +M`$8```!V`````0```$8```!W`````0```$8```!X`````0```$8```!Y```` +M`0```$8```!Z`````0```$8```![`````0```$8```!\`````0```$8```!] +M`````0```$8```!^`````0```$8```!_`````0```$8```"``````0```$0` +M``!\`````0```$8```"(`````0```$8```",`````0```$8```"0`````0`` +M`$8```"4`````0```$8```"8`````0```$8```"<`````0```$8```"@```` +M`0```$8```"D`````0```$8```"H`````0```$8```"L`````0```$8```"P +M`````0```$8```"T``````('`````P`&``D`/P```*3-``"DS0``PLT``,+- +M``#@S0``X,T``/[-``#^S0`````````````)````!`````0``0`!``$`!@`` +M`$9'.``````````````````$`````0`!``0```!&1S<````````````````` +M`P`!``$``0`#````1DH``(3J +M```)ZP``````````````````%!!4&0`Q$`,````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````````````````"0^@`````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M`````````````````````````````````````&P)CPFT"0@);`FT"0`````` +M`````````````````````````"`````@````0````$````````8````&```` +M!@#V"@``"````/D*```,````_@H``!0````""P``)`````8+```P````#`L` +M`#0````2"P``0````!<+``!$````'`L``$@````C"P``3````"H+``!0```` +M,`L``%0````V"P``6````#X+```P$```10L``'`0``!,"P``L!```%,+``#P +M$```6@L``#`2``!B"P`` +M`0`X'@$`4!X!`&`>`0!`'@$`8!X!`&`>`0!@'@$`1QX!`&`>`0!@'@$`8!X! +M`&`>`0!@'@$`8!X!`&`>`0!@'@$`8!X!`&`>`0!@'@$`8!X!`&`>`0!@'@$` +M8!X!`&`>`0!@'@$`8!X!`&`>`0!@'@$`8!X!`&`>`0!@'@$`5QX!```````P +M````%0```!4````5````%0```!4```!`$```#_PO``_\+P`?_"\`#_PO``_\ +M+P!$$```#_PO``_\+P`?_"\`#_PO``_\+P!($```#_PO``_\+P`?_"\`#_PO +M``_\+P!,$```#_PO``_\+P`?_"\`#_PO``_\+P!0$```#_PO``_\+P`?_"\` +M#_PO``_\+P!4$```#_PO``_\+P`?_"\`#_PO``_\+P!8$```#_PO``_\+P`? +M_"\`#_PO``_\+P!<$```#_PO``_\+P`?_"\`#_PO``_\+P!@$```#_PO``_\ +M+P`?_"\`#_PO``_\+P!D$```#_PO``_\+P`?_"\`#_PO``_\+P`P$```,`(` +M`.`!``"P````8`$``.`!``!P$```:`$``.`!``"X`0``C`$``.`!``"P$``` +M8`X``(`1```<'P``.#X``(`1``#P$```X*```&A``0"`6```X+```&A``0`4 +M@```Z`/H`^`&X`8@!"`$0`A`".`&X`8$F`````````,```````````````,` +M```@F`````("`@`"`@(``@$"``("`@`"`@(TF```#@X```X.```.#@``#@X` +M``X.```XF```!P````<````+````"P````L```!$F```'!9R$R4<"TZ`W@M.@-X+3H#>"TZ`U8F```+@V`?BX-@'XN +M3>A^+DWH?BX-@'Y@F```$)T``!"=```8G0``$)T``!"=``!DF````,X!``#. +M`0``S@$``,X!``#.`0!HF```D$&:0)!!FD"009I`D$&:0)!!FD`8F0``N`$` +M`+@!``"$````"`$``+@!```DF0``!8H%$`6*!1`%B@40!8H%$`6*!1!$F0`` +M(!"X_R`0N/\@#;C_(!"X_R`0N/^`H0``_Q3_$/\4_Q#_$/\0_QG_$/\9_Q`P +MH@``````````````````"`$````````````````````````````````````` +M```<@```IX^-$L\/B`F5#^`$JX^-$L\/B`DDF```#@X```X.```'!P``#@X` +M``X.```HF````0`""@$``@H``0$%`0`""@$``@I(F```6MH8`%K:&`!IRA@` +M:9C9C^UHAGOM:(9S[0B&<^T(AG/M`,H@``0`$L9$`!+&1@P4)D8,%" +M9&#!0F0```````````P`````````-`````4```!``````````$0````(```` +M2`````@```!,````$````%``````````5````!\`````"`````````0(```` +M````"`@````````,"````````!`(````````%`@````````8"````````!P( +M````````(`@````````D"````````#`2````````!$```````"X$0`` +M`````/@1````````.!(```````!X$@```````+@2````````^!(````````X +M$P```````'@3````````N!,```````#X$P```````#@4````````>!0````` +M``"X%````````/@4````````.!4```````!X%0```````+@5````````^!4` +M```````X%@```````'@6````````N!8```````#X%@```````#@7```````` +M>!<```````"X%P```````/@7````````/!````````!\$````````+P0```` +M````_!`````````\$0```````'P1````````O!$```````#\$0```````#P2 +M````````?!(```````"\$@```````/P2````````/!,```````!\$P`````` +M`+P3````````_!,````````\%````````'P4````````!(`````````(@``` +M``````R`````````&(`````````@@````````"2`````````*(```#`````L +M@```__\'`#"```#___\!-(```#$````X@````````#R`````````2(`````` +M``!4@````````%B`````````7(```/_'__^`@````````(2`````````B(`` +M``````",@````````)"`````````E(````````"8@````````,"````:,((J +MQ(```.`!W`7(@```$"=`'\R``````/0!T(```!P>``#4@```JJH"`-B```!5 +M50`"W(````````#@@```_____^2```#__P``Z(````````#L@````````/"` +M````````](````````#X@````````/R```"(`````(<````````$AP``C``` +M``B'``#D````#(<``-4"```0AP```````!2'````````&(<``*`````(<``*(```!\AP````````"!```"``$`!($```$````(@0``P`````R!```` +M````$($``&@!```4@0```````,"'`````0(#Q(<```0%!@?(AP``"`D*"\R' +M```,#0X/T(<``!`1$A/4AP``%!46%]B'```8&1H;W(<``!P='A_@AP````$" +M`^2'```$!08'Z(<```@)"@OLAP``#`T.#_"'```0$1(3](<``!05%A?XAP`` +M&!D:&_R'```<'1X?")@````````,F```&8Z$K1"8````X"A]%)@``&N?"IP< +MF````````"R8``#^+P(`/)@````!`@!`F```>@%J($R8```\88025)@``%D( +M````F0````````29````````")D````````,F0````"``!"9```!````')D` +M`"H)```@F0`````0!2B9```!````+)D```0````TF0``(B`?'CB9```-#`L* +M/)D``#\```!`F0``!````$B9```2LH"25)D``$SQ4%U8F0``_P```%R9``". +M:DL`:)D``,X#``!PF0``%;4O&729````````>)D```$```!\F0```````(2A +M``#_$/\0B*$``/\0_Q",H0``_Q#_$)"A``#_$/\0E*$``/\0_Q"8H0``_Q#_ +M$)RA``#_$/\0H*$``/\0_Q"DH0``_Q#_$*BA``#_$/\0K*$``/\0_Q"PH0`` +M_Q#_$+2A``#_$/\0N*$``/\0_Q"\H0``_Q#_$,"A``#_$/\0Q*$``/\0_Q#( +MH0``_Q#_$,RA``#_$/\0T*$``/\0_Q#4H0``_Q#_$-BA``#_$/\0W*$``/\0 +M_Q#@H0``_Q#_$.2A``#_$/\0Z*$``/\0_Q#LH0``_Q#_$/"A``#_$/\0]*$` +M`/\0_Q#XH0``_Q#_$/RA``#_$/\0!*(````````0H@``,Z.``!2B```0;"`` +M&*(``&!`G``)L```4```!\FP``)0```(";```5 +M````A)L``#4```"(FP``#0```)";```#````E)L``",```"8FP``$P```*"; +M```+````I)L``"L```"HFP``*P```*R;```K````L)L``"L```"TFP``*P`` +M`+B;```K````O)L``"L```#`FP``*P```,2;```K````R)L``"L```#,FP`` +M*P```-";```K````U)L``"L```#8FP``*P```-R;```K````X)L``"L```#D +MFP``*P```.B;```K````[)L``"L```#PFP``*P```/2;```K````^)L```(` +M``#\FP``%@```````````````````````````````````#"9``""2```!)L` +M``$````(FP```@````R;```#````$)L```0````4FP``!0```!B;```(```` +M')L```D````@FP``"@```"2;```+````+)L```T````PFP``$````#2;```1 +M````/)L``!,```!`FP``%````$2;```5````2)L``!@```!,FP``&0```%"; +M```:````5)L``!L```!8FP``'````%R;```=````8)L``"````!HFP``(@`` +M`&R;```C````<)L``"0```!TFP``)0```'B;```H````?)L``"D```"`FP`` +M*@```(2;```K````B)L``"P```"0FP``,````)2;```Q````F)L``#(```"@ +MFP``-````*2;```U````J)L``#4```"LFP``-0```+";```U````M)L``#4` +M``"XFP``-0```+R;```U````P)L``#4```#$FP``-0```,B;```U````S)L` +M`#4```#0FP``-0```-2;```U````V)L``#4```#)H``,H!```.````?)H` +M``H```!.````@)H``$H```".````A)H``(H```!>`0``B)H``+H!``">`0`` +MC)H``/H!``#>`0``D)H``#H````)````E)H``'H```!)````F)H``(8!``") +M````G)H``,8!``!Y`0``H)H```8```"Y`0``I)H``$8```#Y`0``J)H``(8` +M```Y````K)H``,8```!Y````L)H``,8```"Y````M)H``,8```"]`0``N)H` +M`,8```#]`0``O)H``,8````]````P)H``,8```!]````Q)H``,8```"]```` +MR)H``,8```#]````S)H``,8```#]````T)H``,8```#]````U)H``,8```#] +M````V)H``,8```#]````W)H``,8```#]````X)H``,8```#]````Y)H``,8` +M``#]````Z)H``,8```#]````[)H``,8```#]````\)H``,8```#]````])H` +M`,8```#]````^)H``,8```#]````_)H``,8```#]`````)H```<````'```` +M!)H``$<```!'````")H``(<```"'````#)H``*`!``"@`0``$)H``.`!``#@ +M`0``%)H``"`````@````&)H``&````!@````')H``*$!``"A`0``()H``.$! +M``#A`0``))H``"$````A````*)H``&$```!A````+)H``&(!``!B`0``,)H` +M`*(!``"B`0``-)H``.(!``#B`0``.)H``"(````B````/)H``&(```!B```` +M0)H``&,!``!C`0``1)H``*,!``"C`0``2)H``.,!``#C`0``3)H``",````C +M````4)H``&,```!C````5)H``(0!``"$`0``6)H``,0!``#$`0``7)H```0` +M```$````8)H``.H!```+````9)H``"H```!+````:)H``&H```"+````;)H` +M`*H```"L`0``<)H``*L!``#L`0``=)H``.L!```L````>)H``"L````2```` +M?)H``&L```!2````@)H``*L```"2````A)H``*P!``"3`0``B)H``.P!``#3 +M`0``C)H``"P````3````D)H``#H```!3````E)H``'H```"3````F)H``+H` +M``"4`0``G)H``+L!``#4`0``H)H``/L!```4````I)H``#L````Z````J)H` +M`'L```!Z````K)H``+L```"Z````L)H``+P!``"[`0``M)H``/P!``#[`0`` +MN)H``#P````[````O)H``'P```![````P)H``+P```"[````Q)H``/P```"\ +M`0``R)H``/P```#\`0``S)H``/P````\````T)H``/P```!\````U)H``/P` +M``"\````V)H``/P```#\````W)H``/P```#\````X)H``/P```#\````Y)H` +M`/P```#\````Z)H``/P```#\````[)H``/P```#\````\)H``/P```#\```` +M])H``/P```#\````^)H``/P```#\````_)H``/P```#\````U)@``"````#4 +MF```(````-28```0````%````!`````0````%````-"8```(!`8#"`0'`P@$ +M!@,(!`8#"`0'`]B8``!H$&``:!!@`&@08`!H$&``:!!@`-R8``#`P*``P,"@ +M`,#`X`#`P.``P,#@``````````````````````""`@)3`T>"`E,#AX("`E,#1X("4P.'@@("4P-'@@)3`X>"`@)3`T>"`E +M,#AX"@`E,#1X("4P.'@@("4P-'@@)3`X>"`@)3`T>"`E,#AX("`E,#1X("4P +M.'@*`"4P-'@@)3`X>"`@)3`T>"`E,#AX("`E,#1X("4P.'@*`"4P-'@@)3`X +M>"`@)3`T>"`E,#AX"@`E,#1X("4P.'@*`"4M.',@)3`X>"`@)2TX`H`)2TX`H`)2TX`H` +M1$(`1$5"54<`3D$`3D]?0T]53E1265]3150`04P`04Q"04Y)00!$6@!!3$=% +M4DE!`$%2`$%21T5.5$E.00!!30!!4DU%3DE!`$%5`$%54U1204Q)00!!5`!! +M55-44DE!`$%:`$%:15)"04E*04X`0D@`0D%(4D%)3@!"60!"14Q!4E53`$)% +M`$)%3$=)54T`0EH`0D5,25I%`$)/`$)/3%9)00!"4@!"4D%:24P`0DX`0E)5 +M3D5)($1!4E534T%,04T`0D<`0E5,1T%224$`0T$`0T%.041!`$-,`$-(24Q% +M`$-.`$-(24Y!`$-/`$-/3$]-0DE!`$-2`$-/4U1!(%))0T$`2%(`0U)/051) +M00!#60!#65!255,`0UH`0UI%0T@@4D5054),24,`1$L`1$5.34%22P!$3P!$ +M3TU)3DE#04X@4D5054),24,`14,`14-5041/4@!%1P!%1UE05`!%10!%4U1/ +M3DE!`$9)`$9)3DQ!3D0`1E(`1E)!3D-%`$=%`$=%3U)'24$`1$4`1T5234%. +M60!'4@!'4D5%0T4`1U0`1U5!5$5-04Q!`$A+`$A/3D<@2T].1P!(50!(54Y' +M05)9`$E3`$E#14Q!3D0`24X`24Y$24$`240`24Y$3TY%4TE!`$E2`$E204X` +M244`25)%3$%.1`!)3`!)4U)!14P`250`251!3%D`2E``2D%004X`2C,`2D%0 +M04XS`$I/`$I/4D1!3@!+6@!+05I!2TA35$%.`$M0`$Y/4E1(($M/4D5!`$M2 +M`$M/4D5!(%)%4%5"3$E#`$LR`$M/4D5!(%)%4%5"3$E#,@!+5P!+55=!250` +M3%8`3$%45DE!`$Q"`$Q%0D%.3TX`3$D`3$E%0TA414Y35$5)3@!,5`!,251( +M54%.24$`3%4`3%5814U"3U521P!-3P!-04-!50!-2P!-04-%1$].24$`35D` +M34%,05E324$`35@`345824-/`$U#`$U/3D%#3P!-00!-3U)/0T-/`$Y,`$Y% +M5$A%4DQ!3D13`$Y:`$Y%5R!:14%,04Y$`$Y/`$Y/4E=!60!/30!/34%.`%!+ +M`%!!2TE35$%.`%!!`%!!3D%-00!010!015)5`%!(`%!(24Q)4%!)3D53`%!, +M`%!/3$%.1`!05`!03U)454=!3`!04@!054525$\@4DE#3P!100!1051!4@!2 +M3P!23TU!3DE!`%)5`%)54U-)00!300!3055$22!!4D%"24$`4T<`4TE.1T%0 +M3U)%`%-+`%-,3U9!2R!215!50DQ)0P!320!33$]614Y)00!:00!33U542"!! +M1E))0T$`15,`4U!!24X`4T4`4U=%1$5.`$-(`%-7251:15),04Y$`%-9`%-9 +M4DE!`%17`%1!25=!3@!42`!42$%)3$%.1`!44@!455)+15D`54$`54M204E. +M10!!10!53DE4140@05)!0B!%34E2051%4P!'0@!53DE4140@2TE.1T1/30!5 +M4P!53DE4140@4U1!5$53`%59`%5254=505D`5D4`5D5.15I514Q!`%9.`%9) +M150@3D%-`%181%`P`%181%`Q`$-2`%)81%``0T9'`$E34@!)35(`2452`$)# +M4@!46$-&1P!26$-&1P!-24)#`%1/4%,`4EA.3T92`%183D]&4@!24$=43P!2 +M1D-.5`!-25-#`%)#`%-#4@!)3E1014Y$`%-&4@!00TE#1D<`1U!)3T-2`%-2 +M158`4U1!7TE$,`!35$%?240Q`$)34U])1#``0E-37TE$,0!33$]47U1)30!4 +M24U%7T]55`!24U-)7U1(4@!2151265],30!54T5#`$)%04-/3@!#1E!?4$52 +M`%1)3452,`!424U%4C$`5$E-15(R`%1)3452,P!)1E,P`$E&4S$`0T907T15 +M4@!26%]&24Q44@!-0T%35%\P`$U#05-47S$`5%A-05-+,`!46$U!4TLQ`%12 +M24=,158`1$E!1U]35P!44T9?3#,R`%131E]5,S(`3$%35%]44U0`4D544EE# +M3E0`0D%#2T]&1@!.058`4E137T]+`%)44U]&04E,`$%#2U]&04E,`$9#4U]& +M04E,`$)%04-?0TY4``IA"!3,B`E +M,#AX(%,S("4P.'@@4S0@)3`X>`H`25-2.B`E,#AX(%,P("4P.'@@4S$@)3`X +M>"!3,B`E,#AX(%,S("4P.'@@4S0@)3`X>`H`45]21%E424U32$0`45]46$0` +M45]46$4`)2TX`H`45]/3D53 +M2$]405)-7U-#("4P.'@@(%%?3TY%4TA/5$%235]#0R`E,#AX"@!16R5U72!4 +M6$10("4P.'@@0T)2("4P.'@@4D195"`E,#AX($U)4T,@)3`X>"!35%,@)3`X +M>`H`1%LE=5T@34%32R`E,#AX($E&4R`E,#AX(%)44ED@)3`X>"!#2$Y4("4P +M.'@@34E30R`E,#9X(%-%42`E,#-X"@!$6R5U72!834E4($U!4TL@)3`X>"`E +M,#AX("4P.'@@)3`X>`H`)7,Z($]U="!O9B!S<&%C92!I;B!!3DD@=&%B;&4@ +M9F]R(&-H86YN96P@)74O,'@E>"$*`$-2`%)81%``0T9'`$E%4@!46$-&1P!2 +M6$-&1P!-24)#`%1/4%,`4EA.4%1/`%183E!43P!24$=43P!24$-.5`!-04-- +M25-#`$1?4TE&4P!$7U-,3U0`1%]%2493`$1?34E30P!$7T900U1,`$1?5%A0 +M4T4`4D,`4T-2`$E.5%!%3D0`4T92`%!#24-&1P!'4$E/0U(`4U)%5@!35$%? +M240P`%-405])1#$`0E-37TE$,`!"4U-?240Q`%-,3U1?5$E-`%1)345?3U54 +M`%)34TE?5$A2`%5314,`0D5!0T].`$-&4%]015(`5$E-15(P`%1)3452,0!4 +M24U%4C(`5$E-15(S`$-&4%]$55(`4EA?1DE,5%(`34-!4U1?,`!-0T%35%\Q +M`$1)04=?4U<`5%-&7TPS,@!44T9?53,R`%135%]!1$%#`$1%1E]!3E0`3$%3 +M5%]44U0`3D%6`%)44U]/2P!25%-?1D%)3`!!0TM?1D%)3`!&0U-?1D%)3`!" +M14%#7T-.5`!33$5%4#$`4TQ%15`R`%-,1450,P!"4U--4TM,`$)34TU32U4` +M5%!#`%!(65]%4E(`5$9#3E0`4D9#3E0`4D-#3E0`0T-#3E0`"F%R-3(Q,B!R +M96=I"!3 +M,B`E,#AX(%,S("4P.'@@4S0@)3`X>`H`25-2.B`E,#AX(%,P("4P.'@@4S$@ +M)3`X>"!3,B`E,#AX(%,S("4P.'@@4S0@)3`X>`H`45]21%E424U32$0`45]4 +M6$0`45]46$4`)2TX`H`45]/ +M3D532$]405)-7U-#("4P.'@@(%%?3TY%4TA/5$%235]#0R`E,#AX"@!16R5U +M72!46$10("4P.'@@0T)2("4P.'@@4D195"`E,#AX($U)4T,@)3`X>"!35%,@ +M)3`X>`H`1%LE=5T@34%32R`E,#AX($E&4R`E,#AX(%)44ED@)3`X>"!#2$Y4 +M("4P.'@@34E30R`E,#9X(%-%42`E,#-X"@!$6R5U72!834E4($U!4TL@)3`X +M>"`E,#AX("4P.'@@)3`X>`H`3F\@65T +M(0H``````````````````````````````````#`N.2XU+C$W`````(P4H!2T +M%,@4/!10%&04>!0``#(41A1:%&X4``!L"84)G@F*":@)``!L"84)G@F*"0`` +M;`F%"9X)B@D``&P)A0F>"8H)``!Q%H46F1:M%L$6``!:%((4JA0``(`6J!8` +M`'P5D!6D%;@5S!7@%?05"!8<%C`61!8``'$)=@E["8`)CPF4"9D)HPD``'$) +M=@E["8`)CPF4"9D)``!Q"78)>PF`"8\)E`F9"0``<0EV"7L)@`F/"90)F0D` +M`+0)``"%"0``/!10%&04>!0```$````,`````0```!X````$````*`````0` +M```T````!````#X````$````2`````$```!2`````@```%X````"````9@`` +M``$```!L````!````(0````$````E@````0```"F````!````+8````$```` +MQ@```"````#*````,A1&%%H4;A0``%H4@A2J%(`6J!8``'P5D!6D%;@5S!7@ +M%?05"!8<%C`61!8`````````````````````````````````````"``````` +M``````````````````````````````````````$"6UT86(`+G-T@X``````````````0`````````````````````````````````` +M`````````````P`!``````````````````,``P`````````````````#``4` +M`````````````````P`&``````````````````,`"``````````````````# +M``D``0```#"$``"N`0``$@`!``P```"P<0``"@```!(``0`7````(`@!`)4` +M```2``$`(@```,`]```%`@``$@`!`"T```!D5P``#````!$``P`X````;`H` +M``0````1``8`0P```*`!```B`0``$0`&`$X```#`'P$`3@```!(``0!9```` +M4$$``$$````2``$`9````*`Q``!)````$@`!`&\```#@$0$`)0```!(``0!Z +M````X`$!``H````2``$`A0```'@*```$````$0`&`)````#@X@``N@```!(` +M`0";````?`H```0````1``8`I@```-#5``#3````$@`!`+$```#PO0``Q``` +M`!(``0"\````0*0``!H````2``$`QP```/!U``!(````$@`!`-(````0'@$` +M"@```!(``0#=````0.(```H````2``$`Z````#```0`I````$@`!`/,```"@ +MB@``"@```!(``0#^````4&L!`'0````2``$`"0$``,!Z```*````$@`!`!0! +M``!@I```'0```!(``0`?`0``@`H``"(!```1``8`*@$``"!I`0`*````$@`! +M`#4!``"`=P``U0```!(``0!``0``,`(``#4````2``$`2P$````````````` +M$````&P!```P2```80```!(``0!W`0``$-\``+\````2``$`@@$``(!+```U +M````$@`!`(T!``"@DP``<0```!(``0"8`0``T'H``&4````2``$`HP$``-`3 +M`0`^````$@`!`*X!``!@,`$`60```!(``0"Y`0``0$$```H````2``$`Q`$` +M`$`S``!(!P``$@`!`,\!``!@F0``0`$``!(``0#:`0``4`T!`&X````2``$` +MY0$``,`!``!D````$@`!`/`!```@7`$`TP```!(``0#[`0```!X!``H````2 +M``$`!@(``.`)`0!G````$@`!`!$"``!@V```!0```!(``0`<`@``L$H``#T` +M```2``$`)P(```"+```G`0``$@`!`#("``!@D0``QP```!(``0`]`@``8`@` +M`#@"```2``$`2`(``)!@`0#%````$@`!`%,"``!08P``^@,``!(``0!>`@`` +MH$T```4````2``$`:0(``-"#```%````$@`!`'0"``"`<@``;P,``!(``0!_ +M`@``T````.H````2``$`C@(`````````````$````)4"```@'@$`7P```!(` +M`0"@`@```)D``",````2``$`JP(``*`>`0`=````$@`!`+8"```PE@``(``` +M`!(``0#!`@```-D``,$````2``$`S`(``*"T``!I````$@`!`-<"``"0.@`` +M%0```!(``0#B`@``\$H``(4````2``$`[0(``'`"```J`0``$@`!``,#``!` +M>P``HP```!(``0`.`P``\(@``"@````2``$`&0,``$`P`0`=````$@`!`"0# +M``!0!`$`*`(``!(``0`O`P``X``!``X````2``$`.@,``-!"``#7````$@`! +M`$4#`````````````!````!7`P``,(8``(P````2``$`8@,``'!,```*```` +M$@`!`&T#````Y```30```!(``0!X`P``P)@```4````2``$`@P,``$`"`0`G +M`0``$@`!`(X#``"PF```!0```!(``0"9`P``H$<``(D````2``$`I`,``,"0 +M``"5````$@`!`*\#``!PV```CP```!(``0"Z`P``4/,``(0%```2``$`Q0,` +M`(`1`0`*````$@`!`-`#```@(0$`P````!(``0#;`P``,&D!`%\!```2``$` +MY@,``*"C```*````$@`!`/$#``#0IP``4@```!(``0#\`P``($<``#\````2 +M``$`!P0``.#X```C````$@`!`!($``#`W@``20```!(``0`=!```L$T```4` +M```2``$`*`0``/`=`0`*````$@`!`#,$`````````````!````!`!```,'(` +M`$0````2``$`2P0``'!5``!2````$@`!`%8$``!0#@$`M@```!(``0!A!``` +M$`0``'D````2``$`<@0``*!B`0#M`P``$@`!`'T$``#`2P``K````!(``0"( +M!```L'@```T!```2``$`DP0``!`2`0`C````$@`!`)X$`````````````!`` +M``"D!```8%0``,`````2``$`KP0``+`'`0`/````$@`!`+H$``"PB@``00`` +M`!(``0#%!```P+<``)T!```2``$`T`0``.!P``#/````$@`!`-L$``#`"P`` +M(@$``!$`!@#F!````",!`%(````2``$`\00``."%``!,````$@`!`/P$```P +MJ```U0```!(``0`'!0``D)@```H````2``$`$@4``-"8```E````$@`!`!T% +M``!@80$`P0```!(``0`H!0``,.4``*`&```2``$`,P4``'!````.````$@`! +M`#X%``#`A@``*`(``!(``0!)!0``T/P``$P````2``$`5`4``(`+`0!I```` +M$@`!`%\%``"@#P$`50```!(``0!J!0````T``"(!```1``8`=04``*#@``#= +M````$@`!`(`%``"`3```.P```!(``0"+!0``P'$```4````2``$`E@4``("D +M```I````$@`!`*$%``#050``)`$``!(``0"L!0``\`L!`%@!```2``$`MP4` +M`(`\``"H````$@`!`,(%``"@XP``5P```!(``0#-!0``4&$``"4````2``$` +MV`4``.!1```=````$@`!`.,%``#02```2`$``!(``0#N!0``0%4``#`````2 +M``$`^04``,`(`0"8````$@`!``0&``#`,@$`N`$``!(``0`/!@``4&@!`,T` +M```2``$`&@8``"!1``!-````$@`!`"4&``"`X0``"@```!(``0`P!@``(`0` +M`"(!```1``8`.P8``#"8```*````$@`!`$8&``"P0P``*`(``!(``0!1!@`` +M(%4``"`````2``$`7`8`````````````$````'P&``!@[```J````!(``0"' +M!@```%<``)<)```2``$`D@8````````)````$0`&`*(&``"0!```<@```!(` +M`0"S!@``,)(``%\````2``$`O@8``.`-`0!I````$@`!`,D&``"@F```"@`` +M`!(``0#4!@``D*,```X````2``$`WP8``#",``#7````$@`!`.H&``"`$@$` +M0`$``!(``0#U!@``P%````H````2``$```<`````````````$`````\'```` +MDP``7@```!(``0`:!P``L!T!`"8````2``$`)0<``(`=`0`H````$@`!`#`' +M```@_0``C````!(``0`[!P``H&```*@````2``$`1@<``)`1`0!.````$@`! +M`%$'``#P``$`X0```!(``0!0``"@```!(``0">!P```%,``$X````2``$`J0<``""0 +M``!!````$@`!`+0'``!@(`$`P````!(``0"_!P``P$P``$T````2``$`R@<` +M`)"2``!F````$@`!`-4'``"0E```*`$``!(``0#@!P``($H``&X````2``$` +MZP<``-!F`0!K````$@`!`/8'``#`!P$`5````!(``0`!"```8`4``"(!```1 +M``8`#`@``("G```@````$@`!`!<(```@B0``>P```!(``0`B"```H````"T` +M```2``$`,`@``*#R```%````$@`!`#L(````1P``%0```!(``0!&"```X`(` +M`"(!```1``8`40@``,!-``!-````$@`!`%P(``#`I@``P````!(``0!G"``` +M```````````0````;0@``*")```.````$@`!`'@(``#@&@$`!0```!(``0"# +M"```\`$!`$$````2``$`C@@``!!0``"-````$@`!`)D(```0[0``/0(``!(` +M`0"D"```X!T!``H````2``$`KP@``*!0```.````$@`!`+H(``!0'P$`;0`` +M`!(``0#%"```4"T``',````2``$`T`@``)!F`0`V````$@`!`-L(````I@`` +MP````!(``0#F"```\!X!`%,````2``$`\0@``-#?```^````$@`!`/P(``"P +MB0``X0```!(``0`'"0``4.(``(T````2``$`$@D``*`&```B`0``$0`&`!T) +M``"P4@``3@```!(``0`H"0```$```&X````2``$`,PD``'!1``!(````$@`! +M`#X)``!`V@``/00``!(``0!)"0``P*,```H````2``$`5`D``+#]``!^`@`` +M$@`!`%\)``"@IP``*````!(``0!J"0``@"\``$`````2``$`=0D``/`*`0", +M````$@`!`(`)``"PHP``"@```!(``0"+"0``8`D!`'H````2``$`E@D``,!1 +M```:````$@`!`*$)``!PD```#P```!(``0"L"0``<`H```0````1``8`MPD` +M`$"8``!%````$@`!`,()``#@6@$`0@```!(``0#-"0``H`,``&$````2``$` +MV`D``&`'`0!!````$@`!`.,)``!`Q@``H`$``!(``0#N"0``T#\``"@````2 +M``$`^0D``)!J`0"V````$@`!``0*``!@1P``-0```!(``0`/"@``@`4``-@" +M```2``$`&@H``'`#`0#7````$@`!`"4*``"`EP``K````!(``0`P"@``D.$` +M`*\````2``$`.PH`````````````$````%L*```0!0``9````!(``0!F"@`` +M$$8``'X````2``$`<0H``)!&``!!````$@`!`'P*``"P4```"@```!(``0"' +M"@``@)```#\````2``$`D@H``*!!```G`0``$@`!`)T*```@E```:0```!(` +M`0"H"@``,!4!`+`%```2``$`LPH``#"9```H````$@`!`+X*``!@(P$`^@`` +M`!(``0#)"@``X$4``"D````2``$`U`H`````````````$````.(*``!`CP`` +M*0```!(``0#M"@``L*4``$@````2``$`^`H``"!B```O`0``$@`!``,+``!0 +M4P``2````!(``0`."P``@`8!`"D````2``$`&0L``,`>`0`I````$@`!`"0+ +M``!@DP``-0```!(``0`O"P``L`H!`#4````2``$`.@L``!!-``!J````$@`! +M`$4+``"02@``(````!(``0!0"P``X*,``%\````2``$`6PL``%"6```]```` +M$@`!`&8+``#0>0``YP```!(``0!Q"P``<(\``*$````2``$`?`L``*!(```L +M````$@`!`(<+``#0<0``8````!(``0"2"P``0`X``"(!```1``8`G0L``#`] +M``",````$@`!`*@+``"`0```L0```!(``0"S"P``4`H!`%X````2``$`O@L` +M`,`3`0`*````$@`!`,D+```@EP``50```!(``0#4"P``T*,```H````2``$` +MWPL``."B``"M````$@`!`.H+```0J0``9PL``!(``0#U"P``@`\``"(!```1 +M``8```P``-!K`0`"`0``$@`!``L,```P8@$`8@```!(``0`6#```T%```$(` +M```2``$`(0P```!2```I````$@`!`"P,``"`'@$`&@```!(``0`W#```,%(` +M`(`````2``$`0@P``$""```5````$@`!`$T,``!`=@``P```!(``0#G#```$.```(T````2``$`\@P``&"E``!.````$@`!`/T,``#` +M=@``M0```!(``0`(#0``T!X``)\````2``$`$PT``#`1`0!"````$@`!`!X- +M``"`80``F0```!(``0`I#0``L*0``%,````2``$`-`T``("T```=````$@`! +M`#\-``#P.@``@@$``!(``0!*#0``@$T```H````2``$`50T``.!&```/```` +M$@`!`&`-``"0U```0@```!(``0!K#0``\!P!`(T````2``$`=@T````0`0`P +M`0``$@`!`($-``"0E@``A0```!(``0",#0``D'P``*P%```2``$`EPT``(#Z +M```%````$@`!`*(-```0;0``"@,``!(``0"M#0``0!(!`#T````2``$`N`T` +M`'0*```$````$0`&`,,-``"`W@``-@```!(``0#.#0``6%<```P````1``,` +MV0T``,`O``!B````$@`!`.0-```0#P$`A0```!(``0#O#0``L`8!`*$````2 +M``$`^@T``,`P`0#\`0``$@`!``4.``!`9P$`8P```!(``0`0#@``X/H``.(! +M```2``$`&PX`````````````$````"H.``#P1@``"@```!(``0`U#@``8'@` +M`$T````2``$`0`X``,`-`0`@````$@`!`$L.```0M0``K`(``!(``0!6#@`` +M\#$``&P````2``$`;PX``+!G`0";````$@`!``!Z>C`P-6(U.#0V`'IZ,#`R +M9&(Q,6,`>GHP,#)D8C0V,`!Z>C!B-V(X,S8X`'IZ,#`P,F1A9CD`>GHP8V9A +M,C`X.`!Z>C`P-6(T,&%D`'IZ,#5B.30R960`>GHP9#DT8V0P-`!Z>C`P,3EF +M-#GHP8C9D,C,R-0!Z>C`V-V0P-&%A`'IZ,#`U8C@U +M,V0`>GHP,S-E.#(T9`!Z>C`P,F1B,S%C`'IZ,#)D86)B86,`>GHP,#!B-F,V +M.`!Z>C`P,&(V8F8X`'IZ,#)D8C5B9C``>GHP,39E,61F9`!Z>C!B-S!E.3AC +M`'IZ,&(V8V$S,C4`>GHP,#5B-F-F9`!Z>C`Q-F4P9&9D`'IZ,#`P8C9F-C@` +M>GHP,#5B-#AA9`!Z>C`P,&(V8F9E`'IZ,#`U8C@X8V(`>GHP,S-E8SAB9@!A +M=&A?:&%L7V1M85]B96%C;VY?C`P8C9F,38Q`'IZ +M,&1C-3@W,3@`>GHP9&(P.3$P90!Z>C`P8C9E,C=A`'IZ,#`U8C8T9F0`>GHP +M,&(W,#DR,P!Z>C`P,&(V9#%D`'IZ,&(V8S(S,C4`>GHP,#`U8C8S,@!Z>C`V +M9&8R9C4W`'IZ,#`Q-F1A-3``>GHP,#`V-V0S,@!Z>C`P,F1B-3%C`'IZ,#$V +M9&$W9C``>GHP,39D8V)F90!Z>C`P-6(W,C%C`'IZ,#`Q-F1F,F,`>GHP8C@Q +M-#8Q,@!Z>C`Q-F0Y.3(P`'IZ,#`V-V0U-#4`>GHP9&,W.#C`U8C

GHP,#5B-S$P,P!Z>C`Q-F1F.#EB`&%T:%]H86Q? +M871T86-H`&UE;6-P>0!Z>C`Q-F1A8C)D`'IZ,#)D8C$S-60`>GHP,#!B-F9E +M.`!Z>C`P,39D.30X`'IZ,#$V93(P.6(`>GHP,#!B-F,Y9`!Z>C`P,#5B-6$R +M`'IZ,#)D8C$W,&$`871H7VAA;%]C;VUP=71E='AT:6UE`'IZ,#`U8C@Q,V0` +M>GHP8C9C93DX8P!Z>C`P-6(W9CED`'IZ,#9E,#0V,&4`>GHP,F1B-3C`V9C(S,F-C`&%T:%]H86Q?9V5T=7!T:6UE`'IZ,&4P-S@S-SD`>GHP-F,X +M9&0P.0!Z>C`P,F1A9C8R`'IZ,#`R9&%F-C0`>GHP8C@U-#8Q,@!Z>C`P,&(V +M8CDP`'IZ,#$V9#EE9F$`>GHP,#)D8C(V,`!Z>C`Q-F1E,#4Q`'IZ,#`P-6(V +M8C(`>GHP,S0W-#9B-`!Z>C`P.&5F,S`Y`'IZ,#!B-S$W-V0`>GHP8CAB83AF +M.0!Z>C`P8CGHP,#`U8C8R,@!Z>C`P,&(V9CGHP,#5B-S8S,`!A=&A?:&%L7V9R964`>GHP-6(W.6(Q +M8@!Z>C`P8CC`Q +M-F4Q.#EB`'IZ,&1C,S0Y-&0`>GHP,#)D8S8P8@!Z>C`R9&(S,S5D`&)Z97)O +M`'IZ,&8X968S,#@`>GHP,#)D8C1A,`!Z>C!D831C9#`T`'IZ,#5B-S0Q93`` +M>GHP,F1A.6)A8P!Z>C`Q-F5C.6%D`'IZ,#!B-S$W,V0`>GHP9&,Q,F,Q9@!Z +M>C`P-6(X-&9D`'IZ,#!B-S`Q,C,`>GHP,#5B-C4R8@!Z>C`Q-F4S,#EB`'IZ +M,#`U8C8P8C(`>GHP,F1B,3C!B-V8X,S8X`'IZ,&1C,S)C,68`>GHP +M,&(W,#$V,0!Z>C!D8C0Y,3!E`'IZ,#`U8C0X960`>GHP,#)D8S@P8@!Z>C!B +M-C(T96(U`'IZ,#`U8C9E,6,`>GHP,F1B,S-E9`!Z>C`P-6(X,&9D`'IZ,#$V +M938T.&$`>GHP9&)F,F,Q9@!Z>C`P,F1A9F8R`'IZ,#`U8CGHP,#!B +M-F5E.`!Z>C`Q-F4T-#AA`'IZ,#!B-F8V8F,`>GHP,39D83DR,`!Z>C`U8CGHP,F1B,6)F,`!Z>C`P,&(V8C=E`'IZ,#`U8C0T +M860`>GHP-F0P9&0P.0!Z>C`V9&4T-C!E`'IZ,#!B-F,V8F,`871H7VAA;%]A +M9&1I=&EO;F%L7W-W8F%?8F%C:V]F9@!Z>C`Q-F4P,V$T`'IZ,#`P,F1B.3(` +M871H7VAA;%]V97)S:6]N`&%T:%]H86Q?:65E93)M:'H`>GHP,F1B-SEA90!Z +M>C`P,39E,3)C`'IZ,#`U8C5C8C(`>GHP,39D83(U,0!Z>C`V9F$S,F-C`'IZ +M,#9E,#)F-3<`>GHP,#5B-F4S,`!A=&A?:&%L7VUA;&QO8P!Z>C`P,&(V9&0R +M`'IZ,#5B-F-B9#4`>GHP,39D8C(U,0!Z>C!E,3GHP9&$Y8S1F-@!Z>C`R9&,Q-S8S`'IZ,#$V9&8P-3$`>GHP,#$V9#DU,`!Z +M>C`P8CGHP-F1F-#8P90!Z>C`P,&(V869E`'IZ +M,#5B.&,R960`>GHP-F9F,3=E-P!Z>C!D-&5F,S`X`'IZ,#9C-S1E8F(`>GHP +M,39D8F)F90!Z>C`Q-F4U-#AA`'IZ,#`Q-F0X-3``>GHP,#!B-F9F.`!Z>C`V +M9&(U96(V`'IZ,#$V96(Y860`>GHP,&(V8V5B8P!Z>C!D.6(X8CGHP,#)D8C$V-`!Z>C`P,F1B,#8P`'IZ,#$V96$Y860`>GHP +M,#)D8CC`P,&5F,S`Y`&)C;W!Y`'IZ,#)D8C,W-C,`>GHP,#5B-S8Q +M8P!Z>C!D8C1C9#`T`'IZ,#$V9&8R-3$`>GHP,#!B-F,Q,`!Z>C!B.&9A.&8Y +M`'IZ,#$V9#DR-3$`>GHP8CC`V-V-F8V%E`'IZ,#`P8C9C9C@` +M>GHP8V-E9C,P.`!Z>C`U8CDR865D`'IZ,#`U8CAC8V(`>GHP,F1B9CC`P-6(V.&9D`'IZ,#`U8C0T960`>GHP8CC!D.&(X8CGHP,39E,#@Y8@!Z>C`Q-F0Y-V8P`'IZ,&(X,S@S-C@`>GHP +M,&(V9F5B8P!Z>C!E.3DY,S$S`'IZ,#!B-F5A-V$`>GHP,#5B-S(S,`!Z>C`R +M9&(Y.6%E`'IZ,#`P8C9B93@`>GHP,#)D8C)A,`!Z>C!C9F$Q-F%A`'IZ,&0Y +M.6,T9C8`>GHP9&5D.&$U-P!Z>C`Q.68S83`Q`'IZ,#GHP-F4P +M-&1D,0!Z>C!B-CAE.3AC`'IZ,#$V93)D9F0`>GHP,#!B-F0R,@!Z>C`P8V9A +M860S`'IZ,#GHP9&,U-#DT9`!Z>C`P8CGHP.68V.60R90!Z>C`P-6(V-3=A +M`'IZ,#9F-S$W93<`>GHP8C@W83AF.0!Z>C`V9&$U96(V`'IZ,&(W9#0V,3(` +M>GHP,&(V9CDV,0!Z>C`P,F1B8C8Q`'IZ,#)D8F0S-60`>GHP,#5B.#AF9`!Z +M>C`R9&%F9&9D`&%T:%]H86Q?9&5L87D`>GHP,F1B,61F9`!Z>C!B.#`W-S0Q +M`'IZ,#`R9&%E.3(`>GHP8C=C-SC`R9&(S9&9D`'IZ,#)D8C4S960` +M>GHP,#!B-F1A,@!Z>C`P,&(V93(R`'IZ,&0X.6,T9C8`>GHP,#$V9#@T.`!Z +M>C`Q-F0Y8C)D`'IZ,#`Q-F4P,F,`>GHP,&(W,#C`P-6(V.3=A`'IZ +M,#`U8C8U-#(`>GHP,39E,3`Y8@!Z>C`P-6(T83)D`'IZ,&1F-S@S-SD`>GHP +M,F1B9#C`P,&(V934R`'IZ,&-A-68S,CD`>GHP9&(R.3$P90!Z>C`R +M9&(S8F8P`'IZ,#$V93`R-3$`>GHP,#`R9&)B,@!Z>C`P,F1D.#9D`'IZ,#`U +M8C@Y,V0`>GHP-6(X,6(Q8@!Z>C`Q-F0X-V8P`'IZ,#)D8C$S960`>GHP,#!B +M-F-E.`!Z>C`U8CAA865D`'IZ,#`P-6(U93(`>GHP,#!B-F5F.`!Z>C!B-S$Y +M865D`'IZ,#`U8C4X8C(`>GHP,#)D8CDV,0!Z>C`U8C=D8C%B`'IZ,&(X-#GHP9C1D93,P-P!A=&A?:&%L7VEN:71?8VAA;FYE;',`>GHP,&(V9#9B +M8P!Z>C`P-6(V9#`S`'IZ,&,T968S,#@`>GHP,#`R9&)D,@!Z>C!D86(X8CGHP-6(Y,#)E9`!Z>C!D8S,X-S$X`'IZ,&%A,F5E8S$` +M>GHP-F0X9&0P.0!Z>C`P,&(V8S%D`'IZ,#5B.&5A960`>GHP,#5B-V(Y9`!Z +M>C`P-6(U-#0V`'IZ,#!B-F8Y,C,`>GHP,#)D8C!A,`!Z>C!D9&0X834W`'IZ +M,#$V93$R-3$`>GHP9&,W-#DT9`!Z>C`R9&(S-S!A`'IZ,#`P-6(V-S(`>GHP +M,#5B-S4P,P!Z>C`V9&8T9&0Q`'IZ,#)D8F8S-60`>GHP-C=D,&(T9`!Z>C`P +M,&(V8SGHP,V4Y-S,U,P!Z>C`R9&(U-S!A`'IZ,#`U +M8C9D-V$`>GHP,#)D8C(Y,@!Z>C`P-6(Y,&-B`'IZ,#`U8C5C-#8`871H7VAA +M;%]PGHP-F0Y-65B-@!Z>C`Q-F1F8C@W`'IZ,#`Q-F1A-#@`>GHP +M,#)D8C`Y,@!A=&A?:&%L7V=E='=IGHP,39E,6(X-P`` +M`%,````!`P``8`````$#``!O`````0,``'8````!`P``@0````$#``!I`0`` +M`EH``(0!```".`$`G@$```(N```(`@```OH``&@&```!`P``=`8```)%`0!# +M!P```0,``$\'```"10$`N0<```$#``#%!P```D4!``X(```!`P``&@@```)% +M`0`]"````0,``$D(```"10$`(PD```$#```O"0```D4!`-\)```!`P``ZPD` +M``)%`0`]"@```0,``$D*```"10$`,P```J,``'XS```!`@`` +MD3,```$"``"A,P```0(``"LT```"_0``!#4```(D``!?-0```O```)LU```" +M\```UC4```+P```P-@```O```',V```"\```>#D```+P``!I.@```F4``)TZ +M```"90``,CL```$E``!5.P```>X``*`\```"^@``R$4```)/```!1@```D`` +M`%-&```",0``.$<```+I``!41P```E<``!Y(```"#0$`!4D```)```#[20`` +M`A0```C$``(-\```")```J'P` +M``*C``#&?````0(``-9\```!`@``XWP```$"``!R?0```DD!`-A]```"^@`` +MN'X```+Z``#O?@```@@!`%]_```""`$`F'\```((`0``@````0(``$"````! +M"`$`4X````(L`0"F@````OH``.*````"^@``*X$```((`0!>@0```K(``&:! +M```"-`$`BH$```((`0`=@@```AL!`$V"```"90``N(,```+Z``#GA````24` +M`#F%```!)0``7(4```'N``#\A0```BD!``R&```"^@``*(\```*@``!ACP`` +M`D```-:/```",0``Z9````((`0!YD0```@$!`)61```"*0``IY$```*U``#T +MD0```@$!`!R2```"I```"90```+1``!GE````0(``,64```"0```?9@```+1 +M``"PF@```0,``+R:```"10$`Q)H```$#``#0F@```D4!`.":```!`@``Z)H` +M``(Y``"JFP```0,``+:;```"10$`>)P```$#``"$G````D4!`(R<```!`P`` +MF)P```)%`0#PG````0,``/R<```!`P``")T```$#```0G0```0,``!R=```" +M10$`7IT```$#``!JG0```D4!`"V>```!`P``.9X```)%`0!+G@```0,``%>> +M```"10$`-)\```$#``!`GP```D4!`"Z@```!`P``.J````)%`0`/H0```OH` +M`$2A```"^@``"*0```&3```1I````=,``!BD```!N@``,J0```+O``#SI``` +M`C$``)6J```"20$`Q:L```(D``#:JP```B0``.*K```!!````JP```$$```O +MK````00``$FL```!!```?JP```$"``"9K````0(``+^L```!`@``V:P```$" +M```#K0```0(``""M```!`@``YK````+F``#`L0```OH```ZR```",0``';(` +M``(7``#8L@```M<``!6T```"6```(;0```(X``#(M````A(!`/:T```"^@`` +M/[4```(2`0`=M@```OH``'NV```"^@``'[<```+Z``!QMP```OH``)&W```" +M$@$`^+@```(7```(N0```OH``!2Y```"%P``M;D```+Z``#5N0```C$``"VZ +M```"S```4+H```)I``!FN@```0(``'RZ```")```C;H```$"``"^N@```B0` +M`.FZ```")```<+P```+Z```3O@```B(!`$N^```!`@``[K\```$$```+P``` +M`00``"C````!!```X<````$$``#]P````B0``!?!```!!```,,$```(D``!3 +MP0```B0``&7!```!!```?L$```(D``">P0```B0``*[!```!!```W,$```$$ +M``#EP0```00``'O#```"+P``5<<```(0``"FQP```0(```G(```!!0``#L@` +M``)N```=R````04``"+(```";@``)\@```$%``!$R````04``%W(```!!0`` +M9,@```$%``!MR````04``'O(```!!0``F\@```$%``"[R````04``,?(```! +M!0``V\@```$%````R0```04``"S)```!!0``.LD```$%``!$R0```04``./) +M```!!0``^P``$>X```)[```][@```GL``&GN```">P``ENX```)[ +M``##[@```GL``/'N```">P``_.X```$\`0`7[P```14``)3O```">P``QN\` +M``)[``#C[P```N0``!GP```">P``1O````)[``!R\````N0``)SP```">P`` +MP_````)[``#7\````B0!`.CP```"K0``\_````'A```.\0```1,``!7Q```! +M/`$`,/$```$5``"2\0```GL``+KQ```">P``W/$```)[``#Z\0```GL``!KR +M```">P``*O(```(D`0`[\@```JT``$'R```!X0``7/(```$3``!Z\@```B0! +M`(OR```"K0``0_,```(D``!H\P```J,``('S```!`@``D/,```$"``":\P`` +M`0(``%ST```"0@$`8/4```)!`0#3]0```D$!`!'V```"00$``0`!(0`` +M01X!``&!``!('@$``0L!`%$>`0`!=```6!X!``$4`0!R'@$``N\``#,?`0`" +M,0``HQ\!``*N``#T(P$``I@``&\E`0`"0@$`/"8!``$"``!))@$``0(``'0F +M`0`"^@``DR8!``$"``"U)@$``0(``-PF`0`"^@``'"2`0`"00``,E\!``))``!Q7P$``D$``-M? +M`0`"20``16`!``))``"O8`$``JH``$%A`0`"J@``)V4!``'N```M90$``24` +M`#ME`0`!EP``R&@!``)+`0#8:`$``OH``*0````!`P``J`````$#``"X```` +M`0,``+P````!`P``S`````$#``#0`````0,``.`````!`P``Y`````$#``#T +M`````0,``/@````!`P``"`$```$#```,`0```0,``!P!```!`P``(`$```$# +M```P`0```0,``#0!```!`P``1`$```$#``!(`0```0,``%@!```!`P``7`$` +M``$#``!L`0```0,``'`!```!`P``@`$```$#``"$`0```0,``)0!```!`P`` +MF`$```$#``"H`0```0,``*P!```!`P``O`$```$#``#``0```0,``-`!```! +M`P``U`$```$#``#D`0```0,``.@!```!`P``^`$```$#``#\`0```0,```P" +M```!`P``$`(```$#```@`@```0,``"0"```!`P``-`(```$#```X`@```0,` +M`$@"```!`P``3`(```$#``!<`@```0,``&`"```!`P``<`(```$#``!T`@`` +M`0,``(0"```!`P``B`(```$#``"8`@```0,``)P"```!`P``K`(```$#``"P +M`@```0,``,`"```!`P``Q`(```$#``#4`@```0,``-@"```!`P``Z`(```$# +M``#L`@```0,``/P"```!`P````,```$#```0`P```0,``!0#```!`P``)`,` +M``$#```H`P```0,``#@#```!`P``/`,```$#``!,`P```0,``%`#```!`P`` +M8`,```$#``!D`P```0,``'0#```!`P``>`,```$#``"(`P```0,``(P#```! +M`P``G`,```$#``"@`P```0,``+`#```!`P``M`,```$#``#$`P```0,``,@# +M```!`P``V`,```$#``#<`P```0,``.P#```!`P``\`,```$#````!````0,` +M``0$```!`P``%`0```$#```8!````0,``"@$```!`P``+`0```$#```\!``` +M`0,``$`$```!`P``4`0```$#``!4!````0,``&0$```!`P``:`0```$#``!X +M!````0,``'P$```!`P``C`0```$#``"0!````0,``*`$```!`P``I`0```$# +M``"T!````0,``+@$```!`P``R`0```$#``#,!````0,``-P$```!`P``X`0` +M``$#``#P!````0,``/0$```!`P``!`4```$#```(!0```0,``!@%```!`P`` +M'`4```$#```L!0```0,``#`%```!`P``0`4```$#``!$!0```0,``%0%```! +M`P``6`4```$#``!H!0```0,``&P%```!`P``?`4```$#``"`!0```0,``)`% +M```!`P``E`4```$#``"D!0```0,``*@%```!`P``N`4```$#``"\!0```0,` +M`,P%```!`P``T`4```$#``#@!0```0,``.0%```!`P``]`4```$#``#X!0`` +M`0,```@&```!`P``#`8```$#````T```$$``!\#0```00``(`-```! +M!```A`T```$$``"8#0```00``*`-```!!```I`T```$$``"H#0```00``*P- +M```!!```L`T```$$``"T#0```00``+@-```!!```O`T```$$``#`#0```00` +M`,0-```!!```V`T```$$``#<#0```00``.`-```!!```Y`T```$$``#H#0`` +M`00``.P-```!!```\`T```$$``#T#0```00``!`.```!!```%`X```$$```8 +M#@```00``!P.```!!```(`X```$$```D#@```00``"@.```!!```2`X```$$ +M``!,#@```00``%`.```!!```5`X```$$``!8#@```00``)`.```!!```E`X` +M``$$``"8#@```00``)P.```!!```H`X```$$``"D#@```00``*@.```!!``` +MK`X```$$``"P#@```00``,@.```!!```S`X```$$``#0#@```00``-0.```! +M!```V`X```$$``#<#@```00``.`.```!!```^`X```$$````#P```00```0/ +M```!!```"`\```$$```,#P```00``!`/```!!```%`\```$$```8#P```00` +M`!P/```!!```(`\```$$```X#P```00``#P/```!!```0`\```$$``!$#P`` +M`00``$@/```!!```3`\```$$``!0#P```00``%0/```!!```<`\```$$``!T +M#P```00``'@/```!!```?`\```$$``"`#P```00``(0/```!!```B`\```$$ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Nov 4 21:51:25 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C920516A4D0; Tue, 4 Nov 2003 21:51:24 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A257D16A4CE for ; Tue, 4 Nov 2003 21:51:24 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 247CF43FCB for ; Tue, 4 Nov 2003 21:51:24 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA55pNXJ023099 for ; Tue, 4 Nov 2003 21:51:23 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA55pNPW023095 for perforce@freebsd.org; Tue, 4 Nov 2003 21:51:23 -0800 (PST) (envelope-from sam@freebsd.org) Date: Tue, 4 Nov 2003 21:51:23 -0800 (PST) Message-Id: <200311050551.hA55pNPW023095@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 Subject: PERFORCE change 41414 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 05:51:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=41414 Change 41414 by sam@sam_ebb on 2003/11/04 21:51:21 GIANT_REQUIRED does not have a trailing () Affected files ... .. //depot/projects/netperf/sys/netatalk/ddp_input.c#4 edit .. //depot/projects/netperf/sys/netinet6/ip6_input.c#19 edit .. //depot/projects/netperf/sys/netipx/ipx_input.c#7 edit .. //depot/projects/netperf/sys/netnatm/natm.c#6 edit Differences ... ==== //depot/projects/netperf/sys/netatalk/ddp_input.c#4 (text+ko) ==== @@ -39,7 +39,7 @@ void at2intr(struct mbuf *m) { - GIANT_REQUIRED(); + GIANT_REQUIRED; /* * Phase 2 packet handling @@ -67,7 +67,7 @@ elhp = mtod(m, struct elaphdr *); m_adj(m, SZ_ELAPHDR); - GIANT_REQUIRED(); + GIANT_REQUIRED; if (elhp->el_type == ELAP_DDPEXTEND) { ddp_input(m, m->m_pkthdr.rcvif, NULL, 1); ==== //depot/projects/netperf/sys/netinet6/ip6_input.c#19 (text+ko) ==== @@ -249,7 +249,7 @@ #endif int srcrt = 0; - GIANT_REQUIRED(); /* XXX for now */ + GIANT_REQUIRED; /* XXX for now */ #ifdef IPSEC /* * should the inner packet be considered authentic? ==== //depot/projects/netperf/sys/netipx/ipx_input.c#7 (text+ko) ==== @@ -133,7 +133,7 @@ struct ipx_ifaddr *ia; int len; - GIANT_REQUIRED(); + GIANT_REQUIRED; /* * If no IPX addresses have been set yet but the interfaces ==== //depot/projects/netperf/sys/netnatm/natm.c#6 (text+ko) ==== @@ -685,7 +685,7 @@ struct socket *so; struct natmpcb *npcb; - GIANT_REQUIRED(); + GIANT_REQUIRED; #ifdef DIAGNOSTIC M_ASSERTPKTHDR(m); From owner-p4-projects@FreeBSD.ORG Wed Nov 5 06:26:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C61E16A4D0; Wed, 5 Nov 2003 06:26:13 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2A09F16A4CE for ; Wed, 5 Nov 2003 06:26:13 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 18A3E43FE5 for ; Wed, 5 Nov 2003 06:26:12 -0800 (PST) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5EQBXJ099016 for ; Wed, 5 Nov 2003 06:26:11 -0800 (PST) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5EQBmc099013 for perforce@freebsd.org; Wed, 5 Nov 2003 06:26:11 -0800 (PST) (envelope-from areisse@nailabs.com) Date: Wed, 5 Nov 2003 06:26:11 -0800 (PST) Message-Id: <200311051426.hA5EQBmc099013@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 41442 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 14:26:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=41442 Change 41442 by areisse@areisse_ibook on 2003/11/05 06:25:20 devfs labelling support. Don't rely on 'mount *mp' being valid in devfs labelling events. Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#23 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/miscfs/devfs/Makefile#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/miscfs/devfs/devfs_tree.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/miscfs/devfs/devfsdefs.h#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac.h#6 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac_policy.h#4 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/sebsd.c#7 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#23 (text+ko) ==== @@ -75,6 +75,8 @@ #include #include +#include + #ifdef MAC /* @@ -855,11 +857,8 @@ static void mac_init_cred_label(struct label *label) { - printf ("mac_init_cred_label %d\n", label); mac_init_label(label); - printf ("mpo_init_cred_label %d\n", label); MAC_PERFORM(init_cred_label, label); - printf ("mac_init_cred_label done %d\n", label); MAC_DEBUG_COUNTER_INC(&nmaccreds); } @@ -870,16 +869,13 @@ mac_init_cred_label(&cred->cr_label); } -#if 0 void -mac_init_devfsdirent(struct devfs_dirent *de) +mac_init_devfsdirent(struct devnode *de) { - - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); + mac_init_label(&de->dn_label); + MAC_PERFORM(init_devfsdirent_label, &de->dn_label); MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); } -#endif static void mac_init_ifnet_label(struct label *label) @@ -1114,16 +1110,14 @@ mac_destroy_cred_label(&cred->cr_label); } -#if 0 void -mac_destroy_devfsdirent(struct devfs_dirent *de) +mac_destroy_devfsdirent(struct devnode *de) { - MAC_PERFORM(destroy_devfsdirent_label, &de->de_label); - mac_destroy_label(&de->de_label); + MAC_PERFORM(destroy_devfsdirent_label, &de->dn_label); + mac_destroy_label(&de->dn_label); MAC_DEBUG_COUNTER_DEC(&nmacdevfsdirents); } -#endif static void mac_destroy_ifnet_label(struct label *label) @@ -1268,6 +1262,12 @@ MAC_PERFORM(copy_vnode_label, src, dest); } +void +mac_copy_devfs_label(struct label *src, struct label *dest) +{ + MAC_PERFORM(copy_devfs_label, src, dest); +} + static int mac_check_structmac_consistent(struct mac *mac) { @@ -1442,9 +1442,7 @@ void mac_create_cred(struct ucred *parent_cred, struct ucred *child_cred) { - printf ("mpo_create_cred %d %d %d\n", parent_cred, child_cred, 0); MAC_PERFORM(create_cred, parent_cred, child_cred); - printf ("mpo_create_cred done\n"); } #if 0 @@ -1456,16 +1454,16 @@ MAC_PERFORM(update_devfsdirent, mp, de, &de->de_label, vp, &vp->v_label); } +#endif void -mac_associate_vnode_devfs(struct mount *mp, struct devfs_dirent *de, +mac_associate_vnode_devfs(struct mount *mp, struct devnode *de, struct vnode *vp) { MAC_PERFORM(associate_vnode_devfs, mp, &mp->mnt_fslabel, de, - &de->de_label, vp, &vp->v_label); + &de->dn_label, vp, &vp->v_label); } -#endif int mac_associate_vnode_extattr(struct mount *mp, struct vnode *vp) @@ -3216,16 +3214,16 @@ return (0); } -#if 0 void -mac_create_devfs_device(struct mount *mp, dev_t dev, struct devfs_dirent *de, +mac_create_devfs_device(struct ucred *cr, struct mount *mp, dev_t dev, struct devnode *de, const char *fullpath) { - MAC_PERFORM(create_devfs_device, mp, dev, de, &de->de_label, - fullpath); + MAC_PERFORM(create_devfs_device, cr, mp, dev, de, &de->dn_label, + fullpath); } +#if 0 void mac_create_devfs_symlink(struct ucred *cred, struct mount *mp, struct devfs_dirent *dd, struct devfs_dirent *de, const char *fullpath) ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/miscfs/devfs/Makefile#2 (text+ko) ==== @@ -20,11 +20,8 @@ EXPINC_SUBDIRS_I386 = \ DATAFILES = \ - devfs.h + devfs.h devfs_proto.h devfsdefs.h -PRIVATE_DATAFILES = \ - devfs_proto.h devfsdefs.h - INSTALL_MI_LIST = ${DATAFILES} INSTALL_MI_DIR = miscfs/devfs @@ -33,7 +30,7 @@ EXPORT_MI_DIR = miscfs/devfs -INSTALL_MI_LIST = ${DATAFILES} ${PRIVATE_DATAFILES} +INSTALL_MI_LIST = ${DATAFILES} include $(MakeInc_rule) include $(MakeInc_dir) ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/miscfs/devfs/devfs_tree.c#2 (text+ko) ==== @@ -555,6 +555,11 @@ *(dnp->dn_prevsiblingp) = dnp; dnp->dn_nextsibling = proto; proto->dn_prevsiblingp = &(dnp->dn_nextsibling); + +#ifdef MAC + mac_init_devfsdirent (dnp); + mac_copy_devfs_label (&proto->dn_label, &dnp->dn_label); +#endif } else { struct timeval tv; @@ -569,6 +574,10 @@ dnp->dn_atime.tv_sec = tv.tv_sec; dnp->dn_mtime.tv_sec = tv.tv_sec; dnp->dn_ctime.tv_sec = tv.tv_sec; + +#ifdef MAC + mac_init_devfsdirent (dnp); +#endif } dnp->dn_dvm = dvm; @@ -677,6 +686,10 @@ #endif 0 dnp->dn_delete = TRUE; } + +#ifdef MAC + mac_destroy_devfsdirent (dnp); +#endif } } @@ -1018,6 +1031,10 @@ vn_p->v_data = (void *)dnp; dnp->dn_vn = vn_p; error = vn_lock(vn_p, LK_EXCLUSIVE | LK_RETRY, p); +#ifdef MAC + if (!error) + mac_associate_vnode_devfs (NULL, dnp, vn_p); +#endif } return error; } @@ -1074,7 +1091,7 @@ devnode_t * dnp; /* devnode for parent directory */ devnode_type_t typeinfo; - char *name, *path, buf[256]; /* XXX */ + char *name, *path, buf[256], buff[256]; /* XXX */ boolean_t funnel_state; int i; va_list ap; @@ -1093,6 +1110,10 @@ vsnprintf(buf, sizeof(buf), fmt, ap); va_end(ap); +#ifdef MAC + bcopy (buf, buff, 256); + buff[255] = 0; +#endif name = NULL; for(i=strlen(buf); i>0; i--) @@ -1120,6 +1141,10 @@ new_dev->de_dnp->dn_gid = gid; new_dev->de_dnp->dn_uid = uid; new_dev->de_dnp->dn_mode |= perms; +#ifdef MAC + mac_create_devfs_device (NULL, NULL, + dev, new_dev->de_dnp, buff); +#endif devfs_propogate(dnp->dn_typeinfo.Dir.myname, new_dev); } } ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/miscfs/devfs/devfsdefs.h#2 (text+ko) ==== @@ -60,6 +60,8 @@ #include +#include + #ifdef __APPLE_API_PRIVATE #define DEVMAXNAMESIZE 32 /* XXX */ #define DEVMAXPATHSIZE 128 /* XXX */ @@ -128,6 +130,7 @@ devnode_t * * dn_prevsiblingp;/* backpointer for the above */ devnode_type_t dn_typeinfo; int dn_delete; /* mark for deletion */ + struct label dn_label; }; struct devdirent ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac.h#6 (text+ko) ==== @@ -104,7 +104,7 @@ */ struct bpf_d; struct componentname; -struct devfs_dirent; +struct devnode; struct ifnet; struct ifreq; struct image_params; @@ -134,7 +134,7 @@ */ void mac_init_bpfdesc(struct bpf_d *); void mac_init_cred(struct ucred *); -void mac_init_devfsdirent(struct devfs_dirent *); +void mac_init_devfsdirent(struct devnode *); void mac_init_ifnet(struct ifnet *); int mac_init_ipq(struct ipq *, int flag); int mac_init_socket(struct socket *, int flag); @@ -147,9 +147,10 @@ void mac_init_vnode_label(struct label *); void mac_copy_mbuf_tag(struct m_tag *, struct m_tag *); void mac_copy_vnode_label(struct label *, struct label *label); +void mac_copy_devfs_label(struct label *, struct label *label); void mac_destroy_bpfdesc(struct bpf_d *); void mac_destroy_cred(struct ucred *); -void mac_destroy_devfsdirent(struct devfs_dirent *); +void mac_destroy_devfsdirent(struct devnode *); void mac_destroy_ifnet(struct ifnet *); void mac_destroy_ipq(struct ipq *); void mac_destroy_socket(struct socket *); @@ -164,16 +165,16 @@ * Labeling event operations: file system objects, and things that * look a lot like file system objects. */ -void mac_associate_vnode_devfs(struct mount *mp, struct devfs_dirent *de, +void mac_associate_vnode_devfs(struct mount *mp, struct devnode *de, struct vnode *vp); int mac_associate_vnode_extattr(struct mount *mp, struct vnode *vp); void mac_associate_vnode_singlelabel(struct mount *mp, struct vnode *vp); -void mac_create_devfs_device(struct mount *mp, dev_t dev, - struct devfs_dirent *de, const char *fullpath); +void mac_create_devfs_device(struct ucred *cr, struct mount *mp, dev_t dev, + struct devnode *de, const char *fullpath); void mac_create_devfs_directory(struct mount *mp, char *dirname, - int dirnamelen, struct devfs_dirent *de, const char *fullpath); + int dirnamelen, struct devnode *de, const char *fullpath); void mac_create_devfs_symlink(struct ucred *cred, struct mount *mp, - struct devfs_dirent *dd, struct devfs_dirent *de, + struct devnode *dd, struct devnode *de, const char *fullpath); int mac_create_vnode_extattr(struct ucred *cred, struct mount *mp, struct vnode *dvp, struct vnode *vp, struct componentname *cnp); @@ -181,7 +182,7 @@ void mac_create_root_mount(struct ucred *cred, struct mount *mp); void mac_relabel_vnode(struct ucred *cred, struct vnode *vp, struct label *newlabel); -void mac_update_devfsdirent(struct mount *mp, struct devfs_dirent *de, +void mac_update_devfsdirent(struct mount *mp, struct devnode *de, struct vnode *vp); /* ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac_policy.h#4 (text+ko) ==== @@ -62,6 +62,8 @@ struct socket; struct ucred; struct vnode; +struct devnode; + struct mac_policy_ops { /* * Policy module operations. @@ -81,9 +83,7 @@ */ void (*mpo_init_bpfdesc_label)(struct label *label); void (*mpo_init_cred_label)(struct label *label); -#if 0 void (*mpo_init_devfsdirent_label)(struct label *label); -#endif void (*mpo_init_ifnet_label)(struct label *label); int (*mpo_init_ipq_label)(struct label *label, int flag); int (*mpo_init_mbuf_label)(struct label *label, int flag); @@ -98,9 +98,7 @@ void (*mpo_init_vnode_label)(struct label *label); void (*mpo_destroy_bpfdesc_label)(struct label *label); void (*mpo_destroy_cred_label)(struct label *label); -#if 0 void (*mpo_destroy_devfsdirent_label)(struct label *label); -#endif void (*mpo_destroy_ifnet_label)(struct label *label); void (*mpo_destroy_ipq_label)(struct label *label); void (*mpo_destroy_mbuf_label)(struct label *label); @@ -121,6 +119,8 @@ #endif void (*mpo_copy_vnode_label)(struct label *src, struct label *dest); + void (*mpo_copy_devfs_label)(struct label *src, + struct label *dest); int (*mpo_externalize_cred_label)(struct label *label, char *element_name, struct sbuf *sb, int *claimed); int (*mpo_externalize_ifnet_label)(struct label *label, @@ -152,30 +152,29 @@ * Labeling event operations: file system objects, and things that * look a lot like file system objects. */ -#if 0 void (*mpo_associate_vnode_devfs)(struct mount *mp, - struct label *fslabel, struct devfs_dirent *de, + struct label *fslabel, struct devnode *de, struct label *delabel, struct vnode *vp, struct label *vlabel); -#endif + int (*mpo_associate_vnode_extattr)(struct mount *mp, struct label *fslabel, struct vnode *vp, struct label *vlabel); void (*mpo_associate_vnode_singlelabel)(struct mount *mp, struct label *fslabel, struct vnode *vp, struct label *vlabel); -#if 0 - void (*mpo_create_devfs_device)(struct mount *mp, dev_t dev, - struct devfs_dirent *de, struct label *label, + + void (*mpo_create_devfs_device)(struct ucred *cr, struct mount *mp, dev_t dev, + struct devnode *de, struct label *label, const char *fullpath); void (*mpo_create_devfs_directory)(struct mount *mp, char *dirname, - int dirnamelen, struct devfs_dirent *de, + int dirnamelen, struct devnode *de, struct label *label, const char *fullpath); void (*mpo_create_devfs_symlink)(struct ucred *cred, - struct mount *mp, struct devfs_dirent *dd, - struct label *ddlabel, struct devfs_dirent *de, + struct mount *mp, struct devnode *dd, + struct label *ddlabel, struct devnode *de, struct label *delabel, const char *fullpath); -#endif + int (*mpo_create_vnode_extattr)(struct ucred *cred, struct mount *mp, struct label *fslabel, struct vnode *dvp, struct label *dlabel, @@ -192,7 +191,7 @@ struct label *intlabel); #if 0 void (*mpo_update_devfsdirent)(struct mount *mp, - struct devfs_dirent *devfs_dirent, + struct devnode *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel); #endif ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/sebsd.c#7 (text+ko) ==== @@ -68,6 +68,7 @@ #include #include +#include #endif #include @@ -239,33 +240,22 @@ return SECCLASS_FILE; } -#ifdef HAS_DEVFS_DIRENT static __inline security_class_t -dirent_type_to_security_class(__uint8_t type) +devfs_type_to_security_class(int type) { switch (type) { - case DT_REG: - return SECCLASS_FILE; - case DT_DIR: + case DEV_DIR: return SECCLASS_DIR; - case DT_BLK: + case DEV_BDEV: return SECCLASS_BLK_FILE; - case DT_CHR: + case DEV_CDEV: return SECCLASS_CHR_FILE; - case DT_LNK: + case DEV_SLNK: return SECCLASS_LNK_FILE; - case DT_SOCK: - return SECCLASS_SOCK_FILE; - case DT_FIFO: - return SECCLASS_FIFO_FILE; - case DT_UNKNOWN: - case DT_WHT: - return SECCLASS_FILE; } return SECCLASS_FILE; } -#endif static __inline access_vector_t file_mask_to_av(enum vtype vt, int mask) @@ -428,6 +418,17 @@ } static void +sebsd_init_devfs_label(struct label *label) +{ + struct vnode_security_struct *vsec; + + vsec = sebsd_malloc(sizeof(*vsec), M_ZERO | M_WAITOK); + vsec->sid = SECINITSID_UNLABELED; + vsec->task_sid = SECINITSID_UNLABELED; + SLOT(label) = vsec; +} + +static void sebsd_destroy_cred_label(struct label *label) { sebsd_free (SLOT(label), sizeof (struct task_security_struct)); @@ -447,10 +448,9 @@ printf("sebsd_relabel_cred:: This does nothing\n"); } -#ifdef HAS_DEVFS_DIRENT static void sebsd_associate_vnode_devfs(struct mount *mp, struct label *fslabel, - struct devfs_dirent *de, struct label *delabel, struct vnode *vp, + struct devnode *de, struct label *delabel, struct vnode *vp, struct label *vlabel) { struct vnode_security_struct *vsec, *dsec; @@ -461,30 +461,23 @@ vsec->sid = dsec->sid; vsec->task_sid = dsec->task_sid; vsec->sclass = dsec->sclass; - - /* - * This is a no-op for now, but when devfs_dirents do contain - * labels, they should be copied to the vp here as per how - * sebsd_update_vnode_from_extattr() functions. They will be - * kept synchronized from here on automatically with the vnode - * relabel calls. - */ } -#endif -#ifdef HAS_EXTATTRS static int sebsd_associate_vnode_extattr(struct mount *mp, struct label *fslabel, struct vnode *vp, struct label *vlabel) { struct vnode_security_struct *vsec; /* TBD: Need to limit size of contexts used in extattr labels */ - char context[128]; + /*char context[128];*/ u_int32_t context_len; + const char *context = NULL; int error; vsec = SLOT(vlabel); +#ifdef HAS_EXTATTRS + context_len = sizeof(context); /* TBD: bad fixed length */ error = vn_extattr_get(vp, IO_NODELOCKED, SEBSD_MAC_EXTATTR_NAMESPACE, @@ -515,8 +508,22 @@ "inode=%ld, fsid=%d\n", context_len, context_len, context, va.va_fileid, va.va_fsid); } +#endif - error = security_context_to_sid(context, context_len, &vsec->sid); + struct proc *p = current_proc(); + if (p == NULL || vp == NULL || vp->v_op == NULL || vp->v_tag != VT_HFS || vp->v_data == NULL) + goto dosclass; + + struct vattr va; + error = VOP_GETATTR (vp, &va, p->p_ucred, p); + if (error) + goto dosclass; + if (va.va_fileid == 28308) + context = "system_u:object_r:shell_exec_t"; + else + goto dosclass; + + error = security_context_to_sid(context, strlen(context), &vsec->sid); if (error) { printf("sebsd_update_vnode_from_extattr: ERROR mapping " "context to sid: %.*s\n", context_len, context); @@ -532,7 +539,6 @@ return (0); } -#endif static void sebsd_associate_vnode_singlelabel(struct mount *mp, struct label *fslabel, @@ -560,6 +566,9 @@ parent = SLOT(&cred_parent->cr_label); task = SLOT(&cred_child->cr_label); + if (parent == task) + panic ("parent child equal"); + /* Default to using the attributes from the parent process */ task->osid = parent->osid; task->sid = parent->sid; @@ -579,32 +588,29 @@ fsec->sid = tsec->sid; } -#ifdef HAS_DEVFS_DIRENT static void sebsd_create_devfs_device(struct ucred *cr, struct mount *mp, dev_t dev, - struct devfs_dirent *devfs_dirent, struct label *label, + struct devnode *devfs_dirent, struct label *label, const char *fullpath) { char *path; int rc; security_id_t newsid; - struct mount_security_struct *sbsec; struct vnode_security_struct *dirent; dirent = SLOT(label); - sbsec = SLOT(&mp->mnt_mntlabel); /* Default to the filesystem SID. */ - dirent->sid = sbsec->sid; + dirent->sid = SECINITSID_DEVFS; dirent->task_sid = SECINITSID_KERNEL; dirent->sclass = - dirent_type_to_security_class(devfs_dirent->de_dirent->d_type); + devfs_type_to_security_class(devfs_dirent->dn_type); /* Obtain a SID based on the fstype, path, and class. */ path = sebsd_malloc(strlen(fullpath) + 2, M_ZERO | M_WAITOK); path[0] = '/'; strcpy(&path[1], fullpath); - rc = security_genfs_sid(mp->mnt_vfc->vfc_name, path, dirent->sclass, + rc = security_genfs_sid("devfs", path, dirent->sclass, &newsid); if (rc == 0) @@ -625,14 +631,15 @@ /* TBD: debugging */ if (sebsd_verbose > 1) { - printf("sebsd_create_devfs_device(%s): sbsid=%d, " - "mountpoint=%s, rc=%d, sclass=%d, computedsid=%d, " - "dirent=%d\n", path, sbsec->sid, mp->mnt_stat.f_mntonname, + printf("sebsd_create_devfs_device(%s): " + "rc=%d, sclass=%d, computedsid=%d, " + "dirent=%d\n", path, rc, dirent->sclass, newsid, dirent->sid); } sebsd_free (path, 2 + strlen(fullpath)); } +#if 0 static void sebsd_create_devfs_directory(struct mount *mp, char *dirname, int dirnamelen, struct devfs_dirent *devfs_dirent, struct label *label, @@ -2082,10 +2089,15 @@ .mpo_init_cred_label = sebsd_init_cred_label, .mpo_init_vnode_label = sebsd_init_vnode_label, + .mpo_init_devfsdirent_label = sebsd_init_devfs_label, .mpo_destroy = sebsd_destroy, .mpo_destroy_cred_label = sebsd_destroy_cred_label, .mpo_destroy_vnode_label = sebsd_destroy_vnode_label, + .mpo_destroy_devfsdirent_label = sebsd_destroy_vnode_label, + + .mpo_copy_vnode_label = sebsd_copy_vnode_label, + .mpo_copy_devfs_label = sebsd_copy_vnode_label, .mpo_internalize_cred_label = sebsd_internalize_cred_label, .mpo_externalize_cred_label = sebsd_externalize_cred_label, @@ -2099,6 +2111,11 @@ .mpo_create_proc0 = sebsd_create_proc0, .mpo_create_proc1 = sebsd_create_proc1, + .mpo_create_devfs_device = sebsd_create_devfs_device, + + .mpo_associate_vnode_extattr = sebsd_associate_vnode_extattr, + .mpo_associate_vnode_devfs = sebsd_associate_vnode_devfs, + /* Transition */ .mpo_execve_will_transition = sebsd_execve_will_transition, .mpo_execve_transition = sebsd_execve_transition From owner-p4-projects@FreeBSD.ORG Wed Nov 5 08:01:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B35E816A4D0; Wed, 5 Nov 2003 08:01:31 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7DFCE16A4CE for ; Wed, 5 Nov 2003 08:01:31 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BDF4E43FE9 for ; Wed, 5 Nov 2003 08:01:30 -0800 (PST) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5G1TXJ006776 for ; Wed, 5 Nov 2003 08:01:29 -0800 (PST) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5G1RlA006770 for perforce@freebsd.org; Wed, 5 Nov 2003 08:01:27 -0800 (PST) (envelope-from areisse@nailabs.com) Date: Wed, 5 Nov 2003 08:01:27 -0800 (PST) Message-Id: <200311051601.hA5G1RlA006770@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 41453 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 16:01:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=41453 Change 41453 by areisse@areisse_ibook on 2003/11/05 08:00:26 mac_get_link no longer frees memory that it shouldn't Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#24 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#24 (text+ko) ==== @@ -3842,7 +3842,6 @@ mac.m_buflen, M_WAITOK); vput (nd.ni_vp); - FREE_ZONE(nd.ni_cnd.cn_pnbuf, nd.ni_cnd.cn_pnlen, M_NAMEI); mac_destroy_vnode_label(&intlabel); if (error == 0) From owner-p4-projects@FreeBSD.ORG Wed Nov 5 10:59:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0BAD916A4D0; Wed, 5 Nov 2003 10:59:16 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BBFB716A4CE for ; Wed, 5 Nov 2003 10:59:15 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 198FC43FCB for ; Wed, 5 Nov 2003 10:59:15 -0800 (PST) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5IxEXJ026741 for ; Wed, 5 Nov 2003 10:59:14 -0800 (PST) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5IxEp6026726 for perforce@freebsd.org; Wed, 5 Nov 2003 10:59:14 -0800 (PST) (envelope-from areisse@nailabs.com) Date: Wed, 5 Nov 2003 10:59:14 -0800 (PST) Message-Id: <200311051859.hA5IxEp6026726@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 41470 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 18:59:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=41470 Change 41470 by areisse@areisse_ibook on 2003/11/05 10:58:27 ls -lZ prints labels Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/file_cmds/ls/Makefile#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/file_cmds/ls/ls.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/file_cmds/ls/ls.h#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/file_cmds/ls/print.c#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/file_cmds/ls/Makefile#2 (text+ko) ==== @@ -18,12 +18,11 @@ OTHERSRCS = Makefile Makefile.preamble Makefile.postamble ls.1 - MAKEFILEDIR = $(MAKEFILEPATH)/pb_makefiles CODE_GEN_STYLE = DYNAMIC MAKEFILE = tool.make NEXTSTEP_INSTALLDIR = /bin -LIBS = +LIBS = ../../../libmac/libmac.a DEBUG_LIBS = $(LIBS) PROF_LIBS = $(LIBS) ==== //depot/projects/trustedbsd/sedarwin/apsl/file_cmds/ls/ls.c#2 (text+ko) ==== @@ -54,6 +54,7 @@ #include #include #include +#include #include #include @@ -106,6 +107,7 @@ int f_statustime; /* use time of last mode change */ int f_type; /* add type character for non-regular files */ int f_whiteout; /* show whiteout entries */ +int f_label = 0; /* show labels */ int main(argc, argv) @@ -134,7 +136,7 @@ f_listdot = 1; fts_options = FTS_PHYSICAL; - while ((ch = getopt(argc, argv, "1ACFLRSTWacdfgiklnoqrstuxv")) != -1) { + while ((ch = getopt(argc, argv, "1ACFLRSTWacdfgiklZnoqrstuxv")) != -1) { switch (ch) { /* * The -1, -C, -l and -x options all override each other so @@ -228,6 +230,9 @@ case 'v': f_nonprint = 0; break; + case 'Z': + f_label = 1; + break; default: case '?': usage(); @@ -412,11 +417,12 @@ u_int64_t btotal, maxblock, maxsize; int maxinode, maxnlink, maxmajor, maxminor; int bcfile, entries, flen, glen, ulen, maxflags, maxgroup, maxlen; - int maxuser, needstats; + int maxuser, maxlabelstr, needstats, labelstrlen; const char *user, *group; char ubuf[21]="", gbuf[21]="", buf[21]; /* 64 bits == 20 digits, +1 for NUL */ char nuser[12], ngroup[12]; char *flags = NULL; + char *labelstr = NULL; #ifdef __GNUC__ /* This outrageous construct just to shut up a GCC warning. */ @@ -439,7 +445,7 @@ bcfile = 0; maxuser = maxgroup = maxflags = maxlen = 0; btotal = maxblock = maxsize = 0; - maxmajor = maxminor = 0; + maxmajor = maxminor = maxlabelstr = 0; for (cur = list, entries = 0; cur; cur = cur->fts_link) { if (cur->fts_info == FTS_ERR || cur->fts_info == FTS_NS) { warnx("%s: %s", @@ -516,19 +522,85 @@ } else flen = 0; - if ((np = malloc(sizeof(NAMES) + - ulen + glen + flen + 3)) == NULL) - err(1, "%s", ""); + if (f_label) + { + char name[PATH_MAX + 1]; + mac_t label; + int error; + + error = mac_prepare_file_label(&label); + if (error == -1) { + warn("MAC label for %s/%s", + cur->fts_parent->fts_path, + cur->fts_name); + goto label_out; + } + + if (cur->fts_level == FTS_ROOTLEVEL) + snprintf(name, sizeof(name), + "%s", cur->fts_name); + else + snprintf(name, sizeof(name), + "%s/%s", cur->fts_parent->fts_accpath, cur->fts_name); + + /*if (options & FTS_LOGICAL) + error = mac_get_file(name, + label); + else*/ + error = mac_get_link(name, + label); + if (error == -1) { + warn("MAC label for %s/%s", + cur->fts_parent->fts_path, + cur->fts_name); + mac_free(label); + goto label_out; + } + + error = mac_to_text(label, + &labelstr); + if (error == -1) { + warn("MAC label for %s/%s", + cur->fts_parent->fts_path, + cur->fts_name); + mac_free(label); + goto label_out; + } + mac_free(label); +label_out: + if (labelstr == NULL) + labelstr = strdup("-"); + labelstrlen = strlen(labelstr); + if (labelstrlen > maxlabelstr) + maxlabelstr = labelstrlen; + } else + labelstrlen = 0; + + if ((np = malloc(sizeof(NAMES) + labelstrlen + + ulen + glen + flen + 4)) == NULL) + err(1, "malloc"); np->user = &np->data[0]; (void)strcpy(np->user, user); np->group = &np->data[ulen + 1]; (void)strcpy(np->group, group); + if (S_ISCHR(sp->st_mode) || + S_ISBLK(sp->st_mode)) + bcfile = 1; + if (f_flags) { np->flags = &np->data[ulen + glen + 2]; - (void)strcpy(np->flags, flags); + (void)strcpy(np->flags, flags); + free(flags); + } + if (f_label) { + np->label = &np->data[ulen + glen + 2 + + (f_flags ? flen + 1 : 0)]; + (void)strcpy(np->label, labelstr); + free(labelstr); } + cur->fts_pointer = np; } } @@ -541,6 +613,7 @@ d.list = list; d.entries = entries; d.maxlen = maxlen; + d.s_label = maxlabelstr; if (needstats) { d.btotal = btotal; (void)snprintf(buf, sizeof(buf), "%qu", (long long)maxblock); ==== //depot/projects/trustedbsd/sedarwin/apsl/file_cmds/ls/ls.h#2 (text+ko) ==== @@ -51,6 +51,7 @@ extern int f_size; /* list size in short listing */ extern int f_statustime; /* use time of last mode change */ extern int f_type; /* add type character for non-regular files */ +extern int f_label; /* show labels */ typedef struct { FTSENT *list; @@ -66,11 +67,13 @@ int s_user; int s_major; int s_minor; + int s_label; } DISPLAY; typedef struct { char *user; char *group; char *flags; + char *label; char data[1]; } NAMES; ==== //depot/projects/trustedbsd/sedarwin/apsl/file_cmds/ls/print.c#2 (text+ko) ==== @@ -117,6 +117,8 @@ (void)printf("%s %*u %-*s %-*s ", buf, dp->s_nlink, sp->st_nlink, dp->s_user, np->user, dp->s_group, np->group); + if (f_label && np->label) + printf ("%-*s ", dp->s_label, np->label); if (f_flags) (void)printf("%-*s ", dp->s_flags, np->flags); if (S_ISCHR(sp->st_mode) || S_ISBLK(sp->st_mode)) From owner-p4-projects@FreeBSD.ORG Wed Nov 5 13:15:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 198AE16A4D1; Wed, 5 Nov 2003 13:15:04 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E75DD16A4D0 for ; Wed, 5 Nov 2003 13:15:03 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9495743F75 for ; Wed, 5 Nov 2003 13:15:02 -0800 (PST) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5LF2XJ043280 for ; Wed, 5 Nov 2003 13:15:02 -0800 (PST) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5LF1N1043277 for perforce@freebsd.org; Wed, 5 Nov 2003 13:15:01 -0800 (PST) (envelope-from areisse@nailabs.com) Date: Wed, 5 Nov 2003 13:15:01 -0800 (PST) Message-Id: <200311052115.hA5LF1N1043277@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 41475 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 21:15:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=41475 Change 41475 by areisse@areisse_ibook on 2003/11/05 13:14:40 setgroups didn't copy creds properly Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_prot.c#6 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_prot.c#6 (text+ko) ==== @@ -506,6 +506,9 @@ pcred_writelock(p); old = pc->pc_ucred; new->cr_uid = old->cr_uid; +#ifdef MAC + mac_create_cred (old, new); +#endif pc->pc_ucred = new; pcred_unlock(p); set_security_token(p); From owner-p4-projects@FreeBSD.ORG Wed Nov 5 13:17:07 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D567A16A4D0; Wed, 5 Nov 2003 13:17:06 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A8BE416A4CF for ; Wed, 5 Nov 2003 13:17:06 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B4F4643FE3 for ; Wed, 5 Nov 2003 13:17:05 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5LH5XJ043473 for ; Wed, 5 Nov 2003 13:17:05 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5LH5Qf043470 for perforce@freebsd.org; Wed, 5 Nov 2003 13:17:05 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 13:17:05 -0800 (PST) Message-Id: <200311052117.hA5LH5Qf043470@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 Subject: PERFORCE change 41476 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 21:17:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=41476 Change 41476 by sam@sam_ebb on 2003/11/05 13:16:57 Until IPv6 is locked we cannot make assertions about the inpcb's. Rather than scatter #ifdef INET6's around the code; do it at the source of the ASSERT macros. Affected files ... .. //depot/projects/netperf/sys/netinet/in_pcb.h#12 edit Differences ... ==== //depot/projects/netperf/sys/netinet/in_pcb.h#12 (text+ko) ==== @@ -246,12 +246,21 @@ struct mtx ipi_mtx; }; +/* + * NB: We cannot enable assertions when IPv6 is configured as + * this code is shared by both IPv4 and IPv6 and IPv6 is + * not properly locked. + */ #define INP_LOCK_INIT(inp, d) \ mtx_init(&(inp)->inp_mtx, (d), NULL, MTX_DEF | MTX_RECURSE | MTX_DUPOK) #define INP_LOCK_DESTROY(inp) mtx_destroy(&(inp)->inp_mtx) #define INP_LOCK(inp) mtx_lock(&(inp)->inp_mtx) #define INP_UNLOCK(inp) mtx_unlock(&(inp)->inp_mtx) +#ifndef INET6 #define INP_LOCK_ASSERT(inp) mtx_assert(&(inp)->inp_mtx, MA_OWNED) +#else +#define INP_LOCK_ASSERT(inp) +#endif #define INP_INFO_LOCK_INIT(ipi, d) \ mtx_init(&(ipi)->ipi_mtx, (d), NULL, MTX_DEF | MTX_RECURSE) @@ -259,8 +268,13 @@ #define INP_INFO_WLOCK(ipi) mtx_lock(&(ipi)->ipi_mtx) #define INP_INFO_RUNLOCK(ipi) mtx_unlock(&(ipi)->ipi_mtx) #define INP_INFO_WUNLOCK(ipi) mtx_unlock(&(ipi)->ipi_mtx) +#ifndef INET6 #define INP_INFO_RLOCK_ASSERT(ipi) mtx_assert(&(ipi)->ipi_mtx, MA_OWNED) #define INP_INFO_WLOCK_ASSERT(ipi) mtx_assert(&(ipi)->ipi_mtx, MA_OWNED) +#else +#define INP_INFO_RLOCK_ASSERT(ipi) +#define INP_INFO_WLOCK_ASSERT(ipi) +#endif #define INP_PCBHASH(faddr, lport, fport, mask) \ (((faddr) ^ ((faddr) >> 16) ^ ntohs((lport) ^ (fport))) & (mask)) From owner-p4-projects@FreeBSD.ORG Wed Nov 5 13:20:11 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2FAEF16A4D0; Wed, 5 Nov 2003 13:20:11 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E6D2316A4CE for ; Wed, 5 Nov 2003 13:20:10 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 58BD543F75 for ; Wed, 5 Nov 2003 13:20:10 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5LKAXJ043669 for ; Wed, 5 Nov 2003 13:20:10 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5LK9R9043662 for perforce@freebsd.org; Wed, 5 Nov 2003 13:20:09 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 13:20:09 -0800 (PST) Message-Id: <200311052120.hA5LK9R9043662@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 Subject: PERFORCE change 41477 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 21:20:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=41477 Change 41477 by sam@sam_ebb on 2003/11/05 13:19:53 Add more locking so this code looks just like udp; this may not be necessary but it doesn't hurt to be conservative. Affected files ... .. //depot/projects/netperf/sys/netinet/raw_ip.c#9 edit Differences ... ==== //depot/projects/netperf/sys/netinet/raw_ip.c#9 (text+ko) ==== @@ -556,6 +556,21 @@ return 0; } +static void +rip_pcbdetach(struct socket *so, struct inpcb *inp) +{ + INP_INFO_WLOCK_ASSERT(&ripcbinfo); + INP_LOCK_ASSERT(inp); + + if (so == ip_mrouter && ip_mrouter_done) + ip_mrouter_done(); + if (ip_rsvp_force_done) + ip_rsvp_force_done(so); + if (so == ip_rsvpd) + ip_rsvp_done(); + in_pcbdetach(inp); +} + static int rip_detach(struct socket *so) { @@ -569,13 +584,7 @@ return EINVAL; } INP_LOCK(inp); - if (so == ip_mrouter && ip_mrouter_done) - ip_mrouter_done(); - if (ip_rsvp_force_done) - ip_rsvp_force_done(so); - if (so == ip_rsvpd) - ip_rsvp_done(); - in_pcbdetach(inp); + rip_pcbdetach(so, inp); INP_INFO_WUNLOCK(&ripcbinfo); return 0; } @@ -583,9 +592,19 @@ static int rip_abort(struct socket *so) { + struct inpcb *inp; + + INP_INFO_WLOCK(&ripcbinfo); + inp = sotoinpcb(so); + if (inp == 0) { + INP_INFO_WUNLOCK(&ripcbinfo); + return EINVAL; /* ??? possible? panic instead? */ + } + INP_LOCK(inp); soisdisconnected(so); if (so->so_state & SS_NOFDREF) - return rip_detach(so); + rip_pcbdetach(so, inp); + INP_INFO_WUNLOCK(&ripcbinfo); return 0; } @@ -600,43 +619,73 @@ static int rip_bind(struct socket *so, struct sockaddr *nam, struct thread *td) { - struct inpcb *inp = sotoinpcb(so); struct sockaddr_in *addr = (struct sockaddr_in *)nam; + struct inpcb *inp; if (nam->sa_len != sizeof(*addr)) return EINVAL; - if (TAILQ_EMPTY(&ifnet) || ((addr->sin_family != AF_INET) && - (addr->sin_family != AF_IMPLINK)) || + if (TAILQ_EMPTY(&ifnet) || + (addr->sin_family != AF_INET && addr->sin_family != AF_IMPLINK) || (addr->sin_addr.s_addr && ifa_ifwithaddr((struct sockaddr *)addr) == 0)) return EADDRNOTAVAIL; + + INP_INFO_WLOCK(&ripcbinfo); + inp = sotoinpcb(so); + if (inp == 0) { + INP_INFO_WUNLOCK(&ripcbinfo); + return EINVAL; + } + INP_LOCK(inp); inp->inp_laddr = addr->sin_addr; + INP_UNLOCK(inp); + INP_INFO_WUNLOCK(&ripcbinfo); return 0; } static int rip_connect(struct socket *so, struct sockaddr *nam, struct thread *td) { - struct inpcb *inp = sotoinpcb(so); struct sockaddr_in *addr = (struct sockaddr_in *)nam; + struct inpcb *inp; if (nam->sa_len != sizeof(*addr)) return EINVAL; if (TAILQ_EMPTY(&ifnet)) return EADDRNOTAVAIL; - if ((addr->sin_family != AF_INET) && - (addr->sin_family != AF_IMPLINK)) + if (addr->sin_family != AF_INET && addr->sin_family != AF_IMPLINK) return EAFNOSUPPORT; + + INP_INFO_WLOCK(&ripcbinfo); + inp = sotoinpcb(so); + if (inp == 0) { + INP_INFO_WUNLOCK(&ripcbinfo); + return EINVAL; + } + INP_LOCK(inp); inp->inp_faddr = addr->sin_addr; soisconnected(so); + INP_UNLOCK(inp); + INP_INFO_WUNLOCK(&ripcbinfo); return 0; } static int rip_shutdown(struct socket *so) { + struct inpcb *inp; + + INP_INFO_RLOCK(&ripcbinfo); + inp = sotoinpcb(so); + if (inp == 0) { + INP_INFO_RUNLOCK(&ripcbinfo); + return EINVAL; + } + INP_LOCK(inp); + INP_INFO_RUNLOCK(&ripcbinfo); socantsendmore(so); + INP_UNLOCK(inp); return 0; } @@ -644,23 +693,32 @@ rip_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *nam, struct mbuf *control, struct thread *td) { - struct inpcb *inp = sotoinpcb(so); - register u_long dst; + struct inpcb *inp; + u_long dst; + int ret; + INP_INFO_WLOCK(&ripcbinfo); + inp = sotoinpcb(so); if (so->so_state & SS_ISCONNECTED) { if (nam) { + INP_INFO_WUNLOCK(&ripcbinfo); m_freem(m); return EISCONN; } dst = inp->inp_faddr.s_addr; } else { if (nam == NULL) { + INP_INFO_WUNLOCK(&ripcbinfo); m_freem(m); return ENOTCONN; } dst = ((struct sockaddr_in *)nam)->sin_addr.s_addr; } - return rip_output(m, so, dst); + INP_LOCK(inp); + ret = rip_output(m, so, dst); + INP_UNLOCK(inp); + INP_INFO_WUNLOCK(&ripcbinfo); + return ret; } static int From owner-p4-projects@FreeBSD.ORG Wed Nov 5 13:22:14 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 54AB616A4D0; Wed, 5 Nov 2003 13:22:14 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 17A0016A4CE for ; Wed, 5 Nov 2003 13:22:14 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 813CC43F85 for ; Wed, 5 Nov 2003 13:22:13 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5LMDXJ043839 for ; Wed, 5 Nov 2003 13:22:13 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5LMDSe043836 for perforce@freebsd.org; Wed, 5 Nov 2003 13:22:13 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 13:22:13 -0800 (PST) Message-Id: <200311052122.hA5LMDSe043836@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 Subject: PERFORCE change 41478 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 21:22:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=41478 Change 41478 by sam@sam_ebb on 2003/11/05 13:21:23 Add assertions about needing Giant to do socket operations to tied us over until NFS and sockets are properly locked. Affected files ... .. //depot/projects/netperf/sys/nfsclient/bootp_subr.c#7 edit .. //depot/projects/netperf/sys/nfsclient/krpc_subr.c#3 edit .. //depot/projects/netperf/sys/nfsclient/nfs_socket.c#3 edit .. //depot/projects/netperf/sys/nfsclient/nfs_vfsops.c#6 edit .. //depot/projects/netperf/sys/nfsserver/nfs_srvsock.c#2 edit .. //depot/projects/netperf/sys/nfsserver/nfs_syscalls.c#3 edit Differences ... ==== //depot/projects/netperf/sys/nfsclient/bootp_subr.c#7 (text+ko) ==== @@ -587,6 +587,8 @@ int retry; const char *s; + GIANT_REQUIRED; /* XXX until socket locking done */ + /* * Create socket and set its recieve timeout. */ @@ -977,6 +979,8 @@ struct ifaddr *ifa; struct sockaddr_dl *sdl; + GIANT_REQUIRED; /* XXX until socket locking done */ + error = socreate(AF_INET, &ifctx->so, SOCK_DGRAM, 0, td->td_ucred, td); if (error != 0) panic("nfs_boot: socreate, error=%d", error); ==== //depot/projects/netperf/sys/nfsclient/krpc_subr.c#3 (text+ko) ==== @@ -213,6 +213,8 @@ nam = mhead = NULL; from = NULL; + GIANT_REQUIRED; /* XXX until socket locking done */ + /* * Create socket and set its recieve timeout. */ ==== //depot/projects/netperf/sys/nfsclient/nfs_socket.c#3 (text+ko) ==== @@ -161,6 +161,8 @@ struct sockaddr *saddr; struct thread *td = &thread0; /* only used for socreate and sobind */ + GIANT_REQUIRED; /* XXX until socket locking done */ + nmp->nm_so = NULL; saddr = nmp->nm_nam; error = socreate(saddr->sa_family, &nmp->nm_so, nmp->nm_sotype, @@ -377,6 +379,8 @@ { struct socket *so; + GIANT_REQUIRED; /* XXX until socket locking done */ + if (nmp->nm_so) { so = nmp->nm_so; nmp->nm_so = NULL; @@ -411,6 +415,8 @@ struct sockaddr *sendnam; int error, soflags, flags; + GIANT_REQUIRED; /* XXX until socket locking done */ + KASSERT(rep, ("nfs_send: called with rep == NULL")); if (rep->r_flags & R_SOFTTERM) { @@ -484,6 +490,8 @@ int error, sotype, rcvflg; struct thread *td = curthread; /* XXX */ + GIANT_REQUIRED; /* XXX until socket locking done */ + /* * Set up arguments for soreceive() */ ==== //depot/projects/netperf/sys/nfsclient/nfs_vfsops.c#6 (text+ko) ==== @@ -376,6 +376,8 @@ u_long l; char buf[128]; + GIANT_REQUIRED; /* XXX until socket locking done */ + #if defined(BOOTP_NFSROOT) && defined(BOOTP) bootpc_init(); /* use bootp to get nfs_diskless filled in */ #elif defined(NFS_ROOT) ==== //depot/projects/netperf/sys/nfsserver/nfs_srvsock.c#2 (text+ko) ==== @@ -425,6 +425,8 @@ goto dorecs; } #endif + GIANT_REQUIRED; /* XXX until socket locking is done */ + auio.uio_td = NULL; if (so->so_type == SOCK_STREAM) { /* @@ -725,6 +727,8 @@ struct sockaddr *sendnam; int error, soflags, flags; + GIANT_REQUIRED; /* XXX until socket locking is done */ + soflags = so->so_proto->pr_flags; if ((soflags & PR_CONNREQUIRED) || (so->so_state & SS_ISCONNECTED)) sendnam = NULL; ==== //depot/projects/netperf/sys/nfsserver/nfs_syscalls.c#3 (text+ko) ==== @@ -199,6 +199,8 @@ struct socket *so; int error, s; + GIANT_REQUIRED; /* XXX until socket locking done */ + so = fp->f_data; #if 0 tslp = NULL; From owner-p4-projects@FreeBSD.ORG Wed Nov 5 13:50:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DE44C16A4D0; Wed, 5 Nov 2003 13:50:50 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9643216A4CE for ; Wed, 5 Nov 2003 13:50:50 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BA9B343FF3 for ; Wed, 5 Nov 2003 13:50:48 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5LomXJ046035 for ; Wed, 5 Nov 2003 13:50:48 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5Lom3V046031 for perforce@freebsd.org; Wed, 5 Nov 2003 13:50:48 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 13:50:48 -0800 (PST) Message-Id: <200311052150.hA5Lom3V046031@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41479 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 21:50:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=41479 Change 41479 by rwatson@rwatson_tislabs on 2003/11/05 13:50:09 Attempt to remove the old stale sebsd from the trustedbsd_mac branch, while retaining to current sebsd in trustedbsd_sebsd. An interesting experiment in perforce semantics, not to mention keeping things compiling; commit one of several. Affected files ... .. //depot/projects/trustedbsd/mac/contrib/sebsd/checkpolicy/checkpolicy.c#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/checkpolicy/checkpolicy.h#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/checkpolicy/policy_parse.y#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/checkpolicy/policy_scan.l#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/Makefile#8 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/assert.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/attrib.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/constraints#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/admin.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/httpadm.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/misc/kernel.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/misc/kmod.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/misc/tcpmux.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/acct.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/amanda.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/apache.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/apmd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/atd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/authbind.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/automount.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/backup.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/bootloader.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/cardmgr.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/cleanvar.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/courier.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/crack.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/crond.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/crontab.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/cups.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ddt-client.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/devfsd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/dhcpc.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/dhcpd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/dictd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/dpkg.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/fsadm.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ftpd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/gatekeeper.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/getty.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/gnome-pty-helper.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/gpg.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/gpm.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/hotplug.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/hwclock.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ifconfig.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/inetd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/init.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/initrc.te#5 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ipchains.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ipsec.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/klogd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ldconfig.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/login.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/logrotate.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/lpd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/lpr.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/mail.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/modutil.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/mount.te#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/moused.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/named.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/netscape.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/netutils.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/newrole.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/nscd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ntpd.te#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/passwd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ping.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/portmap.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/portslave.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/postfix.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/pppd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/procmail.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/pump.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/qmail.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/quota.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/radius.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/radvd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/rlogind.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/rpcd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/rpm.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/rshd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/run_deb.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/run_init.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/save-entropy.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/selopt.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/sendmail.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/setfiles.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/slapd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/snmpd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/snort.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/sound.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/speedmgmt.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/squid.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ssh.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/sshd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/su.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/sxid.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/syslogd.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/sysstat.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/tcpd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/tftpd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/traceroute.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/usbd.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/usbmodules.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/utempter.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/vmware.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/watchdog.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/xdm.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/xfs.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/xserver.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/program/ypbind.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_capable_file.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_capable_net.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_capable_sys.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_entrypoint.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_execshare.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_exectrace.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_execute_no_trans.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_fdreceive.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_file.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_global.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_inherit.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_ioctl.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_ipc.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_link.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_mkdir.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_open.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_ptrace.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_readlink.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_relabel.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_rename.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_rxdir.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_setattr.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_setnice.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_sigkill.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_socket.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_stat.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_sysctl.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_system_misc.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_task_create.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_task_getpgid.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_task_getsched.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_task_getsid.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_task_setpgid.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_task_setsched.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_transition.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/test/test_wait.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/domains/user.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/acct.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/apache.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/apmd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/atd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/authbind.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/automount.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/backup.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/bootloader.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/cardmgr.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/courier.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/crack.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/crond.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/crontab.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/cups.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ddt-client.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/devfsd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/dhcpc.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/dhcpd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/dictd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/dpkg.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/fsadm.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ftpd.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/gatekeeper.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/getty.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/gnome-pty-helper.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/gpg.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/gpm.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/hotplug.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/hwclock.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ifconfig.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/inetd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/init.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/initrc.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ipchains.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ipsec.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/kernel.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/klogd.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/kmod.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ldconfig.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/login.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/logrotate.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/lpd.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/lpr.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/mail.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/modutil.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/mount.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/moused.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/named.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/netscape.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/netutils.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/newrole.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/nscd.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ntpd.fc#5 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/opie.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/passwd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ping.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/portmap.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/portslave.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/postfix.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/pppd.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/procmail.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/pump.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/qmail.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/quota.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/radius.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/radvd.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/rlogind.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/rpcd.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/rpm.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/rshd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/run_deb.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/run_init.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/save-entropy.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/selopt.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/sendmail.fc#6 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/setfiles.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/shell.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/slapd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/snmpd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/snort.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/sound.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/speedmgmt.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/squid.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ssh.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/sshd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/su.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/sxid.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/syslogd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/sysstat.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/tcpd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/tftpd.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/traceroute.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/usbd.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/usbmodules.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/utempter.fc#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/vmware.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/watchdog.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/xdm.fc#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/xfs.fc#5 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/xserver.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/program/ypbind.fc#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/file_contexts/types.fc#8 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/files.lst#9 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/flask/access_vectors#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/flask/initial_sids#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/flask/security_classes#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/fs_use#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/genfs_contexts#8 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/initial_sid_contexts#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/admin_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/global_macros.te#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/crond_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/crontab_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/gpg_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/gph_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/lpr_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/netscape_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/sendmail_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/ssh_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/su_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/program/xserver_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/macros/user_macros.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/mls#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/net_contexts#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/rbac#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/test.mk#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/test_attrib.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/device.te#4 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/devpts.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/file.te#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/network.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/nfs.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/procfs.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/types/security.te#2 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/users#3 delete .. //depot/projects/trustedbsd/mac/contrib/sebsd/policy/users.distrib#2 delete .. //depot/projects/trustedbsd/mac/etc/Makefile#34 edit .. //depot/projects/trustedbsd/mac/etc/mtree/BSD.include.dist#27 edit .. //depot/projects/trustedbsd/mac/etc/mtree/BSD.root.dist#10 edit .. //depot/projects/trustedbsd/mac/etc/mtree/BSD.usr.dist#28 edit .. //depot/projects/trustedbsd/mac/include/Makefile#36 edit .. //depot/projects/trustedbsd/mac/lib/Makefile#25 edit .. //depot/projects/trustedbsd/mac/lib/libsebsd/Makefile#6 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/get_ordered_context_list.c#3 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/getseccontext.c#2 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/query_user_context.c#4 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/sebsd.h#7 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/sebsd_context.h#2 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/sebsd_fs.h#2 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/sebsd_proc.h#2 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/sebsd_ss.h#6 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/security_change_context.c#2 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/security_get_user_contexts.c#5 delete .. //depot/projects/trustedbsd/mac/lib/libsebsd/system.c#3 delete .. //depot/projects/trustedbsd/mac/sbin/Makefile#21 edit .. //depot/projects/trustedbsd/mac/sbin/sebsd_checkpolicy/Makefile#5 delete .. //depot/projects/trustedbsd/mac/sbin/sebsd_setfiles/Makefile#3 delete .. //depot/projects/trustedbsd/mac/sbin/sebsd_setfiles/setfiles.c#9 delete .. //depot/projects/trustedbsd/mac/share/security/Makefile#3 edit .. //depot/projects/trustedbsd/mac/share/security/sebsd/Makefile#7 delete .. //depot/projects/trustedbsd/mac/sys/boot/forth/loader.conf#22 edit .. //depot/projects/trustedbsd/mac/sys/conf/files#95 edit .. //depot/projects/trustedbsd/mac/sys/conf/options#58 edit .. //depot/projects/trustedbsd/mac/sys/modules/Makefile#66 edit .. //depot/projects/trustedbsd/mac/sys/modules/sebsd/Makefile#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/README#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/STATUS#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/TODO#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/av_inherit.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/av_perm_to_string.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/av_permissions.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/avc-selinux.c#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/avc.c#15 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/avc.h#13 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/avc_ss.h#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/class_to_string.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/common_perm_to_string.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/avc/initial_sid_to_string.h#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask.h#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask/Makefile#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask/README#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask/access_vectors#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask/initial_sids#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask/mkaccess_vector.sh#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask/mkflask.sh#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask/security_classes#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/flask_types.h#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/linux-compat.h#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/sebsd.c#72 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/sebsd.h#11 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/sebsd_labels.h#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/sebsd_syscall.c#5 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/sebsd_syscalls.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/sebsd_sysctl.c#9 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/avtab.c#5 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/avtab.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/constraint.h#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/context.h#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/ebitmap.c#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/ebitmap.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/fileutils.c#6 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/fileutils.h#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/global.h#7 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/hashtab.c#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/hashtab.h#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/init.c#7 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/mls.c#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/mls.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/mls_types.h#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/policydb.c#5 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/policydb.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/queue.c#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/queue.h#2 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/security.h#5 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/services.c#10 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/services.h#3 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/services_private.h#6 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/sidtab.c#10 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/sidtab.h#4 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/symtab.c#5 delete .. //depot/projects/trustedbsd/mac/sys/security/sebsd/ss/symtab.h#2 delete .. //depot/projects/trustedbsd/mac/usr.bin/login/Makefile#7 edit Differences ... ==== //depot/projects/trustedbsd/mac/etc/Makefile#34 (text+ko) ==== @@ -95,10 +95,6 @@ cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ ${SSL} ${DESTDIR}/etc/ssl .endif -.if exists(${.CURDIR}/../contrib/sebsd) - (cd ${.CURDIR}/../contrib/sebsd/policy; cpio -p -R${BINOWN}:${BINGRP} ${DESTDIR}/etc/security/sebsd/policy < files.lst) - (cd ${DESTDIR}/etc/security/sebsd/policy; ${MAKE} install) -.endif .if !defined(NO_KERBEROS) cd ${.CURDIR}/root; \ ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ ==== //depot/projects/trustedbsd/mac/etc/mtree/BSD.include.dist#27 (text+ko) ==== @@ -162,8 +162,6 @@ .. mac_partition .. - sebsd - .. .. sys .. ==== //depot/projects/trustedbsd/mac/etc/mtree/BSD.root.dist#10 (text+ko) ==== @@ -53,10 +53,6 @@ rc.d .. security - sebsd - policy - .. - .. .. skel .. ==== //depot/projects/trustedbsd/mac/etc/mtree/BSD.usr.dist#28 (text+ko) ==== @@ -879,10 +879,6 @@ .. .. security - sebsd - policy - .. - .. .. sendmail .. ==== //depot/projects/trustedbsd/mac/include/Makefile#36 (text+ko) ==== @@ -38,7 +38,6 @@ netatm/ipatm netatm/sigpvc netatm/spans netatm/uni \ netgraph/atm security/mac_biba security/mac_bsdextended \ security/mac_lomac security/mac_mls security/mac_partition \ - security/sebsd \ ufs/ffs ufs/ufs LSUBSUBDIRS= netgraph/bluetooth/include ==== //depot/projects/trustedbsd/mac/lib/Makefile#25 (text+ko) ==== @@ -32,7 +32,6 @@ ${_libpthread} ${_libsdp} ${_libsm} ${_libsmb} ${_libsmdb} \ ${_libsmutil} libstand libtelnet ${_libthr} libufs libugidfw \ ${_libusbhid} ${_libvgl} libwrap libxpg4 liby libz - libsebsd .if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) _csu=csu/${MACHINE_ARCH}-elf ==== //depot/projects/trustedbsd/mac/sbin/Makefile#21 (text+ko) ==== @@ -66,8 +66,6 @@ routed \ rtsol \ savecore \ - sebsd_checkpolicy \ - sebsd_setfiles \ setfsmac \ shutdown \ slattach \ ==== //depot/projects/trustedbsd/mac/share/security/Makefile#3 (text+ko) ==== @@ -4,6 +4,4 @@ NOOBJ= noobj FILESDIR= ${BINDIR}/security -SUBDIR= sebsd - .include ==== //depot/projects/trustedbsd/mac/sys/boot/forth/loader.conf#22 (text+ko) ==== @@ -329,7 +329,6 @@ mac_none_load="NO" # Null MAC policy mac_partition_load="NO" # Partition MAC policy mac_seeotheruids_load="NO" # UID visbility MAC policy -sebsd_load="NO" # Security-Enhanced BSD module ############################################################## ### Module loading syntax example ########################## ==== //depot/projects/trustedbsd/mac/sys/conf/files#95 (text+ko) ==== @@ -1616,20 +1616,6 @@ security/mac_seeotheruids/mac_seeotheruids.c optional mac_seeotheruids security/mac_stub/mac_stub.c optional mac_stub security/mac_test/mac_test.c optional mac_test -security/sebsd/sebsd.c optional sebsd -security/sebsd/sebsd_syscall.c optional sebsd -security/sebsd/sebsd_sysctl.c optional sebsd -security/sebsd/avc/avc.c optional sebsd -security/sebsd/ss/avtab.c optional sebsd -security/sebsd/ss/ebitmap.c optional sebsd -security/sebsd/ss/hashtab.c optional sebsd -security/sebsd/ss/init.c optional sebsd -security/sebsd/ss/policydb.c optional sebsd -security/sebsd/ss/queue.c optional sebsd -security/sebsd/ss/services.c optional sebsd -security/sebsd/ss/sidtab.c optional sebsd -security/sebsd/ss/symtab.c optional sebsd -security/sebsd/ss/fileutils.c optional sebsd ufs/ffs/ffs_alloc.c optional ffs ufs/ffs/ffs_balloc.c optional ffs ufs/ffs/ffs_inode.c optional ffs ==== //depot/projects/trustedbsd/mac/sys/conf/options#58 (text+ko) ==== @@ -138,7 +138,6 @@ MSGSEG opt_sysvipc.h MSGSSZ opt_sysvipc.h MSGTQL opt_sysvipc.h -SEBSD opt_dontuse.h SEMMAP opt_sysvipc.h SEMMNI opt_sysvipc.h SEMMNS opt_sysvipc.h ==== //depot/projects/trustedbsd/mac/sys/modules/Makefile#66 (text+ko) ==== @@ -117,7 +117,6 @@ rue \ sbsh \ scd \ - sebsd \ sf \ sis \ sk \ ==== //depot/projects/trustedbsd/mac/usr.bin/login/Makefile#7 (text+ko) ==== @@ -5,7 +5,7 @@ SRCS= login.c login_fbtab.c CFLAGS+=-DLOGALL DPADD= ${LIBUTIL} ${LIBCRYPT} ${LIBPAM} ${LIBSEBSD} -LDADD= -lutil -lcrypt ${MINUSLPAM} -lsebsd +LDADD= -lutil -lcrypt ${MINUSLPAM} MAN= login.1 login.access.5 BINOWN= root BINMODE=4555 From owner-p4-projects@FreeBSD.ORG Wed Nov 5 13:52:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1087816A4D0; Wed, 5 Nov 2003 13:52:53 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C3CDC16A4CE for ; Wed, 5 Nov 2003 13:52:52 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2E9E543F75 for ; Wed, 5 Nov 2003 13:52:52 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5LqpXJ047364 for ; Wed, 5 Nov 2003 13:52:51 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5Lqp6L047361 for perforce@freebsd.org; Wed, 5 Nov 2003 13:52:51 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 13:52:51 -0800 (PST) Message-Id: <200311052152.hA5Lqp6L047361@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41480 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 21:52:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=41480 Change 41480 by rwatson@rwatson_tislabs on 2003/11/05 13:52:45 Attempt to trim SEBSDisms from trustedbsd_mac without trimming from trustedbsd_sebsd. This should leave the diffs between MAC and SEBSD branches being the differences necessary to add SEBSD, rather than a subset. More commits to come. Affected files ... .. //depot/projects/trustedbsd/mac/usr.bin/login/Makefile#8 edit .. //depot/projects/trustedbsd/mac/usr.bin/login/login.c#30 edit Differences ... ==== //depot/projects/trustedbsd/mac/usr.bin/login/Makefile#8 (text+ko) ==== @@ -4,7 +4,7 @@ PROG= login SRCS= login.c login_fbtab.c CFLAGS+=-DLOGALL -DPADD= ${LIBUTIL} ${LIBCRYPT} ${LIBPAM} ${LIBSEBSD} +DPADD= ${LIBUTIL} ${LIBCRYPT} ${LIBPAM} LDADD= -lutil -lcrypt ${MINUSLPAM} MAN= login.1 login.access.5 BINOWN= root ==== //depot/projects/trustedbsd/mac/usr.bin/login/login.c#30 (text+ko) ==== @@ -68,7 +68,6 @@ #include #include #include -#include #include #include #include @@ -80,7 +79,6 @@ #include #include -#include #include "login.h" #include "pathnames.h" @@ -497,62 +495,6 @@ } /* - * Determine if we must execute a transition when we - * run our shell, for MAC policies which require it. For now, - * this is just SEBSD, and therefore not generic at all. - * When using SEBSD, the terminal device needs to be relabeled - * according to what the security server reports. - */ - if (sebsd_enabled()) { - char *labeltext, *queried, *oldttylabeltext, *tty_queried, - **contexts; - size_t ncontexts; - mac_t newttylabel; - int n; - - if (get_ordered_context_list(username, NULL, &contexts, - &ncontexts) != 0 || ncontexts == 0) - goto nosebsd; - if (query_user_context(pamh, contexts, ncontexts, - &queried) != 0 || - asprintf(&labeltext, "sebsd/%s", queried) == -1 || - mac_from_text(&execlabel, labeltext) != 0) { - syslog(LOG_ERR, "Determining SEBSD domain transition:" - " %m"); - bail(NO_SLEEP_EXIT, 1); - } - free(labeltext); - mac_prepare(&oldttylabel, "sebsd"); - if (mac_get_file(ttyn, oldttylabel) != 0 || - mac_to_text(oldttylabel, &oldttylabeltext) != 0) { - syslog(LOG_ERR, "Getting SEBSD label on terminal " - "%s: %m", ttyn); - bail(NO_SLEEP_EXIT, 1); - } - if (security_change_context(queried, oldttylabeltext + - sizeof("sebsd/") - 1, SECCLASS_CHR_FILE, - &tty_queried) != 0 || - asprintf(&labeltext, "sebsd/%s", tty_queried) == -1) { - syslog(LOG_ERR, "Determining SEBSD label for terminal " - "%s: %m", ttyn); - bail(NO_SLEEP_EXIT, 1); - } - free(oldttylabeltext); - free(tty_queried); - for (n = 0; n < ncontexts; n++) - free(contexts[n]); - free(contexts); - if (mac_from_text(&newttylabel, labeltext) != 0 || - mac_set_file(ttyn, newttylabel) != 0) { - syslog(LOG_ERR, "Setting SEBSD label on terminal " - "%s: %m", ttyn); - bail(NO_SLEEP_EXIT, 1); - } - mac_free(newttylabel); - } -nosebsd: - - /* * Destroy environment unless user has requested its * preservation - but preserve TERM in all cases */ From owner-p4-projects@FreeBSD.ORG Wed Nov 5 13:58:01 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5762D16A4F6; Wed, 5 Nov 2003 13:58:01 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DB9F516A4E9 for ; Wed, 5 Nov 2003 13:58:00 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 15BE543FF9 for ; Wed, 5 Nov 2003 13:57:59 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5LvwXJ047738 for ; Wed, 5 Nov 2003 13:57:58 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5Lvwhe047735 for perforce@freebsd.org; Wed, 5 Nov 2003 13:57:58 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 13:57:58 -0800 (PST) Message-Id: <200311052157.hA5Lvwhe047735@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41481 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 21:58:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=41481 Change 41481 by rwatson@rwatson_tislabs on 2003/11/05 13:57:11 Intet edits from trustedbsd_mac relating to SEBSD removal from that branch, but don't actually bring in the changes, leaving the SEBSD support in the SEBSD branch as a diff against the MAC branch. Affected files ... .. //depot/projects/trustedbsd/sebsd/etc/Makefile#7 integrate .. //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.include.dist#6 integrate .. //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.root.dist#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.usr.dist#6 integrate .. //depot/projects/trustedbsd/sebsd/include/Makefile#8 integrate .. //depot/projects/trustedbsd/sebsd/lib/Makefile#7 integrate .. //depot/projects/trustedbsd/sebsd/sbin/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/share/security/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/forth/loader.conf#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files#9 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/options#8 integrate .. //depot/projects/trustedbsd/sebsd/sys/modules/Makefile#7 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/login/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/login/login.c#5 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/etc/Makefile#7 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.include.dist#6 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.root.dist#5 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.usr.dist#6 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/include/Makefile#8 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/lib/Makefile#7 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/sbin/Makefile#5 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/share/security/Makefile#3 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/sys/boot/forth/loader.conf#6 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/sys/conf/files#9 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/sys/conf/options#8 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/sys/modules/Makefile#7 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/usr.bin/login/Makefile#2 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/usr.bin/login/login.c#5 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Wed Nov 5 15:08:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6137F16A4D0; Wed, 5 Nov 2003 15:08:33 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1CE7A16A4CE for ; Wed, 5 Nov 2003 15:08:32 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D571143FE3 for ; Wed, 5 Nov 2003 15:08:31 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5N8VXJ054667 for ; Wed, 5 Nov 2003 15:08:31 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5N8Vi8054664 for perforce@freebsd.org; Wed, 5 Nov 2003 15:08:31 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 15:08:31 -0800 (PST) Message-Id: <200311052308.hA5N8Vi8054664@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 Subject: PERFORCE change 41489 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 23:08:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=41489 Change 41489 by sam@sam_ebb on 2003/11/05 15:07:47 Pull uid/gid checking out of line and add locking. I doubt the out-of-line change is going to significantly impact performance given the locking necessary. Affected files ... .. //depot/projects/netperf/sys/netinet/ip_fw2.c#14 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_fw2.c#14 (text+ko) ==== @@ -1297,6 +1297,59 @@ return rule; } +static int +check_uidgid(ipfw_insn_u32 *insn, + int proto, struct ifnet *oif, + struct in_addr dst_ip, u_int16_t dst_port, + struct in_addr src_ip, u_int16_t src_port) +{ + struct inpcbinfo *pi; + int wildcard; + struct inpcb *pcb; + int match; + + if (proto == IPPROTO_TCP) { + wildcard = 0; + pi = &tcbinfo; + } else if (proto == IPPROTO_UDP) { + wildcard = 1; + pi = &udbinfo; + } else + return 0; + + match = 0; + + INP_INFO_RLOCK(pi); /* maybe a LOR here */ + pcb = (oif) ? + in_pcblookup_hash(pi, + dst_ip, htons(dst_port), + src_ip, htons(src_port), + wildcard, oif) : + in_pcblookup_hash(pi, + src_ip, htons(src_port), + dst_ip, htons(dst_port), + wildcard, NULL); + if (pcb != NULL) { + INP_LOCK(pcb); + if (pcb->inp_socket != NULL) { +#if __FreeBSD_version < 500034 +#define socheckuid(a,b) ((a)->so_cred->cr_uid != (b)) +#endif + if (insn->o.opcode == O_UID) { + match = !socheckuid(pcb->inp_socket, + (uid_t)insn->d[0]); + } else { + match = groupmember((uid_t)insn->d[0], + pcb->inp_socket->so_cred); + } + } + INP_UNLOCK(pcb); + } + INP_INFO_RUNLOCK(pi); + + return match; +} + /* * The main check routine for the firewall. * @@ -1600,46 +1653,13 @@ */ if (offset!=0) break; - { - struct inpcbinfo *pi; - int wildcard; - struct inpcb *pcb; - - if (proto == IPPROTO_TCP) { - wildcard = 0; - pi = &tcbinfo; - } else if (proto == IPPROTO_UDP) { - wildcard = 1; - pi = &udbinfo; - } else - break; - - /* XXX locking? */ - pcb = (oif) ? - in_pcblookup_hash(pi, - dst_ip, htons(dst_port), - src_ip, htons(src_port), - wildcard, oif) : - in_pcblookup_hash(pi, - src_ip, htons(src_port), - dst_ip, htons(dst_port), - wildcard, NULL); - - if (pcb == NULL || pcb->inp_socket == NULL) - break; -#if __FreeBSD_version < 500034 -#define socheckuid(a,b) ((a)->so_cred->cr_uid != (b)) -#endif - if (cmd->opcode == O_UID) { - match = - !socheckuid(pcb->inp_socket, - (uid_t)((ipfw_insn_u32 *)cmd)->d[0]); - } else { - match = groupmember( - (uid_t)((ipfw_insn_u32 *)cmd)->d[0], - pcb->inp_socket->so_cred); - } - } + if (proto == IPPROTO_TCP || + proto == IPPROTO_UDP) + match = check_uidgid( + (ipfw_insn_u32 *)cmd, + proto, oif, + src_ip, src_port, + dst_ip, dst_port); break; case O_RECV: From owner-p4-projects@FreeBSD.ORG Wed Nov 5 15:09:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 47F1216A4D0; Wed, 5 Nov 2003 15:09:35 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 208F516A4CE for ; Wed, 5 Nov 2003 15:09:35 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7A37D43FCB for ; Wed, 5 Nov 2003 15:09:34 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5N9YXJ054724 for ; Wed, 5 Nov 2003 15:09:34 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5N9XQW054721 for perforce@freebsd.org; Wed, 5 Nov 2003 15:09:33 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 15:09:33 -0800 (PST) Message-Id: <200311052309.hA5N9XQW054721@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 Subject: PERFORCE change 41491 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 23:09:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=41491 Change 41491 by sam@sam_ebb on 2003/11/05 15:09:33 o add missing locking of the inpcb in div_output; need to test but this may well be the cause of various problems people have been reporting o add locking to div_abort and div_shutdown so the code is like everyone else (raw, udp, etc) Affected files ... .. //depot/projects/netperf/sys/netinet/ip_divert.c#11 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_divert.c#11 (text+ko) ==== @@ -312,9 +312,12 @@ /* Reinject packet into the system as incoming or outgoing */ if (!sin || sin->sin_addr.s_addr == 0) { - struct inpcb *const inp = sotoinpcb(so); struct ip *const ip = mtod(m, struct ip *); + struct inpcb *inp; + INP_INFO_WLOCK(&divcbinfo); + inp = sotoinpcb(so); + INP_LOCK(inp); /* * Don't allow both user specified and setsockopt options, * and don't allow packet length sizes that will crash @@ -322,20 +325,23 @@ if (((ip->ip_hl != (sizeof (*ip) >> 2)) && inp->inp_options) || ((u_short)ntohs(ip->ip_len) > m->m_pkthdr.len)) { error = EINVAL; - goto cantsend; - } + m_freem(m); + } else { + /* Convert fields to host order for ip_output() */ + ip->ip_len = ntohs(ip->ip_len); + ip->ip_off = ntohs(ip->ip_off); - /* Convert fields to host order for ip_output() */ - ip->ip_len = ntohs(ip->ip_len); - ip->ip_off = ntohs(ip->ip_off); + /* Send packet to output processing */ + ipstat.ips_rawout++; /* XXX */ - /* Send packet to output processing */ - ipstat.ips_rawout++; /* XXX */ - error = ip_output((struct mbuf *)&divert_tag, - inp->inp_options, &inp->inp_route, - (so->so_options & SO_DONTROUTE) | - IP_ALLOWBROADCAST | IP_RAWOUTPUT, - inp->inp_moptions, NULL); + error = ip_output((struct mbuf *)&divert_tag, + inp->inp_options, &inp->inp_route, + (so->so_options & SO_DONTROUTE) | + IP_ALLOWBROADCAST | IP_RAWOUTPUT, + inp->inp_moptions, NULL); + } + INP_UNLOCK(inp); + INP_INFO_WUNLOCK(&divcbinfo); } else { if (m->m_pkthdr.rcvif == NULL) { /* @@ -424,8 +430,19 @@ static int div_abort(struct socket *so) { + struct inpcb *inp; + + INP_INFO_WLOCK(&divcbinfo); + inp = sotoinpcb(so); + if (inp == 0) { + INP_INFO_WUNLOCK(&divcbinfo); + return EINVAL; /* ??? possible? panic instead? */ + } + INP_LOCK(inp); soisdisconnected(so); - return div_detach(so); + in_pcbdetach(inp); + INP_INFO_WUNLOCK(&divcbinfo); + return 0; } static int @@ -470,7 +487,18 @@ static int div_shutdown(struct socket *so) { + struct inpcb *inp; + + INP_INFO_RLOCK(&divcbinfo); + inp = sotoinpcb(so); + if (inp == 0) { + INP_INFO_RUNLOCK(&divcbinfo); + return EINVAL; + } + INP_LOCK(inp); + INP_INFO_RUNLOCK(&divcbinfo); socantsendmore(so); + INP_UNLOCK(inp); return 0; } From owner-p4-projects@FreeBSD.ORG Wed Nov 5 15:19:49 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8AD5616A4D1; Wed, 5 Nov 2003 15:19:49 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6605116A4CF for ; Wed, 5 Nov 2003 15:19:49 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C127844001 for ; Wed, 5 Nov 2003 15:19:48 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA5NJmXJ055524 for ; Wed, 5 Nov 2003 15:19:48 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA5NJmRT055521 for perforce@freebsd.org; Wed, 5 Nov 2003 15:19:48 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 15:19:48 -0800 (PST) Message-Id: <200311052319.hA5NJmRT055521@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 Subject: PERFORCE change 41494 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Nov 2003 23:19:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=41494 Change 41494 by sam@sam_ebb on 2003/11/05 15:19:28 Cannot use NET_PICKUP/DROP_GIANT since we might be entered from the syncache timer routine. Affected files ... .. //depot/projects/netperf/sys/netinet/ip_divert.c#12 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_divert.c#12 (text+ko) ==== @@ -231,7 +231,7 @@ * the moment we're ignoring this. Once sockets are * locked this cruft can be removed. */ - NET_PICKUP_GIANT(); + mtx_lock(&Giant); /* Put packet on socket queue, if any */ sa = NULL; nport = htons((u_int16_t)port); @@ -253,7 +253,7 @@ INP_UNLOCK(inp); } INP_INFO_RUNLOCK(&divcbinfo); - NET_DROP_GIANT(); + mtx_unlock(&Giant); if (sa == NULL) { m_freem(m); ipstat.ips_noproto++; From owner-p4-projects@FreeBSD.ORG Wed Nov 5 17:15:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 20CB016A4D0; Wed, 5 Nov 2003 17:15:05 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EA49916A4CE for ; Wed, 5 Nov 2003 17:15:04 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 540BA43FFB for ; Wed, 5 Nov 2003 17:15:03 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA61F3XJ070715 for ; Wed, 5 Nov 2003 17:15:03 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA61F159070712 for perforce@freebsd.org; Wed, 5 Nov 2003 17:15:01 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 17:15:01 -0800 (PST) Message-Id: <200311060115.hA61F159070712@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41506 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 01:15:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=41506 Change 41506 by peter@peter_daintree on 2003/11/05 17:14:32 IFC @41505 Affected files ... .. //depot/projects/hammer/UPDATING#23 integrate .. //depot/projects/hammer/contrib/libpcap/gencode.c#3 integrate .. //depot/projects/hammer/contrib/libpcap/pcap.3#3 integrate .. //depot/projects/hammer/contrib/libpcap/scanner.l#2 integrate .. //depot/projects/hammer/etc/mtree/BSD.local.dist#10 integrate .. //depot/projects/hammer/etc/mtree/BSD.usr.dist#11 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes2#8 integrate .. //depot/projects/hammer/include/pthread.h#5 integrate .. //depot/projects/hammer/lib/libc/include/libc_private.h#4 integrate .. //depot/projects/hammer/lib/libc/include/spinlock.h#3 integrate .. //depot/projects/hammer/lib/libc/locale/Makefile.inc#12 integrate .. //depot/projects/hammer/lib/libc/locale/gb2312.c#1 branch .. //depot/projects/hammer/lib/libc/locale/gbk.c#2 integrate .. //depot/projects/hammer/lib/libc/locale/setrunelocale.c#8 integrate .. //depot/projects/hammer/lib/libc/stdio/fgetwc.c#4 integrate .. //depot/projects/hammer/lib/libc/stdio/fputwc.c#5 integrate .. //depot/projects/hammer/lib/libc/stdio/ungetwc.c#5 integrate .. //depot/projects/hammer/lib/libc/stdio/vfprintf.c#11 integrate .. //depot/projects/hammer/lib/libc/stdio/vfscanf.c#7 integrate .. //depot/projects/hammer/lib/libc/stdio/vfwprintf.c#8 integrate .. //depot/projects/hammer/lib/libc/stdio/vfwscanf.c#5 integrate .. //depot/projects/hammer/lib/libc/stdio/vswprintf.c#4 integrate .. //depot/projects/hammer/lib/libc/stdio/vswscanf.c#2 integrate .. //depot/projects/hammer/lib/libc/stdlib/malloc.c#11 integrate .. //depot/projects/hammer/lib/libc/string/wcscoll.c#2 integrate .. //depot/projects/hammer/lib/libc/string/wcsxfrm.c#2 integrate .. //depot/projects/hammer/lib/libc/sys/ktrace.2#4 integrate .. //depot/projects/hammer/lib/libdisk/write_ia64_disk.c#7 integrate .. //depot/projects/hammer/lib/libipsec/Makefile#4 integrate .. //depot/projects/hammer/lib/libipsec/ipsec_set_policy.3#4 integrate .. //depot/projects/hammer/lib/libipsec/pfkey.c#2 integrate .. //depot/projects/hammer/lib/libipsec/pfkey_dump.c#4 integrate .. //depot/projects/hammer/lib/libipsec/policy_parse.y#2 integrate .. //depot/projects/hammer/lib/libipsec/policy_token.l#2 integrate .. //depot/projects/hammer/lib/libpcap/Makefile#3 integrate .. //depot/projects/hammer/lib/libpthread/pthread.map#5 integrate .. //depot/projects/hammer/lib/libpthread/sys/lock.c#7 integrate .. //depot/projects/hammer/lib/libpthread/sys/lock.h#6 integrate .. //depot/projects/hammer/lib/libpthread/thread/Makefile.inc#8 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_atfork.c#1 branch .. //depot/projects/hammer/lib/libpthread/thread/thr_fork.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_init.c#13 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_kern.c#24 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_mutex.c#11 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_private.h#18 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_pspinlock.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_rtld.c#4 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_spinlock.c#6 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#32 integrate .. //depot/projects/hammer/sbin/atacontrol/Makefile#3 integrate .. //depot/projects/hammer/sbin/atacontrol/atacontrol.c#8 integrate .. //depot/projects/hammer/sbin/dump/dump.8#7 integrate .. //depot/projects/hammer/sbin/dump/dump.h#6 integrate .. //depot/projects/hammer/sbin/dump/traverse.c#6 integrate .. //depot/projects/hammer/sbin/mksnap_ffs/mksnap_ffs.c#3 integrate .. //depot/projects/hammer/sbin/mount_cd9660/mount_cd9660.c#5 integrate .. //depot/projects/hammer/sbin/mount_udf/Makefile#2 integrate .. //depot/projects/hammer/sbin/mount_udf/mount_udf.8#4 integrate .. //depot/projects/hammer/sbin/mount_udf/mount_udf.c#3 integrate .. //depot/projects/hammer/sbin/newfs/mkfs.c#11 integrate .. //depot/projects/hammer/share/colldef/Makefile#9 integrate .. //depot/projects/hammer/share/doc/IPv6/IMPLEMENTATION#4 integrate .. //depot/projects/hammer/share/man/man4/Makefile#23 integrate .. //depot/projects/hammer/share/man/man4/ata.4#5 integrate .. //depot/projects/hammer/share/man/man4/ath.4#8 integrate .. //depot/projects/hammer/share/man/man4/ath_hal.4#6 integrate .. //depot/projects/hammer/share/man/man4/miibus.4#3 integrate .. //depot/projects/hammer/share/man/man4/xe.4#1 branch .. //depot/projects/hammer/share/man/man9/Makefile#20 integrate .. //depot/projects/hammer/share/man/man9/resource_query_string.9#2 delete .. //depot/projects/hammer/share/mklocale/Makefile#8 integrate .. //depot/projects/hammer/share/mklocale/zh_CN.GB2312.src#1 branch .. //depot/projects/hammer/share/monetdef/Makefile#7 integrate .. //depot/projects/hammer/share/monetdef/zh_CN.GB2312.src#1 branch .. //depot/projects/hammer/share/msgdef/Makefile#7 integrate .. //depot/projects/hammer/share/msgdef/zh_CN.GB2312.src#1 branch .. //depot/projects/hammer/share/numericdef/Makefile#7 integrate .. //depot/projects/hammer/share/timedef/Makefile#7 integrate .. //depot/projects/hammer/share/timedef/zh_CN.GB2312.src#1 branch .. //depot/projects/hammer/sys/coda/coda_subr.c#6 integrate .. //depot/projects/hammer/sys/compat/linux/linux_ipc.c#7 integrate .. //depot/projects/hammer/sys/compat/linux/linux_stats.c#7 integrate .. //depot/projects/hammer/sys/conf/NOTES#28 integrate .. //depot/projects/hammer/sys/conf/files#32 integrate .. //depot/projects/hammer/sys/conf/files.pc98#18 integrate .. //depot/projects/hammer/sys/conf/kern.mk#13 integrate .. //depot/projects/hammer/sys/conf/kern.post.mk#13 integrate .. //depot/projects/hammer/sys/conf/kern.pre.mk#14 integrate .. //depot/projects/hammer/sys/conf/kmod.mk#10 integrate .. //depot/projects/hammer/sys/conf/options#27 integrate .. //depot/projects/hammer/sys/conf/options.pc98#14 integrate .. //depot/projects/hammer/sys/contrib/dev/acpica/dmresrc.c#5 integrate .. //depot/projects/hammer/sys/dev/ata/ata-raid.c#12 integrate .. //depot/projects/hammer/sys/dev/cs/if_cs.c#8 integrate .. //depot/projects/hammer/sys/dev/cs/if_csreg.h#2 integrate .. //depot/projects/hammer/sys/dev/hatm/if_hatm.c#8 integrate .. //depot/projects/hammer/sys/dev/hatm/if_hatm_intr.c#5 integrate .. //depot/projects/hammer/sys/dev/hatm/if_hatm_tx.c#5 integrate .. //depot/projects/hammer/sys/dev/hatm/if_hatmvar.h#5 integrate .. //depot/projects/hammer/sys/dev/pccard/pccard.c#16 integrate .. //depot/projects/hammer/sys/dev/wi/if_wi.c#21 integrate .. //depot/projects/hammer/sys/dev/xe/if_xe.c#9 integrate .. //depot/projects/hammer/sys/dev/xe/if_xe_pccard.c#8 integrate .. //depot/projects/hammer/sys/fs/msdosfs/msdosfs_vfsops.c#14 integrate .. //depot/projects/hammer/sys/fs/udf/osta.c#3 integrate .. //depot/projects/hammer/sys/fs/udf/osta.h#2 integrate .. //depot/projects/hammer/sys/fs/udf/udf.h#4 integrate .. //depot/projects/hammer/sys/fs/udf/udf_iconv.c#1 branch .. //depot/projects/hammer/sys/fs/udf/udf_mount.h#1 branch .. //depot/projects/hammer/sys/fs/udf/udf_vfsops.c#8 integrate .. //depot/projects/hammer/sys/fs/udf/udf_vnops.c#12 integrate .. //depot/projects/hammer/sys/gnu/ext2fs/ext2_vfsops.c#10 integrate .. //depot/projects/hammer/sys/i386/acpica/madt.c#2 integrate .. //depot/projects/hammer/sys/i386/i386/io_apic.c#2 integrate .. //depot/projects/hammer/sys/i386/i386/mptable.c#2 integrate .. //depot/projects/hammer/sys/i386/i386/nexus.c#9 integrate .. //depot/projects/hammer/sys/i386/include/bus_dma.h#9 integrate .. //depot/projects/hammer/sys/i386/isa/atpic.c#2 integrate .. //depot/projects/hammer/sys/i386/isa/if_le.c#9 integrate .. //depot/projects/hammer/sys/i386/isa/if_rdp.c#11 integrate .. //depot/projects/hammer/sys/i386/isa/isa_compat.c#5 integrate .. //depot/projects/hammer/sys/i386/isa/nmi.c#2 integrate .. //depot/projects/hammer/sys/kern/kern_event.c#9 integrate .. //depot/projects/hammer/sys/kern/kern_timeout.c#7 integrate .. //depot/projects/hammer/sys/kern/sched_ule.c#16 integrate .. //depot/projects/hammer/sys/kern/subr_bus.c#13 integrate .. //depot/projects/hammer/sys/kern/sysv_shm.c#9 integrate .. //depot/projects/hammer/sys/kern/vfs_bio.c#21 integrate .. //depot/projects/hammer/sys/kern/vfs_default.c#17 integrate .. //depot/projects/hammer/sys/kern/vfs_mount.c#15 integrate .. //depot/projects/hammer/sys/kern/vfs_subr.c#26 integrate .. //depot/projects/hammer/sys/modules/cs/Makefile#1 branch .. //depot/projects/hammer/sys/modules/ppbus/Makefile#2 integrate .. //depot/projects/hammer/sys/modules/udf/Makefile#2 integrate .. //depot/projects/hammer/sys/net/net_osdep.h#5 integrate .. //depot/projects/hammer/sys/net/netisr.c#4 integrate .. //depot/projects/hammer/sys/net80211/ieee80211_ioctl.c#8 integrate .. //depot/projects/hammer/sys/netgraph/ng_base.c#7 integrate .. //depot/projects/hammer/sys/netinet/in_pcb.c#12 integrate .. //depot/projects/hammer/sys/netinet/ip_input.c#18 integrate .. //depot/projects/hammer/sys/netinet/ip_output.c#19 integrate .. //depot/projects/hammer/sys/netinet/tcp_output.c#7 integrate .. //depot/projects/hammer/sys/netinet/tcp_syncache.c#8 integrate .. //depot/projects/hammer/sys/netinet6/icmp6.c#10 integrate .. //depot/projects/hammer/sys/netinet6/in6.c#5 integrate .. //depot/projects/hammer/sys/netinet6/in6.h#6 integrate .. //depot/projects/hammer/sys/netinet6/in6_pcb.h#3 integrate .. //depot/projects/hammer/sys/netinet6/in6_proto.c#5 integrate .. //depot/projects/hammer/sys/netinet6/in6_src.c#4 integrate .. //depot/projects/hammer/sys/netinet6/ip6_forward.c#7 integrate .. //depot/projects/hammer/sys/netinet6/ip6_output.c#11 integrate .. //depot/projects/hammer/sys/netinet6/ip6_var.h#7 integrate .. //depot/projects/hammer/sys/netinet6/ipsec.c#7 integrate .. //depot/projects/hammer/sys/netinet6/ipsec.h#5 integrate .. //depot/projects/hammer/sys/netinet6/ipsec6.h#3 integrate .. //depot/projects/hammer/sys/netinet6/nd6.c#8 integrate .. //depot/projects/hammer/sys/netinet6/nd6_nbr.c#8 integrate .. //depot/projects/hammer/sys/netinet6/raw_ip6.c#7 integrate .. //depot/projects/hammer/sys/netinet6/udp6_output.c#6 integrate .. //depot/projects/hammer/sys/netinet6/udp6_usrreq.c#8 integrate .. //depot/projects/hammer/sys/netkey/key.c#8 integrate .. //depot/projects/hammer/sys/netkey/key.h#2 integrate .. //depot/projects/hammer/sys/netkey/key_debug.c#5 integrate .. //depot/projects/hammer/sys/netkey/keydb.c#4 integrate .. //depot/projects/hammer/sys/netkey/keydb.h#4 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_subs.c#7 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_vfsops.c#16 integrate .. //depot/projects/hammer/sys/pc98/conf/GENERIC#12 integrate .. //depot/projects/hammer/sys/pc98/conf/NOTES#10 integrate .. //depot/projects/hammer/sys/pc98/i386/busio.s#3 integrate .. //depot/projects/hammer/sys/pc98/i386/machdep.c#21 integrate .. //depot/projects/hammer/sys/pc98/pc98/clock.c#10 integrate .. //depot/projects/hammer/sys/pc98/pc98/nmi.c#1 branch .. //depot/projects/hammer/sys/pci/if_xl.c#23 integrate .. //depot/projects/hammer/sys/sys/iconv.h#3 integrate .. //depot/projects/hammer/sys/sys/mount.h#9 integrate .. //depot/projects/hammer/sys/sys/mutex.h#9 integrate .. //depot/projects/hammer/sys/sys/sched.h#5 integrate .. //depot/projects/hammer/sys/sys/syscallsubr.h#7 integrate .. //depot/projects/hammer/sys/sys/vnode.h#18 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_snapshot.c#15 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_vfsops.c#15 integrate .. //depot/projects/hammer/sys/ufs/ufs/ufs_quota.c#9 integrate .. //depot/projects/hammer/sys/vm/vm_map.c#25 integrate .. //depot/projects/hammer/tools/debugscripts/dot.gdbinit#2 integrate .. //depot/projects/hammer/usr.bin/mklocale/yacc.y#8 integrate .. //depot/projects/hammer/usr.bin/sed/compile.c#2 integrate .. //depot/projects/hammer/usr.bin/sed/extern.h#2 integrate .. //depot/projects/hammer/usr.bin/sed/main.c#2 integrate .. //depot/projects/hammer/usr.bin/sed/misc.c#3 integrate .. //depot/projects/hammer/usr.bin/sed/process.c#7 integrate .. //depot/projects/hammer/usr.bin/su/su.c#10 integrate .. //depot/projects/hammer/usr.bin/units/units.lib#3 integrate .. //depot/projects/hammer/usr.sbin/asf/asf.8#3 integrate .. //depot/projects/hammer/usr.sbin/asf/asf.c#3 integrate .. //depot/projects/hammer/usr.sbin/mtree/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/mtree/compare.c#7 integrate .. //depot/projects/hammer/usr.sbin/mtree/create.c#6 integrate .. //depot/projects/hammer/usr.sbin/mtree/extern.h#4 integrate .. //depot/projects/hammer/usr.sbin/mtree/mtree.8#5 integrate .. //depot/projects/hammer/usr.sbin/mtree/mtree.c#5 integrate .. //depot/projects/hammer/usr.sbin/mtree/spec.c#4 integrate .. //depot/projects/hammer/usr.sbin/mtree/specspec.c#1 branch .. //depot/projects/hammer/usr.sbin/mtree/test/test00.sh#2 integrate .. //depot/projects/hammer/usr.sbin/mtree/test/test03.sh#1 branch .. //depot/projects/hammer/usr.sbin/mtree/verify.c#5 integrate .. //depot/projects/hammer/usr.sbin/setkey/Makefile#2 integrate .. //depot/projects/hammer/usr.sbin/setkey/parse.y#2 integrate .. //depot/projects/hammer/usr.sbin/setkey/sample.cf#3 integrate .. //depot/projects/hammer/usr.sbin/setkey/setkey.8#4 integrate .. //depot/projects/hammer/usr.sbin/setkey/setkey.c#4 integrate .. //depot/projects/hammer/usr.sbin/setkey/token.l#3 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/label.c#10 integrate Differences ... ==== //depot/projects/hammer/UPDATING#23 (text+ko) ==== @@ -20,7 +20,7 @@ 20031103: The i386 APIC_IO kernel option has been replaced by 'device apic'. The ACPI module has also been temporarily - disabled, so APCI must be statically compiled into your + disabled, so ACPI must be statically compiled into your kernel using 'device acpi' if you wish to use the ACPI driver. 20031031: @@ -1398,4 +1398,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.275 2003/11/03 23:02:17 jhb Exp $ +$FreeBSD: src/UPDATING,v 1.276 2003/11/04 19:42:55 ceri Exp $ ==== //depot/projects/hammer/contrib/libpcap/gencode.c#3 (text+ko) ==== @@ -19,7 +19,7 @@ * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $FreeBSD: src/contrib/libpcap/gencode.c,v 1.11 2003/01/26 01:21:53 fenner Exp $ + * $FreeBSD: src/contrib/libpcap/gencode.c,v 1.12 2003/11/04 06:12:21 green Exp $ */ #ifndef lint static const char rcsid[] = @@ -156,6 +156,7 @@ static struct block *gen_ehostop(const u_char *, int); static struct block *gen_fhostop(const u_char *, int); static struct block *gen_thostop(const u_char *, int); +static struct block *gen_whostop(const u_char *, int); static struct block *gen_dnhostop(bpf_u_int32, int, u_int); static struct block *gen_host(bpf_u_int32, bpf_u_int32, int, int); #ifdef INET6 @@ -567,11 +568,6 @@ off_nl = 6; /* XXX in reality, variable! */ return; - case DLT_IEEE802_11: - off_linktype = 30; /* XXX variable */ - off_nl = 32; - return; - case DLT_EN10MB: off_linktype = 12; off_nl = 14; @@ -667,7 +663,6 @@ off_nl = 22; return; -#ifdef notdef case DLT_IEEE802_11: /* * 802.11 doesn't really have a link-level type field. @@ -679,12 +674,13 @@ * * XXX - the header is actually variable-length. We * assume a 24-byte link-layer header, as appears in - * data frames in networks with no bridges. + * data frames in networks with no bridges. If the + * fromds and tods 802.11 header bits are both set, + * it's actually supposed to be 30 bytes. */ off_linktype = 24; - off_nl = 30; + off_nl = 32; return; -#endif case DLT_PRISM_HEADER: /* @@ -959,6 +955,7 @@ break; case DLT_IEEE802_11: + return gen_snap(0x000000, proto, off_linktype); case DLT_PRISM_HEADER: case DLT_FDDI: case DLT_IEEE802: @@ -1681,6 +1678,40 @@ } /* + * Like gen_ehostop, but for DLT_IEEE802_11 (Wireless) + */ +static struct block * +gen_whostop(eaddr, dir) + register const u_char *eaddr; + register int dir; +{ + register struct block *b0, *b1; + + switch (dir) { + case Q_SRC: + return gen_bcmp(10, 6, eaddr); + + case Q_DST: + return gen_bcmp(4, 6, eaddr); + + case Q_AND: + b0 = gen_whostop(eaddr, Q_SRC); + b1 = gen_whostop(eaddr, Q_DST); + gen_and(b0, b1); + return b1; + + case Q_DEFAULT: + case Q_OR: + b0 = gen_whostop(eaddr, Q_SRC); + b1 = gen_whostop(eaddr, Q_DST); + gen_or(b0, b1); + return b1; + } + abort(); + /* NOTREACHED */ +} + +/* * This is quite tricky because there may be pad bytes in front of the * DECNET header, and then there are two possible data packet formats that * carry both src and dst addresses, plus 5 packet types in a format that @@ -2022,6 +2053,8 @@ b0 = gen_fhostop(eaddr, Q_OR); else if (linktype == DLT_IEEE802) b0 = gen_thostop(eaddr, Q_OR); + else if (linktype == DLT_IEEE802_11) + b0 = gen_whostop(eaddr, Q_OR); else bpf_error( "'gateway' supported only on ethernet, FDDI or token ring"); @@ -2976,6 +3009,15 @@ free(eaddr); return b; + case DLT_IEEE802_11: + eaddr = pcap_ether_hostton(name); + if (eaddr == NULL) + bpf_error( + "unknown ether host '%s'", name); + b = gen_whostop(eaddr, dir); + free(eaddr); + return b; + default: bpf_error( "only ethernet/FDDI/token ring supports link-level host name"); @@ -3337,6 +3379,8 @@ return gen_fhostop(eaddr, (int)q.dir); if (linktype == DLT_IEEE802) return gen_thostop(eaddr, (int)q.dir); + if (linktype == DLT_IEEE802_11) + return gen_whostop(eaddr, (int)q.dir); bpf_error("ethernet addresses supported only on ethernet, FDDI or token ring"); } bpf_error("ethernet address used in non-ether expression"); @@ -3746,6 +3790,8 @@ return gen_fhostop(ebroadcast, Q_DST); if (linktype == DLT_IEEE802) return gen_thostop(ebroadcast, Q_DST); + if (linktype == DLT_IEEE802_11) + return gen_whostop(ebroadcast, Q_DST); bpf_error("not a broadcast link"); break; ==== //depot/projects/hammer/contrib/libpcap/pcap.3#3 (text+ko) ==== @@ -19,7 +19,7 @@ .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. .\" -.\" $FreeBSD: src/contrib/libpcap/pcap.3,v 1.10 2003/01/26 01:21:53 fenner Exp $ +.\" $FreeBSD: src/contrib/libpcap/pcap.3,v 1.11 2003/11/04 06:16:55 green Exp $ .\" .TH PCAP 3 "3 January 2001" .SH NAME @@ -685,16 +685,6 @@ .B \-1 is returned on failure. .PP -.B pcap_datalink_name_to_val() -translates a data link type name, which is a -.B DLT_ -name with the -.B DLT_ -removed, to the corresponding data link type value. The translation -is case-insensitive. -is used to set the current data link type of the pcap descriptor -NULL is returned on failure. -.PP .B pcap_snapshot() returns the snapshot length specified when .B pcap_open_live ==== //depot/projects/hammer/contrib/libpcap/scanner.l#2 (text+ko) ==== @@ -19,7 +19,7 @@ * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $FreeBSD: src/contrib/libpcap/scanner.l,v 1.8 2002/06/21 01:38:14 fenner Exp $ + * $FreeBSD: src/contrib/libpcap/scanner.l,v 1.9 2003/11/04 06:12:21 green Exp $ */ #ifndef lint @@ -69,7 +69,6 @@ #define getc(fp) (*in_buffer == 0 ? EOF : *in_buffer++) #endif -#define yylval pcap_lval extern YYSTYPE yylval; %} ==== //depot/projects/hammer/etc/mtree/BSD.local.dist#10 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.local.dist,v 1.101 2003/08/08 13:43:48 ache Exp $ +# $FreeBSD: src/etc/mtree/BSD.local.dist,v 1.102 2003/11/05 23:39:02 davidxu Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -453,6 +453,8 @@ .. zh_CN.GB18030 .. + zh_CN.GB2312 + .. zh_CN.GBK .. zh_TW.Big5 ==== //depot/projects/hammer/etc/mtree/BSD.usr.dist#11 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.282 2003/10/27 16:10:05 emax Exp $ +# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.283 2003/11/05 23:39:02 davidxu Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -517,6 +517,8 @@ .. zh_CN.GB18030 .. + zh_CN.GB2312 + .. zh_CN.GBK .. zh_TW.Big5 @@ -849,6 +851,8 @@ .. zh_CN.GB18030 .. + zh_CN.GB2312 + .. zh_CN.GBK .. zh_TW.Big5 ==== //depot/projects/hammer/games/fortune/datfiles/fortunes2#8 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes2,v 1.60 2003/10/06 22:11:03 wilko Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes2,v 1.61 2003/11/04 09:21:59 roam Exp $ % ======================================================================= || || @@ -34525,7 +34525,8 @@ -- J.D. Watson, "The Double Helix" % One day an elderly Jewish Pole, living in Warsaw, finds an old lamp in his -attic. He starts to polish it and (poof!) a genie appears in cloud of smoke. +attic. He starts to polish it and (poof!) a genie appears in a cloud of +smoke. "Greetings, Mortal!" exclaims the genie, stretching and yawning, "For releasing me I will grant you three wishes." The old man thinks for a moment, then replies, "I want Genghis Khan ==== //depot/projects/hammer/include/pthread.h#5 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/pthread.h,v 1.31 2003/09/09 06:57:51 davidxu Exp $ + * $FreeBSD: src/include/pthread.h,v 1.32 2003/11/04 20:10:15 deischen Exp $ */ #ifndef _PTHREAD_H_ #define _PTHREAD_H_ @@ -196,6 +196,8 @@ * Thread function prototype definitions: */ __BEGIN_DECLS +int pthread_atfork(void (*prepare)(void), void (*parent)(void), + void (*child)(void)); int pthread_attr_destroy(pthread_attr_t *); int pthread_attr_getstack(const pthread_attr_t * __restrict, void ** __restrict stackaddr, ==== //depot/projects/hammer/lib/libc/include/libc_private.h#4 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libc/include/libc_private.h,v 1.9 2003/02/27 13:40:00 nectar Exp $ + * $FreeBSD: src/lib/libc/include/libc_private.h,v 1.11 2003/11/05 18:17:30 deischen Exp $ * * Private definitions for libc, libc_r and libpthread. * @@ -120,4 +120,10 @@ */ extern const char *__progname; +/* + * This is the lock to make malloc() thread-safe. It is externalized + * so that thread libraries can protect malloc across fork(). + */ +extern struct _spinlock *__malloc_lock; + #endif /* _LIBC_PRIVATE_H_ */ ==== //depot/projects/hammer/lib/libc/include/spinlock.h#3 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libc/include/spinlock.h,v 1.6 2003/03/26 04:02:24 jeff Exp $ + * $FreeBSD: src/lib/libc/include/spinlock.h,v 1.7 2003/11/05 18:17:30 deischen Exp $ * * Lock definitions used in both libc and libpthread. * @@ -43,12 +43,13 @@ /* * Lock structure with room for debugging information. */ -typedef struct { +struct _spinlock { volatile long access_lock; volatile long lock_owner; volatile char *fname; volatile int lineno; -} spinlock_t; +}; +typedef struct _spinlock spinlock_t; #define _SPINLOCK_INITIALIZER { 0, 0, 0, 0 } ==== //depot/projects/hammer/lib/libc/locale/Makefile.inc#12 (text+ko) ==== @@ -1,11 +1,11 @@ # from @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/libc/locale/Makefile.inc,v 1.48 2003/11/01 05:13:12 tjr Exp $ +# $FreeBSD: src/lib/libc/locale/Makefile.inc,v 1.49 2003/11/05 22:52:51 davidxu Exp $ # locale sources .PATH: ${.CURDIR}/${MACHINE_ARCH}/locale ${.CURDIR}/locale SRCS+= big5.c btowc.c collate.c collcmp.c euc.c fix_grouping.c frune.c \ - gb18030.c gbk.c isctype.c iswctype.c \ + gb18030.c gb2312.c gbk.c isctype.c iswctype.c \ ldpart.c lmessages.c lmonetary.c lnumeric.c localeconv.c mblen.c \ mbrlen.c \ mbrtowc.c mbrune.c mbsinit.c mbsrtowcs.c mbtowc.c mbstowcs.c \ ==== //depot/projects/hammer/lib/libc/locale/gbk.c#2 (text+ko) ==== @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2002, 2003 Tim J. Robbins. All rights reserved. * Copyright (c) 1993 * The Regents of the University of California. All rights reserved. * @@ -35,82 +36,78 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/gbk.c,v 1.1 2003/06/01 15:30:56 ache Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/gbk.c,v 1.2 2003/11/05 07:56:45 tjr Exp $"); -#include +#include +#include #include #include #include -#include +#include + +extern size_t (*__mbrtowc)(wchar_t * __restrict, const char * __restrict, + size_t, mbstate_t * __restrict); +extern size_t (*__wcrtomb)(char * __restrict, wchar_t, mbstate_t * __restrict); -rune_t _GBK_sgetrune(const char *, size_t, char const **); -int _GBK_sputrune(rune_t, char *, size_t, char **); +int _GBK_init(_RuneLocale *); +size_t _GBK_mbrtowc(wchar_t * __restrict, const char * __restrict, size_t, + mbstate_t * __restrict); +size_t _GBK_wcrtomb(char * __restrict, wchar_t, mbstate_t * __restrict); int -_GBK_init(rl) - _RuneLocale *rl; +_GBK_init(_RuneLocale *rl) { - rl->sgetrune = _GBK_sgetrune; - rl->sputrune = _GBK_sputrune; + + __mbrtowc = _GBK_mbrtowc; + __wcrtomb = _GBK_wcrtomb; _CurrentRuneLocale = rl; __mb_cur_max = 2; return (0); } -static inline int -_gbk_check(c) - u_int c; +static __inline int +_gbk_check(u_int c) { + c &= 0xff; return ((c >= 0x80 && c <= 0xfe) ? 2 : 1); } -rune_t -_GBK_sgetrune(string, n, result) - const char *string; - size_t n; - char const **result; +size_t +_GBK_mbrtowc(wchar_t * __restrict pwc, const char * __restrict s, size_t n, + mbstate_t * __restrict ps __unused) { - rune_t rune = 0; - int len; + wchar_t wc; + int i, len; - if (n < 1 || (len = _gbk_check(*string)) > n) { - if (result) - *result = string; - return (_INVALID_RUNE); - } - while (--len >= 0) - rune = (rune << 8) | ((u_int)(*string++) & 0xff); - if (result) - *result = string; - return rune; + if (s == NULL) + /* Reset to initial shift state (no-op) */ + return (0); + if (n == 0 || (size_t)(len = _gbk_check(*s)) > n) + /* Incomplete multibyte sequence */ + return ((size_t)-2); + wc = 0; + i = len; + while (i-- > 0) + wc = (wc << 8) | (unsigned char)*s++; + if (pwc != NULL) + *pwc = wc; + return (wc == L'\0' ? 0 : len); } -int -_GBK_sputrune(c, string, n, result) - rune_t c; - char *string, **result; - size_t n; +size_t +_GBK_wcrtomb(char * __restrict s, wchar_t wc, + mbstate_t * __restrict ps __unused) { - if (c & 0x8000) { - if (n >= 2) { - string[0] = (c >> 8) & 0xff; - string[1] = c & 0xff; - if (result) - *result = string + 2; - return (2); - } + + if (s == NULL) + /* Reset to initial shift state (no-op) */ + return (1); + if (wc & 0x8000) { + *s++ = (wc >> 8) & 0xff; + *s = wc & 0xff; + return (2); } - else { - if (n >= 1) { - *string = c & 0xff; - if (result) - *result = string + 1; - return (1); - } - } - if (result) - *result = string; - return (0); - + *s = wc & 0xff; + return (1); } ==== //depot/projects/hammer/lib/libc/locale/setrunelocale.c#8 (text+ko) ==== @@ -38,7 +38,7 @@ #define OBSOLETE_IN_6 #include -__FBSDID("$FreeBSD: src/lib/libc/locale/setrunelocale.c,v 1.32 2003/11/01 05:13:13 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/setrunelocale.c,v 1.33 2003/11/05 22:52:51 davidxu Exp $"); #include #include @@ -56,6 +56,7 @@ extern int _UTF8_init(_RuneLocale *); extern int _EUC_init(_RuneLocale *); extern int _GB18030_init(_RuneLocale *); +extern int _GB2312_init(_RuneLocale *); extern int _GBK_init(_RuneLocale *); extern int _BIG5_init(_RuneLocale *); extern int _MSKanji_init(_RuneLocale *); @@ -157,6 +158,8 @@ ret = _EUC_init(rl); else if (strcmp(rl->encoding, "GB18030") == 0) ret = _GB18030_init(rl); + else if (strcmp(rl->encoding, "GB2312") == 0) + ret = _GB2312_init(rl); else if (strcmp(rl->encoding, "GBK") == 0) ret = _GBK_init(rl); else if (strcmp(rl->encoding, "BIG5") == 0) ==== //depot/projects/hammer/lib/libc/stdio/fgetwc.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/fgetwc.c,v 1.6 2002/10/16 12:09:43 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/fgetwc.c,v 1.7 2003/11/04 11:05:55 tjr Exp $"); #include "namespace.h" #include @@ -78,7 +78,6 @@ __fgetwc_nbf(FILE *fp) { char buf[MB_LEN_MAX]; - mbstate_t mbs; size_t n, nconv; int c; wchar_t wc; @@ -91,8 +90,7 @@ break; } buf[n++] = (char)c; - memset(&mbs, 0, sizeof(mbs)); - nconv = mbrtowc(&wc, buf, n, &mbs); + nconv = mbrtowc(&wc, buf, n, NULL); if (nconv == n) return (wc); else if (nconv == 0) ==== //depot/projects/hammer/lib/libc/stdio/fputwc.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/fputwc.c,v 1.6 2003/11/01 08:18:18 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/fputwc.c,v 1.7 2003/11/04 11:05:55 tjr Exp $"); #include "namespace.h" #include @@ -44,7 +44,6 @@ __fputwc(wchar_t wc, FILE *fp) { char buf[MB_LEN_MAX]; - mbstate_t mbs; size_t i, len; if (MB_CUR_MAX == 1 && wc > 0 && wc <= UCHAR_MAX) { @@ -56,8 +55,7 @@ *buf = (unsigned char)wc; len = 1; } else { - memset(&mbs, 0, sizeof(mbs)); - if ((len = wcrtomb(buf, wc, &mbs)) == (size_t)-1) { + if ((len = wcrtomb(buf, wc, NULL)) == (size_t)-1) { fp->_flags |= __SERR; return (WEOF); } ==== //depot/projects/hammer/lib/libc/stdio/ungetwc.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/ungetwc.c,v 1.5 2002/10/16 12:09:43 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/ungetwc.c,v 1.6 2003/11/04 11:05:55 tjr Exp $"); #include "namespace.h" #include @@ -43,13 +43,11 @@ __ungetwc(wint_t wc, FILE *fp) { char buf[MB_LEN_MAX]; - mbstate_t mbs; size_t len; if (wc == WEOF) return (WEOF); - memset(&mbs, 0, sizeof(mbs)); - if ((len = wcrtomb(buf, wc, &mbs)) == (size_t)-1) { + if ((len = wcrtomb(buf, wc, NULL)) == (size_t)-1) { fp->_flags |= __SERR; return (WEOF); } ==== //depot/projects/hammer/lib/libc/stdio/vfprintf.c#11 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)vfprintf.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.59 2003/04/19 23:53:19 das Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.60 2003/11/05 08:20:45 tjr Exp $"); /* * Actual printf innards. @@ -345,18 +345,16 @@ wchar_t *p; char *convbuf, *mbp; size_t clen, nbytes; - mbstate_t mbs; /* * Determine the number of bytes to output and allocate space for * the output. */ - memset(&mbs, 0, sizeof(mbs)); if (prec >= 0) { nbytes = 0; p = wcsarg; for (;;) { - clen = wcrtomb(buf, *p++, &mbs); + clen = wcrtomb(buf, *p++, NULL); if (clen == 0 || clen == (size_t)-1 || nbytes + clen > prec) break; @@ -364,7 +362,7 @@ } } else { p = wcsarg; - nbytes = wcsrtombs(NULL, (const wchar_t **)&p, 0, &mbs); + nbytes = wcsrtombs(NULL, (const wchar_t **)&p, 0, NULL); if (nbytes == (size_t)-1) return (NULL); } @@ -377,9 +375,8 @@ */ mbp = convbuf; p = wcsarg; - memset(&mbs, 0, sizeof(mbs)); while (mbp - convbuf < nbytes) { - clen = wcrtomb(mbp, *p++, &mbs); + clen = wcrtomb(mbp, *p++, NULL); if (clen == 0 || clen == (size_t)-1) break; mbp += clen; @@ -795,12 +792,10 @@ /*FALLTHROUGH*/ case 'c': if (flags & LONGINT) { - mbstate_t mbs; size_t mbseqlen; - memset(&mbs, 0, sizeof(mbs)); mbseqlen = wcrtomb(cp = buf, - (wchar_t)GETARG(wint_t), &mbs); + (wchar_t)GETARG(wint_t), NULL); if (mbseqlen == (size_t)-1) { fp->_flags |= __SERR; goto error; ==== //depot/projects/hammer/lib/libc/stdio/vfscanf.c#7 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)vfscanf.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfscanf.c,v 1.32 2003/06/28 09:03:05 das Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfscanf.c,v 1.33 2003/11/05 08:20:45 tjr Exp $"); #include "namespace.h" #include @@ -140,7 +140,6 @@ char buf[BUF]; /* buffer for numeric and mb conversions */ wchar_t *wcp; /* handy wide character pointer */ wchar_t *wcp0; /* saves original value of wcp */ - mbstate_t mbs; /* multibyte conversion state */ size_t nconv; /* length of multibyte sequence converted */ /* `basefix' is used to avoid `if' tests in the integer scanner */ @@ -367,8 +366,7 @@ buf[n++] = *fp->_p; fp->_p++; fp->_r--; - memset(&mbs, 0, sizeof(mbs)); - nconv = mbrtowc(wcp, buf, n, &mbs); + nconv = mbrtowc(wcp, buf, n, NULL); if (nconv == (size_t)-1) { fp->_flags |= __SERR; goto input_failure; @@ -447,8 +445,7 @@ buf[n++] = *fp->_p; fp->_p++; fp->_r--; - memset(&mbs, 0, sizeof(mbs)); - nconv = mbrtowc(wcp, buf, n, &mbs); + nconv = mbrtowc(wcp, buf, n, NULL); if (nconv == (size_t)-1) { fp->_flags |= __SERR; goto input_failure; @@ -548,8 +545,7 @@ buf[n++] = *fp->_p; fp->_p++; fp->_r--; - memset(&mbs, 0, sizeof(mbs)); - nconv = mbrtowc(wcp, buf, n, &mbs); + nconv = mbrtowc(wcp, buf, n, NULL); if (nconv == (size_t)-1) { fp->_flags |= __SERR; goto input_failure; ==== //depot/projects/hammer/lib/libc/stdio/vfwprintf.c#8 (text+ko) ==== @@ -41,7 +41,7 @@ #endif /* LIBC_SCCS and not lint */ __FBSDID("FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.58 2003/04/14 11:24:53 das Exp"); #endif -__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.12 2003/04/19 23:53:19 das Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/stdio/vfwprintf.c,v 1.13 2003/11/05 08:20:45 tjr Exp $"); /* * Actual wprintf innards. @@ -328,7 +328,6 @@ wchar_t *convbuf, *wcp; const char *p; size_t insize, nchars, nconv; - mbstate_t mbs; if (mbsarg == NULL) return (NULL); @@ -342,11 +341,10 @@ * String is not guaranteed to be NUL-terminated. Find the * number of characters to print. */ - memset(&mbs, 0, sizeof(mbs)); p = mbsarg; insize = nchars = 0; while (nchars != (size_t)prec) { - nconv = mbrlen(p, MB_CUR_MAX, &mbs); + nconv = mbrlen(p, MB_CUR_MAX, NULL); if (nconv == 0 || nconv == (size_t)-1 || nconv == (size_t)-2) break; @@ -369,9 +367,8 @@ return (NULL); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Nov 5 17:21:12 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 86DE716A4D0; Wed, 5 Nov 2003 17:21:12 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 605C916A4CE for ; Wed, 5 Nov 2003 17:21:12 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7D16043FD7 for ; Wed, 5 Nov 2003 17:21:11 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA61LBXJ071115 for ; Wed, 5 Nov 2003 17:21:11 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA61LAou071112 for perforce@freebsd.org; Wed, 5 Nov 2003 17:21:10 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 17:21:10 -0800 (PST) Message-Id: <200311060121.hA61LAou071112@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41507 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 01:21:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=41507 Change 41507 by peter@peter_daintree on 2003/11/05 17:21:04 integrate -I -b smp_hammer Affected files ... .. //depot/projects/hammer/sys/amd64/acpica/madt.c#12 integrate .. //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#5 integrate .. //depot/projects/hammer/sys/amd64/amd64/io_apic.c#13 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable.c#8 integrate .. //depot/projects/hammer/sys/amd64/isa/atpic.c#12 integrate .. //depot/projects/hammer/sys/amd64/isa/nmi.c#5 integrate .. //depot/projects/hammer/sys/jhb_notes#10 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/acpica/madt.c#12 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.1 2003/11/03 22:17:44 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.3 2003/11/05 23:15:51 jhb Exp $"); #include #include @@ -251,7 +251,8 @@ return (ENXIO); } if (bootverbose) - printf("MADT: Found table at %p\n", (void *)madt_physaddr); + printf("MADT: Found table at 0x%jx\n", + (uintmax_t)madt_physaddr); return (0); } @@ -267,13 +268,13 @@ table = madt_map(address, 0, sizeof(ACPI_TABLE_HEADER)); if (table == NULL) { if (bootverbose) - printf("MADT: Failed to map table at %p\n", - (void *)address); + printf("MADT: Failed to map table at 0x%jx\n", + (uintmax_t)address); return (0); } if (bootverbose) - printf("Table '%.4s' at %p\n", table->Signature, - (void *)address); + printf("Table '%.4s' at 0x%jx\n", table->Signature, + (uintmax_t)address); /* XXX: Verify checksum? */ if (strncmp(table->Signature, APIC_SIG, 4) != 0) { @@ -524,25 +525,33 @@ static void madt_parse_interrupt_override(INTERRUPT_SOURCE_OVERRIDE *intr) { - void *ioapic; - u_int pin; + void *new_ioapic, *old_ioapic; + u_int new_pin, old_pin; if (bootverbose) printf("MADT: intr override: source %u, irq %u\n", intr->Source, intr->GlobalSystemInterrupt); KASSERT(intr->Bus == 0, ("bus for interrupt overrides must be zero")); - if (madt_find_interrupt(intr->GlobalSystemInterrupt, - &ioapic, &pin) != 0) { + if (madt_find_interrupt(intr->GlobalSystemInterrupt, &new_ioapic, + &new_pin) != 0) { printf("MADT: Could not find APIC for vector %d (IRQ %d)\n", intr->GlobalSystemInterrupt, intr->Source); return; } - if (intr->Source != intr->GlobalSystemInterrupt) - ioapic_remap_vector(ioapic, pin, intr->Source); - ioapic_set_triggermode(ioapic, pin, + if (intr->Source != intr->GlobalSystemInterrupt) { + ioapic_remap_vector(new_ioapic, new_pin, intr->Source); + if (madt_find_interrupt(intr->Source, &old_ioapic, + &old_pin) != 0) + printf("MADT: Could not find APIC for source IRQ %d\n", + intr->Source); + else + ioapic_disable_pin(old_ioapic, old_pin); + } + ioapic_set_triggermode(new_ioapic, new_pin, interrupt_trigger(intr->TriggerMode)); - ioapic_set_polarity(ioapic, pin, interrupt_polarity(intr->Polarity)); + ioapic_set_polarity(new_ioapic, new_pin, + interrupt_polarity(intr->Polarity)); } /* ==== //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#5 (text+ko) ==== @@ -105,6 +105,7 @@ } intrcnt_register(isrc); interrupt_sources[vector] = isrc; + isrc->is_pic->pic_enable_intr(isrc); mtx_unlock_spin(&intr_table_lock); return (0); } @@ -130,7 +131,6 @@ ithread_priority(flags), flags, cookiep); if (error == 0) { intrcnt_updatename(isrc); - isrc->is_pic->pic_enable_intr(isrc); isrc->is_pic->pic_enable_source(isrc); } return (error); ==== //depot/projects/hammer/sys/amd64/amd64/io_apic.c#13 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/io_apic.c,v 1.1 2003/11/03 21:53:36 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/io_apic.c,v 1.4 2003/11/05 23:07:39 jhb Exp $"); #include "opt_isa.h" #include "opt_no_mixed_mode.h" @@ -59,10 +59,10 @@ #define IOAPIC_REDTBL_LO(i) (IOAPIC_REDTBL + (i) * 2) #define IOAPIC_REDTBL_HI(i) (IOAPIC_REDTBL_LO(i) + 1) -#define VECTOR_EXTINT -1 -#define VECTOR_NMI -2 -#define VECTOR_SMI -3 -#define VECTOR_DISABLED -4 +#define VECTOR_EXTINT 252 +#define VECTOR_NMI 253 +#define VECTOR_SMI 254 +#define VECTOR_DISABLED 255 #define DEST_NONE -1 #define DEST_EXTINT -2 @@ -97,11 +97,11 @@ struct ioapic_intsrc { struct intsrc io_intsrc; - int io_intpin:8; - int io_vector:8; - int io_activehi:1; - int io_edgetrigger:1; - int io_masked:1; + u_int io_intpin:8; + u_int io_vector:8; + u_int io_activehi:1; + u_int io_edgetrigger:1; + u_int io_masked:1; int io_dest:5; }; @@ -200,6 +200,7 @@ static void ioapic_eoi_source(struct intsrc *isrc) { + TODO; /* lapic_eoi(); */ } @@ -242,6 +243,7 @@ static void ioapic_assign_cluster(struct ioapic_intsrc *intpin) { + /* * Assign this intpin to a logical APIC cluster in a * round-robin fashion. We don't actually use the logical @@ -358,7 +360,7 @@ printf("ioapic%u: WARNING: intbase %d != expected base %d\n", io->io_id, intbase, next_ioapic_base); io->io_intbase = intbase; - next_ioapic_base += numintr; + next_ioapic_base = intbase + numintr; io->io_numintr = numintr; io->io_addr = apic; @@ -406,7 +408,7 @@ if (intpin->io_vector == VECTOR_EXTINT) printf("ExtINT\n"); else - printf("irq %d\n", intpin->io_vector); + printf("irq %u\n", intpin->io_vector); } value = ioapic_read(apic, IOAPIC_REDTBL_LO(i)); ioapic_write(apic, IOAPIC_REDTBL_LO(i), value | IOART_INTMSET); @@ -451,7 +453,7 @@ io = (struct ioapic *)cookie; if (pin >= io->io_numintr || vector < 0) return (EINVAL); - if (io->io_pins[pin].io_vector < 0) + if (io->io_pins[pin].io_vector >= NUM_IO_INTS) return (EINVAL); io->io_pins[pin].io_vector = vector; if (bootverbose) @@ -468,7 +470,7 @@ io = (struct ioapic *)cookie; if (pin >= io->io_numintr) return (EINVAL); - if (io->io_pins[pin].io_vector < 0) + if (io->io_pins[pin].io_vector >= NUM_IO_INTS) return (EINVAL); io->io_pins[pin].io_vector = VECTOR_NMI; io->io_pins[pin].io_masked = 0; @@ -488,7 +490,7 @@ io = (struct ioapic *)cookie; if (pin >= io->io_numintr) return (EINVAL); - if (io->io_pins[pin].io_vector < 0) + if (io->io_pins[pin].io_vector >= NUM_IO_INTS) return (EINVAL); io->io_pins[pin].io_vector = VECTOR_SMI; io->io_pins[pin].io_masked = 0; @@ -508,7 +510,7 @@ io = (struct ioapic *)cookie; if (pin >= io->io_numintr) return (EINVAL); - if (io->io_pins[pin].io_vector < 0) + if (io->io_pins[pin].io_vector >= NUM_IO_INTS) return (EINVAL); io->io_pins[pin].io_vector = VECTOR_EXTINT; io->io_pins[pin].io_masked = 0; @@ -528,7 +530,7 @@ io = (struct ioapic *)cookie; if (pin >= io->io_numintr) return (EINVAL); - if (io->io_pins[pin].io_vector < 0) + if (io->io_pins[pin].io_vector >= NUM_IO_INTS) return (EINVAL); io->io_pins[pin].io_activehi = activehi; if (bootverbose) @@ -545,7 +547,7 @@ io = (struct ioapic *)cookie; if (pin >= io->io_numintr) return (EINVAL); - if (io->io_pins[pin].io_vector < 0) + if (io->io_pins[pin].io_vector >= NUM_IO_INTS) return (EINVAL); io->io_pins[pin].io_edgetrigger = edgetrigger; if (bootverbose) @@ -572,8 +574,9 @@ flags = ioapic_read(apic, IOAPIC_VER) & IOART_VER_VERSION; STAILQ_INSERT_TAIL(&ioapic_list, io, io_next); mtx_unlock_spin(&icu_lock); - printf("ioapic%u irqs %u-%u on motherboard\n", io->io_id, - flags, io->io_intbase, io->io_intbase + io->io_numintr - 1); + printf("ioapic%u irqs %u-%u on motherboard\n", + io->io_id, flags >> 4, flags & 0xf, io->io_intbase, + io->io_intbase + io->io_numintr - 1); for (i = 0, pin = io->io_pins; i < io->io_numintr; i++, pin++) { /* * Finish initializing the pins by programming the vectors @@ -625,7 +628,7 @@ flags |= PCPU_GET(apic_id) << APIC_ID_SHIFT; ioapic_write(apic, IOAPIC_REDTBL_HI(i), flags); mtx_unlock_spin(&icu_lock); - if (pin->io_vector >= 0) { + if (pin->io_vector < NUM_IO_INTS) { #ifdef MIXED_MODE /* Route IRQ0 via the 8259A using mixed mode. */ if (pin->io_vector == 0) ==== //depot/projects/hammer/sys/amd64/amd64/mptable.c#8 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/mptable.c,v 1.220 2003/11/03 22:12:37 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/mptable.c,v 1.222 2003/11/05 23:15:52 jhb Exp $"); #include #include @@ -650,8 +650,12 @@ if (busses[intr->src_bus_id].bus_type == NOBUS) panic("interrupt from missing bus"); if (busses[intr->src_bus_id].bus_type == ISA && - intr->src_bus_irq != pin) + intr->src_bus_irq != pin) { ioapic_remap_vector(ioapic, pin, intr->src_bus_irq); + if (ioapic_get_vector(ioapic, intr->src_bus_irq) == + intr->src_bus_irq) + ioapic_disable_pin(ioapic, intr->src_bus_irq); + } break; case INTENTRY_TYPE_NMI: ioapic_set_nmi(ioapic, pin); @@ -890,6 +894,7 @@ { struct pci_route_interrupt_args *args; int_entry_ptr intr; + int vector; if (*entry != MPCT_ENTRY_INT) return; @@ -897,12 +902,24 @@ args = (struct pci_route_interrupt_args *)arg; if (intr->src_bus_id != args->bus || intr->src_bus_irq != args->irq) return; - KASSERT(args->vector == -1, - ("Multiple entries for PCI IRQ %d", args->vector)); + + /* Make sure the APIC maps to a known APIC. */ KASSERT(ioapics[intr->dst_apic_id] != NULL, ("No I/O APIC %d to route interrupt to", intr->dst_apic_id)); - args->vector = ioapic_get_vector(ioapics[intr->dst_apic_id], + + /* + * Look up the vector for this APIC / pin combination. If we + * have previously matched an entry for this PCI IRQ but it + * has the same vector as this entry, just return. Otherwise, + * we use the vector for this APIC / pin combination. + */ + vector = ioapic_get_vector(ioapics[intr->dst_apic_id], intr->dst_apic_int); + if (args->vector == vector) + return; + KASSERT(args->vector == -1, + ("Multiple entries for PCI IRQ %d", args->vector)); + args->vector = vector; } int ==== //depot/projects/hammer/sys/amd64/isa/atpic.c#12 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/isa/atpic.c,v 1.1 2003/11/03 21:34:45 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/isa/atpic.c,v 1.2 2003/11/04 13:13:04 nyan Exp $"); #include "opt_auto_eoi.h" #include "opt_isa.h" @@ -52,8 +52,8 @@ #include #include +#include #include -#include #ifdef DEV_ISA #include @@ -366,7 +366,9 @@ static devclass_t atpic_devclass; DRIVER_MODULE(atpic, isa, atpic_driver, atpic_devclass, 0, 0); +#ifndef PC98 DRIVER_MODULE(atpic, acpi, atpic_driver, atpic_devclass, 0, 0); +#endif /* * Return a bitmap of the current interrupt requests. This is 8259-specific ==== //depot/projects/hammer/sys/amd64/isa/nmi.c#5 (text+ko) ==== @@ -37,7 +37,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/isa/nmi.c,v 1.77 2003/11/03 21:10:17 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/isa/nmi.c,v 1.78 2003/11/04 13:01:41 nyan Exp $"); #include "opt_mca.h" @@ -51,16 +51,11 @@ #include #endif -#ifdef PC98 -#define NMI_PARITY 0x04 -#define NMI_EPARITY 0x02 -#else #define NMI_PARITY (1 << 7) #define NMI_IOCHAN (1 << 6) #define ENMI_WATCHDOG (1 << 7) #define ENMI_BUSTIMER (1 << 6) #define ENMI_IOSTATUS (1 << 5) -#endif /* * Handle a NMI, possibly a machine check. @@ -70,22 +65,6 @@ isa_nmi(int cd) { int retval = 0; -#ifdef PC98 - int port = inb(0x33); - - log(LOG_CRIT, "NMI PC98 port = %x\n", port); - if (epson_machine_id == 0x20) - epson_outb(0xc16, epson_inb(0xc16) | 0x1); - if (port & NMI_PARITY) { - log(LOG_CRIT, "BASE RAM parity error, likely hardware failure."); - retval = 1; - } else if (port & NMI_EPARITY) { - log(LOG_CRIT, "EXTENDED RAM parity error, likely hardware failure."); - retval = 1; - } else { - log(LOG_CRIT, "\nNMI Resume ??\n"); - } -#else /* IBM-PC */ int isa_port = inb(0x61); int eisa_port = inb(0x461); @@ -127,6 +106,6 @@ log(LOG_CRIT, "EISA I/O port status error."); retval = 1; } -#endif + return(retval); } ==== //depot/projects/hammer/sys/jhb_notes#10 (text+ko) ==== @@ -1,4 +1,8 @@ Todo: +- Add a MI interrupt source abstraction and move handlers out of ithd and + into that + - Defer creation of ithreads until a non-fast handler is added to an + interrupt source - DDB - Add 'show ithread' + Add 'show irqs' @@ -29,7 +33,7 @@ + Add NO_MIXED_MODE option - Add runtime decision for IRQ0 mixed mode? - Don't use mixed mode with MADT? -- Perhaps change the IRQ resource manager such that it starts out empty ++ Perhaps change the IRQ resource manager such that it starts out empty and a resource entry for each IRQ is added as each IRQ is registered - Add handling of local APIC ERROR lvt. - Use the local apic timer to drive hard/stat/profclock (maybe too hard) From owner-p4-projects@FreeBSD.ORG Wed Nov 5 17:28:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6542216A4D0; Wed, 5 Nov 2003 17:28:22 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4020016A4CE for ; Wed, 5 Nov 2003 17:28:22 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7FA4D4401A for ; Wed, 5 Nov 2003 17:28:21 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA61SLXJ071595 for ; Wed, 5 Nov 2003 17:28:21 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA61SKIb071592 for perforce@freebsd.org; Wed, 5 Nov 2003 17:28:21 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 17:28:21 -0800 (PST) Message-Id: <200311060128.hA61SKIb071592@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41509 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 01:28:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=41509 Change 41509 by peter@peter_daintree on 2003/11/05 17:27:32 IFC @41508 Affected files ... .. //depot/projects/hammer/sys/i386/i386/mp_machdep.c#18 integrate Differences ... ==== //depot/projects/hammer/sys/i386/i386/mp_machdep.c#18 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/mp_machdep.c,v 1.220 2003/11/03 22:32:03 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/mp_machdep.c,v 1.221 2003/11/06 01:24:25 peter Exp $"); #include "opt_apic.h" #include "opt_cpu.h" @@ -917,10 +917,10 @@ * it appears slightly slower. * * Another variant (also from fortune): - * #define BITCOUNT(x) (((BX_(x)+(BX_(x)>>4)) & 0x0F0F0F0F) % 255) - * #define BX_(x) ((x) - (((x)>>1)&0x77777777) \ - * - (((x)>>2)&0x33333333) \ - * - (((x)>>3)&0x11111111)) + * #define BITCOUNT(x) (((BX_(x)+(BX_(x)>>4)) & 0x0F0F0F0F) % 255) + * #define BX_(x) ((x) - (((x)>>1)&0x77777777) \ + * - (((x)>>2)&0x33333333) \ + * - (((x)>>3)&0x11111111)) */ static __inline u_int32_t popcnt(u_int32_t m) From owner-p4-projects@FreeBSD.ORG Wed Nov 5 17:30:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8769516A4CF; Wed, 5 Nov 2003 17:30:26 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4B16216A4D0 for ; Wed, 5 Nov 2003 17:30:26 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5E1B643FEA for ; Wed, 5 Nov 2003 17:30:25 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA61UPXJ071814 for ; Wed, 5 Nov 2003 17:30:25 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA61UOol071809 for perforce@freebsd.org; Wed, 5 Nov 2003 17:30:24 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 17:30:24 -0800 (PST) Message-Id: <200311060130.hA61UOol071809@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41511 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 01:30:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=41511 Change 41511 by peter@peter_daintree on 2003/11/05 17:29:58 retarget smp_hammer branch source to sys/i386 in the hammer branch itself Affected files ... .. //depot/projects/hammer/sys/amd64/acpica/madt.c#13 integrate .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#16 integrate .. //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#6 integrate .. //depot/projects/hammer/sys/amd64/amd64/io_apic.c#14 integrate .. //depot/projects/hammer/sys/amd64/amd64/local_apic.c#16 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#21 integrate .. //depot/projects/hammer/sys/amd64/amd64/mpboot.s#13 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable.c#9 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#4 integrate .. //depot/projects/hammer/sys/amd64/include/apicreg.h#5 integrate .. //depot/projects/hammer/sys/amd64/include/apicvar.h#9 integrate .. //depot/projects/hammer/sys/amd64/include/intr_machdep.h#6 integrate .. //depot/projects/hammer/sys/amd64/include/mptable.h#3 integrate .. //depot/projects/hammer/sys/amd64/include/smp.h#9 integrate .. //depot/projects/hammer/sys/amd64/isa/atpic.c#13 integrate .. //depot/projects/hammer/sys/amd64/isa/atpic_vector.s#8 integrate .. //depot/projects/hammer/sys/amd64/isa/nmi.c#6 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/acpica/madt.c#13 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#16 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#6 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/io_apic.c#14 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/local_apic.c#16 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#21 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mpboot.s#13 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mptable.c#9 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#4 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/apicreg.h#5 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/apicvar.h#9 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/intr_machdep.h#6 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/mptable.h#3 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/smp.h#9 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/atpic.c#13 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/atpic_vector.s#8 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/nmi.c#6 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Wed Nov 5 17:42:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7431816A4D0; Wed, 5 Nov 2003 17:42:48 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 085C416A4CE for ; Wed, 5 Nov 2003 17:42:47 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 46CC843FBF for ; Wed, 5 Nov 2003 17:42:47 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA61glXJ072543 for ; Wed, 5 Nov 2003 17:42:47 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA61gkLY072540 for perforce@freebsd.org; Wed, 5 Nov 2003 17:42:46 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 17:42:46 -0800 (PST) Message-Id: <200311060142.hA61gkLY072540@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41515 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 01:42:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=41515 Change 41515 by peter@peter_daintree on 2003/11/05 17:42:24 sync with vendor branch (mismerge) Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#22 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#22 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/mp_machdep.c,v 1.220 2003/11/03 22:32:03 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/mp_machdep.c,v 1.221 2003/11/06 01:24:25 peter Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -744,6 +744,12 @@ * -mcpu=pentiumpro and -march=pentiumpro then gcc-3.1 will use * an imull, and in that case it is faster. In most other cases * it appears slightly slower. + * + * Another variant (also from fortune): + * #define BITCOUNT(x) (((BX_(x)+(BX_(x)>>4)) & 0x0F0F0F0F) % 255) + * #define BX_(x) ((x) - (((x)>>1)&0x77777777) \ + * - (((x)>>2)&0x33333333) \ + * - (((x)>>3)&0x11111111)) */ static __inline u_int32_t popcnt(u_int32_t m) From owner-p4-projects@FreeBSD.ORG Wed Nov 5 17:49:57 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6C45A16A4D0; Wed, 5 Nov 2003 17:49:57 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 47A8316A4CE for ; Wed, 5 Nov 2003 17:49:57 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8523344011 for ; Wed, 5 Nov 2003 17:49:56 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA61nuXJ072952 for ; Wed, 5 Nov 2003 17:49:56 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA61nuaS072949 for perforce@freebsd.org; Wed, 5 Nov 2003 17:49:56 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 17:49:56 -0800 (PST) Message-Id: <200311060149.hA61nuaS072949@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41516 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 01:49:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=41516 Change 41516 by peter@peter_daintree on 2003/11/05 17:49:23 source branch sync Affected files ... .. //depot/projects/hammer/sys/amd64/isa/atpic_vector.s#9 edit Differences ... ==== //depot/projects/hammer/sys/amd64/isa/atpic_vector.s#9 (text+ko) ==== @@ -32,7 +32,7 @@ * SUCH DAMAGE. * * from: vector.s, 386BSD 0.1 unknown origin - * $FreeBSD: src/sys/i386/isa/icu_vector.s,v 1.37 2002/04/06 08:25:05 nyan Exp $ + * $FreeBSD: src/sys/i386/isa/atpic_vector.s,v 1.38 2003/11/03 21:34:45 jhb Exp $ */ /* From owner-p4-projects@FreeBSD.ORG Wed Nov 5 17:51:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D632616A4D0; Wed, 5 Nov 2003 17:50:59 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B012B16A4CE for ; Wed, 5 Nov 2003 17:50:59 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A5B334400F for ; Wed, 5 Nov 2003 17:50:58 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA61owXJ073116 for ; Wed, 5 Nov 2003 17:50:58 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA61ovQc073113 for perforce@freebsd.org; Wed, 5 Nov 2003 17:50:57 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 17:50:57 -0800 (PST) Message-Id: <200311060150.hA61ovQc073113@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41517 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 01:51:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=41517 Change 41517 by peter@peter_daintree on 2003/11/05 17:50:32 oops, PC98 leakage Affected files ... .. //depot/projects/hammer/sys/amd64/isa/atpic.c#14 edit Differences ... ==== //depot/projects/hammer/sys/amd64/isa/atpic.c#14 (text+ko) ==== @@ -366,9 +366,7 @@ static devclass_t atpic_devclass; DRIVER_MODULE(atpic, isa, atpic_driver, atpic_devclass, 0, 0); -#ifndef PC98 DRIVER_MODULE(atpic, acpi, atpic_driver, atpic_devclass, 0, 0); -#endif /* * Return a bitmap of the current interrupt requests. This is 8259-specific From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:11:28 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4224516A4D0; Wed, 5 Nov 2003 18:11:28 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1C2A416A4CE for ; Wed, 5 Nov 2003 18:11:28 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8602443FF2 for ; Wed, 5 Nov 2003 18:11:27 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62BRXJ075303 for ; Wed, 5 Nov 2003 18:11:27 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62BRJ8075300 for perforce@freebsd.org; Wed, 5 Nov 2003 18:11:27 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:11:27 -0800 (PST) Message-Id: <200311060211.hA62BRJ8075300@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41523 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:11:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=41523 Change 41523 by peter@peter_daintree on 2003/11/05 18:10:39 rename files. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.S#1 branch .. //depot/projects/hammer/sys/amd64/amd64/mpboot.S#1 branch .. //depot/projects/hammer/sys/amd64/isa/atpic_vector.S#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:12:30 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 45C5416A4D0; Wed, 5 Nov 2003 18:12:30 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 092B816A4CE for ; Wed, 5 Nov 2003 18:12:30 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F39E43FFD for ; Wed, 5 Nov 2003 18:12:29 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62CTXJ075348 for ; Wed, 5 Nov 2003 18:12:29 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62CSCc075345 for perforce@freebsd.org; Wed, 5 Nov 2003 18:12:28 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:12:28 -0800 (PST) Message-Id: <200311060212.hA62CSCc075345@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41524 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:12:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=41524 Change 41524 by peter@peter_daintree on 2003/11/05 18:11:45 nuke after rename. Integrate -I knows the histories. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.s#17 delete .. //depot/projects/hammer/sys/amd64/amd64/mpboot.s#14 delete .. //depot/projects/hammer/sys/amd64/isa/atpic_vector.s#10 delete Differences ... From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:13:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 053AB16A4D0; Wed, 5 Nov 2003 18:13:33 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D2E0D16A4CF for ; Wed, 5 Nov 2003 18:13:32 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A34843FF3 for ; Wed, 5 Nov 2003 18:13:31 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62DVXJ075417 for ; Wed, 5 Nov 2003 18:13:31 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62DUpC075411 for perforce@freebsd.org; Wed, 5 Nov 2003 18:13:30 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:13:30 -0800 (PST) Message-Id: <200311060213.hA62DUpC075411@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41525 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:13:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=41525 Change 41525 by peter@peter_daintree on 2003/11/05 18:13:26 rename *.s to *.S like the other amd64 *.S files Affected files ... .. //depot/projects/hammer/sys/conf/files.amd64#27 edit Differences ... ==== //depot/projects/hammer/sys/conf/files.amd64#27 (text+ko) ==== @@ -51,7 +51,7 @@ amd64/acpica/madt.c optional acpi amd64/amd64/amd64-gdbstub.c optional ddb amd64/amd64/amd64_mem.c standard -amd64/amd64/apic_vector.s standard +amd64/amd64/apic_vector.S standard amd64/amd64/atomic.c standard amd64/amd64/autoconf.c standard amd64/amd64/busdma_machdep.c standard @@ -73,7 +73,7 @@ amd64/amd64/machdep.c standard amd64/amd64/mem.c standard amd64/amd64/mp_machdep.c optional smp -amd64/amd64/mpboot.s optional smp +amd64/amd64/mpboot.S optional smp amd64/amd64/mptable.c standard amd64/amd64/mptable_pci.c optional pci amd64/amd64/nexus.c standard @@ -85,10 +85,10 @@ amd64/amd64/tsc.c standard amd64/amd64/uma_machdep.c standard amd64/amd64/vm_machdep.c standard -amd64/amd64/in_cksum.c optional inet +amd64/amd64/in_cksum.c optional inet amd64/isa/atpic.c standard -amd64/isa/atpic_vector.s standard +amd64/isa/atpic_vector.S standard amd64/isa/clock.c standard amd64/isa/isa.c standard amd64/isa/isa_dma.c standard From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:16:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 988EF16A4D1; Wed, 5 Nov 2003 18:16:37 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D86716A4CF for ; Wed, 5 Nov 2003 18:16:37 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DCBDF43FAF for ; Wed, 5 Nov 2003 18:16:35 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62GZXJ075600 for ; Wed, 5 Nov 2003 18:16:35 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62GZig075597 for perforce@freebsd.org; Wed, 5 Nov 2003 18:16:35 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:16:35 -0800 (PST) Message-Id: <200311060216.hA62GZig075597@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41526 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:16:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=41526 Change 41526 by peter@peter_daintree on 2003/11/05 18:16:18 sort -u. ugh. Affected files ... .. //depot/projects/hammer/sys/conf/files.amd64#28 edit Differences ... ==== //depot/projects/hammer/sys/conf/files.amd64#28 (text+ko) ==== @@ -21,30 +21,6 @@ clean "ia32_assym.h" # -dev/kbd/atkbd.c optional atkbd -dev/kbd/atkbdc.c optional atkbdc -dev/kbd/kbd.c optional atkbd -dev/kbd/kbd.c optional kbd -dev/kbd/kbd.c optional sc -dev/kbd/kbd.c optional ukbd -dev/kbd/kbd.c optional vt -dev/sio/sio.c optional sio -dev/sio/sio_isa.c optional sio isa -dev/syscons/apm/apm_saver.c optional apm_saver apm -dev/syscons/schistory.c optional sc -dev/syscons/scmouse.c optional sc -dev/syscons/scterm.c optional sc -dev/syscons/scterm-dumb.c optional sc -dev/syscons/scterm-sc.c optional sc -dev/syscons/scvesactl.c optional sc vga vesa -dev/syscons/scvgarndr.c optional sc vga -dev/syscons/scvidctl.c optional sc -dev/syscons/scvtb.c optional sc -dev/syscons/syscons.c optional sc -dev/syscons/sysmouse.c optional sc -dev/uart/uart_cpu_amd64.c optional uart -isa/atkbd_isa.c optional atkbd - amd64/acpica/OsdEnvironment.c optional acpi amd64/acpica/acpi_machdep.c optional acpi amd64/acpica/acpi_wakeup.c optional acpi @@ -64,6 +40,7 @@ amd64/amd64/elf_machdep.c standard amd64/amd64/exception.S standard amd64/amd64/identcpu.c standard +amd64/amd64/in_cksum.c optional inet amd64/amd64/initcpu.c standard amd64/amd64/intr_machdep.c standard amd64/amd64/io_apic.c standard @@ -85,8 +62,9 @@ amd64/amd64/tsc.c standard amd64/amd64/uma_machdep.c standard amd64/amd64/vm_machdep.c standard -amd64/amd64/in_cksum.c optional inet - +amd64/ia32/ia32_exception.S optional ia32 +amd64/ia32/ia32_signal.c optional ia32 +amd64/ia32/ia32_syscall.c optional ia32 amd64/isa/atpic.c standard amd64/isa/atpic_vector.S standard amd64/isa/clock.c standard @@ -94,28 +72,17 @@ amd64/isa/isa_dma.c standard amd64/isa/nmi.c standard amd64/isa/npx.c standard - +amd64/pci/pci_bus.c optional pci amd64/pci/pci_cfgreg.c optional pci -amd64/pci/pci_bus.c optional pci - compat/freebsd32/freebsd32_misc.c optional ia32 compat/freebsd32/freebsd32_syscalls.c optional ia32 compat/freebsd32/freebsd32_sysent.c optional ia32 compat/ia32/ia32_sigtramp.S optional ia32 compat/ia32/ia32_sysvec.c optional ia32 -amd64/ia32/ia32_signal.c optional ia32 -amd64/ia32/ia32_exception.S optional ia32 -amd64/ia32/ia32_syscall.c optional ia32 -kern/imgact_elf32.c optional ia32 - -# This file tells config what files go into building a kernel, -# files marked standard are always included. -# dev/fb/fb.c optional fb dev/fb/fb.c optional vga dev/fb/splash.c optional splash dev/fb/vga.c optional vga - dev/kbd/atkbd.c optional atkbd dev/kbd/atkbdc.c optional atkbdc dev/kbd/kbd.c optional atkbd @@ -123,35 +90,36 @@ dev/kbd/kbd.c optional sc dev/kbd/kbd.c optional ukbd dev/kbd/kbd.c optional vt - dev/ppc/ppc.c optional ppc - +dev/sio/sio.c optional sio +dev/sio/sio_isa.c optional sio isa +dev/syscons/apm/apm_saver.c optional apm_saver apm dev/syscons/schistory.c optional sc dev/syscons/scmouse.c optional sc -dev/syscons/scterm.c optional sc dev/syscons/scterm-dumb.c optional sc dev/syscons/scterm-sc.c optional sc +dev/syscons/scterm.c optional sc +dev/syscons/scvesactl.c optional sc vga vesa dev/syscons/scvgarndr.c optional sc vga dev/syscons/scvidctl.c optional sc dev/syscons/scvtb.c optional sc dev/syscons/syscons.c optional sc dev/syscons/sysmouse.c optional sc +dev/uart/uart_cpu_amd64.c optional uart geom/geom_bsd.c standard geom/geom_bsd_enc.c standard geom/geom_mbr.c standard geom/geom_mbr_enc.c standard - -#i386/isa/pmtimer.c optional pmtimer -# isa/atkbd_isa.c optional atkbd isa/atkbdc_isa.c optional atkbdc isa/fd.c optional fdc isa/psm.c optional psm isa/syscons_isa.c optional sc isa/vga_isa.c optional vga -pci/agp_intel.c optional agp -pci/agp_via.c optional agp -pci/agp_sis.c optional agp +kern/imgact_elf32.c optional ia32 pci/agp_ali.c optional agp pci/agp_amd.c optional agp pci/agp_i810.c optional agp +pci/agp_intel.c optional agp +pci/agp_sis.c optional agp +pci/agp_via.c optional agp From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:17:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1D6E716A4D1; Wed, 5 Nov 2003 18:17:39 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EAED916A4CF for ; Wed, 5 Nov 2003 18:17:38 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BE18443FF5 for ; Wed, 5 Nov 2003 18:17:37 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62HbXJ075621 for ; Wed, 5 Nov 2003 18:17:37 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62Hb6s075618 for perforce@freebsd.org; Wed, 5 Nov 2003 18:17:37 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:17:37 -0800 (PST) Message-Id: <200311060217.hA62Hb6s075618@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41527 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:17:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=41527 Change 41527 by peter@peter_daintree on 2003/11/05 18:16:54 no pcvt on amd64 Affected files ... .. //depot/projects/hammer/sys/conf/files.amd64#29 edit Differences ... ==== //depot/projects/hammer/sys/conf/files.amd64#29 (text+ko) ==== @@ -89,7 +89,6 @@ dev/kbd/kbd.c optional kbd dev/kbd/kbd.c optional sc dev/kbd/kbd.c optional ukbd -dev/kbd/kbd.c optional vt dev/ppc/ppc.c optional ppc dev/sio/sio.c optional sio dev/sio/sio_isa.c optional sio isa From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:18:41 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EB4C316A4D0; Wed, 5 Nov 2003 18:18:40 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C706D16A4CE for ; Wed, 5 Nov 2003 18:18:40 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3793E44013 for ; Wed, 5 Nov 2003 18:18:40 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62IeXJ075739 for ; Wed, 5 Nov 2003 18:18:40 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62Idwa075736 for perforce@freebsd.org; Wed, 5 Nov 2003 18:18:39 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:18:39 -0800 (PST) Message-Id: <200311060218.hA62Idwa075736@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41529 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:18:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=41529 Change 41529 by peter@peter_daintree on 2003/11/05 18:17:58 no VESA on amd64 Affected files ... .. //depot/projects/hammer/sys/conf/files.amd64#30 edit Differences ... ==== //depot/projects/hammer/sys/conf/files.amd64#30 (text+ko) ==== @@ -98,7 +98,6 @@ dev/syscons/scterm-dumb.c optional sc dev/syscons/scterm-sc.c optional sc dev/syscons/scterm.c optional sc -dev/syscons/scvesactl.c optional sc vga vesa dev/syscons/scvgarndr.c optional sc vga dev/syscons/scvidctl.c optional sc dev/syscons/scvtb.c optional sc From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:21:47 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B41EB16A4D0; Wed, 5 Nov 2003 18:21:46 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8E18416A4CF for ; Wed, 5 Nov 2003 18:21:46 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 345754400D for ; Wed, 5 Nov 2003 18:21:45 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62LiXJ075921 for ; Wed, 5 Nov 2003 18:21:44 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62LiNr075918 for perforce@freebsd.org; Wed, 5 Nov 2003 18:21:44 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:21:44 -0800 (PST) Message-Id: <200311060221.hA62LiNr075918@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41531 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:21:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=41531 Change 41531 by peter@peter_daintree on 2003/11/05 18:20:46 group the binary emulation stuff together. Affected files ... .. //depot/projects/hammer/sys/conf/files.amd64#31 edit Differences ... ==== //depot/projects/hammer/sys/conf/files.amd64#31 (text+ko) ==== @@ -20,7 +20,6 @@ no-obj no-implicit-rule before-depend \ clean "ia32_assym.h" # - amd64/acpica/OsdEnvironment.c optional acpi amd64/acpica/acpi_machdep.c optional acpi amd64/acpica/acpi_wakeup.c optional acpi @@ -62,9 +61,6 @@ amd64/amd64/tsc.c standard amd64/amd64/uma_machdep.c standard amd64/amd64/vm_machdep.c standard -amd64/ia32/ia32_exception.S optional ia32 -amd64/ia32/ia32_signal.c optional ia32 -amd64/ia32/ia32_syscall.c optional ia32 amd64/isa/atpic.c standard amd64/isa/atpic_vector.S standard amd64/isa/clock.c standard @@ -74,11 +70,6 @@ amd64/isa/npx.c standard amd64/pci/pci_bus.c optional pci amd64/pci/pci_cfgreg.c optional pci -compat/freebsd32/freebsd32_misc.c optional ia32 -compat/freebsd32/freebsd32_syscalls.c optional ia32 -compat/freebsd32/freebsd32_sysent.c optional ia32 -compat/ia32/ia32_sigtramp.S optional ia32 -compat/ia32/ia32_sysvec.c optional ia32 dev/fb/fb.c optional fb dev/fb/fb.c optional vga dev/fb/splash.c optional splash @@ -114,10 +105,21 @@ isa/psm.c optional psm isa/syscons_isa.c optional sc isa/vga_isa.c optional vga -kern/imgact_elf32.c optional ia32 pci/agp_ali.c optional agp pci/agp_amd.c optional agp pci/agp_i810.c optional agp pci/agp_intel.c optional agp pci/agp_sis.c optional agp pci/agp_via.c optional agp +# +# IA32 binary support +# +amd64/ia32/ia32_exception.S optional ia32 +amd64/ia32/ia32_signal.c optional ia32 +amd64/ia32/ia32_syscall.c optional ia32 +compat/freebsd32/freebsd32_misc.c optional ia32 +compat/freebsd32/freebsd32_syscalls.c optional ia32 +compat/freebsd32/freebsd32_sysent.c optional ia32 +compat/ia32/ia32_sigtramp.S optional ia32 +compat/ia32/ia32_sysvec.c optional ia32 +kern/imgact_elf32.c optional ia32 From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:22:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C77E416A4D0; Wed, 5 Nov 2003 18:22:47 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9FC3E16A4CE for ; Wed, 5 Nov 2003 18:22:47 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0570E43FF7 for ; Wed, 5 Nov 2003 18:22:47 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62MkXJ075975 for ; Wed, 5 Nov 2003 18:22:46 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62Mk18075972 for perforce@freebsd.org; Wed, 5 Nov 2003 18:22:46 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:22:46 -0800 (PST) Message-Id: <200311060222.hA62Mk18075972@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41532 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:22:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=41532 Change 41532 by peter@peter_daintree on 2003/11/05 18:21:57 no auto_eoi option Affected files ... .. //depot/projects/hammer/sys/amd64/isa/atpic.c#15 edit Differences ... ==== //depot/projects/hammer/sys/amd64/isa/atpic.c#15 (text+ko) ==== @@ -34,7 +34,6 @@ #include __FBSDID("$FreeBSD: src/sys/i386/isa/atpic.c,v 1.2 2003/11/04 13:13:04 nyan Exp $"); -#include "opt_auto_eoi.h" #include "opt_isa.h" #include From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:23:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 155BD16A4D0; Wed, 5 Nov 2003 18:23:51 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DD5FA16A4DB for ; Wed, 5 Nov 2003 18:23:50 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 54FEC43FF9 for ; Wed, 5 Nov 2003 18:23:49 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62NnXJ076005 for ; Wed, 5 Nov 2003 18:23:49 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62Nm7P076002 for perforce@freebsd.org; Wed, 5 Nov 2003 18:23:48 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:23:48 -0800 (PST) Message-Id: <200311060223.hA62Nm7P076002@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41534 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:23:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=41534 Change 41534 by peter@peter_daintree on 2003/11/05 18:23:08 no machine/smptests.h on amd64 Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.S#2 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/apic_vector.S#2 (text+ko) ==== @@ -42,7 +42,6 @@ #include #include -#include #include "assym.s" From owner-p4-projects@FreeBSD.ORG Wed Nov 5 18:48:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E770A16A4D0; Wed, 5 Nov 2003 18:48:21 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C348816A4CE for ; Wed, 5 Nov 2003 18:48:21 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4AB1444013 for ; Wed, 5 Nov 2003 18:48:21 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA62mLXJ077128 for ; Wed, 5 Nov 2003 18:48:21 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA62mK0o077125 for perforce@freebsd.org; Wed, 5 Nov 2003 18:48:20 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 18:48:20 -0800 (PST) Message-Id: <200311060248.hA62mK0o077125@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41538 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 02:48:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=41538 Change 41538 by peter@peter_daintree on 2003/11/05 18:47:28 I'm not sure what this is for, but jhb committed pcpu->pc_acpi_id. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#60 edit .. //depot/projects/hammer/sys/amd64/include/pcpu.h#11 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/machdep.c#60 (text+ko) ==== @@ -1291,6 +1291,8 @@ void cpu_pcpu_init(struct pcpu *pcpu, int cpuid, size_t size) { + + pcpu->pc_acpi_id = 0xffffffff; } int ==== //depot/projects/hammer/sys/amd64/include/pcpu.h#11 (text+ko) ==== @@ -42,7 +42,8 @@ struct pcpu *pc_prvspace; /* Self-reference */ \ struct pmap *pc_curpmap; \ register_t pc_scratch_rsp; /* User %rsp in syscall */ \ - u_int pc_apic_id; + u_int pc_apic_id; \ + u_int pc_acpi_id; #if defined(lint) From owner-p4-projects@FreeBSD.ORG Wed Nov 5 19:20:03 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C90F16A4D1; Wed, 5 Nov 2003 19:20:03 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2627A16A4CE for ; Wed, 5 Nov 2003 19:20:03 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73BCA4400E for ; Wed, 5 Nov 2003 19:20:02 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA63K2XJ079310 for ; Wed, 5 Nov 2003 19:20:02 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA63K1f3079307 for perforce@freebsd.org; Wed, 5 Nov 2003 19:20:02 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 19:20:02 -0800 (PST) Message-Id: <200311060320.hA63K1f3079307@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41542 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 03:20:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=41542 Change 41542 by peter@peter_daintree on 2003/11/05 19:19:57 make things compile. deal with new mpboot.S Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#23 edit .. //depot/projects/hammer/sys/amd64/amd64/mpboot.S#2 edit .. //depot/projects/hammer/sys/amd64/include/smp.h#10 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#23 (text+ko) ==== @@ -147,6 +147,7 @@ static int hlt_cpus_mask; static int hlt_logical_cpus = 1; static struct sysctl_ctx_list logical_cpu_clist; +static u_int bootMP_size; /* * Calculate usable address in base memory for AP trampoline code. @@ -155,9 +156,10 @@ mp_bootaddress(u_int basemem) { - boot_address = basemem & ~0xfff; /* round down to 4k boundary */ + bootMP_size = mptramp_end - mptramp_start; + boot_address = basemem & ~PAGE_MASK; /* round down to 4k boundary */ if ((basemem - boot_address) < bootMP_size) - boot_address -= 4096; /* not enough, lower by 4k */ + boot_address -= PAGE_SIZE; /* not enough, lower by 4k */ return boot_address; } ==== //depot/projects/hammer/sys/amd64/amd64/mpboot.S#2 (text+ko) ==== @@ -88,7 +88,7 @@ * means we are required to use a temporary page table that is below * the 4GB limit. */ - movl $pagetables, %eax XXX + movl $pagetables, %eax mov %eax, %cr3 /* @@ -111,13 +111,13 @@ mov %eax, %cr3 .byte 0xea /* opcode for far jump */ - .long entry_64 /* 64 bit flat address */ + .quad entry_64 /* 64 bit flat address */ .word kernelcode-gdt /* selector offset */ .p2align 4,0 gdt: /* - * All segment descriptor tables start with a null descriptor */ + * All segment descriptor tables start with a null descriptor */ .long 0x00000000 .long 0x00000000 @@ -155,6 +155,9 @@ gdtend: + .globl pagetables +pagetables: + .long 0 /* * The pseudo descriptor for lgdt to use. */ ==== //depot/projects/hammer/sys/amd64/include/smp.h#10 (text+ko) ==== @@ -24,11 +24,9 @@ #include #include -/* global data in mpboot.s */ -extern int bootMP_size; - -/* functions in mpboot.s */ -void bootMP(void); +/* global data in mpboot.S */ +extern char mptramp_start[]; +extern char mptramp_end[]; /* global data in mp_machdep.c */ extern int mp_naps; From owner-p4-projects@FreeBSD.ORG Wed Nov 5 19:21:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0E37616A4D0; Wed, 5 Nov 2003 19:21:05 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DD60516A4CE for ; Wed, 5 Nov 2003 19:21:04 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 65B2743FBD for ; Wed, 5 Nov 2003 19:21:04 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA63L4XJ079446 for ; Wed, 5 Nov 2003 19:21:04 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA63L3Tt079443 for perforce@freebsd.org; Wed, 5 Nov 2003 19:21:03 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 19:21:03 -0800 (PST) Message-Id: <200311060321.hA63L3Tt079443@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41543 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 03:21:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=41543 Change 41543 by peter@peter_daintree on 2003/11/05 19:21:02 make the mptable stuff dependent on 'options MPTABLE' Affected files ... .. //depot/projects/hammer/sys/conf/files.amd64#32 edit Differences ... ==== //depot/projects/hammer/sys/conf/files.amd64#32 (text+ko) ==== @@ -50,8 +50,8 @@ amd64/amd64/mem.c standard amd64/amd64/mp_machdep.c optional smp amd64/amd64/mpboot.S optional smp -amd64/amd64/mptable.c standard -amd64/amd64/mptable_pci.c optional pci +amd64/amd64/mptable.c optional mptable +amd64/amd64/mptable_pci.c optional mptable pci amd64/amd64/nexus.c standard amd64/amd64/pmap.c standard amd64/amd64/sigtramp.S standard From owner-p4-projects@FreeBSD.ORG Wed Nov 5 19:29:15 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B1EEB16A4D0; Wed, 5 Nov 2003 19:29:15 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7AE3B16A4CE for ; Wed, 5 Nov 2003 19:29:15 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E21DC43FE9 for ; Wed, 5 Nov 2003 19:29:14 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA63TEXJ079686 for ; Wed, 5 Nov 2003 19:29:14 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA63TE6o079683 for perforce@freebsd.org; Wed, 5 Nov 2003 19:29:14 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 19:29:14 -0800 (PST) Message-Id: <200311060329.hA63TE6o079683@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41544 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 03:29:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=41544 Change 41544 by peter@peter_daintree on 2003/11/05 19:29:12 be consistent about whitespace Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/mpboot.S#3 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/mpboot.S#3 (text+ko) ==== @@ -162,8 +162,8 @@ * The pseudo descriptor for lgdt to use. */ lgdt_desc: - .word gdtend - gdt /* Length */ - .long gdt - mptramp_start /* Offset plus %ds << 4 */ + .word gdtend-gdt /* Length */ + .long gdt-mptramp_start /* Offset plus %ds << 4 */ .globl mptramp_end mptramp_end: From owner-p4-projects@FreeBSD.ORG Wed Nov 5 19:37:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5B09216A4D0; Wed, 5 Nov 2003 19:37:27 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3558716A4CE for ; Wed, 5 Nov 2003 19:37:27 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CCD6243FF2 for ; Wed, 5 Nov 2003 19:37:25 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA63bPXJ079998 for ; Wed, 5 Nov 2003 19:37:25 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA63bO3D079995 for perforce@freebsd.org; Wed, 5 Nov 2003 19:37:24 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 19:37:24 -0800 (PST) Message-Id: <200311060337.hA63bO3D079995@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41545 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 03:37:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=41545 Change 41545 by rwatson@rwatson_paprika on 2003/11/05 19:36:59 Remove flags argument from externalize function: it's not used. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#421 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#10 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_net.c#5 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#6 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#5 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#4 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#421 (text+ko) ==== @@ -589,7 +589,7 @@ buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_cred_label(&tcred->cr_label, elements, - buffer, mac.m_buflen, M_WAITOK); + buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -626,7 +626,7 @@ buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_cred_label(&td->td_ucred->cr_label, - elements, buffer, mac.m_buflen, M_WAITOK); + elements, buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -780,12 +780,12 @@ case DTYPE_VNODE: if (error == 0) error = mac_externalize_vnode_label(&intlabel, - elements, buffer, mac.m_buflen, M_WAITOK); + elements, buffer, mac.m_buflen); mac_destroy_vnode_label(&intlabel); break; case DTYPE_PIPE: error = mac_externalize_pipe_label(&intlabel, elements, - buffer, mac.m_buflen, M_WAITOK); + buffer, mac.m_buflen); mac_destroy_pipe_label(&intlabel); break; default: @@ -841,7 +841,7 @@ mac_init_vnode_label(&intlabel); mac_copy_vnode_label(&nd.ni_vp->v_label, &intlabel); error = mac_externalize_vnode_label(&intlabel, elements, buffer, - mac.m_buflen, M_WAITOK); + mac.m_buflen); NDFREE(&nd, 0); mac_destroy_vnode_label(&intlabel); @@ -896,7 +896,7 @@ mac_init_vnode_label(&intlabel); mac_copy_vnode_label(&nd.ni_vp->v_label, &intlabel); error = mac_externalize_vnode_label(&intlabel, elements, buffer, - mac.m_buflen, M_WAITOK); + mac.m_buflen); NDFREE(&nd, 0); mac_destroy_vnode_label(&intlabel); ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#10 (text+ko) ==== @@ -102,7 +102,7 @@ int mac_check_cred_relabel(struct ucred *cred, struct label *newlabel); void mac_destroy_cred_label(struct label *label); int mac_externalize_cred_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags); + char *outbuf, size_t outbuflen); void mac_init_cred_label(struct label *label); int mac_internalize_cred_label(struct label *label, char *string); void mac_relabel_cred(struct ucred *cred, struct label *newlabel); @@ -110,12 +110,12 @@ void mac_copy_pipe_label(struct label *src, struct label *dest); void mac_destroy_pipe_label(struct label *label); int mac_externalize_pipe_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags); + char *outbuf, size_t outbuflen); void mac_init_pipe_label(struct label *label); int mac_internalize_pipe_label(struct label *label, char *string); int mac_externalize_vnode_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags); + char *outbuf, size_t outbuflen); int mac_internalize_vnode_label(struct label *label, char *string); void mac_check_vnode_mmap_downgrade(struct ucred *cred, struct vnode *vp, int *prot); ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_net.c#5 (text+ko) ==== @@ -333,7 +333,7 @@ static int mac_externalize_ifnet_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; @@ -344,7 +344,7 @@ static int mac_externalize_socket_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; @@ -355,7 +355,7 @@ static int mac_externalize_socket_peer_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; @@ -787,7 +787,7 @@ buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_ifnet_label(&ifnet->if_label, elements, - buffer, mac.m_buflen, M_WAITOK); + buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -912,7 +912,7 @@ buffer = malloc(mac->m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_socket_label(&so->so_label, elements, - buffer, mac->m_buflen, M_WAITOK); + buffer, mac->m_buflen); if (error == 0) error = copyout(buffer, mac->m_string, strlen(buffer)+1); @@ -942,7 +942,7 @@ buffer = malloc(mac->m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_socket_peer_label(&so->so_peerlabel, - elements, buffer, mac->m_buflen, M_WAITOK); + elements, buffer, mac->m_buflen); if (error == 0) error = copyout(buffer, mac->m_string, strlen(buffer)+1); ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#6 (text+ko) ==== @@ -109,7 +109,7 @@ int mac_externalize_pipe_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#5 (text+ko) ==== @@ -148,7 +148,7 @@ int mac_externalize_cred_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#4 (text+ko) ==== @@ -181,7 +181,7 @@ int mac_externalize_vnode_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; From owner-p4-projects@FreeBSD.ORG Wed Nov 5 19:55:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2E85116A4D0; Wed, 5 Nov 2003 19:55:51 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0799516A4CE for ; Wed, 5 Nov 2003 19:55:51 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E14343FE9 for ; Wed, 5 Nov 2003 19:55:50 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA63toXJ080857 for ; Wed, 5 Nov 2003 19:55:50 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA63to2c080854 for perforce@freebsd.org; Wed, 5 Nov 2003 19:55:50 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 19:55:50 -0800 (PST) Message-Id: <200311060355.hA63to2c080854@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 Subject: PERFORCE change 41548 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 03:55:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=41548 Change 41548 by sam@sam_ebb on 2003/11/05 19:55:48 use existing copy instead of doing a pointer deref Affected files ... .. //depot/projects/netperf/sys/netinet/tcp_timer.c#4 edit Differences ... ==== //depot/projects/netperf/sys/netinet/tcp_timer.c#4 (text+ko) ==== @@ -353,8 +353,7 @@ tcpstat.tcps_keeptimeo++; if (tp->t_state < TCPS_ESTABLISHED) goto dropit; - if ((always_keepalive || - tp->t_inpcb->inp_socket->so_options & SO_KEEPALIVE) && + if ((always_keepalive || inp->inp_socket->so_options & SO_KEEPALIVE) && tp->t_state <= TCPS_CLOSING) { if ((ticks - tp->t_rcvtime) >= tcp_keepidle + tcp_maxidle) goto dropit; @@ -383,7 +382,7 @@ callout_reset(tp->tt_keep, tcp_keepidle, tcp_timer_keep, tp); #ifdef TCPDEBUG - if (tp->t_inpcb->inp_socket->so_options & SO_DEBUG) + if (inp->inp_socket->so_options & SO_DEBUG) tcp_trace(TA_USER, ostate, tp, (void *)0, (struct tcphdr *)0, PRU_SLOWTIMO); #endif From owner-p4-projects@FreeBSD.ORG Wed Nov 5 19:56:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 338DA16A4D0; Wed, 5 Nov 2003 19:56:53 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ED6C416A4CE for ; Wed, 5 Nov 2003 19:56:52 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 777B843F93 for ; Wed, 5 Nov 2003 19:56:52 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA63uqXJ080886 for ; Wed, 5 Nov 2003 19:56:52 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA63upnR080883 for perforce@freebsd.org; Wed, 5 Nov 2003 19:56:52 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 19:56:52 -0800 (PST) Message-Id: <200311060356.hA63upnR080883@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 Subject: PERFORCE change 41549 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 03:56:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=41549 Change 41549 by sam@sam_ebb on 2003/11/05 19:56:38 hold the inp lock across tcp_respond; it is needed to insure consistency of the inpcb contents Affected files ... .. //depot/projects/netperf/sys/netinet/tcp_input.c#9 edit Differences ... ==== //depot/projects/netperf/sys/netinet/tcp_input.c#9 (text+ko) ==== @@ -2348,9 +2348,6 @@ &tcp_savetcp, 0); #endif - if (tp) - INP_UNLOCK(inp); - if (thflags & TH_ACK) /* mtod() below is safe as long as hdr dropping is delayed */ tcp_respond(tp, mtod(m, void *), th, m, (tcp_seq)0, th->th_ack, @@ -2362,6 +2359,9 @@ tcp_respond(tp, mtod(m, void *), th, m, th->th_seq+tlen, (tcp_seq)0, TH_RST|TH_ACK); } + + if (tp) + INP_UNLOCK(inp); if (headlocked) INP_INFO_WUNLOCK(&tcbinfo); return; From owner-p4-projects@FreeBSD.ORG Wed Nov 5 19:57:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5961A16A4D0; Wed, 5 Nov 2003 19:57:55 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 33FF616A4CE for ; Wed, 5 Nov 2003 19:57:55 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73CB343FE1 for ; Wed, 5 Nov 2003 19:57:54 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA63vsXJ080928 for ; Wed, 5 Nov 2003 19:57:54 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA63vsP0080925 for perforce@freebsd.org; Wed, 5 Nov 2003 19:57:54 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 19:57:54 -0800 (PST) Message-Id: <200311060357.hA63vsP0080925@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 Subject: PERFORCE change 41550 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 03:57:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=41550 Change 41550 by sam@sam_ebb on 2003/11/05 19:57:44 remove #ifndef INET6 around assert; it's now handled at the point where the assert #define is setup Affected files ... .. //depot/projects/netperf/sys/netinet/tcp_output.c#7 edit Differences ... ==== //depot/projects/netperf/sys/netinet/tcp_output.c#7 (text+ko) ==== @@ -133,9 +133,7 @@ isipv6 = (tp->t_inpcb->inp_vflag & INP_IPV6) != 0; #endif -#ifndef INET6 INP_LOCK_ASSERT(tp->t_inpcb); -#endif /* * Determine length of data that should be transmitted, From owner-p4-projects@FreeBSD.ORG Wed Nov 5 20:12:14 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C608816A4D0; Wed, 5 Nov 2003 20:12:13 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A128C16A4CE for ; Wed, 5 Nov 2003 20:12:13 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 13C7543FF5 for ; Wed, 5 Nov 2003 20:12:13 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA64CCXJ082444 for ; Wed, 5 Nov 2003 20:12:12 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA64CCb4082441 for perforce@freebsd.org; Wed, 5 Nov 2003 20:12:12 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 20:12:12 -0800 (PST) Message-Id: <200311060412.hA64CCb4082441@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41552 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 04:12:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=41552 Change 41552 by peter@peter_daintree on 2003/11/05 20:11:16 declare mptramp_pagetables Affected files ... .. //depot/projects/hammer/sys/amd64/include/smp.h#11 edit Differences ... ==== //depot/projects/hammer/sys/amd64/include/smp.h#11 (text+ko) ==== @@ -24,9 +24,10 @@ #include #include -/* global data in mpboot.S */ +/* global symbols in mpboot.S */ extern char mptramp_start[]; extern char mptramp_end[]; +extern u_int32_t mptramp_pagetables; /* global data in mp_machdep.c */ extern int mp_naps; From owner-p4-projects@FreeBSD.ORG Wed Nov 5 20:15:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7919216A4E2; Wed, 5 Nov 2003 20:15:18 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3C37716A4D3 for ; Wed, 5 Nov 2003 20:15:18 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8570D43FA3 for ; Wed, 5 Nov 2003 20:15:17 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA64FHXJ082599 for ; Wed, 5 Nov 2003 20:15:17 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA64FG3L082596 for perforce@freebsd.org; Wed, 5 Nov 2003 20:15:16 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 20:15:16 -0800 (PST) Message-Id: <200311060415.hA64FG3L082596@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41553 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 04:15:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=41553 Change 41553 by peter@peter_daintree on 2003/11/05 20:14:42 almost finished now. 1) remove !@^#!%# boot_addr args. There is no need to make work for ourselves by passing it around like this. 2) have the trampoline patch its own gdt[] since its simple. 3) flesh out install_ap_tramp() and instead inline its two remaining lines of code. It now self-relocates, and use bcopy() instead of hand-rolling it. Also, mptramp_pagetables is set earlier too. 4) move the trampoline code to the .data section, FWIW. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#24 edit .. //depot/projects/hammer/sys/amd64/amd64/mpboot.S#4 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#24 (text+ko) ==== @@ -29,12 +29,6 @@ #include "opt_cpu.h" #include "opt_kstack_pages.h" -#if !defined(lint) -#if !defined(SMP) -#error How did you get here? -#endif -#endif /* not lint */ - #include #include #include @@ -136,12 +130,11 @@ } static cpu_info[MAXCPU]; static int cpu_apic_ids[MAXCPU]; -static u_int boot_address; +static u_int boot_address; static void set_logical_apic_ids(void); -static int start_all_aps(u_int boot_addr); -static void install_ap_tramp(u_int boot_addr); -static int start_ap(int apic_id, u_int boot_addr); +static int start_all_aps(void); +static int start_ap(int apic_id); static void release_aps(void *dummy); static int hlt_cpus_mask; @@ -160,8 +153,10 @@ boot_address = basemem & ~PAGE_MASK; /* round down to 4k boundary */ if ((basemem - boot_address) < bootMP_size) boot_address -= PAGE_SIZE; /* not enough, lower by 4k */ + /* 3 levels of page table pages */ + mptramp_pagetables = boot_address - PAGE_SIZE * 3; - return boot_address; + return mptramp_pagetables; } void @@ -279,7 +274,7 @@ cpu_apic_ids[0] = boot_cpu_id; /* Start each Application Processor */ - start_all_aps(boot_address); + start_all_aps(); /* Setup the initial logical CPUs info. */ logical_cpus = logical_cpus_mask = 0; @@ -457,7 +452,7 @@ * start each AP in our list */ static int -start_all_aps(u_int boot_addr) +start_all_aps() { u_char mpbiosreason; u_int32_t mpbioswarmvec; @@ -467,7 +462,8 @@ mtx_init(&ap_boot_mtx, "ap boot", NULL, MTX_SPIN); /* install the AP 1st level boot code */ - install_ap_tramp(boot_addr); + pmap_kenter(boot_address + KERNBASE, boot_address); + bcopy(mptramp_start, (void *)((uintptr_t)boot_address + KERNBASE), bootMP_size); /* save the current value of the warm-start vector */ mpbioswarmvec = *((u_int32_t *) WARMBOOT_OFF); @@ -513,7 +509,7 @@ /* setup a vector to our boot code */ *((volatile u_short *) WARMBOOT_OFF) = WARMBOOT_TARGET; - *((volatile u_short *) WARMBOOT_SEG) = (boot_addr >> 4); + *((volatile u_short *) WARMBOOT_SEG) = (boot_address >> 4); outb(CMOS_REG, BIOS_RESET); outb(CMOS_DATA, BIOS_WARM); /* 'warm-start' */ @@ -521,7 +517,7 @@ bootAP = cpu; /* attempt to start the Application Processor */ - if (!start_ap(apic_id, boot_addr)) { + if (!start_ap(apic_id)) { printf("AP #%d (PHY# %d) failed!\n", cpu, apic_id); /* better panic as the AP may be running loose */ printf("panic y/n? [y] "); @@ -545,74 +541,6 @@ return mp_naps; } -/* - * load the 1st level AP boot code into base memory. - */ - -#ifdef SMP_ME_HARDER -/* targets for relocation */ -extern void bigJump(void); -extern void bootCodeSeg(void); -extern void bootDataSeg(void); -extern void MPentry(void); -extern u_int MP_GDT; -extern u_int mp_gdtbase; -#endif - -static void -install_ap_tramp(u_int boot_addr) -{ -#ifdef SMP_ME_HARDER - int x; - int size = *(int *) ((u_long) & bootMP_size); - u_char *src = (u_char *) ((u_long) bootMP); - u_char *dst = (u_char *) boot_addr + KERNBASE; - u_int boot_base = (u_int) bootMP; - u_int8_t *dst8; - u_int16_t *dst16; - u_int32_t *dst32; - - pmap_kenter(boot_addr + KERNBASE, boot_addr); - for (x = 0; x < size; ++x) - *dst++ = *src++; - - /* - * modify addresses in code we just moved to basemem. unfortunately we - * need fairly detailed info about mpboot.s for this to work. changes - * to mpboot.s might require changes here. - */ - - /* boot code is located in KERNEL space */ - dst = (u_char *) boot_addr + KERNBASE; - - /* modify the lgdt arg */ - dst32 = (u_int32_t *) (dst + ((u_int) & mp_gdtbase - boot_base)); - *dst32 = boot_addr + ((u_int) & MP_GDT - boot_base); - - /* modify the ljmp target for MPentry() */ - dst32 = (u_int32_t *) (dst + ((u_int) bigJump - boot_base) + 1); - *dst32 = ((u_int) MPentry - KERNBASE); - - /* modify the target for boot code segment */ - dst16 = (u_int16_t *) (dst + ((u_int) bootCodeSeg - boot_base)); - dst8 = (u_int8_t *) (dst16 + 1); - *dst16 = (u_int) boot_addr & 0xffff; - *dst8 = ((u_int) boot_addr >> 16) & 0xff; - - /* modify the target for boot data segment */ - dst16 = (u_int16_t *) (dst + ((u_int) bootDataSeg - boot_base)); - dst8 = (u_int8_t *) (dst16 + 1); - *dst16 = (u_int) boot_addr & 0xffff; - *dst8 = ((u_int) boot_addr >> 16) & 0xff; -#endif -} - -void compile_hack(void); -void -compile_hack() -{ - start_ap(0, bootAP); -} /* * This function starts the AP (application processor) identified @@ -622,13 +550,13 @@ * but it seems to work. */ static int -start_ap(int apic_id, u_int boot_addr) +start_ap(int apic_id) { int vector, ms; int cpus; /* calculate the vector */ - vector = (boot_addr >> 12) & 0xff; + vector = (boot_address >> 12) & 0xff; /* used as a watchpoint to signal AP startup */ cpus = mp_naps; ==== //depot/projects/hammer/sys/amd64/amd64/mpboot.S#4 (text+ko) ==== @@ -31,9 +31,9 @@ #include "assym.s" - .section .bootcode - .p2align 4 + .data /* So we can modify it */ + .p2align 4,0 .globl mptramp_start mptramp_start: .code16 @@ -47,6 +47,15 @@ mov %ax, %ss /* + * Patch the descriptor table + */ + xorl %eax,%eax + mov %cs, %ax + sall $4, %eax + orl %eax, bootcode-gdt+2 + orl %eax, bootdata-gdt+2 + + /* * Load the descriptor table pointer. We'll need it when running * in 16 bit protected mode. */ @@ -88,7 +97,7 @@ * means we are required to use a temporary page table that is below * the 4GB limit. */ - movl $pagetables, %eax + movl $(mptramp_pagetables-mptramp_start), %eax mov %eax, %cr3 /* @@ -134,6 +143,7 @@ * This is the descriptor for the 32 bit boot code. * %cs: +A, +R, -C, DPL=0, +P, +D, +G * Accessed, Readable, Present, 32 bit, 4G granularity + * Note that the base address is patched. */ bootcode: .long 0x0000ffff @@ -148,6 +158,7 @@ * Accessed, Writeable, Expand up, Present, 32 bit, 4GB * For %ds, +D means 'default operand size is 32 bit'. * For %ss, +B means the stack register is %esp rather than %sp. + * Note that the base address is patched. */ bootdata: .long 0x0000ffff @@ -155,8 +166,8 @@ gdtend: - .globl pagetables -pagetables: + .globl mptramp_pagetables +mptramp_pagetables: .long 0 /* * The pseudo descriptor for lgdt to use. @@ -179,6 +190,7 @@ */ .text .code64 + .p2align 4,0 entry_64: movq $bootSTK, %rsp pushq $init_secondary From owner-p4-projects@FreeBSD.ORG Wed Nov 5 20:19:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B575316A4D2; Wed, 5 Nov 2003 20:19:23 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9147816A4CF for ; Wed, 5 Nov 2003 20:19:23 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 149B943F3F for ; Wed, 5 Nov 2003 20:19:23 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA64JMXJ082727 for ; Wed, 5 Nov 2003 20:19:22 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA64JMaV082724 for perforce@freebsd.org; Wed, 5 Nov 2003 20:19:22 -0800 (PST) (envelope-from peter@freebsd.org) Date: Wed, 5 Nov 2003 20:19:22 -0800 (PST) Message-Id: <200311060419.hA64JMaV082724@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41554 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 04:19:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=41554 Change 41554 by peter@peter_daintree on 2003/11/05 20:18:27 note that the gdt allocation still needs to be resolved. The tss needs to be per-cpu still. note to self: ltr appears to load the address of the tss into the hidden tss register. we may not need a per-cpu gdt just to load a tss. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#25 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#25 (text+ko) ==== @@ -32,7 +32,6 @@ #include #include #include -#include /* cngetc() */ #ifdef GPROF #include #endif @@ -490,6 +489,7 @@ common_tss[cpu] = common_tss[0]; common_tss[cpu].tss_rsp0 = 0; /* not used until after switch */ + /* XXX not so fast there sonny! */ gdt_segs[GPROC0_SEL].ssd_base = (long) &common_tss[cpu]; for (x = 0; x < NGDT; x++) @@ -517,13 +517,8 @@ bootAP = cpu; /* attempt to start the Application Processor */ - if (!start_ap(apic_id)) { - printf("AP #%d (PHY# %d) failed!\n", cpu, apic_id); - /* better panic as the AP may be running loose */ - printf("panic y/n? [y] "); - if (cngetc() != 'n') - panic("bye-bye"); - } + if (!start_ap(apic_id)) + panic("AP #%d (PHY# %d) failed!", cpu, apic_id); all_cpus |= (1 << cpu); /* record AP in CPU map */ } From owner-p4-projects@FreeBSD.ORG Wed Nov 5 20:29:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9585A16A4D0; Wed, 5 Nov 2003 20:29:37 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5990116A4CE for ; Wed, 5 Nov 2003 20:29:37 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B157343F75 for ; Wed, 5 Nov 2003 20:29:36 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA64TaXJ083241 for ; Wed, 5 Nov 2003 20:29:36 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA64TaET083238 for perforce@freebsd.org; Wed, 5 Nov 2003 20:29:36 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 20:29:36 -0800 (PST) Message-Id: <200311060429.hA64TaET083238@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 Subject: PERFORCE change 41556 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 04:29:38 -0000 X-List-Received-Date: Thu, 06 Nov 2003 04:29:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=41556 Change 41556 by sam@sam_ebb on 2003/11/05 20:29:12 When tcp_respond is given a tcp control block the associated inpcb must be locked in case the path through ip_output modifies it's contents (e.g. to change the route); assert this. While here cleanup code that references the inpcb. Affected files ... .. //depot/projects/netperf/sys/netinet/tcp_subr.c#9 edit Differences ... ==== //depot/projects/netperf/sys/netinet/tcp_subr.c#9 (text+ko) ==== @@ -378,6 +378,7 @@ int isipv6; #endif /* INET6 */ int ipflags = 0; + struct inpcb *inp; KASSERT(tp != NULL || m != NULL, ("tcp_respond: tp and m both NULL")); @@ -388,18 +389,23 @@ ip = ipgen; if (tp) { + inp = tp->t_inpcb; + KASSERT(inp != NULL, ("tcp control block w/o inpcb")); + INP_INFO_WLOCK_ASSERT(&tcpcbinfo); + INP_LOCK_ASSERT(inp); if (!(flags & TH_RST)) { - win = sbspace(&tp->t_inpcb->inp_socket->so_rcv); + win = sbspace(&inp->inp_socket->so_rcv); if (win > (long)TCP_MAXWIN << tp->rcv_scale) win = (long)TCP_MAXWIN << tp->rcv_scale; } #ifdef INET6 if (isipv6) - ro6 = &tp->t_inpcb->in6p_route; + ro6 = &inp->in6p_route; else #endif /* INET6 */ - ro = &tp->t_inpcb->inp_route; + ro = &inp->inp_route; } else { + inp = NULL; #ifdef INET6 if (isipv6) { ro6 = &sro6; @@ -480,12 +486,12 @@ m->m_pkthdr.len = tlen; m->m_pkthdr.rcvif = (struct ifnet *) 0; #ifdef MAC - if (tp != NULL && tp->t_inpcb != NULL) { + if (inp != NULL) { /* * Packet is associated with a socket, so allow the * label of the response to reflect the socket label. */ - mac_create_mbuf_from_socket(tp->t_inpcb->inp_socket, m); + mac_create_mbuf_from_socket(inp->inp_socket, m); } else { /* * Packet is not associated with a socket, so possibly @@ -510,7 +516,7 @@ nth->th_sum = in6_cksum(m, IPPROTO_TCP, sizeof(struct ip6_hdr), tlen - sizeof(struct ip6_hdr)); - ip6->ip6_hlim = in6_selecthlim(tp ? tp->t_inpcb : NULL, + ip6->ip6_hlim = in6_selecthlim(inp, ro6 && ro6->ro_rt ? ro6->ro_rt->rt_ifp : NULL); @@ -523,26 +529,25 @@ m->m_pkthdr.csum_data = offsetof(struct tcphdr, th_sum); } #ifdef TCPDEBUG - if (tp == NULL || (tp->t_inpcb->inp_socket->so_options & SO_DEBUG)) + if (tp == NULL || (inp->inp_socket->so_options & SO_DEBUG)) tcp_trace(TA_OUTPUT, 0, tp, mtod(m, void *), th, 0); #endif #ifdef INET6 if (isipv6) { - (void)ip6_output(m, NULL, ro6, ipflags, NULL, NULL, - tp ? tp->t_inpcb : NULL); + (void) ip6_output(m, NULL, ro6, ipflags, NULL, NULL, inp); if (ro6 == &sro6 && ro6->ro_rt) { RTFREE(ro6->ro_rt); ro6->ro_rt = NULL; } } else #endif /* INET6 */ - { - (void) ip_output(m, NULL, ro, ipflags, NULL, tp ? tp->t_inpcb : NULL); - if (ro == &sro && ro->ro_rt) { - RTFREE(ro->ro_rt); - ro->ro_rt = NULL; + { + (void) ip_output(m, NULL, ro, ipflags, NULL, inp); + if (ro == &sro && ro->ro_rt) { + RTFREE(ro->ro_rt); + ro->ro_rt = NULL; + } } - } } /* From owner-p4-projects@FreeBSD.ORG Wed Nov 5 20:29:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4583E16A4D1; Wed, 5 Nov 2003 20:29:39 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1CE7A16A4CF for ; Wed, 5 Nov 2003 20:29:39 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A39E443F75 for ; Wed, 5 Nov 2003 20:29:37 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA64TbXJ083248 for ; Wed, 5 Nov 2003 20:29:37 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA64TakY083244 for perforce@freebsd.org; Wed, 5 Nov 2003 20:29:36 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 20:29:36 -0800 (PST) Message-Id: <200311060429.hA64TakY083244@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 Subject: PERFORCE change 41557 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 04:29:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=41557 Change 41557 by sam@sam_ebb on 2003/11/05 20:29:33 IFC @ 41555 Affected files ... .. //depot/projects/netperf/sys/coda/coda_subr.c#5 integrate .. //depot/projects/netperf/sys/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/netperf/sys/compat/linux/linux_stats.c#2 integrate .. //depot/projects/netperf/sys/conf/NOTES#17 integrate .. //depot/projects/netperf/sys/conf/files#21 integrate .. //depot/projects/netperf/sys/conf/kern.mk#2 integrate .. //depot/projects/netperf/sys/conf/kern.pre.mk#6 integrate .. //depot/projects/netperf/sys/conf/kmod.mk#7 integrate .. //depot/projects/netperf/sys/conf/options#17 integrate .. //depot/projects/netperf/sys/contrib/dev/acpica/dmresrc.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-raid.c#5 integrate .. //depot/projects/netperf/sys/dev/firewire/if_fwe.c#7 integrate .. //depot/projects/netperf/sys/dev/hatm/if_hatm.c#10 integrate .. //depot/projects/netperf/sys/dev/hatm/if_hatm_intr.c#7 integrate .. //depot/projects/netperf/sys/dev/hatm/if_hatm_tx.c#7 integrate .. //depot/projects/netperf/sys/dev/hatm/if_hatmvar.h#8 integrate .. //depot/projects/netperf/sys/dev/wi/if_wi.c#13 integrate .. //depot/projects/netperf/sys/dev/xe/if_xe.c#6 integrate .. //depot/projects/netperf/sys/dev/xe/if_xe_pccard.c#7 integrate .. //depot/projects/netperf/sys/fs/msdosfs/msdosfs_vfsops.c#8 integrate .. //depot/projects/netperf/sys/fs/udf/osta.c#2 integrate .. //depot/projects/netperf/sys/fs/udf/osta.h#2 integrate .. //depot/projects/netperf/sys/fs/udf/udf.h#2 integrate .. //depot/projects/netperf/sys/fs/udf/udf_iconv.c#1 branch .. //depot/projects/netperf/sys/fs/udf/udf_mount.h#1 branch .. //depot/projects/netperf/sys/fs/udf/udf_vfsops.c#4 integrate .. //depot/projects/netperf/sys/fs/udf/udf_vnops.c#4 integrate .. //depot/projects/netperf/sys/gnu/ext2fs/ext2_vfsops.c#7 integrate .. //depot/projects/netperf/sys/i386/acpica/madt.c#2 integrate .. //depot/projects/netperf/sys/i386/i386/io_apic.c#2 integrate .. //depot/projects/netperf/sys/i386/i386/mp_machdep.c#10 integrate .. //depot/projects/netperf/sys/i386/i386/mptable.c#2 integrate .. //depot/projects/netperf/sys/i386/i386/nexus.c#4 integrate .. //depot/projects/netperf/sys/i386/include/bus_dma.h#3 integrate .. //depot/projects/netperf/sys/kern/kern_mac.c#7 integrate .. //depot/projects/netperf/sys/kern/sched_ule.c#16 integrate .. //depot/projects/netperf/sys/kern/subr_bus.c#11 integrate .. //depot/projects/netperf/sys/kern/sysv_shm.c#4 integrate .. //depot/projects/netperf/sys/kern/vfs_default.c#5 integrate .. //depot/projects/netperf/sys/kern/vfs_mount.c#4 integrate .. //depot/projects/netperf/sys/kern/vfs_subr.c#10 integrate .. //depot/projects/netperf/sys/modules/udf/Makefile#2 integrate .. //depot/projects/netperf/sys/net/netisr.c#7 edit .. //depot/projects/netperf/sys/net80211/ieee80211_ioctl.c#6 integrate .. //depot/projects/netperf/sys/netgraph/ng_base.c#4 integrate .. //depot/projects/netperf/sys/netinet6/in6.c#15 integrate .. //depot/projects/netperf/sys/netinet6/in6.h#6 integrate .. //depot/projects/netperf/sys/netinet6/in6_pcb.h#2 integrate .. //depot/projects/netperf/sys/netinet6/in6_proto.c#7 integrate .. //depot/projects/netperf/sys/netinet6/in6_src.c#18 integrate .. //depot/projects/netperf/sys/netinet6/ip6_var.h#9 integrate .. //depot/projects/netperf/sys/nfsclient/nfs_subs.c#4 integrate .. //depot/projects/netperf/sys/nfsclient/nfs_vfsops.c#7 integrate .. //depot/projects/netperf/sys/pc98/conf/NOTES#6 integrate .. //depot/projects/netperf/sys/pc98/i386/busio.s#2 integrate .. //depot/projects/netperf/sys/pci/if_xl.c#9 integrate .. //depot/projects/netperf/sys/security/mac/mac_internal.h#3 integrate .. //depot/projects/netperf/sys/security/mac/mac_net.c#3 integrate .. //depot/projects/netperf/sys/security/mac/mac_pipe.c#3 integrate .. //depot/projects/netperf/sys/security/mac/mac_process.c#3 integrate .. //depot/projects/netperf/sys/security/mac/mac_vfs.c#3 integrate .. //depot/projects/netperf/sys/sys/iconv.h#3 integrate .. //depot/projects/netperf/sys/sys/mount.h#2 integrate .. //depot/projects/netperf/sys/sys/mutex.h#6 integrate .. //depot/projects/netperf/sys/sys/proc.h#9 integrate .. //depot/projects/netperf/sys/sys/sched.h#4 integrate .. //depot/projects/netperf/sys/sys/syscallsubr.h#2 integrate .. //depot/projects/netperf/sys/sys/vnode.h#5 integrate .. //depot/projects/netperf/sys/ufs/ffs/ffs_snapshot.c#6 integrate .. //depot/projects/netperf/sys/ufs/ffs/ffs_vfsops.c#7 integrate .. //depot/projects/netperf/sys/ufs/ufs/ufs_quota.c#5 integrate .. //depot/projects/netperf/sys/vm/vm_map.c#12 integrate Differences ... ==== //depot/projects/netperf/sys/coda/coda_subr.c#5 (text+ko) ==== @@ -52,7 +52,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/coda/coda_subr.c,v 1.27 2003/10/05 07:44:45 bde Exp $"); +__FBSDID("$FreeBSD: src/sys/coda/coda_subr.c,v 1.28 2003/11/05 04:30:06 kan Exp $"); #include #include @@ -307,12 +307,12 @@ void coda_checkunmounting(mp) struct mount *mp; -{ +{ register struct vnode *vp, *nvp; struct cnode *cp; int count = 0, bad = 0; - mtx_lock(&mntvnode_mtx); + MNT_ILOCK(mp); for (vp = TAILQ_FIRST(&mp->mnt_nvnodelist); vp; vp = nvp) { nvp = TAILQ_NEXT(vp, v_nmntvnodes); if (vp->v_mount != mp) @@ -331,7 +331,7 @@ } VI_UNLOCK(vp); } - mtx_unlock(&mntvnode_mtx); + MNT_IUNLOCK(mp); } void ==== //depot/projects/netperf/sys/compat/linux/linux_ipc.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ipc.c,v 1.37 2003/06/10 21:27:39 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ipc.c,v 1.38 2003/11/05 01:53:10 fjoe Exp $"); #include #include @@ -716,7 +716,7 @@ /* Perform shmctl wanting removed segments lookup */ error = kern_shmctl(td, args->shmid, IPC_INFO, - (void *)&bsd_shminfo, &bufsz, 1); + (void *)&bsd_shminfo, &bufsz); if (error) return error; @@ -731,7 +731,7 @@ /* Perform shmctl wanting removed segments lookup */ error = kern_shmctl(td, args->shmid, SHM_INFO, - (void *)&bsd_shm_info, &bufsz, 1); + (void *)&bsd_shm_info, &bufsz); if (error) return error; @@ -744,7 +744,7 @@ case LINUX_IPC_STAT: /* Perform shmctl wanting removed segments lookup */ error = kern_shmctl(td, args->shmid, IPC_STAT, - (void *)&bsd_shmid, &bufsz, 1); + (void *)&bsd_shmid, &bufsz); if (error) return error; @@ -756,7 +756,7 @@ case LINUX_SHM_STAT: /* Perform shmctl wanting removed segments lookup */ error = kern_shmctl(td, args->shmid, IPC_STAT, - (void *)&bsd_shmid, &bufsz, 1); + (void *)&bsd_shmid, &bufsz); if (error) return error; @@ -775,7 +775,7 @@ /* Perform shmctl wanting removed segments lookup */ return kern_shmctl(td, args->shmid, IPC_SET, - (void *)&bsd_shmid, &bufsz, 1); + (void *)&bsd_shmid, &bufsz); case LINUX_IPC_RMID: { void *buf; @@ -790,7 +790,7 @@ linux_to_bsd_shmid_ds(&linux_shmid, &bsd_shmid); buf = (void *)&bsd_shmid; } - return kern_shmctl(td, args->shmid, IPC_RMID, buf, &bufsz, 1); + return kern_shmctl(td, args->shmid, IPC_RMID, buf, &bufsz); } case LINUX_SHM_LOCK: ==== //depot/projects/netperf/sys/compat/linux/linux_stats.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.55 2003/06/22 08:41:41 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.56 2003/11/05 23:52:54 anholt Exp $"); #include "opt_mac.h" @@ -268,8 +268,13 @@ linux_statfs.f_bavail = bsd_statfs->f_bavail; linux_statfs.f_ffree = bsd_statfs->f_ffree; linux_statfs.f_files = bsd_statfs->f_files; - linux_statfs.f_fsid.val[0] = bsd_statfs->f_fsid.val[0]; - linux_statfs.f_fsid.val[1] = bsd_statfs->f_fsid.val[1]; + if (suser(td)) { + linux_statfs.f_fsid.val[0] = 0; + linux_statfs.f_fsid.val[1] = 0; + } else { + linux_statfs.f_fsid.val[0] = bsd_statfs->f_fsid.val[0]; + linux_statfs.f_fsid.val[1] = bsd_statfs->f_fsid.val[1]; + } linux_statfs.f_namelen = MAXNAMLEN; return copyout(&linux_statfs, args->buf, sizeof(linux_statfs)); } @@ -312,8 +317,13 @@ linux_statfs.f_bavail = bsd_statfs->f_bavail; linux_statfs.f_ffree = bsd_statfs->f_ffree; linux_statfs.f_files = bsd_statfs->f_files; - linux_statfs.f_fsid.val[0] = bsd_statfs->f_fsid.val[0]; - linux_statfs.f_fsid.val[1] = bsd_statfs->f_fsid.val[1]; + if (suser(td)) { + linux_statfs.f_fsid.val[0] = 0; + linux_statfs.f_fsid.val[1] = 0; + } else { + linux_statfs.f_fsid.val[0] = bsd_statfs->f_fsid.val[0]; + linux_statfs.f_fsid.val[1] = bsd_statfs->f_fsid.val[1]; + } linux_statfs.f_namelen = MAXNAMLEN; error = copyout(&linux_statfs, args->buf, sizeof(linux_statfs)); fdrop(fp, td); ==== //depot/projects/netperf/sys/conf/NOTES#17 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1183 2003/10/28 05:47:39 sam Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1186 2003/11/05 14:32:27 bde Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -151,7 +151,7 @@ # but will work just fine on UP too. Users of this scheduler should expect # some hicups and be prepaired to provide feedback. # -options SCHED_4BSD +options SCHED_4BSD #options SCHED_ULE ##################################################################### @@ -449,7 +449,7 @@ options NETGRAPH_TTY options NETGRAPH_UI options NETGRAPH_VJC -options NETGRAPH_ATM_ATMPIF +options NETGRAPH_ATM_ATMPIF # NgATM - Netgraph ATM options NGATM_ATM @@ -582,7 +582,6 @@ options PIM # Protocol Independent Multicast options IPFIREWALL #firewall options IPFIREWALL_VERBOSE #enable logging to syslogd(8) -options IPFIREWALL_FORWARD #enable transparent proxy support options IPFIREWALL_VERBOSE_LIMIT=100 #limit verbosity options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default options IPV6FIREWALL #firewall for IPv6 @@ -601,7 +600,7 @@ # various random failures / extreme cases related to mbuf # functions. See the mbuf(9) manpage for a list of available # test cases. -options MBUF_STRESS_TEST +options MBUF_STRESS_TEST # RANDOM_IP_ID causes the ID field in IP packets to be randomized # instead of incremented by 1 with each packet generated. This @@ -793,9 +792,10 @@ # Optional character code conversion support with LIBICONV. # Each option requires their base file system and LIBICONV. -options CD9660_ICONV -options MSDOSFS_ICONV -options NTFS_ICONV +options CD9660_ICONV +options MSDOSFS_ICONV +options NTFS_ICONV +options UDF_ICONV ##################################################################### @@ -807,7 +807,7 @@ options _KPOSIX_PRIORITY_SCHEDULING # p1003_1b_semaphores are very experimental, # user should be ready to assist in debugging if problems arise. -options P1003_1B_SEMAPHORES +options P1003_1B_SEMAPHORES ##################################################################### @@ -843,14 +843,6 @@ options HZ=100 -# If you see the "calcru: negative time of %ld usec for pid %d (%s)\n" -# message you probably have some broken sw/hw which disables interrupts -# for too long. You can make the system more resistant to this by -# choosing a high value for NTIMECOUNTER. The default is 5, there -# is no upper limit but more than a couple of hundred are not productive. - -options NTIMECOUNTER=20 - # Enable support for the kernel PLL to use an external PPS signal, # under supervision of [x]ntpd(8) # More info in ntpd documentation: http://www.eecis.udel.edu/~ntp @@ -983,7 +975,7 @@ # DA_OLD_QUIRKS: Restore old USB and firewire quirks that have been # deprecated. Please also email scsi@freebsd.org if you # have a device that needs this option. -options DA_OLD_QUIRKS +options DA_OLD_QUIRKS # Options for the CAM CDROM driver: # CHANGER_MIN_BUSY_SECONDS: Guaranteed minimum time quantum for a changer LUN @@ -1055,7 +1047,7 @@ # disk devices in the system looking for components that it recognizes (already # configured once before) and auto-configured them into arrays. device raidframe -options RAID_AUTOCONFIG +options RAID_AUTOCONFIG # Kernel side iconv library options LIBICONV @@ -1353,7 +1345,6 @@ options DPT_TIMEOUT_FACTOR=4 options DPT_LOST_IRQ options DPT_RESET_HBA -options DPT_ALLOW_MEMIO # # Compaq "CISS" RAID controllers (SmartRAID 5* series) @@ -1757,7 +1748,7 @@ device utopia #ATM PHY driver options NATM #native ATM -options LIBMBPOOL #needed by patm, iatm +options LIBMBPOOL #needed by patm, iatm # # Audio drivers: `pcm', `sbc', `gusc' @@ -2131,7 +2122,7 @@ # can be used in combination with an external daemon to create a # software-based watchdog solution. # -options WATCHDOG +options WATCHDOG # # Disable swapping of upages and stack pages. This option removes all @@ -2241,7 +2232,7 @@ makeoptions UKBD_DFLT_KEYMAP=it.iso # options for uvscom: -options UVSCOM_DEFAULT_OPKTSIZE=8 # default output packet size +options UVSCOM_DEFAULT_OPKTSIZE=8 # default output packet size ##################################################################### # FireWire support @@ -2255,10 +2246,10 @@ device dcons # dumb console driver device dcons_crom # FireWire attachment -options DCONS_BUF_SIZE=16384 # buffer size -options DCONS_POLL_HZ=100 # polling rate -options DCONS_FORCE_CONSOLE=0 # force to be the primary console -options DCONS_FORCE_GDB=1 # force to be the gdb device +options DCONS_BUF_SIZE=16384 # buffer size +options DCONS_POLL_HZ=100 # polling rate +options DCONS_FORCE_CONSOLE=0 # force to be the primary console +options DCONS_FORCE_GDB=1 # force to be the gdb device ##################################################################### # crypto subsystem @@ -2276,12 +2267,12 @@ device rndtest # FIPS 140-2 entropy tester device hifn # Hifn 7951, 7781, etc. -options HIFN_DEBUG # enable debugging support: hw.hifn.debug -options HIFN_RNDTEST # enable rndtest support +options HIFN_DEBUG # enable debugging support: hw.hifn.debug +options HIFN_RNDTEST # enable rndtest support device ubsec # Broadcom 5501, 5601, 58xx -options UBSEC_DEBUG # enable debugging support: hw.ubsec.debug -options UBSEC_RNDTEST # enable rndtest support +options UBSEC_DEBUG # enable debugging support: hw.ubsec.debug +options UBSEC_RNDTEST # enable rndtest support ##################################################################### @@ -2295,7 +2286,7 @@ # Debug options options BUS_DEBUG # enable newbus debugging options DEBUG_VFS_LOCKS # enable vfs lock debugging -options SOCKBUF_DEBUG # enable sockbuf last record/mb tail checking +options SOCKBUF_DEBUG # enable sockbuf last record/mb tail checking ##################################################################### # SYSV IPC KERNEL PARAMETERS @@ -2354,13 +2345,13 @@ # file. Both offset and length of the read operation must be # multiples of the physical media sector size. # -#options DIRECTIO +#options DIRECTIO # Specify a lower limit for the number of swap I/O buffers. They are # (among other things) used when bypassing the buffer cache due to # DIRECTIO kernel option enabled and O_DIRECT flag set on file. # -#options NSWBUF_MIN=120 +#options NSWBUF_MIN=120 ##################################################################### @@ -2403,7 +2394,7 @@ options SLIP_IFF_OPTS options VFS_BIO_DEBUG # VFS buffer I/O debugging -options KSTACK_MAX_PAGES=32 # Maximum pages to give the kernel stack +options KSTACK_MAX_PAGES=32 # Maximum pages to give the kernel stack # Yet more undocumented options for linting. options AAC_DEBUG ==== //depot/projects/netperf/sys/conf/files#21 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.843 2003/11/03 12:05:58 harti Exp $ +# $FreeBSD: src/sys/conf/files,v 1.844 2003/11/05 06:38:14 scottl Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -940,6 +940,7 @@ fs/smbfs/smbfs_vfsops.c optional smbfs fs/smbfs/smbfs_vnops.c optional smbfs fs/specfs/spec_vnops.c standard +fs/udf/udf_iconv.c optional udf_iconv fs/udf/udf_vfsops.c optional udf fs/udf/udf_vnops.c optional udf fs/udf/osta.c optional udf ==== //depot/projects/netperf/sys/conf/kern.mk#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/kern.mk,v 1.36 2003/05/30 01:06:58 peter Exp $ +# $FreeBSD: src/sys/conf/kern.mk,v 1.37 2003/11/04 23:29:17 peter Exp $ # # Warning flags for compiling the kernel and components of the kernel. @@ -24,6 +24,7 @@ # .if ${MACHINE_ARCH} == "i386" CFLAGS+= -mno-align-long-strings -mpreferred-stack-boundary=2 +INLINE_LIMIT?= 15000 .endif # @@ -33,6 +34,7 @@ # .if ${MACHINE_ARCH} == "alpha" CFLAGS+= -mno-fp-regs -ffixed-8 -Wa,-mev6 +INLINE_LIMIT?= 15000 .endif # @@ -41,6 +43,7 @@ # .if ${MACHINE_ARCH} == "ia64" CFLAGS+= -ffixed-r13 -mfixed-range=f32-f127 -mno-sdata +INLINE_LIMIT?= 15000 .endif # @@ -50,6 +53,7 @@ # .if ${MACHINE_ARCH} == "sparc64" CFLAGS+= -mcmodel=medlow -msoft-float +INLINE_LIMIT?= 15000 .endif # @@ -60,6 +64,7 @@ CFLAGS+= -mcmodel=kernel -mno-red-zone \ -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow \ -msoft-float -fno-asynchronous-unwind-tables +INLINE_LIMIT?= 20000 .endif # ==== //depot/projects/netperf/sys/conf/kern.pre.mk#6 (text+ko) ==== @@ -1,10 +1,7 @@ -# kern.pre.mk -# -# Unified Makefile for building kernels. This includes all the definitions -# that need to be included before %BEFORE_DEPEND -# -# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.35 2003/10/27 11:19:08 harti Exp $ -# +# $FreeBSD: src/sys/conf/kern.pre.mk,v 1.37 2003/11/05 12:20:16 bde Exp $ + +# Part of a unified Makefile for building kernels. This part contains all +# of the definitions that need to be before %BEFORE_DEPEND. # Can be overridden by makeoptions or /etc/make.conf KERNEL_KO?= kernel @@ -39,7 +36,9 @@ INCLUDES+= -I$S/contrib/ngatm COPTS= ${INCLUDES} -D_KERNEL -include opt_global.h -CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -fno-common +CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} +CFLAGS+= -fno-common -finline-limit=${INLINE_LIMIT} -fno-strict-aliasing +WERROR?= -Werror # XXX LOCORE means "don't declare C stuff" not "for locore.s". ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} @@ -55,10 +54,6 @@ .endif .endif DEFINED_PROF= ${PROF} -WERROR?= -Werror -INLINE_LIMIT?= 15000 -CFLAGS+= -finline-limit=${INLINE_LIMIT} -fno-strict-aliasing - # Put configuration-specific C flags last (except for ${PROF}) so that they # can override the others. ==== //depot/projects/netperf/sys/conf/kmod.mk#7 (text+ko) ==== @@ -1,5 +1,5 @@ # From: @(#)bsd.prog.mk 5.26 (Berkeley) 6/25/91 -# $FreeBSD: src/sys/conf/kmod.mk,v 1.143 2003/10/03 22:00:06 imp Exp $ +# $FreeBSD: src/sys/conf/kmod.mk,v 1.144 2003/11/04 23:29:17 peter Exp $ # # The include file handles installing Kernel Loadable Device # drivers (KLD's). @@ -99,7 +99,6 @@ CFLAGS+= -I@/../include -I${DESTDIR}/usr/include .endif # @ -INLINE_LIMIT?= 15000 CFLAGS+= -finline-limit=${INLINE_LIMIT} # Disallow common variables, and if we end up with commons from ==== //depot/projects/netperf/sys/conf/options#17 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.422 2003/11/01 00:18:29 njl Exp $ +# $FreeBSD: src/sys/conf/options,v 1.424 2003/11/05 14:37:48 bde Exp $ # # On the handling of kernel options # @@ -122,7 +122,6 @@ MD_ROOT_SIZE opt_md.h NDGBPORTS opt_dgb.h NSWBUF_MIN opt_swap.h -NTIMECOUNTER opt_ntp.h PANIC_REBOOT_WAIT_TIME opt_panic.h PPS_SYNC opt_ntp.h PUC_FASTINTR opt_puc.h @@ -202,6 +201,7 @@ CD9660_ICONV opt_dontuse.h MSDOSFS_ICONV opt_dontuse.h NTFS_ICONV opt_dontuse.h +UDF_ICONV opt_dontuse.h # If you are following the conditions in the copyright, # you can enable soft-updates which will speed up a lot of thigs @@ -344,7 +344,6 @@ IPFIREWALL_VERBOSE opt_ipfw.h IPFIREWALL_VERBOSE_LIMIT opt_ipfw.h IPFIREWALL_DEFAULT_TO_ACCEPT opt_ipfw.h -IPFIREWALL_FORWARD opt_ipfw.h IPV6FIREWALL opt_ip6fw.h IPV6FIREWALL_VERBOSE opt_ip6fw.h IPV6FIREWALL_VERBOSE_LIMIT opt_ip6fw.h @@ -426,8 +425,6 @@ # This makes "atm.h" unusable. NATM -DPT_ALLOW_MEMIO opt_dpt.h # Allow PCI devices to use memory - # mapped I/O # DPT driver debug flags DPT_MEASURE_PERFORMANCE opt_dpt.h DPT_HANDLE_TIMEOUTS opt_dpt.h @@ -552,23 +549,12 @@ BUS_DEBUG opt_bus.h # options for USB support -UHCI_DEBUG opt_usb.h -OHCI_DEBUG opt_usb.h USB_DEBUG opt_usb.h -UGEN_DEBUG opt_usb.h -UHID_DEBUG opt_usb.h -UHUB_DEBUG opt_usb.h -UKBD_DEBUG opt_usb.h -ULPT_DEBUG opt_usb.h -UMASS_DEBUG opt_usb.h -UMS_DEBUG opt_usb.h -URIO_DEBUG opt_usb.h UKBD_DFLT_KEYMAP opt_ukbd.h UVSCOM_DEFAULT_OPKTSIZE opt_uvscom.h # Vinum options VINUMDEBUG opt_vinum.h -VINUM_AUTOSTART opt_vinum.h # Embedded system options INIT_PATH opt_init_path.h @@ -632,7 +618,6 @@ # options for hifn driver HIFN_DEBUG opt_hifn.h HIFN_RNDTEST opt_hifn.h -HIFN_NO_RNG opt_hifn.h # options for safenet driver SAFE_DEBUG opt_safe.h ==== //depot/projects/netperf/sys/contrib/dev/acpica/dmresrc.c#2 (text+ko) ==== @@ -435,7 +435,7 @@ /* The list must have a valid END_TAG */ - if (ByteData[ByteCount-2] != (ACPI_RDESC_TYPE_END_TAG | 1)) + if (ByteData[ByteCount-1] != (ACPI_RDESC_TYPE_END_TAG | 1)) { return FALSE; } ==== //depot/projects/netperf/sys/dev/ata/ata-raid.c#5 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-raid.c,v 1.69 2003/09/08 13:36:26 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-raid.c,v 1.70 2003/11/05 15:41:20 sos Exp $"); #include "opt_ata.h" #include @@ -184,7 +184,7 @@ rdp->disk.d_fwheads = rdp->heads; rdp->disk.d_maxsize = 128 * DEV_BSIZE; rdp->disk.d_drv1 = rdp; - disk_create(rdp->lun, &rdp->disk, 0, NULL, NULL); + disk_create(rdp->lun, &rdp->disk, DISKFLAG_NOGIANT, NULL, NULL); printf("ar%d: %lluMB lun, (unsigned long long) (rdp->total_sectors / ((1024L * 1024L) / DEV_BSIZE))); @@ -715,7 +715,7 @@ buf1->bp.bio_pblkno = lba; if ((buf1->drive = drv) > 0) buf1->bp.bio_pblkno += rdp->offset; - buf1->bp.bio_caller1 = (void *)rdp; + buf1->bp.bio_driver1 = (void *)rdp; buf1->bp.bio_bcount = chunk * DEV_BSIZE; buf1->bp.bio_data = data; buf1->bp.bio_cmd = bp->bio_cmd; @@ -841,7 +841,7 @@ static void ar_done(struct bio *bp) { - struct ar_softc *rdp = (struct ar_softc *)bp->bio_caller1; + struct ar_softc *rdp = (struct ar_softc *)bp->bio_driver1; struct ar_buf *buf = (struct ar_buf *)bp; switch (rdp->flags & (AR_F_RAID0 | AR_F_RAID1 | AR_F_SPAN)) { ==== //depot/projects/netperf/sys/dev/firewire/if_fwe.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/if_fwe.c,v 1.22 2003/11/03 13:01:23 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/if_fwe.c,v 1.23 2003/11/06 04:19:15 simokawa Exp $ */ #include "opt_inet.h" @@ -58,7 +58,7 @@ #include #include -#define FWEDEBUG if (fwedebug) printf +#define FWEDEBUG if (fwedebug) if_printf #define TX_MAX_QUEUE (FWMAXQUEUE - 1) #define RX_MAX_QUEUE FWMAXQUEUE @@ -210,7 +210,7 @@ #endif - FWEDEBUG("interface %s created.\n", ifp->if_xname); + FWEDEBUG(ifp, "interface created\n"); return 0; } @@ -286,7 +286,7 @@ struct mbuf *m; int i; - FWEDEBUG("initializing %s\n", ifp->if_xname); + FWEDEBUG(ifp, "initializing\n"); /* XXX keep promiscoud mode */ ifp->if_flags |= IFF_PROMISC; @@ -441,7 +441,7 @@ fwe = (struct fwe_softc *)xfer->sc; ifp = &fwe->fwe_if; /* XXX error check */ - FWEDEBUG("resp = %d\n", xfer->resp); + FWEDEBUG(ifp, "resp = %d\n", xfer->resp); if (xfer->resp != 0) ifp->if_oerrors ++; @@ -463,12 +463,12 @@ struct fwe_softc *fwe = ((struct fwe_eth_softc *)ifp->if_softc)->fwe; int s; - FWEDEBUG("%s starting\n", ifp->if_xname); + FWEDEBUG(ifp, "starting\n"); if (fwe->dma_ch < 0) { struct mbuf *m = NULL; - FWEDEBUG("%s not ready.\n", ifp->if_xname); + FWEDEBUG(ifp, "not ready\n"); s = splimp(); do { @@ -602,7 +602,7 @@ fp->mode.stream.len - ETHER_ALIGN; m->m_pkthdr.rcvif = ifp; #if 0 - FWEDEBUG("%02x %02x %02x %02x %02x %02x\n" + FWEDEBUG(ifp, "%02x %02x %02x %02x %02x %02x\n" "%02x %02x %02x %02x %02x %02x\n" "%02x %02x %02x %02x\n" "%02x %02x %02x %02x\n" ==== //depot/projects/netperf/sys/dev/hatm/if_hatm.c#10 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm.c,v 1.17 2003/10/31 18:32:01 brooks Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm.c,v 1.18 2003/11/05 11:47:31 harti Exp $"); #include "opt_inet.h" #include "opt_natm.h" @@ -1399,6 +1399,11 @@ kenv_getuint(sc, "max_mbuf_pages", &sc->mbuf_max_pages, HE_CONFIG_MAX_MBUF_PAGES, 0); + /* mpsafe */ + kenv_getuint(sc, "mpsafe", &sc->mpsafe, 0, 0); + if (sc->mpsafe != 0) + sc->mpsafe = INTR_MPSAFE; + return (0); } @@ -1936,8 +1941,8 @@ bpfattach(ifp, DLT_ATM_RFC1483, sizeof(struct atmllc)); #endif - error = bus_setup_intr(dev, sc->irqres, INTR_TYPE_NET, hatm_intr, - &sc->irq_0, &sc->ih); + error = bus_setup_intr(dev, sc->irqres, sc->mpsafe | INTR_TYPE_NET, + hatm_intr, &sc->irq_0, &sc->ih); if (error != 0) { device_printf(dev, "could not setup interrupt\n"); hatm_detach(dev); ==== //depot/projects/netperf/sys/dev/hatm/if_hatm_intr.c#7 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm_intr.c,v 1.14 2003/10/30 16:19:50 harti Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm_intr.c,v 1.15 2003/11/05 11:15:47 harti Exp $"); /* * ForeHE driver. @@ -231,7 +231,7 @@ for (i = 0; i < MBUF0_PER_PAGE; i++, c++) { c->hdr.pageno = sc->mbuf_npages; c->hdr.chunkno = i; - c->hdr.flags = MBUF_USED; + c->hdr.flags = 0; hatm_ext_free(&sc->mbuf_list[0], (struct mbufx_free *)c); } @@ -246,7 +246,7 @@ for (i = 0; i < MBUF1_PER_PAGE; i++, c++) { c->hdr.pageno = sc->mbuf_npages; c->hdr.chunkno = i; - c->hdr.flags = MBUF_USED; + c->hdr.flags = 0; hatm_ext_free(&sc->mbuf_list[1], (struct mbufx_free *)c); } ==== //depot/projects/netperf/sys/dev/hatm/if_hatm_tx.c#7 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm_tx.c,v 1.8 2003/10/29 15:15:19 harti Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm_tx.c,v 1.9 2003/11/05 11:43:06 harti Exp $"); #include "opt_inet.h" #include "opt_natm.h" @@ -78,7 +78,32 @@ #include #include + /* + * These macros are used to trace the flow of transmit mbufs and to + * detect transmit mbuf leaks in the driver. + */ +#ifdef HATM_DEBUG +#define hatm_free_txmbuf(SC) \ + do { \ + if (--sc->txmbuf < 0) \ + DBG(sc, TX, ("txmbuf below 0!")); \ + else if (sc->txmbuf == 0) \ + DBG(sc, TX, ("txmbuf now 0")); \ + } while (0) +#define hatm_get_txmbuf(SC) \ + do { \ + if (++sc->txmbuf > 20000) \ + DBG(sc, TX ("txmbuf %u", sc->txmbuf)); \ + else if (sc->txmbuf == 1) \ + DBG(sc, TX, ("txmbuf leaves 0")); \ + } while (0) +#else +#define hatm_free_txmbuf(SC) do { } while (0) +#define hatm_get_txmbuf(SC) do { } while (0) +#endif + +/* * Allocate a new TPD, zero the TPD part. Cannot return NULL if * flag is 0. The TPD is removed from the free list and its used * bit is set. @@ -124,6 +149,7 @@ { if (tpd->mbuf != NULL) { bus_dmamap_unload(sc->tx_tag, tpd->map); + hatm_free_txmbuf(sc); m_freem(tpd->mbuf); tpd->mbuf = NULL; } @@ -344,9 +370,13 @@ if (m == NULL) break; + hatm_get_txmbuf(sc); + if (m->m_len < sizeof(*aph)) - if ((m = m_pullup(m, sizeof(*aph))) == NULL) + if ((m = m_pullup(m, sizeof(*aph))) == NULL) { + hatm_free_txmbuf(sc); continue; + } aph = mtod(m, struct atm_pseudohdr *); arg.vci = ATM_PH_VCI(aph); @@ -354,12 +384,14 @@ m_adj(m, sizeof(*aph)); if ((len = m->m_pkthdr.len) == 0) { + hatm_free_txmbuf(sc); m_freem(m); continue; } if ((arg.vpi & ~HE_VPI_MASK) || (arg.vci & ~HE_VCI_MASK) || (arg.vci == 0)) { + hatm_free_txmbuf(sc); m_freem(m); continue; } @@ -367,10 +399,12 @@ arg.vcc = sc->vccs[cid]; if (arg.vcc == NULL || !(arg.vcc->vflags & HE_VCC_OPEN)) { + hatm_free_txmbuf(sc); m_freem(m); continue; } if (arg.vcc->vflags & HE_VCC_FLOW_CTRL) { + hatm_free_txmbuf(sc); m_freem(m); sc->istats.flow_drop++; continue; @@ -380,6 +414,7 @@ if (arg.vcc->param.aal == ATMIO_AAL_RAW) { if (len < 52) { /* too short */ + hatm_free_txmbuf(sc); m_freem(m); continue; } @@ -388,8 +423,10 @@ * Get the header and ignore except * payload type and CLP. */ - if (m->m_len < 4 && (m = m_pullup(m, 4)) == NULL) + if (m->m_len < 4 && (m = m_pullup(m, 4)) == NULL) { + hatm_free_txmbuf(sc); continue; + } arg.pti = mtod(m, u_char *)[3] & 0xf; arg.pti = ((arg.pti & 0xe) << 2) | ((arg.pti & 1) << 1); m_adj(m, 4); @@ -412,6 +449,7 @@ * TPD to get a map. Additional TPDs may be allocated by the * callback. */ if ((tpd = hatm_alloc_tpd(sc, M_NOWAIT)) == NULL) { + hatm_free_txmbuf(sc); m_freem(m); sc->ifatm.ifnet.if_oerrors++; continue; @@ -430,6 +468,9 @@ sc->istats.defrag++; m = m_defrag(m, M_DONTWAIT); if (m == NULL) { + tpd->mbuf = NULL; + hatm_free_txmbuf(sc); + hatm_free_tpd(sc, tpd); sc->ifatm.ifnet.if_oerrors++; continue; } ==== //depot/projects/netperf/sys/dev/hatm/if_hatmvar.h#8 (text+ko) ==== @@ -26,7 +26,7 @@ * * Author: Hartmut Brandt * - * $FreeBSD: src/sys/dev/hatm/if_hatmvar.h,v 1.13 2003/10/31 13:35:22 harti Exp $ + * $FreeBSD: src/sys/dev/hatm/if_hatmvar.h,v 1.15 2003/11/05 11:47:31 harti Exp $ * * Fore HE driver for NATM */ @@ -458,9 +458,14 @@ /* internal statistics */ struct istats istats; + u_int mpsafe; + #ifdef HATM_DEBUG /* debugging */ u_int debug; + + /* transmit mbuf count */ + int txmbuf; #endif }; ==== //depot/projects/netperf/sys/dev/wi/if_wi.c#13 (text+ko) ==== @@ -62,7 +62,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/wi/if_wi.c,v 1.155 2003/11/04 00:31:58 green Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/wi/if_wi.c,v 1.157 2003/11/04 23:47:19 green Exp $"); #define WI_HERMES_AUTOINC_WAR /* Work around data write autoinc bug. */ #define WI_HERMES_STATS_WAR /* Work around stats counter bug. */ @@ -655,9 +655,15 @@ wi_write_val(sc, WI_RID_PORTTYPE, WI_PORTTYPE_ADHOC); break; case IEEE80211_M_HOSTAP: - /* The card can lock up if we don't toggle it first. */ - wi_cmd(sc, WI_CMD_DISABLE | WI_PORT0, 0, 0, 0); - wi_cmd(sc, WI_CMD_ENABLE | WI_PORT0, 0, 0, 0); + /* + * For PRISM cards, override the empty SSID, because in + * HostAP mode the controller will lock up otherwise. + */ + if (sc->sc_firmware_type == WI_INTERSIL && + ic->ic_des_esslen == 0) { + ic->ic_des_essid[0] = ' '; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Nov 5 21:06:25 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3C2C816A4D0; Wed, 5 Nov 2003 21:06:25 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0FCD616A4CE for ; Wed, 5 Nov 2003 21:06:25 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 78CFA43FE1 for ; Wed, 5 Nov 2003 21:06:24 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA656OXJ091156 for ; Wed, 5 Nov 2003 21:06:24 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA656N1L091153 for perforce@freebsd.org; Wed, 5 Nov 2003 21:06:23 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 21:06:23 -0800 (PST) Message-Id: <200311060506.hA656N1L091153@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 Subject: PERFORCE change 41560 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 05:06:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=41560 Change 41560 by sam@sam_ebb on 2003/11/05 21:05:27 GIANT_REQUIRED doesn't take () Affected files ... .. //depot/projects/netperf/sys/netatalk/aarp.c#6 edit Differences ... ==== //depot/projects/netperf/sys/netatalk/aarp.c#6 (text+ko) ==== @@ -312,7 +312,7 @@ int op; u_short net; - GIANT_REQUIRED(); + GIANT_REQUIRED; ea = mtod( m, struct ether_aarp *); From owner-p4-projects@FreeBSD.ORG Wed Nov 5 21:07:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4537A16A4D0; Wed, 5 Nov 2003 21:07:27 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1ECC216A4CE for ; Wed, 5 Nov 2003 21:07:27 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9C3B143FF2 for ; Wed, 5 Nov 2003 21:07:26 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA657QXJ091194 for ; Wed, 5 Nov 2003 21:07:26 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA657P5V091191 for perforce@freebsd.org; Wed, 5 Nov 2003 21:07:25 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 21:07:25 -0800 (PST) Message-Id: <200311060507.hA657P5V091191@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 Subject: PERFORCE change 41561 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 05:07:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=41561 Change 41561 by sam@sam_ebb on 2003/11/05 21:07:22 don't grab Giant explicitly; let netisr do it Affected files ... .. //depot/projects/netperf/sys/netatm/atm_subr.c#4 edit Differences ... ==== //depot/projects/netperf/sys/netatm/atm_subr.c#4 (text+ko) ==== @@ -141,7 +141,7 @@ atm_intrq.ifq_maxlen = ATM_INTRQ_MAX; mtx_init(&atm_intrq.ifq_mtx, "atm_inq", NULL, MTX_DEF); - netisr_register(NETISR_ATM, atm_intr, &atm_intrq); + netisr_register(NETISR_ATM, atm_intr, &atm_intrq, 0); /* * Initialize subsystems @@ -557,7 +557,8 @@ atm_intr_func_t func; void *token; - mtx_lock(&Giant); + GIANT_REQUIRED; + /* * Get function to call and token value */ @@ -581,7 +582,6 @@ * Drain any deferred calls */ STACK_DRAIN(); - mtx_unlock(&Giant); } /* From owner-p4-projects@FreeBSD.ORG Wed Nov 5 21:11:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0A1E916A4D0; Wed, 5 Nov 2003 21:11:34 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D99CB16A4CE for ; Wed, 5 Nov 2003 21:11:33 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 50ADC44001 for ; Wed, 5 Nov 2003 21:11:33 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA65BXXJ091454 for ; Wed, 5 Nov 2003 21:11:33 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA65BWlN091451 for perforce@freebsd.org; Wed, 5 Nov 2003 21:11:32 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 21:11:32 -0800 (PST) Message-Id: <200311060511.hA65BWlN091451@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 Subject: PERFORCE change 41564 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 05:11:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=41564 Change 41564 by sam@sam_ebb on 2003/11/05 21:10:48 must _always_ grab Giant to protect sbappendaddr Affected files ... .. //depot/projects/netperf/sys/netinet/ip_mroute.c#20 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_mroute.c#20 (text+ko) ==== @@ -1289,13 +1289,13 @@ socket_send(struct socket *s, struct mbuf *mm, struct sockaddr_in *src) { if (s) { - NET_PICKUP_GIANT(); + mtx_lock(&Giant); /* XXX until sockets are locked */ if (sbappendaddr(&s->so_rcv, (struct sockaddr *)src, mm, NULL) != 0) { sorwakeup(s); - NET_DROP_GIANT(); + mtx_unlock(&Giant); return 0; } - NET_DROP_GIANT(); + mtx_unlock(&Giant); } m_freem(mm); return -1; From owner-p4-projects@FreeBSD.ORG Wed Nov 5 21:13:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F4DB16A4D0; Wed, 5 Nov 2003 21:13:38 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DDA5B16A4CE for ; Wed, 5 Nov 2003 21:13:37 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1D87443FE0 for ; Wed, 5 Nov 2003 21:13:37 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA65DaXJ091578 for ; Wed, 5 Nov 2003 21:13:36 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA65Da5J091575 for perforce@freebsd.org; Wed, 5 Nov 2003 21:13:36 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 21:13:36 -0800 (PST) Message-Id: <200311060513.hA65Da5J091575@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 Subject: PERFORCE change 41566 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 05:13:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=41566 Change 41566 by sam@sam_ebb on 2003/11/05 21:13:11 diff reduction against head Affected files ... .. //depot/projects/netperf/sys/pci/if_sis.c#14 edit Differences ... ==== //depot/projects/netperf/sys/pci/if_sis.c#14 (text+ko) ==== @@ -1663,9 +1663,7 @@ ifp->if_ipackets++; m->m_pkthdr.rcvif = ifp; - SIS_UNLOCK(sc); (*ifp->if_input)(ifp, m); - SIS_LOCK(sc); } sc->sis_cdata.sis_rx_prod = i; From owner-p4-projects@FreeBSD.ORG Wed Nov 5 21:33:03 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ECD9E16A4D0; Wed, 5 Nov 2003 21:33:02 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C83D516A4CE for ; Wed, 5 Nov 2003 21:33:02 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3BBF243FFB for ; Wed, 5 Nov 2003 21:33:02 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA65X1XJ092246 for ; Wed, 5 Nov 2003 21:33:01 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA65X0Lw092241 for perforce@freebsd.org; Wed, 5 Nov 2003 21:33:00 -0800 (PST) (envelope-from sam@freebsd.org) Date: Wed, 5 Nov 2003 21:33:00 -0800 (PST) Message-Id: <200311060533.hA65X0Lw092241@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 Subject: PERFORCE change 41567 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 05:33:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=41567 Change 41567 by sam@sam_ebb on 2003/11/05 21:32:09 fix assert Affected files ... .. //depot/projects/netperf/sys/netinet/tcp_subr.c#10 edit Differences ... ==== //depot/projects/netperf/sys/netinet/tcp_subr.c#10 (text+ko) ==== @@ -391,7 +391,7 @@ if (tp) { inp = tp->t_inpcb; KASSERT(inp != NULL, ("tcp control block w/o inpcb")); - INP_INFO_WLOCK_ASSERT(&tcpcbinfo); + INP_INFO_WLOCK_ASSERT(&tcbinfo); INP_LOCK_ASSERT(inp); if (!(flags & TH_RST)) { win = sbspace(&inp->inp_socket->so_rcv); From owner-p4-projects@FreeBSD.ORG Wed Nov 5 21:59:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 761C916A4D0; Wed, 5 Nov 2003 21:59:38 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 32A5C16A4CE for ; Wed, 5 Nov 2003 21:59:38 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 83CD943FB1 for ; Wed, 5 Nov 2003 21:59:37 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA65xbXJ093223 for ; Wed, 5 Nov 2003 21:59:37 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA65xbn2093220 for perforce@freebsd.org; Wed, 5 Nov 2003 21:59:37 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 21:59:37 -0800 (PST) Message-Id: <200311060559.hA65xbn2093220@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41568 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 05:59:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=41568 Change 41568 by rwatson@rwatson_paprika on 2003/11/05 21:59:19 Add mac_label.c, which encapsulates a UMA zone for MAC label allocation. Currently, MAC labels observably increase the size of some important data structures even when MAC is disabled, which is undesirable. Also, this means that the size of a MAC label is a compile-time constant. By moving towards run-time allocation of MAC label storage, we can reduce the non-MAC overhead, make MAC label size a boot-time constant, as well as reap some of the benefits of a slab allocator (over time). This commit does not hook up the zone allocated MAC labels to any object types. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#96 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#422 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#11 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#96 (text+ko) ==== @@ -1596,6 +1596,7 @@ posix4/p1003_1b.c standard posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores +security/mac/mac_label.c optional mac security/mac/mac_net.c optional mac security/mac/mac_pipe.c optional mac security/mac/mac_posix_sem.c optional mac ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#422 (text+ko) ==== @@ -270,6 +270,7 @@ LIST_INIT(&mac_static_policy_list); LIST_INIT(&mac_policy_list); + mac_labelzone_init(); #ifndef MAC_STATIC mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#11 (text+ko) ==== @@ -89,6 +89,10 @@ int mac_policy_list_conditional_busy(void); void mac_policy_list_unbusy(void); +struct label *mac_labelzone_alloc(int flags); +void mac_labelzone_free(struct label *label); +void mac_labelzone_init(void); + void mac_init_label(struct label *label); void mac_destroy_label(struct label *label); int mac_check_structmac_consistent(struct mac *mac); From owner-p4-projects@FreeBSD.ORG Wed Nov 5 22:23:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CF3DA16A4D0; Wed, 5 Nov 2003 22:23:07 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A919916A4CE for ; Wed, 5 Nov 2003 22:23:07 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 09A4043F85 for ; Wed, 5 Nov 2003 22:23:07 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA66N6XJ095087 for ; Wed, 5 Nov 2003 22:23:06 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA66N6wo095084 for perforce@freebsd.org; Wed, 5 Nov 2003 22:23:06 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 22:23:06 -0800 (PST) Message-Id: <200311060623.hA66N6wo095084@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41570 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 06:23:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=41570 Change 41570 by rwatson@rwatson_paprika on 2003/11/05 22:22:44 Use MAC label UMA zone for pipe labels, rather than their own malloc pool. Currently, the zone is used only for labels on pipes themselves, and we retain the externally visible functions to initialize and destroy temporary pipe labels used in kern_mac.c for internalization/externalization. Better abstraction will migrate that code into mac_pipe.c, or other objects will also use dynamically allocated labels at some point. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#7 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#7 (text+ko) ==== @@ -61,8 +61,6 @@ &nmacpipes, 0, "number of pipes in use"); #endif -MALLOC_DEFINE(M_MACPIPELABEL, "macpipelabel", "MAC labels for pipes"); - void mac_init_pipe_label(struct label *label) { @@ -72,15 +70,23 @@ MAC_DEBUG_COUNTER_INC(&nmacpipes); } +static struct label * +mac_pipe_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_pipe_label, label); + MAC_DEBUG_COUNTER_INC(&nmacpipes); + return (label); +} + void mac_init_pipe(struct pipe *pipe) { - struct label *label; - label = malloc(sizeof(struct label), M_MACPIPELABEL, M_ZERO|M_WAITOK); - pipe->pipe_label = label; - pipe->pipe_peer->pipe_label = label; - mac_init_pipe_label(label); + pipe->pipe_label = pipe->pipe_peer->pipe_label = + mac_pipe_label_alloc(); } void @@ -92,12 +98,20 @@ MAC_DEBUG_COUNTER_DEC(&nmacpipes); } +static void +mac_pipe_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_pipe_label, label); + MAC_DEBUG_COUNTER_DEC(&nmacpipes); +} + void mac_destroy_pipe(struct pipe *pipe) { - mac_destroy_pipe_label(pipe->pipe_label); - free(pipe->pipe_label, M_MACPIPELABEL); + mac_pipe_label_free(pipe->pipe_label); + pipe->pipe_label = NULL; } void From owner-p4-projects@FreeBSD.ORG Wed Nov 5 22:27:14 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A11B816A4D0; Wed, 5 Nov 2003 22:27:14 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7C72316A4CE for ; Wed, 5 Nov 2003 22:27:14 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A4FEC43FE1 for ; Wed, 5 Nov 2003 22:27:13 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA66RDXJ095256 for ; Wed, 5 Nov 2003 22:27:13 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA66RD80095253 for perforce@freebsd.org; Wed, 5 Nov 2003 22:27:13 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 22:27:13 -0800 (PST) Message-Id: <200311060627.hA66RD80095253@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41572 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 06:27:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=41572 Change 41572 by rwatson@rwatson_paprika on 2003/11/05 22:26:31 Lost during merge: be sure to free pipe label storage back to zone. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#8 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#8 (text+ko) ==== @@ -103,6 +103,7 @@ { MAC_PERFORM(destroy_pipe_label, label); + mac_labelzone_free(label); MAC_DEBUG_COUNTER_DEC(&nmacpipes); } From owner-p4-projects@FreeBSD.ORG Wed Nov 5 23:13:10 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 45DA116A4D0; Wed, 5 Nov 2003 23:13:10 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1BE4B16A4CE for ; Wed, 5 Nov 2003 23:13:10 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8DEC243FCB for ; Wed, 5 Nov 2003 23:13:09 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA67D9XJ097787 for ; Wed, 5 Nov 2003 23:13:09 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA67D9Xl097784 for perforce@freebsd.org; Wed, 5 Nov 2003 23:13:09 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 23:13:09 -0800 (PST) Message-Id: <200311060713.hA67D9Xl097784@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41573 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 07:13:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=41573 Change 41573 by rwatson@rwatson_paprika on 2003/11/05 23:13:07 #include of _label.h no longer required for pipe.h as pointers are of fixed size. Affected files ... .. //depot/projects/trustedbsd/mac/sys/sys/pipe.h#9 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/sys/pipe.h#9 (text+ko) ==== @@ -28,7 +28,6 @@ #include /* for struct timespec */ #include /* for struct selinfo */ #include /* for vm_page_t */ -#include /* for struct label */ #include /* for PAGE_SIZE */ #endif From owner-p4-projects@FreeBSD.ORG Wed Nov 5 23:16:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9CE4E16A4D0; Wed, 5 Nov 2003 23:16:16 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7600B16A4CE for ; Wed, 5 Nov 2003 23:16:16 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 09A6C43F75 for ; Wed, 5 Nov 2003 23:16:14 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA67GDXJ098003 for ; Wed, 5 Nov 2003 23:16:13 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA67GDdH098000 for perforce@freebsd.org; Wed, 5 Nov 2003 23:16:13 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 5 Nov 2003 23:16:13 -0800 (PST) Message-Id: <200311060716.hA67GDdH098000@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41574 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 07:16:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=41574 Change 41574 by rwatson@rwatson_paprika on 2003/11/05 23:15:36 Store 'struct label *' pointers in struct ucred and struct proc, rather than actual 'struct label' instances. Removes the size of 'struct label' from the ABI for credentials and processes relating to both kernel and policy modules. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#423 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#6 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#223 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_lomac/mac_lomac.c#71 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_mls/mac_mls.c#181 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_partition/mac_partition.c#27 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_test/mac_test.c#115 edit .. //depot/projects/trustedbsd/mac/sys/sys/proc.h#48 edit .. //depot/projects/trustedbsd/mac/sys/sys/ucred.h#20 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#423 (text+ko) ==== @@ -589,7 +589,7 @@ } buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_cred_label(&tcred->cr_label, elements, + error = mac_externalize_cred_label(tcred->cr_label, elements, buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -626,7 +626,7 @@ } buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_cred_label(&td->td_ucred->cr_label, + error = mac_externalize_cred_label(td->td_ucred->cr_label, elements, buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#6 (text+ko) ==== @@ -105,20 +105,49 @@ MAC_DEBUG_COUNTER_INC(&nmaccreds); } +static struct label * +mac_cred_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_cred_label, label); + MAC_DEBUG_COUNTER_INC(&nmaccreds); + return (label); +} + void mac_init_cred(struct ucred *cred) { - mac_init_cred_label(&cred->cr_label); + cred->cr_label = mac_cred_label_alloc(); +} + +static struct label * +mac_proc_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_proc_label, label); + MAC_DEBUG_COUNTER_INC(&nmacprocs); + return (label); } void mac_init_proc(struct proc *p) { - mac_init_label(&p->p_label); - MAC_PERFORM(init_proc_label, &p->p_label); - MAC_DEBUG_COUNTER_INC(&nmacprocs); + p->p_label = mac_proc_label_alloc(); +} + +static void +mac_cred_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_cred_label, label); + mac_labelzone_free(label); + MAC_DEBUG_COUNTER_DEC(&nmaccreds); } void @@ -134,16 +163,25 @@ mac_destroy_cred(struct ucred *cred) { - mac_destroy_cred_label(&cred->cr_label); + mac_cred_label_free(cred->cr_label); + cred->cr_label = NULL; +} + +static void +mac_proc_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_proc_label, label); + mac_labelzone_free(label); + MAC_DEBUG_COUNTER_DEC(&nmacprocs); } void mac_destroy_proc(struct proc *p) { - MAC_PERFORM(destroy_proc_label, &p->p_label); - mac_destroy_label(&p->p_label); - MAC_DEBUG_COUNTER_DEC(&nmacprocs); + mac_proc_label_free(p->p_label); + p->p_label = NULL; } int ==== //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#223 (text+ko) ==== @@ -900,7 +900,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(delabel); mac_biba_copy_single(source, dest); @@ -912,7 +912,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(mntlabel); mac_biba_copy_single(source, dest); dest = SLOT(fslabel); @@ -1034,7 +1034,7 @@ buflen = sizeof(temp); bzero(&temp, buflen); - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(vlabel); mac_biba_copy_single(source, &temp); @@ -1088,7 +1088,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(socketlabel); mac_biba_copy_single(source, dest); @@ -1100,7 +1100,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(pipelabel); mac_biba_copy_single(source, dest); @@ -1112,7 +1112,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(ks_label); mac_biba_copy_single(source, dest); @@ -1178,7 +1178,7 @@ struct mac_biba *source, *dest; /* Ignore the msgq label */ - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(msglabel); mac_biba_copy_single(source, dest); @@ -1190,7 +1190,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(msqlabel); mac_biba_copy_single(source, dest); @@ -1202,7 +1202,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(semalabel); mac_biba_copy_single(source, dest); @@ -1214,7 +1214,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(shmlabel); mac_biba_copy_single(source, dest); @@ -1242,7 +1242,7 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(bpflabel); mac_biba_copy_single(source, dest); @@ -1454,8 +1454,8 @@ { struct mac_biba *source, *dest; - source = SLOT(&cred_parent->cr_label); - dest = SLOT(&cred_child->cr_label); + source = SLOT(cred_parent->cr_label); + dest = SLOT(cred_child->cr_label); mac_biba_copy_single(source, dest); mac_biba_copy_range(source, dest); @@ -1466,7 +1466,7 @@ { struct mac_biba *dest; - dest = SLOT(&cred->cr_label); + dest = SLOT(cred->cr_label); mac_biba_set_single(dest, MAC_BIBA_TYPE_EQUAL, 0, NULL); mac_biba_set_range(dest, MAC_BIBA_TYPE_LOW, 0, NULL, @@ -1478,7 +1478,7 @@ { struct mac_biba *dest; - dest = SLOT(&cred->cr_label); + dest = SLOT(cred->cr_label); mac_biba_set_single(dest, MAC_BIBA_TYPE_HIGH, 0, NULL); mac_biba_set_range(dest, MAC_BIBA_TYPE_LOW, 0, NULL, @@ -1491,7 +1491,7 @@ struct mac_biba *source, *dest; source = SLOT(newlabel); - dest = SLOT(&cred->cr_label); + dest = SLOT(cred->cr_label); mac_biba_copy(source, dest); } @@ -1552,7 +1552,7 @@ struct mac_biba *subj, *new; int error; - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); new = SLOT(newlabel); /* @@ -1616,8 +1616,8 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&u1->cr_label); - obj = SLOT(&u2->cr_label); + subj = SLOT(u1->cr_label); + obj = SLOT(u2->cr_label); /* XXX: range */ if (!mac_biba_dominate_single(obj, subj)) @@ -1633,7 +1633,7 @@ struct mac_biba *subj, *new; int error; - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); new = SLOT(newlabel); /* @@ -1677,7 +1677,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&msgptr->label); if (!mac_biba_dominate_single(obj, subj)) @@ -1694,7 +1694,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&msgptr->label); if (!mac_biba_dominate_single(subj, obj)) @@ -1711,7 +1711,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&msqkptr->label); if (!mac_biba_dominate_single(obj, subj)) @@ -1728,7 +1728,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&msqkptr->label); if (!mac_biba_dominate_single(subj, obj)) @@ -1745,7 +1745,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&msqkptr->label); if (!mac_biba_dominate_single(obj, subj)) @@ -1764,7 +1764,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&msqkptr->label); switch(cmd) { @@ -1795,7 +1795,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&semakptr->label); switch(cmd) { @@ -1833,7 +1833,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&semakptr->label); if (!mac_biba_dominate_single(obj, subj)) @@ -1852,7 +1852,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&semakptr->label); if (accesstype & SEM_R) @@ -1875,7 +1875,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&shmsegptr->label); if (!mac_biba_dominate_single(obj, subj)) @@ -1897,7 +1897,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&shmsegptr->label); switch(cmd) { @@ -1935,7 +1935,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&shmsegptr->label); if (!mac_biba_dominate_single(subj, obj)) @@ -1954,7 +1954,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(&shmsegptr->label); if (!mac_biba_dominate_single(obj, subj)) @@ -1973,7 +1973,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); error = mac_biba_subject_privileged(subj); if (error) @@ -1995,7 +1995,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); return (mac_biba_subject_privileged(subj)); } @@ -2009,7 +2009,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(mntlabel); if (!mac_biba_dominate_single(obj, subj)) @@ -2040,7 +2040,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT((pipelabel)); if (!mac_biba_dominate_single(obj, subj)) @@ -2058,7 +2058,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT((pipelabel)); if (!mac_biba_dominate_single(obj, subj)) @@ -2075,7 +2075,7 @@ int error; new = SLOT(newlabel); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(pipelabel); /* @@ -2127,7 +2127,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT((pipelabel)); if (!mac_biba_dominate_single(obj, subj)) @@ -2145,7 +2145,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT((pipelabel)); if (!mac_biba_dominate_single(subj, obj)) @@ -2162,7 +2162,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT((&ksemptr->ks_label)); if (!mac_biba_dominate_single(subj, obj)) @@ -2179,7 +2179,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT((&ksemptr->ks_label)); if (!mac_biba_dominate_single(obj, subj)) @@ -2196,8 +2196,8 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); - obj = SLOT(&proc->p_ucred->cr_label); + subj = SLOT(cred->cr_label); + obj = SLOT(proc->p_ucred->cr_label); /* XXX: range checks */ if (!mac_biba_dominate_single(obj, subj)) @@ -2216,8 +2216,8 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); - obj = SLOT(&proc->p_ucred->cr_label); + subj = SLOT(cred->cr_label); + obj = SLOT(proc->p_ucred->cr_label); /* XXX: range checks */ if (!mac_biba_dominate_single(obj, subj)) @@ -2236,8 +2236,8 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); - obj = SLOT(&proc->p_ucred->cr_label); + subj = SLOT(cred->cr_label); + obj = SLOT(proc->p_ucred->cr_label); /* XXX: range checks */ if (!mac_biba_dominate_single(obj, subj)) @@ -2271,7 +2271,7 @@ int error; new = SLOT(newlabel); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(socketlabel); /* @@ -2323,7 +2323,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(socketlabel); if (!mac_biba_dominate_single(obj, subj)) @@ -2341,7 +2341,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); error = mac_biba_subject_privileged(subj); if (error) @@ -2360,7 +2360,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); error = mac_biba_subject_privileged(subj); if (error) @@ -2385,7 +2385,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); error = mac_biba_subject_privileged(subj); if (error) @@ -2404,7 +2404,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); error = mac_biba_subject_privileged(subj); @@ -2427,7 +2427,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); error = mac_biba_subject_privileged(subj); @@ -2447,7 +2447,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); /* * In general, treat sysctl variables as biba/high, but also @@ -2480,7 +2480,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(obj, subj)) @@ -2498,7 +2498,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(obj, subj)) @@ -2516,7 +2516,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(subj, obj)) @@ -2535,7 +2535,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(subj, obj)) @@ -2558,7 +2558,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(subj, obj)) @@ -2576,7 +2576,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(subj, obj)) @@ -2608,7 +2608,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(obj, subj)) @@ -2626,7 +2626,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(obj, subj)) @@ -2644,7 +2644,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(obj, subj)) @@ -2663,7 +2663,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(subj, obj)) @@ -2686,7 +2686,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(obj, subj)) @@ -2704,7 +2704,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(obj, subj)) @@ -2726,7 +2726,7 @@ if (!mac_biba_enabled || !revocation_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (prot & (VM_PROT_READ | VM_PROT_EXECUTE)) { @@ -2750,7 +2750,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(vnodelabel); /* XXX privilege override for admin? */ @@ -2775,7 +2775,7 @@ if (!mac_biba_enabled || !revocation_enabled) return (0); - subj = SLOT(&active_cred->cr_label); + subj = SLOT(active_cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(obj, subj)) @@ -2793,7 +2793,7 @@ if (!mac_biba_enabled || !revocation_enabled) return (0); - subj = SLOT(&active_cred->cr_label); + subj = SLOT(active_cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(obj, subj)) @@ -2811,7 +2811,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(obj, subj)) @@ -2829,7 +2829,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(obj, subj)) @@ -2847,7 +2847,7 @@ old = SLOT(vnodelabel); new = SLOT(newlabel); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); /* * If there is a Biba label update for the vnode, it must be a @@ -2899,7 +2899,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(subj, obj)) @@ -2923,7 +2923,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(dlabel); if (!mac_biba_dominate_single(subj, obj)) @@ -2948,7 +2948,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(subj, obj)) @@ -2966,7 +2966,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(subj, obj)) @@ -2985,7 +2985,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(vnodelabel); if (!mac_biba_dominate_single(subj, obj)) @@ -3005,7 +3005,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(vnodelabel); if (!mac_biba_dominate_single(subj, obj)) @@ -3023,7 +3023,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(vnodelabel); if (!mac_biba_dominate_single(subj, obj)) @@ -3041,7 +3041,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(vnodelabel); if (!mac_biba_dominate_single(subj, obj)) @@ -3059,7 +3059,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&cred->cr_label); + subj = SLOT(cred->cr_label); obj = SLOT(vnodelabel); if (!mac_biba_dominate_single(subj, obj)) @@ -3077,7 +3077,7 @@ if (!mac_biba_enabled) return (0); - subj = SLOT(&active_cred->cr_label); + subj = SLOT(active_cred->cr_label); obj = SLOT(vnodelabel); if (!mac_biba_dominate_single(obj, subj)) @@ -3095,7 +3095,7 @@ if (!mac_biba_enabled || !revocation_enabled) return (0); - subj = SLOT(&active_cred->cr_label); + subj = SLOT(active_cred->cr_label); obj = SLOT(label); if (!mac_biba_dominate_single(subj, obj)) ==== //depot/projects/trustedbsd/mac/sys/security/mac_lomac/mac_lomac.c#71 (text+ko) ==== @@ -516,7 +516,7 @@ struct proc *p; pid_t pgid; - subj = PSLOT(&curthread->td_proc->p_label); + subj = PSLOT(curthread->td_proc->p_label); p = curthread->td_proc; mtx_lock(&subj->mtx); @@ -960,7 +960,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(delabel); mac_lomac_copy_single(source, dest); @@ -972,7 +972,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(mntlabel); mac_lomac_copy_single(source, dest); dest = SLOT(fslabel); @@ -1101,7 +1101,7 @@ buflen = sizeof(temp); bzero(&temp, buflen); - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(vlabel); dir = SLOT(dlabel); if (dir->ml_flags & MAC_LOMAC_FLAG_AUX) { @@ -1161,7 +1161,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(socketlabel); mac_lomac_copy_single(source, dest); @@ -1173,7 +1173,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(pipelabel); mac_lomac_copy_single(source, dest); @@ -1185,7 +1185,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(ks_label); mac_lomac_copy_single(source, dest); @@ -1250,7 +1250,7 @@ struct mac_lomac *source, *dest; /* Ignore the msgq label */ - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(msglabel); mac_lomac_copy_single(source, dest); @@ -1262,7 +1262,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(msqlabel); mac_lomac_copy_single(source, dest); @@ -1274,7 +1274,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(semalabel); mac_lomac_copy_single(source, dest); @@ -1286,7 +1286,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(shmlabel); mac_lomac_copy_single(source, dest); @@ -1314,7 +1314,7 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred->cr_label); + source = SLOT(cred->cr_label); dest = SLOT(bpflabel); mac_lomac_copy_single(source, dest); @@ -1538,8 +1538,8 @@ { struct mac_lomac *source, *dest; - source = SLOT(&cred_parent->cr_label); - dest = SLOT(&cred_child->cr_label); + source = SLOT(cred_parent->cr_label); + dest = SLOT(cred_child->cr_label); mac_lomac_copy_single(source, dest); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Nov 6 00:27:57 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6D18F16A4D0; Thu, 6 Nov 2003 00:27:57 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 47E6E16A4CE; Thu, 6 Nov 2003 00:27:57 -0800 (PST) Received: from harmony.village.org (rover.bsdimp.com [204.144.255.66]) by mx1.FreeBSD.org (Postfix) with ESMTP id 14C9D43FB1; Thu, 6 Nov 2003 00:27:56 -0800 (PST) (envelope-from imp@bsdimp.com) Received: from localhost (warner@rover2.village.org [10.0.0.1]) by harmony.village.org (8.12.9p2/8.12.9) with ESMTP id hA68RteG074974; Thu, 6 Nov 2003 01:27:55 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Thu, 06 Nov 2003 01:26:01 -0700 (MST) Message-Id: <20031106.012601.39876884.imp@bsdimp.com> To: sam@freebsd.org From: "M. Warner Losh" In-Reply-To: <200311060513.hA65Da5J091575@repoman.freebsd.org> References: <200311060513.hA65Da5J091575@repoman.freebsd.org> X-Mailer: Mew version 2.1 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: perforce@freebsd.org Subject: Re: PERFORCE change 41566 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 08:27:57 -0000 In message: <200311060513.hA65Da5J091575@repoman.freebsd.org> Sam Leffler writes: : diff reduction against head : - SIS_UNLOCK(sc); : (*ifp->if_input)(ifp, m); : - SIS_LOCK(sc); does this mean that we can call if_input with our locks held? Warner From owner-p4-projects@FreeBSD.ORG Thu Nov 6 05:56:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D37A916A4D0; Thu, 6 Nov 2003 05:56:03 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A81DB16A4CE for ; Thu, 6 Nov 2003 05:56:03 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3E9E243FE9 for ; Thu, 6 Nov 2003 05:55:21 -0800 (PST) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA6DtKXJ030996 for ; Thu, 6 Nov 2003 05:55:20 -0800 (PST) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA6DtKLT030993 for perforce@freebsd.org; Thu, 6 Nov 2003 05:55:20 -0800 (PST) (envelope-from areisse@nailabs.com) Date: Thu, 6 Nov 2003 05:55:20 -0800 (PST) Message-Id: <200311061355.hA6DtKLT030993@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 41583 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 13:56:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=41583 Change 41583 by areisse@areisse_ibook on 2003/11/06 05:54:48 change setgroups to use crdup Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_prot.c#7 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_prot.c#7 (text+ko) ==== @@ -495,7 +495,10 @@ ngrp = uap->gidsetsize; if (ngrp < 1 || ngrp > NGROUPS) return (EINVAL); - new = crget(); + pcred_writelock(p); + old = pc->pc_ucred; + new = crdup (old); + pcred_unlock(p); error = copyin((caddr_t)uap->gidset, (caddr_t)new->cr_groups, ngrp * sizeof(gid_t)); if (error) { @@ -504,11 +507,6 @@ } new->cr_ngroups = ngrp; pcred_writelock(p); - old = pc->pc_ucred; - new->cr_uid = old->cr_uid; -#ifdef MAC - mac_create_cred (old, new); -#endif pc->pc_ucred = new; pcred_unlock(p); set_security_token(p); From owner-p4-projects@FreeBSD.ORG Thu Nov 6 07:34:41 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 349FD16A4D0; Thu, 6 Nov 2003 07:34:41 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DE5A016A4CE for ; Thu, 6 Nov 2003 07:34:40 -0800 (PST) Received: from mail.speakeasy.net (mail7.speakeasy.net [216.254.0.207]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8F41F43FF7 for ; Thu, 6 Nov 2003 07:34:39 -0800 (PST) (envelope-from jhb@FreeBSD.org) Received: (qmail 26480 invoked from network); 6 Nov 2003 15:34:39 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender )encrypted SMTP for ; 6 Nov 2003 15:34:39 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.9/8.12.9) with ESMTP id hA6FYFce081501; Thu, 6 Nov 2003 10:34:15 -0500 (EST) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.4 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <200311060248.hA62mK0o077125@repoman.freebsd.org> Date: Thu, 06 Nov 2003 10:34:15 -0500 (EST) From: John Baldwin To: Peter Wemm X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp) cc: Perforce Change Reviews Subject: RE: PERFORCE change 41538 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 15:34:41 -0000 On 06-Nov-2003 Peter Wemm wrote: > http://perforce.freebsd.org/chv.cgi?CH=41538 > > Change 41538 by peter@peter_daintree on 2003/11/05 18:47:28 > > I'm not sure what this is for, but jhb committed > pcpu->pc_acpi_id. Nate's CPU throttling ACPI stuff uses it for the SMP case. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ From owner-p4-projects@FreeBSD.ORG Thu Nov 6 08:39:43 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8D80F16A4D0; Thu, 6 Nov 2003 08:39:43 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 667F816A4CE for ; Thu, 6 Nov 2003 08:39:43 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E70C744013 for ; Thu, 6 Nov 2003 08:39:41 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA6GdfXJ039453 for ; Thu, 6 Nov 2003 08:39:41 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA6GdfgE039449 for perforce@freebsd.org; Thu, 6 Nov 2003 08:39:41 -0800 (PST) (envelope-from peter@freebsd.org) Date: Thu, 6 Nov 2003 08:39:41 -0800 (PST) Message-Id: <200311061639.hA6GdfgE039449@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41587 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 16:39:44 -0000 X-List-Received-Date: Thu, 06 Nov 2003 16:39:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=41587 Change 41587 by peter@peter_daintree on 2003/11/06 08:38:57 IFC @41584 (pinning! :-) Affected files ... .. //depot/projects/hammer/lib/libc/gen/fnmatch.3#4 integrate .. //depot/projects/hammer/release/i386/dokern.sh#13 integrate .. //depot/projects/hammer/sys/dev/firewire/if_fwe.c#12 integrate .. //depot/projects/hammer/sys/dev/twe/twereg.h#4 integrate .. //depot/projects/hammer/sys/dev/xe/if_xe.c#10 integrate .. //depot/projects/hammer/sys/i386/acpica/madt.c#3 integrate .. //depot/projects/hammer/sys/ia64/ia64/unaligned.c#6 integrate .. //depot/projects/hammer/sys/kern/kern_mac.c#21 integrate .. //depot/projects/hammer/sys/kern/sched_ule.c#17 integrate .. //depot/projects/hammer/sys/kern/sys_pipe.c#14 integrate .. //depot/projects/hammer/sys/modules/Makefile#29 integrate .. //depot/projects/hammer/sys/pci/if_xl.c#24 integrate .. //depot/projects/hammer/sys/security/mac/mac_internal.h#2 integrate .. //depot/projects/hammer/sys/security/mac/mac_net.c#2 integrate .. //depot/projects/hammer/sys/security/mac/mac_pipe.c#2 integrate .. //depot/projects/hammer/sys/security/mac/mac_process.c#2 integrate .. //depot/projects/hammer/sys/security/mac/mac_vfs.c#2 integrate .. //depot/projects/hammer/sys/sys/proc.h#35 integrate .. //depot/projects/hammer/sys/sys/sched.h#6 integrate Differences ... ==== //depot/projects/hammer/lib/libc/gen/fnmatch.3#4 (text+ko) ==== @@ -32,14 +32,14 @@ .\" SUCH DAMAGE. .\" .\" @(#)fnmatch.3 8.3 (Berkeley) 4/28/95 -.\" $FreeBSD: src/lib/libc/gen/fnmatch.3,v 1.15 2003/09/10 19:24:32 ru Exp $ +.\" $FreeBSD: src/lib/libc/gen/fnmatch.3,v 1.16 2003/11/06 00:52:37 kientzle Exp $ .\" .Dd April 28, 1995 .Dt FNMATCH 3 .Os .Sh NAME .Nm fnmatch -.Nd match filename or pathname +.Nd test whether a filename or pathname matches a shell-style pattern .Sh LIBRARY .Lb libc .Sh SYNOPSIS ==== //depot/projects/hammer/release/i386/dokern.sh#13 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/release/i386/dokern.sh,v 1.80 2003/05/18 03:52:22 scottl Exp $ +# $FreeBSD: src/release/i386/dokern.sh,v 1.81 2003/11/06 07:58:37 kuriyama Exp $ # sed \ @@ -21,6 +21,7 @@ -e '/UFS_DIRHASH/d' \ -e '/WITNESS/d' \ -e '/_KPOSIX_PRIORITY_SCHEDULING/d' \ + -e '/ acpi/d' \ -e '/ atapist /d' \ -e '/ faith /d' \ -e '/ gif /d' \ ==== //depot/projects/hammer/sys/dev/firewire/if_fwe.c#12 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/if_fwe.c,v 1.22 2003/11/03 13:01:23 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/if_fwe.c,v 1.23 2003/11/06 04:19:15 simokawa Exp $ */ #include "opt_inet.h" @@ -58,7 +58,7 @@ #include #include -#define FWEDEBUG if (fwedebug) printf +#define FWEDEBUG if (fwedebug) if_printf #define TX_MAX_QUEUE (FWMAXQUEUE - 1) #define RX_MAX_QUEUE FWMAXQUEUE @@ -210,7 +210,7 @@ #endif - FWEDEBUG("interface %s created.\n", ifp->if_xname); + FWEDEBUG(ifp, "interface created\n"); return 0; } @@ -286,7 +286,7 @@ struct mbuf *m; int i; - FWEDEBUG("initializing %s\n", ifp->if_xname); + FWEDEBUG(ifp, "initializing\n"); /* XXX keep promiscoud mode */ ifp->if_flags |= IFF_PROMISC; @@ -441,7 +441,7 @@ fwe = (struct fwe_softc *)xfer->sc; ifp = &fwe->fwe_if; /* XXX error check */ - FWEDEBUG("resp = %d\n", xfer->resp); + FWEDEBUG(ifp, "resp = %d\n", xfer->resp); if (xfer->resp != 0) ifp->if_oerrors ++; @@ -463,12 +463,12 @@ struct fwe_softc *fwe = ((struct fwe_eth_softc *)ifp->if_softc)->fwe; int s; - FWEDEBUG("%s starting\n", ifp->if_xname); + FWEDEBUG(ifp, "starting\n"); if (fwe->dma_ch < 0) { struct mbuf *m = NULL; - FWEDEBUG("%s not ready.\n", ifp->if_xname); + FWEDEBUG(ifp, "not ready\n"); s = splimp(); do { @@ -602,7 +602,7 @@ fp->mode.stream.len - ETHER_ALIGN; m->m_pkthdr.rcvif = ifp; #if 0 - FWEDEBUG("%02x %02x %02x %02x %02x %02x\n" + FWEDEBUG(ifp, "%02x %02x %02x %02x %02x %02x\n" "%02x %02x %02x %02x %02x %02x\n" "%02x %02x %02x %02x\n" "%02x %02x %02x %02x\n" ==== //depot/projects/hammer/sys/dev/twe/twereg.h#4 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/twe/twereg.h,v 1.8 2003/08/05 19:55:21 ps Exp $ + * $FreeBSD: src/sys/dev/twe/twereg.h,v 1.9 2003/11/06 08:09:29 ps Exp $ */ /* @@ -160,7 +160,7 @@ { u_int32_t address; u_int32_t length; -} TWE_SG_Entry __packed; +} __packed TWE_SG_Entry; typedef struct { u_int8_t opcode:5; /* TWE_OP_INITCONNECTION */ @@ -173,7 +173,7 @@ u_int8_t flags; u_int16_t message_credits; u_int32_t response_queue_pointer; -} TWE_Command_INITCONNECTION __packed; +} __packed TWE_Command_INITCONNECTION; typedef struct { @@ -188,7 +188,7 @@ u_int16_t block_count; u_int32_t lba; TWE_SG_Entry sgl[TWE_MAX_SGL_LENGTH]; -} TWE_Command_IO __packed; +} __packed TWE_Command_IO; typedef struct { @@ -205,7 +205,7 @@ #define TWE_OP_HOTSWAP_ADD_CBOD 0x01 /* add CBOD to empty port */ #define TWE_OP_HOTSWAP_ADD_SPARE 0x02 /* add spare to empty port */ u_int8_t aport; -} TWE_Command_HOTSWAP __packed; +} __packed TWE_Command_HOTSWAP; typedef struct { @@ -223,7 +223,7 @@ u_int8_t feature_mode; u_int16_t all_units; u_int16_t persistence; -} TWE_Command_SETATAFEATURE __packed; +} __packed TWE_Command_SETATAFEATURE; typedef struct { @@ -236,7 +236,7 @@ u_int8_t status; u_int8_t flags; u_int16_t target_status; /* set low byte to target request's ID */ -} TWE_Command_CHECKSTATUS __packed; +} __packed TWE_Command_CHECKSTATUS; typedef struct { @@ -250,7 +250,7 @@ u_int8_t flags; u_int16_t param_count; TWE_SG_Entry sgl[TWE_MAX_SGL_LENGTH]; -} TWE_Command_PARAM __packed; +} __packed TWE_Command_PARAM; typedef struct { @@ -269,7 +269,7 @@ #define TWE_OP_REBUILDUNIT_STARTUNIT 5 /* rebuild src_unit (not supported) */ u_int8_t cs:1; /* request state change on src_unit */ u_int8_t logical_subunit; /* for RAID10 rebuild of logical subunit */ -} TWE_Command_REBUILDUNIT __packed; +} __packed TWE_Command_REBUILDUNIT; typedef struct { @@ -289,7 +289,7 @@ u_int8_t drive_head; u_int8_t command; TWE_SG_Entry sgl[TWE_MAX_ATA_SGL_LENGTH]; -} TWE_Command_ATA __packed; +} __packed TWE_Command_ATA; typedef struct { @@ -307,7 +307,7 @@ #define TWE_FLAGS_FATAL 0x03 #define TWE_FLAGS_PERCENTAGE (1<<8) /* bits 0-6 indicate completion percentage */ u_int16_t count; /* block count, parameter count, message credits */ -} TWE_Command_Generic __packed; +} __packed TWE_Command_Generic; /* command packet - must be TWE_ALIGNMENT aligned */ typedef union @@ -451,7 +451,7 @@ u_int8_t log_drv_num; /* must be zero for configuration == 0x0f */ u_int32_t start_lba; u_int32_t block_count; /* actual drive size if configuration == 0x0f, otherwise less DCB size */ -} TWE_Unit_Descriptor __packed; +} __packed TWE_Unit_Descriptor; typedef struct { @@ -459,7 +459,7 @@ u_int8_t res1; u_int8_t mirunit_status[4]; /* bitmap of functional subunits in each mirror */ u_int8_t res2[6]; -} TWE_Mirror_Descriptor __packed; +} __packed TWE_Mirror_Descriptor; typedef struct { @@ -480,7 +480,7 @@ u_int32_t start_lba; u_int32_t block_count; /* actual drive size if configuration == 0x0f, otherwise less DCB size */ TWE_Unit_Descriptor subunit[0]; /* subunit descriptors, in RAID10 mode is [mirunit][subunit] */ -} TWE_Array_Descriptor __packed; +} __packed TWE_Array_Descriptor; typedef struct { @@ -488,5 +488,5 @@ u_int8_t parameter_id; u_int8_t parameter_size_bytes; u_int8_t data[0]; -} TWE_Param __packed; +} __packed TWE_Param; ==== //depot/projects/hammer/sys/dev/xe/if_xe.c#10 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/xe/if_xe.c,v 1.43 2003/11/05 08:27:13 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/xe/if_xe.c,v 1.44 2003/11/06 08:54:43 rsm Exp $"); /* * Portions of this software were derived from Werner Koch's xirc2ps driver @@ -184,7 +184,9 @@ * Debugging functions */ static void xe_mii_dump (struct xe_softc *scp); -void xe_reg_dump (struct xe_softc *scp); +#if 0 +static void xe_reg_dump (struct xe_softc *scp); +#endif /* * Debug logging levels - set with hw.xe.debug sysctl @@ -206,13 +208,17 @@ #define DEVPRINTF(level, arg) if (xe_debug >= (level)) device_printf arg #define DPRINTF(level, arg) if (xe_debug >= (level)) printf arg #define XE_MII_DUMP(scp) if (xe_debug >= 3) xe_mii_dump(scp) +#if 0 #define XE_REG_DUMP(scp) if (xe_debug >= 3) xe_reg_dump(scp) +#endif #else #define DEVPRINTF(level, arg) #define DPRINTF(level, arg) #define XE_MII_DUMP(scp) +#if 0 #define XE_REG_DUMP(scp) #endif +#endif /* @@ -1828,6 +1834,7 @@ (void)splx(s); } +#if 0 void xe_reg_dump(struct xe_softc *scp) { int page, i, s; @@ -1865,6 +1872,7 @@ (void)splx(s); } +#endif int xe_activate(device_t dev) ==== //depot/projects/hammer/sys/i386/acpica/madt.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.3 2003/11/05 23:15:51 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.4 2003/11/06 14:47:53 jhb Exp $"); #include #include @@ -541,7 +541,8 @@ &old_pin) != 0) printf("MADT: Could not find APIC for source IRQ %d\n", intr->Source); - else + else if (ioapic_get_vector(old_ioapic, old_pin) == + intr->Source) ioapic_disable_pin(old_ioapic, old_pin); } ioapic_set_triggermode(new_ioapic, new_pin, ==== //depot/projects/hammer/sys/ia64/ia64/unaligned.c#6 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/ia64/unaligned.c,v 1.7 2003/11/03 08:04:04 marcel Exp $ + * $FreeBSD: src/sys/ia64/ia64/unaligned.c,v 1.8 2003/11/06 04:26:40 marcel Exp $ */ #include @@ -74,12 +74,16 @@ greg_ptr(mcontext_t *mc, int gr) { uint64_t *p; + int bias, nslots; if (gr <= 0 || gr >= 32 + (mc->mc_special.cfm & 0x7f)) return (NULL); if (gr >= 32) { p = (void*)mc->mc_special.bspstore; - p += gr - 32; + nslots = (mc->mc_special.cfm & 0x7f) - gr + 32; + bias = (0x1f8 - (mc->mc_special.bspstore & 0x1f8)) >> 3; + nslots += (nslots + bias) / 63; + p -= nslots; gr = 0; } else if (gr >= 14) { p = &mc->mc_scratch.gr14; @@ -134,6 +138,13 @@ uint64_t postinc; switch (i->i_op) { + case ASM_OP_LD2: + copyin((void*)va, (void*)&buf.i, 2); + reg = greg_ptr(mc, (int)i->i_oper[1].o_value); + if (reg == NULL) + return (EINVAL); + wrreg(reg, buf.i & 0xffffU); + break; case ASM_OP_LD4: copyin((void*)va, (void*)&buf.i, 4); reg = greg_ptr(mc, (int)i->i_oper[1].o_value); @@ -155,6 +166,27 @@ return (EINVAL); spillfd((void*)&buf.d, reg); break; + case ASM_OP_ST2: + reg = greg_ptr(mc, (int)i->i_oper[2].o_value); + if (reg == NULL) + return (EINVAL); + buf.i = rdreg(reg); + copyout((void*)&buf.i, (void*)va, 2); + break; + case ASM_OP_ST4: + reg = greg_ptr(mc, (int)i->i_oper[2].o_value); + if (reg == NULL) + return (EINVAL); + buf.i = rdreg(reg); + copyout((void*)&buf.i, (void*)va, 4); + break; + case ASM_OP_ST8: + reg = greg_ptr(mc, (int)i->i_oper[2].o_value); + if (reg == NULL) + return (EINVAL); + buf.i = rdreg(reg); + copyout((void*)&buf.i, (void*)va, 8); + break; default: return (ENOENT); } ==== //depot/projects/hammer/sys/kern/kern_mac.c#21 (text+ko) ==== @@ -40,7 +40,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.102 2003/10/22 20:59:31 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.103 2003/11/06 03:42:42 rwatson Exp $"); #include "opt_mac.h" #include "opt_devfs.h" @@ -560,7 +560,7 @@ buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_cred_label(&tcred->cr_label, elements, - buffer, mac.m_buflen, M_WAITOK); + buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -597,7 +597,7 @@ buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_cred_label(&td->td_ucred->cr_label, - elements, buffer, mac.m_buflen, M_WAITOK); + elements, buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -751,12 +751,12 @@ case DTYPE_VNODE: if (error == 0) error = mac_externalize_vnode_label(&intlabel, - elements, buffer, mac.m_buflen, M_WAITOK); + elements, buffer, mac.m_buflen); mac_destroy_vnode_label(&intlabel); break; case DTYPE_PIPE: error = mac_externalize_pipe_label(&intlabel, elements, - buffer, mac.m_buflen, M_WAITOK); + buffer, mac.m_buflen); mac_destroy_pipe_label(&intlabel); break; default: @@ -812,7 +812,7 @@ mac_init_vnode_label(&intlabel); mac_copy_vnode_label(&nd.ni_vp->v_label, &intlabel); error = mac_externalize_vnode_label(&intlabel, elements, buffer, - mac.m_buflen, M_WAITOK); + mac.m_buflen); NDFREE(&nd, 0); mac_destroy_vnode_label(&intlabel); @@ -867,7 +867,7 @@ mac_init_vnode_label(&intlabel); mac_copy_vnode_label(&nd.ni_vp->v_label, &intlabel); error = mac_externalize_vnode_label(&intlabel, elements, buffer, - mac.m_buflen, M_WAITOK); + mac.m_buflen); NDFREE(&nd, 0); mac_destroy_vnode_label(&intlabel); ==== //depot/projects/hammer/sys/kern/sched_ule.c#17 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.78 2003/11/05 05:30:12 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.80 2003/11/06 07:56:01 jeff Exp $"); #include #include @@ -106,8 +106,7 @@ #define ke_assign ke_procq.tqe_next #define KEF_ASSIGNED KEF_SCHED0 /* KSE is being migrated. */ -#define KEF_PINNED KEF_SCHED1 /* KSE is temporarily bound. */ -#define KEF_BOUND KEF_SCHED2 /* KSE can not migrate. */ +#define KEF_BOUND KEF_SCHED1 /* KSE can not migrate. */ struct kg_sched { int skg_slptime; /* Number of ticks we vol. slept */ @@ -267,7 +266,8 @@ static void kseq_assign(struct kseq *); static struct kse *kseq_steal(struct kseq *kseq); #define KSE_CAN_MIGRATE(ke, class) \ - ((class) != PRI_ITHD && ((ke)->ke_flags & (KEF_BOUND|KEF_PINNED)) == 0) + ((class) != PRI_ITHD && (ke)->ke_thread->td_pinned == 0 && \ + ((ke)->ke_flags & KEF_BOUND) == 0) #endif void @@ -1468,20 +1468,6 @@ } void -sched_pin(struct thread *td) -{ - mtx_assert(&sched_lock, MA_OWNED); - td->td_kse->ke_flags |= KEF_PINNED; -} - -void -sched_unpin(struct thread *td) -{ - mtx_assert(&sched_lock, MA_OWNED); - td->td_kse->ke_flags &= ~KEF_PINNED; -} - -void sched_bind(struct thread *td, int cpu) { struct kse *ke; ==== //depot/projects/hammer/sys/kern/sys_pipe.c#14 (text+ko) ==== @@ -66,7 +66,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sys_pipe.c,v 1.155 2003/11/03 17:58:23 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sys_pipe.c,v 1.157 2003/11/06 05:58:26 alc Exp $"); #include "opt_mac.h" @@ -222,13 +222,10 @@ struct mtx *pmtx; int fd, error; - pmtx = malloc(sizeof(*pmtx), M_TEMP, M_WAITOK | M_ZERO); - rpipe = wpipe = NULL; if (pipe_create(&rpipe) || pipe_create(&wpipe)) { pipeclose(rpipe); pipeclose(wpipe); - free(pmtx, M_TEMP); return (ENFILE); } @@ -239,7 +236,6 @@ if (error) { pipeclose(rpipe); pipeclose(wpipe); - free(pmtx, M_TEMP); return (error); } /* An extra reference on `rf' has been held for us by falloc(). */ @@ -269,7 +265,6 @@ fdrop(rf, td); /* rpipe has been closed by fdrop(). */ pipeclose(wpipe); - free(pmtx, M_TEMP); return (error); } /* An extra reference on `wf' has been held for us by falloc(). */ @@ -293,6 +288,7 @@ mac_init_pipe(rpipe); mac_create_pipe(td->td_ucred, rpipe); #endif + pmtx = malloc(sizeof(*pmtx), M_TEMP, M_WAITOK | M_ZERO); mtx_init(pmtx, "pipe mutex", NULL, MTX_DEF | MTX_RECURSE); rpipe->pipe_mtxp = wpipe->pipe_mtxp = pmtx; fdrop(rf, td); @@ -311,9 +307,8 @@ struct pipe *cpipe; int size; { - struct vm_object *object; caddr_t buffer; - int npages, error; + int error; static int curfail = 0; static struct timeval lastfail; @@ -321,26 +316,19 @@ ("pipespace: pipe mutex locked")); size = round_page(size); - npages = size / PAGE_SIZE; /* - * Create an object, I don't like the idea of paging to/from - * kernel_object. * XXX -- minor change needed here for NetBSD/OpenBSD VM systems. */ - object = vm_object_allocate(OBJT_DEFAULT, npages); buffer = (caddr_t) vm_map_min(pipe_map); /* - * Insert the object into the kernel map, and allocate kva for it. * The map entry is, by default, pageable. * XXX -- minor change needed here for NetBSD/OpenBSD VM systems. */ - error = vm_map_find(pipe_map, object, 0, + error = vm_map_find(pipe_map, NULL, 0, (vm_offset_t *) &buffer, size, 1, VM_PROT_ALL, VM_PROT_ALL, 0); - if (error != KERN_SUCCESS) { - vm_object_deallocate(object); if (ppsratecheck(&lastfail, &curfail, 1)) printf("kern.maxpipekva exceeded, please see tuning(7).\n"); return (ENOMEM); ==== //depot/projects/hammer/sys/modules/Makefile#29 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/modules/Makefile,v 1.353 2003/11/03 22:44:09 jhb Exp $ +# $FreeBSD: src/sys/modules/Makefile,v 1.354 2003/11/06 08:46:52 imp Exp $ .if !defined(NOCRYPT) || defined(ALL_MODULES) .if exists(${.CURDIR}/../opencrypto) @@ -324,6 +324,10 @@ SUBDIR=${MODULES_OVERRIDE} .endif +# pcic -- currently broken and being worked on out of tree. +# oldcard -- specialized use for debugging only. +# owi -- totally unsupported for debugging only. + # Calling kldxref(8) for each module is expensive. .if !defined(NO_XREF) .MAKEFLAGS+= -DNO_XREF ==== //depot/projects/hammer/sys/pci/if_xl.c#24 (text+ko) ==== @@ -100,7 +100,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/pci/if_xl.c,v 1.157 2003/11/05 20:48:36 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/pci/if_xl.c,v 1.158 2003/11/06 03:59:03 imp Exp $"); #include #include @@ -135,7 +135,7 @@ MODULE_DEPEND(xl, ether, 1, 1, 1); MODULE_DEPEND(xl, miibus, 1, 1, 1); -/* "driver miibus" required. See GENERIC if you get errors here. */ +/* "device miibus" required. See GENERIC if you get errors here. */ #include "miibus_if.h" #include ==== //depot/projects/hammer/sys/security/mac/mac_internal.h#2 (text+ko) ==== @@ -33,7 +33,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/mac/mac_internal.h,v 1.103 2003/10/25 15:28:20 rwatson Exp $ + * $FreeBSD: src/sys/security/mac/mac_internal.h,v 1.104 2003/11/06 03:42:43 rwatson Exp $ */ /* @@ -101,7 +101,7 @@ int mac_check_cred_relabel(struct ucred *cred, struct label *newlabel); void mac_destroy_cred_label(struct label *label); int mac_externalize_cred_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags); + char *outbuf, size_t outbuflen); void mac_init_cred_label(struct label *label); int mac_internalize_cred_label(struct label *label, char *string); void mac_relabel_cred(struct ucred *cred, struct label *newlabel); @@ -109,12 +109,12 @@ void mac_copy_pipe_label(struct label *src, struct label *dest); void mac_destroy_pipe_label(struct label *label); int mac_externalize_pipe_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags); + char *outbuf, size_t outbuflen); void mac_init_pipe_label(struct label *label); int mac_internalize_pipe_label(struct label *label, char *string); int mac_externalize_vnode_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags); + char *outbuf, size_t outbuflen); int mac_internalize_vnode_label(struct label *label, char *string); void mac_check_vnode_mmap_downgrade(struct ucred *cred, struct vnode *vp, int *prot); ==== //depot/projects/hammer/sys/security/mac/mac_net.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/security/mac/mac_net.c,v 1.102 2003/10/25 15:28:20 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/security/mac/mac_net.c,v 1.103 2003/11/06 03:42:43 rwatson Exp $"); #include "opt_mac.h" @@ -333,7 +333,7 @@ static int mac_externalize_ifnet_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; @@ -344,7 +344,7 @@ static int mac_externalize_socket_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; @@ -355,7 +355,7 @@ static int mac_externalize_socket_peer_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; @@ -768,7 +768,7 @@ buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_ifnet_label(&ifnet->if_label, elements, - buffer, mac.m_buflen, M_WAITOK); + buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -893,7 +893,7 @@ buffer = malloc(mac->m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_socket_label(&so->so_label, elements, - buffer, mac->m_buflen, M_WAITOK); + buffer, mac->m_buflen); if (error == 0) error = copyout(buffer, mac->m_string, strlen(buffer)+1); @@ -923,7 +923,7 @@ buffer = malloc(mac->m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); error = mac_externalize_socket_peer_label(&so->so_peerlabel, - elements, buffer, mac->m_buflen, M_WAITOK); + elements, buffer, mac->m_buflen); if (error == 0) error = copyout(buffer, mac->m_string, strlen(buffer)+1); ==== //depot/projects/hammer/sys/security/mac/mac_pipe.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/security/mac/mac_pipe.c,v 1.102 2003/10/25 15:28:20 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/security/mac/mac_pipe.c,v 1.103 2003/11/06 03:42:43 rwatson Exp $"); #include "opt_mac.h" @@ -109,7 +109,7 @@ int mac_externalize_pipe_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; ==== //depot/projects/hammer/sys/security/mac/mac_process.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/security/mac/mac_process.c,v 1.102 2003/10/25 15:28:20 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/security/mac/mac_process.c,v 1.103 2003/11/06 03:42:43 rwatson Exp $"); #include "opt_mac.h" @@ -148,7 +148,7 @@ int mac_externalize_cred_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; ==== //depot/projects/hammer/sys/security/mac/mac_vfs.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/security/mac/mac_vfs.c,v 1.102 2003/10/25 15:28:20 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/security/mac/mac_vfs.c,v 1.103 2003/11/06 03:42:43 rwatson Exp $"); #include "opt_mac.h" #include "opt_devfs.h" @@ -181,7 +181,7 @@ int mac_externalize_vnode_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) + char *outbuf, size_t outbuflen) { int error; ==== //depot/projects/hammer/sys/sys/proc.h#35 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)proc.h 8.15 (Berkeley) 5/19/95 - * $FreeBSD: src/sys/sys/proc.h,v 1.353 2003/10/31 11:02:16 jeff Exp $ + * $FreeBSD: src/sys/sys/proc.h,v 1.356 2003/11/06 09:31:01 bde Exp $ */ #ifndef _SYS_PROC_H_ @@ -51,7 +51,7 @@ #include #include #include -#include /* XXX */ +#include /* XXX. */ #include #include #include @@ -81,7 +81,7 @@ pid_t s_sid; /* (c) Session ID. */ /* (m) Setlogin() name: */ char s_login[roundup(MAXLOGNAME, sizeof(long))]; - struct mtx s_mtx; /* Mutex to protect members */ + struct mtx s_mtx; /* Mutex to protect members. */ }; /* @@ -255,54 +255,55 @@ struct thread { struct proc *td_proc; /* (*) Associated process. */ struct ksegrp *td_ksegrp; /* (*) Associated KSEG. */ - TAILQ_ENTRY(thread) td_plist; /* (*) All threads in this proc */ - TAILQ_ENTRY(thread) td_kglist; /* (*) All threads in this ksegrp */ + TAILQ_ENTRY(thread) td_plist; /* (*) All threads in this proc. */ + TAILQ_ENTRY(thread) td_kglist; /* (*) All threads in this ksegrp. */ - /* The two queues below should someday be merged */ + /* The two queues below should someday be merged. */ TAILQ_ENTRY(thread) td_slpq; /* (j) Sleep queue. XXXKSE */ TAILQ_ENTRY(thread) td_lockq; /* (j) Lock queue. XXXKSE */ TAILQ_ENTRY(thread) td_runq; /* (j/z) Run queue(s). XXXKSE */ TAILQ_HEAD(, selinfo) td_selq; /* (p) List of selinfos. */ -/* Cleared during fork1() or thread_sched_upcall() */ +/* Cleared during fork1() or thread_sched_upcall(). */ #define td_startzero td_flags int td_flags; /* (j) TDF_* flags. */ - int td_inhibitors; /* (j) Why can not run */ + int td_inhibitors; /* (j) Why can not run. */ int td_pflags; /* (k) Private thread (TDP_*) flags. */ - struct kse *td_last_kse; /* (j) Previous value of td_kse */ + struct kse *td_last_kse; /* (j) Previous value of td_kse. */ struct kse *td_kse; /* (j) Current KSE if running. */ int td_dupfd; /* (k) Ret value from fdopen. XXX */ void *td_wchan; /* (j) Sleep address. */ const char *td_wmesg; /* (j) Reason for sleep. */ u_char td_lastcpu; /* (j) Last cpu we were on. */ u_char td_oncpu; /* (j) Which cpu we are on. */ - short td_locks; /* (k) DEBUG: lockmgr count of locks */ + short td_locks; /* (k) DEBUG: lockmgr count of locks. */ struct mtx *td_blocked; /* (j) Mutex process is blocked on. */ struct ithd *td_ithd; /* (b) For interrupt threads only. */ const char *td_lockname; /* (j) Name of lock blocked on. */ LIST_HEAD(, mtx) td_contested; /* (j) Contested locks. */ struct lock_list_entry *td_sleeplocks; /* (k) Held sleep locks. */ int td_intr_nesting_level; /* (k) Interrupt recursion. */ - struct kse_thr_mailbox *td_mailbox; /* (*) Userland mailbox address */ + int td_pinned; /* (k) Temporary cpu pin count. */ + struct kse_thr_mailbox *td_mailbox; /* (*) Userland mailbox address. */ struct ucred *td_ucred; /* (k) Reference to credentials. */ - struct thread *td_standin; /* (*) Use this for an upcall */ + struct thread *td_standin; /* (*) Use this for an upcall. */ u_int td_prticks; /* (*) Profclock hits in sys for user */ struct kse_upcall *td_upcall; /* (*) Upcall structure. */ u_int64_t td_sticks; /* (j) Statclock hits in system mode. */ - u_int td_uuticks; /* (*) Statclock in user, for UTS */ - u_int td_usticks; /* (*) Statclock in kernel, for UTS */ - int td_intrval; /* (*) Return value of TDF_INTERRUPT */ + u_int td_uuticks; /* (*) Statclock in user, for UTS. */ + u_int td_usticks; /* (*) Statclock in kernel, for UTS. */ + int td_intrval; /* (*) Return value of TDF_INTERRUPT. */ sigset_t td_oldsigmask; /* (k) Saved mask from pre sigpause. */ sigset_t td_sigmask; /* (c) Current signal mask. */ sigset_t td_siglist; /* (c) Sigs arrived, not delivered. */ - sigset_t *td_waitset; /* (c) Wait set for sigwait */ + sigset_t *td_waitset; /* (c) Wait set for sigwait. */ TAILQ_ENTRY(thread) td_umtx; /* (c?) Link for when we're blocked. */ volatile u_int td_generation; /* (k) Enable detection of preemption */ #define td_endzero td_base_pri -/* Copied during fork1() or thread_sched_upcall() */ +/* Copied during fork1() or thread_sched_upcall(). */ #define td_startcopy td_endzero u_char td_base_pri; /* (j) Thread base kernel priority. */ u_char td_priority; /* (j) Thread active priority. */ @@ -325,20 +326,20 @@ struct trapframe *td_frame; /* (k) */ struct vm_object *td_kstack_obj;/* (a) Kstack object. */ vm_offset_t td_kstack; /* (a) Kernel VA of kstack. */ - int td_kstack_pages; /* (a) Size of the kstack */ + int td_kstack_pages; /* (a) Size of the kstack. */ struct vm_object *td_altkstack_obj;/* (a) Alternate kstack object. */ vm_offset_t td_altkstack; /* (a) Kernel VA of alternate kstack. */ int td_altkstack_pages; /* (a) Size of the alternate kstack */ u_int td_critnest; /* (k) Critical section nest level. */ struct mdthread td_md; /* (k) Any machine-dependent fields. */ - struct td_sched *td_sched; /* (*) Scheduler specific data */ + struct td_sched *td_sched; /* (*) Scheduler-specific data. */ }; /* flags kept in td_flags */ #define TDF_INPANIC 0x000002 /* Caused a panic, let it drive crashdump. */ #define TDF_CAN_UNBIND 0x000004 /* Only temporarily bound. */ #define TDF_SINTR 0x000008 /* Sleep is interruptible. */ #define TDF_TIMEOUT 0x000010 /* Timing out during sleep. */ -#define TDF_IDLETD 0x000020 /* This is one of the per-CPU idle threads */ +#define TDF_IDLETD 0x000020 /* This is one of the per-CPU idle threads. */ #define TDF_SELECT 0x000040 /* Selecting; wakeup/waiting danger. */ #define TDF_CVWAITQ 0x000080 /* Thread is on a cv_waitq (not slpq). */ #define TDF_ONSLEEPQ 0x000200 /* On the sleep queue. */ @@ -349,7 +350,7 @@ #define TDF_OWEUPC 0x008000 /* Owe thread an addupc() call at next AST. */ #define TDF_NEEDRESCHED 0x010000 /* Thread needs to yield. */ #define TDF_NEEDSIGCHK 0x020000 /* Thread may need signal delivery. */ -#define TDF_SA 0x040000 /* A scheduler activation based thread */ +#define TDF_SA 0x040000 /* A scheduler activation based thread. */ #define TDF_UMTXWAKEUP 0x080000 /* Libthr thread must not sleep on a umtx. */ #define TDF_DEADLKTREAT 0x800000 /* Lock aquisition - deadlock treatment. */ @@ -443,14 +444,14 @@ } ke_state; /* (j) KSE status. */ #define ke_endzero ke_dummy u_char ke_dummy; - struct ke_sched *ke_sched; /* (*) Scheduler specific data */ + struct ke_sched *ke_sched; /* (*) Scheduler-specific data. */ }; /* flags kept in ke_flags */ -#define KEF_SCHED0 0x00001 /* For scheduler specific use. */ -#define KEF_SCHED1 0x00002 /* For scheduler specific use. */ -#define KEF_SCHED2 0X00004 /* For scheduler specific use. */ -#define KEF_SCHED3 0x00008 /* For scheduler specific use. */ +#define KEF_SCHED0 0x00001 /* For scheduler-specific use. */ +#define KEF_SCHED1 0x00002 /* For scheduler-specific use. */ +#define KEF_SCHED2 0X00004 /* For scheduler-specific use. */ +#define KEF_SCHED3 0x00008 /* For scheduler-specific use. */ #define KEF_DIDRUN 0x02000 /* KSE actually ran. */ #define KEF_EXIT 0x04000 /* KSE is being killed. */ @@ -470,8 +471,8 @@ unsigned int ku_mflags; /* cached upcall mailbox flags */ }; -#define KUF_DOUPCALL 0x00001 /* Do upcall now, don't wait */ -#define KUF_EXITING 0x00002 /* Upcall structure is exiting */ +#define KUF_DOUPCALL 0x00001 /* Do upcall now, don't wait. */ +#define KUF_EXITING 0x00002 /* Upcall structure is exiting. */ /* * Kernel-scheduled entity group (KSEG). The scheduler considers each KSEG to >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Nov 6 08:40:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 79C7016A4D0; Thu, 6 Nov 2003 08:40:44 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 54DA916A4CE for ; Thu, 6 Nov 2003 08:40:44 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CEB6243FE9 for ; Thu, 6 Nov 2003 08:40:43 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA6GehXJ039588 for ; Thu, 6 Nov 2003 08:40:43 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA6GehDG039585 for perforce@freebsd.org; Thu, 6 Nov 2003 08:40:43 -0800 (PST) (envelope-from peter@freebsd.org) Date: Thu, 6 Nov 2003 08:40:43 -0800 (PST) Message-Id: <200311061640.hA6GehDG039585@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41588 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 16:40:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=41588 Change 41588 by peter@peter_daintree on 2003/11/06 08:39:54 integ -b smp_hammer -I Affected files ... .. //depot/projects/hammer/sys/amd64/acpica/madt.c#14 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/acpica/madt.c#14 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.3 2003/11/05 23:15:51 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.4 2003/11/06 14:47:53 jhb Exp $"); #include #include @@ -545,7 +545,8 @@ &old_pin) != 0) printf("MADT: Could not find APIC for source IRQ %d\n", intr->Source); - else + else if (ioapic_get_vector(old_ioapic, old_pin) == + intr->Source) ioapic_disable_pin(old_ioapic, old_pin); } ioapic_set_triggermode(new_ioapic, new_pin, From owner-p4-projects@FreeBSD.ORG Thu Nov 6 09:26:43 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D3FFA16A4D0; Thu, 6 Nov 2003 09:26:42 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AF2DD16A4CE for ; Thu, 6 Nov 2003 09:26:42 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2094943F85 for ; Thu, 6 Nov 2003 09:26:41 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA6HQeXJ047778 for ; Thu, 6 Nov 2003 09:26:40 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA6HQeYv047775 for perforce@freebsd.org; Thu, 6 Nov 2003 09:26:40 -0800 (PST) (envelope-from peter@freebsd.org) Date: Thu, 6 Nov 2003 09:26:40 -0800 (PST) Message-Id: <200311061726.hA6HQeYv047775@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41591 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 17:26:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=41591 Change 41591 by peter@peter_hammer on 2003/11/06 09:26:15 I dont remember if this was needed or not, but its been laying around in my tree for ages. Affected files ... .. //depot/projects/ezm3/libs/m3core/src/runtime/FBSD_AMD64/RTThreadC.c#3 edit Differences ... ==== //depot/projects/ezm3/libs/m3core/src/runtime/FBSD_AMD64/RTThreadC.c#3 (text+ko) ==== @@ -7,6 +7,7 @@ /* This file implements the coroutine transfer: RTThread.Transfer */ +#include #include void RTThread__Transfer (ucontext_t *from, ucontext_t *to) From owner-p4-projects@FreeBSD.ORG Thu Nov 6 10:25:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9404316A4D0; Thu, 6 Nov 2003 10:25:53 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6A1AD16A4CE for ; Thu, 6 Nov 2003 10:25:53 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C605743FBF for ; Thu, 6 Nov 2003 10:25:52 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA6IPqXJ050872 for ; Thu, 6 Nov 2003 10:25:52 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA6IPqYl050869 for perforce@freebsd.org; Thu, 6 Nov 2003 10:25:52 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Nov 2003 10:25:52 -0800 (PST) Message-Id: <200311061825.hA6IPqYl050869@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41592 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 18:25:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=41592 Change 41592 by rwatson@rwatson_paprika on 2003/11/06 10:25:05 Add mac_label.c, forgotten last night. This holds the code to manage the UMA zone for label allocation. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_label.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Thu Nov 6 10:30:45 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B1AF16A4D0; Thu, 6 Nov 2003 10:30:45 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D9DE16A4CE; Thu, 6 Nov 2003 10:30:45 -0800 (PST) Received: from ebb.errno.com (ebb.errno.com [66.127.85.87]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8CBED43FE9; Thu, 6 Nov 2003 10:30:44 -0800 (PST) (envelope-from sam@errno.com) Received: from 66.127.85.91 ([66.127.85.91]) (authenticated bits=0) by ebb.errno.com (8.12.9/8.12.9) with ESMTP id hA6IUe0x091734 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NO); Thu, 6 Nov 2003 10:30:41 -0800 (PST) (envelope-from sam@errno.com) From: Sam Leffler Organization: Errno Consulting To: "M. Warner Losh" , sam@freebsd.org Date: Thu, 6 Nov 2003 10:32:37 -0800 User-Agent: KMail/1.5.3 References: <200311060513.hA65Da5J091575@repoman.freebsd.org> <20031106.012601.39876884.imp@bsdimp.com> In-Reply-To: <20031106.012601.39876884.imp@bsdimp.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200311061032.37691.sam@errno.com> cc: perforce@freebsd.org Subject: Re: PERFORCE change 41566 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 18:30:46 -0000 On Thursday 06 November 2003 12:26 am, M. Warner Losh wrote: > In message: <200311060513.hA65Da5J091575@repoman.freebsd.org> > > Sam Leffler writes: > : diff reduction against head > : - SIS_UNLOCK(sc); > : (*ifp->if_input)(ifp, m); > : - SIS_LOCK(sc); > > does this mean that we can call if_input with our locks held? sis's lock is setup MTX_RECURSE in which case re-entry is handled. You only need to release the lock when you may be re-entered and it's not setup as recursive. I think recursive locks are bad but so long as the driver is setup to use them I'm not releasing them when calling up. Sam From owner-p4-projects@FreeBSD.ORG Thu Nov 6 10:35:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C4D1A16A4D1; Thu, 6 Nov 2003 10:35:19 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9644716A4D0; Thu, 6 Nov 2003 10:35:19 -0800 (PST) Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1ACF243FE1; Thu, 6 Nov 2003 10:35:16 -0800 (PST) (envelope-from robert@fledge.watson.org) Received: from fledge.watson.org (localhost [127.0.0.1]) by fledge.watson.org (8.12.9p2/8.12.9) with ESMTP id hA6IXPMg006250; Thu, 6 Nov 2003 13:33:25 -0500 (EST) (envelope-from robert@fledge.watson.org) Received: from localhost (robert@localhost)hA6IXP0I006247; Thu, 6 Nov 2003 13:33:25 -0500 (EST) (envelope-from robert@fledge.watson.org) Date: Thu, 6 Nov 2003 13:33:25 -0500 (EST) From: Robert Watson X-Sender: robert@fledge.watson.org To: Sam Leffler In-Reply-To: <200311061032.37691.sam@errno.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: sam@freebsd.org cc: perforce@freebsd.org cc: "M. Warner Losh" Subject: Re: PERFORCE change 41566 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 18:35:20 -0000 On Thu, 6 Nov 2003, Sam Leffler wrote: > On Thursday 06 November 2003 12:26 am, M. Warner Losh wrote: > > In message: <200311060513.hA65Da5J091575@repoman.freebsd.org> > > > > Sam Leffler writes: > > : diff reduction against head > > : - SIS_UNLOCK(sc); > > : (*ifp->if_input)(ifp, m); > > : - SIS_LOCK(sc); > > > > does this mean that we can call if_input with our locks held? > > sis's lock is setup MTX_RECURSE in which case re-entry is handled. You > only need to release the lock when you may be re-entered and it's not > setup as recursive. I think recursive locks are bad but so long as the > driver is setup to use them I'm not releasing them when calling up. However, this could potentially lead to lock order reversal between the network stack locks and the interface lock. We know the stack will grab lots of locks in the input routine with direct dispatch. We also know the stack will invoke the interface output routine while holding stack locks... I think it makes the most sense to place interface locks after network stack locks in the lock order, which would preclude holding the interface lock and then entering the stack. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Network Associates Laboratories From owner-p4-projects@FreeBSD.ORG Thu Nov 6 11:08:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6BBFA16A4D2; Thu, 6 Nov 2003 11:08:22 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4522E16A4CE; Thu, 6 Nov 2003 11:08:22 -0800 (PST) Received: from ebb.errno.com (ebb.errno.com [66.127.85.87]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1182643FA3; Thu, 6 Nov 2003 11:08:21 -0800 (PST) (envelope-from sam@errno.com) Received: from 66.127.85.91 ([66.127.85.91]) (authenticated bits=0) by ebb.errno.com (8.12.9/8.12.9) with ESMTP id hA6J8H0x091904 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NO); Thu, 6 Nov 2003 11:08:19 -0800 (PST) (envelope-from sam@errno.com) From: Sam Leffler Organization: Errno Consulting To: Robert Watson Date: Thu, 6 Nov 2003 11:10:15 -0800 User-Agent: KMail/1.5.3 References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200311061110.15196.sam@errno.com> cc: sam@freebsd.org cc: perforce@freebsd.org cc: "M. Warner Losh" Subject: Re: PERFORCE change 41566 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 19:08:23 -0000 On Thursday 06 November 2003 10:33 am, Robert Watson wrote: > On Thu, 6 Nov 2003, Sam Leffler wrote: > > On Thursday 06 November 2003 12:26 am, M. Warner Losh wrote: > > > In message: <200311060513.hA65Da5J091575@repoman.freebsd.org> > > > > > > Sam Leffler writes: > > > : diff reduction against head > > > : - SIS_UNLOCK(sc); > > > : (*ifp->if_input)(ifp, m); > > > : - SIS_LOCK(sc); > > > > > > does this mean that we can call if_input with our locks held? > > > > sis's lock is setup MTX_RECURSE in which case re-entry is handled. You > > only need to release the lock when you may be re-entered and it's not > > setup as recursive. I think recursive locks are bad but so long as the > > driver is setup to use them I'm not releasing them when calling up. > > However, this could potentially lead to lock order reversal between the > network stack locks and the interface lock. We know the stack will grab > lots of locks in the input routine with direct dispatch. We also know the > stack will invoke the interface output routine while holding stack > locks... I think it makes the most sense to place interface locks after > network stack locks in the lock order, which would preclude holding the > interface lock and then entering the stack. You're right; wonder why I haven't hit that. I started to go through all the drivers and do that but stopped when I realized the trip through the bridge and back into the start method was handled. Guess it's because the drivers for all my NICs release on up call. I'll sweep the drivers I can test. Sam From owner-p4-projects@FreeBSD.ORG Thu Nov 6 13:45:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0466116A4D1; Thu, 6 Nov 2003 13:45:00 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D2DCC16A4CF for ; Thu, 6 Nov 2003 13:44:59 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8623F4400D for ; Thu, 6 Nov 2003 13:44:56 -0800 (PST) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA6LiuXJ066860 for ; Thu, 6 Nov 2003 13:44:56 -0800 (PST) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA6LiuTG066857 for perforce@freebsd.org; Thu, 6 Nov 2003 13:44:56 -0800 (PST) (envelope-from jhb@freebsd.org) Date: Thu, 6 Nov 2003 13:44:56 -0800 (PST) Message-Id: <200311062144.hA6LiuTG066857@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 41598 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 21:45:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=41598 Change 41598 by jhb@jhb_laptop on 2003/11/06 13:44:50 Revert the BTX changes in this branch. Affected files ... .. //depot/projects/smpng/sys/boot/i386/btx/btx/btx.s#7 edit Differences ... ==== //depot/projects/smpng/sys/boot/i386/btx/btx/btx.s#7 (text+ko) ==== @@ -208,7 +208,7 @@ ifdef(`PAGING',` or $0x80000001,%eax # mode and enable paging ',` - inc %ax # mode + or $0x01,%eax # mode ') mov %eax,%cr0 # ljmp $SEL_SCODE,$init.8 # To 32-bit code @@ -493,7 +493,9 @@ je v86wrmsr # Yes cmpb $0x32,(%esi) # Is it a RDMSR? je v86rdmsr # Yes - cmpb $0x20,(%esi) # Is this a MOV reg,CRx? + cmpb $0x20,(%esi) # Is this a + jne v86mon.4 # MOV EAX,CR0 + cmpb $0xc0,0x1(%esi) # instruction? je v86mov # Yes v86mon.4: cmpb $0xfa,%al # CLI? je v86cli # Yes @@ -525,24 +527,10 @@ leal 0x8(%esp,1),%esp # Discard int no, error iret # To V86 mode # -# Emulate MOV reg,CRx. +# Emulate MOV EAX,CR0. # -v86mov: movb 0x1(%esi),%bl # Fetch Mod R/M byte - testb $0x10,%bl # Read CR2 or CR3? - jnz v86mov.1 # Yes - movl %cr0,%eax # Read CR0 - testb $0x20,%bl # Read CR4 instead? - jz v86mov.2 # No - movl %cr4,%eax # Read CR4 - jmp v86mov.2 -v86mov.1: movl %cr2,%eax # Read CR2 - testb $0x08,%bl # Read CR3 instead? - jz v86mov.2 # No - movl %cr3,%eax # Read CR3 -v86mov.2: andl $0x7,%ebx # Compute offset in - shl $2,%ebx # frame of destination - neg %ebx # register - movl %eax,0x1c(%ebp,%ebx,1) # Store CR to reg +v86mov: movl %cr0,%eax # CR0 to + movl %eax,0x1c(%ebp) # saved EAX incl %esi # Adjust IP # # Return from emulating a 0x0f prefixed instruction @@ -618,27 +606,41 @@ # reads count of words from saved %cx # returns success by setting %ah to 0 # -int15_87: pushl %esi # Save - pushl %edi # registers - movzwl 0x4(%ebp),%eax # Load user's SI - movl 0x3C(%ebp),%edi # Load ES - leal (%eax,%edi,4),%edi # EDI = (ES << 4) + SI - movl 0x11(%edi),%eax # Read base of - movb 0x17(%edi),%al # GDT entry - ror $8,%eax # for source - xchgl %eax,%esi # into %esi - movl 0x19(%edi),%eax # Read base of - movb 0x1f(%edi),%al # GDT entry for - ror $8,%eax # destination - xchgl %eax,%edi # into %edi +int15_87: pushl %eax # Save + pushl %ebx # some information + pushl %esi # onto the stack. + pushl %edi + xorl %eax,%eax # clean EAX + xorl %ebx,%ebx # clean EBX + movl 0x4(%ebp),%esi # Get user's ESI + movl 0x3C(%ebp),%ebx # store ES + movw %si,%ax # store SI + shll $0x4,%ebx # Make it a seg. + addl %eax,%ebx # ebx=(es<<4)+si + movb 0x14(%ebx),%al # Grab the + movb 0x17(%ebx),%ah # necessary + shll $0x10,%eax # information + movw 0x12(%ebx),%ax # from + movl %eax,%esi # the + movb 0x1c(%ebx),%al # GDT in order to + movb 0x1f(%ebx),%ah # have %esi offset + shll $0x10,%eax # of source and %edi + movw 0x1a(%ebx),%ax # of destination. + movl %eax,%edi pushl %ds # Make: popl %es # es = ds - movzwl 0x18(%ebp),%ecx # Get user's CX - shll $0x1,%ecx # Convert count from words + pushl %ecx # stash ECX + xorl %ecx,%ecx # highw of ECX is clear + movw 0x18(%ebp),%cx # Get user's ECX + shll $0x1,%ecx # Convert from num words to num + # bytes rep # repeat... movsb # perform copy. - popl %edi # Restore - popl %esi # registers + popl %ecx # Restore + popl %edi + popl %esi # previous + popl %ebx # register + popl %eax # values. movb $0x0,0x1d(%ebp) # set ah = 0 to indicate # success andb $0xfe,%dl # clear CF @@ -657,16 +659,23 @@ cmpb $0x19,%al # is it int 19? je reboot # yes, reboot the machine cmpb $0x15,%al # is it int 15? - jne v86intn.1 # no, skip parse - cmpb $0x87,0x1c(%ebp) # is it the memcpy subfunction? - je int15_87 # yes - cmpw $0x4f53,0x1c(%ebp) # is it the delete key callout? - jne v86intn.1 # no, handle the int normally + jne v86intn.3 # no, skip parse + pushl %eax # stash EAX + movl 0x1c(%ebp),%eax # user's saved EAX + cmpb $0x87,%ah # is it the memcpy subfunction? + jne v86intn.1 # no, keep checking + popl %eax # get the stack straight + jmp int15_87 # it's our cue +v86intn.1: cmpw $0x4f53,%ax # is it the delete key callout? + jne v86intn.2 # no, handle the int normally movb BDA_KEYFLAGS,%al # get the shift key state andb $0xc,%al # mask off just Ctrl and Alt cmpb $0xc,%al # are both Ctrl and Alt down? - je reboot # yes, reboot the machine -v86intn.1: subl %edi,%esi # From + jne v86intn.2 # no, handle the int normally + popl %eax # restore EAX + jmp reboot # reboot the machine +v86intn.2: popl %eax # restore EAX +v86intn.3: subl %edi,%esi # From shrl $0x4,%edi # linear movw %dx,-0x2(%ebx) # Save flags movw %di,-0x4(%ebx) # Save CS @@ -898,7 +907,8 @@ dump.3: lodsl # Set offset xchgl %eax,%edx # Save lodsl # Get segment - leal (%edx,%eax,4),%eax # * 0x10 + offset + shll $0x4,%eax # * 0x10 + addl %edx,%eax # + offset xchgl %eax,%esi # Set pointer dump.4: movb $2,%dl # Num lines dump.4a: movb $0x10,%cl # Bytes to dump From owner-p4-projects@FreeBSD.ORG Thu Nov 6 13:49:03 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7FE9B16A4D0; Thu, 6 Nov 2003 13:49:03 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 31CDA16A4CE for ; Thu, 6 Nov 2003 13:49:03 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 294F043FF3 for ; Thu, 6 Nov 2003 13:49:02 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA6Ln2XJ067044 for ; Thu, 6 Nov 2003 13:49:02 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA6Ln1aL067041 for perforce@freebsd.org; Thu, 6 Nov 2003 13:49:01 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Nov 2003 13:49:01 -0800 (PST) Message-Id: <200311062149.hA6Ln1aL067041@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41599 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 21:49:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=41599 Change 41599 by rwatson@rwatson_paprika on 2003/11/06 13:48:08 Store struct label pointer in struct devfsdirent, struct mount, and struct vnode, rather than storing the struct label directly in these structures. Use the UMA zone as a source of labels. This means that changing the number of label slots won't break the ABI, and can eventually become a boot-time tunable. Currently, UMA is underexercised to prevent repeated initialization. Affected files ... .. //depot/projects/trustedbsd/mac/sys/fs/devfs/devfs.h#12 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_exec.c#65 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#424 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_system.c#5 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#5 edit .. //depot/projects/trustedbsd/mac/sys/sys/mount.h#28 edit .. //depot/projects/trustedbsd/mac/sys/sys/vnode.h#60 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/fs/devfs/devfs.h#12 (text+ko) ==== @@ -159,7 +159,7 @@ mode_t de_mode; uid_t de_uid; gid_t de_gid; - struct label de_label; + struct label *de_label; struct timespec de_atime; struct timespec de_mtime; struct timespec de_ctime; ==== //depot/projects/trustedbsd/mac/sys/kern/kern_exec.c#65 (text+ko) ==== @@ -340,7 +340,7 @@ NDFREE(ndp, NDF_ONLY_PNBUF); #ifdef MAC mac_init_vnode_label(&interplabel); - mac_copy_vnode_label(&ndp->ni_vp->v_label, &interplabel); + mac_copy_vnode_label(ndp->ni_vp->v_label, &interplabel); interplabelvalid = 1; #endif vput(ndp->ni_vp); ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#424 (text+ko) ==== @@ -756,7 +756,7 @@ mac_init_vnode_label(&intlabel); vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - mac_copy_vnode_label(&vp->v_label, &intlabel); + mac_copy_vnode_label(vp->v_label, &intlabel); VOP_UNLOCK(vp, 0, td); break; @@ -840,7 +840,7 @@ goto out; mac_init_vnode_label(&intlabel); - mac_copy_vnode_label(&nd.ni_vp->v_label, &intlabel); + mac_copy_vnode_label(nd.ni_vp->v_label, &intlabel); error = mac_externalize_vnode_label(&intlabel, elements, buffer, mac.m_buflen); @@ -895,7 +895,7 @@ goto out; mac_init_vnode_label(&intlabel); - mac_copy_vnode_label(&nd.ni_vp->v_label, &intlabel); + mac_copy_vnode_label(nd.ni_vp->v_label, &intlabel); error = mac_externalize_vnode_label(&intlabel, elements, buffer, mac.m_buflen); NDFREE(&nd, 0); ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_system.c#5 (text+ko) ==== @@ -120,7 +120,7 @@ if (!mac_enforce_kld) return (0); - MAC_CHECK(check_kld_load, cred, vp, &vp->v_label); + MAC_CHECK(check_kld_load, cred, vp, vp->v_label); return (error); } @@ -176,7 +176,7 @@ return (0); MAC_CHECK(check_system_acct, cred, vp, - vp != NULL ? &vp->v_label : NULL); + vp != NULL ? vp->v_label : NULL); return (error); } @@ -230,7 +230,7 @@ if (!mac_enforce_system) return (0); - MAC_CHECK(check_system_swapon, cred, vp, &vp->v_label); + MAC_CHECK(check_system_swapon, cred, vp, vp->v_label); return (error); } @@ -244,7 +244,7 @@ if (!mac_enforce_system) return (0); - MAC_CHECK(check_system_swapoff, cred, vp, &vp->v_label); + MAC_CHECK(check_system_swapoff, cred, vp, vp->v_label); return (error); } ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#5 (text+ko) ==== @@ -100,24 +100,52 @@ static int mac_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, struct label *intlabel); +static struct label * +mac_devfsdirent_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_devfsdirent_label, label); + MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); + return (label); +} + void mac_init_devfsdirent(struct devfs_dirent *de) { - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); - MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); + de->de_label = mac_devfsdirent_label_alloc(); +} + +static struct label * +mac_mount_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_mount_label, label); + MAC_DEBUG_COUNTER_INC(&nmacmounts); + return (label); +} + +static struct label * +mac_mount_fs_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_mount_fs_label, label); + MAC_DEBUG_COUNTER_INC(&nmacmounts); + return (label); } void mac_init_mount(struct mount *mp) { - mac_init_label(&mp->mnt_mntlabel); - mac_init_label(&mp->mnt_fslabel); - MAC_PERFORM(init_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(init_mount_fs_label, &mp->mnt_fslabel); - MAC_DEBUG_COUNTER_INC(&nmacmounts); + mp->mnt_mntlabel = mac_mount_label_alloc(); + mp->mnt_fslabel = mac_mount_fs_label_alloc(); } void @@ -129,31 +157,67 @@ MAC_DEBUG_COUNTER_INC(&nmacvnodes); } +static struct label * +mac_vnode_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_vnode_label, label); + MAC_DEBUG_COUNTER_INC(&nmacvnodes); + return (label); +} + void mac_init_vnode(struct vnode *vp) { - mac_init_vnode_label(&vp->v_label); + vp->v_label = mac_vnode_label_alloc(); +} + +static void +mac_devfsdirent_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_devfsdirent_label, label); + mac_labelzone_free(label); + MAC_DEBUG_COUNTER_DEC(&nmacdevfsdirents); } void mac_destroy_devfsdirent(struct devfs_dirent *de) { - MAC_PERFORM(destroy_devfsdirent_label, &de->de_label); - mac_destroy_label(&de->de_label); - MAC_DEBUG_COUNTER_DEC(&nmacdevfsdirents); + mac_devfsdirent_label_free(de->de_label); + de->de_label = NULL; +} + +static void +mac_mount_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_mount_label, label); + mac_labelzone_free(label); + MAC_DEBUG_COUNTER_DEC(&nmacmounts); +} + +static void +mac_mount_fs_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_mount_fs_label, label); + mac_labelzone_free(label); + MAC_DEBUG_COUNTER_DEC(&nmacmounts); } void mac_destroy_mount(struct mount *mp) { - MAC_PERFORM(destroy_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(destroy_mount_fs_label, &mp->mnt_fslabel); - mac_destroy_label(&mp->mnt_fslabel); - mac_destroy_label(&mp->mnt_mntlabel); - MAC_DEBUG_COUNTER_DEC(&nmacmounts); + mac_mount_fs_label_free(mp->mnt_fslabel); + mp->mnt_fslabel = NULL; + mac_mount_label_free(mp->mnt_mntlabel); + mp->mnt_mntlabel = NULL; } void @@ -165,11 +229,21 @@ MAC_DEBUG_COUNTER_DEC(&nmacvnodes); } +static void +mac_vnode_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_vnode_label, label); + mac_labelzone_free(label); + MAC_DEBUG_COUNTER_DEC(&nmacvnodes); +} + void mac_destroy_vnode(struct vnode *vp) { - mac_destroy_vnode_label(&vp->v_label); + mac_vnode_label_free(vp->v_label); + vp->v_label = NULL; } void @@ -205,8 +279,8 @@ struct vnode *vp) { - MAC_PERFORM(update_devfsdirent, mp, de, &de->de_label, vp, - &vp->v_label); + MAC_PERFORM(update_devfsdirent, mp, de, de->de_label, vp, + vp->v_label); } void @@ -214,8 +288,8 @@ struct vnode *vp) { - MAC_PERFORM(associate_vnode_devfs, mp, &mp->mnt_fslabel, de, - &de->de_label, vp, &vp->v_label); + MAC_PERFORM(associate_vnode_devfs, mp, mp->mnt_fslabel, de, + de->de_label, vp, vp->v_label); } int @@ -225,8 +299,8 @@ ASSERT_VOP_LOCKED(vp, "mac_associate_vnode_extattr"); - MAC_CHECK(associate_vnode_extattr, mp, &mp->mnt_fslabel, vp, - &vp->v_label); + MAC_CHECK(associate_vnode_extattr, mp, mp->mnt_fslabel, vp, + vp->v_label); return (error); } @@ -235,8 +309,8 @@ mac_associate_vnode_singlelabel(struct mount *mp, struct vnode *vp) { - MAC_PERFORM(associate_vnode_singlelabel, mp, &mp->mnt_fslabel, vp, - &vp->v_label); + MAC_PERFORM(associate_vnode_singlelabel, mp, mp->mnt_fslabel, vp, + vp->v_label); } int @@ -259,8 +333,8 @@ } else if (error) return (error); - MAC_CHECK(create_vnode_extattr, cred, mp, &mp->mnt_fslabel, - dvp, &dvp->v_label, vp, &vp->v_label, cnp); + MAC_CHECK(create_vnode_extattr, cred, mp, mp->mnt_fslabel, + dvp, dvp->v_label, vp, vp->v_label, cnp); if (error) { VOP_CLOSEEXTATTR(vp, 0, NOCRED, curthread); @@ -294,7 +368,7 @@ } else if (error) return (error); - MAC_CHECK(setlabel_vnode_extattr, cred, vp, &vp->v_label, intlabel); + MAC_CHECK(setlabel_vnode_extattr, cred, vp, vp->v_label, intlabel); if (error) { VOP_CLOSEEXTATTR(vp, 0, NOCRED, curthread); @@ -319,7 +393,7 @@ if (!mac_enforce_process && !mac_enforce_fs) return; - MAC_PERFORM(execve_transition, old, new, vp, &vp->v_label, + MAC_PERFORM(execve_transition, old, new, vp, vp->v_label, interpvnodelabel, imgp, imgp->execlabel); } @@ -335,7 +409,7 @@ return (0); result = 0; - MAC_BOOLEAN(execve_will_transition, ||, old, vp, &vp->v_label, + MAC_BOOLEAN(execve_will_transition, ||, old, vp, vp->v_label, interpvnodelabel, imgp, imgp->execlabel); return (result); @@ -351,7 +425,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_access, cred, vp, &vp->v_label, acc_mode); + MAC_CHECK(check_vnode_access, cred, vp, vp->v_label, acc_mode); return (error); } @@ -365,7 +439,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_chdir, cred, dvp, &dvp->v_label); + MAC_CHECK(check_vnode_chdir, cred, dvp, dvp->v_label); return (error); } @@ -379,7 +453,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_chroot, cred, dvp, &dvp->v_label); + MAC_CHECK(check_vnode_chroot, cred, dvp, dvp->v_label); return (error); } @@ -394,7 +468,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_create, cred, dvp, &dvp->v_label, cnp, vap); + MAC_CHECK(check_vnode_create, cred, dvp, dvp->v_label, cnp, vap); return (error); } @@ -410,8 +484,8 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_delete, cred, dvp, &dvp->v_label, vp, - &vp->v_label, cnp); + MAC_CHECK(check_vnode_delete, cred, dvp, dvp->v_label, vp, + vp->v_label, cnp); return (error); } @@ -426,7 +500,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_deleteacl, cred, vp, &vp->v_label, type); + MAC_CHECK(check_vnode_deleteacl, cred, vp, vp->v_label, type); return (error); } @@ -441,7 +515,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_deleteextattr, cred, vp, &vp->v_label, + MAC_CHECK(check_vnode_deleteextattr, cred, vp, vp->v_label, attrnamespace, name); return (error); } @@ -457,7 +531,7 @@ if (!mac_enforce_process && !mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_exec, cred, vp, &vp->v_label, imgp, + MAC_CHECK(check_vnode_exec, cred, vp, vp->v_label, imgp, imgp->execlabel); return (error); @@ -473,7 +547,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_getacl, cred, vp, &vp->v_label, type); + MAC_CHECK(check_vnode_getacl, cred, vp, vp->v_label, type); return (error); } @@ -488,7 +562,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_getextattr, cred, vp, &vp->v_label, + MAC_CHECK(check_vnode_getextattr, cred, vp, vp->v_label, attrnamespace, name, uio); return (error); } @@ -505,8 +579,8 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_link, cred, dvp, &dvp->v_label, vp, - &vp->v_label, cnp); + MAC_CHECK(check_vnode_link, cred, dvp, dvp->v_label, vp, + vp->v_label, cnp); return (error); } @@ -521,7 +595,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_listextattr, cred, vp, &vp->v_label, + MAC_CHECK(check_vnode_listextattr, cred, vp, vp->v_label, attrnamespace); return (error); } @@ -537,7 +611,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_lookup, cred, dvp, &dvp->v_label, cnp); + MAC_CHECK(check_vnode_lookup, cred, dvp, dvp->v_label, cnp); return (error); } @@ -551,7 +625,7 @@ if (!mac_enforce_fs || !mac_enforce_vm) return (0); - MAC_CHECK(check_vnode_mmap, cred, vp, &vp->v_label, prot); + MAC_CHECK(check_vnode_mmap, cred, vp, vp->v_label, prot); return (error); } @@ -565,7 +639,7 @@ if (!mac_enforce_fs || !mac_enforce_vm) return; - MAC_PERFORM(check_vnode_mmap_downgrade, cred, vp, &vp->v_label, + MAC_PERFORM(check_vnode_mmap_downgrade, cred, vp, vp->v_label, &result); *prot = result; @@ -581,7 +655,7 @@ if (!mac_enforce_fs || !mac_enforce_vm) return (0); - MAC_CHECK(check_vnode_mprotect, cred, vp, &vp->v_label, prot); + MAC_CHECK(check_vnode_mprotect, cred, vp, vp->v_label, prot); return (error); } @@ -595,7 +669,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_open, cred, vp, &vp->v_label, acc_mode); + MAC_CHECK(check_vnode_open, cred, vp, vp->v_label, acc_mode); return (error); } @@ -611,7 +685,7 @@ return (0); MAC_CHECK(check_vnode_poll, active_cred, file_cred, vp, - &vp->v_label); + vp->v_label); return (error); } @@ -628,7 +702,7 @@ return (0); MAC_CHECK(check_vnode_read, active_cred, file_cred, vp, - &vp->v_label); + vp->v_label); return (error); } @@ -643,7 +717,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_readdir, cred, dvp, &dvp->v_label); + MAC_CHECK(check_vnode_readdir, cred, dvp, dvp->v_label); return (error); } @@ -657,7 +731,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_readlink, cred, vp, &vp->v_label); + MAC_CHECK(check_vnode_readlink, cred, vp, vp->v_label); return (error); } @@ -669,7 +743,7 @@ ASSERT_VOP_LOCKED(vp, "mac_check_vnode_relabel"); - MAC_CHECK(check_vnode_relabel, cred, vp, &vp->v_label, newlabel); + MAC_CHECK(check_vnode_relabel, cred, vp, vp->v_label, newlabel); return (error); } @@ -686,8 +760,8 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_rename_from, cred, dvp, &dvp->v_label, vp, - &vp->v_label, cnp); + MAC_CHECK(check_vnode_rename_from, cred, dvp, dvp->v_label, vp, + vp->v_label, cnp); return (error); } @@ -703,8 +777,8 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_rename_to, cred, dvp, &dvp->v_label, vp, - vp != NULL ? &vp->v_label : NULL, samedir, cnp); + MAC_CHECK(check_vnode_rename_to, cred, dvp, dvp->v_label, vp, + vp != NULL ? vp->v_label : NULL, samedir, cnp); return (error); } @@ -718,7 +792,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_revoke, cred, vp, &vp->v_label); + MAC_CHECK(check_vnode_revoke, cred, vp, vp->v_label); return (error); } @@ -733,7 +807,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_setacl, cred, vp, &vp->v_label, type, acl); + MAC_CHECK(check_vnode_setacl, cred, vp, vp->v_label, type, acl); return (error); } @@ -748,7 +822,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_setextattr, cred, vp, &vp->v_label, + MAC_CHECK(check_vnode_setextattr, cred, vp, vp->v_label, attrnamespace, name, uio); return (error); } @@ -763,7 +837,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_setflags, cred, vp, &vp->v_label, flags); + MAC_CHECK(check_vnode_setflags, cred, vp, vp->v_label, flags); return (error); } @@ -777,7 +851,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_setmode, cred, vp, &vp->v_label, mode); + MAC_CHECK(check_vnode_setmode, cred, vp, vp->v_label, mode); return (error); } @@ -792,7 +866,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_setowner, cred, vp, &vp->v_label, uid, gid); + MAC_CHECK(check_vnode_setowner, cred, vp, vp->v_label, uid, gid); return (error); } @@ -807,7 +881,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_vnode_setutimes, cred, vp, &vp->v_label, atime, + MAC_CHECK(check_vnode_setutimes, cred, vp, vp->v_label, atime, mtime); return (error); } @@ -824,7 +898,7 @@ return (0); MAC_CHECK(check_vnode_stat, active_cred, file_cred, vp, - &vp->v_label); + vp->v_label); return (error); } @@ -840,7 +914,7 @@ return (0); MAC_CHECK(check_vnode_write, active_cred, file_cred, vp, - &vp->v_label); + vp->v_label); return (error); } @@ -849,23 +923,23 @@ mac_relabel_vnode(struct ucred *cred, struct vnode *vp, struct label *newlabel) { - MAC_PERFORM(relabel_vnode, cred, vp, &vp->v_label, newlabel); + MAC_PERFORM(relabel_vnode, cred, vp, vp->v_label, newlabel); } void mac_create_mount(struct ucred *cred, struct mount *mp) { - MAC_PERFORM(create_mount, cred, mp, &mp->mnt_mntlabel, - &mp->mnt_fslabel); + MAC_PERFORM(create_mount, cred, mp, mp->mnt_mntlabel, + mp->mnt_fslabel); } void mac_create_root_mount(struct ucred *cred, struct mount *mp) { - MAC_PERFORM(create_root_mount, cred, mp, &mp->mnt_mntlabel, - &mp->mnt_fslabel); + MAC_PERFORM(create_root_mount, cred, mp, mp->mnt_mntlabel, + mp->mnt_fslabel); } int @@ -876,7 +950,7 @@ if (!mac_enforce_fs) return (0); - MAC_CHECK(check_mount_stat, cred, mount, &mount->mnt_mntlabel); + MAC_CHECK(check_mount_stat, cred, mount, mount->mnt_mntlabel); return (error); } @@ -886,7 +960,7 @@ const char *fullpath) { - MAC_PERFORM(create_devfs_device, mp, dev, de, &de->de_label, + MAC_PERFORM(create_devfs_device, mp, dev, de, de->de_label, fullpath); } @@ -895,8 +969,8 @@ struct devfs_dirent *dd, struct devfs_dirent *de, const char *fullpath) { - MAC_PERFORM(create_devfs_symlink, cred, mp, dd, &dd->de_label, de, - &de->de_label, fullpath); + MAC_PERFORM(create_devfs_symlink, cred, mp, dd, dd->de_label, de, + de->de_label, fullpath); } void @@ -905,7 +979,7 @@ { MAC_PERFORM(create_devfs_directory, mp, dirname, dirnamelen, de, - &de->de_label, fullpath); + de->de_label, fullpath); } /* ==== //depot/projects/trustedbsd/mac/sys/sys/mount.h#28 (text+ko) ==== @@ -41,7 +41,6 @@ #include #ifdef _KERNEL #include -#include #include #include #endif @@ -144,8 +143,8 @@ time_t mnt_time; /* last time written*/ int mnt_iosize_max; /* max size for clusters, etc */ struct netexport *mnt_export; /* export list */ - struct label mnt_mntlabel; /* MAC label for the mount */ - struct label mnt_fslabel; /* MAC label for the fs */ + struct label *mnt_mntlabel; /* MAC label for the mount */ + struct label *mnt_fslabel; /* MAC label for the fs */ int mnt_nvnodelistsize; /* # of vnodes on this mount */ }; #endif /* _KERNEL */ ==== //depot/projects/trustedbsd/mac/sys/sys/vnode.h#60 (text+ko) ==== @@ -44,7 +44,6 @@ #include #include -#include #include #include #include @@ -153,7 +152,7 @@ struct vnode *v_dd; /* c .. vnode */ u_long v_ddid; /* c .. capability identifier */ struct vpollinfo *v_pollinfo; /* p Poll events */ - struct label v_label; /* MAC label for vnode */ + struct label *v_label; /* MAC label for vnode */ #ifdef DEBUG_LOCKS const char *filename; /* Source file doing locking */ int line; /* Line number doing locking */ From owner-p4-projects@FreeBSD.ORG Thu Nov 6 16:34:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AA27116A4D0; Thu, 6 Nov 2003 16:34:23 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7E90016A4CE for ; Thu, 6 Nov 2003 16:34:23 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D76BF43FCB for ; Thu, 6 Nov 2003 16:34:22 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA70YMXJ076823 for ; Thu, 6 Nov 2003 16:34:22 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA70YMsO076820 for perforce@freebsd.org; Thu, 6 Nov 2003 16:34:22 -0800 (PST) (envelope-from sam@freebsd.org) Date: Thu, 6 Nov 2003 16:34:22 -0800 (PST) Message-Id: <200311070034.hA70YMsO076820@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 Subject: PERFORCE change 41602 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 00:34:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=41602 Change 41602 by sam@sam_ebb on 2003/11/06 16:34:12 Fix locking snafu of the ip forwarding cache. We were holding a refrence to a routing table entry w/o bumping the reference count or locking against the entry being free'd. This caused major havoc (for some reason it appeared most frequently for folks running natd). Fix is to bump the reference count whenever we copy the route cache contents into a private copy so the entry cannot be reclaimed out from under us. This is a short term fix as the forthcoming routing table changes will eliminate this cache entirely. Affected files ... .. //depot/projects/netperf/sys/netinet/ip_input.c#19 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_input.c#19 (text+ko) ==== @@ -213,7 +213,9 @@ ip_dn_io_t *ip_dn_io_ptr; /* - * One deep route cache for ip forwarding. + * One deep route cache for ip forwarding. This is done + * very inefficiently. We don't care as it's about to be + * replaced by something better. */ static struct rtcache { struct route rc_ro; /* most recently used route */ @@ -223,28 +225,37 @@ #define RTCACHE_LOCK() mtx_lock(&ip_fwdcache.rc_mtx) #define RTCACHE_UNLOCK() mtx_unlock(&ip_fwdcache.rc_mtx) #define RTCACHE_LOCK_INIT() \ - mtx_init(&ip_fwdcache.rc_mtx, "route cache", NULL, MTX_DEF); + mtx_init(&ip_fwdcache.rc_mtx, "route cache", NULL, MTX_DEF) #define RTCACHE_LOCK_ASSERT() mtx_assert(&ip_fwdcache.rc_mtx, MA_OWNED) /* - * Get the current route cache contents. + * Get a copy of the current route cache contents. */ #define RTCACHE_GET(_ro) do { \ + struct rtentry *rt; \ RTCACHE_LOCK(); \ *(_ro) = ip_fwdcache.rc_ro; \ + if ((rt = (_ro)->ro_rt) != NULL) { \ + RT_LOCK(rt); \ + RT_ADDREF(rt); \ + RT_UNLOCK(rt); \ + } \ RTCACHE_UNLOCK(); \ } while (0) /* - * Update the cache contents. We optimize this using - * the routing table reference. XXX is this safe? + * Update the cache contents. */ #define RTCACHE_UPDATE(_ro) do { \ - if ((_ro)->ro_rt != ip_fwdcache.rc_ro.ro_rt) { \ - RTCACHE_LOCK(); \ + struct rtentry *rt; \ + RTCACHE_LOCK(); \ + rt = ip_fwdcache.rc_ro.ro_rt; \ + if ((_ro)->ro_rt != rt) { \ ip_fwdcache.rc_ro = *(_ro); \ - RTCACHE_UNLOCK(); \ + if (rt) \ + RTFREE(rt); \ } \ + RTCACHE_UNLOCK(); \ } while (0) /* @@ -332,15 +343,14 @@ void ip_forward_cacheinval(void) { - struct rtentry *rt = NULL; + struct rtentry *rt; RTCACHE_LOCK(); rt = ip_fwdcache.rc_ro.ro_rt; ip_fwdcache.rc_ro.ro_rt = 0; - RTCACHE_UNLOCK(); - if (rt != NULL) RTFREE(rt); + RTCACHE_UNLOCK(); } /* From owner-p4-projects@FreeBSD.ORG Thu Nov 6 16:35:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B5C7716A4D0; Thu, 6 Nov 2003 16:35:25 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 91A2616A4CE for ; Thu, 6 Nov 2003 16:35:25 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1623343FCB for ; Thu, 6 Nov 2003 16:35:25 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA70ZOXJ076925 for ; Thu, 6 Nov 2003 16:35:24 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA70ZOLX076922 for perforce@freebsd.org; Thu, 6 Nov 2003 16:35:24 -0800 (PST) (envelope-from sam@freebsd.org) Date: Thu, 6 Nov 2003 16:35:24 -0800 (PST) Message-Id: <200311070035.hA70ZOLX076922@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 Subject: PERFORCE change 41603 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 00:35:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=41603 Change 41603 by sam@sam_ebb on 2003/11/06 16:35:10 Add ICMP redirect handling to divert sockets. It's not clear this is needed but it was simple so I did it. Affected files ... .. //depot/projects/netperf/sys/netinet/in_proto.c#5 edit .. //depot/projects/netperf/sys/netinet/ip_divert.c#13 edit .. //depot/projects/netperf/sys/netinet/ip_var.h#10 edit Differences ... ==== //depot/projects/netperf/sys/netinet/in_proto.c#5 (text+ko) ==== @@ -206,7 +206,7 @@ #endif #ifdef IPDIVERT { SOCK_RAW, &inetdomain, IPPROTO_DIVERT, PR_ATOMIC|PR_ADDR, - div_input, 0, 0, ip_ctloutput, + div_input, 0, div_ctlinput, ip_ctloutput, 0, div_init, 0, 0, 0, &div_usrreqs, ==== //depot/projects/netperf/sys/netinet/ip_divert.c#13 (text+ko) ==== @@ -518,6 +518,21 @@ return div_output(so, m, (struct sockaddr_in *)nam, control); } +void +div_ctlinput(int cmd, struct sockaddr *sa, void *vip) +{ + struct in_addr faddr; + + faddr = ((struct sockaddr_in *)sa)->sin_addr; + if (sa->sa_family != AF_INET || faddr.s_addr == INADDR_ANY) + return; + if (PRC_IS_REDIRECT(cmd)) { + /* flush held routes */ + in_pcbnotifyall(&divcbinfo, faddr, + inetctlerrmap[cmd], in_rtchange); + } +} + static int div_pcblist(SYSCTL_HANDLER_ARGS) { ==== //depot/projects/netperf/sys/netinet/ip_var.h#10 (text+ko) ==== @@ -203,6 +203,7 @@ #ifdef IPDIVERT void div_init(void); void div_input(struct mbuf *, int); +void div_ctlinput(int, struct sockaddr *, void *); void divert_packet(struct mbuf *m, int incoming, int port, int rule); extern struct pr_usrreqs div_usrreqs; #endif From owner-p4-projects@FreeBSD.ORG Thu Nov 6 17:29:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C836B16A4D0; Thu, 6 Nov 2003 17:29:36 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A203116A4CE for ; Thu, 6 Nov 2003 17:29:36 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F3B4443F75 for ; Thu, 6 Nov 2003 17:29:35 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA71TZXJ085725 for ; Thu, 6 Nov 2003 17:29:35 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA71TZ2p085721 for perforce@freebsd.org; Thu, 6 Nov 2003 17:29:35 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Nov 2003 17:29:35 -0800 (PST) Message-Id: <200311070129.hA71TZ2p085721@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41607 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 01:29:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=41607 Change 41607 by rwatson@rwatson_paprika on 2003/11/06 17:28:38 Document MAC_ALWAYS_LABEL_MBUF and MAC_STATIC, mac_lomac_load, mac_portacl_load. Affected files ... .. //depot/projects/trustedbsd/mac/MACREADME#25 edit Differences ... ==== //depot/projects/trustedbsd/mac/MACREADME#25 (text+ko) ==== @@ -8,6 +8,8 @@ options MAC # Mandatory Access Control #options MAC_DEBUG # Might also be useful +#options MAC_ALWAYS_LABEL_MBUF # Don't conditionally label mbufs +#options MAC_STATIC # Optimize out dynamic loading support Rebuild and reinstall world and kernel. Make sure that login.conf is in sync with that provided in the MAC repository, and that login.conf.db @@ -21,11 +23,13 @@ mac_biba_load="NO" # Biba MAC policy (boot only) mac_bsdextended_load="NO" # BSD/extended MAC policy mac_ifoff="NO" # Interface silencing policy +mac_lomac_load="NO" # Low-Watermark Mandatory Access Control mac_mls_load="NO" # MLS MAC policy (boot only) mac_none_load="NO" # Null MAC policy mac_partition_load="NO" # Partition MAC policy +mac_portacl_load="NO" # IP port access control lists mac_seeotheruids_load="NO" # UID visbility MAC policy -sebsd_load="NO" # Port of SELinux/FLASK (boot only) +mac_test_load="NO" # Regression test module Kernel options known not to work with MAC @@ -73,9 +77,7 @@ The NFS server code in many places currently ignores MAC protection. This may or may not be the best behavior, as in the past NFS could always override discretionary access control due to running in the -kernel as root all the time. However, because NFS sometimes invokes -higher level VFS functionality, such as namei(), MAC protections -may be inconsistently enforced. CODA support is probably in the same +kernel as root all the time. CODA support is probably in the same condition. Client-side NFS locking is known to Do The Wrong Thing, for a variety From owner-p4-projects@FreeBSD.ORG Thu Nov 6 20:21:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1FC2D16A4D0; Thu, 6 Nov 2003 20:21:13 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D598C16A4CE for ; Thu, 6 Nov 2003 20:21:12 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EBC3843FE1 for ; Thu, 6 Nov 2003 20:21:11 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA74LBXJ095644 for ; Thu, 6 Nov 2003 20:21:11 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA74LBTL095641 for perforce@freebsd.org; Thu, 6 Nov 2003 20:21:11 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Nov 2003 20:21:11 -0800 (PST) Message-Id: <200311070421.hA74LBTL095641@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41614 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 04:21:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=41614 Change 41614 by rwatson@rwatson_paprika on 2003/11/06 20:20:23 Whitespace and wrap cleanup. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/sysv_sem.c#16 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_sem.c#16 (text+ko) ==== @@ -41,7 +41,7 @@ #ifdef MAC_DEBUG #define MPRINTF(a) printf(a) #else -#define MPRINTF(a) +#define MPRINTF(a) #endif static void seminit(void); @@ -49,7 +49,7 @@ static int semunload(void); static void semexit_myhook(void *arg, struct proc *p); static int sysctl_sema(SYSCTL_HANDLER_ARGS); -static int semvalid(int semid, struct semid_kernel *semakptr); +static int semvalid(int semid, struct semid_kernel *semakptr); #ifndef _SYS_SYSPROTO_H_ struct __semctl_args; @@ -73,7 +73,7 @@ static struct mtx sem_mtx; /* semaphore global lock */ static int semtot = 0; -static struct semid_kernel *sema; /* semaphore id pool */ +static struct semid_kernel *sema; /* semaphore id pool */ static struct mtx *sema_mtx; /* semaphore id pool mutexes*/ static struct sem *sem; /* semaphore pool */ SLIST_HEAD(, sem_undo) semu_list; /* list of active undo structures */ @@ -201,7 +201,7 @@ TUNABLE_INT_FETCH("kern.ipc.semaem", &seminfo.semaem); sem = malloc(sizeof(struct sem) * seminfo.semmns, M_SEM, M_WAITOK); - sema = malloc(sizeof(struct semid_kernel ) * seminfo.semmni, M_SEM, + sema = malloc(sizeof(struct semid_kernel) * seminfo.semmni, M_SEM, M_WAITOK); sema_mtx = malloc(sizeof(struct mtx) * seminfo.semmni, M_SEM, M_WAITOK | M_ZERO); @@ -258,7 +258,7 @@ EVENTHANDLER_DEREGISTER(process_exit, semexit_tag); #ifdef MAC - for (i = 0; i < seminfo.semmni; i++) + for (i = 0; i < seminfo.semmni; i++) mac_destroy_ipc_sema(&sema[i]); #endif free(sem, M_SEM); @@ -517,7 +517,7 @@ static int semvalid(semid, semakptr) int semid; - struct semid_kernel *semakptr; + struct semid_kernel *semakptr; { return ((semakptr->u.sem_perm.mode & SEM_ALLOC) == 0 || @@ -553,7 +553,7 @@ struct ucred *cred = td->td_ucred; int i, rval, error; struct semid_ds sbuf; - struct semid_kernel *semakptr; + struct semid_kernel *semakptr; struct mtx *sema_mtxp; u_short usval, count; @@ -562,7 +562,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -576,7 +579,7 @@ switch(cmd) { case SEM_STAT: if (semid < 0 || semid >= seminfo.semmni) { - error = EINVAL; + error = EINVAL; goto done3; } if ((error = copyin(arg, &real_arg, sizeof(real_arg))) != 0) @@ -591,14 +594,16 @@ if ((error = ipcperm(td, &semakptr->u.sem_perm, IPC_R))) goto done2; #ifdef MAC - if(( error = mac_check_ipc_semctl(cred,semakptr,cmd) )) { - MPRINTF(("MAC Framework: mac_check_ipc_semctl access denied\n")); - goto done2; - } + if ((error = mac_check_ipc_semctl(cred, semakptr, cmd))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_semctl access denied\n")); + goto done2; + } #endif mtx_unlock(sema_mtxp); - error = copyout(&semakptr->u, real_arg.buf, sizeof(struct semid_ds)); - rval = IXSEQ_TO_IPCID(semid,semakptr->u.sem_perm); + error = copyout(&semakptr->u, real_arg.buf, + sizeof(struct semid_ds)); + rval = IXSEQ_TO_IPCID(semid, semakptr->u.sem_perm); if (error == 0) td->td_retval[0] = rval; goto done3; @@ -613,14 +618,15 @@ semakptr = &sema[semid]; sema_mtxp = &sema_mtx[semid]; #ifdef MAC - mtx_lock(sema_mtxp); + mtx_lock(sema_mtxp); /* * The MAC framework lets the policies decide what type of access * is permitted, based on the cmd. */ - if(( error = mac_check_ipc_semctl(cred,semakptr,cmd) )) { - MPRINTF(("MAC Framework: mac_check_ipc_semctl access denied\n")); - goto done2; + if ((error = mac_check_ipc_semctl(cred, semakptr, cmd))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_semctl access denied\n")); + goto done2; } mtx_unlock(sema_mtxp); #endif @@ -668,8 +674,8 @@ goto done2; semakptr->u.sem_perm.uid = sbuf.sem_perm.uid; semakptr->u.sem_perm.gid = sbuf.sem_perm.gid; - semakptr->u.sem_perm.mode = (semakptr->u.sem_perm.mode & ~0777) | - (sbuf.sem_perm.mode & 0777); + semakptr->u.sem_perm.mode = (semakptr->u.sem_perm.mode & + ~0777) | (sbuf.sem_perm.mode & 0777); semakptr->u.sem_ctime = time_second; break; @@ -862,7 +868,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -895,16 +904,18 @@ goto done2; } #ifdef MAC - if(( error = mac_check_ipc_semget(cred,&sema[semid]) )) { - MPRINTF(("MAC Framework: mac_check_ipc_semget access denied\n")); - goto done2; + if ((error = mac_check_ipc_semget(cred, + &sema[semid]))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_semget access denied\n")); + goto done2; } #endif goto found; } } - DPRINTF(("need to allocate the semid_kernel \n")); + DPRINTF(("need to allocate the semid_kernel\n")); if (key == IPC_PRIVATE || (semflg & IPC_CREAT)) { if (nsems <= 0 || nsems > seminfo.semmsl) { DPRINTF(("nsems out of range (0<%d<=%d)\n", nsems, @@ -924,7 +935,7 @@ break; } if (semid == seminfo.semmni) { - DPRINTF(("no more semid_kernel 's available\n")); + DPRINTF(("no more semid_kernel's available\n")); error = ENOSPC; goto done2; } @@ -947,8 +958,8 @@ #ifdef MAC mac_create_ipc_sema(cred, &sema[semid]); #endif - DPRINTF(("sembase = 0x%x, next = 0x%x\n", sema[semid].u.sem_base, - &sem[semtot])); + DPRINTF(("sembase = 0x%x, next = 0x%x\n", + sema[semid].u.sem_base, &sem[semtot])); } else { DPRINTF(("didn't find it and wasn't asked to create it\n")); error = ENOENT; @@ -984,7 +995,7 @@ int semid = uap->semid; size_t nsops = uap->nsops; struct sembuf *sops; - struct semid_kernel *semakptr; + struct semid_kernel *semakptr; struct sembuf *sopptr = 0; struct sem *semptr = 0; struct sem_undo *suptr; @@ -998,7 +1009,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -1064,11 +1078,13 @@ } #ifdef MAC /* - * The MAC hook checks whether the thread has read ( and possibly write) - * permissions to the semaphore array based on the sopptr->sem_op value. + * The MAC hook checks whether the thread has read (and possibly + * write) permissions to the semaphore array based on the + * sopptr->sem_op value. */ if ((error = mac_check_ipc_semop(td->td_ucred, semakptr, j))) { - MPRINTF(("MAC Framework: mac_check_ipc_semop access denied\n")); + MPRINTF(( + "MAC Framework: mac_check_ipc_semop access denied\n")); goto done2; } #endif @@ -1310,7 +1326,7 @@ int semid = suptr->un_ent[ix].un_id; int semnum = suptr->un_ent[ix].un_num; int adjval = suptr->un_ent[ix].un_adjval; - struct semid_kernel *semakptr; + struct semid_kernel *semakptr; struct mtx *sema_mtxp; semakptr = &sema[semid]; @@ -1330,7 +1346,8 @@ semakptr->u.sem_base[semnum].semval)); if (adjval < 0) { - if (semakptr->u.sem_base[semnum].semval < -adjval) + if (semakptr->u.sem_base[semnum].semval < + -adjval) semakptr->u.sem_base[semnum].semval = 0; else semakptr->u.sem_base[semnum].semval += From owner-p4-projects@FreeBSD.ORG Thu Nov 6 20:36:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4723616A4D0; Thu, 6 Nov 2003 20:36:33 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 20BF616A4CE for ; Thu, 6 Nov 2003 20:36:33 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 62B8843FF2 for ; Thu, 6 Nov 2003 20:36:31 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA74aVXJ096161 for ; Thu, 6 Nov 2003 20:36:31 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA74aU6M096158 for perforce@freebsd.org; Thu, 6 Nov 2003 20:36:30 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Nov 2003 20:36:30 -0800 (PST) Message-Id: <200311070436.hA74aU6M096158@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41615 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 04:36:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=41615 Change 41615 by rwatson@rwatson_paprika on 2003/11/06 20:35:59 Whitespace, linewrap, sync. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/sysv_msg.c#15 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_msg.c#15 (text+ko) ==== @@ -74,7 +74,7 @@ long msg_type; /* type of this message */ /* >0 -> type of this message */ /* 0 -> free header */ - unsigned short msg_ts; /* size of this message */ + u_short msg_ts; /* size of this message */ short msg_spot; /* location of start of msg in buffer */ }; #endif @@ -167,7 +167,8 @@ msghdrs = malloc(sizeof(struct msg) * msginfo.msgtql, M_MSG, M_WAITOK); if (msghdrs == NULL) panic("msghdrs is NULL"); - msqids = malloc(sizeof(struct msqid_kernel) * msginfo.msgmni, M_MSG, M_WAITOK); + msqids = malloc(sizeof(struct msqid_kernel) * msginfo.msgmni, M_MSG, + M_WAITOK); if (msqids == NULL) panic("msqids is NULL"); @@ -230,13 +231,13 @@ mtx_init(&msq_mtx, "msq", NULL, MTX_DEF); refcount = 0; /* - * It is not permissible to pass the same mutex to mtx_init() multiple - * times without intervening calls to mtx_destroy(). - * Since we cannot destroy the refcnt_mtx during msgunload, we check if the - * mtx_init has ever been called. If so, we dont need to do mtx_init as the - * mutex is already initialized. + * It is not permissible to pass the same mutex to mtx_init() + * multiple times without intervening calls to mtx_destroy(). Since + * we cannot destroy the refcnt_mtx during msgunload, we check if the + * mtx_init has ever been called. If so, we dont need to do mtx_init + * as the mutex is already initialized. */ - if ( mtx_initialized(&refcnt_mtx) == 0 ) + if (mtx_initialized(&refcnt_mtx) == 0) mtx_init(&refcnt_mtx, "msgrefcnt", NULL, MTX_DEF); } @@ -247,11 +248,11 @@ int msqid; /* - * Make sure that the msgunload maintains the consistency of the msqids - * and msghdrs data structures. This assures that the unload doesn't take - * place if any thread is in any of the code-paths (tinkering with the - * data structures), and also that no thread can enter the code-paths once - * the module is unloaded. + * Make sure that the msgunload maintains the consistency of the + * msqids and msghdrs data structures. This assures that the unload + * doesn't take place if any thread is in any of the code-paths + * (tinkering with the data structures), and also that no thread + * can enter the code-paths once the module is unloaded. */ mtx_lock(&refcnt_mtx); if (refcount > 0) { @@ -293,8 +294,8 @@ free(msqids, M_MSG); mtx_destroy(&msq_mtx); /* - * NOTE: We cannot destroy the refcnt_mtx as it is possible that some thread - * might (attempt to) hold the mutex. + * NOTE: We cannot destroy the refcnt_mtx as it is possible that + * some thread might (attempt to) hold the mutex. */ /* mtx_destroy(&refcnt_mtx); */ return (0); @@ -422,7 +423,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -457,9 +461,9 @@ goto done2; } #ifdef MAC - if ((error = mac_check_ipc_msqctl(td->td_ucred,msqkptr,cmd))) - { - MPRINTF(("MAC Framework: mac_check_ipc_msqctl permission denied!\n")); + if ((error = mac_check_ipc_msqctl(td->td_ucred,msqkptr,cmd))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_msqctl permission denied!\n")); goto done2; } #endif @@ -477,22 +481,25 @@ goto done2; #ifdef MAC - /* - * Check that the thread has MAC access permissions to individual - * msghdrs. - * Note: We need to do this in a separate loop because the actual loop - * alters the msq/msghdr info as it progresses, and there is no going - * back if half the way through we discover that the thread cannot free - * a certain msghdr. The msq will get into an inconsistent state. - */ + /* + * Check that the thread has MAC access permissions to + * individual msghdrs. Note: We need to do this in a + * separate loop because the actual loop alters the + * msq/msghdr info as it progresses, and there is no going + * back if half the way through we discover that the + * thread cannot free a certain msghdr. The msq will get + * into an inconsistent state. + */ msghdr = msqkptr->u.msg_first; while (msghdr != NULL) { - if((error = mac_check_ipc_msgrmid(td->td_ucred,msghdr))) { - MPRINTF("MAC Framework: mac_check_ipc_msgrmid permission denied\n"); - /* XXX wakeup(msqkptr); ??? */ - goto done2; - } - msghdr = msghdr->msg_next; + if ((error = mac_check_ipc_msgrmid(td->td_ucred, + msghdr))) { + MPRINTF( + "MAC Framework: mac_check_ipc_msgrmid permission denied\n"); + /* XXX wakeup(msqkptr); ??? */ + goto done2; + } + msghdr = msghdr->msg_next; } #endif @@ -604,7 +611,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -634,8 +644,9 @@ goto done2; } #ifdef MAC - if(( error = mac_check_ipc_msqget(cred, msqkptr) )) { - MPRINTF("MAC Framework: mac_check_ipc_msqget access denied\n"); + if ((error = mac_check_ipc_msqget(cred, msqkptr))) { + MPRINTF( + "MAC Framework: mac_check_ipc_msqget access denied\n"); goto done2; } #endif @@ -732,7 +743,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -769,9 +783,13 @@ } #ifdef MAC - /* Make sure that the thread has access rights to the message queue */ + /* + * Make sure that the thread has access rights to the message + * queue. + */ if ((error = mac_check_ipc_msqsnd(td->td_ucred, msqkptr))) { - MPRINTF(("MAC Framework: mac_check_ipc_msqsnd permission denied\n")); + MPRINTF(( +"MAC Framework: mac_check_ipc_msqsnd permission denied\n")); goto done2; } #endif @@ -892,11 +910,10 @@ #ifdef MAC mac_create_ipc_msgmsg(td->td_ucred, msqkptr, msghdr); /* - * XXX: Should the mac_check_ipc_msgmsq check follow here immediately ? - * Or, should it be checked just before the msg is enqueued in the msgq - * (as it is done now) ? + * XXX: Should the mac_check_ipc_msgmsq check follow here + * immediately? Or, should it be checked just before the msg is + * enqueued in the msgq (as it is done now)? */ - #endif /* @@ -1008,17 +1025,19 @@ #ifdef MAC /* - * Note: Since the task/thread allocates the msghdr and usually primes - * it with its own MAC label,for a majority of policies, it won't be - * necessary to check whether the msghdr has access permissions to the - * msgq. The mac_check_ipc_msqsnd check would suffice in that case. - * However, this hook may be required where individual policies derive - * a non-identical label for the msghdr from the current thread label - * and may want to check the msghdr enqueue permissions, along with - * read/write permissions to the msgq. + * Note: Since the task/thread allocates the msghdr and usually + * primes it with its own MAC label,for a majority of policies, it + * won't be necessary to check whether the msghdr has access + * permissions to the msgq. The mac_check_ipc_msqsnd check would + * suffice in that case. However, this hook may be required where + * individual policies derive a non-identical label for the msghdr + * from the current thread label and may want to check the msghdr + * enqueue permissions, along with read/write permissions to the + * msgq. */ - if((error= mac_check_ipc_msgmsq(td->td_ucred,msghdr,msqkptr))) { - MPRINTF(("MAC Framework: mac_check_ipc_msqmsq permission denied\n")); + if ((error = mac_check_ipc_msgmsq(td->td_ucred,msghdr,msqkptr))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_msqmsq permission denied\n")); msg_freehdr(msghdr); wakeup(msqkptr); goto done2; @@ -1084,7 +1103,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -1121,9 +1143,12 @@ } #ifdef MAC - /* Make sure that the thread has access rights to the message queue */ + /* + * Make sure that the thread has access rights to the message queue. + */ if ((error = mac_check_ipc_msqrcv(td->td_ucred, msqkptr))) { - MPRINTF(("MAC Framework: mac_check_ipc_msqrcv permission denied\n")); + MPRINTF(( +"MAC Framework: mac_check_ipc_msqrcv permission denied\n")); goto done2; } #endif @@ -1142,10 +1167,14 @@ goto done2; } #ifdef MAC - /* Make sure that the thread has access rights to the message header */ + /* + * Make sure that the thread has access + * rights to the message header. + */ if ((error = mac_check_ipc_msgrcv(td->td_ucred, msghdr))) { - MPRINTF(("MAC Framework: mac_check_ipc_msgrcv permission denied\n")); + MPRINTF(( + "MAC Framework: mac_check_ipc_msgrcv permission denied\n")); goto done2; } #endif @@ -1189,9 +1218,16 @@ goto done2; } #ifdef MAC - /* Make sure that the thread has access rights to the message header */ - if ((error = mac_check_ipc_msgrcv(td->td_ucred, msghdr))) { - MPRINTF(("MAC Framework: mac_check_ipc_msgrcv permission denied\n")); + /* + * Make sure that the thread has + * access rights to the message + * header. + */ + if ((error = + mac_check_ipc_msgrcv(td->td_ucred, + msghdr))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_msgrcv permission denied\n")); goto done2; } #endif From owner-p4-projects@FreeBSD.ORG Thu Nov 6 20:43:41 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9846616A4D0; Thu, 6 Nov 2003 20:43:41 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 72EAA16A4CE for ; Thu, 6 Nov 2003 20:43:41 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B788843F85 for ; Thu, 6 Nov 2003 20:43:40 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA74heXJ096443 for ; Thu, 6 Nov 2003 20:43:40 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA74hei0096440 for perforce@freebsd.org; Thu, 6 Nov 2003 20:43:40 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Nov 2003 20:43:40 -0800 (PST) Message-Id: <200311070443.hA74hei0096440@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41616 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 04:43:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=41616 Change 41616 by rwatson@rwatson_paprika on 2003/11/06 20:43:25 Whitespace, linewrap. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/sysv_shm.c#15 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_shm.c#15 (text+ko) ==== @@ -279,7 +279,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -305,13 +308,17 @@ goto done2; } #ifdef MAC - /* XXX It might be useful to move this into the shm_delete_mapping function */ + /* + * XXX: It might be useful to move this into the shm_delete_mapping + * function + */ struct shmid_kernel *shmsegptr; shmsegptr = &shmsegs[IPCID_TO_IX(shmmap_s->shmid)]; - if(( error = mac_check_ipc_shmdt(td->td_ucred, shmsegptr) )) { - MPRINTF(("MAC Framework: mac_check_ipc_shmdt access denied\n")); - goto done2; - } + if ((error = mac_check_ipc_shmdt(td->td_ucred, shmsegptr))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_shmdt access denied\n")); + goto done2; + } #endif error = shm_delete_mapping(p->p_vmspace, shmmap_s); done2: @@ -355,7 +362,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -383,10 +393,11 @@ if (error) goto done2; #ifdef MAC - if(( error = mac_check_ipc_shmat(td->td_ucred, shmseg, shmflg) )) { - MPRINTF(("MAC Framework: mac_check_ipc_shmat access denied\n")); - goto done2; - } + if ((error = mac_check_ipc_shmat(td->td_ucred, shmseg, shmflg))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_shmat access denied\n")); + goto done2; + } #endif for (i = 0; i < shminfo.shmseg; i++) { if (shmmap_s->shmid == -1) @@ -492,7 +503,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -513,10 +527,11 @@ if (error) goto done2; #ifdef MAC - if(( error = mac_check_ipc_shmctl(td->td_ucred, shmseg, uap->cmd) )) { - MPRINTF(("MAC Framework: mac_check_ipc_shmctl access denied\n")); - goto done2; - } + if ((error = mac_check_ipc_shmctl(td->td_ucred, shmseg, uap->cmd))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_shmctl access denied\n")); + goto done2; + } #endif outbuf.shm_perm = shmseg->u.shm_perm; outbuf.shm_segsz = shmseg->u.shm_segsz; @@ -573,7 +588,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -614,10 +632,11 @@ goto done2; } #ifdef MAC - if(( error = mac_check_ipc_shmctl(td->td_ucred, shmseg, cmd) )) { - MPRINTF(("MAC Framework: mac_check_ipc_shmctl access denied\n")); - goto done2; - } + if ((error = mac_check_ipc_shmctl(td->td_ucred, shmseg, cmd))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_shmctl access denied\n")); + goto done2; + } #endif switch (cmd) { case SHM_STAT: @@ -746,8 +765,9 @@ return (EEXIST); error = ipcperm(td, &shmseg->u.shm_perm, mode); #ifdef MAC - if(( error = mac_check_ipc_shmget(td->td_ucred,shmseg,uap->shmflg) )) { - MPRINTF(("MAC Framework: mac_check_ipc_shmget access denied\n")); + if ((error = mac_check_ipc_shmget(td->td_ucred,shmseg,uap->shmflg))) { + MPRINTF(( + "MAC Framework: mac_check_ipc_shmget access denied\n")); } #endif if (error) @@ -828,7 +848,7 @@ shmseg->u.shm_lpid = shmseg->u.shm_nattch = 0; shmseg->u.shm_atime = shmseg->u.shm_dtime = 0; #ifdef MAC - mac_create_ipc_shm(cred, shmseg); + mac_create_ipc_shm(cred, shmseg); #endif shmseg->u.shm_ctime = time_second; shm_committed += btoc(size); @@ -859,7 +879,10 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - /* Prevent thread from going any further if module is (being) unloaded */ + /* + * Prevent thread from going any further if module is (being) + * unloaded. + */ mtx_lock(&refcnt_mtx); if (refcount < 0 ) { mtx_unlock(&refcnt_mtx); @@ -949,7 +972,10 @@ vm->vm_shm = NULL; for (i = 0, shm = base; i < shminfo.shmseg; i++, shm++) { if (shm->shmid != -1) - /* XXX: Should the MAC framework enforce check here as well */ + /* + * XXX: Should the MAC framework enforce + * check here as well. + */ shm_delete_mapping(vm, shm); } free(base, M_SHM); @@ -1015,14 +1041,14 @@ shmexit_hook = &shmexit_myhook; shmfork_hook = &shmfork_myhook; refcount = 0; - /* - * It is not permissible to pass the same mutex to mtx_init() multiple - * times without intervening calls to mtx_destroy(). - * Since we cannot destroy the refcnt_mtx during shmunload, we check if - * the mtx_init has ever been called. If so, we dont need to do mtx_init - * as the mutex is already initialized. + /* + * It is not permissible to pass the same mutex to mtx_init() + * multiple times without intervening calls to mtx_destroy(). Since + * we cannot destroy the refcnt_mtx during shmunload, we check if + * the mtx_init has ever been called. If so, we dont need to do + * mtx_init as the mutex is already initialized. */ - if ( mtx_initialized(&refcnt_mtx) == 0 ) + if (mtx_initialized(&refcnt_mtx) == 0) mtx_init(&refcnt_mtx, "shmrefcnt", NULL, MTX_DEF); } @@ -1031,11 +1057,11 @@ { /* - * Make sure that the shmunload maintains the consistency of the shmsegs - * data structure. This assures that the unload doesn't take place if - * any thread is in any of the code-paths (tinkering with the data - * structures), and also that no thread can enter the code-paths once - * the module is unloaded. + * Make sure that the shmunload maintains the consistency of the + * shmsegs data structure. This assures that the unload doesn't + * take place if any thread is in any of the code-paths (tinkering + * with the data structures), and also that no thread can enter + * the code-paths once the module is unloaded. */ mtx_lock(&refcnt_mtx); if ((refcount > 0) || (shm_nused > 0)) { From owner-p4-projects@FreeBSD.ORG Thu Nov 6 20:51:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B9E7016A4D0; Thu, 6 Nov 2003 20:51:55 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7CC4B16A4CE for ; Thu, 6 Nov 2003 20:51:55 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F23AC43F3F for ; Thu, 6 Nov 2003 20:51:53 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA74prXJ002650 for ; Thu, 6 Nov 2003 20:51:53 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA74pr5m002647 for perforce@freebsd.org; Thu, 6 Nov 2003 20:51:53 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 6 Nov 2003 20:51:53 -0800 (PST) Message-Id: <200311070451.hA74pr5m002647@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41619 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 04:51:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=41619 Change 41619 by rwatson@rwatson_paprika on 2003/11/06 20:51:18 Trim trailing whitespace. Linewrap. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/sysv_ipc.c#9 edit .. //depot/projects/trustedbsd/mac/sys/kern/sysv_msg.c#16 edit .. //depot/projects/trustedbsd/mac/sys/kern/sysv_sem.c#17 edit .. //depot/projects/trustedbsd/mac/sys/kern/sysv_shm.c#16 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_ipc.c#9 (text+ko) ==== @@ -72,9 +72,9 @@ /* - * Note: The MAC Framework doesnt add any hook to the ipcperm function as + * Note: The MAC Framework doesnt add any hook to the ipcperm function as * fine-grained hooks are inserted throughout the ipc primitives. These hooks - * compliment the ipcperm check. + * compliment the ipcperm check. */ int ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_msg.c#16 (text+ko) ==== @@ -56,7 +56,7 @@ #ifdef MAC_DEBUG #define MPRINTF(a) printf(a) #else -#define MPRINTF(a) +#define MPRINTF(a) #endif static void msg_freehdr(struct msg *msghdr); @@ -230,7 +230,7 @@ } mtx_init(&msq_mtx, "msq", NULL, MTX_DEF); refcount = 0; - /* + /* * It is not permissible to pass the same mutex to mtx_init() * multiple times without intervening calls to mtx_destroy(). Since * we cannot destroy the refcnt_mtx during msgunload, we check if the @@ -247,7 +247,7 @@ struct msqid_kernel *msqkptr; int msqid; - /* + /* * Make sure that the msgunload maintains the consistency of the * msqids and msghdrs data structures. This assures that the unload * doesn't take place if any thread is in any of the code-paths @@ -282,18 +282,18 @@ #ifdef MAC int i; /* Clean up the MAC label associated with the msg objects. */ - for (i = 0; i < msginfo.msgtql; i++) + for (i = 0; i < msginfo.msgtql; i++) mac_destroy_ipc_msgmsg(&msghdrs[i]); /* Clean up the MAC label associated with the msq objects. */ - for (msqid = 0; msqid < msginfo.msgmni; msqid++) + for (msqid = 0; msqid < msginfo.msgmni; msqid++) mac_destroy_ipc_msgqueue(&msqids[msqid]); -#endif +#endif free(msgpool, M_MSG); free(msgmaps, M_MSG); free(msghdrs, M_MSG); free(msqids, M_MSG); mtx_destroy(&msq_mtx); - /* + /* * NOTE: We cannot destroy the refcnt_mtx as it is possible that * some thread might (attempt to) hold the mutex. */ @@ -444,7 +444,7 @@ goto done3; } if (cmd == IPC_SET && - (error = copyin(user_msqptr, &msqbuf, sizeof(msqbuf))) != 0) + (error = copyin(user_msqptr, &msqbuf, sizeof(msqbuf))) != 0) goto done3; msqkptr = &msqids[msqid]; @@ -481,7 +481,7 @@ goto done2; #ifdef MAC - /* + /* * Check that the thread has MAC access permissions to * individual msghdrs. Note: We need to do this in a * separate loop because the actual loop alters the @@ -782,7 +782,7 @@ goto done2; } -#ifdef MAC +#ifdef MAC /* * Make sure that the thread has access rights to the message * queue. @@ -909,7 +909,7 @@ msghdr->msg_ts = msgsz; #ifdef MAC mac_create_ipc_msgmsg(td->td_ucred, msqkptr, msghdr); - /* + /* * XXX: Should the mac_check_ipc_msgmsq check follow here * immediately? Or, should it be checked just before the msg is * enqueued in the msgq (as it is done now)? @@ -1142,7 +1142,7 @@ goto done2; } -#ifdef MAC +#ifdef MAC /* * Make sure that the thread has access rights to the message queue. */ @@ -1171,14 +1171,14 @@ * Make sure that the thread has access * rights to the message header. */ - if ((error = mac_check_ipc_msgrcv(td->td_ucred, + if ((error = mac_check_ipc_msgrcv(td->td_ucred, msghdr))) { MPRINTF(( "MAC Framework: mac_check_ipc_msgrcv permission denied\n")); goto done2; } #endif - if (msqkptr->u.msg_first == msqkptr->u.msg_last) { + if (msqkptr->u.msg_first == msqkptr->u.msg_last) { msqkptr->u.msg_first = NULL; msqkptr->u.msg_last = NULL; } else { ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_sem.c#17 (text+ko) ==== @@ -61,7 +61,7 @@ #endif static struct sem_undo *semu_alloc(struct thread *td); -static int semundo_adjust(struct thread *td, struct sem_undo **supptr, +static int semundo_adjust(struct thread *td, struct sem_undo **supptr, int semid, int semnum, int adjval); static void semundo_clear(int semid, int semnum); @@ -223,14 +223,14 @@ SLIST_INIT(&semu_list); mtx_init(&sem_mtx, "sem", NULL, MTX_DEF); refcount =0; - /* - * It is not permissible to pass the same mutex to mtx_init() multiple - * times without intervening calls to mtx_destroy(). - * Since we cannot destroy the refcnt_mtx during semunload, we check if - * the mtx_init has ever been called. If so, we dont need to do mtx_init - * as the mutex is already initialized. + /* + * It is not permissible to pass the same mutex to mtx_init() + * multiple times without intervening calls to mtx_destroy(). + * Since we cannot destroy the refcnt_mtx during semunload, we check + * if the mtx_init has ever been called. If so, we dont need to do + * mtx_init as the mutex is already initialized. */ - if ( mtx_initialized(&refcnt_mtx) == 0 ) + if (mtx_initialized(&refcnt_mtx) == 0) mtx_init(&refcnt_mtx, "semrefcnt", NULL, MTX_DEF); semexit_tag = EVENTHANDLER_REGISTER(process_exit, semexit_myhook, NULL, EVENTHANDLER_PRI_ANY); @@ -241,12 +241,12 @@ { int i; - /* - * Make sure that the semunload maintains the consistency of the sem + /* + * Make sure that the semunload maintains the consistency of the sem * and sema data structures. This assures that the unload doesn't take * place if any thread is in any of the code-paths (tinkering with the - * data structures), and also that no thread can enter the code-paths - * once the module is unloaded. + * data structures), and also that no thread can enter the code-paths + * once the module is unloaded. */ mtx_lock(&refcnt_mtx); if ((refcount > 0) || (semtot != 0)) { @@ -260,15 +260,15 @@ #ifdef MAC for (i = 0; i < seminfo.semmni; i++) mac_destroy_ipc_sema(&sema[i]); -#endif +#endif free(sem, M_SEM); free(sema, M_SEM); free(semu, M_SEM); for (i = 0; i < seminfo.semmni; i++) mtx_destroy(&sema_mtx[i]); mtx_destroy(&sem_mtx); - /* - * NOTE: We cannot destroy the refcnt_mtx as it is possible that some + /* + * NOTE: We cannot destroy the refcnt_mtx as it is possible that some * thread might (attempt to) hold the mutex. */ /* mtx_destroy(&refcnt_mtx); */ @@ -619,7 +619,7 @@ sema_mtxp = &sema_mtx[semid]; #ifdef MAC mtx_lock(sema_mtxp); - /* + /* * The MAC framework lets the policies decide what type of access * is permitted, based on the cmd. */ @@ -903,7 +903,7 @@ error = EEXIST; goto done2; } -#ifdef MAC +#ifdef MAC if ((error = mac_check_ipc_semget(cred, &sema[semid]))) { MPRINTF(( @@ -1077,7 +1077,7 @@ goto done2; } #ifdef MAC - /* + /* * The MAC hook checks whether the thread has read (and possibly * write) permissions to the semaphore array based on the * sopptr->sem_op value. ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_shm.c#16 (text+ko) ==== @@ -461,7 +461,7 @@ return (error); } -int +int shmat(td, uap) struct thread *td; struct shmat_args *uap; @@ -1056,12 +1056,12 @@ shmunload() { - /* + /* * Make sure that the shmunload maintains the consistency of the * shmsegs data structure. This assures that the unload doesn't * take place if any thread is in any of the code-paths (tinkering * with the data structures), and also that no thread can enter - * the code-paths once the module is unloaded. + * the code-paths once the module is unloaded. */ mtx_lock(&refcnt_mtx); if ((refcount > 0) || (shm_nused > 0)) { @@ -1073,7 +1073,7 @@ #ifdef MAC int i; - for (i = 0; i < shmalloced; i++) + for (i = 0; i < shmalloced; i++) mac_destroy_ipc_shm(&shmsegs[i]); #endif free(shmsegs, M_SHM); From owner-p4-projects@FreeBSD.ORG Fri Nov 7 06:16:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 85FBD16A4D0; Fri, 7 Nov 2003 06:16:39 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5829F16A4CE for ; Fri, 7 Nov 2003 06:16:39 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 86C3A43FE3 for ; Fri, 7 Nov 2003 06:16:38 -0800 (PST) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA7EGcXJ047406 for ; Fri, 7 Nov 2003 06:16:38 -0800 (PST) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA7EGb3e047403 for perforce@freebsd.org; Fri, 7 Nov 2003 06:16:37 -0800 (PST) (envelope-from areisse@nailabs.com) Date: Fri, 7 Nov 2003 06:16:37 -0800 (PST) Message-Id: <200311071416.hA7EGb3e047403@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 41639 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 14:16:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=41639 Change 41639 by areisse@areisse_ibook on 2003/11/07 06:16:26 support for relabelling devfs entries (it might work when the vnodes are reclaimed) syscalls: mac_set_file, mac_set_link Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/init_sysent.c#4 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#25 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/miscfs/devfs/devfs_vnops.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac_policy.h#5 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/vnode.h#4 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/vnode_if.h#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_support.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_support.h#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vnode_if.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vnode_if.src#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/sebsd.c#8 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/init_sysent.c#4 (text+ko) ==== @@ -734,6 +734,8 @@ /*syss(mac_execve,4), /* 342 */ syss(nosys,0), /* 342 */ syss(__mac_get_pid,2), /* 343 */ + syss(__mac_set_file,2), /* 344 */ + syss(__mac_set_link,2), /* 345 */ #else syss(nosys,0), /* 338 */ syss(nosys,0), /* 339 */ @@ -741,9 +743,9 @@ syss(nosys,0), /* 341 */ syss(nosys,0), /* 342 */ syss(nosys,0), /* 343 */ -#endif syss(nosys,0), /* 344 */ syss(nosys,0), /* 345 */ +#endif syss(nosys,0), /* 346 */ syss(nosys,0), /* 347 */ syss(nosys,0), /* 348 */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#25 (text+ko) ==== @@ -1445,16 +1445,14 @@ MAC_PERFORM(create_cred, parent_cred, child_cred); } -#if 0 void -mac_update_devfsdirent(struct mount *mp, struct devfs_dirent *de, +mac_update_devfsdirent(struct mount *mp, struct devnode *de, struct vnode *vp) { - MAC_PERFORM(update_devfsdirent, mp, de, &de->de_label, vp, + MAC_PERFORM(update_devfsdirent, mp, de, &de->dn_label, vp, &vp->v_label); } -#endif void mac_associate_vnode_devfs(struct mount *mp, struct devnode *de, @@ -3488,6 +3486,40 @@ return (error); } +static int +vn_setlabel(struct vnode *vp, struct label *intlabel, struct ucred *cred, + struct proc *p) +{ + int error; + + /* + * Multi-phase commit. First check the policies to confirm the + * change is OK. Then commit via the filesystem. Finally, + * update the actual vnode label. Question: maybe the filesystem + * should update the vnode at the end as part of VOP_SETLABEL()? + */ + error = mac_check_vnode_relabel(cred, vp, intlabel); + if (error) + return (error); + + /* + * VADMIN provides the opportunity for the filesystem to make + * decisions about who is and is not able to modify labels + * and protections on files. This might not be right. We can't + * assume VOP_SETLABEL() will do it, because we might implement + * that as part of vop_stdsetlabel_ea(). + */ + error = VOP_ACCESS(vp, VADMIN, cred, p); + if (error) + return (error); + + error = VOP_SETLABEL(vp, intlabel, cred, p); + if (error) + return (error); + + return (0); +} + /* * MPSAFE */ @@ -3957,6 +3989,8 @@ return (error); } +#endif + /* * MPSAFE */ @@ -3974,7 +4008,7 @@ struct mount *mp; struct mac mac; char *buffer; - int error; + int error, dummy; error = copyin(uap->mac_p, &mac, sizeof(mac)); if (error) @@ -3985,7 +4019,7 @@ return (error); MALLOC(buffer, char *, mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, buffer, mac.m_buflen, NULL); + error = copyinstr(mac.m_string, buffer, mac.m_buflen, &dummy); if (error) { FREE(buffer, M_MACTEMP); return (error); @@ -3999,27 +4033,20 @@ return (error); } -#if 0 - mutex_lock(&Giant); /* VFS */ /* XXX FUNNEL? */ -#endif - - NDINIT(&nd, LOOKUP, LOCKLEAF | FOLLOW, UIO_USERSPACE, uap->path_p, + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path_p, td); error = namei(&nd); - if (error == 0) { - error = vn_start_write(nd.ni_vp, &mp, V_WAIT | PCATCH); - if (error == 0) - error = vn_setlabel(nd.ni_vp, &intlabel, - td->p_ucred); - vn_finished_write(mp); + if (error == 0) + { + struct vnode *vp = nd.ni_vp; + + VOP_LEASE(vp, td, td->p_ucred, LEASE_WRITE); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + error = vn_setlabel (vp, &intlabel, td->p_ucred, td); + + vput (nd.ni_vp); } - NDFREE(&nd, 0); -#if 0 - mutex_unlock(&Giant); /* VFS */ /* XXX FUNNEL? */ -#endif - mac_destroy_vnode_label(&intlabel); - return (error); } @@ -4027,14 +4054,14 @@ * MPSAFE */ int -__mac_set_link(struct thread *td, struct __mac_set_link_args *uap) +__mac_set_link(struct proc *td, struct __mac_set_file_args *uap) { struct label intlabel; struct nameidata nd; struct mount *mp; struct mac mac; char *buffer; - int error; + int error, dummy; error = copyin(uap->mac_p, &mac, sizeof(mac)); if (error) @@ -4045,7 +4072,7 @@ return (error); MALLOC(buffer, char *, mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, buffer, mac.m_buflen, NULL); + error = copyinstr(mac.m_string, buffer, mac.m_buflen, &dummy); if (error) { FREE(buffer, M_MACTEMP); return (error); @@ -4059,32 +4086,24 @@ return (error); } -#if 0 - mutex_lock(&Giant); /* VFS */ /* XXX FUNNEL? */ -#endif + NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path_p, + td); - NDINIT(&nd, LOOKUP, LOCKLEAF | NOFOLLOW, UIO_USERSPACE, uap->path_p, - td); error = namei(&nd); - if (error == 0) { - error = vn_start_write(nd.ni_vp, &mp, V_WAIT | PCATCH); - if (error == 0) - error = vn_setlabel(nd.ni_vp, &intlabel, - td->td_ucred); - vn_finished_write(mp); + if (error == 0) + { + struct vnode *vp = nd.ni_vp; + + VOP_LEASE(vp, td, td->p_ucred, LEASE_WRITE); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + error = vn_setlabel (vp, &intlabel, td->p_ucred, td); + + vput (nd.ni_vp); } - NDFREE(&nd, 0); -#if 0 - mutex_unlock(&Giant); /* VFS */ /* XXX FUNNEL? */ -#endif - mac_destroy_vnode_label(&intlabel); - return (error); } -#endif - /* * MPSAFE */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/miscfs/devfs/devfs_vnops.c#2 (text+ko) ==== @@ -583,7 +583,26 @@ return error; } +#ifdef MAC static int +devfs_setlabel (struct vop_setlabel_args *ap) +{ + struct vnode *vp; + struct devnode *de; + + vp = ap->a_vp; + de = VTODN(vp); + + printf ("devfs_setlabel\n"); + + mac_relabel_vnode(ap->a_cred, vp, ap->a_vl); + mac_update_devfsdirent(vp->v_mount, de, vp); + + return (0); +} +#endif + +static int devfs_read(struct vop_read_args *ap) /*struct vop_read_args { struct vnode *a_vp; @@ -1540,6 +1559,9 @@ { &vop_blktooff_desc, (VOPFUNC)err_blktooff }, /* blktooff */ { &vop_offtoblk_desc, (VOPFUNC)err_offtoblk }, /* offtoblk */ { &vop_cmap_desc, (VOPFUNC)err_cmap }, /* cmap */ +#ifdef MAC + { &vop_setlabel_desc, (VOPFUNC)devfs_setlabel }, /* setlabel */ +#endif { (struct vnodeop_desc*)NULL, (int(*)())NULL } }; struct vnodeopv_desc devfs_vnodeop_opv_desc = @@ -1599,6 +1621,9 @@ { &vop_blktooff_desc, (VOPFUNC)spec_blktooff }, /* blktooff */ { &vop_blktooff_desc, (VOPFUNC)spec_offtoblk }, /* blkofftoblk */ { &vop_cmap_desc, (VOPFUNC)spec_cmap }, /* cmap */ +#ifdef MAC + { &vop_setlabel_desc, (VOPFUNC)devfs_setlabel }, /* setlabel */ +#endif { (struct vnodeop_desc*)NULL, (int(*)())NULL } }; struct vnodeopv_desc devfs_spec_vnodeop_opv_desc = ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac_policy.h#5 (text+ko) ==== @@ -189,12 +189,11 @@ int (*mpo_setlabel_vnode_extattr)(struct ucred *cred, struct vnode *vp, struct label *vlabel, struct label *intlabel); -#if 0 + void (*mpo_update_devfsdirent)(struct mount *mp, struct devnode *devfs_dirent, struct label *direntlabel, struct vnode *vp, struct label *vnodelabel); -#endif /* * Labeling event operations: IPC objects. ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/vnode.h#4 (text+ko) ==== ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/vnode_if.h#2 (text+ko) ==== @@ -1309,6 +1309,26 @@ return (VCALL(vp, VOFFSET(vop_cmap), &a)); } +struct vop_setlabel_args { + struct vnodeop_desc *a_desc; + struct vnode *a_vp; + struct label *a_vl; + struct ucred *a_cred; + struct proc *a_p; +}; +extern struct vnodeop_desc vop_setlabel_desc; +#define VOP_SETLABEL(vp, vl, cred, p) _VOP_SETLABEL(vp, vl, cred, p) +static __inline int _VOP_SETLABEL(struct vnode *vp, struct label *vl, struct ucred *cred, struct proc *p) +{ + struct vop_setlabel_args a; + a.a_desc = VDESC(vop_setlabel); + a.a_vp = vp; + a.a_vl = vl; + a.a_cred = cred; + a.a_p = p; + return (VCALL(vp, VOFFSET(vop_setlabel), &a)); +} + /* Special cases: */ #include #include ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_support.c#2 (text+ko) ==== @@ -245,6 +245,11 @@ return (EOPNOTSUPP); } +int +err_setlabel(struct vop_setlabel_args *ap) +{ + return (EOPNOTSUPP); +} struct vop_getattrlist_args /* { struct vnode *a_vp; ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_support.h#2 (text+ko) ==== @@ -80,6 +80,8 @@ extern int nop_setattr(struct vop_setattr_args *ap); extern int err_setattr(struct vop_setattr_args *ap); +extern int err_setlabel(struct vop_setlabel_args *ap); + extern int nop_getattrlist(struct vop_getattrlist_args *ap); extern int err_getattrlist(struct vop_getattrlist_args *ap); ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vnode_if.c#2 (text+ko) ==== @@ -1035,6 +1035,22 @@ NULL, }; +int vop_setlabel_vp_offsets[] = { + VOPARG_OFFSETOF(struct vop_setlabel_args,a_vp), + VDESC_NO_OFFSET +}; +struct vnodeop_desc vop_setlabel_desc = { + 0, + "vop_setlabel", + 0, + vop_setlabel_vp_offsets, + VDESC_NO_OFFSET, + VOPARG_OFFSETOF(struct vop_setlabel_args, a_cred), + VOPARG_OFFSETOF(struct vop_setlabel_args, a_p), + VDESC_NO_OFFSET, + NULL, +}; + /* Special cases: */ int vop_strategy_vp_offsets[] = { @@ -1133,6 +1149,7 @@ &vop_blktooff_desc, &vop_offtoblk_desc, &vop_cmap_desc, + &vop_setlabel_desc, NULL }; ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vnode_if.src#2 (text+ko) ==== @@ -177,6 +177,7 @@ IN struct proc *p; }; + # #% getattrlist vp = = = # @@ -715,3 +716,12 @@ OUT void *poff; }; +# +#% setlabel vp L L L +# +vop_setlabel { + IN struct vnode *vp; + IN struct label *vl; + IN struct ucred *cred; + IN struct proc *p; +}; ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/sebsd.c#8 (text+ko) ==== @@ -2105,6 +2105,8 @@ .mpo_internalize_vnode_label = sebsd_internalize_vnode_label, .mpo_externalize_vnode_label = sebsd_externalize_vnode_label, + .mpo_relabel_vnode = sebsd_relabel_vnode, + /* Create Labels */ .mpo_create_cred = sebsd_create_cred, From owner-p4-projects@FreeBSD.ORG Fri Nov 7 06:26:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E913B16A4D0; Fri, 7 Nov 2003 06:26:52 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C1EC416A4CE for ; Fri, 7 Nov 2003 06:26:52 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B22F43FBD for ; Fri, 7 Nov 2003 06:26:51 -0800 (PST) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA7EQpXJ047982 for ; Fri, 7 Nov 2003 06:26:51 -0800 (PST) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA7EQphL047979 for perforce@freebsd.org; Fri, 7 Nov 2003 06:26:51 -0800 (PST) (envelope-from cvance@nailabs.com) Date: Fri, 7 Nov 2003 06:26:51 -0800 (PST) Message-Id: <200311071426.hA7EQphL047979@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 41640 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 14:26:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=41640 Change 41640 by cvance@cvance_osx_laptop on 2003/11/07 06:25:52 Add some stubbed out functions for extattrs: - thirteen new system calls - several new VOP calls - hfs_extattr.{c.h} stub implementations This commit is just to keep things from swaying too far out of sync, just about everything is '#if 0' and ENOTSUP. Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/conf/MASTER#5 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/conf/files#6 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/hfs/hfs_extattr.c#1 add .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/hfs/hfs_extattr.h#1 add .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/hfs/hfs_vnops.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/init_sysent.c#5 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/syscalls.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/malloc.h#5 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/vnode.h#5 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/vnode_if.h#3 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_syscalls.c#5 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_vnops.c#5 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vnode_if.c#3 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vnode_if.src#3 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/conf/MASTER#5 (text+ko) ==== @@ -161,6 +161,7 @@ # options FFS # Fast Filesystem Support # options HFS # HFS/HFS+ support # +options HFS_EXTATTR # hfs extended attribute support# options FIFO # fifo support # options UNION # union_fs support # options FDESC # fdesc_fs support # ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/conf/files#6 (text+ko) ==== @@ -412,6 +412,7 @@ bsd/hfs/hfs_encodinghint.c optional hfs bsd/hfs/hfs_encodings.c optional hfs bsd/hfs/hfs_endian.c optional hfs +bsd/hfs/hfs_extattr.c optional hfs bsd/hfs/hfs_link.c optional hfs bsd/hfs/hfs_lockf.c optional hfs bsd/hfs/hfs_lookup.c optional hfs ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/hfs/hfs_vnops.c#2 (text+ko) ==== @@ -3684,6 +3684,9 @@ int hfs_readdirattr(); /* in hfs_attrlist.c */ int hfs_inactive(); /* in hfs_cnode.c */ int hfs_reclaim(); /* in hfs_cnode.c */ +int hfs_getextattr(); /* in hfs_extattr.c */ +int hfs_setextattr(); /* in hfs_extattr.c */ +int hfs_deleteextattr();/* in hfs_extattr.c */ int (**hfs_vnodeop_p)(void *); @@ -3742,6 +3745,11 @@ { &vop_blktooff_desc, (VOPFUNC)hfs_blktooff }, /* blktooff */ { &vop_offtoblk_desc, (VOPFUNC)hfs_offtoblk }, /* offtoblk */ { &vop_cmap_desc, (VOPFUNC)hfs_cmap }, /* cmap */ +#ifdef HFS_EXTATTR + { &vop_getextattr_desc, (VOPFUNC)hfs_getextattr }, + { &vop_deleteextattr_desc, (VOPFUNC)hfs_deleteextattr }, + { &vop_setextattr_desc, (VOPFUNC)hfs_setextattr }, +#endif { NULL, (VOPFUNC)NULL } }; @@ -3800,6 +3808,11 @@ { &vop_copyfile_desc, (VOPFUNC)err_copyfile }, /* copyfile */ { &vop_blktooff_desc, (VOPFUNC)hfs_blktooff }, /* blktooff */ { &vop_offtoblk_desc, (VOPFUNC)hfs_offtoblk }, /* offtoblk */ +#ifdef HFS_EXTATTR + { &vop_getextattr_desc, (VOPFUNC)hfs_getextattr }, + { &vop_deleteextattr_desc, (VOPFUNC)hfs_deleteextattr }, + { &vop_setextattr_desc, (VOPFUNC)hfs_setextattr }, +#endif { (struct vnodeop_desc*)NULL, (VOPFUNC)NULL } }; struct vnodeopv_desc hfs_specop_opv_desc = @@ -3858,6 +3871,11 @@ { &vop_blktooff_desc, (VOPFUNC)hfs_blktooff }, /* blktooff */ { &vop_offtoblk_desc, (VOPFUNC)hfs_offtoblk }, /* offtoblk */ { &vop_cmap_desc, (VOPFUNC)hfs_cmap }, /* cmap */ +#ifdef HFS_EXTATTR + { &vop_getextattr_desc, (VOPFUNC)hfs_getextattr }, + { &vop_deleteextattr_desc, (VOPFUNC)hfs_deleteextattr }, + { &vop_setextattr_desc, (VOPFUNC)hfs_setextattr }, +#endif { (struct vnodeop_desc*)NULL, (VOPFUNC)NULL } }; struct vnodeopv_desc hfs_fifoop_opv_desc = ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/init_sysent.c#5 (text+ko) ==== @@ -311,6 +311,20 @@ int pthread_sigmask(); int __disable_threadsignal(); +int extattrctl(); +int extattr_set_file(); +int extattr_get_file(); +int extattr_delete_file(); +int extattr_set_fd(); +int extattr_get_fd(); +int extattr_delete_fd(); +int extattr_set_link(); +int extattr_get_link(); +int extattr_delete_link(); +int extattr_list_fd(); +int extattr_list_file(); +int extattr_list_link(); + #ifdef MAC int __mac_get_file(); int __mac_set_file(); @@ -749,6 +763,20 @@ syss(nosys,0), /* 346 */ syss(nosys,0), /* 347 */ syss(nosys,0), /* 348 */ - syss(nosys,0) /* 349 */ + syss(nosys,0), /* 349 */ + + syss(extattrctl,0), /* 350 */ + syss(extattr_set_file,0), /* 351 */ + syss(extattr_get_file,0), /* 352 */ + syss(extattr_delete_file,0), /* 353 */ + syss(extattr_set_fd,0), /* 354 */ + syss(extattr_get_fd,0), /* 355 */ + syss(extattr_delete_fd,0), /* 356 */ + syss(extattr_set_link,0), /* 357 */ + syss(extattr_get_link,0), /* 358 */ + syss(extattr_delete_link,0), /* 359 */ + syss(extattr_list_fd,0), /* 360 */ + syss(extattr_list_file,0), /* 361 */ + syss(extattr_list_link,0) /* 362 */ }; int nsysent = sizeof(sysent) / sizeof(sysent[0]); ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/syscalls.c#2 (text+ko) ==== @@ -371,5 +371,19 @@ "#346", /* 346 */ "#347", /* 347 */ "#348", /* 348 */ - "#349" /* 349 */ + "#349", /* 349 */ + + "extattrctl", /* 350 */ + "extattr_set_file", /* 351 */ + "extattr_get_file", /* 352 */ + "extattr_delete_file", /* 353 */ + "extattr_set_fd" /* 354 */ + "extattr_get_fd" /* 355 */ + "extattr_delete_fd" /* 356 */ + "extattr_set_link" /* 357 */ + "extattr_get_link" /* 358 */ + "extattr_delete_link" /* 359 */ + "extattr_list_fd" /* 360 */ + "extattr_list_file" /* 361 */ + "extattr_list_link" /* 362 */ }; ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/malloc.h#5 (text+ko) ==== @@ -170,7 +170,8 @@ #define M_MACPIPELABEL 93 #define M_MACTEMP 94 #define M_SBUF 95 -#define M_LAST 96 /* Must be last type + 1 */ +#define M_HFS_EXTATTR 96 +#define M_LAST 97 /* Must be last type + 1 */ /* Strings corresponding to types of memory */ /* Must be in synch with the #defines above */ @@ -271,6 +272,7 @@ "macpipelabel", /* 93 M_MACPIPELABEL */\ "mactemp", /* 94 M_MACTEMP */\ "sbuf", /* 95 M_SBUF */\ + "hfs extattr", /* 95 M_HFS_EXTATTR */\ } struct kmemstats { ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/vnode.h#5 (text+ko) ==== @@ -492,6 +492,12 @@ void insmntque __P((struct vnode *vp, struct mount *mp)); void vattr_null __P((struct vattr *vap)); int vcount __P((struct vnode *vp)); +int vn_extattr_get __P((struct vnode *vp, int ioflg, int attrnamespace, + const char *attrname, int *buflen, char *buf, struct proc *p)); +int vn_extattr_set __P((struct vnode *vp, int ioflg, int attrnamespace, + const char *attrname, int buflen, char *buf, struct proc *p)); +int vn_extattr_rm __P((struct vnode *vp, int ioflg, int attrnamespace, + const char *attrname, struct proc *p)); int vflush __P((struct mount *mp, struct vnode *skipvp, int flags)); int vget __P((struct vnode *vp, int lockflag, struct proc *p)); void vgone __P((struct vnode *vp)); ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/vnode_if.h#3 (text+ko) ==== @@ -1329,6 +1329,140 @@ return (VCALL(vp, VOFFSET(vop_setlabel), &a)); } +struct vop_closeextattr_args { + struct vnodeop_desc *a_desc; + struct vnode *a_vp; + int a_commit; + struct ucred *a_cred; + struct proc *a_p; +}; +extern struct vnodeop_desc vop_closeextattr_desc; +#define VOP_CLOSEEXTATTR(vp, commit, cred, p) _VOP_CLOSEEXTATTR(vp, commit, cred, p) +static __inline int _VOP_CLOSEEXTATTR(struct vnode *vp, int commit, struct ucred *cred, struct proc *p) +{ + struct vop_closeextattr_args a; + a.a_desc = VDESC(vop_closeextattr); + a.a_vp = vp; + a.a_commit = commit; + a.a_cred = cred; + a.a_p = p; + return (VCALL(vp, VOFFSET(vop_closeextattr), &a)); +} + +struct vop_getextattr_args { + struct vnodeop_desc *a_desc; + struct vnode *a_vp; + int a_attrnamespace; + const char *a_name; + struct uio *a_uio; + size_t *a_size; + struct ucred *a_cred; + struct proc *a_p; +}; +extern struct vnodeop_desc vop_getextattr_desc; +#define VOP_GETEXTATTR(vp, attrnamespace, name, uio, size, cred, p) _VOP_GETEXTATTR(vp, attrnamespace, name, uio, size, cred, p) +static __inline int _VOP_GETEXTATTR(struct vnode *vp, int attrnamespace, const char *name, struct uio *uio, size_t *size, struct ucred *cred, struct proc *p) +{ + struct vop_getextattr_args a; + a.a_desc = VDESC(vop_getextattr); + a.a_vp = vp; + a.a_attrnamespace = attrnamespace; + a.a_name = name; + a.a_uio = uio; + a.a_size = size; + a.a_cred = cred; + a.a_p = p; + return (VCALL(vp, VOFFSET(vop_getextattr), &a)); +} + +struct vop_listextattr_args { + struct vnodeop_desc *a_desc; + struct vnode *a_vp; + int a_attrnamespace; + struct uio *a_uio; + size_t *a_size; + struct ucred *a_cred; + struct proc *a_p; +}; +extern struct vnodeop_desc vop_listextattr_desc; +#define VOP_LISTEXTATTR(vp, attrnamespace, uio, size, cred, p) _VOP_LISTEXTATTR(vp, attrnamespace, uio, size, cred, p) +static __inline int _VOP_LISTEXTATTR(struct vnode *vp, int attrnamespace, struct uio *uio, size_t *size, struct ucred *cred, struct proc *p) +{ + struct vop_listextattr_args a; + a.a_desc = VDESC(vop_listextattr); + a.a_vp = vp; + a.a_attrnamespace = attrnamespace; + a.a_uio = uio; + a.a_size = size; + a.a_cred = cred; + a.a_p = p; + return (VCALL(vp, VOFFSET(vop_listextattr), &a)); +} + +struct vop_openextattr_args { + struct vnodeop_desc *a_desc; + struct vnode *a_vp; + struct ucred *a_cred; + struct proc *a_p; +}; +extern struct vnodeop_desc vop_openextattr_desc; +#define VOP_OPENEXTATTR(vp, cred, p) _VOP_OPENEXTATTR(vp, cred, p) +static __inline int _VOP_OPENEXTATTR(struct vnode *vp, struct ucred *cred, struct proc *p) +{ + struct vop_openextattr_args a; + a.a_desc = VDESC(vop_openextattr); + a.a_vp = vp; + a.a_cred = cred; + a.a_p = p; + return (VCALL(vp, VOFFSET(vop_openextattr), &a)); +} + +struct vop_deleteextattr_args { + struct vnodeop_desc *a_desc; + struct vnode *a_vp; + int a_attrnamespace; + const char *a_name; + struct ucred *a_cred; + struct proc *a_p; +}; +extern struct vnodeop_desc vop_deleteextattr_desc; +#define VOP_DELETEEXTATTR(vp, attrnamespace, name, cred, p) _VOP_DELETEEXTATTR(vp, attrnamespace, name, cred, p) +static __inline int _VOP_DELETEEXTATTR(struct vnode *vp, int attrnamespace, const char *name, struct ucred *cred, struct proc *p) +{ + struct vop_deleteextattr_args a; + a.a_desc = VDESC(vop_deleteextattr); + a.a_vp = vp; + a.a_attrnamespace = attrnamespace; + a.a_name = name; + a.a_cred = cred; + a.a_p = p; + return (VCALL(vp, VOFFSET(vop_deleteextattr), &a)); +} + +struct vop_setextattr_args { + struct vnodeop_desc *a_desc; + struct vnode *a_vp; + int a_attrnamespace; + const char *a_name; + struct uio *a_uio; + struct ucred *a_cred; + struct proc *a_p; +}; +extern struct vnodeop_desc vop_setextattr_desc; +#define VOP_SETEXTATTR(vp, attrnamespace, name, uio, cred, p) _VOP_SETEXTATTR(vp, attrnamespace, name, uio, cred, p) +static __inline int _VOP_SETEXTATTR(struct vnode *vp, int attrnamespace, const char *name, struct uio *uio, struct ucred *cred, struct proc *p) +{ + struct vop_setextattr_args a; + a.a_desc = VDESC(vop_setextattr); + a.a_vp = vp; + a.a_attrnamespace = attrnamespace; + a.a_name = name; + a.a_uio = uio; + a.a_cred = cred; + a.a_p = p; + return (VCALL(vp, VOFFSET(vop_setextattr), &a)); +} + /* Special cases: */ #include #include ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_syscalls.c#5 (text+ko) ==== @@ -3949,3 +3949,757 @@ return (error); } /* end of sync_internal call */ +/* + * Syscall to push extended attribute configuration information into the + * VFS. Accepts a path, which it converts to a mountpoint, as well as + * a command (int cmd), and attribute name and misc data. For now, the + * attribute name is left in userspace for consumption by the VFS_op. + * It will probably be changed to be copied into sysspace by the + * syscall in the future, once issues with various consumers of the + * attribute code have raised their hands. + * + * Currently this is used only by UFS Extended Attributes. + */ + +struct extattrctl_args { + char * path; + int cmd; + char * filename; + int attrnamespace; + char * attrname; +}; + +int +extattrctl(p, uap, retval) + struct proc *p; + register struct extattrctl_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct vnode *filename_vp; + struct nameidata nd; + struct mount *mp, *mp_writable; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + /* + * uap->attrname is not always defined. We check again later when we + * invoke the VFS call so as to pass in NULL there if needed. + */ + if (uap->attrname != NULL) { + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, + NULL); + if (error) + return (error); + } + + /* + * uap->filename is not always defined. If it is, grab a vnode lock, + * which VFS_EXTATTRCTL() will later release. + */ + filename_vp = NULL; + if (uap->filename != NULL) { + NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE, + uap->filename, td); + error = namei(&nd); + if (error) + return (error); + filename_vp = nd.ni_vp; + NDFREE(&nd, NDF_NO_VP_RELE | NDF_NO_VP_UNLOCK); + } + + /* uap->path is always defined. */ + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + error = namei(&nd); + if (error) { + if (filename_vp != NULL) + vput(filename_vp); + return (error); + } + mp = nd.ni_vp->v_mount; + error = vn_start_write(nd.ni_vp, &mp_writable, V_WAIT | PCATCH); + NDFREE(&nd, 0); + if (error) { + if (filename_vp != NULL) + vput(filename_vp); + return (error); + } + + error = VFS_EXTATTRCTL(mp, uap->cmd, filename_vp, uap->attrnamespace, + uap->attrname != NULL ? attrname : NULL, td); + + vn_finished_write(mp_writable); + /* + * VFS_EXTATTRCTL will have unlocked, but not de-ref'd, + * filename_vp, so vrele it if it is defined. + */ + if (filename_vp != NULL) + vrele(filename_vp); + return (error); +#endif +} + +/*- + * Set a named extended attribute on a file or directory + * + * Arguments: unlocked vnode "vp", attribute namespace "attrnamespace", + * kernelspace string pointer "attrname", userspace buffer + * pointer "data", buffer length "nbytes", thread "td". + * Returns: 0 on success, an error number otherwise + * Locks: none + * References: vp must be a valid reference for the duration of the call + */ +static int +extattr_set_vp(struct vnode *vp, int attrnamespace, const char *attrname, + void *data, size_t nbytes, struct proc *p) +{ + return (ENOTSUP); +#if 0 + struct mount *mp; + struct uio auio; + struct iovec aiov; + ssize_t cnt; + int error; + + error = vn_start_write(vp, &mp, V_WAIT | PCATCH); + if (error) + return (error); + VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + + aiov.iov_base = data; + aiov.iov_len = nbytes; + auio.uio_iov = &aiov; + auio.uio_iovcnt = 1; + auio.uio_offset = 0; + if (nbytes > INT_MAX) { + error = EINVAL; + goto done; + } + auio.uio_resid = nbytes; + auio.uio_rw = UIO_WRITE; + auio.uio_segflg = UIO_USERSPACE; + auio.uio_td = td; + cnt = nbytes; + +#ifdef MAC + error = mac_check_vnode_setextattr(td->td_ucred, vp, attrnamespace, + attrname, &auio); + if (error) + goto done; +#endif + + error = VOP_SETEXTATTR(vp, attrnamespace, attrname, &auio, + td->td_ucred, td); + cnt -= auio.uio_resid; + td->td_retval[0] = cnt; + +done: + VOP_UNLOCK(vp, 0, td); + vn_finished_write(mp); + return (error); +#endif +} + +struct extattr_set_fd_args { + int fd; + int attrnamespace; + char *attrname; + void *data; + size_t nbytes; +}; + +int +extattr_set_fd(p, uap, retval) + struct proc *p; + register struct extattr_set_fd_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct file *fp; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return (error); + + error = getvnode(td->td_proc->p_fd, uap->fd, &fp); + if (error) + return (error); + + error = extattr_set_vp(fp->f_vnode, uap->attrnamespace, + attrname, uap->data, uap->nbytes, td); + fdrop(fp, td); + + return (error); +#endif +} + +struct extattr_set_file_args { + char *path; + int attrnamespace; + char *attrname; + void *data; + size_t nbytes; +}; + +int +extattr_set_file(p, uap, retval) + struct proc *p; + register struct extattr_set_file_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct nameidata nd; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return (error); + + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + error = namei(&nd); + if (error) + return (error); + NDFREE(&nd, NDF_ONLY_PNBUF); + + error = extattr_set_vp(nd.ni_vp, uap->attrnamespace, attrname, + uap->data, uap->nbytes, td); + + vrele(nd.ni_vp); + return (error); +#endif +} + +struct extattr_set_link_args { + char *path; + int attrnamespace; + char *attrname; + void *data; + size_t nbytes; +}; + +int +extattr_set_link(p, uap, retval) + struct proc *p; + register struct extattr_set_link_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct nameidata nd; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return (error); + + NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, td); + error = namei(&nd); + if (error) + return (error); + NDFREE(&nd, NDF_ONLY_PNBUF); + + error = extattr_set_vp(nd.ni_vp, uap->attrnamespace, attrname, + uap->data, uap->nbytes, td); + + vrele(nd.ni_vp); + return (error); +#endif +} + +/*- + * Get a named extended attribute on a file or directory + * + * Arguments: unlocked vnode "vp", attribute namespace "attrnamespace", + * kernelspace string pointer "attrname", userspace buffer + * pointer "data", buffer length "nbytes", thread "td". + * Returns: 0 on success, an error number otherwise + * Locks: none + * References: vp must be a valid reference for the duration of the call + */ +static int +extattr_get_vp(struct vnode *vp, int attrnamespace, const char *attrname, + void *data, size_t nbytes, struct proc *p) +{ + return (ENOTSUP); +#if 0 + struct uio auio, *auiop; + struct iovec aiov; + ssize_t cnt; + size_t size, *sizep; + int error; + + /* + * XXX: Temporary API compatibility for applications that know + * about this hack ("" means list), but haven't been updated + * for the extattr_list_*() system calls yet. This will go + * away for FreeBSD 5.3. + */ + if (strlen(attrname) == 0) + return (extattr_list_vp(vp, attrnamespace, data, nbytes, td)); + + VOP_LEASE(vp, td, td->td_ucred, LEASE_READ); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + + /* + * Slightly unusual semantics: if the user provides a NULL data + * pointer, they don't want to receive the data, just the + * maximum read length. + */ + auiop = NULL; + sizep = NULL; + cnt = 0; + if (data != NULL) { + aiov.iov_base = data; + aiov.iov_len = nbytes; + auio.uio_iov = &aiov; + auio.uio_offset = 0; + if (nbytes > INT_MAX) { + error = EINVAL; + goto done; + } + auio.uio_resid = nbytes; + auio.uio_rw = UIO_READ; + auio.uio_segflg = UIO_USERSPACE; + auio.uio_td = td; + auiop = &auio; + cnt = nbytes; + } else + sizep = &size; + +#ifdef MAC + error = mac_check_vnode_getextattr(td->td_ucred, vp, attrnamespace, + attrname, &auio); + if (error) + goto done; +#endif + + error = VOP_GETEXTATTR(vp, attrnamespace, attrname, auiop, sizep, + td->td_ucred, td); + + if (auiop != NULL) { + cnt -= auio.uio_resid; + td->td_retval[0] = cnt; + } else + td->td_retval[0] = size; + +done: + VOP_UNLOCK(vp, 0, td); + return (error); +#endif +} + +struct extattr_get_fd_args { + int fd; + int attrnamespace; + char *attrname; + void *data; + size_t nbytes; +}; + +int +extattr_get_fd(p, uap, retval) + struct proc *p; + register struct extattr_get_fd_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct file *fp; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return (error); + + error = getvnode(td->td_proc->p_fd, uap->fd, &fp); + if (error) + return (error); + + error = extattr_get_vp(fp->f_vnode, uap->attrnamespace, + attrname, uap->data, uap->nbytes, td); + + fdrop(fp, td); + return (error); +#endif +} + +struct extattr_get_file_args { + char *path; + int attrnamespace; + char *attrname; + void *data; + size_t nbytes; +}; + +int +extattr_get_file(p, uap, retval) + struct proc *p; + register struct extattr_get_file_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct nameidata nd; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return (error); + + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + error = namei(&nd); + if (error) + return (error); + NDFREE(&nd, NDF_ONLY_PNBUF); + + error = extattr_get_vp(nd.ni_vp, uap->attrnamespace, attrname, + uap->data, uap->nbytes, td); + + vrele(nd.ni_vp); + return (error); +#endif +} + +struct extattr_get_link_args { + char *path; + int attrnamespace; + char *attrname; + void *data; + size_t nbytes; +}; + +int +extattr_get_link(p, uap, retval) + struct proc *p; + register struct extattr_get_link_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct nameidata nd; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return (error); + + NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, td); + error = namei(&nd); + if (error) + return (error); + NDFREE(&nd, NDF_ONLY_PNBUF); + + error = extattr_get_vp(nd.ni_vp, uap->attrnamespace, attrname, + uap->data, uap->nbytes, td); + + vrele(nd.ni_vp); + return (error); +#endif +} + +/* + * extattr_delete_vp(): Delete a named extended attribute on a file or + * directory + * + * Arguments: unlocked vnode "vp", attribute namespace "attrnamespace", + * kernelspace string pointer "attrname", proc "p" + * Returns: 0 on success, an error number otherwise + * Locks: none + * References: vp must be a valid reference for the duration of the call + */ +static int +extattr_delete_vp(struct vnode *vp, int attrnamespace, const char *attrname, + struct proc *p) +{ + return (ENOTSUP); +#if 0 + struct mount *mp; + int error; + + error = vn_start_write(vp, &mp, V_WAIT | PCATCH); + if (error) + return (error); + VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + +#ifdef MAC + error = mac_check_vnode_deleteextattr(td->td_ucred, vp, attrnamespace, + attrname); + if (error) + goto done; +#endif + + error = VOP_DELETEEXTATTR(vp, attrnamespace, attrname, td->td_ucred, + td); + if (error == EOPNOTSUPP) + error = VOP_SETEXTATTR(vp, attrnamespace, attrname, NULL, + td->td_ucred, td); +#ifdef MAC +done: +#endif + VOP_UNLOCK(vp, 0, td); + vn_finished_write(mp); + return (error); +#endif +} + +struct extattr_delete_fd_args { + int fd; + int attrnamespace; + char *attrname; +}; + +int +extattr_delete_fd(p, uap, retval) + struct proc *p; + register struct extattr_delete_fd_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct file *fp; + struct vnode *vp; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return (error); + + error = getvnode(td->td_proc->p_fd, uap->fd, &fp); + if (error) + return (error); + vp = fp->f_vnode; + + error = extattr_delete_vp(vp, uap->attrnamespace, attrname, td); + fdrop(fp, td); + return (error); +#endif +} + +struct extattr_delete_file_args { + char *path; + int attrnamespace; + char *attrname; +}; + +int +extattr_delete_file(p, uap, retval) + struct proc *p; + register struct extattr_delete_file_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct nameidata nd; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return(error); + + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + error = namei(&nd); + if (error) + return(error); + NDFREE(&nd, NDF_ONLY_PNBUF); + + error = extattr_delete_vp(nd.ni_vp, uap->attrnamespace, attrname, td); + vrele(nd.ni_vp); + return(error); +#endif +} + +struct extattr_delete_link_args { + char *path; + int attrnamespace; + char *attrname; +}; + +int +extattr_delete_link(p, uap, retval) + struct proc *p; + register struct extattr_delete_link_args *uap; + register_t *retval; +{ + return (ENOTSUP); +#if 0 + struct nameidata nd; + char attrname[EXTATTR_MAXNAMELEN]; + int error; + + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + if (error) + return(error); + + NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, td); + error = namei(&nd); + if (error) + return(error); + NDFREE(&nd, NDF_ONLY_PNBUF); + + error = extattr_delete_vp(nd.ni_vp, uap->attrnamespace, attrname, td); + vrele(nd.ni_vp); + return(error); +#endif +} + +/*- + * Retrieve a list of extended attributes on a file or directory. + * + * Arguments: unlocked vnode "vp", attribute namespace 'attrnamespace", + * userspace buffer pointer "data", buffer length "nbytes", + * thread "td". + * Returns: 0 on success, an error number otherwise + * Locks: none + * References: vp must be a valid reference for the duration of the call + */ +static int +extattr_list_vp(struct vnode *vp, int attrnamespace, void *data, + size_t nbytes, struct proc *p) +{ + return (ENOTSUP); +#if 0 + struct uio auio, *auiop; + size_t size, *sizep; + struct iovec aiov; + ssize_t cnt; + int error; + + VOP_LEASE(vp, td, td->td_ucred, LEASE_READ); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + + auiop = NULL; + sizep = NULL; + cnt = 0; + if (data != NULL) { + aiov.iov_base = data; + aiov.iov_len = nbytes; + auio.uio_iov = &aiov; + auio.uio_offset = 0; + if (nbytes > INT_MAX) { + error = EINVAL; + goto done; + } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Nov 7 11:52:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2608E16A4D0; Fri, 7 Nov 2003 11:52:53 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DB04116A4CE for ; Fri, 7 Nov 2003 11:52:52 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B124443FE5 for ; Fri, 7 Nov 2003 11:52:51 -0800 (PST) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA7JqpXJ070997 for ; Fri, 7 Nov 2003 11:52:51 -0800 (PST) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA7JqopY070993 for perforce@freebsd.org; Fri, 7 Nov 2003 11:52:50 -0800 (PST) (envelope-from cvance@nailabs.com) Date: Fri, 7 Nov 2003 11:52:50 -0800 (PST) Message-Id: <200311071952.hA7JqopY070993@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 41656 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 19:52:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=41656 Change 41656 by cvance@cvance_osx_laptop on 2003/11/07 11:52:29 add mac_check_vnode_deleteextattr and mac_check_vnode_listextattr entry points to the framework (they were recently added on FreeBSD) Add extattr syscall implementations (untested). I really wouldn't recommend using these yet, plus the filesystem-specific code is ENOTSUP Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#26 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/extattr.h#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac.h#7 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac_policy.h#6 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_syscalls.c#6 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/sebsd.c#10 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#26 (text+ko) ==== @@ -1697,6 +1697,21 @@ return (error); } +int +mac_check_vnode_deleteextattr(struct ucred *cred, struct vnode *vp, + int attrnamespace, const char *name) +{ + int error; + + ASSERT_VOP_LOCKED(vp, "mac_check_vnode_deleteextattr"); + + if (!mac_enforce_fs) + return (0); + + MAC_CHECK(check_vnode_deleteextattr, cred, vp, attrnamespace, name); + return (error); +} + #if 0 int mac_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, @@ -1783,6 +1798,21 @@ } int +mac_check_vnode_listextattr(struct ucred *cred, struct vnode *vp, + int attrnamespace) +{ + int error; + + ASSERT_VOP_LOCKED(vp, "mac_check_vnode_listextattrs"); + + if (!mac_enforce_fs) + return (0); + + MAC_CHECK(check_vnode_listextattr, cred, vp, attrnamespace); + return (error); +} + +int mac_check_vnode_lookup(struct ucred *cred, struct vnode *dvp, struct componentname *cnp) { ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/extattr.h#2 (text+ko) ==== @@ -40,7 +40,7 @@ #define EXTATTR_NAMESPACE_SYSTEM 0x00000002 #define EXTATTR_NAMESPACE_SYSTEM_STRING "system" -#ifdef _KERNEL +#ifdef KERNEL #define EXTATTR_MAXNAMELEN NAME_MAX struct thread; @@ -76,5 +76,5 @@ const char *_attrname, const void *_data, size_t _nbytes); __END_DECLS -#endif /* !_KERNEL */ +#endif /* !KERNEL */ #endif /* !_SYS_EXTATTR_H_ */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac.h#7 (text+ko) ==== @@ -287,6 +287,8 @@ struct componentname *cnp, struct vattr *vap); int mac_check_vnode_delete(struct ucred *cred, struct vnode *dvp, struct vnode *vp, struct componentname *cnp); +int mac_check_vnode_deleteextattr(struct ucred *cred, struct vnode *vp, + int attrnamespace, const char *name); #if 0 int mac_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, acl_type_t type); @@ -301,6 +303,8 @@ int attrnamespace, const char *name, struct uio *uio); int mac_check_vnode_link(struct ucred *cred, struct vnode *dvp, struct vnode *vp, struct componentname *cnp); +int mac_check_vnode_listextattr(struct ucred *cred, struct vnode *vp, + int attrnamespace); int mac_check_vnode_lookup(struct ucred *cred, struct vnode *dvp, struct componentname *cnp); int mac_check_vnode_mmap(struct ucred *cred, struct vnode *vp, ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac_policy.h#6 (text+ko) ==== @@ -393,6 +393,8 @@ struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp); + int (*mpo_check_vnode_deleteextattr)(struct ucred *cred, + struct vnode *vp, int attrnamespace, const char *name); #if 0 int (*mpo_check_vnode_deleteacl)(struct ucred *cred, struct vnode *vp, struct label *label, acl_type_t type); @@ -408,6 +410,8 @@ int (*mpo_check_vnode_link)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct vnode *vp, struct label *label, struct componentname *cnp); + int (*mpo_check_vnode_listextattr)(struct ucred *cred, + struct vnode *vp, int attrnamespace); int (*mpo_check_vnode_lookup)(struct ucred *cred, struct vnode *dvp, struct label *dlabel, struct componentname *cnp); ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_syscalls.c#6 (text+ko) ==== @@ -72,6 +72,7 @@ #include #include #include +#include #include #include #include @@ -2862,7 +2863,7 @@ # if (BYTE_ORDER != LITTLE_ENDIAN) if (vp->v_mount->mnt_maxsymlinklen <= 0) { error = VOP_READDIR(vp, &auio, fp->f_cred, &eofflag, - (int *)0, (u_long *)0); + (int *)0, (u_long **)0); fp->f_offset = auio.uio_offset; } else # endif @@ -2874,7 +2875,7 @@ MALLOC(dirbuf, caddr_t, uap->count, M_TEMP, M_WAITOK); kiov.iov_base = dirbuf; error = VOP_READDIR(vp, &kuio, fp->f_cred, &eofflag, - (int *)0, (u_long *)0); + (int *)0, (u_long **)0); fp->f_offset = kuio.uio_offset; if (error == 0) { readcnt = uap->count - kuio.uio_resid; @@ -3025,7 +3026,7 @@ if (error == 0) #endif error = VOP_READDIR(vp, &auio, fp->f_cred, &eofflag, - (int *)0, (u_long *)0); + (int *)0, (u_long **)0); fp->f_offset = auio.uio_offset; VOP_UNLOCK(vp, 0, p); if (error) @@ -3516,7 +3517,7 @@ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p); error = VOP_READDIRATTR (vp, &attributelist, &auio, actualcount, uap->options, &newstate, &eofflag, - &actualcount, ((u_long **)0), p->p_cred); + &actualcount, ((u_long **)0), p->p_ucred); VOP_UNLOCK(vp, 0, p); if (error) return (error); @@ -4001,7 +4002,7 @@ filename_vp = NULL; if (uap->filename != NULL) { NDINIT(&nd, LOOKUP, FOLLOW | LOCKLEAF, UIO_USERSPACE, - uap->filename, td); + uap->filename, p); error = namei(&nd); if (error) return (error); @@ -4010,7 +4011,7 @@ } /* uap->path is always defined. */ - NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) { if (filename_vp != NULL) @@ -4027,7 +4028,7 @@ } error = VFS_EXTATTRCTL(mp, uap->cmd, filename_vp, uap->attrnamespace, - uap->attrname != NULL ? attrname : NULL, td); + uap->attrname != NULL ? attrname : NULL, p); vn_finished_write(mp_writable); /* @@ -4052,21 +4053,16 @@ */ static int extattr_set_vp(struct vnode *vp, int attrnamespace, const char *attrname, - void *data, size_t nbytes, struct proc *p) + void *data, size_t nbytes, struct proc *p, register_t *retval) { - return (ENOTSUP); -#if 0 struct mount *mp; struct uio auio; struct iovec aiov; ssize_t cnt; int error; - error = vn_start_write(vp, &mp, V_WAIT | PCATCH); - if (error) - return (error); - VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + VOP_LEASE(vp, p, p->p_ucred, LEASE_WRITE); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p); aiov.iov_base = data; aiov.iov_len = nbytes; @@ -4080,26 +4076,24 @@ auio.uio_resid = nbytes; auio.uio_rw = UIO_WRITE; auio.uio_segflg = UIO_USERSPACE; - auio.uio_td = td; + auio.uio_procp = p; cnt = nbytes; #ifdef MAC - error = mac_check_vnode_setextattr(td->td_ucred, vp, attrnamespace, + error = mac_check_vnode_setextattr(p->p_ucred, vp, attrnamespace, attrname, &auio); if (error) goto done; #endif error = VOP_SETEXTATTR(vp, attrnamespace, attrname, &auio, - td->td_ucred, td); + p->p_ucred, p); cnt -= auio.uio_resid; - td->td_retval[0] = cnt; + *retval = cnt; done: - VOP_UNLOCK(vp, 0, td); - vn_finished_write(mp); + VOP_UNLOCK(vp, 0, p); return (error); -#endif } struct extattr_set_fd_args { @@ -4116,8 +4110,6 @@ register struct extattr_set_fd_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct file *fp; char attrname[EXTATTR_MAXNAMELEN]; int error; @@ -4126,16 +4118,14 @@ if (error) return (error); - error = getvnode(td->td_proc->p_fd, uap->fd, &fp); + error = getvnode(p, uap->fd, &fp); if (error) return (error); - error = extattr_set_vp(fp->f_vnode, uap->attrnamespace, - attrname, uap->data, uap->nbytes, td); - fdrop(fp, td); + error = extattr_set_vp((struct vnode *)fp->f_data, uap->attrnamespace, + attrname, uap->data, uap->nbytes, p, retval); return (error); -#endif } struct extattr_set_file_args { @@ -4152,8 +4142,6 @@ register struct extattr_set_file_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; int error; @@ -4162,18 +4150,16 @@ if (error) return (error); - NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) return (error); - NDFREE(&nd, NDF_ONLY_PNBUF); error = extattr_set_vp(nd.ni_vp, uap->attrnamespace, attrname, - uap->data, uap->nbytes, td); + uap->data, uap->nbytes, p, retval); vrele(nd.ni_vp); return (error); -#endif } struct extattr_set_link_args { @@ -4190,8 +4176,6 @@ register struct extattr_set_link_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; int error; @@ -4200,18 +4184,16 @@ if (error) return (error); - NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) return (error); - NDFREE(&nd, NDF_ONLY_PNBUF); error = extattr_set_vp(nd.ni_vp, uap->attrnamespace, attrname, - uap->data, uap->nbytes, td); + uap->data, uap->nbytes, p, retval); vrele(nd.ni_vp); return (error); -#endif } /*- @@ -4226,10 +4208,8 @@ */ static int extattr_get_vp(struct vnode *vp, int attrnamespace, const char *attrname, - void *data, size_t nbytes, struct proc *p) + void *data, size_t nbytes, struct proc *p, register_t *retval) { - return (ENOTSUP); -#if 0 struct uio auio, *auiop; struct iovec aiov; ssize_t cnt; @@ -4243,10 +4223,10 @@ * away for FreeBSD 5.3. */ if (strlen(attrname) == 0) - return (extattr_list_vp(vp, attrnamespace, data, nbytes, td)); + return (extattr_list_vp(vp, attrnamespace, data, nbytes, p, retval)); - VOP_LEASE(vp, td, td->td_ucred, LEASE_READ); - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + VOP_LEASE(vp, p, p->p_ucred, LEASE_READ); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p); /* * Slightly unusual semantics: if the user provides a NULL data @@ -4268,32 +4248,31 @@ auio.uio_resid = nbytes; auio.uio_rw = UIO_READ; auio.uio_segflg = UIO_USERSPACE; - auio.uio_td = td; + auio.uio_procp = p; auiop = &auio; cnt = nbytes; } else sizep = &size; #ifdef MAC - error = mac_check_vnode_getextattr(td->td_ucred, vp, attrnamespace, + error = mac_check_vnode_getextattr(p->p_ucred, vp, attrnamespace, attrname, &auio); if (error) goto done; #endif error = VOP_GETEXTATTR(vp, attrnamespace, attrname, auiop, sizep, - td->td_ucred, td); + p->p_ucred, p); if (auiop != NULL) { cnt -= auio.uio_resid; - td->td_retval[0] = cnt; + *retval = cnt; } else - td->td_retval[0] = size; + *retval = size; done: - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0, p); return (error); -#endif } struct extattr_get_fd_args { @@ -4310,8 +4289,6 @@ register struct extattr_get_fd_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct file *fp; char attrname[EXTATTR_MAXNAMELEN]; int error; @@ -4320,16 +4297,14 @@ if (error) return (error); - error = getvnode(td->td_proc->p_fd, uap->fd, &fp); + error = getvnode(p, uap->fd, &fp); if (error) return (error); - error = extattr_get_vp(fp->f_vnode, uap->attrnamespace, - attrname, uap->data, uap->nbytes, td); + error = extattr_get_vp((struct vnode *)fp->f_data, uap->attrnamespace, + attrname, uap->data, uap->nbytes, p, retval); - fdrop(fp, td); return (error); -#endif } struct extattr_get_file_args { @@ -4346,8 +4321,6 @@ register struct extattr_get_file_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; int error; @@ -4356,18 +4329,16 @@ if (error) return (error); - NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) return (error); - NDFREE(&nd, NDF_ONLY_PNBUF); error = extattr_get_vp(nd.ni_vp, uap->attrnamespace, attrname, - uap->data, uap->nbytes, td); + uap->data, uap->nbytes, p, retval); vrele(nd.ni_vp); return (error); -#endif } struct extattr_get_link_args { @@ -4384,8 +4355,6 @@ register struct extattr_get_link_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; int error; @@ -4394,18 +4363,16 @@ if (error) return (error); - NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) return (error); - NDFREE(&nd, NDF_ONLY_PNBUF); error = extattr_get_vp(nd.ni_vp, uap->attrnamespace, attrname, - uap->data, uap->nbytes, td); + uap->data, uap->nbytes, p, retval); vrele(nd.ni_vp); return (error); -#endif } /* @@ -4420,38 +4387,33 @@ */ static int extattr_delete_vp(struct vnode *vp, int attrnamespace, const char *attrname, - struct proc *p) + struct proc *p, register_t *retval) { - return (ENOTSUP); -#if 0 struct mount *mp; int error; - error = vn_start_write(vp, &mp, V_WAIT | PCATCH); if (error) return (error); - VOP_LEASE(vp, td, td->td_ucred, LEASE_WRITE); - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + VOP_LEASE(vp, p, p->p_ucred, LEASE_WRITE); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p); #ifdef MAC - error = mac_check_vnode_deleteextattr(td->td_ucred, vp, attrnamespace, + error = mac_check_vnode_deleteextattr(p->p_ucred, vp, attrnamespace, attrname); if (error) goto done; #endif - error = VOP_DELETEEXTATTR(vp, attrnamespace, attrname, td->td_ucred, - td); + error = VOP_DELETEEXTATTR(vp, attrnamespace, attrname, p->p_ucred, + p); if (error == EOPNOTSUPP) error = VOP_SETEXTATTR(vp, attrnamespace, attrname, NULL, - td->td_ucred, td); + p->p_ucred, p); #ifdef MAC done: #endif - VOP_UNLOCK(vp, 0, td); - vn_finished_write(mp); + VOP_UNLOCK(vp, 0, p); return (error); -#endif } struct extattr_delete_fd_args { @@ -4466,8 +4428,6 @@ register struct extattr_delete_fd_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct file *fp; struct vnode *vp; char attrname[EXTATTR_MAXNAMELEN]; @@ -4477,15 +4437,13 @@ if (error) return (error); - error = getvnode(td->td_proc->p_fd, uap->fd, &fp); + error = getvnode(p, uap->fd, &fp); if (error) return (error); - vp = fp->f_vnode; + vp = (struct vnode *)fp->f_data; - error = extattr_delete_vp(vp, uap->attrnamespace, attrname, td); - fdrop(fp, td); + error = extattr_delete_vp(vp, uap->attrnamespace, attrname, p, retval); return (error); -#endif } struct extattr_delete_file_args { @@ -4500,8 +4458,6 @@ register struct extattr_delete_file_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; int error; @@ -4510,16 +4466,15 @@ if (error) return(error); - NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) return(error); - NDFREE(&nd, NDF_ONLY_PNBUF); - error = extattr_delete_vp(nd.ni_vp, uap->attrnamespace, attrname, td); + error = extattr_delete_vp(nd.ni_vp, uap->attrnamespace, attrname, p, + retval); vrele(nd.ni_vp); return(error); -#endif } struct extattr_delete_link_args { @@ -4534,8 +4489,6 @@ register struct extattr_delete_link_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; int error; @@ -4544,16 +4497,15 @@ if (error) return(error); - NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) return(error); - NDFREE(&nd, NDF_ONLY_PNBUF); - error = extattr_delete_vp(nd.ni_vp, uap->attrnamespace, attrname, td); + error = extattr_delete_vp(nd.ni_vp, uap->attrnamespace, attrname, p, + retval); vrele(nd.ni_vp); return(error); -#endif } /*- @@ -4568,18 +4520,16 @@ */ static int extattr_list_vp(struct vnode *vp, int attrnamespace, void *data, - size_t nbytes, struct proc *p) + size_t nbytes, struct proc *p, register_t *retval) { - return (ENOTSUP); -#if 0 struct uio auio, *auiop; size_t size, *sizep; struct iovec aiov; ssize_t cnt; int error; - VOP_LEASE(vp, td, td->td_ucred, LEASE_READ); - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); + VOP_LEASE(vp, p, p->p_ucred, LEASE_READ); + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p); auiop = NULL; sizep = NULL; @@ -4596,31 +4546,30 @@ auio.uio_resid = nbytes; auio.uio_rw = UIO_READ; auio.uio_segflg = UIO_USERSPACE; - auio.uio_td = td; + auio.uio_procp = p; auiop = &auio; cnt = nbytes; } else sizep = &size; #ifdef MAC - error = mac_check_vnode_listextattr(td->td_ucred, vp, attrnamespace); + error = mac_check_vnode_listextattr(p->p_ucred, vp, attrnamespace); if (error) goto done; #endif error = VOP_LISTEXTATTR(vp, attrnamespace, auiop, sizep, - td->td_ucred, td); + p->p_ucred, p); if (auiop != NULL) { cnt -= auio.uio_resid; - td->td_retval[0] = cnt; + *retval = cnt; } else - td->td_retval[0] = size; + *retval = size; done: - VOP_UNLOCK(vp, 0, td); + VOP_UNLOCK(vp, 0, p); return (error); -#endif } @@ -4637,69 +4586,71 @@ register struct extattr_list_fd_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct file *fp; int error; - error = getvnode(td->td_proc->p_fd, uap->fd, &fp); + error = getvnode(p, uap->fd, &fp); if (error) return (error); - error = extattr_list_vp(fp->f_vnode, uap->attrnamespace, uap->data, - uap->nbytes, td); + error = extattr_list_vp((struct vnode *)fp->f_data, + uap->attrnamespace, uap->data, + uap->nbytes, p, retval); - fdrop(fp, td); return (error); -#endif } +struct extattr_list_file_args { + char *path; + int attrnamespace; + void *data; + size_t nbytes; +}; int extattr_list_file(p, uap, retval) struct proc *p; register struct extattr_list_file_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct nameidata nd; int error; - NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, FOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) return (error); - NDFREE(&nd, NDF_ONLY_PNBUF); error = extattr_list_vp(nd.ni_vp, uap->attrnamespace, uap->data, - uap->nbytes, td); + uap->nbytes, p, retval); vrele(nd.ni_vp); return (error); -#endif } +struct extattr_list_link_args { + char *path; + int attrnamespace; + void *data; + size_t nbytes; +}; + int extattr_list_link(p, uap, retval) struct proc *p; register struct extattr_list_link_args *uap; register_t *retval; { - return (ENOTSUP); -#if 0 struct nameidata nd; int error; - NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, td); + NDINIT(&nd, LOOKUP, NOFOLLOW, UIO_USERSPACE, uap->path, p); error = namei(&nd); if (error) return (error); - NDFREE(&nd, NDF_ONLY_PNBUF); error = extattr_list_vp(nd.ni_vp, uap->attrnamespace, uap->data, - uap->nbytes, td); + uap->nbytes, p, retval); vrele(nd.ni_vp); return (error); -#endif } ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/sebsd.c#10 (text+ko) ==== @@ -1196,6 +1196,7 @@ if (execlabel == NULL) { (void)security_transition_sid(task->sid, file->sid, SECCLASS_PROCESS, &newsid); +#if 0 int len; char *ts, *ns, *fs; security_sid_to_context (task->sid, &ts, &len); @@ -1205,6 +1206,7 @@ security_free_context (ts); security_free_context (fs); security_free_context (ns); +#endif } else { newsid = ((struct task_security_struct *) SLOT(execlabel))->sid; @@ -2319,6 +2321,8 @@ #endif #ifdef EXTATTR .mpo_check_vnode_getextattr = sebsd_check_vnode_getextattr, + .mpo_check_vnode_listextattr = NOT_IMPLEMENTED, + .mpo_check_vnode_deleteextattr = NOT_IMPLEMENTED, #endif .mpo_check_vnode_link = sebsd_check_vnode_link, .mpo_check_vnode_lookup = sebsd_check_vnode_lookup, From owner-p4-projects@FreeBSD.ORG Fri Nov 7 13:18:43 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1161516A4D0; Fri, 7 Nov 2003 13:18:43 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C63D316A4CE for ; Fri, 7 Nov 2003 13:18:42 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5BE6F43FB1 for ; Fri, 7 Nov 2003 13:18:41 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA7LIfXJ083291 for ; Fri, 7 Nov 2003 13:18:41 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA7LIe9k083288 for perforce@freebsd.org; Fri, 7 Nov 2003 13:18:40 -0800 (PST) (envelope-from sam@freebsd.org) Date: Fri, 7 Nov 2003 13:18:40 -0800 (PST) Message-Id: <200311072118.hA7LIe9k083288@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 Subject: PERFORCE change 41664 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 21:18:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=41664 Change 41664 by sam@sam_ebb on 2003/11/07 13:17:49 IFC Affected files ... .. //depot/projects/netperf/sys/boot/i386/btx/btxldr/btxldr.s#2 integrate .. //depot/projects/netperf/sys/conf/NOTES#18 integrate .. //depot/projects/netperf/sys/conf/files#22 integrate .. //depot/projects/netperf/sys/conf/options#18 integrate .. //depot/projects/netperf/sys/conf/options.i386#5 integrate .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/genfiles#2 integrate .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/genmsgcpyc.awk#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/genmsgcpyh.awk#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/sig_call.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/sig_coord.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/sig_party.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/sig_print.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/sig_reset.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/sig_uni.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/sig_unimsgcpy.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/sig_verify.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/uni.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/unidef.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/unimkmsg.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/unimsgcpy.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/unipriv.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/sig/unisig.h#1 branch .. //depot/projects/netperf/sys/dev/ata/atapi-cd.c#11 integrate .. //depot/projects/netperf/sys/dev/ciss/ciss.c#6 integrate .. //depot/projects/netperf/sys/dev/firewire/firewire.h#5 integrate .. //depot/projects/netperf/sys/dev/firewire/fwdev.c#5 integrate .. //depot/projects/netperf/sys/dev/firewire/fwmem.c#5 integrate .. //depot/projects/netperf/sys/dev/firewire/if_fwe.c#8 integrate .. //depot/projects/netperf/sys/dev/twe/twereg.h#3 integrate .. //depot/projects/netperf/sys/dev/xe/if_xe.c#7 integrate .. //depot/projects/netperf/sys/i386/acpica/madt.c#3 integrate .. //depot/projects/netperf/sys/ia64/ia64/unaligned.c#5 integrate .. //depot/projects/netperf/sys/kern/sched_ule.c#17 integrate .. //depot/projects/netperf/sys/kern/sys_pipe.c#10 integrate .. //depot/projects/netperf/sys/kern/sysv_msg.c#4 integrate .. //depot/projects/netperf/sys/kern/sysv_sem.c#4 integrate .. //depot/projects/netperf/sys/kern/sysv_shm.c#5 integrate .. //depot/projects/netperf/sys/modules/Makefile#9 integrate .. //depot/projects/netperf/sys/modules/netgraph/atm/Makefile#4 integrate .. //depot/projects/netperf/sys/modules/netgraph/atm/uni/Makefile#1 branch .. //depot/projects/netperf/sys/modules/udf_iconv/Makefile#1 branch .. //depot/projects/netperf/sys/netgraph/atm/ng_uni.h#1 branch .. //depot/projects/netperf/sys/netgraph/atm/uni/ng_uni.c#1 branch .. //depot/projects/netperf/sys/netgraph/atm/uni/ng_uni_cust.h#1 branch .. //depot/projects/netperf/sys/netinet/ip_input.c#20 integrate .. //depot/projects/netperf/sys/netinet6/ip6_output.c#23 integrate .. //depot/projects/netperf/sys/security/mac/mac_internal.h#4 integrate .. //depot/projects/netperf/sys/sys/proc.h#10 integrate Differences ... ==== //depot/projects/netperf/sys/boot/i386/btx/btxldr/btxldr.s#2 (text+ko) ==== @@ -13,7 +13,7 @@ # purpose. # -# $FreeBSD: src/sys/boot/i386/btx/btxldr/btxldr.s,v 1.12 2002/10/08 18:19:02 jhb Exp $ +# $FreeBSD: src/sys/boot/i386/btx/btxldr/btxldr.s,v 1.13 2003/11/06 21:33:17 jhb Exp $ # # Prototype BTX loader program, written in a couple of hours. The @@ -78,7 +78,7 @@ # # Relocate caller's arguments. # -ifdef('BTXLDR_VERBOSE',` +ifdef(`BTXLDR_VERBOSE',` movl $m_esp,%esi # Display movl %esp,%eax # caller call hexout # stack ==== //depot/projects/netperf/sys/conf/NOTES#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1186 2003/11/05 14:32:27 bde Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1187 2003/11/07 09:18:52 harti Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -456,6 +456,7 @@ options NGATM_ATMBASE options NGATM_SSCOP options NGATM_SSCFU +options NGATM_UNI device mn # Munich32x/Falc54 Nx64kbit/sec cards. device lmc # tulip based LanMedia WAN cards ==== //depot/projects/netperf/sys/conf/files#22 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.844 2003/11/05 06:38:14 scottl Exp $ +# $FreeBSD: src/sys/conf/files,v 1.845 2003/11/07 09:18:52 harti Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1383,6 +1383,15 @@ contrib/ngatm/netnatm/saal/saal_sscfu.c optional ngatm_sscfu netgraph/atm/sscop/ng_sscop.c optional ngatm_sscop contrib/ngatm/netnatm/saal/saal_sscop.c optional ngatm_sscop +netgraph/atm/uni/ng_uni.c optional ngatm_uni +contrib/ngatm/netnatm/sig/sig_call.c optional ngatm_uni +contrib/ngatm/netnatm/sig/sig_coord.c optional ngatm_uni +contrib/ngatm/netnatm/sig/sig_party.c optional ngatm_uni +contrib/ngatm/netnatm/sig/sig_print.c optional ngatm_uni +contrib/ngatm/netnatm/sig/sig_reset.c optional ngatm_uni +contrib/ngatm/netnatm/sig/sig_uni.c optional ngatm_uni +contrib/ngatm/netnatm/sig/sig_unimsgcpy.c optional ngatm_uni +contrib/ngatm/netnatm/sig/sig_verify.c optional ngatm_uni netgraph/ng_UI.c optional netgraph_UI netgraph/ng_async.c optional netgraph_async netgraph/ng_base.c optional netgraph ==== //depot/projects/netperf/sys/conf/options#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.424 2003/11/05 14:37:48 bde Exp $ +# $FreeBSD: src/sys/conf/options,v 1.425 2003/11/07 09:18:53 harti Exp $ # # On the handling of kernel options # @@ -406,6 +406,7 @@ NGATM_ATMBASE opt_netgraph.h NGATM_SSCOP opt_netgraph.h NGATM_SSCFU opt_netgraph.h +NGATM_UNI opt_netgraph.h # DRM options DRM_DEBUG opt_drm.h ==== //depot/projects/netperf/sys/conf/options.i386#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.i386,v 1.200 2003/11/03 22:45:54 jhb Exp $ +# $FreeBSD: src/sys/conf/options.i386,v 1.201 2003/11/07 15:14:53 bde Exp $ # Options specific to the i386 platform kernels AUTO_EOI_1 opt_auto_eoi.h @@ -38,15 +38,17 @@ CLK_USE_TSC_CALIBRATION opt_clock.h TIMER_FREQ opt_clock.h -NO_F00F_HACK opt_cpu.h +CPU_ATHLON_SSE_HACK opt_cpu.h +CPU_BLUELIGHTNING_3X opt_cpu.h CPU_BLUELIGHTNING_FPU_OP_CACHE opt_cpu.h -CPU_BLUELIGHTNING_3X opt_cpu.h CPU_BTB_EN opt_cpu.h CPU_CYRIX_NO_LOCK opt_cpu.h CPU_DIRECT_MAPPED_CACHE opt_cpu.h CPU_DISABLE_5X86_LSSER opt_cpu.h +CPU_DISABLE_CMPXCHG opt_global.h # XXX global, unlike other CPU_* +CPU_DISABLE_SSE opt_cpu.h CPU_ELAN opt_cpu.h -CPU_SOEKRIS opt_cpu.h +CPU_ENABLE_SSE opt_cpu.h CPU_FASTER_5X86_FPU opt_cpu.h CPU_GEODE opt_cpu.h CPU_I486_ON_386 opt_cpu.h @@ -55,20 +57,16 @@ CPU_LOOP_EN opt_cpu.h CPU_PPRO2CELERON opt_cpu.h CPU_RSTK_EN opt_cpu.h +CPU_SOEKRIS opt_cpu.h CPU_SUSP_HLT opt_cpu.h CPU_UPGRADE_HW_CACHE opt_cpu.h CPU_WT_ALLOC opt_cpu.h +CYRIX_CACHE_REALLY_WORKS opt_cpu.h CYRIX_CACHE_WORKS opt_cpu.h -CYRIX_CACHE_REALLY_WORKS opt_cpu.h +ELAN_PPS opt_cpu.h # XXX should be named CPU_* +ELAN_XTAL opt_cpu.h # XXX should be named CPU_* +NO_F00F_HACK opt_cpu.h NO_MEMORY_HOLE opt_cpu.h -CPU_ENABLE_SSE opt_cpu.h -CPU_ATHLON_SSE_HACK opt_cpu.h -CPU_DISABLE_SSE opt_cpu.h -CPU_DISABLE_CMPXCHG opt_global.h - -# Options for the AMD Elan CPU -ELAN_PPS opt_cpu.h -ELAN_XTAL opt_cpu.h # The CPU type affects the endian conversion functions all over the kernel. I386_CPU opt_global.h ==== //depot/projects/netperf/sys/contrib/ngatm/netnatm/genfiles#2 (text+ko) ==== @@ -11,5 +11,5 @@ awk -f ${SRC}msg/parseie.awk -f ${SRC}msg/genieh.awk ${SRC}msg/ie.def >${DST}msg/uni_ie.h awk -f ${SRC}msg/parsemsg.awk -f ${SRC}msg/genmsgc.awk ${SRC}msg/msg.def >${DST}msg/uni_msg.c awk -f ${SRC}msg/parsemsg.awk -f ${SRC}msg/genmsgh.awk ${SRC}msg/msg.def >${DST}msg/uni_msg.h -# awk -f ${SRC}msg/parsemsg.awk -f ${SRC}sig/genmsgcpyh.awk ${SRC}msg/msg.def >${DST}sig/unimsgcpy.h -# awk -f ${SRC}msg/parsemsg.awk -f ${SRC}sig/genmsgcpyc.awk ${SRC}msg/msg.def >${DST}sig/sig_unimsgcpy.c +awk -f ${SRC}msg/parsemsg.awk -f ${SRC}sig/genmsgcpyh.awk ${SRC}msg/msg.def >${DST}sig/unimsgcpy.h +awk -f ${SRC}msg/parsemsg.awk -f ${SRC}sig/genmsgcpyc.awk ${SRC}msg/msg.def >${DST}sig/sig_unimsgcpy.c ==== //depot/projects/netperf/sys/dev/ata/atapi-cd.c#11 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cd.c,v 1.151 2003/11/02 22:24:47 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cd.c,v 1.152 2003/11/07 08:31:09 sos Exp $"); #include "opt_ata.h" #include @@ -233,7 +233,6 @@ cdp->device = atadev; cdp->lun = ata_get_lun(&acd_lun_map); cdp->block_size = 2048; - cdp->disk_size = -1; /* hack for GEOM SOS */ cdp->slot = -1; cdp->changer_info = NULL; return cdp; @@ -1201,6 +1200,7 @@ return; cdp->device->flags &= ~ATA_D_MEDIA_CHANGED; + cdp->disk_size = -1; /* hack for GEOM SOS */ len = sizeof(struct ioc_toc_header) + sizeof(struct cd_toc_entry); ccb[0] = ATAPI_READ_TOC; ==== //depot/projects/netperf/sys/dev/ciss/ciss.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ciss/ciss.c,v 1.30 2003/10/15 18:52:44 ps Exp $ + * $FreeBSD: src/sys/dev/ciss/ciss.c,v 1.31 2003/11/07 03:01:48 ps Exp $ */ /* @@ -243,6 +243,7 @@ { 0x0e11, 0x4080, CISS_BOARD_SA5B, "Compaq Smart Array 5i" }, { 0x0e11, 0x4082, CISS_BOARD_SA5B, "Compaq Smart Array 532" }, { 0x0e11, 0x4083, CISS_BOARD_SA5B, "HP Smart Array 5312" }, + { 0x0e11, 0x4091, CISS_BOARD_SA5, "HP Smart Array 6i" }, { 0x0e11, 0x409A, CISS_BOARD_SA5, "HP Smart Array 641" }, { 0x0e11, 0x409B, CISS_BOARD_SA5, "HP Smart Array 642" }, { 0x0e11, 0x409C, CISS_BOARD_SA5, "HP Smart Array 6400" }, ==== //depot/projects/netperf/sys/dev/firewire/firewire.h#5 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/firewire.h,v 1.16 2003/10/02 04:06:55 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/firewire.h,v 1.17 2003/11/07 09:01:41 simokawa Exp $ * */ @@ -71,7 +71,7 @@ #define MAXREC(x) (2 << (x)) #define FWPMAX_S400 (2048 + 20) /* MAXREC plus space for control data */ -#define FWMAXQUEUE 64 +#define FWMAXQUEUE 128 #define FWLOCALBUS 0xffc0 ==== //depot/projects/netperf/sys/dev/firewire/fwdev.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/fwdev.c,v 1.34 2003/10/24 13:55:51 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/fwdev.c,v 1.35 2003/11/07 12:30:57 simokawa Exp $ * */ @@ -170,12 +170,12 @@ { int err = 0; + if (DEV_FWMEM(dev)) + return fwmem_open(dev, flags, fmt, td); + if (dev->si_drv1 != NULL) return (EBUSY); - if (DEV_FWMEM(dev)) - return fwmem_open(dev, flags, fmt, td); - #if __FreeBSD_version >= 500000 if ((dev->si_flags & SI_NAMED) == 0) { int unit = DEV2UNIT(dev); ==== //depot/projects/netperf/sys/dev/firewire/fwmem.c#5 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/firewire/fwmem.c,v 1.24 2003/10/23 01:55:03 simokawa Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/firewire/fwmem.c,v 1.25 2003/11/07 12:39:39 simokawa Exp $"); #include #include @@ -56,6 +56,7 @@ #include #include #include +#include #include #include @@ -77,6 +78,11 @@ #define MAXLEN (512 << fwmem_speed) +struct fwmem_softc { + struct fw_eui64 eui; + int refcount; +}; + static struct fw_xfer * fwmem_xfer_req( struct fw_device *fwdev, @@ -260,18 +266,25 @@ int fwmem_open (dev_t dev, int flags, int fmt, fw_proc *td) { - struct fw_eui64 *eui; + struct fwmem_softc *fms; - if (dev->si_drv1 != NULL) - return (EBUSY); - - eui = (struct fw_eui64 *)malloc(sizeof(struct fw_eui64), + if (dev->si_drv1 != NULL) { + if ((flags & FWRITE) != 0) + return (EBUSY); + fms = (struct fwmem_softc *)dev->si_drv1; + fms->refcount ++; + } else { + fms = (struct fwmem_softc *)malloc(sizeof(struct fwmem_softc), M_FW, M_WAITOK); - if (eui == NULL) - return ENOMEM; - bcopy(&fwmem_eui64, eui, sizeof(struct fw_eui64)); - dev->si_drv1 = (void *)eui; - dev->si_iosize_max = DFLTPHYS; + if (fms == NULL) + return ENOMEM; + bcopy(&fwmem_eui64, &fms->eui, sizeof(struct fw_eui64)); + dev->si_drv1 = (void *)fms; + dev->si_iosize_max = DFLTPHYS; + fms->refcount = 1; + } + if (fwmem_debug) + printf("%s: refcount=%d\n", __FUNCTION__, fms->refcount); return (0); } @@ -279,8 +292,16 @@ int fwmem_close (dev_t dev, int flags, int fmt, fw_proc *td) { - free(dev->si_drv1, M_FW); - dev->si_drv1 = NULL; + struct fwmem_softc *fms; + + fms = (struct fwmem_softc *)dev->si_drv1; + fms->refcount --; + if (fwmem_debug) + printf("%s: refcount=%d\n", __FUNCTION__, fms->refcount); + if (fms->refcount < 1) { + free(dev->si_drv1, M_FW); + dev->si_drv1 = NULL; + } return (0); } @@ -309,6 +330,7 @@ fwmem_strategy(struct bio *bp) { struct firewire_softc *sc; + struct fwmem_softc *fms; struct fw_device *fwdev; struct fw_xfer *xfer; dev_t dev; @@ -321,11 +343,12 @@ sc = devclass_get_softc(firewire_devclass, unit); s = splfw(); - fwdev = fw_noderesolve_eui64(sc->fc, (struct fw_eui64 *)dev->si_drv1); + fms = (struct fwmem_softc *)dev->si_drv1; + fwdev = fw_noderesolve_eui64(sc->fc, &fms->eui); if (fwdev == NULL) { if (fwmem_debug) printf("fwmem: no such device ID:%08x%08x\n", - fwmem_eui64.hi, fwmem_eui64.lo); + fms->eui.hi, fms->eui.lo); err = EINVAL; goto error; } @@ -375,13 +398,16 @@ int fwmem_ioctl (dev_t dev, u_long cmd, caddr_t data, int flag, fw_proc *td) { + struct fwmem_softc *fms; int err = 0; + + fms = (struct fwmem_softc *)dev->si_drv1; switch (cmd) { case FW_SDEUI64: - bcopy(data, dev->si_drv1, sizeof(struct fw_eui64)); + bcopy(data, &fms->eui, sizeof(struct fw_eui64)); break; case FW_GDEUI64: - bcopy(dev->si_drv1, data, sizeof(struct fw_eui64)); + bcopy(&fms->eui, data, sizeof(struct fw_eui64)); break; default: err = EINVAL; ==== //depot/projects/netperf/sys/dev/firewire/if_fwe.c#8 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/if_fwe.c,v 1.23 2003/11/06 04:19:15 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/if_fwe.c,v 1.24 2003/11/07 08:59:35 simokawa Exp $ */ #include "opt_inet.h" @@ -186,7 +186,12 @@ ifp = &fwe->fwe_if; ifp->if_softc = &fwe->eth_softc; +#if __FreeBSD_version >= 501113 if_initname(ifp, device_get_name(dev), unit); +#else + ifp->if_unit = unit; + ifp->if_name = "fwe"; +#endif ifp->if_init = fwe_init; ifp->if_output = ether_output; ifp->if_start = fwe_start; ==== //depot/projects/netperf/sys/dev/twe/twereg.h#3 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/twe/twereg.h,v 1.8 2003/08/05 19:55:21 ps Exp $ + * $FreeBSD: src/sys/dev/twe/twereg.h,v 1.9 2003/11/06 08:09:29 ps Exp $ */ /* @@ -160,7 +160,7 @@ { u_int32_t address; u_int32_t length; -} TWE_SG_Entry __packed; +} __packed TWE_SG_Entry; typedef struct { u_int8_t opcode:5; /* TWE_OP_INITCONNECTION */ @@ -173,7 +173,7 @@ u_int8_t flags; u_int16_t message_credits; u_int32_t response_queue_pointer; -} TWE_Command_INITCONNECTION __packed; +} __packed TWE_Command_INITCONNECTION; typedef struct { @@ -188,7 +188,7 @@ u_int16_t block_count; u_int32_t lba; TWE_SG_Entry sgl[TWE_MAX_SGL_LENGTH]; -} TWE_Command_IO __packed; +} __packed TWE_Command_IO; typedef struct { @@ -205,7 +205,7 @@ #define TWE_OP_HOTSWAP_ADD_CBOD 0x01 /* add CBOD to empty port */ #define TWE_OP_HOTSWAP_ADD_SPARE 0x02 /* add spare to empty port */ u_int8_t aport; -} TWE_Command_HOTSWAP __packed; +} __packed TWE_Command_HOTSWAP; typedef struct { @@ -223,7 +223,7 @@ u_int8_t feature_mode; u_int16_t all_units; u_int16_t persistence; -} TWE_Command_SETATAFEATURE __packed; +} __packed TWE_Command_SETATAFEATURE; typedef struct { @@ -236,7 +236,7 @@ u_int8_t status; u_int8_t flags; u_int16_t target_status; /* set low byte to target request's ID */ -} TWE_Command_CHECKSTATUS __packed; +} __packed TWE_Command_CHECKSTATUS; typedef struct { @@ -250,7 +250,7 @@ u_int8_t flags; u_int16_t param_count; TWE_SG_Entry sgl[TWE_MAX_SGL_LENGTH]; -} TWE_Command_PARAM __packed; +} __packed TWE_Command_PARAM; typedef struct { @@ -269,7 +269,7 @@ #define TWE_OP_REBUILDUNIT_STARTUNIT 5 /* rebuild src_unit (not supported) */ u_int8_t cs:1; /* request state change on src_unit */ u_int8_t logical_subunit; /* for RAID10 rebuild of logical subunit */ -} TWE_Command_REBUILDUNIT __packed; +} __packed TWE_Command_REBUILDUNIT; typedef struct { @@ -289,7 +289,7 @@ u_int8_t drive_head; u_int8_t command; TWE_SG_Entry sgl[TWE_MAX_ATA_SGL_LENGTH]; -} TWE_Command_ATA __packed; +} __packed TWE_Command_ATA; typedef struct { @@ -307,7 +307,7 @@ #define TWE_FLAGS_FATAL 0x03 #define TWE_FLAGS_PERCENTAGE (1<<8) /* bits 0-6 indicate completion percentage */ u_int16_t count; /* block count, parameter count, message credits */ -} TWE_Command_Generic __packed; +} __packed TWE_Command_Generic; /* command packet - must be TWE_ALIGNMENT aligned */ typedef union @@ -451,7 +451,7 @@ u_int8_t log_drv_num; /* must be zero for configuration == 0x0f */ u_int32_t start_lba; u_int32_t block_count; /* actual drive size if configuration == 0x0f, otherwise less DCB size */ -} TWE_Unit_Descriptor __packed; +} __packed TWE_Unit_Descriptor; typedef struct { @@ -459,7 +459,7 @@ u_int8_t res1; u_int8_t mirunit_status[4]; /* bitmap of functional subunits in each mirror */ u_int8_t res2[6]; -} TWE_Mirror_Descriptor __packed; +} __packed TWE_Mirror_Descriptor; typedef struct { @@ -480,7 +480,7 @@ u_int32_t start_lba; u_int32_t block_count; /* actual drive size if configuration == 0x0f, otherwise less DCB size */ TWE_Unit_Descriptor subunit[0]; /* subunit descriptors, in RAID10 mode is [mirunit][subunit] */ -} TWE_Array_Descriptor __packed; +} __packed TWE_Array_Descriptor; typedef struct { @@ -488,5 +488,5 @@ u_int8_t parameter_id; u_int8_t parameter_size_bytes; u_int8_t data[0]; -} TWE_Param __packed; +} __packed TWE_Param; ==== //depot/projects/netperf/sys/dev/xe/if_xe.c#7 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/xe/if_xe.c,v 1.43 2003/11/05 08:27:13 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/xe/if_xe.c,v 1.44 2003/11/06 08:54:43 rsm Exp $"); /* * Portions of this software were derived from Werner Koch's xirc2ps driver @@ -184,7 +184,9 @@ * Debugging functions */ static void xe_mii_dump (struct xe_softc *scp); -void xe_reg_dump (struct xe_softc *scp); +#if 0 +static void xe_reg_dump (struct xe_softc *scp); +#endif /* * Debug logging levels - set with hw.xe.debug sysctl @@ -206,13 +208,17 @@ #define DEVPRINTF(level, arg) if (xe_debug >= (level)) device_printf arg #define DPRINTF(level, arg) if (xe_debug >= (level)) printf arg #define XE_MII_DUMP(scp) if (xe_debug >= 3) xe_mii_dump(scp) +#if 0 #define XE_REG_DUMP(scp) if (xe_debug >= 3) xe_reg_dump(scp) +#endif #else #define DEVPRINTF(level, arg) #define DPRINTF(level, arg) #define XE_MII_DUMP(scp) +#if 0 #define XE_REG_DUMP(scp) #endif +#endif /* @@ -1828,6 +1834,7 @@ (void)splx(s); } +#if 0 void xe_reg_dump(struct xe_softc *scp) { int page, i, s; @@ -1865,6 +1872,7 @@ (void)splx(s); } +#endif int xe_activate(device_t dev) ==== //depot/projects/netperf/sys/i386/acpica/madt.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.3 2003/11/05 23:15:51 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/acpica/madt.c,v 1.4 2003/11/06 14:47:53 jhb Exp $"); #include #include @@ -541,7 +541,8 @@ &old_pin) != 0) printf("MADT: Could not find APIC for source IRQ %d\n", intr->Source); - else + else if (ioapic_get_vector(old_ioapic, old_pin) == + intr->Source) ioapic_disable_pin(old_ioapic, old_pin); } ioapic_set_triggermode(new_ioapic, new_pin, ==== //depot/projects/netperf/sys/ia64/ia64/unaligned.c#5 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/ia64/unaligned.c,v 1.7 2003/11/03 08:04:04 marcel Exp $ + * $FreeBSD: src/sys/ia64/ia64/unaligned.c,v 1.8 2003/11/06 04:26:40 marcel Exp $ */ #include @@ -74,12 +74,16 @@ greg_ptr(mcontext_t *mc, int gr) { uint64_t *p; + int bias, nslots; if (gr <= 0 || gr >= 32 + (mc->mc_special.cfm & 0x7f)) return (NULL); if (gr >= 32) { p = (void*)mc->mc_special.bspstore; - p += gr - 32; + nslots = (mc->mc_special.cfm & 0x7f) - gr + 32; + bias = (0x1f8 - (mc->mc_special.bspstore & 0x1f8)) >> 3; + nslots += (nslots + bias) / 63; + p -= nslots; gr = 0; } else if (gr >= 14) { p = &mc->mc_scratch.gr14; @@ -134,6 +138,13 @@ uint64_t postinc; switch (i->i_op) { + case ASM_OP_LD2: + copyin((void*)va, (void*)&buf.i, 2); + reg = greg_ptr(mc, (int)i->i_oper[1].o_value); + if (reg == NULL) + return (EINVAL); + wrreg(reg, buf.i & 0xffffU); + break; case ASM_OP_LD4: copyin((void*)va, (void*)&buf.i, 4); reg = greg_ptr(mc, (int)i->i_oper[1].o_value); @@ -155,6 +166,27 @@ return (EINVAL); spillfd((void*)&buf.d, reg); break; + case ASM_OP_ST2: + reg = greg_ptr(mc, (int)i->i_oper[2].o_value); + if (reg == NULL) + return (EINVAL); + buf.i = rdreg(reg); + copyout((void*)&buf.i, (void*)va, 2); + break; + case ASM_OP_ST4: + reg = greg_ptr(mc, (int)i->i_oper[2].o_value); + if (reg == NULL) + return (EINVAL); + buf.i = rdreg(reg); + copyout((void*)&buf.i, (void*)va, 4); + break; + case ASM_OP_ST8: + reg = greg_ptr(mc, (int)i->i_oper[2].o_value); + if (reg == NULL) + return (EINVAL); + buf.i = rdreg(reg); + copyout((void*)&buf.i, (void*)va, 8); + break; default: return (ENOENT); } ==== //depot/projects/netperf/sys/kern/sched_ule.c#17 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.79 2003/11/06 03:09:51 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.80 2003/11/06 07:56:01 jeff Exp $"); #include #include @@ -267,7 +267,7 @@ static struct kse *kseq_steal(struct kseq *kseq); #define KSE_CAN_MIGRATE(ke, class) \ ((class) != PRI_ITHD && (ke)->ke_thread->td_pinned == 0 && \ - (ke)->ke_flags & KEF_BOUND) == 0) + ((ke)->ke_flags & KEF_BOUND) == 0) #endif void ==== //depot/projects/netperf/sys/kern/sys_pipe.c#10 (text+ko) ==== @@ -66,7 +66,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sys_pipe.c,v 1.155 2003/11/03 17:58:23 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sys_pipe.c,v 1.157 2003/11/06 05:58:26 alc Exp $"); #include "opt_mac.h" @@ -222,13 +222,10 @@ struct mtx *pmtx; int fd, error; - pmtx = malloc(sizeof(*pmtx), M_TEMP, M_WAITOK | M_ZERO); - rpipe = wpipe = NULL; if (pipe_create(&rpipe) || pipe_create(&wpipe)) { pipeclose(rpipe); pipeclose(wpipe); - free(pmtx, M_TEMP); return (ENFILE); } @@ -239,7 +236,6 @@ if (error) { pipeclose(rpipe); pipeclose(wpipe); - free(pmtx, M_TEMP); return (error); } /* An extra reference on `rf' has been held for us by falloc(). */ @@ -269,7 +265,6 @@ fdrop(rf, td); /* rpipe has been closed by fdrop(). */ pipeclose(wpipe); - free(pmtx, M_TEMP); return (error); } /* An extra reference on `wf' has been held for us by falloc(). */ @@ -293,6 +288,7 @@ mac_init_pipe(rpipe); mac_create_pipe(td->td_ucred, rpipe); #endif + pmtx = malloc(sizeof(*pmtx), M_TEMP, M_WAITOK | M_ZERO); mtx_init(pmtx, "pipe mutex", NULL, MTX_DEF | MTX_RECURSE); rpipe->pipe_mtxp = wpipe->pipe_mtxp = pmtx; fdrop(rf, td); @@ -311,9 +307,8 @@ struct pipe *cpipe; int size; { - struct vm_object *object; caddr_t buffer; - int npages, error; + int error; static int curfail = 0; static struct timeval lastfail; @@ -321,26 +316,19 @@ ("pipespace: pipe mutex locked")); size = round_page(size); - npages = size / PAGE_SIZE; /* - * Create an object, I don't like the idea of paging to/from - * kernel_object. * XXX -- minor change needed here for NetBSD/OpenBSD VM systems. */ - object = vm_object_allocate(OBJT_DEFAULT, npages); buffer = (caddr_t) vm_map_min(pipe_map); /* - * Insert the object into the kernel map, and allocate kva for it. * The map entry is, by default, pageable. * XXX -- minor change needed here for NetBSD/OpenBSD VM systems. */ - error = vm_map_find(pipe_map, object, 0, + error = vm_map_find(pipe_map, NULL, 0, (vm_offset_t *) &buffer, size, 1, VM_PROT_ALL, VM_PROT_ALL, 0); - if (error != KERN_SUCCESS) { - vm_object_deallocate(object); if (ppsratecheck(&lastfail, &curfail, 1)) printf("kern.maxpipekva exceeded, please see tuning(7).\n"); return (ENOMEM); ==== //depot/projects/netperf/sys/kern/sysv_msg.c#4 (text+ko) ==== @@ -18,7 +18,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sysv_msg.c,v 1.51 2003/10/21 18:28:35 silby Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sysv_msg.c,v 1.52 2003/11/07 04:47:14 rwatson Exp $"); #include "opt_sysvipc.h" @@ -504,7 +504,7 @@ error = EEXIST; goto done2; } - if ((error = ipcperm(td, &msqptr->msg_perm, msgflg & 0700 ))) { + if ((error = ipcperm(td, &msqptr->msg_perm, msgflg & 0700))) { DPRINTF(("requester doesn't have 0%o access\n", msgflg & 0700)); goto done2; ==== //depot/projects/netperf/sys/kern/sysv_sem.c#4 (text+ko) ==== @@ -7,7 +7,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sysv_sem.c,v 1.64 2003/10/21 18:28:35 silby Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sysv_sem.c,v 1.65 2003/11/07 04:47:14 rwatson Exp $"); #include "opt_sysvipc.h" @@ -51,7 +51,7 @@ #endif static struct sem_undo *semu_alloc(struct thread *td); -static int semundo_adjust(struct thread *td, struct sem_undo **supptr, +static int semundo_adjust(struct thread *td, struct sem_undo **supptr, int semid, int semnum, int adjval); static void semundo_clear(int semid, int semnum); @@ -527,7 +527,7 @@ semaptr = &sema[semid]; sema_mtxp = &sema_mtx[semid]; mtx_lock(sema_mtxp); - if ((semaptr->sem_perm.mode & SEM_ALLOC) == 0 ) { + if ((semaptr->sem_perm.mode & SEM_ALLOC) == 0) { error = EINVAL; goto done2; } ==== //depot/projects/netperf/sys/kern/sysv_shm.c#5 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sysv_shm.c,v 1.88 2003/11/05 01:53:10 fjoe Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sysv_shm.c,v 1.89 2003/11/07 04:47:14 rwatson Exp $"); #include "opt_compat.h" #include "opt_sysvipc.h" @@ -395,7 +395,7 @@ return (error); } -int +int shmat(td, uap) struct thread *td; struct shmat_args *uap; ==== //depot/projects/netperf/sys/modules/Makefile#9 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/modules/Makefile,v 1.353 2003/11/03 22:44:09 jhb Exp $ +# $FreeBSD: src/sys/modules/Makefile,v 1.355 2003/11/07 09:38:05 scottl Exp $ .if !defined(NOCRYPT) || defined(ALL_MODULES) .if exists(${.CURDIR}/../opencrypto) @@ -137,6 +137,7 @@ ucom \ udbp \ udf \ + udf_iconv \ ufm \ uftdi \ ugen \ @@ -324,6 +325,10 @@ SUBDIR=${MODULES_OVERRIDE} .endif +# pcic -- currently broken and being worked on out of tree. +# oldcard -- specialized use for debugging only. +# owi -- totally unsupported for debugging only. + # Calling kldxref(8) for each module is expensive. .if !defined(NO_XREF) .MAKEFLAGS+= -DNO_XREF ==== //depot/projects/netperf/sys/modules/netgraph/atm/Makefile#4 (text+ko) ==== @@ -1,11 +1,12 @@ -# $FreeBSD: src/sys/modules/netgraph/atm/Makefile,v 1.3 2003/10/24 07:42:08 harti Exp $ +# $FreeBSD: src/sys/modules/netgraph/atm/Makefile,v 1.4 2003/11/07 09:15:14 harti Exp $ SUBDIR= \ atm \ atmbase \ atmpif \ sscfu \ - sscop + sscop \ + uni .include ==== //depot/projects/netperf/sys/netinet/ip_input.c#20 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ip_input.c 8.2 (Berkeley) 1/4/94 - * $FreeBSD: src/sys/netinet/ip_input.c,v 1.249 2003/11/04 16:02:01 ume Exp $ + * $FreeBSD: src/sys/netinet/ip_input.c,v 1.250 2003/11/07 01:47:52 sam Exp $ */ #include "opt_bootp.h" ==== //depot/projects/netperf/sys/netinet6/ip6_output.c#23 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/netinet6/ip6_output.c,v 1.66 2003/11/04 16:02:02 ume Exp $ */ +/* $FreeBSD: src/sys/netinet6/ip6_output.c,v 1.67 2003/11/06 16:42:59 ume Exp $ */ /* $KAME: ip6_output.c,v 1.279 2002/01/26 06:12:30 jinmei Exp $ */ /* @@ -2651,8 +2651,8 @@ /* * If the interface is specified, validate it. */ - if (mreq->ipv6mr_interface < 0 - || if_index < mreq->ipv6mr_interface) { + if (mreq->ipv6mr_interface < 0 || + if_index < mreq->ipv6mr_interface) { error = ENXIO; /* XXX EINVAL? */ break; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Nov 7 14:37:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3422316A4DD; Fri, 7 Nov 2003 14:37:33 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 01AB616A4D9 for ; Fri, 7 Nov 2003 14:37:33 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF07343FBD for ; Fri, 7 Nov 2003 14:37:21 -0800 (PST) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA7MbLXJ087809 for ; Fri, 7 Nov 2003 14:37:21 -0800 (PST) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA7MbJNk087805 for perforce@freebsd.org; Fri, 7 Nov 2003 14:37:19 -0800 (PST) (envelope-from jhb@freebsd.org) Date: Fri, 7 Nov 2003 14:37:19 -0800 (PST) Message-Id: <200311072237.hA7MbJNk087805@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 41669 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 22:37:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=41669 Change 41669 by jhb@jhb_laptop on 2003/11/07 14:37:08 IFC @41667. Affected files ... .. //depot/projects/smpng/sys/alpha/linux/linux_proto.h#8 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_syscall.h#6 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_sysent.c#6 integrate .. //depot/projects/smpng/sys/alpha/linux/syscalls.master#7 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_proto.h#4 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_syscall.h#3 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_sysent.c#3 integrate .. //depot/projects/smpng/sys/alpha/osf1/syscalls.master#3 integrate .. //depot/projects/smpng/sys/boot/i386/btx/btxldr/btxldr.s#3 integrate .. //depot/projects/smpng/sys/coda/coda_subr.c#11 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#3 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ipc.c#15 integrate .. //depot/projects/smpng/sys/compat/linux/linux_stats.c#15 integrate .. //depot/projects/smpng/sys/conf/NOTES#58 integrate .. //depot/projects/smpng/sys/conf/files#90 integrate .. //depot/projects/smpng/sys/conf/kern.mk#7 integrate .. //depot/projects/smpng/sys/conf/kern.pre.mk#25 integrate .. //depot/projects/smpng/sys/conf/kmod.mk#24 integrate .. //depot/projects/smpng/sys/conf/options#66 integrate .. //depot/projects/smpng/sys/conf/options.i386#33 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/dmresrc.c#5 integrate .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/genfiles#2 integrate .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/genmsgcpyc.awk#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/genmsgcpyh.awk#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/sig_call.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/sig_coord.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/sig_party.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/sig_print.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/sig_reset.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/sig_uni.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/sig_unimsgcpy.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/sig_verify.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/uni.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/unidef.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/unimkmsg.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/unimsgcpy.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/unipriv.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/sig/unisig.h#1 branch .. //depot/projects/smpng/sys/dev/ata/ata-raid.c#23 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.c#39 integrate .. //depot/projects/smpng/sys/dev/ciss/ciss.c#23 integrate .. //depot/projects/smpng/sys/dev/firewire/firewire.h#11 integrate .. //depot/projects/smpng/sys/dev/firewire/fwdev.c#13 integrate .. //depot/projects/smpng/sys/dev/firewire/fwmem.c#14 integrate .. //depot/projects/smpng/sys/dev/firewire/if_fwe.c#17 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm.c#11 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_intr.c#7 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_tx.c#7 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatmvar.h#6 integrate .. //depot/projects/smpng/sys/dev/twe/twereg.h#5 integrate .. //depot/projects/smpng/sys/dev/wi/if_wi.c#58 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe.c#12 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe_pccard.c#11 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_vfsops.c#24 integrate .. //depot/projects/smpng/sys/fs/udf/osta.c#3 integrate .. //depot/projects/smpng/sys/fs/udf/osta.h#2 integrate .. //depot/projects/smpng/sys/fs/udf/udf.h#4 integrate .. //depot/projects/smpng/sys/fs/udf/udf_iconv.c#1 branch .. //depot/projects/smpng/sys/fs/udf/udf_mount.h#3 branch .. //depot/projects/smpng/sys/fs/udf/udf_vfsops.c#12 integrate .. //depot/projects/smpng/sys/fs/udf/udf_vnops.c#14 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_vfsops.c#27 integrate .. //depot/projects/smpng/sys/i386/acpica/madt.c#2 integrate .. //depot/projects/smpng/sys/i386/i386/io_apic.c#2 integrate .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#56 integrate .. //depot/projects/smpng/sys/i386/i386/mptable.c#2 integrate .. //depot/projects/smpng/sys/i386/i386/nexus.c#10 integrate .. //depot/projects/smpng/sys/i386/include/bus_dma.h#9 integrate .. //depot/projects/smpng/sys/i386/linux/linux_proto.h#11 integrate .. //depot/projects/smpng/sys/i386/linux/linux_syscall.h#10 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysent.c#11 integrate .. //depot/projects/smpng/sys/i386/linux/syscalls.master#10 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_proto.h#9 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_syscall.h#9 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_sysent.c#9 integrate .. //depot/projects/smpng/sys/ia64/ia32/syscalls.master#12 integrate .. //depot/projects/smpng/sys/ia64/ia64/unaligned.c#7 integrate .. //depot/projects/smpng/sys/kern/init_sysent.c#34 integrate .. //depot/projects/smpng/sys/kern/kern_mac.c#30 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#20 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#29 integrate .. //depot/projects/smpng/sys/kern/sys_pipe.c#36 integrate .. //depot/projects/smpng/sys/kern/syscalls.c#34 integrate .. //depot/projects/smpng/sys/kern/syscalls.master#33 integrate .. //depot/projects/smpng/sys/kern/sysv_msg.c#21 integrate .. //depot/projects/smpng/sys/kern/sysv_sem.c#22 integrate .. //depot/projects/smpng/sys/kern/sysv_shm.c#20 integrate .. //depot/projects/smpng/sys/kern/vfs_default.c#24 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#19 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#61 integrate .. //depot/projects/smpng/sys/modules/Makefile#65 integrate .. //depot/projects/smpng/sys/modules/netgraph/atm/Makefile#4 integrate .. //depot/projects/smpng/sys/modules/netgraph/atm/uni/Makefile#1 branch .. //depot/projects/smpng/sys/modules/udf/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/udf_iconv/Makefile#1 branch .. //depot/projects/smpng/sys/net/netisr.c#5 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_ioctl.c#6 integrate .. //depot/projects/smpng/sys/netgraph/atm/ng_uni.h#1 branch .. //depot/projects/smpng/sys/netgraph/atm/uni/ng_uni.c#1 branch .. //depot/projects/smpng/sys/netgraph/atm/uni/ng_uni_cust.h#1 branch .. //depot/projects/smpng/sys/netgraph/ng_base.c#17 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#21 integrate .. //depot/projects/smpng/sys/netinet/ip_input.c#42 integrate .. //depot/projects/smpng/sys/netinet6/in6.c#15 integrate .. //depot/projects/smpng/sys/netinet6/in6.h#13 integrate .. //depot/projects/smpng/sys/netinet6/in6_pcb.h#7 integrate .. //depot/projects/smpng/sys/netinet6/in6_proto.c#6 integrate .. //depot/projects/smpng/sys/netinet6/in6_src.c#13 integrate .. //depot/projects/smpng/sys/netinet6/ip6_output.c#21 integrate .. //depot/projects/smpng/sys/netinet6/ip6_var.h#10 integrate .. //depot/projects/smpng/sys/netinet6/ipsec.c#12 integrate .. //depot/projects/smpng/sys/netinet6/ipsec.h#7 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_subs.c#13 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vfsops.c#28 integrate .. //depot/projects/smpng/sys/pc98/conf/NOTES#14 integrate .. //depot/projects/smpng/sys/pc98/i386/busio.s#3 integrate .. //depot/projects/smpng/sys/pci/if_sk.c#23 integrate .. //depot/projects/smpng/sys/pci/if_skreg.h#3 integrate .. //depot/projects/smpng/sys/pci/if_xl.c#37 integrate .. //depot/projects/smpng/sys/security/mac/mac_internal.h#3 integrate .. //depot/projects/smpng/sys/security/mac/mac_net.c#3 integrate .. //depot/projects/smpng/sys/security/mac/mac_pipe.c#3 integrate .. //depot/projects/smpng/sys/security/mac/mac_process.c#3 integrate .. //depot/projects/smpng/sys/security/mac/mac_vfs.c#3 integrate .. //depot/projects/smpng/sys/sys/exec.h#4 integrate .. //depot/projects/smpng/sys/sys/iconv.h#6 integrate .. //depot/projects/smpng/sys/sys/mount.h#23 integrate .. //depot/projects/smpng/sys/sys/mutex.h#39 integrate .. //depot/projects/smpng/sys/sys/proc.h#103 integrate .. //depot/projects/smpng/sys/sys/sched.h#6 integrate .. //depot/projects/smpng/sys/sys/syscall.h#34 integrate .. //depot/projects/smpng/sys/sys/syscall.mk#34 integrate .. //depot/projects/smpng/sys/sys/syscallsubr.h#8 integrate .. //depot/projects/smpng/sys/sys/sysproto.h#36 integrate .. //depot/projects/smpng/sys/sys/vnode.h#38 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_snapshot.c#32 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#47 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_quota.c#23 integrate .. //depot/projects/smpng/sys/vm/vm_map.c#46 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/linux/linux_proto.h#8 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.12 2003/02/16 02:32:17 tjr Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.52 2003/02/16 02:31:05 tjr Exp + * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.13 2003/11/07 21:13:08 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.53 2003/11/07 21:09:19 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -11,8 +11,12 @@ #include #include +#include +#include #include +#include + struct proc; struct thread; ==== //depot/projects/smpng/sys/alpha/linux/linux_syscall.h#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.10 2003/02/16 02:32:17 tjr Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.52 2003/02/16 02:31:05 tjr Exp + * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.11 2003/11/07 21:13:08 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.53 2003/11/07 21:09:19 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/smpng/sys/alpha/linux/linux_sysent.c#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.10 2003/02/16 02:32:17 tjr Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.52 2003/02/16 02:31:05 tjr Exp + * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.11 2003/11/07 21:13:08 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.53 2003/11/07 21:09:19 jhb Exp */ #include "opt_compat.h" @@ -20,10 +20,10 @@ { 0, (sy_call_t *)nosys }, /* 0 = */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit }, /* 1 = exit */ { SYF_MPSAFE | 0, (sy_call_t *)linux_fork }, /* 2 = linux_fork */ - { AS(read_args), (sy_call_t *)read }, /* 3 = read */ - { AS(write_args), (sy_call_t *)write }, /* 4 = write */ + { SYF_MPSAFE | AS(read_args), (sy_call_t *)read }, /* 3 = read */ + { SYF_MPSAFE | AS(write_args), (sy_call_t *)write }, /* 4 = write */ { 0, (sy_call_t *)nosys }, /* 5 = */ - { AS(close_args), (sy_call_t *)close }, /* 6 = close */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close }, /* 6 = close */ { AS(osf1_wait4_args), (sy_call_t *)osf1_wait4 }, /* 7 = osf1_wait4 */ { 0, (sy_call_t *)nosys }, /* 8 = */ { AS(linux_link_args), (sy_call_t *)linux_link }, /* 9 = linux_link */ @@ -40,10 +40,10 @@ { 0, (sy_call_t *)getpid }, /* 20 = getpid */ { 0, (sy_call_t *)nosys }, /* 21 = osf1_mount */ { AS(linux_umount_args), (sy_call_t *)linux_umount }, /* 22 = linux_umount */ - { AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */ - { 0, (sy_call_t *)getuid }, /* 24 = getuid */ + { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */ + { SYF_MPSAFE | 0, (sy_call_t *)getuid }, /* 24 = getuid */ { 0, (sy_call_t *)nosys }, /* 25 = */ - { 0, (sy_call_t *)linux_ptrace }, /* 26 = linux_ptrace */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ptrace }, /* 26 = linux_ptrace */ { 0, (sy_call_t *)nosys }, /* 27 = */ { 0, (sy_call_t *)nosys }, /* 28 = */ { 0, (sy_call_t *)nosys }, /* 29 = */ @@ -54,18 +54,18 @@ { 0, (sy_call_t *)nosys }, /* 34 = */ { 0, (sy_call_t *)nosys }, /* 35 = */ { 0, (sy_call_t *)sync }, /* 36 = sync */ - { AS(linux_kill_args), (sy_call_t *)linux_kill }, /* 37 = linux_kill */ + { SYF_MPSAFE | AS(linux_kill_args), (sy_call_t *)linux_kill }, /* 37 = linux_kill */ { 0, (sy_call_t *)nosys }, /* 38 = */ - { AS(setpgid_args), (sy_call_t *)setpgid }, /* 39 = setpgid */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 39 = setpgid */ { 0, (sy_call_t *)nosys }, /* 40 = */ - { AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ - { 0, (sy_call_t *)pipe }, /* 42 = pipe */ + { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ + { SYF_MPSAFE | 0, (sy_call_t *)pipe }, /* 42 = pipe */ { 0, (sy_call_t *)nosys }, /* 43 = osf_set_program_attributes */ { 0, (sy_call_t *)nosys }, /* 44 = */ { AS(linux_open_args), (sy_call_t *)linux_open }, /* 45 = linux_open */ { 0, (sy_call_t *)nosys }, /* 46 = */ - { 0, (sy_call_t *)getgid }, /* 47 = getgid */ - { AS(osf1_sigprocmask_args), (sy_call_t *)osf1_sigprocmask }, /* 48 = osf1_sigprocmask */ + { SYF_MPSAFE | 0, (sy_call_t *)getgid }, /* 47 = getgid */ + { SYF_MPSAFE | AS(osf1_sigprocmask_args), (sy_call_t *)osf1_sigprocmask }, /* 48 = osf1_sigprocmask */ { 0, (sy_call_t *)nosys }, /* 49 = */ { 0, (sy_call_t *)nosys }, /* 50 = */ { AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */ @@ -77,10 +77,10 @@ { AS(linux_symlink_args), (sy_call_t *)linux_symlink }, /* 57 = linux_symlink */ { AS(linux_readlink_args), (sy_call_t *)linux_readlink }, /* 58 = linux_readlink */ { AS(linux_execve_args), (sy_call_t *)linux_execve }, /* 59 = linux_execve */ - { AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ { 0, (sy_call_t *)nosys }, /* 62 = */ - { 0, (sy_call_t *)getpgrp }, /* 63 = getpgrp */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp }, /* 63 = getpgrp */ { 0, (sy_call_t *)linux_getpagesize }, /* 64 = linux_getpagesize */ { 0, (sy_call_t *)nosys }, /* 65 = */ { SYF_MPSAFE | 0, (sy_call_t *)linux_vfork }, /* 66 = linux_vfork */ @@ -96,10 +96,10 @@ { 0, (sy_call_t *)linux_vhangup }, /* 76 = linux_vhangup */ { 0, (sy_call_t *)nosys }, /* 77 = */ { 0, (sy_call_t *)nosys }, /* 78 = */ - { AS(linux_setgroups_args), (sy_call_t *)linux_setgroups }, /* 79 = linux_setgroups */ - { AS(linux_getgroups_args), (sy_call_t *)linux_getgroups }, /* 80 = linux_getgroups */ + { SYF_MPSAFE | AS(linux_setgroups_args), (sy_call_t *)linux_setgroups }, /* 79 = linux_setgroups */ + { SYF_MPSAFE | AS(linux_getgroups_args), (sy_call_t *)linux_getgroups }, /* 80 = linux_getgroups */ { 0, (sy_call_t *)nosys }, /* 81 = */ - { AS(setpgid_args), (sy_call_t *)setpgid }, /* 82 = setpgid */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 82 = setpgid */ { AS(osf1_setitimer_args), (sy_call_t *)osf1_setitimer }, /* 83 = osf1_setitimer */ { 0, (sy_call_t *)nosys }, /* 84 = */ { 0, (sy_call_t *)nosys }, /* 85 = */ @@ -107,20 +107,20 @@ { 0, (sy_call_t *)linux_gethostname }, /* 87 = linux_gethostname */ { SYF_MPSAFE | AS(sethostname_args), (sy_call_t *)osethostname }, /* 88 = osethostname */ { 0, (sy_call_t *)linux_getdtablesize }, /* 89 = linux_getdtablesize */ - { AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(linux_newfstat_args), (sy_call_t *)linux_newfstat }, /* 91 = linux_newfstat */ { AS(linux_fcntl_args), (sy_call_t *)linux_fcntl }, /* 92 = linux_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ - { AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ + { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ { AS(osf1_socket_args), (sy_call_t *)osf1_socket }, /* 97 = osf1_socket */ { AS(linux_connect_args), (sy_call_t *)linux_connect }, /* 98 = linux_connect */ { AS(accept_args), (sy_call_t *)oaccept }, /* 99 = accept */ { 0, (sy_call_t *)nosys }, /* 100 = osf_getpriority */ { AS(osend_args), (sy_call_t *)osend }, /* 101 = osend */ { AS(orecv_args), (sy_call_t *)orecv }, /* 102 = orecv */ - { AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn }, /* 103 = osf1_sigreturn */ + { SYF_MPSAFE | AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn }, /* 103 = osf1_sigreturn */ { AS(bind_args), (sy_call_t *)bind }, /* 104 = bind */ { AS(setsockopt_args), (sy_call_t *)setsockopt }, /* 105 = setsockopt */ { AS(listen_args), (sy_call_t *)listen }, /* 106 = listen */ @@ -128,12 +128,12 @@ { 0, (sy_call_t *)nosys }, /* 108 = */ { 0, (sy_call_t *)nosys }, /* 109 = */ { 0, (sy_call_t *)nosys }, /* 110 = */ - { AS(osf1_sigsuspend_args), (sy_call_t *)osf1_sigsuspend }, /* 111 = osf1_sigsuspend */ + { SYF_MPSAFE | AS(osf1_sigsuspend_args), (sy_call_t *)osf1_sigsuspend }, /* 111 = osf1_sigsuspend */ { 0, (sy_call_t *)nosys }, /* 112 = osf_sigstack */ { 0, (sy_call_t *)linux_recvmsg }, /* 113 = linux_recvmsg */ { 0, (sy_call_t *)linux_sendmsg }, /* 114 = linux_sendmsg */ { 0, (sy_call_t *)nosys }, /* 115 = */ - { AS(osf1_gettimeofday_args), (sy_call_t *)osf1_gettimeofday }, /* 116 = osf1_gettimeofday */ + { SYF_MPSAFE | AS(osf1_gettimeofday_args), (sy_call_t *)osf1_gettimeofday }, /* 116 = osf1_gettimeofday */ { AS(osf1_getrusage_args), (sy_call_t *)osf1_getrusage }, /* 117 = osf1_getrusage */ { AS(getsockopt_args), (sy_call_t *)getsockopt }, /* 118 = getsockopt */ { 0, (sy_call_t *)nosys }, /* 119 = */ @@ -143,13 +143,13 @@ { AS(fchown_args), (sy_call_t *)fchown }, /* 123 = fchown */ { AS(fchmod_args), (sy_call_t *)fchmod }, /* 124 = fchmod */ { AS(recvfrom_args), (sy_call_t *)orecvfrom }, /* 125 = recvfrom */ - { AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ - { AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ + { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ + { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ { AS(linux_rename_args), (sy_call_t *)linux_rename }, /* 128 = linux_rename */ { AS(linux_truncate_args), (sy_call_t *)linux_truncate }, /* 129 = linux_truncate */ { AS(oftruncate_args), (sy_call_t *)oftruncate }, /* 130 = oftruncate */ { AS(flock_args), (sy_call_t *)flock }, /* 131 = flock */ - { AS(setgid_args), (sy_call_t *)setgid }, /* 132 = setgid */ + { SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid }, /* 132 = setgid */ { AS(osf1_sendto_args), (sy_call_t *)osf1_sendto }, /* 133 = osf1_sendto */ { AS(shutdown_args), (sy_call_t *)shutdown }, /* 134 = shutdown */ { 0, (sy_call_t *)linux_socketpair }, /* 135 = linux_socketpair */ @@ -164,7 +164,7 @@ { AS(linux_getrlimit_args), (sy_call_t *)linux_getrlimit }, /* 144 = linux_getrlimit */ { AS(linux_setrlimit_args), (sy_call_t *)linux_setrlimit }, /* 145 = linux_setrlimit */ { 0, (sy_call_t *)nosys }, /* 146 = */ - { 0, (sy_call_t *)setsid }, /* 147 = setsid */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid }, /* 147 = setsid */ { 0, (sy_call_t *)linux_quotactl }, /* 148 = linux_quotactl */ { 0, (sy_call_t *)nosys }, /* 149 = */ { AS(getsockname_args), (sy_call_t *)ogetsockname }, /* 150 = getsockname */ @@ -173,7 +173,7 @@ { 0, (sy_call_t *)nosys }, /* 153 = */ { 0, (sy_call_t *)nosys }, /* 154 = */ { 0, (sy_call_t *)nosys }, /* 155 = */ - { AS(osf1_sigaction_args), (sy_call_t *)osf1_sigaction }, /* 156 = osf1_sigaction */ + { SYF_MPSAFE | AS(osf1_sigaction_args), (sy_call_t *)osf1_sigaction }, /* 156 = osf1_sigaction */ { 0, (sy_call_t *)nosys }, /* 157 = */ { 0, (sy_call_t *)nosys }, /* 158 = */ { 0, (sy_call_t *)nosys }, /* 159 = osf_getdirentries */ @@ -250,15 +250,15 @@ { 0, (sy_call_t *)nosys }, /* 230 = */ { 0, (sy_call_t *)nosys }, /* 231 = */ { 0, (sy_call_t *)nosys }, /* 232 = */ - { AS(getpgid_args), (sy_call_t *)getpgid }, /* 233 = getpgid */ - { AS(linux_getsid_args), (sy_call_t *)linux_getsid }, /* 234 = linux_getsid */ + { SYF_MPSAFE | AS(getpgid_args), (sy_call_t *)getpgid }, /* 233 = getpgid */ + { SYF_MPSAFE | AS(linux_getsid_args), (sy_call_t *)linux_getsid }, /* 234 = linux_getsid */ { 0, (sy_call_t *)linux_sigaltstack }, /* 235 = linux_sigaltstack */ { 0, (sy_call_t *)nosys }, /* 236 = */ { 0, (sy_call_t *)nosys }, /* 237 = */ { 0, (sy_call_t *)nosys }, /* 238 = */ { 0, (sy_call_t *)nosys }, /* 239 = */ { 0, (sy_call_t *)nosys }, /* 240 = */ - { AS(osf1_sysinfo_args), (sy_call_t *)osf1_sysinfo }, /* 241 = osf1_sysinfo */ + { SYF_MPSAFE | AS(osf1_sysinfo_args), (sy_call_t *)osf1_sysinfo }, /* 241 = osf1_sysinfo */ { 0, (sy_call_t *)nosys }, /* 242 = */ { 0, (sy_call_t *)nosys }, /* 243 = */ { 0, (sy_call_t *)nosys }, /* 244 = osf_proplist_syscall */ @@ -329,12 +329,12 @@ { 0, (sy_call_t *)linux_get_kernel_syms }, /* 309 = linux_get_kernel_syms */ { AS(linux_syslog_args), (sy_call_t *)linux_syslog }, /* 310 = linux_syslog */ { AS(linux_reboot_args), (sy_call_t *)linux_reboot }, /* 311 = linux_reboot */ - { AS(linux_clone_args), (sy_call_t *)linux_clone }, /* 312 = linux_clone */ + { SYF_MPSAFE | AS(linux_clone_args), (sy_call_t *)linux_clone }, /* 312 = linux_clone */ { AS(linux_uselib_args), (sy_call_t *)linux_uselib }, /* 313 = linux_uselib */ - { AS(mlock_args), (sy_call_t *)mlock }, /* 314 = mlock */ - { AS(munlock_args), (sy_call_t *)munlock }, /* 315 = munlock */ - { AS(mlockall_args), (sy_call_t *)mlockall }, /* 316 = mlockall */ - { 0, (sy_call_t *)munlockall }, /* 317 = munlockall */ + { SYF_MPSAFE | AS(mlock_args), (sy_call_t *)mlock }, /* 314 = mlock */ + { SYF_MPSAFE | AS(munlock_args), (sy_call_t *)munlock }, /* 315 = munlock */ + { SYF_MPSAFE | AS(mlockall_args), (sy_call_t *)mlockall }, /* 316 = mlockall */ + { SYF_MPSAFE | 0, (sy_call_t *)munlockall }, /* 317 = munlockall */ { 0, (sy_call_t *)linux_sysinfo }, /* 318 = linux_sysinfo */ { AS(linux_sysctl_args), (sy_call_t *)linux_sysctl }, /* 319 = linux_sysctl */ { 0, (sy_call_t *)nosys }, /* 320 = sys_idle */ @@ -347,21 +347,21 @@ { AS(linux_ustat_args), (sy_call_t *)linux_ustat }, /* 327 = linux_ustat */ { AS(linux_statfs_args), (sy_call_t *)linux_statfs }, /* 328 = linux_statfs */ { AS(linux_fstatfs_args), (sy_call_t *)linux_fstatfs }, /* 329 = linux_fstatfs */ - { AS(sched_setparam_args), (sy_call_t *)sched_setparam }, /* 330 = sched_setparam */ - { AS(sched_getparam_args), (sy_call_t *)sched_getparam }, /* 331 = sched_getparam */ - { AS(linux_sched_setscheduler_args), (sy_call_t *)linux_sched_setscheduler }, /* 332 = linux_sched_setscheduler */ - { AS(linux_sched_getscheduler_args), (sy_call_t *)linux_sched_getscheduler }, /* 333 = linux_sched_getscheduler */ + { SYF_MPSAFE | AS(sched_setparam_args), (sy_call_t *)sched_setparam }, /* 330 = sched_setparam */ + { SYF_MPSAFE | AS(sched_getparam_args), (sy_call_t *)sched_getparam }, /* 331 = sched_getparam */ + { SYF_MPSAFE | AS(linux_sched_setscheduler_args), (sy_call_t *)linux_sched_setscheduler }, /* 332 = linux_sched_setscheduler */ + { SYF_MPSAFE | AS(linux_sched_getscheduler_args), (sy_call_t *)linux_sched_getscheduler }, /* 333 = linux_sched_getscheduler */ { SYF_MPSAFE | 0, (sy_call_t *)sched_yield }, /* 334 = sched_yield */ - { AS(linux_sched_get_priority_max_args), (sy_call_t *)linux_sched_get_priority_max }, /* 335 = linux_sched_get_priority_max */ - { AS(linux_sched_get_priority_min_args), (sy_call_t *)linux_sched_get_priority_min }, /* 336 = linux_sched_get_priority_min */ + { SYF_MPSAFE | AS(linux_sched_get_priority_max_args), (sy_call_t *)linux_sched_get_priority_max }, /* 335 = linux_sched_get_priority_max */ + { SYF_MPSAFE | AS(linux_sched_get_priority_min_args), (sy_call_t *)linux_sched_get_priority_min }, /* 336 = linux_sched_get_priority_min */ { AS(sched_rr_get_interval_args), (sy_call_t *)sched_rr_get_interval }, /* 337 = sched_rr_get_interval */ { 0, (sy_call_t *)nosys }, /* 338 = sys_afs_syscall */ { AS(linux_newuname_args), (sy_call_t *)linux_newuname }, /* 339 = linux_newuname */ { SYF_MPSAFE | AS(nanosleep_args), (sy_call_t *)nanosleep }, /* 340 = nanosleep */ { AS(linux_mremap_args), (sy_call_t *)linux_mremap }, /* 341 = linux_mremap */ { 0, (sy_call_t *)linux_nfsservctl }, /* 342 = linux_nfsservctl */ - { AS(setresuid_args), (sy_call_t *)setresuid }, /* 343 = setresuid */ - { AS(getresuid_args), (sy_call_t *)getresuid }, /* 344 = getresuid */ + { SYF_MPSAFE | AS(setresuid_args), (sy_call_t *)setresuid }, /* 343 = setresuid */ + { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid }, /* 344 = getresuid */ { 0, (sy_call_t *)linux_pciconfig_read }, /* 345 = linux_pciconfig_read */ { 0, (sy_call_t *)linux_pciconfig_write }, /* 346 = linux_pciconfig_write */ { 0, (sy_call_t *)linux_query_module }, /* 347 = linux_query_module */ @@ -369,27 +369,27 @@ { AS(linux_pread_args), (sy_call_t *)linux_pread }, /* 349 = linux_pread */ { AS(linux_pwrite_args), (sy_call_t *)linux_pwrite }, /* 350 = linux_pwrite */ { 0, (sy_call_t *)linux_rt_sigreturn }, /* 351 = linux_rt_sigreturn */ - { AS(linux_rt_sigaction_args), (sy_call_t *)linux_rt_sigaction }, /* 352 = linux_rt_sigaction */ - { AS(linux_rt_sigprocmask_args), (sy_call_t *)linux_rt_sigprocmask }, /* 353 = linux_rt_sigprocmask */ + { SYF_MPSAFE | AS(linux_rt_sigaction_args), (sy_call_t *)linux_rt_sigaction }, /* 352 = linux_rt_sigaction */ + { SYF_MPSAFE | AS(linux_rt_sigprocmask_args), (sy_call_t *)linux_rt_sigprocmask }, /* 353 = linux_rt_sigprocmask */ { 0, (sy_call_t *)linux_rt_sigpending }, /* 354 = linux_rt_sigpending */ { 0, (sy_call_t *)linux_rt_sigtimedwait }, /* 355 = linux_rt_sigtimedwait */ { 0, (sy_call_t *)linux_rt_sigqueueinfo }, /* 356 = linux_rt_sigqueueinfo */ - { AS(linux_rt_sigsuspend_args), (sy_call_t *)linux_rt_sigsuspend }, /* 357 = linux_rt_sigsuspend */ + { SYF_MPSAFE | AS(linux_rt_sigsuspend_args), (sy_call_t *)linux_rt_sigsuspend }, /* 357 = linux_rt_sigsuspend */ { AS(linux_select_args), (sy_call_t *)linux_select }, /* 358 = linux_select */ - { AS(gettimeofday_args), (sy_call_t *)gettimeofday }, /* 359 = gettimeofday */ + { SYF_MPSAFE | AS(gettimeofday_args), (sy_call_t *)gettimeofday }, /* 359 = gettimeofday */ { SYF_MPSAFE | AS(settimeofday_args), (sy_call_t *)settimeofday }, /* 360 = settimeofday */ - { AS(linux_getitimer_args), (sy_call_t *)linux_getitimer }, /* 361 = linux_getitimer */ - { AS(linux_setitimer_args), (sy_call_t *)linux_setitimer }, /* 362 = linux_setitimer */ + { SYF_MPSAFE | AS(linux_getitimer_args), (sy_call_t *)linux_getitimer }, /* 361 = linux_getitimer */ + { SYF_MPSAFE | AS(linux_setitimer_args), (sy_call_t *)linux_setitimer }, /* 362 = linux_setitimer */ { AS(linux_utimes_args), (sy_call_t *)linux_utimes }, /* 363 = linux_utimes */ - { AS(getrusage_args), (sy_call_t *)getrusage }, /* 364 = getrusage */ + { SYF_MPSAFE | AS(getrusage_args), (sy_call_t *)getrusage }, /* 364 = getrusage */ { AS(linux_wait4_args), (sy_call_t *)linux_wait4 }, /* 365 = linux_wait4 */ { 0, (sy_call_t *)linux_adjtimex }, /* 366 = linux_adjtimex */ { AS(linux_getcwd_args), (sy_call_t *)linux_getcwd }, /* 367 = linux_getcwd */ { 0, (sy_call_t *)linux_capget }, /* 368 = linux_capget */ { 0, (sy_call_t *)linux_capset }, /* 369 = linux_capset */ { 0, (sy_call_t *)linux_sendfile }, /* 370 = linux_sendfile */ - { AS(setresgid_args), (sy_call_t *)setresgid }, /* 371 = setresgid */ - { AS(getresgid_args), (sy_call_t *)getresgid }, /* 372 = getresgid */ + { SYF_MPSAFE | AS(setresgid_args), (sy_call_t *)setresgid }, /* 371 = setresgid */ + { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid }, /* 372 = getresgid */ { 0, (sy_call_t *)nosys }, /* 373 = sys_dipc */ { AS(linux_pivot_root_args), (sy_call_t *)linux_pivot_root }, /* 374 = linux_pivot_root */ { AS(linux_mincore_args), (sy_call_t *)linux_mincore }, /* 375 = linux_mincore */ ==== //depot/projects/smpng/sys/alpha/linux/syscalls.master#7 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.52 2003/02/16 02:31:05 tjr Exp $ + $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.53 2003/11/07 21:09:19 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -40,10 +40,10 @@ 0 UNIMPL LINUX 1 MNOPROTO LINUX { void sys_exit(int rval); } exit sys_exit_args void 2 MSTD LINUX { int linux_fork(void); } -3 NOPROTO LINUX { int read(int fd, char *buf, u_int nbyte); } -4 NOPROTO LINUX { int write(int fd, char *buf, u_int nbyte); } +3 MNOPROTO LINUX { int read(int fd, char *buf, u_int nbyte); } +4 MNOPROTO LINUX { int write(int fd, char *buf, u_int nbyte); } 5 UNIMPL LINUX -6 NOPROTO LINUX { int close(int fd); } +6 MNOPROTO LINUX { int close(int fd); } 7 STD OSF1 { int osf1_wait4(int pid, int *status, int options, \ struct osf1_rusage *rusage); } 8 UNIMPL LINUX @@ -64,10 +64,10 @@ 20 NOPROTO BSD { int getpid(void); } 21 UNIMPL OSF1 osf1_mount 22 STD LINUX { int linux_umount(char *path, l_int flags); } -23 NOPROTO LINUX { int setuid(uid_t uid); } -24 NOPROTO BSD { int getuid(void); } +23 MNOPROTO LINUX { int setuid(uid_t uid); } +24 MNOPROTO BSD { int getuid(void); } 25 UNIMPL LINUX -26 STD LINUX { int linux_ptrace(void); } +26 MSTD LINUX { int linux_ptrace(void); } 27 UNIMPL LINUX 28 UNIMPL LINUX 29 UNIMPL LINUX @@ -78,19 +78,19 @@ 34 UNIMPL LINUX 35 UNIMPL LINUX 36 NOPROTO LINUX { int sync(void); } -37 STD LINUX { int linux_kill(l_int pid, l_int signum); } +37 MSTD LINUX { int linux_kill(l_int pid, l_int signum); } 38 UNIMPL LINUX -39 NOPROTO LINUX { int setpgid(int pid, int pgid); } +39 MNOPROTO LINUX { int setpgid(int pid, int pgid); } 40 UNIMPL LINUX -41 NOPROTO LINUX { int dup(u_int fd); } -42 NOPROTO BSD { int pipe(void); } +41 MNOPROTO LINUX { int dup(u_int fd); } +42 MNOPROTO BSD { int pipe(void); } 43 UNIMPL OSF1 osf_set_program_attributes 44 UNIMPL LINUX 45 STD LINUX { int linux_open(char *path, l_int flags, \ l_int mode); } 46 UNIMPL LINUX -47 NOPROTO BSD { int getgid(void); } -48 STD OSF1 { int osf1_sigprocmask(int how, u_long mask); } +47 MNOPROTO BSD { int getgid(void); } +48 MSTD OSF1 { int osf1_sigprocmask(int how, u_long mask); } 49 UNIMPL LINUX 50 UNIMPL LINUX 51 NOPROTO LINUX { int acct(char *path); } @@ -105,10 +105,10 @@ l_int count); } 59 STD LINUX { int linux_execve(char *path, char **argp, \ char **envp); } -60 NOPROTO LINUX { int umask(int newmask); } +60 MNOPROTO LINUX { int umask(int newmask); } 61 NOPROTO LINUX { int chroot(char *path); } 62 UNIMPL LINUX -63 NOPROTO LINUX { int getpgrp(void); } +63 MNOPROTO LINUX { int getpgrp(void); } 64 STD LINUX { int linux_getpagesize(void); } 65 UNIMPL LINUX 66 MSTD LINUX { int linux_vfork(void); } @@ -129,12 +129,12 @@ 76 STD LINUX { int linux_vhangup(void); } 77 UNIMPL LINUX 78 UNIMPL LINUX -79 STD LINUX { int linux_setgroups(l_int gidsetsize, \ +79 MSTD LINUX { int linux_setgroups(l_int gidsetsize, \ l_gid_t *grouplist); } -80 STD LINUX { int linux_getgroups(l_int gidsetsize, \ +80 MSTD LINUX { int linux_getgroups(l_int gidsetsize, \ l_gid_t *grouplist); } 81 UNIMPL LINUX -82 NODEF LINUX setpgid setpgid setpgid_args int +82 MNODEF LINUX setpgid setpgid setpgid_args int 83 STD OSF1 { int osf1_setitimer(u_int which, \ struct itimerval *itv, \ struct itimerval *oitv); } @@ -145,7 +145,7 @@ 88 MNOPROTO LINUX { int osethostname(char *hostname, u_int len); } \ osethostname sethostname_args int 89 STD LINUX { int linux_getdtablesize(void); } -90 NOPROTO LINUX { int dup2(u_int from, u_int to); } +90 MNOPROTO LINUX { int dup2(u_int from, u_int to); } 91 STD LINUX { int linux_newfstat(l_uint fd, \ struct l_newstat *buf); } 92 STD LINUX { int linux_fcntl(l_uint fd, l_uint cmd, l_ulong arg); } @@ -154,7 +154,7 @@ 94 NOPROTO LINUX { int poll(struct pollfd*, unsigned int nfds, \ long timeout); } 95 NOPROTO LINUX { int fsync(int fd); } -96 NOPROTO LINUX { int setpriority(int which, int who, int prio); } +96 MNOPROTO LINUX { int setpriority(int which, int who, int prio); } 97 STD LINUX { int osf1_socket(int domain, int type, \ int protocol); } 98 STD LINUX { int linux_connect(l_int s, struct l_sockaddr *name, \ @@ -164,7 +164,7 @@ 100 UNIMPL OSF1 osf_getpriority 101 NOPROTO LINUX { int osend(int s, caddr_t buf, int len, int flags); } 102 NOPROTO LINUX { int orecv(int s, caddr_t buf, int len, int flags); } -103 STD LINUX { int osf1_sigreturn(struct osigcontext *sigcntxp); } +103 MSTD LINUX { int osf1_sigreturn(struct osigcontext *sigcntxp); } 104 NOPROTO LINUX { int bind(int s, caddr_t name, int namelen); } 105 NOPROTO LINUX { int setsockopt(int s, int level, int name, \ caddr_t val, int valsize); } @@ -173,12 +173,12 @@ 108 UNIMPL LINUX 109 UNIMPL LINUX 110 UNIMPL LINUX -111 STD LINUX { int osf1_sigsuspend(unsigned long ss); } +111 MSTD LINUX { int osf1_sigsuspend(unsigned long ss); } 112 UNIMPL OSF1 osf_sigstack 113 STD LINUX { int linux_recvmsg(void); } 114 STD LINUX { int linux_sendmsg(void); } 115 UNIMPL LINUX -116 STD OSF1 { int osf1_gettimeofday(struct timeval *tp, \ +116 MSTD OSF1 { int osf1_gettimeofday(struct timeval *tp, \ struct timezone *tzp); } 117 STD OSF1 { int osf1_getrusage(long who, void *rusage); } 118 NOPROTO LINUX { int getsockopt(int s, int level, int name, \ @@ -194,13 +194,13 @@ 125 NOPROTO LINUX { int orecvfrom(int s, caddr_t buf, size_t len, \ int flags, caddr_t from, int *fromlenaddr); } \ recvfrom recvfrom_args int -126 NOPROTO LINUX { int setreuid(int ruid, int euid); } -127 NOPROTO LINUX { int setregid(int rgid, int egid); } +126 MNOPROTO LINUX { int setreuid(int ruid, int euid); } +127 MNOPROTO LINUX { int setregid(int rgid, int egid); } 128 STD LINUX { int linux_rename(char *from, char *to); } 129 STD LINUX { int linux_truncate(char *path, l_ulong length); } 130 NOPROTO LINUX { int oftruncate(int fd, long length); } 131 NOPROTO LINUX { int flock(int fd, int how); } -132 NOPROTO LINUX { int setgid(gid_t gid); } +132 MNOPROTO LINUX { int setgid(gid_t gid); } 133 STD LINUX { int osf1_sendto(int s, caddr_t buf, size_t len, \ int flags, struct sockaddr *to, int tolen); } 134 NOPROTO LINUX { int shutdown(int s, int how); } @@ -218,7 +218,7 @@ 145 STD LINUX { int linux_setrlimit(l_uint resource, \ struct l_rlimit *rlim); } 146 UNIMPL LINUX -147 NOPROTO LINUX { int setsid(void); } +147 MNOPROTO LINUX { int setsid(void); } 148 STD LINUX { int linux_quotactl(void); } 149 UNIMPL LINUX 150 NOPROTO LINUX { int ogetsockname(int fdec, caddr_t asa, int *alen);} \ @@ -228,7 +228,7 @@ 153 UNIMPL LINUX 154 UNIMPL LINUX 155 UNIMPL LINUX -156 STD OSF1 { int osf1_sigaction(int sig, \ +156 MSTD OSF1 { int osf1_sigaction(int sig, \ struct osf1_sigaction *nsa, \ struct osf1_sigaction *osa); } 157 UNIMPL LINUX @@ -318,15 +318,15 @@ 230 UNIMPL LINUX 231 UNIMPL LINUX 232 UNIMPL LINUX -233 NOPROTO LINUX { int getpgid(int pid); } -234 STD LINUX { int linux_getsid(l_pid_t pid); } +233 MNOPROTO LINUX { int getpgid(int pid); } +234 MSTD LINUX { int linux_getsid(l_pid_t pid); } 235 STD LINUX { int linux_sigaltstack(void); } 236 UNIMPL LINUX 237 UNIMPL LINUX 238 UNIMPL LINUX 239 UNIMPL LINUX 240 UNIMPL LINUX -241 STD OSF1 { int osf1_sysinfo(int cmd, char *buf, long count); } +241 MSTD OSF1 { int osf1_sysinfo(int cmd, char *buf, long count); } 242 UNIMPL LINUX 243 UNIMPL LINUX 244 UNIMPL OSF1 osf_proplist_syscall @@ -404,12 +404,12 @@ 310 STD LINUX { int linux_syslog(l_int type, char *buf, l_int len); } 311 STD LINUX { int linux_reboot(l_int magic1, l_int magic2, \ l_uint cmd, void *arg); } -312 STD LINUX { int linux_clone(l_int flags, void *stack); } +312 MSTD LINUX { int linux_clone(l_int flags, void *stack); } 313 STD LINUX { int linux_uselib(char *library); } -314 NOPROTO BSD { int mlock(const void *addr, size_t len); } -315 NOPROTO BSD { int munlock(const void *addr, size_t len); } -316 NOPROTO BSD { int mlockall(int how); } -317 NOPROTO BSD { int munlockall(void); } +314 MNOPROTO BSD { int mlock(const void *addr, size_t len); } +315 MNOPROTO BSD { int munlock(const void *addr, size_t len); } +316 MNOPROTO BSD { int mlockall(int how); } +317 MNOPROTO BSD { int munlockall(void); } 318 STD LINUX { int linux_sysinfo(void); } 319 STD LINUX { int linux_sysctl(struct l___sysctl_args *args); } 320 UNIMPL LINUX sys_idle @@ -424,16 +424,16 @@ struct l_statfs_buf *buf); } 329 STD LINUX { int linux_fstatfs(l_uint fd, \ struct l_statfs_buf *buf); } -330 NOPROTO POSIX { int sched_setparam(pid_t pid, \ +330 MNOPROTO POSIX { int sched_setparam(pid_t pid, \ const struct sched_param *param); } -331 NOPROTO POSIX { int sched_getparam(pid_t pid, \ +331 MNOPROTO POSIX { int sched_getparam(pid_t pid, \ struct sched_param *param); } -332 STD POSIX { int linux_sched_setscheduler(l_pid_t pid, \ +332 MSTD POSIX { int linux_sched_setscheduler(l_pid_t pid, \ l_int policy, struct l_sched_param *param); } -333 STD POSIX { int linux_sched_getscheduler(l_pid_t pid); } +333 MSTD POSIX { int linux_sched_getscheduler(l_pid_t pid); } 334 MNOPROTO POSIX { int sched_yield(void); } -335 STD POSIX { int linux_sched_get_priority_max(l_int policy); } -336 STD POSIX { int linux_sched_get_priority_min (l_int policy); } +335 MSTD POSIX { int linux_sched_get_priority_max(l_int policy); } +336 MSTD POSIX { int linux_sched_get_priority_min (l_int policy); } 337 NOPROTO POSIX { int sched_rr_get_interval (pid_t pid, \ struct timespec *interval); } 338 UNIMPL LINUX sys_afs_syscall @@ -444,8 +444,8 @@ l_ulong new_len, l_ulong flags, \ l_ulong new_addr); } 342 STD LINUX { int linux_nfsservctl(void); } -343 NOPROTO LINUX { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } -344 NOPROTO LINUX { int getresuid(uid_t *ruid, uid_t *euid, \ +343 MNOPROTO LINUX { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } +344 MNOPROTO LINUX { int getresuid(uid_t *ruid, uid_t *euid, \ uid_t *suid); } 345 STD LINUX { int linux_pciconfig_read(void); } 346 STD LINUX { int linux_pciconfig_write(void); } @@ -456,32 +456,32 @@ 350 STD LINUX { int linux_pwrite(l_uint fd, char *buf, \ l_size_t nbyte, l_loff_t offset); } 351 STD LINUX { int linux_rt_sigreturn(void); } -352 STD LINUX { int linux_rt_sigaction(l_int sig, \ +352 MSTD LINUX { int linux_rt_sigaction(l_int sig, \ l_sigaction_t *act, l_sigaction_t *oact, \ l_size_t sigsetsize); } -353 STD LINUX { int linux_rt_sigprocmask(l_int how, \ +353 MSTD LINUX { int linux_rt_sigprocmask(l_int how, \ l_sigset_t *mask, l_sigset_t *omask, \ l_size_t sigsetsize); } 354 STD LINUX { int linux_rt_sigpending(void); } 355 STD LINUX { int linux_rt_sigtimedwait(void); } 356 STD LINUX { int linux_rt_sigqueueinfo(void); } -357 STD LINUX { int linux_rt_sigsuspend(l_sigset_t *newset, \ +357 MSTD LINUX { int linux_rt_sigsuspend(l_sigset_t *newset, \ l_size_t sigsetsize); } 358 STD LINUX { int linux_select(l_int nfds, l_fd_set *readfds, \ l_fd_set *writefds, l_fd_set *exceptfds, \ struct l_timeval *timeout); } -359 NOPROTO LINUX { int gettimeofday(struct timeval *tp, \ +359 MNOPROTO LINUX { int gettimeofday(struct timeval *tp, \ struct timezone *tzp); } 360 MNOPROTO LINUX { int settimeofday(struct timeval *tp, \ struct timezone *tzp); } -361 STD LINUX { int linux_getitimer(l_int which, \ +361 MSTD LINUX { int linux_getitimer(l_int which, \ struct l_itimerval *itv); } -362 STD LINUX { int linux_setitimer(l_int which, \ +362 MSTD LINUX { int linux_setitimer(l_int which, \ struct l_itimerval *itv, \ struct l_itimerval *oitv); } 363 STD LINUX { int linux_utimes(char *fname, \ struct l_timeval *times); } -364 NOPROTO LINUX { int getrusage(int who, struct rusage *rusage); } +364 MNOPROTO LINUX { int getrusage(int who, struct rusage *rusage); } 365 STD LINUX { int linux_wait4(l_pid_t pid, l_uint *status, \ l_int options, struct l_rusage *rusage); } 366 STD LINUX { int linux_adjtimex(void); } @@ -489,8 +489,8 @@ 368 STD LINUX { int linux_capget(void); } 369 STD LINUX { int linux_capset(void); } 370 STD LINUX { int linux_sendfile(void); } -371 NOPROTO LINUX { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } -372 NOPROTO LINUX { int getresgid(gid_t *rgid, gid_t *egid, \ +371 MNOPROTO LINUX { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } +372 MNOPROTO LINUX { int getresgid(gid_t *rgid, gid_t *egid, \ gid_t *sgid); } 373 UNIMPL LINUX sys_dipc 374 STD LINUX { int linux_pivot_root(char *new_root, \ ==== //depot/projects/smpng/sys/alpha/osf1/osf1_proto.h#4 (text+ko) ==== @@ -2,16 +2,20 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.6 2002/03/20 18:58:46 obrien Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.5 2001/09/01 19:36:47 dillon Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.7 2003/11/07 20:56:54 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.6 2003/11/07 20:56:31 jhb Exp */ #ifndef _OSF1_SYSPROTO_H_ #define _OSF1_SYSPROTO_H_ #include +#include +#include +#include +#include -#include +#include struct proc; @@ -360,6 +364,12 @@ #endif /* COMPAT_43 */ + +#ifdef COMPAT_FREEBSD4 + + +#endif /* COMPAT_FREEBSD4 */ + #undef PAD_ #undef PADL_ #undef PADR_ ==== //depot/projects/smpng/sys/alpha/osf1/osf1_syscall.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.5 2001/09/20 05:01:08 peter Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.5 2001/09/01 19:36:47 dillon Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.6 2003/11/07 20:56:54 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.6 2003/11/07 20:56:31 jhb Exp */ #define OSF1_SYS_nosys 0 ==== //depot/projects/smpng/sys/alpha/osf1/osf1_sysent.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.5 2001/09/20 05:01:08 peter Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.5 2001/09/01 19:36:47 dillon Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.6 2003/11/07 20:56:54 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.6 2003/11/07 20:56:31 jhb Exp */ #include "opt_compat.h" @@ -21,10 +21,10 @@ { 0, (sy_call_t *)nosys }, /* 0 = nosys */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit }, /* 1 = exit */ { SYF_MPSAFE | 0, (sy_call_t *)fork }, /* 2 = fork */ - { AS(read_args), (sy_call_t *)read }, /* 3 = read */ - { AS(write_args), (sy_call_t *)write }, /* 4 = write */ + { SYF_MPSAFE | AS(read_args), (sy_call_t *)read }, /* 3 = read */ + { SYF_MPSAFE | AS(write_args), (sy_call_t *)write }, /* 4 = write */ { 0, (sy_call_t *)nosys }, /* 5 = old open */ - { AS(close_args), (sy_call_t *)close }, /* 6 = close */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close }, /* 6 = close */ { AS(osf1_wait4_args), (sy_call_t *)osf1_wait4 }, /* 7 = osf1_wait4 */ { 0, (sy_call_t *)nosys }, /* 8 = old creat */ { AS(link_args), (sy_call_t *)link }, /* 9 = link */ @@ -38,11 +38,11 @@ { AS(obreak_args), (sy_call_t *)obreak }, /* 17 = obreak */ { AS(osf1_getfsstat_args), (sy_call_t *)osf1_getfsstat }, /* 18 = osf1_getfsstat */ { AS(osf1_lseek_args), (sy_call_t *)osf1_lseek }, /* 19 = osf1_lseek */ - { 0, (sy_call_t *)getpid }, /* 20 = getpid */ + { SYF_MPSAFE | 0, (sy_call_t *)getpid }, /* 20 = getpid */ { AS(osf1_mount_args), (sy_call_t *)osf1_mount }, /* 21 = osf1_mount */ { AS(osf1_unmount_args), (sy_call_t *)osf1_unmount }, /* 22 = osf1_unmount */ - { AS(osf1_setuid_args), (sy_call_t *)osf1_setuid }, /* 23 = osf1_setuid */ - { 0, (sy_call_t *)getuid }, /* 24 = getuid */ + { SYF_MPSAFE | AS(osf1_setuid_args), (sy_call_t *)osf1_setuid }, /* 23 = osf1_setuid */ + { SYF_MPSAFE | 0, (sy_call_t *)getuid }, /* 24 = getuid */ { 0, (sy_call_t *)nosys }, /* 25 = exec_with_loader */ { 0, (sy_call_t *)nosys }, /* 26 = ptrace */ { 0, (sy_call_t *)nosys }, /* 27 = recvmsg */ @@ -55,22 +55,22 @@ { 0, (sy_call_t *)nosys }, /* 34 = chflags */ { 0, (sy_call_t *)nosys }, /* 35 = fchflags */ { 0, (sy_call_t *)sync }, /* 36 = sync */ - { AS(osf1_kill_args), (sy_call_t *)osf1_kill }, /* 37 = osf1_kill */ + { SYF_MPSAFE | AS(osf1_kill_args), (sy_call_t *)osf1_kill }, /* 37 = osf1_kill */ { 0, (sy_call_t *)nosys }, /* 38 = old stat */ - { AS(setpgid_args), (sy_call_t *)setpgid }, /* 39 = setpgid */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 39 = setpgid */ { 0, (sy_call_t *)nosys }, /* 40 = old lstat */ - { AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ - { 0, (sy_call_t *)pipe }, /* 42 = pipe */ + { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ + { SYF_MPSAFE | 0, (sy_call_t *)pipe }, /* 42 = pipe */ { AS(osf1_set_program_attributes_args), (sy_call_t *)osf1_set_program_attributes }, /* 43 = osf1_set_program_attributes */ { 0, (sy_call_t *)nosys }, /* 44 = profil */ { AS(osf1_open_args), (sy_call_t *)osf1_open }, /* 45 = osf1_open */ { 0, (sy_call_t *)nosys }, /* 46 = obsolete sigaction */ - { 0, (sy_call_t *)getgid }, /* 47 = getgid */ - { AS(osf1_sigprocmask_args), (sy_call_t *)osf1_sigprocmask }, /* 48 = osf1_sigprocmask */ - { AS(getlogin_args), (sy_call_t *)getlogin }, /* 49 = getlogin */ - { AS(setlogin_args), (sy_call_t *)setlogin }, /* 50 = setlogin */ + { SYF_MPSAFE | 0, (sy_call_t *)getgid }, /* 47 = getgid */ + { SYF_MPSAFE | AS(osf1_sigprocmask_args), (sy_call_t *)osf1_sigprocmask }, /* 48 = osf1_sigprocmask */ + { SYF_MPSAFE | AS(getlogin_args), (sy_call_t *)getlogin }, /* 49 = getlogin */ + { SYF_MPSAFE | AS(setlogin_args), (sy_call_t *)setlogin }, /* 50 = setlogin */ { AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */ - { AS(osf1_sigpending_args), (sy_call_t *)osf1_sigpending }, /* 52 = osf1_sigpending */ + { SYF_MPSAFE | AS(osf1_sigpending_args), (sy_call_t *)osf1_sigpending }, /* 52 = osf1_sigpending */ { AS(osf1_classcntl_args), (sy_call_t *)osf1_classcntl }, /* 53 = osf1_classcntl */ { AS(osf1_ioctl_args), (sy_call_t *)osf1_ioctl }, /* 54 = osf1_ioctl */ { AS(osf1_reboot_args), (sy_call_t *)osf1_reboot }, /* 55 = osf1_reboot */ @@ -78,10 +78,10 @@ { AS(symlink_args), (sy_call_t *)symlink }, /* 57 = symlink */ { AS(readlink_args), (sy_call_t *)readlink }, /* 58 = readlink */ { AS(osf1_execve_args), (sy_call_t *)osf1_execve }, /* 59 = osf1_execve */ - { AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ { 0, (sy_call_t *)nosys }, /* 62 = old fstat */ - { 0, (sy_call_t *)getpgrp }, /* 63 = getpgrp */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp }, /* 63 = getpgrp */ { 0, (sy_call_t *)ogetpagesize }, /* 64 = ogetpagesize */ { 0, (sy_call_t *)nosys }, /* 65 = mremap */ { SYF_MPSAFE | 0, (sy_call_t *)vfork }, /* 66 = vfork */ @@ -97,31 +97,31 @@ { 0, (sy_call_t *)nosys }, /* 76 = old vhangup */ { 0, (sy_call_t *)nosys }, /* 77 = kmodcall */ { 0, (sy_call_t *)nosys }, /* 78 = mincore */ - { AS(getgroups_args), (sy_call_t *)getgroups }, /* 79 = getgroups */ - { AS(setgroups_args), (sy_call_t *)setgroups }, /* 80 = setgroups */ + { SYF_MPSAFE | AS(getgroups_args), (sy_call_t *)getgroups }, /* 79 = getgroups */ + { SYF_MPSAFE | AS(setgroups_args), (sy_call_t *)setgroups }, /* 80 = setgroups */ { 0, (sy_call_t *)nosys }, /* 81 = old getpgrp */ - { AS(osf1_setpgrp_args), (sy_call_t *)osf1_setpgrp }, /* 82 = osf1_setpgrp */ + { SYF_MPSAFE | AS(osf1_setpgrp_args), (sy_call_t *)osf1_setpgrp }, /* 82 = osf1_setpgrp */ { AS(osf1_setitimer_args), (sy_call_t *)osf1_setitimer }, /* 83 = osf1_setitimer */ { 0, (sy_call_t *)nosys }, /* 84 = old wait */ { AS(osf1_table_args), (sy_call_t *)osf1_table }, /* 85 = osf1_table */ { AS(osf1_getitimer_args), (sy_call_t *)osf1_getitimer }, /* 86 = osf1_getitimer */ { SYF_MPSAFE | AS(gethostname_args), (sy_call_t *)ogethostname }, /* 87 = ogethostname */ { SYF_MPSAFE | AS(sethostname_args), (sy_call_t *)osethostname }, /* 88 = osethostname */ - { 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ - { AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ + { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(osf1_fstat_args), (sy_call_t *)osf1_fstat }, /* 91 = osf1_fstat */ { AS(osf1_fcntl_args), (sy_call_t *)osf1_fcntl }, /* 92 = osf1_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ - { AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ + { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ { AS(osf1_socket_args), (sy_call_t *)osf1_socket }, /* 97 = osf1_socket */ { AS(connect_args), (sy_call_t *)connect }, /* 98 = connect */ { AS(accept_args), (sy_call_t *)oaccept }, /* 99 = oaccept */ - { AS(getpriority_args), (sy_call_t *)getpriority }, /* 100 = getpriority */ + { SYF_MPSAFE | AS(getpriority_args), (sy_call_t *)getpriority }, /* 100 = getpriority */ { AS(osend_args), (sy_call_t *)osend }, /* 101 = osend */ { AS(orecv_args), (sy_call_t *)orecv }, /* 102 = orecv */ - { AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn }, /* 103 = osf1_sigreturn */ + { SYF_MPSAFE | AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn }, /* 103 = osf1_sigreturn */ { AS(bind_args), (sy_call_t *)bind }, /* 104 = bind */ { AS(setsockopt_args), (sy_call_t *)setsockopt }, /* 105 = setsockopt */ { AS(listen_args), (sy_call_t *)listen }, /* 106 = listen */ @@ -129,8 +129,8 @@ { 0, (sy_call_t *)nosys }, /* 108 = old sigvec */ { 0, (sy_call_t *)nosys }, /* 109 = old sigblock */ { 0, (sy_call_t *)nosys }, /* 110 = old sigsetmask */ - { AS(osf1_sigsuspend_args), (sy_call_t *)osf1_sigsuspend }, /* 111 = osf1_sigsuspend */ - { AS(osf1_osigstack_args), (sy_call_t *)osf1_osigstack }, /* 112 = osf1_osigstack */ + { SYF_MPSAFE | AS(osf1_sigsuspend_args), (sy_call_t *)osf1_sigsuspend }, /* 111 = osf1_sigsuspend */ + { SYF_MPSAFE | AS(osf1_osigstack_args), (sy_call_t *)osf1_osigstack }, /* 112 = osf1_osigstack */ { 0, (sy_call_t *)nosys }, /* 113 = old recvmsg */ { 0, (sy_call_t *)nosys }, /* 114 = old sendmsg */ { 0, (sy_call_t *)nosys }, /* 115 = vtrace */ @@ -144,13 +144,13 @@ { AS(fchown_args), (sy_call_t *)fchown }, /* 123 = fchown */ { AS(fchmod_args), (sy_call_t *)fchmod }, /* 124 = fchmod */ { AS(recvfrom_args), (sy_call_t *)orecvfrom }, /* 125 = orecvfrom */ - { AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ - { AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ + { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ + { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ { AS(rename_args), (sy_call_t *)rename }, /* 128 = rename */ { AS(osf1_truncate_args), (sy_call_t *)osf1_truncate }, /* 129 = osf1_truncate */ { AS(osf1_ftruncate_args), (sy_call_t *)osf1_ftruncate }, /* 130 = osf1_ftruncate */ { AS(flock_args), (sy_call_t *)flock }, /* 131 = flock */ - { AS(osf1_setgid_args), (sy_call_t *)osf1_setgid }, /* 132 = osf1_setgid */ + { SYF_MPSAFE | AS(osf1_setgid_args), (sy_call_t *)osf1_setgid }, /* 132 = osf1_setgid */ { AS(osf1_sendto_args), (sy_call_t *)osf1_sendto }, /* 133 = osf1_sendto */ { AS(shutdown_args), (sy_call_t *)shutdown }, /* 134 = shutdown */ { 0, (sy_call_t *)nosys }, /* 135 = socketpair */ @@ -165,7 +165,7 @@ { AS(osf1_getrlimit_args), (sy_call_t *)osf1_getrlimit }, /* 144 = osf1_getrlimit */ { AS(osf1_setrlimit_args), (sy_call_t *)osf1_setrlimit }, /* 145 = osf1_setrlimit */ { 0, (sy_call_t *)nosys }, /* 146 = old killpg */ - { 0, (sy_call_t *)setsid }, /* 147 = setsid */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid }, /* 147 = setsid */ { 0, (sy_call_t *)nosys }, /* 148 = quotactl */ { SYF_MPSAFE | 0, (sy_call_t *)oquota }, /* 149 = oquota */ { AS(getsockname_args), (sy_call_t *)ogetsockname }, /* 150 = ogetsockname */ @@ -174,7 +174,7 @@ { 0, (sy_call_t *)nosys }, /* 153 = */ { 0, (sy_call_t *)nosys }, /* 154 = */ { 0, (sy_call_t *)nosys }, /* 155 = */ - { AS(osf1_sigaction_args), (sy_call_t *)osf1_sigaction }, /* 156 = osf1_sigaction */ + { SYF_MPSAFE | AS(osf1_sigaction_args), (sy_call_t *)osf1_sigaction }, /* 156 = osf1_sigaction */ { 0, (sy_call_t *)nosys }, /* 157 = */ { 0, (sy_call_t *)nosys }, /* 158 = nfssvc */ { AS(ogetdirentries_args), (sy_call_t *)ogetdirentries }, /* 159 = ogetdirentries */ @@ -218,25 +218,25 @@ { 0, (sy_call_t *)nosys }, /* 197 = */ { 0, (sy_call_t *)nosys }, /* 198 = */ { 0, (sy_call_t *)nosys }, /* 199 = swapon */ - { AS(msgctl_args), (sy_call_t *)msgctl }, /* 200 = msgctl */ - { AS(msgget_args), (sy_call_t *)msgget }, /* 201 = msgget */ - { AS(msgrcv_args), (sy_call_t *)msgrcv }, /* 202 = msgrcv */ - { AS(msgsnd_args), (sy_call_t *)msgsnd }, /* 203 = msgsnd */ - { AS(__semctl_args), (sy_call_t *)__semctl }, /* 204 = __semctl */ - { AS(semget_args), (sy_call_t *)semget }, /* 205 = semget */ - { AS(semop_args), (sy_call_t *)semop }, /* 206 = semop */ + { SYF_MPSAFE | AS(msgctl_args), (sy_call_t *)msgctl }, /* 200 = msgctl */ + { SYF_MPSAFE | AS(msgget_args), (sy_call_t *)msgget }, /* 201 = msgget */ + { SYF_MPSAFE | AS(msgrcv_args), (sy_call_t *)msgrcv }, /* 202 = msgrcv */ + { SYF_MPSAFE | AS(msgsnd_args), (sy_call_t *)msgsnd }, /* 203 = msgsnd */ + { SYF_MPSAFE | AS(__semctl_args), (sy_call_t *)__semctl }, /* 204 = __semctl */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Nov 7 14:38:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A0DD216A4D1; Fri, 7 Nov 2003 14:38:24 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7B2BF16A4CE for ; Fri, 7 Nov 2003 14:38:24 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A730B43FBD for ; Fri, 7 Nov 2003 14:38:23 -0800 (PST) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA7McNXJ087878 for ; Fri, 7 Nov 2003 14:38:23 -0800 (PST) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA7McN61087875 for perforce@freebsd.org; Fri, 7 Nov 2003 14:38:23 -0800 (PST) (envelope-from jhb@freebsd.org) Date: Fri, 7 Nov 2003 14:38:23 -0800 (PST) Message-Id: <200311072238.hA7McN61087875@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 41670 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Nov 2003 22:38:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=41670 Change 41670 by jhb@jhb_laptop on 2003/11/07 14:37:47 IFC @41668. Affected files ... .. //depot/projects/smpng/sys/security/mac/mac_net.c#4 integrate Differences ... ==== //depot/projects/smpng/sys/security/mac/mac_net.c#4 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/security/mac/mac_net.c,v 1.103 2003/11/06 03:42:43 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/security/mac/mac_net.c,v 1.104 2003/11/07 22:31:27 rwatson Exp $"); #include "opt_mac.h" @@ -222,7 +222,7 @@ MAC_CHECK(init_socket_peer_label, label, flag); if (error) { - MAC_PERFORM(destroy_socket_label, label); + MAC_PERFORM(destroy_socket_peer_label, label); mac_destroy_label(label); } From owner-p4-projects@FreeBSD.ORG Fri Nov 7 18:22:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1DDDD16A4D0; Fri, 7 Nov 2003 18:22:31 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D459216A4CE for ; Fri, 7 Nov 2003 18:22:30 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 447E643FD7 for ; Fri, 7 Nov 2003 18:22:30 -0800 (PST) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA82MUXJ008091 for ; Fri, 7 Nov 2003 18:22:30 -0800 (PST) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA82MTI6008088 for perforce@freebsd.org; Fri, 7 Nov 2003 18:22:29 -0800 (PST) (envelope-from cvance@nailabs.com) Date: Fri, 7 Nov 2003 18:22:29 -0800 (PST) Message-Id: <200311080222.hA82MTI6008088@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 41699 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 02:22:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=41699 Change 41699 by cvance@cvance_osx_laptop on 2003/11/07 18:21:55 On Darwin, you can't pass NULL as the last argument to copyinstr. Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_syscalls.c#7 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_syscalls.c#7 (text+ko) ==== @@ -3982,6 +3982,7 @@ struct nameidata nd; struct mount *mp, *mp_writable; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; /* @@ -3990,7 +3991,7 @@ */ if (uap->attrname != NULL) { error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, - NULL); + &dummy); if (error) return (error); } @@ -4112,9 +4113,10 @@ { struct file *fp; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return (error); @@ -4144,9 +4146,10 @@ { struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return (error); @@ -4178,9 +4181,10 @@ { struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return (error); @@ -4291,9 +4295,10 @@ { struct file *fp; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return (error); @@ -4323,9 +4328,10 @@ { struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return (error); @@ -4357,9 +4363,10 @@ { struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return (error); @@ -4431,9 +4438,10 @@ struct file *fp; struct vnode *vp; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return (error); @@ -4460,9 +4468,10 @@ { struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return(error); @@ -4491,9 +4500,10 @@ { struct nameidata nd; char attrname[EXTATTR_MAXNAMELEN]; + size_t dummy; int error; - error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, NULL); + error = copyinstr(uap->attrname, attrname, EXTATTR_MAXNAMELEN, &dummy); if (error) return(error); From owner-p4-projects@FreeBSD.ORG Fri Nov 7 21:43:01 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9F10216A4D0; Fri, 7 Nov 2003 21:43:01 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6345F16A4CE for ; Fri, 7 Nov 2003 21:43:01 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A9D944003 for ; Fri, 7 Nov 2003 21:43:00 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA85h0XJ025996 for ; Fri, 7 Nov 2003 21:43:00 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA85gxrw025993 for perforce@freebsd.org; Fri, 7 Nov 2003 21:42:59 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 7 Nov 2003 21:42:59 -0800 (PST) Message-Id: <200311080542.hA85gxrw025993@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41725 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 05:43:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=41725 Change 41725 by rwatson@rwatson_paprika on 2003/11/07 21:42:47 Move to a (struct label *) pointer in network-related data structures, rather than an embedded (struct label). This means that changes in struct label won't change the ABI for network drivers, that we can vary the size of struct label each boot, etc. Use the UMA label zone for struct bpfdesc, struct ipq, struct ifnet, and struct socket. struct mbuf already uses space allocated external to the mbuf header via m_tag. While here, correct a bug wherein the normal socket label destroy routine was called on the socket peer label when aborting a socket label allocation, instead of the socket peer label destroy routine. Affected files ... .. //depot/projects/trustedbsd/mac/sys/net/bpfdesc.h#9 edit .. //depot/projects/trustedbsd/mac/sys/net/if_var.h#18 edit .. //depot/projects/trustedbsd/mac/sys/netinet/ip_var.h#17 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_net.c#6 edit .. //depot/projects/trustedbsd/mac/sys/sys/socketvar.h#33 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/net/bpfdesc.h#9 (text+ko) ==== @@ -43,7 +43,6 @@ #ifndef _NET_BPFDESC_H_ #define _NET_BPFDESC_H_ -#include #include #include @@ -93,7 +92,7 @@ #endif struct mtx bd_mtx; /* mutex for this descriptor */ struct callout bd_callout; /* for BPF timeouts with select */ - struct label bd_label; /* MAC label for descriptor */ + struct label *bd_label; /* MAC label for descriptor */ }; /* Values for bd_state */ ==== //depot/projects/trustedbsd/mac/sys/net/if_var.h#18 (text+ko) ==== @@ -74,7 +74,6 @@ struct ether_header; #endif -#include /* struct label */ #include /* get TAILQ macros */ #ifdef _KERNEL @@ -177,7 +176,7 @@ struct ifqueue *if_poll_slowq; /* input queue for slow devices */ struct ifprefixhead if_prefixhead; /* list of prefixes per if */ u_int8_t *if_broadcastaddr; /* linklevel broadcast bytestring */ - struct label if_label; /* interface MAC label */ + struct label *if_label; /* interface MAC label */ void *if_afdata[AF_MAX]; int if_afdata_initialized; ==== //depot/projects/trustedbsd/mac/sys/netinet/ip_var.h#17 (text+ko) ==== @@ -39,10 +39,6 @@ #include -#ifdef _KERNEL -#include -#endif - /* * Overlay for ip header used by other protocols (tcp, udp). */ @@ -71,7 +67,7 @@ u_char ipq_nfrags; /* # frags in this packet */ u_int32_t ipq_div_info; /* ipfw divert port & flags */ u_int16_t ipq_div_cookie; /* ipfw divert cookie */ - struct label ipq_label; /* MAC label */ + struct label *ipq_label; /* MAC label */ }; #endif /* _KERNEL */ ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_net.c#6 (text+ko) ==== @@ -91,7 +91,8 @@ &nmacsockets, 0, "number of sockets in use"); #endif -static void mac_destroy_socket_label(struct label *label); +static void mac_socket_label_free(struct label *label); + static struct label * mbuf_to_label(struct mbuf *mbuf) @@ -105,13 +106,22 @@ return (label); } +static struct label * +mac_bpfdesc_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_bpfdesc_label, label); + MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); + return (label); +} + void mac_init_bpfdesc(struct bpf_d *bpf_d) { - mac_init_label(&bpf_d->bd_label); - MAC_PERFORM(init_bpfdesc_label, &bpf_d->bd_label); - MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); + bpf_d->bd_label = mac_bpfdesc_label_alloc(); } static void @@ -123,28 +133,52 @@ MAC_DEBUG_COUNTER_INC(&nmacifnets); } +static struct label * +mac_ifnet_label_alloc(void) +{ + struct label *label; + + label = mac_labelzone_alloc(M_WAITOK); + MAC_PERFORM(init_ifnet_label, label); + MAC_DEBUG_COUNTER_INC(&nmacifnets); + return (label); +} + void mac_init_ifnet(struct ifnet *ifp) { - mac_init_ifnet_label(&ifp->if_label); + ifp->if_label = mac_ifnet_label_alloc(); } -int -mac_init_ipq(struct ipq *ipq, int flag) +static struct label * +mac_ipq_label_alloc(int flag) { + struct label *label; int error; - mac_init_label(&ipq->ipq_label); + label = mac_labelzone_alloc(flag); + if (label == NULL) + return (NULL); - MAC_CHECK(init_ipq_label, &ipq->ipq_label, flag); + MAC_CHECK(init_ipq_label, label, flag); if (error) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacipqs); + MAC_PERFORM(destroy_ipq_label, label); + mac_labelzone_free(label); + return (NULL); } - return (error); + MAC_DEBUG_COUNTER_INC(&nmacipqs); + return (label); +} + +int +mac_init_ipq(struct ipq *ipq, int flag) +{ + + ipq->ipq_label = mac_ipq_label_alloc(flag); + if (ipq->ipq_label == NULL) + return (ENOMEM); + return (0); } int @@ -213,45 +247,76 @@ return (error); } -static int -mac_init_socket_peer_label(struct label *label, int flag) +static struct label * +mac_socket_label_alloc(int flag) { + struct label *label; int error; - mac_init_label(label); + label = mac_labelzone_alloc(flag); + if (label == NULL) + return (NULL); - MAC_CHECK(init_socket_peer_label, label, flag); + MAC_CHECK(init_socket_label, label, flag); if (error) { MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); + mac_labelzone_free(label); + return (NULL); } + MAC_DEBUG_COUNTER_INC(&nmacsockets); + return (label); +} - return (error); +static struct label * +mac_socket_peer_label_alloc(int flag) +{ + struct label *label; + int error; + + label = mac_labelzone_alloc(flag); + if (label == NULL) + return (NULL); + + MAC_CHECK(init_socket_peer_label, label, flag); + if (error) { + MAC_PERFORM(destroy_socket_peer_label, label); + mac_labelzone_free(label); + return (NULL); + } + MAC_DEBUG_COUNTER_INC(&nmacsockets); + return (label); } int -mac_init_socket(struct socket *socket, int flag) +mac_init_socket(struct socket *so, int flag) { - int error; - error = mac_init_socket_label(&socket->so_label, flag); - if (error) - return (error); + so->so_label = mac_socket_label_alloc(flag); + if (so->so_label == NULL) + return (ENOMEM); + so->so_peerlabel = mac_socket_peer_label_alloc(flag); + if (so->so_peerlabel == NULL) { + mac_socket_label_free(so->so_label); + so->so_label = NULL; + return (ENOMEM); + } + return (0); +} - error = mac_init_socket_peer_label(&socket->so_peerlabel, flag); - if (error) - mac_destroy_socket_label(&socket->so_label); +static void +mac_bpfdesc_label_free(struct label *label) +{ - return (error); + MAC_PERFORM(destroy_bpfdesc_label, label); + MAC_DEBUG_COUNTER_DEC(&nmacbpfdescs); } void mac_destroy_bpfdesc(struct bpf_d *bpf_d) { - MAC_PERFORM(destroy_bpfdesc_label, &bpf_d->bd_label); - mac_destroy_label(&bpf_d->bd_label); - MAC_DEBUG_COUNTER_DEC(&nmacbpfdescs); + mac_bpfdesc_label_free(bpf_d->bd_label); + bpf_d->bd_label = NULL; } static void @@ -263,20 +328,35 @@ MAC_DEBUG_COUNTER_DEC(&nmacifnets); } +static void +mac_ifnet_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_ifnet_label, label); + MAC_DEBUG_COUNTER_DEC(&nmacifnets); +} + void mac_destroy_ifnet(struct ifnet *ifp) { - mac_destroy_ifnet_label(&ifp->if_label); + mac_ifnet_label_free(ifp->if_label); + ifp->if_label = NULL; +} + +static void +mac_ipq_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_ipq_label, label); + MAC_DEBUG_COUNTER_DEC(&nmacipqs); } void mac_destroy_ipq(struct ipq *ipq) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - MAC_DEBUG_COUNTER_DEC(&nmacipqs); + mac_ipq_label_free(ipq->ipq_label); } void @@ -301,19 +381,29 @@ } static void -mac_destroy_socket_peer_label(struct label *label) +mac_socket_label_free(struct label *label) +{ + + MAC_PERFORM(destroy_socket_label, label); + MAC_DEBUG_COUNTER_DEC(&nmacsockets); +} + +static void +mac_socket_peer_label_free(struct label *label) { MAC_PERFORM(destroy_socket_peer_label, label); - mac_destroy_label(label); + MAC_DEBUG_COUNTER_DEC(&nmacsockets); } void mac_destroy_socket(struct socket *socket) { - mac_destroy_socket_label(&socket->so_label); - mac_destroy_socket_peer_label(&socket->so_peerlabel); + mac_socket_label_free(socket->so_label); + socket->so_label = NULL; + mac_socket_peer_label_free(socket->so_peerlabel); + socket->so_peerlabel = NULL; } void @@ -388,21 +478,21 @@ mac_create_ifnet(struct ifnet *ifnet) { - MAC_PERFORM(create_ifnet, ifnet, &ifnet->if_label); + MAC_PERFORM(create_ifnet, ifnet, ifnet->if_label); } void mac_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d) { - MAC_PERFORM(create_bpfdesc, cred, bpf_d, &bpf_d->bd_label); + MAC_PERFORM(create_bpfdesc, cred, bpf_d, bpf_d->bd_label); } void mac_create_socket(struct ucred *cred, struct socket *socket) { - MAC_PERFORM(create_socket, cred, socket, &socket->so_label); + MAC_PERFORM(create_socket, cred, socket, socket->so_label); } void @@ -410,8 +500,8 @@ struct socket *newsocket) { - MAC_PERFORM(create_socket_from_socket, oldsocket, &oldsocket->so_label, - newsocket, &newsocket->so_label); + MAC_PERFORM(create_socket_from_socket, oldsocket, oldsocket->so_label, + newsocket, newsocket->so_label); } static void @@ -419,7 +509,7 @@ struct label *newlabel) { - MAC_PERFORM(relabel_socket, cred, socket, &socket->so_label, newlabel); + MAC_PERFORM(relabel_socket, cred, socket, socket->so_label, newlabel); } void @@ -430,7 +520,7 @@ label = mbuf_to_label(mbuf); MAC_PERFORM(set_socket_peer_from_mbuf, mbuf, label, socket, - &socket->so_peerlabel); + socket->so_peerlabel); } void @@ -439,7 +529,7 @@ { MAC_PERFORM(set_socket_peer_from_socket, oldsocket, - &oldsocket->so_label, newsocket, &newsocket->so_peerlabel); + oldsocket->so_label, newsocket, newsocket->so_peerlabel); } void @@ -449,7 +539,7 @@ label = mbuf_to_label(datagram); - MAC_PERFORM(create_datagram_from_ipq, ipq, &ipq->ipq_label, + MAC_PERFORM(create_datagram_from_ipq, ipq, ipq->ipq_label, datagram, label); } @@ -472,7 +562,7 @@ label = mbuf_to_label(fragment); - MAC_PERFORM(create_ipq, fragment, label, ipq, &ipq->ipq_label); + MAC_PERFORM(create_ipq, fragment, label, ipq, ipq->ipq_label); } void @@ -494,7 +584,7 @@ label = mbuf_to_label(mbuf); - MAC_PERFORM(create_mbuf_from_bpfdesc, bpf_d, &bpf_d->bd_label, mbuf, + MAC_PERFORM(create_mbuf_from_bpfdesc, bpf_d, bpf_d->bd_label, mbuf, label); } @@ -505,7 +595,7 @@ label = mbuf_to_label(mbuf); - MAC_PERFORM(create_mbuf_linklayer, ifnet, &ifnet->if_label, mbuf, + MAC_PERFORM(create_mbuf_linklayer, ifnet, ifnet->if_label, mbuf, label); } @@ -516,7 +606,7 @@ label = mbuf_to_label(mbuf); - MAC_PERFORM(create_mbuf_from_ifnet, ifnet, &ifnet->if_label, mbuf, + MAC_PERFORM(create_mbuf_from_ifnet, ifnet, ifnet->if_label, mbuf, label); } @@ -530,7 +620,7 @@ newmbuflabel = mbuf_to_label(newmbuf); MAC_PERFORM(create_mbuf_multicast_encap, oldmbuf, oldmbuflabel, - ifnet, &ifnet->if_label, newmbuf, newmbuflabel); + ifnet, ifnet->if_label, newmbuf, newmbuflabel); } void @@ -555,7 +645,7 @@ result = 1; MAC_BOOLEAN(fragment_match, &&, fragment, label, ipq, - &ipq->ipq_label); + ipq->ipq_label); return (result); } @@ -586,7 +676,7 @@ label = mbuf_to_label(fragment); - MAC_PERFORM(update_ipq, fragment, label, ipq, &ipq->ipq_label); + MAC_PERFORM(update_ipq, fragment, label, ipq, ipq->ipq_label); } int @@ -598,7 +688,7 @@ label = mbuf_to_label(m); if (m->m_pkthdr.rcvif != NULL) - ifnetlabel = &m->m_pkthdr.rcvif->if_label; + ifnetlabel = m->m_pkthdr.rcvif->if_label; else ifnetlabel = NULL; @@ -615,7 +705,7 @@ label = mbuf_to_label(mbuf); - MAC_PERFORM(create_mbuf_from_socket, socket, &socket->so_label, mbuf, + MAC_PERFORM(create_mbuf_from_socket, socket, socket->so_label, mbuf, label); } @@ -627,8 +717,8 @@ if (!mac_enforce_network) return (0); - MAC_CHECK(check_bpfdesc_receive, bpf_d, &bpf_d->bd_label, ifnet, - &ifnet->if_label); + MAC_CHECK(check_bpfdesc_receive, bpf_d, bpf_d->bd_label, ifnet, + ifnet->if_label); return (error); } @@ -646,7 +736,7 @@ label = mbuf_to_label(mbuf); - MAC_CHECK(check_ifnet_transmit, ifnet, &ifnet->if_label, mbuf, + MAC_CHECK(check_ifnet_transmit, ifnet, ifnet->if_label, mbuf, label); return (error); @@ -661,7 +751,7 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_bind, ucred, socket, &socket->so_label, + MAC_CHECK(check_socket_bind, ucred, socket, socket->so_label, sockaddr); return (error); @@ -676,7 +766,7 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_connect, cred, socket, &socket->so_label, + MAC_CHECK(check_socket_connect, cred, socket, socket->so_label, sockaddr); return (error); @@ -693,7 +783,7 @@ label = mbuf_to_label(mbuf); - MAC_CHECK(check_socket_deliver, socket, &socket->so_label, mbuf, + MAC_CHECK(check_socket_deliver, socket, socket->so_label, mbuf, label); return (error); @@ -707,7 +797,7 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_listen, cred, socket, &socket->so_label); + MAC_CHECK(check_socket_listen, cred, socket, socket->so_label); return (error); } @@ -719,7 +809,7 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_receive, cred, so, &so->so_label); + MAC_CHECK(check_socket_receive, cred, so, so->so_label); return (error); } @@ -730,7 +820,7 @@ { int error; - MAC_CHECK(check_socket_relabel, cred, socket, &socket->so_label, + MAC_CHECK(check_socket_relabel, cred, socket, socket->so_label, newlabel); return (error); @@ -744,7 +834,7 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_send, cred, so, &so->so_label); + MAC_CHECK(check_socket_send, cred, so, so->so_label); return (error); } @@ -757,7 +847,7 @@ if (!mac_enforce_socket) return (0); - MAC_CHECK(check_socket_visible, cred, socket, &socket->so_label); + MAC_CHECK(check_socket_visible, cred, socket, socket->so_label); return (error); } @@ -786,7 +876,7 @@ } buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_ifnet_label(&ifnet->if_label, elements, + error = mac_externalize_ifnet_label(ifnet->if_label, elements, buffer, mac.m_buflen); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); @@ -840,14 +930,14 @@ return (error); } - MAC_CHECK(check_ifnet_relabel, cred, ifnet, &ifnet->if_label, + MAC_CHECK(check_ifnet_relabel, cred, ifnet, ifnet->if_label, &intlabel); if (error) { mac_destroy_ifnet_label(&intlabel); return (error); } - MAC_PERFORM(relabel_ifnet, cred, ifnet, &ifnet->if_label, &intlabel); + MAC_PERFORM(relabel_ifnet, cred, ifnet, ifnet->if_label, &intlabel); mac_destroy_ifnet_label(&intlabel); return (0); @@ -911,7 +1001,7 @@ } buffer = malloc(mac->m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_socket_label(&so->so_label, elements, + error = mac_externalize_socket_label(so->so_label, elements, buffer, mac->m_buflen); if (error == 0) error = copyout(buffer, mac->m_string, strlen(buffer)+1); @@ -941,7 +1031,7 @@ } buffer = malloc(mac->m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_socket_peer_label(&so->so_peerlabel, + error = mac_externalize_socket_peer_label(so->so_peerlabel, elements, buffer, mac->m_buflen); if (error == 0) error = copyout(buffer, mac->m_string, strlen(buffer)+1); ==== //depot/projects/trustedbsd/mac/sys/sys/socketvar.h#33 (text+ko) ==== @@ -37,7 +37,6 @@ #ifndef _SYS_SOCKETVAR_H_ #define _SYS_SOCKETVAR_H_ -#include /* for struct label */ #include /* for TAILQ macros */ #include /* for struct selinfo */ @@ -125,8 +124,8 @@ void (*so_upcall)(struct socket *, void *, int); void *so_upcallarg; struct ucred *so_cred; /* user credentials */ - struct label so_label; /* MAC label for socket */ - struct label so_peerlabel; /* cached MAC label for socket peer */ + struct label *so_label; /* MAC label for socket */ + struct label *so_peerlabel; /* cached MAC label for socket peer */ /* NB: generation count must not be first; easiest to make it last. */ so_gen_t so_gencnt; /* generation count */ void *so_emuldata; /* private data for emulators */ From owner-p4-projects@FreeBSD.ORG Fri Nov 7 22:44:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 38C3C16A4D0; Fri, 7 Nov 2003 22:44:23 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0D7D616A4CE for ; Fri, 7 Nov 2003 22:44:23 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3A8C643FDF for ; Fri, 7 Nov 2003 22:44:21 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA86iLXJ031087 for ; Fri, 7 Nov 2003 22:44:21 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA86iG7n031081 for perforce@freebsd.org; Fri, 7 Nov 2003 22:44:16 -0800 (PST) (envelope-from peter@freebsd.org) Date: Fri, 7 Nov 2003 22:44:16 -0800 (PST) Message-Id: <200311080644.hA86iG7n031081@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41729 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 06:44:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=41729 Change 41729 by peter@peter_overcee on 2003/11/07 22:43:37 IFC @41720 Affected files ... .. //depot/projects/hammer/Makefile#14 integrate .. //depot/projects/hammer/contrib/gcc/ChangeLog#8 integrate .. //depot/projects/hammer/contrib/gcc/Makefile.in#8 integrate .. //depot/projects/hammer/contrib/gcc/aclocal.m4#3 integrate .. //depot/projects/hammer/contrib/gcc/alias.c#5 integrate .. //depot/projects/hammer/contrib/gcc/builtins.c#5 integrate .. //depot/projects/hammer/contrib/gcc/c-decl.c#7 integrate .. //depot/projects/hammer/contrib/gcc/c-lex.c#5 integrate .. //depot/projects/hammer/contrib/gcc/c-objc-common.c#5 integrate .. //depot/projects/hammer/contrib/gcc/c-typeck.c#6 integrate .. //depot/projects/hammer/contrib/gcc/calls.c#7 integrate .. //depot/projects/hammer/contrib/gcc/cfgcleanup.c#5 integrate .. //depot/projects/hammer/contrib/gcc/cfgloop.c#3 integrate .. //depot/projects/hammer/contrib/gcc/cfgrtl.c#5 integrate .. //depot/projects/hammer/contrib/gcc/collect2.c#4 integrate .. //depot/projects/hammer/contrib/gcc/combine.c#5 integrate .. //depot/projects/hammer/contrib/gcc/config.gcc#5 integrate .. //depot/projects/hammer/contrib/gcc/config.in#4 integrate .. //depot/projects/hammer/contrib/gcc/config/alpha/alpha.c#5 integrate .. //depot/projects/hammer/contrib/gcc/config/alpha/alpha.h#4 integrate .. //depot/projects/hammer/contrib/gcc/config/alpha/alpha.md#4 integrate .. //depot/projects/hammer/contrib/gcc/config/alpha/linux.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/arm/linux-elf.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/darwin.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/emmintrin.h#1 branch .. //depot/projects/hammer/contrib/gcc/config/i386/i386.c#9 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/i386.h#7 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/i386.md#5 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/mmintrin.h#5 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/pmmintrin.h#1 branch .. //depot/projects/hammer/contrib/gcc/config/i386/sco5.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/sol2.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/t-sco5#2 integrate .. //depot/projects/hammer/contrib/gcc/config/i386/xmmintrin.h#4 integrate .. //depot/projects/hammer/contrib/gcc/config/ia64/hpux.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/ia64/ia64-protos.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/ia64/ia64.c#4 integrate .. //depot/projects/hammer/contrib/gcc/config/ia64/ia64.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/ia64/ia64.md#4 integrate .. //depot/projects/hammer/contrib/gcc/config/ia64/ia64intrin.h#2 integrate .. //depot/projects/hammer/contrib/gcc/config/ia64/libgcc-ia64.ver#2 integrate .. //depot/projects/hammer/contrib/gcc/config/ia64/unwind-ia64.c#3 integrate .. //depot/projects/hammer/contrib/gcc/config/linux.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/rs6000/linux.h#4 integrate .. //depot/projects/hammer/contrib/gcc/config/rs6000/linux64.h#5 integrate .. //depot/projects/hammer/contrib/gcc/config/rs6000/rs6000.c#7 integrate .. //depot/projects/hammer/contrib/gcc/config/rs6000/rs6000.md#7 integrate .. //depot/projects/hammer/contrib/gcc/config/rs6000/sysv4.h#7 integrate .. //depot/projects/hammer/contrib/gcc/config/sparc/linux.h#3 integrate .. //depot/projects/hammer/contrib/gcc/config/sparc/linux64.h#5 integrate .. //depot/projects/hammer/contrib/gcc/config/sparc/sol2-c1.asm#2 integrate .. //depot/projects/hammer/contrib/gcc/config/sparc/sparc.c#6 integrate .. //depot/projects/hammer/contrib/gcc/config/sparc/sparc.md#4 integrate .. //depot/projects/hammer/contrib/gcc/config/t-darwin#2 integrate .. //depot/projects/hammer/contrib/gcc/config/t-libunwind#1 branch .. //depot/projects/hammer/contrib/gcc/configure#6 integrate .. //depot/projects/hammer/contrib/gcc/configure.in#6 integrate .. //depot/projects/hammer/contrib/gcc/cp/ChangeLog#8 integrate .. //depot/projects/hammer/contrib/gcc/cp/call.c#5 integrate .. //depot/projects/hammer/contrib/gcc/cp/class.c#6 integrate .. //depot/projects/hammer/contrib/gcc/cp/cp-tree.h#7 integrate .. //depot/projects/hammer/contrib/gcc/cp/decl.c#8 integrate .. //depot/projects/hammer/contrib/gcc/cp/decl2.c#7 integrate .. //depot/projects/hammer/contrib/gcc/cp/friend.c#3 integrate .. //depot/projects/hammer/contrib/gcc/cp/init.c#7 integrate .. //depot/projects/hammer/contrib/gcc/cp/pt.c#7 integrate .. //depot/projects/hammer/contrib/gcc/cp/search.c#6 integrate .. //depot/projects/hammer/contrib/gcc/cp/tree.c#5 integrate .. //depot/projects/hammer/contrib/gcc/cp/typeck.c#5 integrate .. //depot/projects/hammer/contrib/gcc/cp/typeck2.c#5 integrate .. //depot/projects/hammer/contrib/gcc/cppinit.c#6 integrate .. //depot/projects/hammer/contrib/gcc/cpplib.c#6 integrate .. //depot/projects/hammer/contrib/gcc/cppmain.c#3 integrate .. //depot/projects/hammer/contrib/gcc/cse.c#4 integrate .. //depot/projects/hammer/contrib/gcc/dbxout.c#6 integrate .. //depot/projects/hammer/contrib/gcc/doc/contrib.texi#5 integrate .. //depot/projects/hammer/contrib/gcc/doc/extend.texi#6 integrate .. //depot/projects/hammer/contrib/gcc/doc/include/gcc-common.texi#5 integrate .. //depot/projects/hammer/contrib/gcc/doc/invoke.texi#8 integrate .. //depot/projects/hammer/contrib/gcc/doc/tm.texi#6 integrate .. //depot/projects/hammer/contrib/gcc/dwarf2out.c#5 integrate .. //depot/projects/hammer/contrib/gcc/expr.c#7 integrate .. //depot/projects/hammer/contrib/gcc/f/ChangeLog#7 integrate .. //depot/projects/hammer/contrib/gcc/function.c#5 integrate .. //depot/projects/hammer/contrib/gcc/gcc.c#6 integrate .. //depot/projects/hammer/contrib/gcc/libgcc-std.ver#4 integrate .. //depot/projects/hammer/contrib/gcc/loop.c#8 integrate .. //depot/projects/hammer/contrib/gcc/loop.h#4 integrate .. //depot/projects/hammer/contrib/gcc/mklibgcc.in#5 integrate .. //depot/projects/hammer/contrib/gcc/mkmap-symver.awk#3 integrate .. //depot/projects/hammer/contrib/gcc/real.c#3 integrate .. //depot/projects/hammer/contrib/gcc/reg-stack.c#4 integrate .. //depot/projects/hammer/contrib/gcc/reorg.c#3 integrate .. //depot/projects/hammer/contrib/gcc/scan-decls.c#3 integrate .. //depot/projects/hammer/contrib/gcc/stmt.c#4 integrate .. //depot/projects/hammer/contrib/gcc/stor-layout.c#4 integrate .. //depot/projects/hammer/contrib/gcc/tlink.c#3 integrate .. //depot/projects/hammer/contrib/gcc/toplev.c#8 integrate .. //depot/projects/hammer/contrib/gcc/tree.c#4 integrate .. //depot/projects/hammer/contrib/gcc/tree.h#5 integrate .. //depot/projects/hammer/contrib/gcc/unroll.c#7 integrate .. //depot/projects/hammer/contrib/gcc/unwind-dw2.c#4 integrate .. //depot/projects/hammer/contrib/gcc/unwind-libunwind.c#1 branch .. //depot/projects/hammer/contrib/gcc/unwind.h#3 integrate .. //depot/projects/hammer/contrib/gcc/varasm.c#7 integrate .. //depot/projects/hammer/contrib/gcc/version.c#8 integrate .. //depot/projects/hammer/contrib/libf2c/ChangeLog#7 integrate .. //depot/projects/hammer/contrib/libf2c/configure#5 integrate .. //depot/projects/hammer/contrib/libobjc/ChangeLog#7 integrate .. //depot/projects/hammer/contrib/libobjc/configure#5 integrate .. //depot/projects/hammer/contrib/libstdc++/ChangeLog#8 integrate .. //depot/projects/hammer/contrib/libstdc++/acinclude.m4#6 integrate .. //depot/projects/hammer/contrib/libstdc++/aclocal.m4#6 integrate .. //depot/projects/hammer/contrib/libstdc++/config/cpu/m68k/atomicity.h#2 integrate .. //depot/projects/hammer/contrib/libstdc++/config/locale/generic/ctype_members.cc#3 integrate .. //depot/projects/hammer/contrib/libstdc++/config/locale/gnu/ctype_members.cc#6 integrate .. //depot/projects/hammer/contrib/libstdc++/config/os/generic/ctype_inline.h#2 integrate .. //depot/projects/hammer/contrib/libstdc++/config/os/hpux/os_defines.h#2 integrate .. //depot/projects/hammer/contrib/libstdc++/configure#7 integrate .. //depot/projects/hammer/contrib/libstdc++/configure.target#5 integrate .. //depot/projects/hammer/contrib/libstdc++/include/Makefile.am#5 integrate .. //depot/projects/hammer/contrib/libstdc++/include/Makefile.in#5 integrate .. //depot/projects/hammer/contrib/libstdc++/include/bits/basic_ios.h#3 integrate .. //depot/projects/hammer/contrib/libstdc++/include/bits/c++config#8 integrate .. //depot/projects/hammer/contrib/libstdc++/include/bits/istream.tcc#5 integrate .. //depot/projects/hammer/contrib/libstdc++/include/bits/locale_facets.tcc#8 integrate .. //depot/projects/hammer/contrib/libstdc++/include/bits/stl_algo.h#2 integrate .. //depot/projects/hammer/contrib/libstdc++/libsupc++/cxxabi.h#4 integrate .. //depot/projects/hammer/contrib/ngatm/libngatm/net_in.fig#1 branch .. //depot/projects/hammer/contrib/ngatm/libngatm/net_out.fig#1 branch .. //depot/projects/hammer/contrib/ngatm/libngatm/unicust.h#1 branch .. //depot/projects/hammer/etc/mtree/BSD.include.dist#11 integrate .. //depot/projects/hammer/etc/mtree/BSD.usr.dist#12 integrate .. //depot/projects/hammer/etc/periodic/daily/460.status-mail-rejects#3 integrate .. //depot/projects/hammer/etc/periodic/daily/470.status-named#4 integrate .. //depot/projects/hammer/lib/libc/locale/Makefile.inc#13 integrate .. //depot/projects/hammer/lib/libc/locale/big5.c#3 integrate .. //depot/projects/hammer/lib/libc/locale/euc.4#2 integrate .. //depot/projects/hammer/lib/libc/locale/euc.c#3 integrate .. //depot/projects/hammer/lib/libc/locale/gb18030.5#2 integrate .. //depot/projects/hammer/lib/libc/locale/gb2312.5#1 branch .. //depot/projects/hammer/lib/libc/locale/gb2312.c#2 integrate .. //depot/projects/hammer/lib/libc/locale/gbk.5#2 integrate .. //depot/projects/hammer/lib/libc/locale/gbk.c#3 integrate .. //depot/projects/hammer/lib/libc/locale/mskanji.c#4 integrate .. //depot/projects/hammer/lib/libc/locale/multibyte.3#6 integrate .. //depot/projects/hammer/lib/libc/locale/utf2.4#3 integrate .. //depot/projects/hammer/lib/libngatm/Makefile#3 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#33 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#43 integrate .. //depot/projects/hammer/release/picobsd/build/picobsd#2 integrate .. //depot/projects/hammer/sbin/sysctl/sysctl.8#5 integrate .. //depot/projects/hammer/sbin/sysctl/sysctl.c#9 integrate .. //depot/projects/hammer/share/man/man4/Makefile#24 integrate .. //depot/projects/hammer/share/man/man4/ciss.4#2 integrate .. //depot/projects/hammer/share/man/man4/mpt.4#1 branch .. //depot/projects/hammer/share/man/man4/ng_uni.4#1 branch .. //depot/projects/hammer/share/man/man4/sbp_targ.4#1 branch .. //depot/projects/hammer/share/man/man4/ufm.4#1 branch .. //depot/projects/hammer/share/man/man9/device_get_name.9#4 integrate .. //depot/projects/hammer/share/monetdef/Makefile#8 integrate .. //depot/projects/hammer/share/msgdef/Makefile#8 integrate .. //depot/projects/hammer/share/security/Makefile#1 branch .. //depot/projects/hammer/share/security/Makefile.inc#1 branch .. //depot/projects/hammer/share/timedef/Makefile#8 integrate .. //depot/projects/hammer/sys/alpha/include/bus.h#12 integrate .. //depot/projects/hammer/sys/alpha/linux/linux_proto.h#3 integrate .. //depot/projects/hammer/sys/alpha/linux/linux_syscall.h#3 integrate .. //depot/projects/hammer/sys/alpha/linux/linux_sysent.c#3 integrate .. //depot/projects/hammer/sys/alpha/linux/syscalls.master#3 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_proto.h#2 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_syscall.h#2 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_sysent.c#2 integrate .. //depot/projects/hammer/sys/alpha/osf1/syscalls.master#2 integrate .. //depot/projects/hammer/sys/amd64/amd64/cpu_switch.S#10 integrate .. //depot/projects/hammer/sys/amd64/amd64/fpu.c#1 branch .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#61 integrate .. //depot/projects/hammer/sys/amd64/amd64/nexus.c#14 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#41 integrate .. //depot/projects/hammer/sys/amd64/amd64/support.S#13 integrate .. //depot/projects/hammer/sys/amd64/amd64/sys_machdep.c#10 integrate .. //depot/projects/hammer/sys/amd64/amd64/trap.c#32 integrate .. //depot/projects/hammer/sys/amd64/amd64/vm_machdep.c#16 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#24 integrate .. //depot/projects/hammer/sys/amd64/conf/gethints.awk#5 integrate .. //depot/projects/hammer/sys/amd64/ia32/ia32_signal.c#7 integrate .. //depot/projects/hammer/sys/amd64/include/bus_dma.h#10 integrate .. //depot/projects/hammer/sys/amd64/include/cpufunc.h#10 integrate .. //depot/projects/hammer/sys/amd64/include/fpu.h#1 branch .. //depot/projects/hammer/sys/amd64/include/frame.h#9 integrate .. //depot/projects/hammer/sys/amd64/include/ieeefp.h#9 integrate .. //depot/projects/hammer/sys/amd64/include/npx.h#10 delete .. //depot/projects/hammer/sys/amd64/include/pcb.h#12 integrate .. //depot/projects/hammer/sys/amd64/include/pmap.h#22 integrate .. //depot/projects/hammer/sys/amd64/include/reg.h#8 integrate .. //depot/projects/hammer/sys/amd64/include/signal.h#8 integrate .. //depot/projects/hammer/sys/amd64/include/specialreg.h#8 integrate .. //depot/projects/hammer/sys/amd64/include/ucontext.h#13 integrate .. //depot/projects/hammer/sys/amd64/include/vmparam.h#16 integrate .. //depot/projects/hammer/sys/boot/i386/btx/btxldr/btxldr.s#3 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_misc.c#3 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/hammer/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/hammer/sys/compat/ia32/ia32_signal.h#3 integrate .. //depot/projects/hammer/sys/compat/ia32/ia32_sysvec.c#4 integrate .. //depot/projects/hammer/sys/conf/NOTES#29 integrate .. //depot/projects/hammer/sys/conf/files#33 integrate .. //depot/projects/hammer/sys/conf/files.amd64#33 integrate .. //depot/projects/hammer/sys/conf/options#28 integrate .. //depot/projects/hammer/sys/conf/options.i386#16 integrate .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/genfiles#2 integrate .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/genmsgcpyc.awk#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/genmsgcpyh.awk#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/sig_call.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/sig_coord.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/sig_party.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/sig_print.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/sig_reset.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/sig_uni.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/sig_unimsgcpy.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/sig_verify.c#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/uni.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/unidef.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/unimkmsg.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/unimsgcpy.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/unipriv.h#1 branch .. //depot/projects/hammer/sys/contrib/ngatm/netnatm/sig/unisig.h#1 branch .. //depot/projects/hammer/sys/dev/ata/atapi-cd.c#11 integrate .. //depot/projects/hammer/sys/dev/ciss/ciss.c#14 integrate .. //depot/projects/hammer/sys/dev/firewire/firewire.h#6 integrate .. //depot/projects/hammer/sys/dev/firewire/fwdev.c#8 integrate .. //depot/projects/hammer/sys/dev/firewire/fwmem.c#11 integrate .. //depot/projects/hammer/sys/dev/firewire/if_fwe.c#13 integrate .. //depot/projects/hammer/sys/dev/pccbb/pccbb.c#18 integrate .. //depot/projects/hammer/sys/i386/i386/db_interface.c#9 integrate .. //depot/projects/hammer/sys/i386/i386/io_apic.c#3 integrate .. //depot/projects/hammer/sys/i386/i386/pmap.c#24 integrate .. //depot/projects/hammer/sys/i386/include/bus_dma.h#10 integrate .. //depot/projects/hammer/sys/i386/include/pmap.h#9 integrate .. //depot/projects/hammer/sys/i386/linux/linux_proto.h#5 integrate .. //depot/projects/hammer/sys/i386/linux/linux_syscall.h#5 integrate .. //depot/projects/hammer/sys/i386/linux/linux_sysent.c#6 integrate .. //depot/projects/hammer/sys/i386/linux/syscalls.master#5 integrate .. //depot/projects/hammer/sys/ia64/ia32/ia32_proto.h#8 integrate .. //depot/projects/hammer/sys/ia64/ia32/ia32_syscall.h#8 integrate .. //depot/projects/hammer/sys/ia64/ia32/ia32_sysent.c#9 integrate .. //depot/projects/hammer/sys/ia64/ia32/syscalls.master#13 integrate .. //depot/projects/hammer/sys/ia64/include/bus.h#11 integrate .. //depot/projects/hammer/sys/kern/init_sysent.c#18 integrate .. //depot/projects/hammer/sys/kern/sched_4bsd.c#10 integrate .. //depot/projects/hammer/sys/kern/syscalls.c#18 integrate .. //depot/projects/hammer/sys/kern/syscalls.master#18 integrate .. //depot/projects/hammer/sys/kern/sysv_msg.c#7 integrate .. //depot/projects/hammer/sys/kern/sysv_sem.c#9 integrate .. //depot/projects/hammer/sys/kern/sysv_shm.c#10 integrate .. //depot/projects/hammer/sys/modules/Makefile#30 integrate .. //depot/projects/hammer/sys/modules/netgraph/atm/Makefile#4 integrate .. //depot/projects/hammer/sys/modules/netgraph/atm/uni/Makefile#1 branch .. //depot/projects/hammer/sys/modules/udf_iconv/Makefile#1 branch .. //depot/projects/hammer/sys/netatalk/ddp_usrreq.c#3 integrate .. //depot/projects/hammer/sys/netgraph/atm/ng_uni.h#1 branch .. //depot/projects/hammer/sys/netgraph/atm/uni/ng_uni.c#1 branch .. //depot/projects/hammer/sys/netgraph/atm/uni/ng_uni_cust.h#1 branch .. //depot/projects/hammer/sys/netinet/ip_fw2.c#17 integrate .. //depot/projects/hammer/sys/netinet/ip_id.c#2 integrate .. //depot/projects/hammer/sys/netinet/ip_input.c#19 integrate .. //depot/projects/hammer/sys/netinet/tcp_output.c#8 integrate .. //depot/projects/hammer/sys/netinet6/ip6_output.c#12 integrate .. //depot/projects/hammer/sys/netinet6/ipsec.c#8 integrate .. //depot/projects/hammer/sys/netinet6/ipsec.h#6 integrate .. //depot/projects/hammer/sys/nfsclient/bootp_subr.c#9 integrate .. //depot/projects/hammer/sys/nfsclient/krpc_subr.c#4 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_socket.c#9 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_vfsops.c#17 integrate .. //depot/projects/hammer/sys/nfsserver/nfs_srvsock.c#4 integrate .. //depot/projects/hammer/sys/nfsserver/nfs_syscalls.c#9 integrate .. //depot/projects/hammer/sys/pci/if_sk.c#12 integrate .. //depot/projects/hammer/sys/pci/if_skreg.h#3 integrate .. //depot/projects/hammer/sys/security/mac/mac_internal.h#3 integrate .. //depot/projects/hammer/sys/security/mac/mac_net.c#3 integrate .. //depot/projects/hammer/sys/security/mac_lomac/mac_lomac.c#11 integrate .. //depot/projects/hammer/sys/sys/exec.h#3 integrate .. //depot/projects/hammer/sys/sys/syscall.h#18 integrate .. //depot/projects/hammer/sys/sys/syscall.mk#18 integrate .. //depot/projects/hammer/sys/sys/sysproto.h#18 integrate .. //depot/projects/hammer/tools/tools/ath/80211stats.c#1 branch .. //depot/projects/hammer/tools/tools/ath/Makefile#2 integrate .. //depot/projects/hammer/tools/tools/ath/athstats.c#3 integrate .. //depot/projects/hammer/usr.bin/mklocale/mklocale.1#6 integrate .. //depot/projects/hammer/usr.sbin/dconschat/dconschat.c#2 integrate Differences ... ==== //depot/projects/hammer/Makefile#14 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.290 2003/10/04 18:53:38 ru Exp $ +# $FreeBSD: src/Makefile,v 1.291 2003/11/07 08:36:55 kris Exp $ # # The user-driven targets are: # @@ -173,7 +173,7 @@ -DNOMAN -DNOSHARED \ -DNO_CPU_CFLAGS -DNO_WERROR -make: +make: .PHONY @echo @echo "--------------------------------------------------------------" @echo ">>> Building an up-to-date make(1)" ==== //depot/projects/hammer/contrib/gcc/ChangeLog#8 (text+ko) ==== @@ -1,3 +1,820 @@ +2003-11-05 Roger Sayle + + PR optimization/10339 + * builtins.c (expand_builtin_strcmp): Try to emit cmpstrsi insn + directly instead of unsafely transforming call into a memcmp. + (expand_builtin_strncmp): Likewise. + +2003-11-03 Alexander Kabaev + + * real.c (encode_ieee_single): Ensure proper promotion. + +2003-11-04 H.J. Lu + + Backport from 3.4-branch + + 2003-07-13 Andreas Jaeger + + * config.gcc: Add pmmintrin.h for x86_64-*-*. + + 2003-06-26 H.J. Lu + + * config.gcc (extra_headers): Add pmmintrin.h for i[34567]86-*-*. + + * config/i386/i386.c (override_options): Turn on MASK_SSE2 + for -mpni. + (bdesc_2arg): Add PNI builtins with 2 args. + (bdesc_1arg): Add PNI builtins with 1 arg. + (ix86_init_mmx_sse_builtins): Handle PNI builtins. + (ix86_expand_builtin): Likewise. + + * config/i386/i386.h (MASK_3DNOW, MASK_3DNOW_A, + MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT, + MASK_TLS_DIRECT_SEG_REFS): Renumbered. + (TARGET_PNI): New. + (TARGET_SWITCHES): Add -mpni and -mno-pni. + (TARGET_CPU_CPP_BUILTINS): Defined __PNI__ for PNI. + (ix86_builtins): Add PNI builtins. + (config/i386/i386.md): Add PNI patterns. + + * config/i386/pmmintrin.h: New file. + + * config/i386/i386.c (override_options): Turn on MASK_SSE for + -msse2. + (MASK_SSE1): Removed. + (MASK_SSE164): Removed. + (MASK_SSE264): Removed. + (bdesc_2arg): Replace MASK_SSE1 with MASK_SSE. Replace + MASK_SSE164 with MASK_SSE | MASK_64BIT. Replace MASK_SSE264 + with MASK_SSE2 | MASK_64BIT. + (bdesc_1arg): Likewise. + (ix86_init_mmx_sse_builtins): Likewise. + + * config/i386/i386.h (TARGET_SSE): Remove MASK_SSE2. + + 2003-06-20 H.J. Lu + + * doc/extend.texi: Document new builtin functions for Intel + Prescott New Intrunctions. + + * doc/invoke.texi: Document new command-line options, -mpni and + -mno-pni, for Intel Prescott New Intrunctions. + + 2003-06-05 H.J. Lu + + * config.gcc (extra_headers): Add emmintrin.h for i[34567]86-*-* + and x86_64-*-*. + + * config/i386/mmintrin.h: Update version and add alternate + intrinsic names. + * config/i386/xmmintrin.h: Likewise. + + * config/i386/xmmintrin.h: Include . Move SSE2 + intrinsics to ... + * config/i386/emmintrin.h: Here. New file. + +2003-11-04 H.J. Lu + + Backport from 3.4-branch + 2003-04-25 H.J. Lu + + * config/ia64/ia64.c (ia64_expand_compare_and_swap): Add rmode + for return mode. + (ia64_expand_builtin): Set rmode to SImode for + IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_SI, + IA64_BUILTIN_VAL_COMPARE_AND_SWAP_SI and + IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_DI. Set remode to DImode + for IA64_BUILTIN_VAL_COMPARE_AND_SWAP_DI. + + 2003-04-24 H.J. Lu + + * config/ia64/ia64.c (ia64_init_builtins): Add si_ftype_pdi_di_di + for __sync_bool_compare_and_swap_di for int return type. + + * config/ia64/ia64intrin.h (__sync_bool_compare_and_swap_di): + Change return type to int. + (__sync_bool_compare_and_swap): Likewise. + +2003-11-03 Volker Reichelt + + * doc/contrib.texi: Add Giovanni Bajo, Dara Hazeghi, Falk Hueffner, + and Andrew Pinski. + +2003-11-03 Rainer Orth + + * fixinc/inclhack.def (stdio_va_list): Allow tab before va_list. + Merge two substitutions. + * fixinc/fixincl.x: Regenerate. + Fixes PR bootstrap/12666. + +2003-10-28 Franz Sirl + + PR target/11598 + PR libgcj/10610 + * config/rs6000/sysv4.h (PREFERRED_STACK_BOUNDARY): New macro. + +2003-10-27 Falk Hueffner + + PR target/12654 + * config/alpha/alpha.c (alpha_emit_conditional_branch): Don't do + comparison against constant by adjusting the argument except for + EQ and NE. + +2003-10-26 Ottavio Campana + + PR target/12690 + * config/i386/mmintrin.h (_mm_set1_pi8): Fix comment. + +2003-10-25 Bruce Korb + + * gcc/fixinc/tests/base/ansi/string.h: + This fixes a result from a broken sed or a hand-edited output file. + The '__GNUC__' wrappers were misplaced. + +2003-10-25 Eric Botcazou + + PR target/12712 + * reg-stack.c (convert_regs_1): Create an arbitrary input stack + if the block has no predecessors. + (convert_regs_2): Document the problem with successors whose + only predecessor is the block to be processed. + (convert_regs): Don't create the arbitrary input stack here. + +2003-10-22 David Taylor + + PR debug/12500 + * dbxout.c (dbxout_typedefs): Use COMPLETE_OR_VOID_TYPE_P. + +2003-10-20 Zack Weinberg + + * fixinc/inclhack.def (hpux11_snprintf): New edit. + * fixinc/fixincl.x: Regenerate. + * fixinc/tests/base/stdio.h: Add test for hpux11_snprintf. + +2003-05-16 Jakub Jelinek + + * config/ia64/unwind-ia64.c (uw_update_reg_address): Handle + .save XX, r0. + +2003-10-19 Mark Mitchell + + * doc/include/gcc-common.texi: Bump version number. + * version.c (version_string): Reset to prerelease format. + +2003-10-18 Kazu Hirata + + * doc/extend.texi: Fix typos. + +2003-10-16 Release Manager + + * GCC 3.3.2 Released. + +2003-10-14 Jason Merrill + + PR c/11885 + * stor-layout.c (update_alignment_for_field): Packed non-bit-fields + get byte alignment. + +2003-10-14 Rainer Orth + + * fixinc/inclhack.def (alpha_pthread_gcc): New fix. + * fixinc/fixincl.x: Regenerate. + * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_GCC_CHECK]: New + testcase. + Fixes PR bootstrap/9330. + +2003-10-14 Steven Bosscher + + PR target/11087 + Backport from gcc-3_3-rhl-branch and mainline. + + 2003-07-17 Jakub Jelinek + + * loop.c (basic_induction_var): Check if convert_modes + emitted any instructions. Remove them and return 0 if so. + +2003-10-13 Matt Kraai + + PR target/11949 + Backport from mainline: + + 2003-05-05 Aldy Hernandez + + * testsuite/gcc.c-torture/compile/simd-6.c: New. + * c-typeck.c (digest_init): Handle arrays of vector constants. + +2003-10-11 Eric Botcazou + + PR optimization/12544 + * function.c (put_var_into_stack): Don't generate ADDRESSOFs + for DECL_NONLOCAL decls. + +2003-10-09 Eric Botcazou + + PR optimization/12510 + Backport from mainline: + + 2003-09-08 Jakub Jelinek + + * toplev.c (rest_of_compilation): Call split_all_insns before + regstack if optimizing but not scheduling after reload. + +2003-10-09 Rainer Orth + + * fixinc/inclhack.def (stdio_va_list): Removed _ap fix. + (irix_stdio_va_list): Don't require leading printf, IRIX 6.5.21 + introduced some multi-line prototypes. + * fixinc/fixincl.x: Regenerate. + Fixes PR libf2c/12263. + +2003-10-08 Timo Kokkonen + Eric Botcazou + + PR bootstrap/12490 + * scan-decls.c (MAX_EXTERN_C_BRACES): New preprocessor constant + to define the size of the extern_C_braces array. Set it to 200. + (scan_decls): Abort when extern_C_braces_length is out-of-bounds. + +2003-10-06 Eric Botcazou + + PR optimization/12215 + * cse.c (cse_set_around_loop): Emit the move at the beginning + of the next basic block for trapping sets. + +2003-10-06 Eric Botcazou + + PR optimization/11637 + * combine.c (adjust_for_new_dest): New function to adjust the + notes and LOG_LINKS when the dest of an insn has changed. + (try_combine): Use it when deleting the first insn of a two-insn + parallel or splitting a two-load parallel. + +2003-10-04 Stephane Carrez + + * config/m68hc11/t-m68hc11-gas (MULTILIB_MATCHES): m68hcs12 is + identical to m68hc12 as far as libraries are concerned. + +2003-10-04 Eric Botcazou + + PR c/12446 + * c-typeck.c (convert_for_assignment): Issue an error for + array to pointer assignment after default conversion. + (digest_init): Likewise. + +2003-10-03 Gerald Pfeifer + + * doc/extend.texi (Function Attributes): Fix title of GNU C + Preprocessor manual. + (C++ Extensions): Fix reference to "Predefined Macros" in the + GNU C Preprocessor manual. + +2003-10-03 Zdenek Dvorak + + PR/11883 + * cfgloop.c (flow_loops_find): Fix handling of abnormal edges. + +2003-10-02 Mark Mitchell + + PR optimization/12180 + * c-objc-common.c (inline_forbidden_p): Do not permit inlining of + functions containing calls to __builtin_next_arg. + +2003-10-02 Josef Zlomek + + PR/12292 + * combine.c (make_field_assignment): Check whether rtx's code + is CONST_INT before using INTVAL. + +2003-10-02 Josef Zlomek + + Waldek Hebisch + PR/12072 + * varasm.c (compare_constant): Fix thinko. + +2003-10-01 John David Anglin + + * aclocal.m4: Add hpux10* and hpux11.00 to /dev/zero blacklist. + * configure: Rebuilt. + +2003-10-01 John David Anglin + + * aclocal.m4: Add ultrix* to /dev/zero blacklist. + * configure: Rebuilt. + +2003-10-01 Rainer Orth + + * config.gcc (sparc-*-solaris2*): Handle Solaris 10 and up like + Solaris 7-9. + + * fixinc/inclhack.def (solaris_widec): Replace solaris2.[0-5]* by + wildcards which explicitly match micro versions. + * fixinc/fixincl.x: Regenerate. + +2003-10-01 Richard Henderson + + * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Honor + DWARF_ALT_FRAME_RETURN_COLUMN. + * unwind-dw2.c (dwarf_reg_size_table): Expand by one. + (_Unwind_GetGR, _Unwind_SetGR): Validate lookup column. + (uw_frame_state_for): Return end-of-stack for null return address. + + * config/alpha/alpha.c (alpha_sa_mask): Add r31 for eh_return. + (alpha_expand_prologue): Store a zero for it. + (alpha_expand_epilogue): Don't reload it. + * config/alpha/alpha.h (DWARF_ALT_FRAME_RETURN_COLUMN): New. + * config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Use column 64 + for the sigframe return address. + +2003-10-01 Nick Clifton + + * Import this patch from mainline: + + 2003-02-01 John David Anglin + + * collect2.c (pexecute_pid): Rename to pid. + (collect_wait, collect_execute, scan_prog_file, scan_libraries): Use + pid. + +2003-09-23 David S. Miller + + * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Undefine + before redefining. + * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Likewise. + +2003-10-01 Eric Botcazou + + PR optimization/11753 + * config/sparc/sparc.md (length attribute) [fcc branch]: Add 1 to + the length in the non-V9 case. + +2003-09-27 Eric Botcazou + + PR optimization/12340 + * loop.h (struct induction): Document the new semantics + of the 'same' field for bivs. + * unroll.c (biv_total_increment): Don't count the same + biv increment several times. + (loop_iterations) [GENERAL_INDUCT]: Likewise. + +2003-09-26 John David Anglin + + PR bootstrap/12358 + * pa.c (output_bvb): Fix typo. + +2003-09-24 Alexandre Oliva + + * cpplib.c (do_pragma): Reintroduce cb_line_change call in the + code path that calls a handler. + +2003-09-23 Geoffrey Keating + + * config/t-darwin (crt2.o): Add stmp-int-hdrs to dependencies. + + * config/rs6000/rs6000.c (function_arg_pass_by_reference): Don't + pass zero-size arrays by reference. + (rs6000_va_arg): Likewise. + +2003-09-22 Joel Sherrill + + * combine.c, config/mips/t-elf, config/c4x/rtems.h: Revert patches + which should not have been committed with other RTEMS changes. + +2003-09-22 Olivier Hainque + + PR target/9786 + * reg-stack.c (convert_regs_1): Purge possible dead eh edges + after potential deletion of trapping insn. Avoids later ICE + from call to fixup_abnormal_edges. + (convert_regs_2): Stack the current block successors before + processing this block, that is, before the potential deletion of + dead edges by convert_regs_1, because these edges have been used + to initialize the predecessors count. + +2003-09-21 Eric Botcazou + + PR target/12301 + * reorg.c (stop_search_p): Return 1 for insns that can + throw internally. + +2003-09-19 Joel Sherrill + + * config/m68k/t-m68kbare, config/m68k/t-rtems: Change 68681 to + 68881. + +2003-09-19 Ralf Corsepius + + * config/m68k/t-rtems (m68k-*-rtems*): New. + * config.gcc: Use config/m68k/t-rtems. + +2003-09-19 Ralf Corsepius + + * config/mips/t-rtems: New. + * config.gcc (mips*-*-rtems*): Use config/mips/t-rtems. + +2003-09-19 T. Papadopoulo + Eric Botcazou + + PR target/12166 + * config/sparc/sol2-c1.asm (start): Set __Argv if GCRT1. + +2003-09-18 Mark Mitchell + + PR target/11184 + * builtins.c (expand_builtin_apply): Use convert_memory_address + before returning the value. + +2003-09-17 Rainer Orth + + * configure.in (gcc_cv_as_hidden): Only disable if no GNU ld + detected. + * configure: Regenerate. + Fixes PR target/12248. + +2003-09-17 Richard Henderson + + * config/alpha/alpha.c (alpha_expand_mov): Do gen_movdi_er_maybe_g + always during initial code generation. + * config/alpha/alpha.md (movdi_er_maybe_g): Don't conditionalize + on flag_inline_functions. + +2003-09-17 Eric Botcazou + + PR optimization/11646 + * cfgrtl.c (purge_dead_edges) [JUMP_INSN]: Rematerialize the + EDGE_ABNORMAL flag for EH edges. + * toplev.c (rest_of_compilation): Delete unreachable blocks + if dead edges were purged after the first CSE pass. + +2003-09-16 Jakub Jelinek + + * config/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. + * config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. + * config/arm/linux-elf.h (LINK_GCC_C_SEQUENCE_SPEC): Define. + * config/rs6000/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. + * config/rs6000/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define. + * config/sh/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. + * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define. + * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define. + +2003-09-15 Alexandre Oliva + + * cpplib.c (do_pragma): Remove unnecessary cb_line_change. + +2003-09-14 Alexandre Oliva + + * cppmain.c (cb_line_change): Revert 2003-08-04's change. + * c-lex.c (cb_line_change): Skip line changing whenever + cppmain.c would. + +2003-09-11 Alexandre Oliva + + PR fortran/11522 + * dwarf2out.c (gen_inlined_subroutine_die): Emit abstract function + for ultimate origin even if block is abstract. + +2003-09-10 Martin Husemann + + PR target/11965 + * config/sparc/sparc.c (sparc_v8plus_shift): Protect against + constants greater than 63. + * config/sparc/sparc.md (ashlsi3, ashrsi3, lshrsi3): Protect + against constants greater than 31. + (*ashldi3_sp64, *ashrdi3_sp64, *lshrdi3_sp64): Protect against + constants greater than 63. + +2003-09-09 Richard Henderson + + PR target/12224: + * config/ia64/ia64.c (ia64_expand_move): Properly truncate + result when op0 is SImode. + +2003-09-09 Rainer Orth + + * configure.in (gcc_cv_as_ix86_cmov_sun_syntax): Check if + assembler supports Sun syntax for cmov. + * configure: Regenerate. + * config.in: Li{ewise. + * config/i386/i386.c: Rename CMOV_SUN_AS_SYNTAX to + HAVE_AS_IX86_CMOV_SUN_SYNTAX. + * config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Remove. + Fixes PR target/12101. + +2003-09-09 Rainer Orth + + * configure.in (gcc_cv_as_hidden): Disable unless using GNU ld. + * configure: Regenerate. + +2003-09-08 Mark Mitchell + + * mklibgcc.in (libcc.a): Depend on stmp-dirs. + (libgov.a): Likewise. + (libgcc_eh.a): Likewise. + +2003-09-07 Eric Botcazou + + PR target/11689 + * config/i386/i386.c (memory_address_length): Fix computation when + the base is esp or ebp. + +2003-09-07 Mark Mitchell + + PR c++/11852 + * varasm.c (initializer_constant_valid_p): Correct logic for + CONSTRUCTORs. + +Sun Sep 7 14:53:36 CEST 2003 Jan Hubicka + + * cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch. + +2003-09-07 Christian Ehrhardt + + PR optimization/11662 + Backport from mainline: + + 2003-07-10 Denis Chertykov + Richard Kenner + + * combine.c (gen_binary): Handle the CLOBBER rtx and + don't build a binary operation with it. + +Sat Sep 6 23:16:35 CEST 2003 Jan Hubicka + + * cfgcleanup.c (try_simplify_condjump): Fix my previous patch. + + PR target/12070 + * calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments. + + PR opt/12082 + * cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning. + +2003-09-06 Steven Bosscher + + PR c/9862 + * c-decl.c (c_expand_body): Move return warning from here... + (finish_function): ...to here. + +2003-09-05 Jan Hubicka + + PR target/8869 + * expr.c (convert_modes): Deal properly with integer to vector + constant conversion. + +2003-09-05 Andrew Pinski + + PR c/10962 + * c-decl.c (field_decl_cmp): Add back function. + (finish_struct): Sort fields if number greater than 15 + and no anymous structs/unions. + +2003-09-04 Jakub Jelinek + + * config/ia64/libgcc-ia64.ver: Export _Unwind_GetBSP@@GCC_3.3.2. + * config/ia64/unwind-ia64.c (_Unwind_GetBSP): New function. + * unwind.h (_Unwind_GetBSP): New prototype. + * libgcc-std.ver: Add empty GCC_3.3.2 version. + * mkmap-symver.awk: For symbol versions with no exported symbols, + don't put anything into version script, just change all symbol + versions which inherit from it to inherit from its ancestor. + +2003-09-02 Kazuhiro Inaoka + + This is a fix for PR 10988: + * m32r.c (m32r_print_operand): Correct comment. + (m32r_expand_block_move): Correct the handling of leftover/small + blocks. + (m32r_block_small_immediate_operand): New predicate. + * m32r.md (movstrsi_small_internal): New pattern. + * m32r.h (PREDICATE_CODES): Add m32r_block_small_immediate_operand. + * m32r-protos.h: Add prototype for m32r_block_small_immediate_operand. + +2003-08-25 Richard Henderson + + * config/i386.i386.c (ix86_return_in_memory): Reformat. Return true + for 16-byte vector modes if sse not enabled; warn for abi change. + (ix86_value_regno): Only return xmm0 for 16-byte vector types. + +2003-08-25 Zack Weinberg + + * config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove + commented-out logic to use DCE threads (if present), add + support for POSIX threads. + * config/ia64/hpux.h: Define CPP_SPEC to set appropriate + #defines for -pthread. Add -lpthread to LIB_SPEC when + -pthread. In both cases take -mt as a synonym for -pthread + for acc compatibility. + Define GTHREAD_USE_WEAK to 0. + * config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC. + Remove old logic for DCE threads from LIB_SPEC. + * config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0. + +2003-08-25 Ulrich Weigand + + * combine.c (distribute_notes): Handle REG_ALWAYS_RETURN. + +2003-08-23 Jakub Jelinek + + * c-decl.c (pushdecl): Only put decls which finish_struct will do + something about onto incomplete chain. + (finish_struct): If not removing type from incomplete + list, update prev. + +2003-08-23 Alexandre Oliva + + * cppmain.c (cb_line_change): Don't skip line changing while + parsing macro arguments in the top-level context. + +2003-08-22 Mark Mitchell + + * config/ia64/hpux.h (SUPPORTS_INIT_PRIORITY): Define to 0. + + * config/ia64/ia64.c (ia64_output_mi_thunk): Support ILP32 mode. + +2003-08-21 Kazu Hirata + + PR target/11805 + * config/h8300/h8300.md (two anonymous patterns): Remove. + +2003-08-20 Kaveh R. Ghazi + + * stmt.c (expand_asm_operands): Avoid string concatenation. + * tree.c (default_flag_random_seed): Avoid ISO C definition. + * varasm.c (output_constant_def): Delete unused variable. + +2003-08-18 Matt Kraai + + PR c/11207 + * c-typeck.c (set_init_index): Check for negative index. + +2003-08-14 Mark Mitchell + + * version.c (version_string): Use "prerelease" not "experimental". + +2003-08-11 James E Wilson + + PR optimization/11319 + PR target/10021 + * alias.c (find_base_value, case REG): Return 0 not src if no base + found. + +2003-08-11 Kean Johnston + + * fixinc/inclhack.def (sco_math): Updated test text and select trigger + according to bkorb's review. + * fixinc/inclhack.def (sco_regset): Ditto. + * fixinc/inclhack.def (AAB_svr4_replace_byteorder): Remove all mach + lines so that this file is unconditionally replaced. + * fixinc/inclhack.def (sco_string): Use ansi/string.h as the first file + to check so that the Ultrix string.h check doesnt overwrite the test + case with its replacement text. + * fixinc/fixincl.x: Regenerated + * fixinc/tests/base/math.h: Updated sco_math result text + * fixinc/tests/base/ansi/string.h: New file. + * fixinc/tests/base/sys/regset.h: Compacted result text to fewer lines. + +2003-08-11 Dale Johannesen + * config/rs6000/rs6000.md (ctrsi, ctrdi): Reenable handling of + decrement-and-branch farther away than 32 bits. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Nov 7 23:02:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AF46F16A4D0; Fri, 7 Nov 2003 23:02:44 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8680816A4CE for ; Fri, 7 Nov 2003 23:02:44 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 05E1C43FF7 for ; Fri, 7 Nov 2003 23:02:44 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA872hXJ032797 for ; Fri, 7 Nov 2003 23:02:43 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA872hZ3032794 for perforce@freebsd.org; Fri, 7 Nov 2003 23:02:43 -0800 (PST) (envelope-from peter@freebsd.org) Date: Fri, 7 Nov 2003 23:02:43 -0800 (PST) Message-Id: <200311080702.hA872hZ3032794@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41730 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 07:02:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=41730 Change 41730 by peter@peter_overcee on 2003/11/07 23:02:32 tidy up some loose ends Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/db_trace.c#10 edit .. //depot/projects/hammer/sys/amd64/amd64/fpu.c#2 edit .. //depot/projects/hammer/sys/amd64/ia32/ia32_syscall.c#7 edit .. //depot/projects/hammer/sys/amd64/isa/npx.c#8 delete Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/db_trace.c#10 (text+ko) ==== @@ -246,7 +246,7 @@ strcmp(name, "fork_trampoline") == 0) frame_type = TRAP; else if (strncmp(name, "Xatpic_intr", 11) == 0 || - strncmp(name, "Xatpic_fastintr", 15) == 0) + strncmp(name, "Xatpic_fastintr", 15) == 0 || strncmp(name, "Xapic_isr", 9) == 0) frame_type = INTERRUPT; else if (strcmp(name, "Xfast_syscall") == 0) ==== //depot/projects/hammer/sys/amd64/amd64/fpu.c#2 (text+ko) ==== @@ -55,6 +55,7 @@ #include #include +#include #include #include #include @@ -63,8 +64,6 @@ #include #include -#include - /* * Floating point support. */ ==== //depot/projects/hammer/sys/amd64/ia32/ia32_syscall.c#7 (text+ko) ==== @@ -76,10 +76,10 @@ #include #include +#include #include #include -#include #define IDTVEC(name) __CONCAT(X,name) From owner-p4-projects@FreeBSD.ORG Fri Nov 7 23:30:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D6B016A4D1; Fri, 7 Nov 2003 23:30:18 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2465716A4CF for ; Fri, 7 Nov 2003 23:30:18 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9AFD943FF2 for ; Fri, 7 Nov 2003 23:30:17 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA87UHXJ034882 for ; Fri, 7 Nov 2003 23:30:17 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA87UH1R034879 for perforce@freebsd.org; Fri, 7 Nov 2003 23:30:17 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Fri, 7 Nov 2003 23:30:17 -0800 (PST) Message-Id: <200311080730.hA87UH1R034879@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41731 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 07:30:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=41731 Change 41731 by jmallett@jmallett_dalek on 2003/11/07 23:30:06 Use the TLB more effectively. Affected files ... .. //depot/projects/mips/sys/mips/mips/tlb.c#11 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/tlb.c#11 (text+ko) ==== @@ -110,6 +110,13 @@ printf("pmap %p entering invalid mapping for va %lx to pa %lx [%lx]\n", pmap, (u_long)va, (u_long)pa, (u_long)bits); *pte = MIPS_PA_TO_PFN(pa) | bits; +#if notyet + if ((va >> PAGE_SHIFT) & 1) { + tlb_update(va, pte[-1], pte[0]); + } else { + tlb_update(va, pte[0], pte[1]); + } +#endif } void @@ -144,6 +151,7 @@ tlb_insert(vm_offset_t va, pt_entry_t pte0, pt_entry_t pte1) { u_long ehi; + long i; va &= ~PAGE_MASK; ehi = 0; @@ -153,9 +161,15 @@ ehi |= MIPS_HI_VA_TO_VPN2(va); ehi |= /* asid */0; mips_wr_entryhi(ehi); + mips_tlbp(); + i = mips_rd_index(); mips_wr_entrylo0(pte0 | PG_G); mips_wr_entrylo1(pte1 | PG_G); - mips_tlbwr(); + mips_wr_entryhi(ehi); + if (i < 0) + mips_tlbwr(); + else + mips_tlbwi(); } void @@ -193,7 +207,6 @@ tlb_update(vm_offset_t va, pt_entry_t pte0, pt_entry_t pte1) { va &= ~PAGE_MASK; - tlb_invalidate_page(va); tlb_insert(va, pte0, pte1); } From owner-p4-projects@FreeBSD.ORG Sat Nov 8 11:22:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D6C1416A4D0; Sat, 8 Nov 2003 11:22:50 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A2FD716A4CE for ; Sat, 8 Nov 2003 11:22:50 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EDB9543F75 for ; Sat, 8 Nov 2003 11:22:47 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8JMlXJ096017 for ; Sat, 8 Nov 2003 11:22:47 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8JLOEO095910 for perforce@freebsd.org; Sat, 8 Nov 2003 11:21:24 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 11:21:24 -0800 (PST) Message-Id: <200311081921.hA8JLOEO095910@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41751 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 19:22:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=41751 Change 41751 by jmallett@jmallett_dalek on 2003/11/08 11:20:00 IFC. Compiler, etc., have not been updated, but will fetch files from FSF as soon as necessary, and start updating. MD kernel changes to come... Affected files ... .. //depot/projects/mips/MAINTAINERS#12 integrate .. //depot/projects/mips/Makefile#7 integrate .. //depot/projects/mips/Makefile.inc1#17 integrate .. //depot/projects/mips/UPDATING#12 integrate .. //depot/projects/mips/bin/Makefile.inc#2 integrate .. //depot/projects/mips/bin/chmod/chmod.c#4 integrate .. //depot/projects/mips/bin/cp/cp.1#3 integrate .. //depot/projects/mips/bin/cp/cp.c#5 integrate .. //depot/projects/mips/bin/cp/utils.c#4 integrate .. //depot/projects/mips/bin/csh/Makefile#3 integrate .. //depot/projects/mips/bin/date/Makefile#2 integrate .. //depot/projects/mips/bin/date/date.c#4 integrate .. //depot/projects/mips/bin/dd/Makefile#3 integrate .. //depot/projects/mips/bin/df/Makefile#2 integrate .. //depot/projects/mips/bin/df/df.1#3 integrate .. //depot/projects/mips/bin/df/df.c#5 integrate .. //depot/projects/mips/bin/echo/echo.c#4 integrate .. //depot/projects/mips/bin/ed/Makefile#3 integrate .. //depot/projects/mips/bin/ed/cbc.c#2 integrate .. //depot/projects/mips/bin/ed/ed.h#2 integrate .. //depot/projects/mips/bin/ed/re.c#2 integrate .. //depot/projects/mips/bin/expr/Makefile#2 integrate .. //depot/projects/mips/bin/kenv/Makefile#3 integrate .. //depot/projects/mips/bin/ls/Makefile#4 integrate .. //depot/projects/mips/bin/ls/ls.1#8 integrate .. //depot/projects/mips/bin/ls/print.c#8 integrate .. //depot/projects/mips/bin/ls/util.c#4 integrate .. //depot/projects/mips/bin/pax/Makefile#3 integrate .. //depot/projects/mips/bin/ps/Makefile#4 integrate .. //depot/projects/mips/bin/ps/extern.h#5 integrate .. //depot/projects/mips/bin/ps/keyword.c#6 integrate .. //depot/projects/mips/bin/ps/print.c#7 integrate .. //depot/projects/mips/bin/ps/ps.1#5 integrate .. //depot/projects/mips/bin/ps/ps.c#5 integrate .. //depot/projects/mips/bin/pwd/pwd.c#3 integrate .. //depot/projects/mips/bin/rcp/rcp.c#5 integrate .. //depot/projects/mips/bin/rmail/Makefile#2 integrate .. //depot/projects/mips/bin/setfacl/setfacl.1#3 integrate .. //depot/projects/mips/bin/setfacl/setfacl.c#3 integrate .. //depot/projects/mips/bin/sh/alias.c#2 integrate .. //depot/projects/mips/bin/sh/arith.h#2 integrate .. //depot/projects/mips/bin/sh/arith.y#3 integrate .. //depot/projects/mips/bin/sh/arith_lex.l#3 integrate .. //depot/projects/mips/bin/sh/cd.c#2 integrate .. //depot/projects/mips/bin/sh/exec.c#2 integrate .. //depot/projects/mips/bin/sh/exec.h#2 integrate .. //depot/projects/mips/bin/sh/expand.c#5 integrate .. //depot/projects/mips/bin/sh/input.c#2 integrate .. //depot/projects/mips/bin/sh/jobs.c#5 integrate .. //depot/projects/mips/bin/sh/memalloc.c#5 integrate .. //depot/projects/mips/bin/sh/mkbuiltins#3 integrate .. //depot/projects/mips/bin/sh/nodes.c.pat#5 integrate .. //depot/projects/mips/bin/sh/output.c#2 integrate .. //depot/projects/mips/bin/sh/parser.c#3 integrate .. //depot/projects/mips/bin/sh/redir.c#2 integrate .. //depot/projects/mips/bin/sh/sh.1#6 integrate .. //depot/projects/mips/bin/sh/shell.h#2 integrate .. //depot/projects/mips/bin/sh/var.c#3 integrate .. //depot/projects/mips/bin/test/Makefile#2 integrate .. //depot/projects/mips/contrib/amd/AUTHORS#2 integrate .. //depot/projects/mips/contrib/amd/BUGS#2 integrate .. //depot/projects/mips/contrib/amd/COPYING#2 integrate .. //depot/projects/mips/contrib/amd/ChangeLog#2 integrate .. //depot/projects/mips/contrib/amd/FREEBSD-upgrade#2 integrate .. //depot/projects/mips/contrib/amd/INSTALL#2 integrate .. //depot/projects/mips/contrib/amd/MIRRORS#2 integrate .. //depot/projects/mips/contrib/amd/NEWS#2 integrate .. //depot/projects/mips/contrib/amd/README#2 integrate .. //depot/projects/mips/contrib/amd/README.ldap#2 integrate .. //depot/projects/mips/contrib/amd/amd/am_ops.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amd.8#3 integrate .. //depot/projects/mips/contrib/amd/amd/amd.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amd.h#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_auto.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_direct.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_error.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_host.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_inherit.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_link.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_linkx.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_nfsl.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_nfsx.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_program.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_root.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_toplvl.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amfs_union.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amq_subr.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/amq_svc.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/autil.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/clock.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/conf.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/conf_parse.y#2 integrate .. //depot/projects/mips/contrib/amd/amd/conf_tok.l#2 integrate .. //depot/projects/mips/contrib/amd/amd/get_args.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/info_file.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/info_hesiod.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/info_ldap.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/info_ndbm.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/info_nis.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/info_nisplus.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/info_passwd.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/info_union.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/map.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/mapc.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/mntfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/nfs_prot_svc.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/nfs_start.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/nfs_subr.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_TEMPLATE.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_autofs.c#2 delete .. //depot/projects/mips/contrib/amd/amd/ops_cachefs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_cdfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_efs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_lofs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_mfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_nfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_nfs3.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_nullfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_pcfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_tfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_tmpfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_ufs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_umapfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_unionfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/ops_xfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/opts.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/restart.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/rpc_fwd.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/sched.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/srvr_amfs_auto.c#2 integrate .. //depot/projects/mips/contrib/amd/amd/srvr_nfs.c#2 integrate .. //depot/projects/mips/contrib/amd/amq/amq.8#3 integrate .. //depot/projects/mips/contrib/amd/amq/amq.c#2 integrate .. //depot/projects/mips/contrib/amd/amq/amq.h#2 integrate .. //depot/projects/mips/contrib/amd/amq/amq_clnt.c#2 integrate .. //depot/projects/mips/contrib/amd/amq/amq_xdr.c#2 integrate .. //depot/projects/mips/contrib/amd/amq/pawd.1#2 integrate .. //depot/projects/mips/contrib/amd/amq/pawd.c#2 integrate .. //depot/projects/mips/contrib/amd/aux_conf.h.in#2 integrate .. //depot/projects/mips/contrib/amd/bootstrap#1 branch .. //depot/projects/mips/contrib/amd/commit#1 branch .. //depot/projects/mips/contrib/amd/conf/checkmount/checkmount_bsd44.c#2 integrate .. //depot/projects/mips/contrib/amd/conf/mount/mount_default.c#1 branch .. //depot/projects/mips/contrib/amd/conf/mtab/mtab_bsd.c#2 integrate .. //depot/projects/mips/contrib/amd/conf/nfs_prot/nfs_prot_aix5_1.h#1 branch .. //depot/projects/mips/contrib/amd/conf/nfs_prot/nfs_prot_darwin.h#2 integrate .. //depot/projects/mips/contrib/amd/conf/nfs_prot/nfs_prot_freebsd2.h#2 integrate .. //depot/projects/mips/contrib/amd/conf/nfs_prot/nfs_prot_freebsd3.h#2 integrate .. //depot/projects/mips/contrib/amd/conf/nfs_prot/nfs_prot_osf5.h#1 branch .. //depot/projects/mips/contrib/amd/conf/nfs_prot/nfs_prot_sunos5_8.h#1 branch .. //depot/projects/mips/contrib/amd/conf/transp/transp_sockets.c#2 integrate .. //depot/projects/mips/contrib/amd/conf/umount/umount_bsd44.c#2 integrate .. //depot/projects/mips/contrib/amd/config.guess#1 branch .. //depot/projects/mips/contrib/amd/config.guess.long#1 branch .. //depot/projects/mips/contrib/amd/config.sub#1 branch .. //depot/projects/mips/contrib/amd/configure.in#1 branch .. //depot/projects/mips/contrib/amd/cvs-server.txt#1 branch .. //depot/projects/mips/contrib/amd/depcomp#1 branch .. //depot/projects/mips/contrib/amd/doc/am-utils.texi#2 integrate .. //depot/projects/mips/contrib/amd/doc/mdate-sh#1 branch .. //depot/projects/mips/contrib/amd/doc/stamp-vti#2 delete .. //depot/projects/mips/contrib/amd/doc/texinfo.tex#2 integrate .. //depot/projects/mips/contrib/amd/fixmount/fixmount.8#3 integrate .. //depot/projects/mips/contrib/amd/fixmount/fixmount.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsi_analyze.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsi_data.h#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsi_dict.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsi_gram.y#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsi_lex.l#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsi_util.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsinfo.8#3 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsinfo.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/fsinfo.h#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/wr_atab.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/wr_bparam.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/wr_dumpset.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/wr_exportfs.c#2 integrate .. //depot/projects/mips/contrib/amd/fsinfo/wr_fstab.c#2 integrate .. //depot/projects/mips/contrib/amd/hlfsd/hlfsd.8#3 integrate .. //depot/projects/mips/contrib/amd/hlfsd/hlfsd.c#2 integrate .. //depot/projects/mips/contrib/amd/hlfsd/hlfsd.h#2 integrate .. //depot/projects/mips/contrib/amd/hlfsd/homedir.c#2 integrate .. //depot/projects/mips/contrib/amd/hlfsd/nfs_prot_svc.c#2 integrate .. //depot/projects/mips/contrib/amd/hlfsd/stubs.c#2 integrate .. //depot/projects/mips/contrib/amd/include/am_compat.h#2 integrate .. //depot/projects/mips/contrib/amd/include/am_defs.h#2 integrate .. //depot/projects/mips/contrib/amd/include/am_utils.h#2 integrate .. //depot/projects/mips/contrib/amd/include/am_xdr_func.h#2 integrate .. //depot/projects/mips/contrib/amd/include/amq_defs.h#2 integrate .. //depot/projects/mips/contrib/amd/include/mount_headers1.h#2 integrate .. //depot/projects/mips/contrib/amd/install-sh#1 branch .. //depot/projects/mips/contrib/amd/libamu/amu.h#2 integrate .. //depot/projects/mips/contrib/amd/libamu/hasmntopt.c#2 integrate .. //depot/projects/mips/contrib/amd/libamu/misc_rpc.c#2 integrate .. //depot/projects/mips/contrib/amd/libamu/mount_fs.c#2 integrate .. //depot/projects/mips/contrib/amd/libamu/mtab.c#2 integrate .. //depot/projects/mips/contrib/amd/libamu/nfs_prot_xdr.c#2 integrate .. //depot/projects/mips/contrib/amd/libamu/strerror.c#1 branch .. //depot/projects/mips/contrib/amd/libamu/util.c#2 integrate .. //depot/projects/mips/contrib/amd/libamu/wire.c#2 integrate .. //depot/projects/mips/contrib/amd/libamu/xdr_func.c#2 integrate .. //depot/projects/mips/contrib/amd/libamu/xutil.c#2 integrate .. //depot/projects/mips/contrib/amd/ltmain.sh#1 branch .. //depot/projects/mips/contrib/amd/m4/GNUmakefile#1 branch .. //depot/projects/mips/contrib/amd/m4/amdgrep#1 branch .. //depot/projects/mips/contrib/amd/m4/amindent#1 branch .. //depot/projects/mips/contrib/amd/m4/autopat#1 branch .. //depot/projects/mips/contrib/amd/m4/chop-aclocal.pl#1 branch .. //depot/projects/mips/contrib/amd/m4/copy-if-newbig#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/HEADER#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/TRAILER#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/c_void_p.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/cache_check_dynamic.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_amu_fs.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_checkmount_style.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_extern.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_fhandle.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_field.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_fs_headers.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_fs_mntent.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_gnu_getopt.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_hide_mount_type.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_lib2.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_map_funcs.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mnt2_cdfs_opt.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mnt2_gen_opt.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mnt2_nfs_opt.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mnttab_file_name.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mnttab_location.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mnttab_opt.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mnttab_style.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mnttab_type.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mount_style.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mount_trap.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mount_type.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mtype_printf_type.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_mtype_type.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_network_transport_type.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_nfs_fh_dref.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_nfs_hn_dref.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_nfs_prot_headers.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_nfs_sa_dref.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_nfs_socket_connection.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_os_libs.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_restartable_signal_handler.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_umount_style.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_unmount_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/check_unmount_call.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/expand_cpp_hex.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/expand_cpp_int.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/expand_cpp_string.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/expand_run_string.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/extern_optarg.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/extern_sys_errlist.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/field_mntent_t_mnt_time_string.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/func_bad_memcmp.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/func_bad_yp_all.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/header_templates.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/host_macros.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/linux_headers.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/localconfig.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/mount_headers.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/name_package.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/name_version.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/opt_amu_cflags.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/opt_cppflags.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/opt_debug.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/opt_ldflags.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/opt_libs.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/os_cflags.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/os_cppflags.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/os_ldflags.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/package_bugreport.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/package_name.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/package_version.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/save_state.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/struct_field_nfs_fh.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/struct_mntent.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/struct_mnttab.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/struct_nfs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/struct_nfs_fh.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/struct_nfs_fh3.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/struct_nfs_gfs_mount.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/try_compile_anyfs.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/try_compile_nfs.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/try_compile_rpc.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_auth_create_gidlist.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_cachefs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_cdfs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_efs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_lofs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_mfs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_pcfs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_recvfrom_fromlen.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_rfs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_svc_in_arg.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_time_t.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_tmpfs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_ufs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_xdrproc_t.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_xfs_args.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/type_yp_order_outorder.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/macros/with_addon.m4#1 branch .. //depot/projects/mips/contrib/amd/m4/mk-aclocal#1 branch .. //depot/projects/mips/contrib/amd/m4/mkconf#1 branch .. //depot/projects/mips/contrib/amd/m4/rmtspc#1 branch .. //depot/projects/mips/contrib/amd/m4/update_build_version#1 branch .. //depot/projects/mips/contrib/amd/missing#1 branch .. //depot/projects/mips/contrib/amd/mk-amd-map/mk-amd-map.8#2 integrate .. //depot/projects/mips/contrib/amd/mk-amd-map/mk-amd-map.c#2 integrate .. //depot/projects/mips/contrib/amd/mkinstalldirs#1 branch .. //depot/projects/mips/contrib/amd/scripts/amd.conf-sample#2 integrate .. //depot/projects/mips/contrib/amd/scripts/amd.conf.5#3 integrate .. //depot/projects/mips/contrib/amd/scripts/automount2amd.8#2 integrate .. //depot/projects/mips/contrib/amd/scripts/ctl-amd.in#2 integrate .. //depot/projects/mips/contrib/amd/scripts/ctl-hlfsd.in#2 integrate .. //depot/projects/mips/contrib/amd/scripts/expn.1#2 integrate .. //depot/projects/mips/contrib/amd/scripts/expn.in#2 integrate .. //depot/projects/mips/contrib/amd/scripts/lostaltmail.in#2 integrate .. //depot/projects/mips/contrib/amd/scripts/redhat-ctl-amd.in#1 branch .. //depot/projects/mips/contrib/amd/tasks#2 integrate .. //depot/projects/mips/contrib/amd/wire-test/wire-test.8#2 integrate .. //depot/projects/mips/contrib/amd/wire-test/wire-test.c#2 integrate .. //depot/projects/mips/contrib/bind/CHANGES#4 integrate .. //depot/projects/mips/contrib/bind/FREEBSD-Upgrade#2 integrate .. //depot/projects/mips/contrib/bind/README#3 integrate .. //depot/projects/mips/contrib/bind/Version#3 integrate .. //depot/projects/mips/contrib/bind/bin/dig/dig.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/dnsquery/dnsquery.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/host/host.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named-xfer/named-xfer.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/db_defs.h#4 integrate .. //depot/projects/mips/contrib/bind/bin/named/db_ixfr.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/db_load.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/db_sec.c#4 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_config.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_ctl.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_defs.h#4 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_forw.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_func.h#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_glob.h#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_init.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_ixfr.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_lexer.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_main.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_maint.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_ncache.c#4 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_parser.y#2 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_req.c#4 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_resp.c#4 integrate .. //depot/projects/mips/contrib/bind/bin/named/ns_update.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/ndc/ndc.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/nslookup/getinfo.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/nslookup/main.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/nslookup/send.c#2 integrate .. //depot/projects/mips/contrib/bind/bin/nsupdate/nsupdate.c#2 integrate .. //depot/projects/mips/contrib/bind/doc/html/options.html#3 integrate .. //depot/projects/mips/contrib/bind/doc/man/dig.1#2 integrate .. //depot/projects/mips/contrib/bind/doc/man/named-xfer.8#2 integrate .. //depot/projects/mips/contrib/bind/doc/man/named.8#2 integrate .. //depot/projects/mips/contrib/bind/doc/man/named.conf.5#3 integrate .. //depot/projects/mips/contrib/bind/doc/man/resolver.3#3 integrate .. //depot/projects/mips/contrib/bind/include/arpa/nameser.h#2 integrate .. //depot/projects/mips/contrib/bind/include/arpa/nameser_compat.h#2 integrate .. //depot/projects/mips/contrib/bind/include/hesiod.h#2 integrate .. //depot/projects/mips/contrib/bind/include/irp.h#2 integrate .. //depot/projects/mips/contrib/bind/include/irs.h#2 integrate .. //depot/projects/mips/contrib/bind/include/isc/ctl.h#2 integrate .. //depot/projects/mips/contrib/bind/include/isc/dst.h#2 integrate .. //depot/projects/mips/contrib/bind/include/isc/eventlib.h#2 integrate .. //depot/projects/mips/contrib/bind/include/isc/irpmarshall.h#2 integrate .. //depot/projects/mips/contrib/bind/include/isc/logging.h#2 integrate .. //depot/projects/mips/contrib/bind/include/isc/misc.h#2 integrate .. //depot/projects/mips/contrib/bind/include/isc/tree.h#2 integrate .. //depot/projects/mips/contrib/bind/include/netgroup.h#2 integrate .. //depot/projects/mips/contrib/bind/include/resolv.h#2 integrate .. //depot/projects/mips/contrib/bind/lib/dst/bsafe_link.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/dst/cylink_link.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/dst/dst_api.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/dst/hmac_link.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/dns_gr.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/dns_ho.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/dns_nw.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/gen_gr.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/getaddrinfo.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/gethostent.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/getnameinfo.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/getnetgrent.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/getnetgrent_r.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/hesiod.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/irp_p.h#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/irs_data.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/nis_gr.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/irs/nis_ho.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/isc/ctl_clnt.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/isc/ctl_srvr.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/isc/ev_files.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/isc/ev_timers.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/isc/ev_waits.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/isc/eventlib.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/isc/eventlib_p.h#2 integrate .. //depot/projects/mips/contrib/bind/lib/isc/logging.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/nameser/ns_name.c#4 integrate .. //depot/projects/mips/contrib/bind/lib/nameser/ns_parse.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/nameser/ns_print.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/nameser/ns_samedomain.c#4 integrate .. //depot/projects/mips/contrib/bind/lib/nameser/ns_sign.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_comp.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_debug.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_findzonecut.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_init.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_mkquery.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_mkupdate.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_private.h#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_query.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_send.c#2 integrate .. //depot/projects/mips/contrib/bind/lib/resolv/res_update.c#2 integrate .. //depot/projects/mips/contrib/bind/port/freebsd/bin/probe_ipv6#2 integrate .. //depot/projects/mips/contrib/bind/port/freebsd/include/port_after.h#2 integrate .. //depot/projects/mips/contrib/binutils/bfd/elf64-alpha.c#4 integrate .. //depot/projects/mips/contrib/cpio/copypass.c#2 integrate .. //depot/projects/mips/contrib/cvs/src/main.c#3 integrate .. //depot/projects/mips/contrib/diff/util.c#3 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog#5 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog.0#2 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog.1#2 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog.2#2 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog.3#2 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog.4#2 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog.5#2 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog.6#2 integrate .. //depot/projects/mips/contrib/gcc/ChangeLog.7#1 branch .. //depot/projects/mips/contrib/gcc/FSFChangeLog.10#2 integrate .. //depot/projects/mips/contrib/gcc/FSFChangeLog.11#2 integrate .. //depot/projects/mips/contrib/gcc/LANGUAGES#2 integrate .. //depot/projects/mips/contrib/gcc/Makefile.in#5 integrate .. //depot/projects/mips/contrib/gcc/ONEWS#2 integrate .. //depot/projects/mips/contrib/gcc/README.Portability#2 integrate .. //depot/projects/mips/contrib/gcc/aclocal.m4#2 integrate .. //depot/projects/mips/contrib/gcc/alias.c#4 integrate .. //depot/projects/mips/contrib/gcc/ansidecl.h#2 integrate .. //depot/projects/mips/contrib/gcc/attribs.c#2 integrate .. //depot/projects/mips/contrib/gcc/basic-block.h#3 integrate .. //depot/projects/mips/contrib/gcc/bb-reorder.c#2 integrate .. //depot/projects/mips/contrib/gcc/bitmap.c#2 integrate .. //depot/projects/mips/contrib/gcc/bitmap.h#2 integrate .. //depot/projects/mips/contrib/gcc/builtin-attrs.def#2 integrate .. //depot/projects/mips/contrib/gcc/builtin-types.def#3 integrate .. //depot/projects/mips/contrib/gcc/builtins.c#4 integrate .. //depot/projects/mips/contrib/gcc/builtins.def#2 integrate .. //depot/projects/mips/contrib/gcc/c-aux-info.c#2 integrate .. //depot/projects/mips/contrib/gcc/c-common.c#4 integrate .. //depot/projects/mips/contrib/gcc/c-common.def#2 integrate .. //depot/projects/mips/contrib/gcc/c-common.h#3 integrate .. //depot/projects/mips/contrib/gcc/c-config-lang.in#1 branch .. //depot/projects/mips/contrib/gcc/c-convert.c#2 integrate .. //depot/projects/mips/contrib/gcc/c-decl.c#5 integrate .. //depot/projects/mips/contrib/gcc/c-dump.c#1 branch .. //depot/projects/mips/contrib/gcc/c-errors.c#2 integrate .. //depot/projects/mips/contrib/gcc/c-format.c#4 integrate .. //depot/projects/mips/contrib/gcc/c-lang.c#2 integrate .. //depot/projects/mips/contrib/gcc/c-lex.c#2 integrate .. //depot/projects/mips/contrib/gcc/c-objc-common.c#4 integrate .. //depot/projects/mips/contrib/gcc/c-opts.c#1 branch .. //depot/projects/mips/contrib/gcc/c-parse.in#4 integrate .. //depot/projects/mips/contrib/gcc/c-pragma.c#2 integrate .. //depot/projects/mips/contrib/gcc/c-pragma.h#2 integrate .. //depot/projects/mips/contrib/gcc/c-pretty-print.c#1 branch .. //depot/projects/mips/contrib/gcc/c-pretty-print.h#1 branch .. //depot/projects/mips/contrib/gcc/c-semantics.c#3 integrate .. //depot/projects/mips/contrib/gcc/c-tree.h#3 integrate .. //depot/projects/mips/contrib/gcc/c-typeck.c#3 integrate .. //depot/projects/mips/contrib/gcc/caller-save.c#2 integrate .. //depot/projects/mips/contrib/gcc/calls.c#5 integrate .. //depot/projects/mips/contrib/gcc/cfg.c#2 integrate .. //depot/projects/mips/contrib/gcc/cfganal.c#4 integrate .. //depot/projects/mips/contrib/gcc/cfgbuild.c#3 integrate .. //depot/projects/mips/contrib/gcc/cfgcleanup.c#4 integrate .. //depot/projects/mips/contrib/gcc/cfglayout.c#2 integrate .. //depot/projects/mips/contrib/gcc/cfglayout.h#2 integrate .. //depot/projects/mips/contrib/gcc/cfgloop.c#2 integrate .. //depot/projects/mips/contrib/gcc/cfgrtl.c#3 integrate .. //depot/projects/mips/contrib/gcc/collect2.c#2 integrate .. //depot/projects/mips/contrib/gcc/collect2.h#2 integrate .. //depot/projects/mips/contrib/gcc/combine.c#3 integrate .. //depot/projects/mips/contrib/gcc/config.gcc#4 integrate .. //depot/projects/mips/contrib/gcc/config.in#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/alpha-interix.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/alpha-protos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/alpha.c#3 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/alpha.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/alpha.md#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/ev4.md#1 branch .. //depot/projects/mips/contrib/gcc/config/alpha/ev5.md#1 branch .. //depot/projects/mips/contrib/gcc/config/alpha/ev6.md#1 branch .. //depot/projects/mips/contrib/gcc/config/alpha/freebsd.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/gnu.h#1 branch .. //depot/projects/mips/contrib/gcc/config/alpha/linux-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/linux.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/netbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/openbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/osf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/osf5.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/t-crtfm#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/unicosmk.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/vms-cc.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/vms-crt0-64.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/vms-crt0.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/vms-ld.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/vms-psxcrt0-64.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/vms-psxcrt0.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/vms.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/alpha/vxworks.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/README-interworking#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/aof.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/aout.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/arm-modes.def#1 branch .. //depot/projects/mips/contrib/gcc/config/arm/arm-protos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/arm.c#3 integrate .. //depot/projects/mips/contrib/gcc/config/arm/arm.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/arm/arm.md#3 integrate .. //depot/projects/mips/contrib/gcc/config/arm/coff.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/conix-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/crti.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/crtn.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/freebsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/linux-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/linux-gas.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/netbsd-elf.h#1 branch .. //depot/projects/mips/contrib/gcc/config/arm/netbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/pe.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/pe.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/rtems-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/semi.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/semiaof.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/t-arm-elf#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/t-pe#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/unknown-elf-oabi.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/unknown-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/vxarm.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/xscale-coff.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/arm/xscale-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/darwin-c.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/darwin-crt2.c#1 branch .. //depot/projects/mips/contrib/gcc/config/darwin-protos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/darwin.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/darwin.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/dbx.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/dbxcoff.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/dbxelf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/elfos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/fp-bit.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/fp-bit.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/freebsd-spec.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/freebsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/frv/cmovd.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/cmovh.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/cmovw.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frv-abi.h#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frv-asm.h#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frv-modes.def#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frv-protos.h#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frv.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frv.h#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frv.md#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frvbegin.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/frvend.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/lib1funcs.asm#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/modi.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/t-frv#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/uitod.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/uitof.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/ulltod.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/ulltof.c#1 branch .. //depot/projects/mips/contrib/gcc/config/frv/umodi.c#1 branch .. //depot/projects/mips/contrib/gcc/config/gnu.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/gofast.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/athlon.md#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/att.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/beos-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/biarch64.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/bsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/crtdll.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/cygwin.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/i386/darwin.h#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/djgpp.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/emmintrin.h#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/freebsd-aout.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/freebsd.h#5 integrate .. //depot/projects/mips/contrib/gcc/config/i386/freebsd.h.fixed#2 delete .. //depot/projects/mips/contrib/gcc/config/i386/freebsd64.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/i386/gas.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/gnu.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/gstabs.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/gthr-win32.c#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/i386-aout.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386-coff.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386-interix.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386-interix3.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386-modes.def#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/i386-protos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386.c#6 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386.h#6 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386.md#3 integrate .. //depot/projects/mips/contrib/gcc/config/i386/i386elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/k6.md#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/linux-aout.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/linux.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/linux64.h#4 integrate .. //depot/projects/mips/contrib/gcc/config/i386/lynx-ng.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/lynx.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/mach.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/mingw32.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/i386/mmintrin.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/i386/moss.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/netbsd-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/netbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/netbsd64.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/openbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/pentium.md#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/pmmintrin.h#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/ppro.md#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/ptx4-i.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/rtemself.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/sco5.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/sol2.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/svr3dbx.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/svr3gas.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/sysv3.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/sysv4-cpp.h#1 branch .. //depot/projects/mips/contrib/gcc/config/i386/sysv4.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/sysv5.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/t-cygwin#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/t-interix#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/t-linux64#3 integrate .. //depot/projects/mips/contrib/gcc/config/i386/t-mingw32#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/t-sco5#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/t-sco5gas#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/unix.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/uwin.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/vsta.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/vxi386.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/win32.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/winnt.c#3 integrate .. //depot/projects/mips/contrib/gcc/config/i386/x86-64.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/xm-vsta.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/i386/xmmintrin.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/aix.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/crtbegin.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/crtend.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/freebsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/hpux.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/hpux_longdouble.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/ia64-c.c#1 branch .. //depot/projects/mips/contrib/gcc/config/ia64/ia64-modes.def#1 branch .. //depot/projects/mips/contrib/gcc/config/ia64/ia64-protos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/ia64.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/ia64.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/ia64.md#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/ia64intrin.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/libgcc-ia64.ver#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/linux.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/quadlib.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/sysv4.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/t-aix#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/t-hpux#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/t-ia64#2 integrate .. //depot/projects/mips/contrib/gcc/config/ia64/unwind-ia64.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/interix.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/libgloss.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/linux-aout.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/linux.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/lynx-ng.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/lynx.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/netbsd-aout.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/netbsd-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/netbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/openbsd-oldgas.h#1 branch .. //depot/projects/mips/contrib/gcc/config/openbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/psos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/ptx4.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/aix.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/aix31.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/aix41.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/aix43.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/aix51.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/aix52.h#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/altivec.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/altivec.md#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/beos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/darwin-tramp.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/darwin.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/eabi.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/eabi.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/eabiaix.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/eabisim.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/eabispe.h#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/freebsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/gnu.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/linux.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/linux64.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/lynx.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/mach.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/netbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/ppc-asm.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/ppc64-fp.c#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/rs6000-c.c#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/rs6000-modes.def#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/rs6000-protos.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/rs6000.c#4 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/rs6000.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/rs6000.md#4 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/rtems.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/spe.h#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/spe.md#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/sysv4.h#4 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/sysv4le.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/t-aix43#3 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/t-aix52#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/t-darwin#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/t-linux64#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/t-netbsd#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/t-ppccomm#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/t-ppcendian#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/t-rs6000-c-rule#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/vxppc.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/rs6000/windiss.h#1 branch .. //depot/projects/mips/contrib/gcc/config/rs6000/xcoff.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/s390/fixdfdi.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/s390/libgcc-glibc.ver#2 integrate .. //depot/projects/mips/contrib/gcc/config/s390/linux.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/s390/s390-modes.def#1 branch .. //depot/projects/mips/contrib/gcc/config/s390/s390-protos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/s390/s390.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/s390/s390.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/s390/s390.md#2 integrate .. //depot/projects/mips/contrib/gcc/config/s390/t-crtstuff#1 branch .. //depot/projects/mips/contrib/gcc/config/s390/t-linux64#2 integrate .. //depot/projects/mips/contrib/gcc/config/sol2.h#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/aout.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/cypress.md#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/freebsd.h#4 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/gmon-sol2.c#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/hypersparc.md#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/lb1spc.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/lb1spl.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/linux-aout.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/linux.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/linux64.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/litecoff.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/liteelf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/lynx.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/netbsd-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/netbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/openbsd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/pbd.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sol2-bi.h#3 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sol2-c1.asm#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sol2.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sol26-sld.h#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/sp64-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sp86x-elf.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sparc-modes.def#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/sparc-protos.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sparc.c#3 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sparc.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sparc.md#3 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/sparclet.md#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/sunos4.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/supersparc.md#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/sysv4.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/ultra1_2.md#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/ultra3.md#1 branch .. //depot/projects/mips/contrib/gcc/config/sparc/vxsim.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/sparc/vxsparc64.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/svr3.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/svr4.h#2 integrate .. //depot/projects/mips/contrib/gcc/config/t-darwin#1 branch .. //depot/projects/mips/contrib/gcc/config/t-libc-ok#2 integrate .. //depot/projects/mips/contrib/gcc/config/t-libunwind#1 branch .. //depot/projects/mips/contrib/gcc/config/t-linux#2 integrate .. //depot/projects/mips/contrib/gcc/config/t-linux-gnulibc1#2 integrate .. //depot/projects/mips/contrib/gcc/config/t-netbsd#2 integrate .. //depot/projects/mips/contrib/gcc/configure#4 integrate .. //depot/projects/mips/contrib/gcc/configure.in#4 integrate .. //depot/projects/mips/contrib/gcc/conflict.c#2 integrate .. //depot/projects/mips/contrib/gcc/convert.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp-demangle.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/ChangeLog#5 integrate .. //depot/projects/mips/contrib/gcc/cp/ChangeLog.1#2 integrate .. //depot/projects/mips/contrib/gcc/cp/ChangeLog.2#2 integrate .. //depot/projects/mips/contrib/gcc/cp/Make-lang.in#3 integrate .. //depot/projects/mips/contrib/gcc/cp/NEWS#3 integrate .. //depot/projects/mips/contrib/gcc/cp/call.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/cfns.gperf#2 integrate .. //depot/projects/mips/contrib/gcc/cp/class.c#3 integrate .. //depot/projects/mips/contrib/gcc/cp/config-lang.in#2 integrate .. //depot/projects/mips/contrib/gcc/cp/cp-lang.c#3 integrate .. //depot/projects/mips/contrib/gcc/cp/cp-tree.def#2 integrate .. //depot/projects/mips/contrib/gcc/cp/cp-tree.h#5 integrate .. //depot/projects/mips/contrib/gcc/cp/cvt.c#4 integrate .. //depot/projects/mips/contrib/gcc/cp/decl.c#5 integrate .. //depot/projects/mips/contrib/gcc/cp/decl.h#2 integrate .. //depot/projects/mips/contrib/gcc/cp/decl2.c#5 integrate .. //depot/projects/mips/contrib/gcc/cp/dump.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/error.c#3 integrate .. //depot/projects/mips/contrib/gcc/cp/except.c#4 integrate .. //depot/projects/mips/contrib/gcc/cp/expr.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/friend.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/g++spec.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/init.c#5 integrate .. //depot/projects/mips/contrib/gcc/cp/lang-options.h#2 integrate .. //depot/projects/mips/contrib/gcc/cp/lang-specs.h#2 integrate .. //depot/projects/mips/contrib/gcc/cp/lex.c#3 integrate .. //depot/projects/mips/contrib/gcc/cp/lex.h#2 integrate .. //depot/projects/mips/contrib/gcc/cp/mangle.c#3 integrate .. //depot/projects/mips/contrib/gcc/cp/method.c#3 integrate .. //depot/projects/mips/contrib/gcc/cp/operators.def#3 integrate .. //depot/projects/mips/contrib/gcc/cp/optimize.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/parse.y#4 integrate .. //depot/projects/mips/contrib/gcc/cp/pt.c#5 integrate .. //depot/projects/mips/contrib/gcc/cp/ptree.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/repo.c#2 integrate .. //depot/projects/mips/contrib/gcc/cp/rtti.c#4 integrate .. //depot/projects/mips/contrib/gcc/cp/search.c#3 integrate .. //depot/projects/mips/contrib/gcc/cp/semantics.c#4 integrate .. //depot/projects/mips/contrib/gcc/cp/spew.c#3 integrate .. //depot/projects/mips/contrib/gcc/cp/tree.c#4 integrate .. //depot/projects/mips/contrib/gcc/cp/typeck.c#4 integrate .. //depot/projects/mips/contrib/gcc/cp/typeck2.c#3 integrate .. //depot/projects/mips/contrib/gcc/cplus-dem.c#2 integrate .. //depot/projects/mips/contrib/gcc/cppdefault.h#2 integrate .. //depot/projects/mips/contrib/gcc/cpperror.c#2 integrate .. //depot/projects/mips/contrib/gcc/cppexp.c#2 integrate .. //depot/projects/mips/contrib/gcc/cppfiles.c#2 integrate .. //depot/projects/mips/contrib/gcc/cpphash.c#2 integrate .. //depot/projects/mips/contrib/gcc/cpphash.h#2 integrate .. //depot/projects/mips/contrib/gcc/cppinit.c#3 integrate .. //depot/projects/mips/contrib/gcc/cpplex.c#2 integrate .. //depot/projects/mips/contrib/gcc/cpplib.c#4 integrate .. //depot/projects/mips/contrib/gcc/cpplib.h#2 integrate .. //depot/projects/mips/contrib/gcc/cppmacro.c#3 integrate .. //depot/projects/mips/contrib/gcc/cppmain.c#2 integrate .. //depot/projects/mips/contrib/gcc/cppspec.c#2 integrate .. //depot/projects/mips/contrib/gcc/cpptrad.c#1 branch .. //depot/projects/mips/contrib/gcc/crtstuff.c#2 integrate .. //depot/projects/mips/contrib/gcc/cse.c#2 integrate .. //depot/projects/mips/contrib/gcc/cselib.c#2 integrate .. //depot/projects/mips/contrib/gcc/cselib.h#2 integrate .. //depot/projects/mips/contrib/gcc/dbxout.c#4 integrate .. //depot/projects/mips/contrib/gcc/debug.c#2 integrate .. //depot/projects/mips/contrib/gcc/debug.h#2 integrate .. //depot/projects/mips/contrib/gcc/defaults.h#2 integrate .. //depot/projects/mips/contrib/gcc/demangle.h#2 integrate .. //depot/projects/mips/contrib/gcc/df.c#2 integrate .. //depot/projects/mips/contrib/gcc/df.h#2 integrate .. //depot/projects/mips/contrib/gcc/diagnostic.c#2 integrate .. //depot/projects/mips/contrib/gcc/diagnostic.def#2 integrate .. //depot/projects/mips/contrib/gcc/diagnostic.h#2 integrate .. //depot/projects/mips/contrib/gcc/doc/bugreport.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/c-tree.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/collect2.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/compat.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/contrib.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/cpp.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/cppenv.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/cppopts.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/extend.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/fragments.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/frontends.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/gcc.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/gccint.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/gcov.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/gty.texi#1 branch .. //depot/projects/mips/contrib/gcc/doc/headerdirs.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/include/fdl.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/include/gcc-common.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/include/gpl.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/include/texinfo.tex#2 integrate .. //depot/projects/mips/contrib/gcc/doc/interface.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/invoke.texi#5 integrate .. //depot/projects/mips/contrib/gcc/doc/makefile.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/md.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/objc.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/passes.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/portability.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/rtl.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/service.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/sourcebuild.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/standards.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doc/tm.texi#3 integrate .. //depot/projects/mips/contrib/gcc/doc/trouble.texi#2 integrate .. //depot/projects/mips/contrib/gcc/doloop.c#4 integrate .. //depot/projects/mips/contrib/gcc/dominance.c#2 integrate .. //depot/projects/mips/contrib/gcc/doschk.c#2 integrate .. //depot/projects/mips/contrib/gcc/dummy-conditions.c#1 branch .. //depot/projects/mips/contrib/gcc/dwarf2.h#2 integrate .. //depot/projects/mips/contrib/gcc/dwarf2asm.c#2 integrate .. //depot/projects/mips/contrib/gcc/dwarf2asm.h#2 integrate .. //depot/projects/mips/contrib/gcc/dwarf2out.c#2 integrate .. //depot/projects/mips/contrib/gcc/dwarf2out.h#2 integrate .. //depot/projects/mips/contrib/gcc/dwarfout.c#3 integrate .. //depot/projects/mips/contrib/gcc/emit-rtl.c#4 integrate .. //depot/projects/mips/contrib/gcc/errors.h#2 integrate .. //depot/projects/mips/contrib/gcc/et-forest.c#1 branch .. //depot/projects/mips/contrib/gcc/et-forest.h#1 branch .. //depot/projects/mips/contrib/gcc/except.c#2 integrate .. //depot/projects/mips/contrib/gcc/except.h#2 integrate .. //depot/projects/mips/contrib/gcc/explow.c#2 integrate .. //depot/projects/mips/contrib/gcc/expmed.c#3 integrate .. //depot/projects/mips/contrib/gcc/expr.c#5 integrate .. //depot/projects/mips/contrib/gcc/expr.h#3 integrate .. //depot/projects/mips/contrib/gcc/f/ChangeLog#4 integrate .. //depot/projects/mips/contrib/gcc/f/ChangeLog.0#2 integrate .. //depot/projects/mips/contrib/gcc/f/Make-lang.in#3 integrate .. //depot/projects/mips/contrib/gcc/f/bad.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/bit.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/bld.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/bugs.texi#2 integrate .. //depot/projects/mips/contrib/gcc/f/com.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/com.h#2 integrate .. //depot/projects/mips/contrib/gcc/f/config-lang.in#2 integrate .. //depot/projects/mips/contrib/gcc/f/data.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/expr.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/ffe.texi#2 integrate .. //depot/projects/mips/contrib/gcc/f/g77.texi#2 integrate .. //depot/projects/mips/contrib/gcc/f/g77spec.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/intdoc.in#2 integrate .. //depot/projects/mips/contrib/gcc/f/intdoc.texi#2 integrate .. //depot/projects/mips/contrib/gcc/f/invoke.texi#3 integrate .. //depot/projects/mips/contrib/gcc/f/lang-specs.h#3 integrate .. //depot/projects/mips/contrib/gcc/f/lex.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/news.texi#3 integrate .. //depot/projects/mips/contrib/gcc/f/parse.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/root.texi#3 integrate .. //depot/projects/mips/contrib/gcc/f/stc.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/std.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/ste.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/target.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/target.h#2 integrate .. //depot/projects/mips/contrib/gcc/f/top.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/where.c#2 integrate .. //depot/projects/mips/contrib/gcc/f/where.h#2 integrate .. //depot/projects/mips/contrib/gcc/fibheap.c#2 integrate .. //depot/projects/mips/contrib/gcc/fibheap.h#2 integrate .. //depot/projects/mips/contrib/gcc/final.c#3 integrate .. //depot/projects/mips/contrib/gcc/fix-header.c#2 integrate .. //depot/projects/mips/contrib/gcc/fixproto#2 integrate .. //depot/projects/mips/contrib/gcc/flags.h#4 integrate .. //depot/projects/mips/contrib/gcc/flow.c#3 integrate .. //depot/projects/mips/contrib/gcc/fold-const.c#4 integrate .. //depot/projects/mips/contrib/gcc/function.c#4 integrate .. //depot/projects/mips/contrib/gcc/function.h#2 integrate .. //depot/projects/mips/contrib/gcc/gbl-ctors.h#2 integrate .. //depot/projects/mips/contrib/gcc/gcc.1#4 integrate .. //depot/projects/mips/contrib/gcc/gcc.c#6 integrate .. //depot/projects/mips/contrib/gcc/gcc.h#2 integrate .. //depot/projects/mips/contrib/gcc/gccbug.in#2 integrate .. //depot/projects/mips/contrib/gcc/gccspec.c#2 integrate .. //depot/projects/mips/contrib/gcc/gcov-io.h#2 integrate .. //depot/projects/mips/contrib/gcc/gcov.c#2 integrate .. //depot/projects/mips/contrib/gcc/gcse.c#2 integrate .. //depot/projects/mips/contrib/gcc/gdbinit.in#2 integrate .. //depot/projects/mips/contrib/gcc/genattr.c#2 integrate .. //depot/projects/mips/contrib/gcc/genattrtab.c#2 integrate .. //depot/projects/mips/contrib/gcc/genattrtab.h#1 branch .. //depot/projects/mips/contrib/gcc/genautomata.c#1 branch .. //depot/projects/mips/contrib/gcc/gencodes.c#2 integrate .. //depot/projects/mips/contrib/gcc/genconditions.c#1 branch .. //depot/projects/mips/contrib/gcc/genconfig.c#2 integrate .. //depot/projects/mips/contrib/gcc/genemit.c#2 integrate .. //depot/projects/mips/contrib/gcc/genflags.c#2 integrate .. //depot/projects/mips/contrib/gcc/gengenrtl.c#2 integrate .. //depot/projects/mips/contrib/gcc/gengtype-lex.l#1 branch .. //depot/projects/mips/contrib/gcc/gengtype-yacc.y#1 branch .. //depot/projects/mips/contrib/gcc/gengtype.c#1 branch .. //depot/projects/mips/contrib/gcc/gengtype.h#1 branch .. //depot/projects/mips/contrib/gcc/genopinit.c#2 integrate .. //depot/projects/mips/contrib/gcc/genpreds.c#2 integrate .. //depot/projects/mips/contrib/gcc/genrecog.c#2 integrate .. //depot/projects/mips/contrib/gcc/gensupport.c#2 integrate .. //depot/projects/mips/contrib/gcc/gensupport.h#2 integrate .. //depot/projects/mips/contrib/gcc/getopt.c#2 integrate .. //depot/projects/mips/contrib/gcc/getopt.h#3 integrate .. //depot/projects/mips/contrib/gcc/getruntime.c#1 branch .. //depot/projects/mips/contrib/gcc/ggc-common.c#2 integrate .. //depot/projects/mips/contrib/gcc/ggc-none.c#2 integrate .. //depot/projects/mips/contrib/gcc/ggc-page.c#2 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Nov 8 11:54:28 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5A2E416A4D0; Sat, 8 Nov 2003 11:54:28 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CD31C16A4CE for ; Sat, 8 Nov 2003 11:54:27 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1148D43FF3 for ; Sat, 8 Nov 2003 11:54:27 -0800 (PST) (envelope-from kensmith@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8JsQXJ097202 for ; Sat, 8 Nov 2003 11:54:26 -0800 (PST) (envelope-from kensmith@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8JsQo5097199 for perforce@freebsd.org; Sat, 8 Nov 2003 11:54:26 -0800 (PST) (envelope-from kensmith@freebsd.org) Date: Sat, 8 Nov 2003 11:54:26 -0800 (PST) Message-Id: <200311081954.hA8JsQo5097199@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kensmith@freebsd.org using -f From: Ken Smith To: Perforce Change Reviews Subject: PERFORCE change 41752 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 19:54:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=41752 Change 41752 by kensmith@kensmith_oliver.cse.buffalo.edu on 2003/11/08 11:53:51 Working with rwatson to finish this document. - Cleaned up minor nits in existing "finished" content. - Added a few extra notes. Affected files ... .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#6 edit Differences ... ==== //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#6 (text+ko) ==== @@ -185,7 +185,7 @@ execution in isolated address spaces. Processes each carry a process credential, managed by the kernel, describing user and group information for the process, which will - be used to authorized access to other kernel objects. + be used to authorize access to other kernel objects. Based on the credential and various object properties, several mandatory and discretionary protection models control the interactions between processes, and access by the processes to @@ -381,7 +381,7 @@ arithmetic traps in the instruction stream, exceptional memory accesses such as page faults, or system calls via call gates. Kernel code interacting with user processes is written carefully - so as to provide only support only the desired interactions + so as to provide only support for the desired interactions between the kernel and user processes. Within the kernel, direct manipulation of user memory contents @@ -429,7 +429,7 @@ platform, opening the /dev/io device enables direct I/O access. Other platforms provide similar functionality. - Many platforms also offer hardware-specific via the + Many platforms also offer hardware-specific access via the &man.sysarch.2; system call; some of the functions provided by the system call are process-local, but others may provide privileged services. @@ -502,7 +502,7 @@ limits inappropriate interference between processes, preventing accidental or intentional leakage of data, damage to data or operational integrity, and leakage of system privilege. - System debugging interfaces break down these barries, and must + System debugging interfaces break down these barriers, and must be carefully controlled. @@ -554,7 +554,7 @@ kernel data structures, generally at the point at which initial access to the object occurs. This caching permits "time of open" UNIX security semantics to - be implemented for a several objects, including file descriptors + be implemented for several objects, including file descriptors and mountpoints. These credential references are then used to authorize asynchronous write-behind, such as found in NFS. @@ -580,10 +580,10 @@ When a process receives upgraded privileges, such as on execution of a setuid binary, the system must revoke access to debug the process by other processes that may already have had - debugging sessions opon. + debugging sessions open. These protections are introduced in three ways: first, - disallowing of operations that may upgrade of process credentials + disallowing of operations that may cause upgrade of process credentials if access to the process cannot be revoked. Second, storage of a "credential change flag", named P_SUGID for historical reasons, which will be used to modify the @@ -599,7 +599,7 @@ However, under some circumstances, additional process information may also be used in the decision to exempt closely related processes from certain protections--for example, participation in - the same sesion is sufficient to authorize delivery of the + the same session is sufficient to authorize delivery of the "continue" signal between processes, regardless of credentials. @@ -617,7 +617,7 @@ Because of this concentration of privilege, required to perform a number of system activities, system services running with root privilege are popular targets for attack, - as gain access to uid 0 grants access to most other + as gaining access to uid 0 grants access to most other privileges in the system. FreeBSD ships with the securelevel protection mechanism, @@ -637,7 +637,7 @@ combination with the jail() security extension, described later in this chapter. - The TrustedBSD MAC Framework is also capability of + The TrustedBSD MAC Framework is also capable of limiting certain root privileges, such as the cability to read files based on system labels. The MAC Framework and policies are described later in this @@ -653,7 +653,7 @@ consistent and appropriate use. As UNIX-derived systems are frequently deployed in environments in which users or processes contend for resources, a variety of - approaches are taken to preventing inappropriate exclusion of + approaches are taken to prevent inappropriate exclusion of other users or processes. This includes scheduler behavior to provide for "fair" distribution of CPU resources between independent processes @@ -866,12 +866,12 @@ Object sessions are initially referred to by one file descriptor, but references may be duplicated to additional file - descriptors, as well as inheritted across fork() operations, and + descriptors, as well as inherited across fork() operations, and passed to other processes using UNIX Domain Socket ancillary right transfer. In FreeBSD 5.1, objects referenced by file descriptors are: IPC pipes, IPC sockets, vnodes (files, directories, device nodes, - POSIX fifos, etc), kqueues (kernel event notification queues). + POSIX fifos, etc), and kqueues (kernel event notification queues). References to object sessions remain until the the descriptor is explicitly closed via the close() or rfork() system calls, or implicitly closed on process exec() or exit(). @@ -880,7 +880,7 @@ modified, as may the underlying objects. File descriptor properties, such as offset and active access flags, may be explicitly modified using system calls such as - seek() or fcntl(), or implicitly as a result of operations making + lseek() or fcntl(), or implicitly as a result of operations making use of the file descriptor, such as read() or write(). In most cases, accesses made using a file descriptor are @@ -934,10 +934,22 @@ caution must be applied when relying on namespace-based protections to limit access to an object. + There is another way to protect an object used by some + programs. If an object is completely removed from the + namespace but there is one or more process on the + system that has the object open it will not be removed from + the underlying file system until all references to the object + are closed. The process(es) that have the object open can still + access it but no other process can gain access to it through + the file system namespace. The object could be accessed using + fhopen() (which is restricted to the superuser) or by passing + its descriptor to another process through a UNIX domain socket + but is otherwise inaccessible. + Modifications to the namespace may be performed by adding or removing file system mounts, attaching, overlaying, or detaching parts of the namespace, or by modifying elements - in the namespace by perform operations on objects in the + in the namespace by performing operations on objects in the namespace. Mount and unmount operations require privilege in FreeBSD by default; however, the system policy may be configured to @@ -972,7 +984,7 @@ The FreeBSD VFS defines several classes of objects, and operations that apply to one or more of those objects. The following operations may be supported on a virtual file - node: + node (vnode): @@ -1339,6 +1351,13 @@ + Note that there is one more file node type called VBLK + which is a Block Device. FreeBSD no longer uses Block Devices + for anything, and attempting to open a Block Device will result + in an error. But for compatibility with other UNIX's, + particularly in an NFS environment where file systems are + shared, Block Devices can be created and their existence is + "tolerated". @@ -1592,7 +1611,7 @@ - + File System Quotas UFS file system quotas permit administrators to place soft From owner-p4-projects@FreeBSD.ORG Sat Nov 8 12:53:40 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 28ED116A4D0; Sat, 8 Nov 2003 12:53:40 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EB54516A4CE for ; Sat, 8 Nov 2003 12:53:39 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 18DD743FE3 for ; Sat, 8 Nov 2003 12:53:39 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8KrcXJ006188 for ; Sat, 8 Nov 2003 12:53:38 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8KrcW1006185 for perforce@freebsd.org; Sat, 8 Nov 2003 12:53:38 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 12:53:38 -0800 (PST) Message-Id: <200311082053.hA8KrcW1006185@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41753 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 20:53:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=41753 Change 41753 by jmallett@jmallett_dalek on 2003/11/08 12:53:13 IFC, update, stub, hack, slash, etc. Affected files ... .. //depot/projects/mips/sys/dev/arcbios/arcbios.c#10 edit .. //depot/projects/mips/sys/mips/include/atomic.h#18 edit .. //depot/projects/mips/sys/mips/include/cpu.h#13 edit .. //depot/projects/mips/sys/mips/include/md_var.h#9 edit .. //depot/projects/mips/sys/mips/include/param.h#13 edit .. //depot/projects/mips/sys/mips/mips/machdep.c#37 edit .. //depot/projects/mips/sys/mips/mips/pmap.c#22 edit .. //depot/projects/mips/sys/mips/mips/sig_machdep.c#2 edit .. //depot/projects/mips/sys/mips/mips/support.S#8 edit .. //depot/projects/mips/sys/mips/mips/tlb.c#12 edit .. //depot/projects/mips/sys/mips/mips/vm_machdep.c#7 edit Differences ... ==== //depot/projects/mips/sys/dev/arcbios/arcbios.c#10 (text+ko) ==== @@ -242,7 +242,6 @@ arcbios_cnattach(void) { arcbios_consdev.cn_pri = CN_NORMAL; - arcbios_consdev.cn_dev = makedev(MAJOR_AUTO, 0); make_dev(&arcbios_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600, "arccons"); cnadd(&arcbios_consdev); return; ==== //depot/projects/mips/sys/mips/include/atomic.h#18 (text+ko) ==== @@ -67,7 +67,7 @@ { \ int r; \ mips_read_membar(); \ - atomic_cmpset_ ## type(p, old, val); \ + r = atomic_cmpset_ ## type(p, old, val); \ return (r); \ } ==== //depot/projects/mips/sys/mips/include/cpu.h#13 (text+ko) ==== @@ -136,4 +136,8 @@ #define MIPS_NOT_SUPP 0x8000 #endif +void cpu_halt(void); +void cpu_reset(void); +void swi_vm(void *); + #endif /* !_MACHINE_CPU_H_ */ ==== //depot/projects/mips/sys/mips/include/md_var.h#9 (text+ko) ==== @@ -36,10 +36,7 @@ extern int cpu_id; extern int fpu_id; -void cpu_halt(void); -void cpu_reset(void); void mips_init(void); -void swi_vm(void *); /* Platform call-downs. */ void platform_identify(void); ==== //depot/projects/mips/sys/mips/include/param.h#13 (text+ko) ==== @@ -21,8 +21,11 @@ /* * Pages of u. area and kstack (with pcb) respectively. */ -#define UAREA_PAGES 1 -#define KSTACK_PAGES 4 +#ifndef KSTACK_PAGES +#define KSTACK_PAGES 2 /* pages of kstack (with pcb) */ +#endif +#define KSTACK_GUARD_PAGES 1 /* pages of kstack guard; 0 disables */ +#define UAREA_PAGES 1 /* pages of u-area */ /* * On mips, UPAGES is fixed by sys/arch/mips/mips/locore code ==== //depot/projects/mips/sys/mips/mips/machdep.c#37 (text+ko) ==== @@ -249,6 +249,12 @@ } void +cpu_idle(void) +{ + /* Insert code to halt (until next interrupt) for the idle loop */ +} + +void cpu_reset(void) { printf("Resetting...\n"); ==== //depot/projects/mips/sys/mips/mips/pmap.c#22 (text+ko) ==== @@ -573,6 +573,30 @@ return 0; } +/* + * Routine: pmap_extract_and_hold + * Function: + * Atomically extract and hold the physical page + * with the given pmap and virtual address pair + * if that mapping permits the given protection. + */ +vm_page_t +pmap_extract_and_hold(pmap_t pmap, vm_offset_t va, vm_prot_t prot) +{ + vm_paddr_t pa; + vm_page_t m; + + m = NULL; + mtx_lock(&Giant); + if ((pa = pmap_extract(pmap, va)) != 0) { + m = PHYS_TO_VM_PAGE(pa); + vm_page_lock_queues(); + vm_page_hold(m); + vm_page_unlock_queues(); + } + mtx_unlock(&Giant); + return (m); +} /*************************************************** * Low level mapping routines..... @@ -653,233 +677,7 @@ return MIPS_PHYS_TO_KSEG0(start); } -#ifndef KSTACK_MAX_PAGES -#define KSTACK_MAX_PAGES 32 -#endif - -/* - * Create the kernel stack for a new thread. - * This routine directly affects the fork perf for a process and thread. - */ void -pmap_new_thread(struct thread *td, int pages) -{ - int i; - vm_object_t ksobj; - vm_offset_t ks; - vm_page_t m; - pt_entry_t *ptek, oldpte; - - /* Bounds check */ - if (pages <= 1) - pages = KSTACK_PAGES; - else if (pages > KSTACK_MAX_PAGES) - pages = KSTACK_MAX_PAGES; - - /* - * allocate object for the kstack - */ - ksobj = vm_object_allocate(OBJT_DEFAULT, pages); - td->td_kstack_obj = ksobj; - -#ifdef KSTACK_GUARD - /* get a kernel virtual address for the kstack for this thread */ - ks = kmem_alloc_nofault(kernel_map, (pages + 1) * PAGE_SIZE); - if (ks == NULL) - panic("pmap_new_thread: kstack allocation failed"); - - /* Set the first page to be the unmapped guard page. */ - ptek = pmap_pte(kernel_pmap, ks); - oldpte = *ptek; - *ptek = 0; - if (oldpte & PG_V) - pmap_invalidate_page(kernel_pmap, ks); - /* move to the next page, which is where the real stack starts. */ - ks += PAGE_SIZE; - td->td_kstack = ks; - ptek++; -#else - /* get a kernel virtual address for the kstack for this thread */ - ks = kmem_alloc_nofault(kernel_map, pages * PAGE_SIZE); - if (ks == NULL) - panic("pmap_new_thread: kstack allocation failed"); - td->td_kstack = ks; - ptek = pmap_pte(kernel_pmap, ks); -#endif - /* - * Knowing the number of pages allocated is useful when you - * want to deallocate them. - */ - td->td_kstack_pages = pages; - - /* - * For the length of the stack, link in a real page of ram for each - * page of stack. - */ - for (i = 0; i < pages; i++) { - /* - * Get a kernel stack page - */ - m = vm_page_grab(ksobj, i, - VM_ALLOC_NORMAL | VM_ALLOC_RETRY | VM_ALLOC_WIRED); - - /* - * Enter the page into the kernel address space. - */ - oldpte = ptek[i]; - ptek[i] = pmap_phys_to_pte(VM_PAGE_TO_PHYS(m)) - | PG_V; - if (oldpte & PG_V) - pmap_invalidate_page(kernel_pmap, ks + i * PAGE_SIZE); - - vm_page_lock_queues(); - vm_page_wakeup(m); - vm_page_flag_clear(m, PG_ZERO); - m->valid = VM_PAGE_BITS_ALL; - vm_page_unlock_queues(); - } -} - -/* - * Dispose the kernel stack for a thread that has exited. - * This routine directly impacts the exit perf of a thread. - */ -void -pmap_dispose_thread(td) - struct thread *td; -{ - int i; - int pages; - vm_object_t ksobj; - vm_offset_t ks; - vm_page_t m; - - pages = td->td_kstack_pages; - ksobj = td->td_kstack_obj; - ks = td->td_kstack; - - tlb_remove_pages(kernel_pmap, ks, pages); - for (i = 0; i < pages; i++) { - m = vm_page_lookup(ksobj, i); - if (m == NULL) - panic("pmap_dispose_thread: kstack already missing?"); - vm_page_lock_queues(); - vm_page_busy(m); - vm_page_unwire(m, 0); - vm_page_free(m); - vm_page_unlock_queues(); - } - - /* - * Free the space that this stack was mapped to in the kernel - * address map. - */ -#ifdef KSTACK_GUARD - kmem_free(kernel_map, ks - PAGE_SIZE, (pages + 1) * PAGE_SIZE); -#else - kmem_free(kernel_map, ks, pages * PAGE_SIZE); -#endif - vm_object_deallocate(ksobj); -} - -/* - * Set up a variable sized alternate kstack. - */ -void -pmap_new_altkstack(struct thread *td, int pages) -{ - /* shuffle the original stack */ - td->td_altkstack_obj = td->td_kstack_obj; - td->td_altkstack = td->td_kstack; - td->td_altkstack_pages = td->td_kstack_pages; - - pmap_new_thread(td, pages); -} - -void -pmap_dispose_altkstack(td) - struct thread *td; -{ - pmap_dispose_thread(td); - - /* restore the original kstack */ - td->td_kstack = td->td_altkstack; - td->td_kstack_obj = td->td_altkstack_obj; - td->td_kstack_pages = td->td_altkstack_pages; - td->td_altkstack = 0; - td->td_altkstack_obj = NULL; - td->td_altkstack_pages = 0; -} - -/* - * Allow the kernel stack for a thread to be prejudicially paged out. - */ -void -pmap_swapout_thread(td) - struct thread *td; -{ - int i; - int pages; - vm_object_t ksobj; - vm_offset_t ks; - vm_page_t m; - - /* - * Make sure we aren't fpcurthread. - */ - /* - alpha_fpstate_save(td, 1); - */ - - pages = td->td_kstack_pages; - ksobj = td->td_kstack_obj; - ks = td->td_kstack; - for (i = 0; i < pages; i++) { - m = vm_page_lookup(ksobj, i); - if (m == NULL) - panic("pmap_swapout_thread: kstack already missing?"); - vm_page_lock_queues(); - vm_page_dirty(m); - vm_page_unwire(m, 0); - vm_page_unlock_queues(); - pmap_kremove(ks + i * PAGE_SIZE); - } -} - -/* - * Bring the kernel stack for a specified thread back in. - */ -void -pmap_swapin_thread(td) - struct thread *td; -{ - int i, rv; - int pages; - vm_object_t ksobj; - vm_offset_t ks; - vm_page_t m; - - pages = td->td_kstack_pages; - ksobj = td->td_kstack_obj; - ks = td->td_kstack; - for (i = 0; i < pages; i++) { - m = vm_page_grab(ksobj, i, VM_ALLOC_NORMAL | VM_ALLOC_RETRY); - pmap_kenter(ks + i * PAGE_SIZE, VM_PAGE_TO_PHYS(m)); - if (m->valid != VM_PAGE_BITS_ALL) { - rv = vm_pager_get_pages(ksobj, &m, 1, 0); - if (rv != VM_PAGER_OK) - panic("pmap_swapin_thread: cannot get kstack for proc: %d\n", td->td_proc->p_pid); - m = vm_page_lookup(ksobj, i); - m->valid = VM_PAGE_BITS_ALL; - } - vm_page_lock_queues(); - vm_page_wire(m); - vm_page_wakeup(m); - vm_page_unlock_queues(); - } -} - -void pmap_pinit0(pmap) struct pmap *pmap; { @@ -1386,6 +1184,13 @@ return (void *) MIPS_PHYS_TO_KSEG0(pa - (i * PAGE_SIZE)); } +vm_page_t +pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_page_t mpte) +{ + pmap_enter(pmap, va, m, VM_PROT_READ | VM_PROT_EXECUTE, FALSE); + return (NULL); +} + /* * pmap_object_init_pt preloads the ptes for a given object * into the specified pmap. This eliminates the blast of soft @@ -1394,24 +1199,12 @@ void pmap_object_init_pt(pmap_t pmap, vm_offset_t addr, vm_object_t object, vm_pindex_t pindex, - vm_size_t size, int limit) + vm_size_t size) { - panic("pmap_object_init_pt unimplemented\n"); -} -/* - * pmap_prefault provides a quick way of clustering - * pagefaults into a processes address space. It is a "cousin" - * of pmap_object_init_pt, except it runs at page fault time instead - * of mmap time. - */ -void -pmap_prefault(pmap, addra, entry) - pmap_t pmap; - vm_offset_t addra; - vm_map_entry_t entry; -{ - panic("pmap_prefault unimplemented\n"); + VM_OBJECT_LOCK_ASSERT(object, MA_OWNED); + KASSERT(object->type == OBJT_DEVICE, + ("pmap_object_init_pt: non-device object")); } /* @@ -1716,6 +1509,24 @@ } /* + * pmap_is_prefaultable: + * + * Return whether or not the specified virtual address is elgible + * for prefault. + */ +boolean_t +pmap_is_prefaultable(pmap_t pmap, vm_offset_t va) +{ + pt_entry_t *pte; + + pte = pmap_pte(pmap, va); + if (pte_valid(pte)) + return (FALSE); + return (TRUE); +} + + +/* * Clear the modify bits on the specified physical page. */ void @@ -1888,5 +1699,3 @@ return addr; } - - ==== //depot/projects/mips/sys/mips/mips/sig_machdep.c#2 (text+ko) ==== @@ -26,9 +26,31 @@ */ #include +#include #include #include #include +#include +#include + +/* + * Build siginfo_t for SA thread + */ +void +cpu_thread_siginfo(int sig, u_long code, siginfo_t *si) +{ + struct proc *p; + struct thread *td; + + td = curthread; + p = td->td_proc; + PROC_LOCK_ASSERT(p, MA_OWNED); + + bzero(si, sizeof(*si)); + si->si_signo = sig; + si->si_code = code; + /* XXXKSE fill other fields */ +} int sigreturn(struct thread *td, struct sigreturn_args *uap) ==== //depot/projects/mips/sys/mips/mips/support.S#8 (text+ko) ==== @@ -173,7 +173,9 @@ base. This function is safe to call during an interrupt con- text. - fuword() Fetches a word of data from the user-space address base. + fuword() Fetches a word (long) of data from the user-space address base. + + fuword32() Fetches a word (int, 32-bits) of data from the user-space address base. */ /* @@ -217,6 +219,16 @@ END(fuword) /* + * fuword32(9) + * int fuword32(const void *addr) + */ +ENTRY(fuword32) + li v0, -1 + jr ra + nop +END(fuword32) + +/* * Stubs for copy(9) XXX copyin() Copies len bytes of data from the user-space address uaddr to the kernel-space address kaddr. ==== //depot/projects/mips/sys/mips/mips/tlb.c#12 (text+ko) ==== @@ -163,12 +163,13 @@ mips_wr_entryhi(ehi); mips_tlbp(); i = mips_rd_index(); - mips_wr_entrylo0(pte0 | PG_G); - mips_wr_entrylo1(pte1 | PG_G); + mips_wr_entrylo0(pte0); + mips_wr_entrylo1(pte1); mips_wr_entryhi(ehi); - if (i < 0) + if (i < 0) { + tlb_invalidate_page(va); mips_tlbwr(); - else + } else mips_tlbwi(); } ==== //depot/projects/mips/sys/mips/mips/vm_machdep.c#7 (text+ko) ==== @@ -34,10 +34,11 @@ #include #include #include +#include +#include #include #include -#include #include #include @@ -76,32 +77,37 @@ } void -cpu_wait(struct proc *p) +cpu_thread_exit(struct thread *td) +{ +} + +void +cpu_thread_clean(struct thread *td) { } void -cpu_thread_exit(struct thread *td) +cpu_thread_setup(struct thread *td) { } void -cpu_thread_clean(struct thread *td) +cpu_set_fork_handler(struct thread *td, void (*func)(void *), void *arg) { } void -cpu_thread_setup(struct thread *td) +cpu_thread_swapin(struct thread *td) { } void -cpu_set_fork_handler(struct thread *td, void (*func)(void *), void *arg) +cpu_thread_swapout(struct thread *td) { } void -cpu_set_upcall(struct thread *td, void *pcb) +cpu_set_upcall(struct thread *td, struct thread *td0) { } @@ -110,6 +116,17 @@ { } +struct sf_buf * +sf_buf_alloc(struct vm_page *m) +{ + return (NULL); +} + +void +sf_buf_free(void *addr, void *args) +{ +} + void swi_vm(void *m) { From owner-p4-projects@FreeBSD.ORG Sat Nov 8 12:54:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3657216A4D0; Sat, 8 Nov 2003 12:54:42 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EC77F16A4CE for ; Sat, 8 Nov 2003 12:54:41 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 49DEC43FA3 for ; Sat, 8 Nov 2003 12:54:41 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8KsfXJ006231 for ; Sat, 8 Nov 2003 12:54:41 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8KseZf006228 for perforce@freebsd.org; Sat, 8 Nov 2003 12:54:40 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 12:54:40 -0800 (PST) Message-Id: <200311082054.hA8KseZf006228@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41754 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 20:54:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=41754 Change 41754 by jmallett@jmallett_dalek on 2003/11/08 12:53:45 Merge from freebsd-jmallett to fix build. Affected files ... .. //depot/projects/mips/sys/geom/geom_fx.c#13 edit Differences ... ==== //depot/projects/mips/sys/geom/geom_fx.c#13 (text+ko) ==== @@ -31,16 +31,17 @@ * $FreeBSD$ */ +/* + * TODO: + * o) Hotspots. + * o) geom_fx_enc.c. + * o) CONFIG stuff, including "write label" and so on. bootcode + * may or may not be an option. Implementing a fake filesystem + * for volhdr would probably be more viable. + */ #include #include -#ifndef _KERNEL -#include -#include -#include -#include -#include -#else #include #include #include @@ -48,7 +49,6 @@ #include #include #include -#endif #include #include #include @@ -94,19 +94,6 @@ return (sum); } -static int -g_fx_start(struct bio *bp) -{ - struct g_geom *gp; - struct g_fx_softc *ms; - struct g_slicer *gsp; - - gp = bp->bio_to->geom; - gsp = gp->softc; - ms = gsp->softc; - return (0); -} - static void g_fx_dumpconf(struct sbuf *sb, const char *indent, struct g_geom *gp, struct g_consumer *cp __unused, struct g_provider *pp) { @@ -143,11 +130,10 @@ if (flags == G_TF_NORMAL && !strcmp(pp->geom->class->name, FX_CLASS_NAME)) return (NULL); - gp = g_slice_new(mp, FX_NPARTS, pp, &cp, &ms, sizeof *ms, g_fx_start); + gp = g_slice_new(mp, FX_NPARTS, pp, &cp, &ms, sizeof *ms, NULL); if (gp == NULL) return (NULL); gsp = gp->softc; - g_topology_unlock(); gp->dumpconf = g_fx_dumpconf; npart = 0; while (1) { /* a trick to allow us to use break */ @@ -157,7 +143,9 @@ if (sectorsize < 512) break; mediasize = cp->provider->mediasize; + g_topology_unlock(); buf = g_read_data(cp, 0, sizeof (struct volhdr), &error); + g_topology_lock(); if (buf == NULL || error != 0) break; label = (struct volhdr *)buf; @@ -177,11 +165,10 @@ g_fx_swap_volpart(vp); if (!vp->vp_size) continue; - g_topology_lock(); g_slice_config(gp, i, G_SLICE_CONFIG_SET, - vp->vp_begin * sectorsize, vp->vp_size, sectorsize, + ((off_t)vp->vp_begin) << 9ULL, + ((off_t)vp->vp_size) << 9ULL, sectorsize, "%s%c", pp->name, 'a' + i); - g_topology_unlock(); if (bootverbose) { printf("Added %s%c of type %d (%s)\n", pp->name, 'a' + i, vp->vp_type, @@ -195,10 +182,9 @@ } break; } - g_topology_lock(); g_access_rel(cp, -1, 0, 0); if (LIST_EMPTY(&gp->provider)) { - g_std_spoiled(cp); + g_slice_spoiled(cp); return (NULL); } return (gp); @@ -207,7 +193,6 @@ static struct g_class g_fx_class = { .name = FX_CLASS_NAME, .taste = g_fx_taste, - G_CLASS_INITIALIZER }; DECLARE_GEOM_CLASS(g_fx_class, g_fx); From owner-p4-projects@FreeBSD.ORG Sat Nov 8 13:44:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BC1F316A4D0; Sat, 8 Nov 2003 13:44:43 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 90A5516A4CE for ; Sat, 8 Nov 2003 13:44:43 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 16C0C43FF2 for ; Sat, 8 Nov 2003 13:44:42 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8LigXJ009302 for ; Sat, 8 Nov 2003 13:44:42 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8Lif1Y009299 for perforce@freebsd.org; Sat, 8 Nov 2003 13:44:41 -0800 (PST) (envelope-from peter@freebsd.org) Date: Sat, 8 Nov 2003 13:44:41 -0800 (PST) Message-Id: <200311082144.hA8Lif1Y009299@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41755 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 21:44:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=41755 Change 41755 by peter@peter_overcee on 2003/11/08 13:44:21 IFC @41750 Affected files ... .. //depot/projects/hammer/bin/rm/rm.c#4 integrate .. //depot/projects/hammer/etc/mac.conf#3 integrate .. //depot/projects/hammer/etc/mtree/BSD.local.dist#11 integrate .. //depot/projects/hammer/etc/mtree/BSD.usr.dist#13 integrate .. //depot/projects/hammer/lib/libc/ia64/gen/unwind.c#2 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_spinlock.c#7 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#34 integrate .. //depot/projects/hammer/share/examples/cvsup/refuse#5 integrate .. //depot/projects/hammer/share/examples/cvsup/refuse.README#5 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/Makefile#9 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/wd.4#2 integrate .. //depot/projects/hammer/share/man/man4/rl.4#7 integrate .. //depot/projects/hammer/share/man/man7/hier.7#9 integrate .. //depot/projects/hammer/share/man/man9/pfind.9#2 integrate .. //depot/projects/hammer/share/man/man9/pgfind.9#2 integrate .. //depot/projects/hammer/share/security/Makefile#2 integrate .. //depot/projects/hammer/share/security/Makefile.inc#2 delete .. //depot/projects/hammer/sys/amd64/ia32/ia32_signal.c#8 integrate .. //depot/projects/hammer/sys/cam/cam_periph.c#13 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_proto.h#3 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscall.h#3 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscalls.c#3 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_sysent.c#3 integrate .. //depot/projects/hammer/sys/compat/freebsd32/syscalls.master#3 integrate .. //depot/projects/hammer/sys/compat/ia32/ia32_signal.h#4 integrate .. //depot/projects/hammer/sys/compat/ia32/ia32_sysvec.c#5 integrate .. //depot/projects/hammer/sys/dev/ata/ata-raid.c#13 integrate .. //depot/projects/hammer/sys/dev/dcons/dcons_crom.c#2 integrate .. //depot/projects/hammer/sys/dev/usb/uvisor.c#8 integrate .. //depot/projects/hammer/usr.bin/vmstat/vmstat.c#6 integrate Differences ... ==== //depot/projects/hammer/bin/rm/rm.c#4 (text+ko) ==== @@ -43,7 +43,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/rm/rm.c,v 1.43 2003/05/01 16:58:56 obrien Exp $"); +__FBSDID("$FreeBSD: src/bin/rm/rm.c,v 1.44 2003/11/08 09:55:16 bde Exp $"); #include #include @@ -384,7 +384,7 @@ goto err; bsize = MAX(fsb.f_iosize, 1024); if ((buf = malloc(bsize)) == NULL) - err(1, "malloc"); + err(1, "%s: malloc", file); #define PASS(byte) { \ memset(buf, byte, bsize); \ @@ -409,6 +409,8 @@ err: eval = 1; if (buf) free(buf); + if (fd != -1) + close(fd); warn("%s", file); } ==== //depot/projects/hammer/etc/mac.conf#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/etc/mac.conf,v 1.2 2003/04/20 03:09:35 rwatson Exp $ +# $FreeBSD: src/etc/mac.conf,v 1.3 2003/11/08 17:51:50 rwatson Exp $ # # TrustedBSD MAC userland policy configuration file. Kernel modules # export label information, and mac.conf indicates to userland @@ -11,7 +11,7 @@ # Default label set to be used by simple MAC applications # -default_file_labels ?biba,?mls,?sebsd -default_ifnet_labels ?biba,?mls,?sebsd -default_process_labels ?biba,?mls,?partition,?sebsd +default_file_labels ?biba,?lomac,?mls,?sebsd +default_ifnet_labels ?biba,?lomac,?mls,?sebsd +default_process_labels ?biba,?lomac,?mls,?partition,?sebsd ==== //depot/projects/hammer/etc/mtree/BSD.local.dist#11 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.local.dist,v 1.102 2003/11/05 23:39:02 davidxu Exp $ +# $FreeBSD: src/etc/mtree/BSD.local.dist,v 1.103 2003/11/08 05:18:25 davidxu Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -454,7 +454,7 @@ zh_CN.GB18030 .. zh_CN.GB2312 - .. + .. zh_CN.GBK .. zh_TW.Big5 ==== //depot/projects/hammer/etc/mtree/BSD.usr.dist#13 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.284 2003/11/08 00:41:41 rwatson Exp $ +# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.285 2003/11/08 05:18:25 davidxu Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -518,7 +518,7 @@ zh_CN.GB18030 .. zh_CN.GB2312 - .. + .. zh_CN.GBK .. zh_TW.Big5 @@ -852,7 +852,7 @@ zh_CN.GB18030 .. zh_CN.GB2312 - .. + .. zh_CN.GBK .. zh_TW.Big5 ==== //depot/projects/hammer/lib/libc/ia64/gen/unwind.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/lib/libc/ia64/gen/unwind.c,v 1.1 2002/04/13 04:06:34 marcel Exp $ + * $FreeBSD: src/lib/libc/ia64/gen/unwind.c,v 1.2 2003/11/08 05:29:49 marcel Exp $ */ #include @@ -57,6 +57,7 @@ char *p, *p_top; struct ia64_unwind_entry *unw, *res; register unsigned long gp __asm__("gp"); /* XXX assumes gcc */ + unsigned long reloc, vaddr; size_t l, m, r; if (!dladdr(pc, &info)) @@ -71,6 +72,7 @@ assert(ehdr->e_machine == EM_IA_64); #endif + reloc = (ehdr->e_type == ET_DYN) ? (uintptr_t)info.dli_fbase : 0; *pgp = gp; *pseg = 0UL; res = NULL; @@ -79,29 +81,30 @@ p_top = p + ehdr->e_phnum * ehdr->e_phentsize; while (p < p_top) { phdr = (Elf_Phdr*)p; + vaddr = phdr->p_vaddr + reloc; switch (phdr->p_type) { case PT_DYNAMIC: - dyn = (Elf_Dyn*)phdr->p_vaddr; + dyn = (Elf_Dyn*)vaddr; while (dyn->d_tag != DT_NULL) { if (dyn->d_tag == DT_PLTGOT) { - *pgp = dyn->d_un.d_ptr; + *pgp = dyn->d_un.d_ptr + reloc; break; } dyn++; } break; case PT_LOAD: - if (pc >= (void*)phdr->p_vaddr && - pc < (void*)(phdr->p_vaddr + phdr->p_memsz)) - *pseg = phdr->p_vaddr; + if (pc >= (void*)vaddr && + pc < (void*)(vaddr + phdr->p_memsz)) + *pseg = vaddr; break; case PT_IA_64_UNWIND: #if SANITY assert(*pseg != 0UL); assert(res == NULL); #endif - unw = (struct ia64_unwind_entry*)phdr->p_vaddr; + unw = (struct ia64_unwind_entry*)vaddr; l = 0; r = phdr->p_memsz / sizeof(struct ia64_unwind_entry); while (l < r) { ==== //depot/projects/hammer/lib/libpthread/thread/thr_spinlock.c#7 (text+ko) ==== @@ -29,7 +29,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libpthread/thread/thr_spinlock.c,v 1.17 2003/11/04 19:59:22 deischen Exp $ + * $FreeBSD: src/lib/libpthread/thread/thr_spinlock.c,v 1.18 2003/11/08 06:07:04 davidxu Exp $ * */ @@ -45,7 +45,7 @@ struct spinlock_extra { spinlock_t *owner; struct lock lock; - kse_critical_t crit; + struct pthread *crit; }; static void init_spinlock(spinlock_t *lck); @@ -64,12 +64,11 @@ _spinunlock(spinlock_t *lck) { struct spinlock_extra *extra; - kse_critical_t crit; + struct pthread *curthr = _get_curthread(); extra = (struct spinlock_extra *)lck->fname; - crit = extra->crit; - KSE_LOCK_RELEASE(_get_curkse(), &extra->lock); - _kse_critical_leave(crit); + THR_ASSERT(extra->crit == curthr, "_spinunlock called without owned."); + THR_LOCK_RELEASE(curthr, &extra->lock); } @@ -82,8 +81,8 @@ void _spinlock(spinlock_t *lck) { - struct spinlock_extra *extra; - kse_critical_t crit; + struct spinlock_extra *extra; + struct pthread *curthr; THR_ASSERT(__isthreaded != 0, "Spinlock called when not threaded."); THR_ASSERT(initialized != 0, "Spinlocks not initialized."); @@ -91,12 +90,12 @@ * Try to grab the lock and loop if another thread grabs * it before we do. */ - crit = _kse_critical_enter(); + curthr = _get_curthread(); if (lck->fname == NULL) init_spinlock(lck); extra = (struct spinlock_extra *)lck->fname; - KSE_LOCK_ACQUIRE(_get_curkse(), &extra->lock); - extra->crit = crit; + THR_LOCK_ACQUIRE(curthr, &extra->lock); + extra->crit = curthr; } /* @@ -118,15 +117,15 @@ static void init_spinlock(spinlock_t *lck) { - struct kse *curkse = _get_curkse(); + struct pthread *curthr = _get_curthread(); - KSE_LOCK_ACQUIRE(curkse, &spinlock_static_lock); + THR_LOCK_ACQUIRE(curthr, &spinlock_static_lock); if ((lck->fname == NULL) && (spinlock_count < MAX_SPINLOCKS)) { lck->fname = (char *)&extra[spinlock_count]; extra[spinlock_count].owner = lck; spinlock_count++; } - KSE_LOCK_RELEASE(curkse, &spinlock_static_lock); + THR_LOCK_RELEASE(curthr, &spinlock_static_lock); THR_ASSERT(lck->fname != NULL, "Exceeded max spinlocks"); } @@ -137,19 +136,19 @@ if (initialized != 0) { _lock_reinit(&spinlock_static_lock, LCK_ADAPTIVE, - _kse_lock_wait, _kse_lock_wakeup); + _thr_lock_wait, _thr_lock_wakeup); for (i = 0; i < spinlock_count; i++) { _lock_reinit(&extra[i].lock, LCK_ADAPTIVE, - _kse_lock_wait, _kse_lock_wakeup); + _thr_lock_wait, _thr_lock_wakeup); } spinlock_count = 0; } else { if (_lock_init(&spinlock_static_lock, LCK_ADAPTIVE, - _kse_lock_wait, _kse_lock_wakeup) != 0) + _thr_lock_wait, _thr_lock_wakeup) != 0) PANIC("Cannot initialize spinlock_static_lock"); for (i = 0; i < MAX_SPINLOCKS; i++) { if (_lock_init(&extra[i].lock, LCK_ADAPTIVE, - _kse_lock_wait, _kse_lock_wakeup) != 0) + _thr_lock_wait, _thr_lock_wakeup) != 0) PANIC("Cannot initialize spinlock extra"); } initialized = 1; ==== //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#34 (text+ko) ==== @@ -29,7 +29,7 @@ - $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v 1.192 2003/11/07 23:03:02 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v 1.193 2003/11/08 17:38:11 bmah Exp $ Supported Devices @@ -190,14 +190,6 @@ Ultra-320 SCSI controllers based on the Adaptec AIC7901, AIC7901A, and AIC7902 Ultra320 controller chips (&man.ahd.4; driver) - - - Adaptec 29320, 29320A, 29320B, 29320LP - - - Adaptec 39320, 39320D - - Adaptec FSA family RAID controllers (&man.aac.4; driver) @@ -363,7 +355,7 @@ - Mylex DAC960 and DAC1100 RAID controllers with 2.x, 3.x, 4.x + Mylex DAC-family RAID controllers with 2.x, 3.x, 4.x and 5.x firmware (&man.mlx.4; driver) @@ -379,25 +371,8 @@ - Mylex PCI to SCSI RAID controllers with 6.x firmware + Mylex AcceleRAID/eXtremeRAID family PCI to SCSI RAID controllers with 6.x firmware (&man.mly.4; driver) - - - AcceleRAID 160 - - - AcceleRAID 170 - - - AcceleRAID 352 - - - eXtremeRAID 2000 - - - eXtremeRAID 3000 - - Compatible Mylex controllers not listed should work, but @@ -508,19 +483,7 @@ - Parallel to SCSI interfaces (&man.vpo.4; driver) - - - AIC 7110 SCSI controller (built-in to Iomega ZIP drive) - - - Iomega Jaz Traveller interface - - - Iomega MatchMaker SCSI interface (built-in to Iomega - ZIP+ drive) - - + Adaptec AIC-7110 Parallel to SCSI interfaces (&man.vpo.4; driver) Compaq Intelligent Drive Array Controllers @@ -911,48 +874,6 @@ driver) RealTek 8129/8139 Fast Ethernet NICs (&man.rl.4; driver) - - - Accton Cheetah EN1207D (MPX 5030/5038; - RealTek 8139 clone) - - - Allied Telesyn AT2550 - - - Allied Telesyn AT2500TX - - - D-Link DFE-530TX+, DFE-538TX - - - Farallon NetLINE 10/100 PCI - - - Genius GF100TXR (RTL8139) - - - KTX-9130TX 10/100 Fast Ethernet - - - NDC Communications NE100TX-E - - - Netronix Inc. EA-1210 NetEther 10/100 - - - OvisLink LEF-8129TX - - - OvisLink LEF-8139TX - - - SMC EZ Card 10/100 PCI 1211-TX - - - SOHO(PRAGMATIC) UE-1211C (PCI) - - Lite-On 82c168/82c169 PNIC Fast Ethernet NICs (&man.dc.4; driver) @@ -2090,29 +2011,6 @@ Camera and Video Capture Devices Brooktree Bt848/849/878/879-based frame grabbers (&man.bktr.4; driver) - - - AverMedia cards - - - Hauppauge Wincast TV and WinTV boards (PCI) - - - Intel Smart Video Recorder III - - - Miro PC TV - - - STB TV PCI - - - Video Highway XTreme - - - VideoLogic Captivator PCI - - Connectix QuickCam Cortex1 frame grabber (ctx driver) @@ -2211,42 +2109,8 @@ interface (&man.ehci.4; driver) Hubs - - - Andromeda hub - - - MacAlly self powered hub (4 ports) - - - NEC hub - - Keyboards (&man.ukbd.4; driver) - - - Apple iMac keyboard - - - BTC BTC7935 keyboard with PS/2 mouse port - - - Cherry G81-3504 keyboard - - - Logitech M2452 keyboard - - - MacAlly iKey keyboard - - - Microsoft keyboard - - - Sun Microsystems Type 6 USB keyboard - - Miscellaneous @@ -2284,47 +2148,6 @@ Mice (&man.ums.4; driver) - - - Agiler Mouse 29UO - - - Apple iMac Mouse - - - Belkin Mouse - - - Chic mouse - - - Cypress mouse - - - Genius Niche mouse - - - Kensington Mouse-in-a-Box - - - Logitech wheel mouse (3 buttons) - - - Logitech PS/2 / USB mouse (3 buttons) - - - MacAlly mouse (3 buttons) - - - Microsoft IntelliMouse (3 buttons) - - - Sun Microsystems Type 6 USB Mouse - - - Trust Ami Mouse (3 buttons) - - Printers and parallel printer conversion cables (&man.ulpt.4; driver) @@ -2386,17 +2209,6 @@ Scanners (through SANE) (&man.uscanner.4; driver) - - - Perfection 636U - - - Seiko Epson GT-7700U, 7600U - - - HP ScanJet 4100C, 5200C, 6300C - - Storage (&man.umass.4; driver) ==== //depot/projects/hammer/share/examples/cvsup/refuse#5 (text+ko) ==== @@ -1,4 +1,3 @@ -src/etc/sendmail/freebsd.mc* doc/da_* doc/de_* doc/es_* ==== //depot/projects/hammer/share/examples/cvsup/refuse.README#5 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/share/examples/cvsup/refuse.README,v 1.9 2003/09/12 09:09:49 ceri Exp $ +$FreeBSD: src/share/examples/cvsup/refuse.README,v 1.10 2003/11/08 17:19:50 gshapiro Exp $ This describes the "refuse" file found in this directory. The explanation cannot be put inside the file itself because: @@ -16,11 +16,9 @@ directory; i.e., it is "/usr/sup". If you have changed your base directory, your sup directory is /path/to/base/sup. -Use the following pattern if you have modified -/usr/src/etc/sendmail/freebsd.mc to reflect your local configuration, -and you do not want CVSup to overwrite it: - - src/etc/sendmail/freebsd.mc* +This file used to contain /usr/src/etc/sendmail/freebsd.mc in case +you modified that file. However, this was removed as it can break +buildworld. Modify /etc/mail/`hostname`.mc instead. If you are an English speaker and don't wish to receive the foreign-language documentation or ports, use the following patterns: ==== //depot/projects/hammer/share/man/man4/man4.i386/Makefile#9 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/man/man4/man4.i386/Makefile,v 1.149 2003/10/23 05:26:44 hmp Exp $ +# $FreeBSD: src/share/man/man4/man4.i386/Makefile,v 1.150 2003/11/08 10:28:31 rushani Exp $ MAN= aic.4 alpm.4 amdpm.4 apm.4 ar.4 asc.4 \ cs.4 cx.4 cy.4 \ @@ -14,6 +14,7 @@ MLINKS=pae.4 PAE.4 MLINKS+=spkr.4 speaker.4 MLINKS+=sbni.4 if_sbni.4 +MLINKS+=wd.4 wdc.4 MANSUBDIR=/i386 ==== //depot/projects/hammer/share/man/man4/man4.i386/wd.4#2 (text+ko) ==== @@ -24,13 +24,14 @@ .\" (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/share/man/man4/man4.i386/wd.4,v 1.24 2002/01/21 12:36:12 mpp Exp $ +.\" $FreeBSD: src/share/man/man4/man4.i386/wd.4,v 1.25 2003/11/08 10:28:31 rushani Exp $ .\" .Dd August 31, 1994 .Dt WD 4 i386 .Os .Sh NAME -.Nm wd +.Nm wd , +.Nm wdc .Nd generic WD100x/IDE disk controller driver .Sh SYNOPSIS .Cd "device wdc0 at isa? port IO_WD1 irq 14" Op flags Ar flags ==== //depot/projects/hammer/share/man/man4/rl.4#7 (text+ko) ==== @@ -28,22 +28,22 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/rl.4,v 1.29 2003/09/14 23:38:42 hmp Exp $ +.\" $FreeBSD: src/share/man/man4/rl.4,v 1.33 2003/11/08 17:31:49 bmah Exp $ .\" .Dd November 4, 1998 .Dt RL 4 .Os .Sh NAME .Nm rl -.Nd RealTek 8129/8139 fast ethernet device driver +.Nd RealTek 8129/8139 Fast Ethernet device driver .Sh SYNOPSIS .Cd "device miibus" .Cd "device rl" .Sh DESCRIPTION The .Nm -driver provides support for PCI ethernet adapters and embedded -controllers based on the RealTek 8129 and 8139 fast ethernet controller +driver provides support for PCI Ethernet adapters and embedded +controllers based on the RealTek 8129 and 8139 Fast Ethernet controller chips, including the following: .Pp .Bl -bullet -compact -offset indent @@ -54,55 +54,55 @@ .It Allied Telesyn AT2500TX .It -Farallon NetLINE 10/100 PCI +Belkin F5D5000 +.It +Compaq HNE-300 +.It +CompUSA no-name 10/100 PCI Ethernet NIC +.It +Corega FEther CB-TXD .It -Genius GF100TXR, +Corega FEtherII CB-TXD .It -NDC Communications NE100TX-E +D-Link DFE-530TX+ .It -OvisLink LEF-8129TX +D-Link DFE-538TX (same as 530+?) .It -OvisLink LEF-8139TX, +D-Link DFE-690TXD .It -Netronix Inc. EA-1210 NetEther 10/100 +Edimax EP-4103DL CardBus .It -KTX-9130TX 10/100 Fast Ethernet, +Encore ENL832-TX 10/100 M PCI .It -Encore ENL832-TX 10/100 M PCI, +Farallon NetLINE 10/100 PCI .It -Longshine LCS-8038TX-R +Genius GF100TXR, .It -SMC EZ Card 10/100 PCI 1211-TX +GigaFast Ethernet EE100-AXP .It -Compaq HNE-300 +KTX-9130TX 10/100 Fast Ethernet .It LevelOne FPC-0106TX .It -Edimax EP-4103DL CardBus +Longshine LCS-8038TX-R .It -Nortel Networks 10/100BaseTX +NDC Communications NE100TX-E .It -D-Link DFE-690TXD +Netronix Inc. EA-1210 NetEther 10/100 .It -D-Link DFE-530TX+ +Nortel Networks 10/100BaseTX .It -D-Link DFE-538TX (same as 530+?) +OvisLink LEF-8129TX .It -Corega FEther CB-TXD -.It -Corega FEtherII CB-TXD +OvisLink LEF-8139TX .It Peppercon AG ROL-F .It Planex FNW-3800-TX .It -Accton EN1207D +SMC EZ Card 10/100 PCI 1211-TX .It -GigaFast Ethernet EE100-AXP -.It -CompUSA no-name 10/100 PCI ethernet NIC -.It -Belkin F5D5000 +SOHO(PRAGMATIC) UE-1211C .El .Pp The RealTek 8129/8139 series controllers use bus master DMA but do not use a @@ -152,7 +152,7 @@ .Ar half-duplex modes. .It 100baseTX -Set 100Mbps (fast ethernet) operation. +Set 100Mbps (Fast Ethernet) operation. The .Ar mediaopt option can also be used to select either ==== //depot/projects/hammer/share/man/man7/hier.7#9 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)hier.7 8.1 (Berkeley) 6/5/93 -.\" $FreeBSD: src/share/man/man7/hier.7,v 1.88 2003/10/30 21:25:37 fjoe Exp $ +.\" $FreeBSD: src/share/man/man7/hier.7,v 1.89 2003/11/08 18:01:44 rwatson Exp $ .\" .Dd June 5, 1993 .Dt HIER 7 @@ -528,6 +528,9 @@ pcvt documentation and etc examples; see .Xr pcvt 4 +.It Pa security/ +data files for security policies such as +.Xr mac_lomac 4 .It Pa sendmail/ .Xr sendmail 8 configuration files ==== //depot/projects/hammer/share/man/man9/pfind.9#2 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/pfind.9,v 1.2 2001/12/26 23:14:04 davidc Exp $ +.\" $FreeBSD: src/share/man/man9/pfind.9,v 1.3 2003/11/08 13:41:22 jkoshy Exp $ .\" .Dd July 11, 2001 .Os @@ -81,6 +81,8 @@ structure on success and a .Dv NULL on failure. +.Sh SEE ALSO +.Xr pgfind 9 .Sh AUTHORS This man page was written by .An Evan Sarmiento Aq kaworu@sektor7.ath.cx . ==== //depot/projects/hammer/share/man/man9/pgfind.9#2 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/pgfind.9,v 1.3 2002/02/28 07:06:31 davidc Exp $ +.\" $FreeBSD: src/share/man/man9/pgfind.9,v 1.4 2003/11/08 13:41:22 jkoshy Exp $ .\" .Dd August 8, 2001 .Os @@ -58,6 +58,8 @@ on failure or a pointer to a .Vt pgrp structure on successful completion. +.Sh SEE ALSO +.Xr pfind 9 .Sh AUTHORS This man page was written by .An Evan Sarmiento Aq kaworu@sektor7.ath.cx . ==== //depot/projects/hammer/share/security/Makefile#2 (text+ko) ==== @@ -1,7 +1,8 @@ -# $FreeBSD: src/share/security/Makefile,v 1.1 2003/11/08 00:40:25 rwatson Exp $ +# $FreeBSD: src/share/security/Makefile,v 1.2 2003/11/08 17:56:53 rwatson Exp $ FILES= lomac-policy.contexts NOOBJ= noobj FILESDIR= ${BINDIR}/security +.include "${.CURDIR}/../Makefile.inc" .include ==== //depot/projects/hammer/sys/amd64/ia32/ia32_signal.c#8 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.5 2003/11/08 03:33:38 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.6 2003/11/08 07:43:44 peter Exp $"); #include "opt_compat.h" @@ -558,3 +558,44 @@ PROC_UNLOCK(p); return (EJUSTRETURN); } + +/* + * Clear registers on exec + */ +void +ia32_setregs(td, entry, stack, ps_strings) + struct thread *td; + u_long entry; + u_long stack; + u_long ps_strings; +{ + struct trapframe *regs = td->td_frame; + struct pcb *pcb = td->td_pcb; + + wrmsr(MSR_FSBASE, 0); + wrmsr(MSR_KGSBASE, 0); /* User value while we're in the kernel */ + pcb->pcb_fsbase = 0; + pcb->pcb_gsbase = 0; + load_ds(_udatasel); + load_es(_udatasel); + load_fs(_udatasel); + load_gs(_udatasel); + pcb->pcb_ds = _udatasel; + pcb->pcb_es = _udatasel; + pcb->pcb_fs = _udatasel; + pcb->pcb_gs = _udatasel; + + bzero((char *)regs, sizeof(struct trapframe)); + regs->tf_rip = entry; + regs->tf_rsp = stack; + regs->tf_rflags = PSL_USER | (regs->tf_rflags & PSL_T); + regs->tf_ss = _udatasel; + regs->tf_cs = _ucode32sel; + regs->tf_rbx = ps_strings; + load_cr0(rcr0() | CR0_MP | CR0_TS); + fpstate_drop(td); + + /* Return via doreti so that we can change to a different %cs */ + pcb->pcb_flags |= PCB_FULLCTX; + td->td_retval[1] = 0; +} ==== //depot/projects/hammer/sys/cam/cam_periph.c#13 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.55 2003/10/27 06:15:54 ken Exp $"); +__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.56 2003/11/08 10:56:57 scottl Exp $"); #include #include @@ -969,13 +969,13 @@ if (sense_key != SSD_KEY_NO_SENSE) { saved_ccb->ccb_h.status |= CAM_AUTOSNS_VALID; +#if 0 xpt_print_path(saved_ccb->ccb_h.path); printf("Recovered Sense\n"); -#if 0 scsi_sense_print(&saved_ccb->csio); -#endif cam_error_print(saved_ccb, CAM_ESF_ALL, CAM_EPF_ALL); +#endif xpt_done_ccb = TRUE; } } ==== //depot/projects/hammer/sys/compat/freebsd32/freebsd32_proto.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.13 2003/11/07 20:30:30 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.25 2003/11/07 20:29:53 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.14 2003/11/08 07:31:49 peter Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.26 2003/11/08 07:31:30 peter Exp */ #ifndef _FREEBSD32_SYSPROTO_H_ ==== //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscall.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.13 2003/11/07 20:30:30 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.25 2003/11/07 20:29:53 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.14 2003/11/08 07:31:49 peter Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.26 2003/11/08 07:31:30 peter Exp */ #define FREEBSD32_SYS_syscall 0 @@ -67,7 +67,7 @@ /* 63 is obsolete ogetkerninfo */ /* 64 is obsolete ogetpagesize */ /* 65 is obsolete omsync */ - /* 66 is obsolete ovfork */ +#define FREEBSD32_SYS_vfork 66 /* 67 is obsolete vread */ /* 68 is obsolete vwrite */ #define FREEBSD32_SYS_sbrk 69 ==== //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscalls.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.4 2003/11/07 20:30:30 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.25 2003/11/07 20:29:53 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.5 2003/11/08 07:31:49 peter Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.26 2003/11/08 07:31:30 peter Exp */ const char *freebsd32_syscallnames[] = { @@ -73,7 +73,7 @@ "obs_ogetkerninfo", /* 63 = obsolete ogetkerninfo */ "obs_ogetpagesize", /* 64 = obsolete ogetpagesize */ "obs_omsync", /* 65 = obsolete omsync */ - "obs_ovfork", /* 66 = obsolete ovfork */ + "vfork", /* 66 = vfork */ "obs_vread", /* 67 = obsolete vread */ "obs_vwrite", /* 68 = obsolete vwrite */ "sbrk", /* 69 = sbrk */ ==== //depot/projects/hammer/sys/compat/freebsd32/freebsd32_sysent.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.14 2003/11/07 20:30:30 jhb Exp $ - * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.25 2003/11/07 20:29:53 jhb Exp + * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.15 2003/11/08 07:31:49 peter Exp $ + * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.26 2003/11/08 07:31:30 peter Exp >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Nov 8 13:46:46 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ECA6916A4D0; Sat, 8 Nov 2003 13:46:45 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B05C216A4CE for ; Sat, 8 Nov 2003 13:46:45 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 34C5443FAF for ; Sat, 8 Nov 2003 13:46:45 -0800 (PST) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8LkjXJ009411 for ; Sat, 8 Nov 2003 13:46:45 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8Lkios009408 for perforce@freebsd.org; Sat, 8 Nov 2003 13:46:44 -0800 (PST) (envelope-from peter@freebsd.org) Date: Sat, 8 Nov 2003 13:46:44 -0800 (PST) Message-Id: <200311082146.hA8Lkios009408@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 41756 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 21:46:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=41756 Change 41756 by peter@peter_overcee on 2003/11/08 13:45:49 integ -I -b smp_hammer Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/io_apic.c#15 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/io_apic.c#15 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/io_apic.c,v 1.4 2003/11/05 23:07:39 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/io_apic.c,v 1.5 2003/11/07 23:44:35 jhb Exp $"); #include "opt_isa.h" #include "opt_no_mixed_mode.h" @@ -406,9 +406,12 @@ if (bootverbose) { printf("ioapic%u: intpin %d -> ", io->io_id, i); if (intpin->io_vector == VECTOR_EXTINT) - printf("ExtINT\n"); + printf("ExtINT"); else - printf("irq %u\n", intpin->io_vector); + printf("irq %u", intpin->io_vector); + printf(" (%s, active%s)\n", intpin->io_edgetrigger ? + "edge" : "level", intpin->io_activehi ? "hi" : + "lo"); } value = ioapic_read(apic, IOAPIC_REDTBL_LO(i)); ioapic_write(apic, IOAPIC_REDTBL_LO(i), value | IOART_INTMSET); From owner-p4-projects@FreeBSD.ORG Sat Nov 8 14:58:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E08AB16A4D0; Sat, 8 Nov 2003 14:58:54 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BAFFA16A4CE for ; Sat, 8 Nov 2003 14:58:54 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 25F4843FF3 for ; Sat, 8 Nov 2003 14:58:54 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8MwrXJ014092 for ; Sat, 8 Nov 2003 14:58:53 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8Mwrns014089 for perforce@freebsd.org; Sat, 8 Nov 2003 14:58:53 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 14:58:53 -0800 (PST) Message-Id: <200311082258.hA8Mwrns014089@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41761 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 22:58:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=41761 Change 41761 by jmallett@jmallett_dalek on 2003/11/08 14:58:24 Includes. Affected files ... .. //depot/projects/mips/sys/mips/mips/trap.c#12 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/trap.c#12 (text+ko) ==== @@ -35,8 +35,8 @@ #include #include +#include #include -#include #include #include #include From owner-p4-projects@FreeBSD.ORG Sat Nov 8 15:41:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E294816A4D3; Sat, 8 Nov 2003 15:41:53 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9B25216A4CF for ; Sat, 8 Nov 2003 15:41:53 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8CEF643FBD for ; Sat, 8 Nov 2003 15:41:52 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8NfqXJ018047 for ; Sat, 8 Nov 2003 15:41:52 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8Nfqo4018044 for perforce@freebsd.org; Sat, 8 Nov 2003 15:41:52 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 15:41:52 -0800 (PST) Message-Id: <200311082341.hA8Nfqo4018044@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41770 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 23:41:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=41770 Change 41770 by jmallett@jmallett_dalek on 2003/11/08 15:41:15 Cleanup, keep a fuller TLB. Affected files ... .. //depot/projects/mips/sys/mips/mips/tlb.c#13 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/tlb.c#13 (text+ko) ==== @@ -110,13 +110,13 @@ printf("pmap %p entering invalid mapping for va %lx to pa %lx [%lx]\n", pmap, (u_long)va, (u_long)pa, (u_long)bits); *pte = MIPS_PA_TO_PFN(pa) | bits; -#if notyet + if (pmap == kernel_pmap) + *pte |= PG_G; if ((va >> PAGE_SHIFT) & 1) { tlb_update(va, pte[-1], pte[0]); } else { tlb_update(va, pte[0], pte[1]); } -#endif } void @@ -151,7 +151,7 @@ tlb_insert(vm_offset_t va, pt_entry_t pte0, pt_entry_t pte1) { u_long ehi; - long i; + int i; va &= ~PAGE_MASK; ehi = 0; @@ -166,10 +166,9 @@ mips_wr_entrylo0(pte0); mips_wr_entrylo1(pte1); mips_wr_entryhi(ehi); - if (i < 0) { - tlb_invalidate_page(va); + if (i < 0) mips_tlbwr(); - } else + else mips_tlbwi(); } From owner-p4-projects@FreeBSD.ORG Sat Nov 8 15:41:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 302F716A4D4; Sat, 8 Nov 2003 15:41:54 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B622016A4D0 for ; Sat, 8 Nov 2003 15:41:53 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0F16243FE1 for ; Sat, 8 Nov 2003 15:41:53 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8NfqXJ018053 for ; Sat, 8 Nov 2003 15:41:52 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8NfqBw018050 for perforce@freebsd.org; Sat, 8 Nov 2003 15:41:52 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 15:41:52 -0800 (PST) Message-Id: <200311082341.hA8NfqBw018050@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41771 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 23:41:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=41771 Change 41771 by jmallett@jmallett_dalek on 2003/11/08 15:41:45 Don't specify PG_G by hand, it'll be added for pmap==kernel_pmap by the TLB code. Affected files ... .. //depot/projects/mips/sys/mips/mips/pmap.c#23 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/pmap.c#23 (text+ko) ==== @@ -646,7 +646,7 @@ pmap_kenter(vm_offset_t va, vm_offset_t pa) { - tlb_enter(kernel_pmap, va, pa, PG_G | PG_V | PG_W); + tlb_enter(kernel_pmap, va, pa, PG_V | PG_W); } /* From owner-p4-projects@FreeBSD.ORG Sat Nov 8 15:42:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C144B16A4D1; Sat, 8 Nov 2003 15:42:55 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9C15716A4CF for ; Sat, 8 Nov 2003 15:42:55 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0204643FD7 for ; Sat, 8 Nov 2003 15:42:55 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA8NgsXJ018167 for ; Sat, 8 Nov 2003 15:42:54 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA8Ngsw6018164 for perforce@freebsd.org; Sat, 8 Nov 2003 15:42:54 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 15:42:54 -0800 (PST) Message-Id: <200311082342.hA8Ngsw6018164@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41772 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Nov 2003 23:42:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=41772 Change 41772 by jmallett@jmallett_dalek on 2003/11/08 15:42:41 Add mips_barrier(), 8 NOPs and a memory barrier, to avoid any CP0/... hazards, and keep the compiler from doing *bad* things. Gets us much further. Oh how much pain has been caused by not working with the compiler. Affected files ... .. //depot/projects/mips/sys/mips/include/cpufunc.h#15 edit Differences ... ==== //depot/projects/mips/sys/mips/include/cpufunc.h#15 (text+ko) ==== @@ -34,33 +34,54 @@ #include static __inline void +mips_barrier(void) +{ + __asm __volatile (".set noreorder\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + "nop\n\t" + ".set reorder\n\t" + : : : "memory"); +} + +static __inline void mips_tlbp(void) { __asm __volatile ("tlbp"); + mips_barrier(); } static __inline void mips_tlbr(void) { __asm __volatile ("tlbr"); + mips_barrier(); } static __inline void mips_tlbwi(void) { __asm __volatile ("tlbwi"); + mips_barrier(); } static __inline void mips_tlbwr(void) { __asm __volatile ("tlbwr"); + mips_barrier(); } static __inline void mips_wbflush(void) { __asm __volatile ("sync" : : : "memory"); + mips_barrier(); } #define MIPS_RDRW64_COP0(n,r) \ @@ -70,6 +91,7 @@ int v0; \ __asm __volatile ("dmfc0 %[v0], $"__XSTRING(r)";" \ : [v0] "=&r"(v0)); \ + mips_barrier(); \ return (v0); \ } \ static __inline void \ @@ -81,6 +103,7 @@ "nop;" \ : \ : [a0] "r"(a0)); \ + mips_barrier(); \ } MIPS_RDRW64_COP0(entrylo0, MIPS_COP_0_TLB_LO0) @@ -98,6 +121,7 @@ int v0; \ __asm __volatile ("mfc0 %[v0], $"__XSTRING(r)";" \ : [v0] "=&r"(v0)); \ + mips_barrier(); \ return (v0); \ } \ static __inline void \ @@ -109,6 +133,7 @@ "nop;" \ : \ : [a0] "r"(a0)); \ + mips_barrier(); \ } MIPS_RDRW32_COP0(compare, MIPS_COP_0_COMPARE) From owner-p4-projects@FreeBSD.ORG Sat Nov 8 17:16:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4F15A16A4D0; Sat, 8 Nov 2003 17:16:53 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2A33D16A4CE for ; Sat, 8 Nov 2003 17:16:53 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A708B43FDD for ; Sat, 8 Nov 2003 17:16:52 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA91GqXJ032331 for ; Sat, 8 Nov 2003 17:16:52 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA91GqDu032328 for perforce@freebsd.org; Sat, 8 Nov 2003 17:16:52 -0800 (PST) (envelope-from sam@freebsd.org) Date: Sat, 8 Nov 2003 17:16:52 -0800 (PST) Message-Id: <200311090116.hA91GqDu032328@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 Subject: PERFORCE change 41776 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Nov 2003 01:16:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=41776 Change 41776 by sam@sam_ebb on 2003/11/08 17:16:50 fix whitespace diff against HEAD Affected files ... .. //depot/projects/netperf/sys/netinet/ip_input.c#21 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_input.c#21 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ip_input.c 8.2 (Berkeley) 1/4/94 - * $FreeBSD: src/sys/netinet/ip_input.c,v 1.250 2003/11/07 01:47:52 sam Exp $ + * $FreeBSD: src/sys/netinet/ip_input.c,v 1.252 2003/11/08 23:36:31 sam Exp $ */ #include "opt_bootp.h" @@ -815,7 +815,7 @@ ipstat.ips_fragdropped++; goto bad; } - + sum = IPREASS_HASH(ip->ip_src.s_addr, ip->ip_id); IPQ_LOCK(); /* From owner-p4-projects@FreeBSD.ORG Sat Nov 8 17:44:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DBD9E16A4D1; Sat, 8 Nov 2003 17:44:30 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9D37516A4CF for ; Sat, 8 Nov 2003 17:44:30 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 450D043FCB for ; Sat, 8 Nov 2003 17:44:28 -0800 (PST) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA91iSXJ033685 for ; Sat, 8 Nov 2003 17:44:28 -0800 (PST) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA91iQia033682 for perforce@freebsd.org; Sat, 8 Nov 2003 17:44:26 -0800 (PST) (envelope-from sam@freebsd.org) Date: Sat, 8 Nov 2003 17:44:26 -0800 (PST) Message-Id: <200311090144.hA91iQia033682@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 Subject: PERFORCE change 41778 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Nov 2003 01:44:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=41778 Change 41778 by sam@sam_ebb on 2003/11/08 17:43:51 IFC @ 41777 Affected files ... .. //depot/projects/netperf/sys/alpha/include/bus.h#4 integrate .. //depot/projects/netperf/sys/alpha/linux/linux_proto.h#2 integrate .. //depot/projects/netperf/sys/alpha/linux/linux_syscall.h#2 integrate .. //depot/projects/netperf/sys/alpha/linux/linux_sysent.c#2 integrate .. //depot/projects/netperf/sys/alpha/linux/syscalls.master#2 integrate .. //depot/projects/netperf/sys/alpha/osf1/osf1_proto.h#2 integrate .. //depot/projects/netperf/sys/alpha/osf1/osf1_syscall.h#2 integrate .. //depot/projects/netperf/sys/alpha/osf1/osf1_sysent.c#2 integrate .. //depot/projects/netperf/sys/alpha/osf1/syscalls.master#2 integrate .. //depot/projects/netperf/sys/amd64/amd64/cpu_switch.S#2 integrate .. //depot/projects/netperf/sys/amd64/amd64/fpu.c#1 branch .. //depot/projects/netperf/sys/amd64/amd64/machdep.c#7 integrate .. //depot/projects/netperf/sys/amd64/amd64/nexus.c#3 integrate .. //depot/projects/netperf/sys/amd64/amd64/pmap.c#15 integrate .. //depot/projects/netperf/sys/amd64/amd64/support.S#3 integrate .. //depot/projects/netperf/sys/amd64/amd64/sys_machdep.c#3 integrate .. //depot/projects/netperf/sys/amd64/amd64/trap.c#8 integrate .. //depot/projects/netperf/sys/amd64/amd64/vm_machdep.c#7 integrate .. //depot/projects/netperf/sys/amd64/conf/GENERIC#5 integrate .. //depot/projects/netperf/sys/amd64/conf/gethints.awk#2 integrate .. //depot/projects/netperf/sys/amd64/ia32/ia32_signal.c#4 integrate .. //depot/projects/netperf/sys/amd64/include/bus_dma.h#3 integrate .. //depot/projects/netperf/sys/amd64/include/cpufunc.h#2 integrate .. //depot/projects/netperf/sys/amd64/include/fpu.h#1 branch .. //depot/projects/netperf/sys/amd64/include/frame.h#3 integrate .. //depot/projects/netperf/sys/amd64/include/ieeefp.h#3 integrate .. //depot/projects/netperf/sys/amd64/include/npx.h#2 delete .. //depot/projects/netperf/sys/amd64/include/pcb.h#2 integrate .. //depot/projects/netperf/sys/amd64/include/pmap.h#4 integrate .. //depot/projects/netperf/sys/amd64/include/reg.h#2 integrate .. //depot/projects/netperf/sys/amd64/include/signal.h#4 integrate .. //depot/projects/netperf/sys/amd64/include/specialreg.h#3 integrate .. //depot/projects/netperf/sys/amd64/include/ucontext.h#5 integrate .. //depot/projects/netperf/sys/amd64/include/vmparam.h#4 integrate .. //depot/projects/netperf/sys/amd64/isa/npx.c#3 delete .. //depot/projects/netperf/sys/amd64/isa/vector.S#2 integrate .. //depot/projects/netperf/sys/cam/cam_periph.c#6 integrate .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_misc.c#3 integrate .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/netperf/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/netperf/sys/compat/ia32/ia32_signal.h#3 integrate .. //depot/projects/netperf/sys/compat/ia32/ia32_sysvec.c#4 integrate .. //depot/projects/netperf/sys/conf/files.amd64#6 integrate .. //depot/projects/netperf/sys/dev/aha/aha.c#3 integrate .. //depot/projects/netperf/sys/dev/aha/aha_isa.c#3 integrate .. //depot/projects/netperf/sys/dev/aha/aha_mca.c#3 integrate .. //depot/projects/netperf/sys/dev/aha/ahareg.h#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-raid.c#6 integrate .. //depot/projects/netperf/sys/dev/dcons/dcons_crom.c#2 integrate .. //depot/projects/netperf/sys/dev/pccbb/pccbb.c#7 integrate .. //depot/projects/netperf/sys/dev/usb/usb_ethersubr.c#4 integrate .. //depot/projects/netperf/sys/dev/usb/uvisor.c#3 integrate .. //depot/projects/netperf/sys/i386/i386/db_interface.c#5 integrate .. //depot/projects/netperf/sys/i386/i386/io_apic.c#3 integrate .. //depot/projects/netperf/sys/i386/i386/pmap.c#23 integrate .. //depot/projects/netperf/sys/i386/include/bus_dma.h#4 integrate .. //depot/projects/netperf/sys/i386/include/pmap.h#5 integrate .. //depot/projects/netperf/sys/i386/linux/linux_proto.h#2 integrate .. //depot/projects/netperf/sys/i386/linux/linux_syscall.h#2 integrate .. //depot/projects/netperf/sys/i386/linux/linux_sysent.c#2 integrate .. //depot/projects/netperf/sys/i386/linux/syscalls.master#2 integrate .. //depot/projects/netperf/sys/ia64/conf/GENERIC#3 integrate .. //depot/projects/netperf/sys/ia64/conf/GENERIC.hints#3 integrate .. //depot/projects/netperf/sys/ia64/ia32/ia32_proto.h#3 integrate .. //depot/projects/netperf/sys/ia64/ia32/ia32_syscall.h#3 integrate .. //depot/projects/netperf/sys/ia64/ia32/ia32_sysent.c#3 integrate .. //depot/projects/netperf/sys/ia64/ia32/syscalls.master#3 integrate .. //depot/projects/netperf/sys/ia64/include/bus.h#4 integrate .. //depot/projects/netperf/sys/kern/init_sysent.c#5 integrate .. //depot/projects/netperf/sys/kern/kern_poll.c#8 integrate .. //depot/projects/netperf/sys/kern/sched_4bsd.c#8 integrate .. //depot/projects/netperf/sys/kern/syscalls.c#5 integrate .. //depot/projects/netperf/sys/kern/syscalls.master#5 integrate .. //depot/projects/netperf/sys/net/if_ppp.c#7 integrate .. //depot/projects/netperf/sys/net/netisr.c#8 integrate .. //depot/projects/netperf/sys/net/netisr.h#3 integrate .. //depot/projects/netperf/sys/net/route.c#27 integrate .. //depot/projects/netperf/sys/net/route.h#14 integrate .. //depot/projects/netperf/sys/net/rtsock.c#10 integrate .. //depot/projects/netperf/sys/netatalk/aarp.c#7 integrate .. //depot/projects/netperf/sys/netatalk/ddp_input.c#5 integrate .. //depot/projects/netperf/sys/netatalk/ddp_usrreq.c#3 integrate .. //depot/projects/netperf/sys/netatm/atm_subr.c#5 integrate .. //depot/projects/netperf/sys/netgraph/ng_base.c#5 integrate .. //depot/projects/netperf/sys/netinet/if_atm.c#9 integrate .. //depot/projects/netperf/sys/netinet/if_ether.c#17 integrate .. //depot/projects/netperf/sys/netinet/in_pcb.c#13 integrate .. //depot/projects/netperf/sys/netinet/in_pcb.h#13 integrate .. //depot/projects/netperf/sys/netinet/in_proto.c#6 integrate .. //depot/projects/netperf/sys/netinet/ip_divert.c#14 integrate .. //depot/projects/netperf/sys/netinet/ip_dummynet.c#17 integrate .. //depot/projects/netperf/sys/netinet/ip_flow.c#8 integrate .. //depot/projects/netperf/sys/netinet/ip_fw2.c#15 integrate .. //depot/projects/netperf/sys/netinet/ip_id.c#3 integrate .. //depot/projects/netperf/sys/netinet/ip_mroute.c#21 integrate .. //depot/projects/netperf/sys/netinet/ip_output.c#14 integrate .. //depot/projects/netperf/sys/netinet/ip_var.h#11 integrate .. //depot/projects/netperf/sys/netinet/raw_ip.c#10 integrate .. //depot/projects/netperf/sys/netinet/tcp_input.c#10 integrate .. //depot/projects/netperf/sys/netinet/tcp_output.c#8 integrate .. //depot/projects/netperf/sys/netinet/tcp_subr.c#11 integrate .. //depot/projects/netperf/sys/netinet/tcp_timer.c#5 integrate .. //depot/projects/netperf/sys/netinet/udp_usrreq.c#10 integrate .. //depot/projects/netperf/sys/netinet6/in6.c#16 integrate .. //depot/projects/netperf/sys/netinet6/ip6_input.c#20 integrate .. //depot/projects/netperf/sys/netinet6/ip6_output.c#24 integrate .. //depot/projects/netperf/sys/netinet6/ipsec.c#7 integrate .. //depot/projects/netperf/sys/netinet6/ipsec.h#4 integrate .. //depot/projects/netperf/sys/netinet6/nd6.c#16 integrate .. //depot/projects/netperf/sys/netinet6/nd6_rtr.c#11 integrate .. //depot/projects/netperf/sys/netipx/ipx_input.c#8 integrate .. //depot/projects/netperf/sys/netnatm/natm.c#7 integrate .. //depot/projects/netperf/sys/netnatm/natm_proto.c#4 integrate .. //depot/projects/netperf/sys/nfsclient/bootp_subr.c#8 integrate .. //depot/projects/netperf/sys/nfsclient/krpc_subr.c#4 integrate .. //depot/projects/netperf/sys/nfsclient/nfs_socket.c#4 integrate .. //depot/projects/netperf/sys/nfsclient/nfs_vfsops.c#8 integrate .. //depot/projects/netperf/sys/nfsserver/nfs_srvsock.c#3 integrate .. //depot/projects/netperf/sys/nfsserver/nfs_syscalls.c#4 integrate .. //depot/projects/netperf/sys/pci/if_sk.c#5 integrate .. //depot/projects/netperf/sys/pci/if_skreg.h#3 integrate .. //depot/projects/netperf/sys/security/mac/mac_net.c#4 integrate .. //depot/projects/netperf/sys/security/mac_lomac/mac_lomac.c#5 integrate .. //depot/projects/netperf/sys/sys/exec.h#2 integrate .. //depot/projects/netperf/sys/sys/syscall.h#5 integrate .. //depot/projects/netperf/sys/sys/syscall.mk#5 integrate .. //depot/projects/netperf/sys/sys/sysproto.h#5 integrate Differences ... ==== //depot/projects/netperf/sys/alpha/include/bus.h#4 (text+ko) ==== @@ -67,7 +67,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* $FreeBSD: src/sys/alpha/include/bus.h,v 1.24 2003/09/23 08:22:33 nyan Exp $ */ +/* $FreeBSD: src/sys/alpha/include/bus.h,v 1.25 2003/11/07 23:29:42 scottl Exp $ */ #ifndef _ALPHA_BUS_H_ #define _ALPHA_BUS_H_ @@ -569,6 +569,10 @@ * nsegments: Number of discontinuities allowed in maps. * maxsegsz: Maximum size of a segment in the map. * flags: Bus DMA flags. + * lockfunc: An optional function to handle driver-defined lock + * operations. + * lockfuncarg: An argument that will be passed to lockfunc in addition + * to the lock operation. * dmat: A pointer to set to a valid dma tag should the return * value of this function indicate success. */ ==== //depot/projects/netperf/sys/alpha/linux/linux_proto.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.12 2003/02/16 02:32:17 tjr Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.52 2003/02/16 02:31:05 tjr Exp + * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.13 2003/11/07 21:13:08 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.53 2003/11/07 21:09:19 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ @@ -11,8 +11,12 @@ #include #include +#include +#include #include +#include + struct proc; struct thread; ==== //depot/projects/netperf/sys/alpha/linux/linux_syscall.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.10 2003/02/16 02:32:17 tjr Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.52 2003/02/16 02:31:05 tjr Exp + * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.11 2003/11/07 21:13:08 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.53 2003/11/07 21:09:19 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/netperf/sys/alpha/linux/linux_sysent.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.10 2003/02/16 02:32:17 tjr Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.52 2003/02/16 02:31:05 tjr Exp + * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.11 2003/11/07 21:13:08 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.53 2003/11/07 21:09:19 jhb Exp */ #include "opt_compat.h" @@ -20,10 +20,10 @@ { 0, (sy_call_t *)nosys }, /* 0 = */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit }, /* 1 = exit */ { SYF_MPSAFE | 0, (sy_call_t *)linux_fork }, /* 2 = linux_fork */ - { AS(read_args), (sy_call_t *)read }, /* 3 = read */ - { AS(write_args), (sy_call_t *)write }, /* 4 = write */ + { SYF_MPSAFE | AS(read_args), (sy_call_t *)read }, /* 3 = read */ + { SYF_MPSAFE | AS(write_args), (sy_call_t *)write }, /* 4 = write */ { 0, (sy_call_t *)nosys }, /* 5 = */ - { AS(close_args), (sy_call_t *)close }, /* 6 = close */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close }, /* 6 = close */ { AS(osf1_wait4_args), (sy_call_t *)osf1_wait4 }, /* 7 = osf1_wait4 */ { 0, (sy_call_t *)nosys }, /* 8 = */ { AS(linux_link_args), (sy_call_t *)linux_link }, /* 9 = linux_link */ @@ -40,10 +40,10 @@ { 0, (sy_call_t *)getpid }, /* 20 = getpid */ { 0, (sy_call_t *)nosys }, /* 21 = osf1_mount */ { AS(linux_umount_args), (sy_call_t *)linux_umount }, /* 22 = linux_umount */ - { AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */ - { 0, (sy_call_t *)getuid }, /* 24 = getuid */ + { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */ + { SYF_MPSAFE | 0, (sy_call_t *)getuid }, /* 24 = getuid */ { 0, (sy_call_t *)nosys }, /* 25 = */ - { 0, (sy_call_t *)linux_ptrace }, /* 26 = linux_ptrace */ + { SYF_MPSAFE | 0, (sy_call_t *)linux_ptrace }, /* 26 = linux_ptrace */ { 0, (sy_call_t *)nosys }, /* 27 = */ { 0, (sy_call_t *)nosys }, /* 28 = */ { 0, (sy_call_t *)nosys }, /* 29 = */ @@ -54,18 +54,18 @@ { 0, (sy_call_t *)nosys }, /* 34 = */ { 0, (sy_call_t *)nosys }, /* 35 = */ { 0, (sy_call_t *)sync }, /* 36 = sync */ - { AS(linux_kill_args), (sy_call_t *)linux_kill }, /* 37 = linux_kill */ + { SYF_MPSAFE | AS(linux_kill_args), (sy_call_t *)linux_kill }, /* 37 = linux_kill */ { 0, (sy_call_t *)nosys }, /* 38 = */ - { AS(setpgid_args), (sy_call_t *)setpgid }, /* 39 = setpgid */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 39 = setpgid */ { 0, (sy_call_t *)nosys }, /* 40 = */ - { AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ - { 0, (sy_call_t *)pipe }, /* 42 = pipe */ + { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ + { SYF_MPSAFE | 0, (sy_call_t *)pipe }, /* 42 = pipe */ { 0, (sy_call_t *)nosys }, /* 43 = osf_set_program_attributes */ { 0, (sy_call_t *)nosys }, /* 44 = */ { AS(linux_open_args), (sy_call_t *)linux_open }, /* 45 = linux_open */ { 0, (sy_call_t *)nosys }, /* 46 = */ - { 0, (sy_call_t *)getgid }, /* 47 = getgid */ - { AS(osf1_sigprocmask_args), (sy_call_t *)osf1_sigprocmask }, /* 48 = osf1_sigprocmask */ + { SYF_MPSAFE | 0, (sy_call_t *)getgid }, /* 47 = getgid */ + { SYF_MPSAFE | AS(osf1_sigprocmask_args), (sy_call_t *)osf1_sigprocmask }, /* 48 = osf1_sigprocmask */ { 0, (sy_call_t *)nosys }, /* 49 = */ { 0, (sy_call_t *)nosys }, /* 50 = */ { AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */ @@ -77,10 +77,10 @@ { AS(linux_symlink_args), (sy_call_t *)linux_symlink }, /* 57 = linux_symlink */ { AS(linux_readlink_args), (sy_call_t *)linux_readlink }, /* 58 = linux_readlink */ { AS(linux_execve_args), (sy_call_t *)linux_execve }, /* 59 = linux_execve */ - { AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ { 0, (sy_call_t *)nosys }, /* 62 = */ - { 0, (sy_call_t *)getpgrp }, /* 63 = getpgrp */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp }, /* 63 = getpgrp */ { 0, (sy_call_t *)linux_getpagesize }, /* 64 = linux_getpagesize */ { 0, (sy_call_t *)nosys }, /* 65 = */ { SYF_MPSAFE | 0, (sy_call_t *)linux_vfork }, /* 66 = linux_vfork */ @@ -96,10 +96,10 @@ { 0, (sy_call_t *)linux_vhangup }, /* 76 = linux_vhangup */ { 0, (sy_call_t *)nosys }, /* 77 = */ { 0, (sy_call_t *)nosys }, /* 78 = */ - { AS(linux_setgroups_args), (sy_call_t *)linux_setgroups }, /* 79 = linux_setgroups */ - { AS(linux_getgroups_args), (sy_call_t *)linux_getgroups }, /* 80 = linux_getgroups */ + { SYF_MPSAFE | AS(linux_setgroups_args), (sy_call_t *)linux_setgroups }, /* 79 = linux_setgroups */ + { SYF_MPSAFE | AS(linux_getgroups_args), (sy_call_t *)linux_getgroups }, /* 80 = linux_getgroups */ { 0, (sy_call_t *)nosys }, /* 81 = */ - { AS(setpgid_args), (sy_call_t *)setpgid }, /* 82 = setpgid */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 82 = setpgid */ { AS(osf1_setitimer_args), (sy_call_t *)osf1_setitimer }, /* 83 = osf1_setitimer */ { 0, (sy_call_t *)nosys }, /* 84 = */ { 0, (sy_call_t *)nosys }, /* 85 = */ @@ -107,20 +107,20 @@ { 0, (sy_call_t *)linux_gethostname }, /* 87 = linux_gethostname */ { SYF_MPSAFE | AS(sethostname_args), (sy_call_t *)osethostname }, /* 88 = osethostname */ { 0, (sy_call_t *)linux_getdtablesize }, /* 89 = linux_getdtablesize */ - { AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(linux_newfstat_args), (sy_call_t *)linux_newfstat }, /* 91 = linux_newfstat */ { AS(linux_fcntl_args), (sy_call_t *)linux_fcntl }, /* 92 = linux_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ - { AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ + { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ { AS(osf1_socket_args), (sy_call_t *)osf1_socket }, /* 97 = osf1_socket */ { AS(linux_connect_args), (sy_call_t *)linux_connect }, /* 98 = linux_connect */ { AS(accept_args), (sy_call_t *)oaccept }, /* 99 = accept */ { 0, (sy_call_t *)nosys }, /* 100 = osf_getpriority */ { AS(osend_args), (sy_call_t *)osend }, /* 101 = osend */ { AS(orecv_args), (sy_call_t *)orecv }, /* 102 = orecv */ - { AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn }, /* 103 = osf1_sigreturn */ + { SYF_MPSAFE | AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn }, /* 103 = osf1_sigreturn */ { AS(bind_args), (sy_call_t *)bind }, /* 104 = bind */ { AS(setsockopt_args), (sy_call_t *)setsockopt }, /* 105 = setsockopt */ { AS(listen_args), (sy_call_t *)listen }, /* 106 = listen */ @@ -128,12 +128,12 @@ { 0, (sy_call_t *)nosys }, /* 108 = */ { 0, (sy_call_t *)nosys }, /* 109 = */ { 0, (sy_call_t *)nosys }, /* 110 = */ - { AS(osf1_sigsuspend_args), (sy_call_t *)osf1_sigsuspend }, /* 111 = osf1_sigsuspend */ + { SYF_MPSAFE | AS(osf1_sigsuspend_args), (sy_call_t *)osf1_sigsuspend }, /* 111 = osf1_sigsuspend */ { 0, (sy_call_t *)nosys }, /* 112 = osf_sigstack */ { 0, (sy_call_t *)linux_recvmsg }, /* 113 = linux_recvmsg */ { 0, (sy_call_t *)linux_sendmsg }, /* 114 = linux_sendmsg */ { 0, (sy_call_t *)nosys }, /* 115 = */ - { AS(osf1_gettimeofday_args), (sy_call_t *)osf1_gettimeofday }, /* 116 = osf1_gettimeofday */ + { SYF_MPSAFE | AS(osf1_gettimeofday_args), (sy_call_t *)osf1_gettimeofday }, /* 116 = osf1_gettimeofday */ { AS(osf1_getrusage_args), (sy_call_t *)osf1_getrusage }, /* 117 = osf1_getrusage */ { AS(getsockopt_args), (sy_call_t *)getsockopt }, /* 118 = getsockopt */ { 0, (sy_call_t *)nosys }, /* 119 = */ @@ -143,13 +143,13 @@ { AS(fchown_args), (sy_call_t *)fchown }, /* 123 = fchown */ { AS(fchmod_args), (sy_call_t *)fchmod }, /* 124 = fchmod */ { AS(recvfrom_args), (sy_call_t *)orecvfrom }, /* 125 = recvfrom */ - { AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ - { AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ + { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ + { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ { AS(linux_rename_args), (sy_call_t *)linux_rename }, /* 128 = linux_rename */ { AS(linux_truncate_args), (sy_call_t *)linux_truncate }, /* 129 = linux_truncate */ { AS(oftruncate_args), (sy_call_t *)oftruncate }, /* 130 = oftruncate */ { AS(flock_args), (sy_call_t *)flock }, /* 131 = flock */ - { AS(setgid_args), (sy_call_t *)setgid }, /* 132 = setgid */ + { SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid }, /* 132 = setgid */ { AS(osf1_sendto_args), (sy_call_t *)osf1_sendto }, /* 133 = osf1_sendto */ { AS(shutdown_args), (sy_call_t *)shutdown }, /* 134 = shutdown */ { 0, (sy_call_t *)linux_socketpair }, /* 135 = linux_socketpair */ @@ -164,7 +164,7 @@ { AS(linux_getrlimit_args), (sy_call_t *)linux_getrlimit }, /* 144 = linux_getrlimit */ { AS(linux_setrlimit_args), (sy_call_t *)linux_setrlimit }, /* 145 = linux_setrlimit */ { 0, (sy_call_t *)nosys }, /* 146 = */ - { 0, (sy_call_t *)setsid }, /* 147 = setsid */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid }, /* 147 = setsid */ { 0, (sy_call_t *)linux_quotactl }, /* 148 = linux_quotactl */ { 0, (sy_call_t *)nosys }, /* 149 = */ { AS(getsockname_args), (sy_call_t *)ogetsockname }, /* 150 = getsockname */ @@ -173,7 +173,7 @@ { 0, (sy_call_t *)nosys }, /* 153 = */ { 0, (sy_call_t *)nosys }, /* 154 = */ { 0, (sy_call_t *)nosys }, /* 155 = */ - { AS(osf1_sigaction_args), (sy_call_t *)osf1_sigaction }, /* 156 = osf1_sigaction */ + { SYF_MPSAFE | AS(osf1_sigaction_args), (sy_call_t *)osf1_sigaction }, /* 156 = osf1_sigaction */ { 0, (sy_call_t *)nosys }, /* 157 = */ { 0, (sy_call_t *)nosys }, /* 158 = */ { 0, (sy_call_t *)nosys }, /* 159 = osf_getdirentries */ @@ -250,15 +250,15 @@ { 0, (sy_call_t *)nosys }, /* 230 = */ { 0, (sy_call_t *)nosys }, /* 231 = */ { 0, (sy_call_t *)nosys }, /* 232 = */ - { AS(getpgid_args), (sy_call_t *)getpgid }, /* 233 = getpgid */ - { AS(linux_getsid_args), (sy_call_t *)linux_getsid }, /* 234 = linux_getsid */ + { SYF_MPSAFE | AS(getpgid_args), (sy_call_t *)getpgid }, /* 233 = getpgid */ + { SYF_MPSAFE | AS(linux_getsid_args), (sy_call_t *)linux_getsid }, /* 234 = linux_getsid */ { 0, (sy_call_t *)linux_sigaltstack }, /* 235 = linux_sigaltstack */ { 0, (sy_call_t *)nosys }, /* 236 = */ { 0, (sy_call_t *)nosys }, /* 237 = */ { 0, (sy_call_t *)nosys }, /* 238 = */ { 0, (sy_call_t *)nosys }, /* 239 = */ { 0, (sy_call_t *)nosys }, /* 240 = */ - { AS(osf1_sysinfo_args), (sy_call_t *)osf1_sysinfo }, /* 241 = osf1_sysinfo */ + { SYF_MPSAFE | AS(osf1_sysinfo_args), (sy_call_t *)osf1_sysinfo }, /* 241 = osf1_sysinfo */ { 0, (sy_call_t *)nosys }, /* 242 = */ { 0, (sy_call_t *)nosys }, /* 243 = */ { 0, (sy_call_t *)nosys }, /* 244 = osf_proplist_syscall */ @@ -329,12 +329,12 @@ { 0, (sy_call_t *)linux_get_kernel_syms }, /* 309 = linux_get_kernel_syms */ { AS(linux_syslog_args), (sy_call_t *)linux_syslog }, /* 310 = linux_syslog */ { AS(linux_reboot_args), (sy_call_t *)linux_reboot }, /* 311 = linux_reboot */ - { AS(linux_clone_args), (sy_call_t *)linux_clone }, /* 312 = linux_clone */ + { SYF_MPSAFE | AS(linux_clone_args), (sy_call_t *)linux_clone }, /* 312 = linux_clone */ { AS(linux_uselib_args), (sy_call_t *)linux_uselib }, /* 313 = linux_uselib */ - { AS(mlock_args), (sy_call_t *)mlock }, /* 314 = mlock */ - { AS(munlock_args), (sy_call_t *)munlock }, /* 315 = munlock */ - { AS(mlockall_args), (sy_call_t *)mlockall }, /* 316 = mlockall */ - { 0, (sy_call_t *)munlockall }, /* 317 = munlockall */ + { SYF_MPSAFE | AS(mlock_args), (sy_call_t *)mlock }, /* 314 = mlock */ + { SYF_MPSAFE | AS(munlock_args), (sy_call_t *)munlock }, /* 315 = munlock */ + { SYF_MPSAFE | AS(mlockall_args), (sy_call_t *)mlockall }, /* 316 = mlockall */ + { SYF_MPSAFE | 0, (sy_call_t *)munlockall }, /* 317 = munlockall */ { 0, (sy_call_t *)linux_sysinfo }, /* 318 = linux_sysinfo */ { AS(linux_sysctl_args), (sy_call_t *)linux_sysctl }, /* 319 = linux_sysctl */ { 0, (sy_call_t *)nosys }, /* 320 = sys_idle */ @@ -347,21 +347,21 @@ { AS(linux_ustat_args), (sy_call_t *)linux_ustat }, /* 327 = linux_ustat */ { AS(linux_statfs_args), (sy_call_t *)linux_statfs }, /* 328 = linux_statfs */ { AS(linux_fstatfs_args), (sy_call_t *)linux_fstatfs }, /* 329 = linux_fstatfs */ - { AS(sched_setparam_args), (sy_call_t *)sched_setparam }, /* 330 = sched_setparam */ - { AS(sched_getparam_args), (sy_call_t *)sched_getparam }, /* 331 = sched_getparam */ - { AS(linux_sched_setscheduler_args), (sy_call_t *)linux_sched_setscheduler }, /* 332 = linux_sched_setscheduler */ - { AS(linux_sched_getscheduler_args), (sy_call_t *)linux_sched_getscheduler }, /* 333 = linux_sched_getscheduler */ + { SYF_MPSAFE | AS(sched_setparam_args), (sy_call_t *)sched_setparam }, /* 330 = sched_setparam */ + { SYF_MPSAFE | AS(sched_getparam_args), (sy_call_t *)sched_getparam }, /* 331 = sched_getparam */ + { SYF_MPSAFE | AS(linux_sched_setscheduler_args), (sy_call_t *)linux_sched_setscheduler }, /* 332 = linux_sched_setscheduler */ + { SYF_MPSAFE | AS(linux_sched_getscheduler_args), (sy_call_t *)linux_sched_getscheduler }, /* 333 = linux_sched_getscheduler */ { SYF_MPSAFE | 0, (sy_call_t *)sched_yield }, /* 334 = sched_yield */ - { AS(linux_sched_get_priority_max_args), (sy_call_t *)linux_sched_get_priority_max }, /* 335 = linux_sched_get_priority_max */ - { AS(linux_sched_get_priority_min_args), (sy_call_t *)linux_sched_get_priority_min }, /* 336 = linux_sched_get_priority_min */ + { SYF_MPSAFE | AS(linux_sched_get_priority_max_args), (sy_call_t *)linux_sched_get_priority_max }, /* 335 = linux_sched_get_priority_max */ + { SYF_MPSAFE | AS(linux_sched_get_priority_min_args), (sy_call_t *)linux_sched_get_priority_min }, /* 336 = linux_sched_get_priority_min */ { AS(sched_rr_get_interval_args), (sy_call_t *)sched_rr_get_interval }, /* 337 = sched_rr_get_interval */ { 0, (sy_call_t *)nosys }, /* 338 = sys_afs_syscall */ { AS(linux_newuname_args), (sy_call_t *)linux_newuname }, /* 339 = linux_newuname */ { SYF_MPSAFE | AS(nanosleep_args), (sy_call_t *)nanosleep }, /* 340 = nanosleep */ { AS(linux_mremap_args), (sy_call_t *)linux_mremap }, /* 341 = linux_mremap */ { 0, (sy_call_t *)linux_nfsservctl }, /* 342 = linux_nfsservctl */ - { AS(setresuid_args), (sy_call_t *)setresuid }, /* 343 = setresuid */ - { AS(getresuid_args), (sy_call_t *)getresuid }, /* 344 = getresuid */ + { SYF_MPSAFE | AS(setresuid_args), (sy_call_t *)setresuid }, /* 343 = setresuid */ + { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid }, /* 344 = getresuid */ { 0, (sy_call_t *)linux_pciconfig_read }, /* 345 = linux_pciconfig_read */ { 0, (sy_call_t *)linux_pciconfig_write }, /* 346 = linux_pciconfig_write */ { 0, (sy_call_t *)linux_query_module }, /* 347 = linux_query_module */ @@ -369,27 +369,27 @@ { AS(linux_pread_args), (sy_call_t *)linux_pread }, /* 349 = linux_pread */ { AS(linux_pwrite_args), (sy_call_t *)linux_pwrite }, /* 350 = linux_pwrite */ { 0, (sy_call_t *)linux_rt_sigreturn }, /* 351 = linux_rt_sigreturn */ - { AS(linux_rt_sigaction_args), (sy_call_t *)linux_rt_sigaction }, /* 352 = linux_rt_sigaction */ - { AS(linux_rt_sigprocmask_args), (sy_call_t *)linux_rt_sigprocmask }, /* 353 = linux_rt_sigprocmask */ + { SYF_MPSAFE | AS(linux_rt_sigaction_args), (sy_call_t *)linux_rt_sigaction }, /* 352 = linux_rt_sigaction */ + { SYF_MPSAFE | AS(linux_rt_sigprocmask_args), (sy_call_t *)linux_rt_sigprocmask }, /* 353 = linux_rt_sigprocmask */ { 0, (sy_call_t *)linux_rt_sigpending }, /* 354 = linux_rt_sigpending */ { 0, (sy_call_t *)linux_rt_sigtimedwait }, /* 355 = linux_rt_sigtimedwait */ { 0, (sy_call_t *)linux_rt_sigqueueinfo }, /* 356 = linux_rt_sigqueueinfo */ - { AS(linux_rt_sigsuspend_args), (sy_call_t *)linux_rt_sigsuspend }, /* 357 = linux_rt_sigsuspend */ + { SYF_MPSAFE | AS(linux_rt_sigsuspend_args), (sy_call_t *)linux_rt_sigsuspend }, /* 357 = linux_rt_sigsuspend */ { AS(linux_select_args), (sy_call_t *)linux_select }, /* 358 = linux_select */ - { AS(gettimeofday_args), (sy_call_t *)gettimeofday }, /* 359 = gettimeofday */ + { SYF_MPSAFE | AS(gettimeofday_args), (sy_call_t *)gettimeofday }, /* 359 = gettimeofday */ { SYF_MPSAFE | AS(settimeofday_args), (sy_call_t *)settimeofday }, /* 360 = settimeofday */ - { AS(linux_getitimer_args), (sy_call_t *)linux_getitimer }, /* 361 = linux_getitimer */ - { AS(linux_setitimer_args), (sy_call_t *)linux_setitimer }, /* 362 = linux_setitimer */ + { SYF_MPSAFE | AS(linux_getitimer_args), (sy_call_t *)linux_getitimer }, /* 361 = linux_getitimer */ + { SYF_MPSAFE | AS(linux_setitimer_args), (sy_call_t *)linux_setitimer }, /* 362 = linux_setitimer */ { AS(linux_utimes_args), (sy_call_t *)linux_utimes }, /* 363 = linux_utimes */ - { AS(getrusage_args), (sy_call_t *)getrusage }, /* 364 = getrusage */ + { SYF_MPSAFE | AS(getrusage_args), (sy_call_t *)getrusage }, /* 364 = getrusage */ { AS(linux_wait4_args), (sy_call_t *)linux_wait4 }, /* 365 = linux_wait4 */ { 0, (sy_call_t *)linux_adjtimex }, /* 366 = linux_adjtimex */ { AS(linux_getcwd_args), (sy_call_t *)linux_getcwd }, /* 367 = linux_getcwd */ { 0, (sy_call_t *)linux_capget }, /* 368 = linux_capget */ { 0, (sy_call_t *)linux_capset }, /* 369 = linux_capset */ { 0, (sy_call_t *)linux_sendfile }, /* 370 = linux_sendfile */ - { AS(setresgid_args), (sy_call_t *)setresgid }, /* 371 = setresgid */ - { AS(getresgid_args), (sy_call_t *)getresgid }, /* 372 = getresgid */ + { SYF_MPSAFE | AS(setresgid_args), (sy_call_t *)setresgid }, /* 371 = setresgid */ + { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid }, /* 372 = getresgid */ { 0, (sy_call_t *)nosys }, /* 373 = sys_dipc */ { AS(linux_pivot_root_args), (sy_call_t *)linux_pivot_root }, /* 374 = linux_pivot_root */ { AS(linux_mincore_args), (sy_call_t *)linux_mincore }, /* 375 = linux_mincore */ ==== //depot/projects/netperf/sys/alpha/linux/syscalls.master#2 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.52 2003/02/16 02:31:05 tjr Exp $ + $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.53 2003/11/07 21:09:19 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -40,10 +40,10 @@ 0 UNIMPL LINUX 1 MNOPROTO LINUX { void sys_exit(int rval); } exit sys_exit_args void 2 MSTD LINUX { int linux_fork(void); } -3 NOPROTO LINUX { int read(int fd, char *buf, u_int nbyte); } -4 NOPROTO LINUX { int write(int fd, char *buf, u_int nbyte); } +3 MNOPROTO LINUX { int read(int fd, char *buf, u_int nbyte); } +4 MNOPROTO LINUX { int write(int fd, char *buf, u_int nbyte); } 5 UNIMPL LINUX -6 NOPROTO LINUX { int close(int fd); } +6 MNOPROTO LINUX { int close(int fd); } 7 STD OSF1 { int osf1_wait4(int pid, int *status, int options, \ struct osf1_rusage *rusage); } 8 UNIMPL LINUX @@ -64,10 +64,10 @@ 20 NOPROTO BSD { int getpid(void); } 21 UNIMPL OSF1 osf1_mount 22 STD LINUX { int linux_umount(char *path, l_int flags); } -23 NOPROTO LINUX { int setuid(uid_t uid); } -24 NOPROTO BSD { int getuid(void); } +23 MNOPROTO LINUX { int setuid(uid_t uid); } +24 MNOPROTO BSD { int getuid(void); } 25 UNIMPL LINUX -26 STD LINUX { int linux_ptrace(void); } +26 MSTD LINUX { int linux_ptrace(void); } 27 UNIMPL LINUX 28 UNIMPL LINUX 29 UNIMPL LINUX @@ -78,19 +78,19 @@ 34 UNIMPL LINUX 35 UNIMPL LINUX 36 NOPROTO LINUX { int sync(void); } -37 STD LINUX { int linux_kill(l_int pid, l_int signum); } +37 MSTD LINUX { int linux_kill(l_int pid, l_int signum); } 38 UNIMPL LINUX -39 NOPROTO LINUX { int setpgid(int pid, int pgid); } +39 MNOPROTO LINUX { int setpgid(int pid, int pgid); } 40 UNIMPL LINUX -41 NOPROTO LINUX { int dup(u_int fd); } -42 NOPROTO BSD { int pipe(void); } +41 MNOPROTO LINUX { int dup(u_int fd); } +42 MNOPROTO BSD { int pipe(void); } 43 UNIMPL OSF1 osf_set_program_attributes 44 UNIMPL LINUX 45 STD LINUX { int linux_open(char *path, l_int flags, \ l_int mode); } 46 UNIMPL LINUX -47 NOPROTO BSD { int getgid(void); } -48 STD OSF1 { int osf1_sigprocmask(int how, u_long mask); } +47 MNOPROTO BSD { int getgid(void); } +48 MSTD OSF1 { int osf1_sigprocmask(int how, u_long mask); } 49 UNIMPL LINUX 50 UNIMPL LINUX 51 NOPROTO LINUX { int acct(char *path); } @@ -105,10 +105,10 @@ l_int count); } 59 STD LINUX { int linux_execve(char *path, char **argp, \ char **envp); } -60 NOPROTO LINUX { int umask(int newmask); } +60 MNOPROTO LINUX { int umask(int newmask); } 61 NOPROTO LINUX { int chroot(char *path); } 62 UNIMPL LINUX -63 NOPROTO LINUX { int getpgrp(void); } +63 MNOPROTO LINUX { int getpgrp(void); } 64 STD LINUX { int linux_getpagesize(void); } 65 UNIMPL LINUX 66 MSTD LINUX { int linux_vfork(void); } @@ -129,12 +129,12 @@ 76 STD LINUX { int linux_vhangup(void); } 77 UNIMPL LINUX 78 UNIMPL LINUX -79 STD LINUX { int linux_setgroups(l_int gidsetsize, \ +79 MSTD LINUX { int linux_setgroups(l_int gidsetsize, \ l_gid_t *grouplist); } -80 STD LINUX { int linux_getgroups(l_int gidsetsize, \ +80 MSTD LINUX { int linux_getgroups(l_int gidsetsize, \ l_gid_t *grouplist); } 81 UNIMPL LINUX -82 NODEF LINUX setpgid setpgid setpgid_args int +82 MNODEF LINUX setpgid setpgid setpgid_args int 83 STD OSF1 { int osf1_setitimer(u_int which, \ struct itimerval *itv, \ struct itimerval *oitv); } @@ -145,7 +145,7 @@ 88 MNOPROTO LINUX { int osethostname(char *hostname, u_int len); } \ osethostname sethostname_args int 89 STD LINUX { int linux_getdtablesize(void); } -90 NOPROTO LINUX { int dup2(u_int from, u_int to); } +90 MNOPROTO LINUX { int dup2(u_int from, u_int to); } 91 STD LINUX { int linux_newfstat(l_uint fd, \ struct l_newstat *buf); } 92 STD LINUX { int linux_fcntl(l_uint fd, l_uint cmd, l_ulong arg); } @@ -154,7 +154,7 @@ 94 NOPROTO LINUX { int poll(struct pollfd*, unsigned int nfds, \ long timeout); } 95 NOPROTO LINUX { int fsync(int fd); } -96 NOPROTO LINUX { int setpriority(int which, int who, int prio); } +96 MNOPROTO LINUX { int setpriority(int which, int who, int prio); } 97 STD LINUX { int osf1_socket(int domain, int type, \ int protocol); } 98 STD LINUX { int linux_connect(l_int s, struct l_sockaddr *name, \ @@ -164,7 +164,7 @@ 100 UNIMPL OSF1 osf_getpriority 101 NOPROTO LINUX { int osend(int s, caddr_t buf, int len, int flags); } 102 NOPROTO LINUX { int orecv(int s, caddr_t buf, int len, int flags); } -103 STD LINUX { int osf1_sigreturn(struct osigcontext *sigcntxp); } +103 MSTD LINUX { int osf1_sigreturn(struct osigcontext *sigcntxp); } 104 NOPROTO LINUX { int bind(int s, caddr_t name, int namelen); } 105 NOPROTO LINUX { int setsockopt(int s, int level, int name, \ caddr_t val, int valsize); } @@ -173,12 +173,12 @@ 108 UNIMPL LINUX 109 UNIMPL LINUX 110 UNIMPL LINUX -111 STD LINUX { int osf1_sigsuspend(unsigned long ss); } +111 MSTD LINUX { int osf1_sigsuspend(unsigned long ss); } 112 UNIMPL OSF1 osf_sigstack 113 STD LINUX { int linux_recvmsg(void); } 114 STD LINUX { int linux_sendmsg(void); } 115 UNIMPL LINUX -116 STD OSF1 { int osf1_gettimeofday(struct timeval *tp, \ +116 MSTD OSF1 { int osf1_gettimeofday(struct timeval *tp, \ struct timezone *tzp); } 117 STD OSF1 { int osf1_getrusage(long who, void *rusage); } 118 NOPROTO LINUX { int getsockopt(int s, int level, int name, \ @@ -194,13 +194,13 @@ 125 NOPROTO LINUX { int orecvfrom(int s, caddr_t buf, size_t len, \ int flags, caddr_t from, int *fromlenaddr); } \ recvfrom recvfrom_args int -126 NOPROTO LINUX { int setreuid(int ruid, int euid); } -127 NOPROTO LINUX { int setregid(int rgid, int egid); } +126 MNOPROTO LINUX { int setreuid(int ruid, int euid); } +127 MNOPROTO LINUX { int setregid(int rgid, int egid); } 128 STD LINUX { int linux_rename(char *from, char *to); } 129 STD LINUX { int linux_truncate(char *path, l_ulong length); } 130 NOPROTO LINUX { int oftruncate(int fd, long length); } 131 NOPROTO LINUX { int flock(int fd, int how); } -132 NOPROTO LINUX { int setgid(gid_t gid); } +132 MNOPROTO LINUX { int setgid(gid_t gid); } 133 STD LINUX { int osf1_sendto(int s, caddr_t buf, size_t len, \ int flags, struct sockaddr *to, int tolen); } 134 NOPROTO LINUX { int shutdown(int s, int how); } @@ -218,7 +218,7 @@ 145 STD LINUX { int linux_setrlimit(l_uint resource, \ struct l_rlimit *rlim); } 146 UNIMPL LINUX -147 NOPROTO LINUX { int setsid(void); } +147 MNOPROTO LINUX { int setsid(void); } 148 STD LINUX { int linux_quotactl(void); } 149 UNIMPL LINUX 150 NOPROTO LINUX { int ogetsockname(int fdec, caddr_t asa, int *alen);} \ @@ -228,7 +228,7 @@ 153 UNIMPL LINUX 154 UNIMPL LINUX 155 UNIMPL LINUX -156 STD OSF1 { int osf1_sigaction(int sig, \ +156 MSTD OSF1 { int osf1_sigaction(int sig, \ struct osf1_sigaction *nsa, \ struct osf1_sigaction *osa); } 157 UNIMPL LINUX @@ -318,15 +318,15 @@ 230 UNIMPL LINUX 231 UNIMPL LINUX 232 UNIMPL LINUX -233 NOPROTO LINUX { int getpgid(int pid); } -234 STD LINUX { int linux_getsid(l_pid_t pid); } +233 MNOPROTO LINUX { int getpgid(int pid); } +234 MSTD LINUX { int linux_getsid(l_pid_t pid); } 235 STD LINUX { int linux_sigaltstack(void); } 236 UNIMPL LINUX 237 UNIMPL LINUX 238 UNIMPL LINUX 239 UNIMPL LINUX 240 UNIMPL LINUX -241 STD OSF1 { int osf1_sysinfo(int cmd, char *buf, long count); } +241 MSTD OSF1 { int osf1_sysinfo(int cmd, char *buf, long count); } 242 UNIMPL LINUX 243 UNIMPL LINUX 244 UNIMPL OSF1 osf_proplist_syscall @@ -404,12 +404,12 @@ 310 STD LINUX { int linux_syslog(l_int type, char *buf, l_int len); } 311 STD LINUX { int linux_reboot(l_int magic1, l_int magic2, \ l_uint cmd, void *arg); } -312 STD LINUX { int linux_clone(l_int flags, void *stack); } +312 MSTD LINUX { int linux_clone(l_int flags, void *stack); } 313 STD LINUX { int linux_uselib(char *library); } -314 NOPROTO BSD { int mlock(const void *addr, size_t len); } -315 NOPROTO BSD { int munlock(const void *addr, size_t len); } -316 NOPROTO BSD { int mlockall(int how); } -317 NOPROTO BSD { int munlockall(void); } +314 MNOPROTO BSD { int mlock(const void *addr, size_t len); } +315 MNOPROTO BSD { int munlock(const void *addr, size_t len); } +316 MNOPROTO BSD { int mlockall(int how); } +317 MNOPROTO BSD { int munlockall(void); } 318 STD LINUX { int linux_sysinfo(void); } 319 STD LINUX { int linux_sysctl(struct l___sysctl_args *args); } 320 UNIMPL LINUX sys_idle @@ -424,16 +424,16 @@ struct l_statfs_buf *buf); } 329 STD LINUX { int linux_fstatfs(l_uint fd, \ struct l_statfs_buf *buf); } -330 NOPROTO POSIX { int sched_setparam(pid_t pid, \ +330 MNOPROTO POSIX { int sched_setparam(pid_t pid, \ const struct sched_param *param); } -331 NOPROTO POSIX { int sched_getparam(pid_t pid, \ +331 MNOPROTO POSIX { int sched_getparam(pid_t pid, \ struct sched_param *param); } -332 STD POSIX { int linux_sched_setscheduler(l_pid_t pid, \ +332 MSTD POSIX { int linux_sched_setscheduler(l_pid_t pid, \ l_int policy, struct l_sched_param *param); } -333 STD POSIX { int linux_sched_getscheduler(l_pid_t pid); } +333 MSTD POSIX { int linux_sched_getscheduler(l_pid_t pid); } 334 MNOPROTO POSIX { int sched_yield(void); } -335 STD POSIX { int linux_sched_get_priority_max(l_int policy); } -336 STD POSIX { int linux_sched_get_priority_min (l_int policy); } +335 MSTD POSIX { int linux_sched_get_priority_max(l_int policy); } +336 MSTD POSIX { int linux_sched_get_priority_min (l_int policy); } 337 NOPROTO POSIX { int sched_rr_get_interval (pid_t pid, \ struct timespec *interval); } 338 UNIMPL LINUX sys_afs_syscall @@ -444,8 +444,8 @@ l_ulong new_len, l_ulong flags, \ l_ulong new_addr); } 342 STD LINUX { int linux_nfsservctl(void); } -343 NOPROTO LINUX { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } -344 NOPROTO LINUX { int getresuid(uid_t *ruid, uid_t *euid, \ +343 MNOPROTO LINUX { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } +344 MNOPROTO LINUX { int getresuid(uid_t *ruid, uid_t *euid, \ uid_t *suid); } 345 STD LINUX { int linux_pciconfig_read(void); } 346 STD LINUX { int linux_pciconfig_write(void); } @@ -456,32 +456,32 @@ 350 STD LINUX { int linux_pwrite(l_uint fd, char *buf, \ l_size_t nbyte, l_loff_t offset); } 351 STD LINUX { int linux_rt_sigreturn(void); } -352 STD LINUX { int linux_rt_sigaction(l_int sig, \ +352 MSTD LINUX { int linux_rt_sigaction(l_int sig, \ l_sigaction_t *act, l_sigaction_t *oact, \ l_size_t sigsetsize); } -353 STD LINUX { int linux_rt_sigprocmask(l_int how, \ +353 MSTD LINUX { int linux_rt_sigprocmask(l_int how, \ l_sigset_t *mask, l_sigset_t *omask, \ l_size_t sigsetsize); } 354 STD LINUX { int linux_rt_sigpending(void); } 355 STD LINUX { int linux_rt_sigtimedwait(void); } 356 STD LINUX { int linux_rt_sigqueueinfo(void); } -357 STD LINUX { int linux_rt_sigsuspend(l_sigset_t *newset, \ +357 MSTD LINUX { int linux_rt_sigsuspend(l_sigset_t *newset, \ l_size_t sigsetsize); } 358 STD LINUX { int linux_select(l_int nfds, l_fd_set *readfds, \ l_fd_set *writefds, l_fd_set *exceptfds, \ struct l_timeval *timeout); } -359 NOPROTO LINUX { int gettimeofday(struct timeval *tp, \ +359 MNOPROTO LINUX { int gettimeofday(struct timeval *tp, \ struct timezone *tzp); } 360 MNOPROTO LINUX { int settimeofday(struct timeval *tp, \ struct timezone *tzp); } -361 STD LINUX { int linux_getitimer(l_int which, \ +361 MSTD LINUX { int linux_getitimer(l_int which, \ struct l_itimerval *itv); } -362 STD LINUX { int linux_setitimer(l_int which, \ +362 MSTD LINUX { int linux_setitimer(l_int which, \ struct l_itimerval *itv, \ struct l_itimerval *oitv); } 363 STD LINUX { int linux_utimes(char *fname, \ struct l_timeval *times); } -364 NOPROTO LINUX { int getrusage(int who, struct rusage *rusage); } +364 MNOPROTO LINUX { int getrusage(int who, struct rusage *rusage); } 365 STD LINUX { int linux_wait4(l_pid_t pid, l_uint *status, \ l_int options, struct l_rusage *rusage); } 366 STD LINUX { int linux_adjtimex(void); } @@ -489,8 +489,8 @@ 368 STD LINUX { int linux_capget(void); } 369 STD LINUX { int linux_capset(void); } 370 STD LINUX { int linux_sendfile(void); } -371 NOPROTO LINUX { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } -372 NOPROTO LINUX { int getresgid(gid_t *rgid, gid_t *egid, \ +371 MNOPROTO LINUX { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } +372 MNOPROTO LINUX { int getresgid(gid_t *rgid, gid_t *egid, \ gid_t *sgid); } 373 UNIMPL LINUX sys_dipc 374 STD LINUX { int linux_pivot_root(char *new_root, \ ==== //depot/projects/netperf/sys/alpha/osf1/osf1_proto.h#2 (text+ko) ==== @@ -2,16 +2,20 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.6 2002/03/20 18:58:46 obrien Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.5 2001/09/01 19:36:47 dillon Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.7 2003/11/07 20:56:54 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.6 2003/11/07 20:56:31 jhb Exp */ #ifndef _OSF1_SYSPROTO_H_ #define _OSF1_SYSPROTO_H_ #include +#include +#include +#include +#include -#include +#include struct proc; @@ -360,6 +364,12 @@ #endif /* COMPAT_43 */ + +#ifdef COMPAT_FREEBSD4 + + +#endif /* COMPAT_FREEBSD4 */ + #undef PAD_ #undef PADL_ #undef PADR_ ==== //depot/projects/netperf/sys/alpha/osf1/osf1_syscall.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.5 2001/09/20 05:01:08 peter Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.5 2001/09/01 19:36:47 dillon Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.6 2003/11/07 20:56:54 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.6 2003/11/07 20:56:31 jhb Exp */ #define OSF1_SYS_nosys 0 ==== //depot/projects/netperf/sys/alpha/osf1/osf1_sysent.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.5 2001/09/20 05:01:08 peter Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.5 2001/09/01 19:36:47 dillon Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.6 2003/11/07 20:56:54 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.6 2003/11/07 20:56:31 jhb Exp */ #include "opt_compat.h" @@ -21,10 +21,10 @@ { 0, (sy_call_t *)nosys }, /* 0 = nosys */ { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit }, /* 1 = exit */ { SYF_MPSAFE | 0, (sy_call_t *)fork }, /* 2 = fork */ - { AS(read_args), (sy_call_t *)read }, /* 3 = read */ - { AS(write_args), (sy_call_t *)write }, /* 4 = write */ + { SYF_MPSAFE | AS(read_args), (sy_call_t *)read }, /* 3 = read */ + { SYF_MPSAFE | AS(write_args), (sy_call_t *)write }, /* 4 = write */ { 0, (sy_call_t *)nosys }, /* 5 = old open */ - { AS(close_args), (sy_call_t *)close }, /* 6 = close */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close }, /* 6 = close */ { AS(osf1_wait4_args), (sy_call_t *)osf1_wait4 }, /* 7 = osf1_wait4 */ { 0, (sy_call_t *)nosys }, /* 8 = old creat */ { AS(link_args), (sy_call_t *)link }, /* 9 = link */ @@ -38,11 +38,11 @@ { AS(obreak_args), (sy_call_t *)obreak }, /* 17 = obreak */ { AS(osf1_getfsstat_args), (sy_call_t *)osf1_getfsstat }, /* 18 = osf1_getfsstat */ { AS(osf1_lseek_args), (sy_call_t *)osf1_lseek }, /* 19 = osf1_lseek */ - { 0, (sy_call_t *)getpid }, /* 20 = getpid */ + { SYF_MPSAFE | 0, (sy_call_t *)getpid }, /* 20 = getpid */ { AS(osf1_mount_args), (sy_call_t *)osf1_mount }, /* 21 = osf1_mount */ { AS(osf1_unmount_args), (sy_call_t *)osf1_unmount }, /* 22 = osf1_unmount */ - { AS(osf1_setuid_args), (sy_call_t *)osf1_setuid }, /* 23 = osf1_setuid */ - { 0, (sy_call_t *)getuid }, /* 24 = getuid */ + { SYF_MPSAFE | AS(osf1_setuid_args), (sy_call_t *)osf1_setuid }, /* 23 = osf1_setuid */ + { SYF_MPSAFE | 0, (sy_call_t *)getuid }, /* 24 = getuid */ { 0, (sy_call_t *)nosys }, /* 25 = exec_with_loader */ { 0, (sy_call_t *)nosys }, /* 26 = ptrace */ { 0, (sy_call_t *)nosys }, /* 27 = recvmsg */ @@ -55,22 +55,22 @@ { 0, (sy_call_t *)nosys }, /* 34 = chflags */ { 0, (sy_call_t *)nosys }, /* 35 = fchflags */ { 0, (sy_call_t *)sync }, /* 36 = sync */ - { AS(osf1_kill_args), (sy_call_t *)osf1_kill }, /* 37 = osf1_kill */ + { SYF_MPSAFE | AS(osf1_kill_args), (sy_call_t *)osf1_kill }, /* 37 = osf1_kill */ { 0, (sy_call_t *)nosys }, /* 38 = old stat */ - { AS(setpgid_args), (sy_call_t *)setpgid }, /* 39 = setpgid */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 39 = setpgid */ { 0, (sy_call_t *)nosys }, /* 40 = old lstat */ - { AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ - { 0, (sy_call_t *)pipe }, /* 42 = pipe */ + { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ + { SYF_MPSAFE | 0, (sy_call_t *)pipe }, /* 42 = pipe */ { AS(osf1_set_program_attributes_args), (sy_call_t *)osf1_set_program_attributes }, /* 43 = osf1_set_program_attributes */ { 0, (sy_call_t *)nosys }, /* 44 = profil */ { AS(osf1_open_args), (sy_call_t *)osf1_open }, /* 45 = osf1_open */ { 0, (sy_call_t *)nosys }, /* 46 = obsolete sigaction */ - { 0, (sy_call_t *)getgid }, /* 47 = getgid */ - { AS(osf1_sigprocmask_args), (sy_call_t *)osf1_sigprocmask }, /* 48 = osf1_sigprocmask */ - { AS(getlogin_args), (sy_call_t *)getlogin }, /* 49 = getlogin */ - { AS(setlogin_args), (sy_call_t *)setlogin }, /* 50 = setlogin */ + { SYF_MPSAFE | 0, (sy_call_t *)getgid }, /* 47 = getgid */ + { SYF_MPSAFE | AS(osf1_sigprocmask_args), (sy_call_t *)osf1_sigprocmask }, /* 48 = osf1_sigprocmask */ + { SYF_MPSAFE | AS(getlogin_args), (sy_call_t *)getlogin }, /* 49 = getlogin */ + { SYF_MPSAFE | AS(setlogin_args), (sy_call_t *)setlogin }, /* 50 = setlogin */ { AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */ - { AS(osf1_sigpending_args), (sy_call_t *)osf1_sigpending }, /* 52 = osf1_sigpending */ + { SYF_MPSAFE | AS(osf1_sigpending_args), (sy_call_t *)osf1_sigpending }, /* 52 = osf1_sigpending */ { AS(osf1_classcntl_args), (sy_call_t *)osf1_classcntl }, /* 53 = osf1_classcntl */ { AS(osf1_ioctl_args), (sy_call_t *)osf1_ioctl }, /* 54 = osf1_ioctl */ { AS(osf1_reboot_args), (sy_call_t *)osf1_reboot }, /* 55 = osf1_reboot */ @@ -78,10 +78,10 @@ { AS(symlink_args), (sy_call_t *)symlink }, /* 57 = symlink */ { AS(readlink_args), (sy_call_t *)readlink }, /* 58 = readlink */ { AS(osf1_execve_args), (sy_call_t *)osf1_execve }, /* 59 = osf1_execve */ - { AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ { 0, (sy_call_t *)nosys }, /* 62 = old fstat */ - { 0, (sy_call_t *)getpgrp }, /* 63 = getpgrp */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp }, /* 63 = getpgrp */ { 0, (sy_call_t *)ogetpagesize }, /* 64 = ogetpagesize */ { 0, (sy_call_t *)nosys }, /* 65 = mremap */ { SYF_MPSAFE | 0, (sy_call_t *)vfork }, /* 66 = vfork */ @@ -97,31 +97,31 @@ { 0, (sy_call_t *)nosys }, /* 76 = old vhangup */ { 0, (sy_call_t *)nosys }, /* 77 = kmodcall */ { 0, (sy_call_t *)nosys }, /* 78 = mincore */ - { AS(getgroups_args), (sy_call_t *)getgroups }, /* 79 = getgroups */ - { AS(setgroups_args), (sy_call_t *)setgroups }, /* 80 = setgroups */ + { SYF_MPSAFE | AS(getgroups_args), (sy_call_t *)getgroups }, /* 79 = getgroups */ + { SYF_MPSAFE | AS(setgroups_args), (sy_call_t *)setgroups }, /* 80 = setgroups */ { 0, (sy_call_t *)nosys }, /* 81 = old getpgrp */ - { AS(osf1_setpgrp_args), (sy_call_t *)osf1_setpgrp }, /* 82 = osf1_setpgrp */ + { SYF_MPSAFE | AS(osf1_setpgrp_args), (sy_call_t *)osf1_setpgrp }, /* 82 = osf1_setpgrp */ { AS(osf1_setitimer_args), (sy_call_t *)osf1_setitimer }, /* 83 = osf1_setitimer */ { 0, (sy_call_t *)nosys }, /* 84 = old wait */ { AS(osf1_table_args), (sy_call_t *)osf1_table }, /* 85 = osf1_table */ { AS(osf1_getitimer_args), (sy_call_t *)osf1_getitimer }, /* 86 = osf1_getitimer */ { SYF_MPSAFE | AS(gethostname_args), (sy_call_t *)ogethostname }, /* 87 = ogethostname */ { SYF_MPSAFE | AS(sethostname_args), (sy_call_t *)osethostname }, /* 88 = osethostname */ - { 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ - { AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ + { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(osf1_fstat_args), (sy_call_t *)osf1_fstat }, /* 91 = osf1_fstat */ { AS(osf1_fcntl_args), (sy_call_t *)osf1_fcntl }, /* 92 = osf1_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ - { AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ + { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ { AS(osf1_socket_args), (sy_call_t *)osf1_socket }, /* 97 = osf1_socket */ { AS(connect_args), (sy_call_t *)connect }, /* 98 = connect */ { AS(accept_args), (sy_call_t *)oaccept }, /* 99 = oaccept */ - { AS(getpriority_args), (sy_call_t *)getpriority }, /* 100 = getpriority */ + { SYF_MPSAFE | AS(getpriority_args), (sy_call_t *)getpriority }, /* 100 = getpriority */ { AS(osend_args), (sy_call_t *)osend }, /* 101 = osend */ { AS(orecv_args), (sy_call_t *)orecv }, /* 102 = orecv */ - { AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn }, /* 103 = osf1_sigreturn */ + { SYF_MPSAFE | AS(osf1_sigreturn_args), (sy_call_t *)osf1_sigreturn }, /* 103 = osf1_sigreturn */ { AS(bind_args), (sy_call_t *)bind }, /* 104 = bind */ { AS(setsockopt_args), (sy_call_t *)setsockopt }, /* 105 = setsockopt */ { AS(listen_args), (sy_call_t *)listen }, /* 106 = listen */ @@ -129,8 +129,8 @@ { 0, (sy_call_t *)nosys }, /* 108 = old sigvec */ { 0, (sy_call_t *)nosys }, /* 109 = old sigblock */ { 0, (sy_call_t *)nosys }, /* 110 = old sigsetmask */ - { AS(osf1_sigsuspend_args), (sy_call_t *)osf1_sigsuspend }, /* 111 = osf1_sigsuspend */ - { AS(osf1_osigstack_args), (sy_call_t *)osf1_osigstack }, /* 112 = osf1_osigstack */ + { SYF_MPSAFE | AS(osf1_sigsuspend_args), (sy_call_t *)osf1_sigsuspend }, /* 111 = osf1_sigsuspend */ + { SYF_MPSAFE | AS(osf1_osigstack_args), (sy_call_t *)osf1_osigstack }, /* 112 = osf1_osigstack */ { 0, (sy_call_t *)nosys }, /* 113 = old recvmsg */ { 0, (sy_call_t *)nosys }, /* 114 = old sendmsg */ { 0, (sy_call_t *)nosys }, /* 115 = vtrace */ @@ -144,13 +144,13 @@ { AS(fchown_args), (sy_call_t *)fchown }, /* 123 = fchown */ { AS(fchmod_args), (sy_call_t *)fchmod }, /* 124 = fchmod */ { AS(recvfrom_args), (sy_call_t *)orecvfrom }, /* 125 = orecvfrom */ - { AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ - { AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ + { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ + { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ { AS(rename_args), (sy_call_t *)rename }, /* 128 = rename */ { AS(osf1_truncate_args), (sy_call_t *)osf1_truncate }, /* 129 = osf1_truncate */ { AS(osf1_ftruncate_args), (sy_call_t *)osf1_ftruncate }, /* 130 = osf1_ftruncate */ { AS(flock_args), (sy_call_t *)flock }, /* 131 = flock */ - { AS(osf1_setgid_args), (sy_call_t *)osf1_setgid }, /* 132 = osf1_setgid */ + { SYF_MPSAFE | AS(osf1_setgid_args), (sy_call_t *)osf1_setgid }, /* 132 = osf1_setgid */ { AS(osf1_sendto_args), (sy_call_t *)osf1_sendto }, /* 133 = osf1_sendto */ { AS(shutdown_args), (sy_call_t *)shutdown }, /* 134 = shutdown */ { 0, (sy_call_t *)nosys }, /* 135 = socketpair */ @@ -165,7 +165,7 @@ { AS(osf1_getrlimit_args), (sy_call_t *)osf1_getrlimit }, /* 144 = osf1_getrlimit */ { AS(osf1_setrlimit_args), (sy_call_t *)osf1_setrlimit }, /* 145 = osf1_setrlimit */ { 0, (sy_call_t *)nosys }, /* 146 = old killpg */ - { 0, (sy_call_t *)setsid }, /* 147 = setsid */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid }, /* 147 = setsid */ { 0, (sy_call_t *)nosys }, /* 148 = quotactl */ { SYF_MPSAFE | 0, (sy_call_t *)oquota }, /* 149 = oquota */ { AS(getsockname_args), (sy_call_t *)ogetsockname }, /* 150 = ogetsockname */ @@ -174,7 +174,7 @@ { 0, (sy_call_t *)nosys }, /* 153 = */ { 0, (sy_call_t *)nosys }, /* 154 = */ { 0, (sy_call_t *)nosys }, /* 155 = */ - { AS(osf1_sigaction_args), (sy_call_t *)osf1_sigaction }, /* 156 = osf1_sigaction */ + { SYF_MPSAFE | AS(osf1_sigaction_args), (sy_call_t *)osf1_sigaction }, /* 156 = osf1_sigaction */ { 0, (sy_call_t *)nosys }, /* 157 = */ { 0, (sy_call_t *)nosys }, /* 158 = nfssvc */ { AS(ogetdirentries_args), (sy_call_t *)ogetdirentries }, /* 159 = ogetdirentries */ @@ -218,25 +218,25 @@ { 0, (sy_call_t *)nosys }, /* 197 = */ { 0, (sy_call_t *)nosys }, /* 198 = */ { 0, (sy_call_t *)nosys }, /* 199 = swapon */ - { AS(msgctl_args), (sy_call_t *)msgctl }, /* 200 = msgctl */ - { AS(msgget_args), (sy_call_t *)msgget }, /* 201 = msgget */ - { AS(msgrcv_args), (sy_call_t *)msgrcv }, /* 202 = msgrcv */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Nov 8 17:56:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9346616A4D0; Sat, 8 Nov 2003 17:56:44 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5039D16A4CE for ; Sat, 8 Nov 2003 17:56:44 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B4E3B43FE1 for ; Sat, 8 Nov 2003 17:56:43 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA91uhXJ034244 for ; Sat, 8 Nov 2003 17:56:43 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA91uhtF034241 for perforce@freebsd.org; Sat, 8 Nov 2003 17:56:43 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 17:56:43 -0800 (PST) Message-Id: <200311090156.hA91uhtF034241@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41779 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Nov 2003 01:56:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=41779 Change 41779 by jmallett@jmallett_dalek on 2003/11/08 17:56:16 Print the memory ranges [physical]. XXX bootverbose Affected files ... .. //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#22 edit Differences ... ==== //depot/projects/mips/sys/mips/sgimips/machdep_sgimips.c#22 (text+ko) ==== @@ -153,6 +153,7 @@ availmem += btoc(size); phys_avail[j + 0] = first; phys_avail[j + 1] = last; + printf("ARCBIOS MEM %#x -> %#x\n", first, last); j += 2; break; default: From owner-p4-projects@FreeBSD.ORG Sat Nov 8 17:57:46 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4656616A4D0; Sat, 8 Nov 2003 17:57:46 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2272016A4CE for ; Sat, 8 Nov 2003 17:57:46 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9E3DC43F85 for ; Sat, 8 Nov 2003 17:57:45 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA91vjXJ034266 for ; Sat, 8 Nov 2003 17:57:45 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA91vjnv034263 for perforce@freebsd.org; Sat, 8 Nov 2003 17:57:45 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 17:57:45 -0800 (PST) Message-Id: <200311090157.hA91vjnv034263@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41780 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Nov 2003 01:57:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=41780 Change 41780 by jmallett@jmallett_dalek on 2003/11/08 17:57:08 Enter DDB when possible, don't be backwards about it. Affected files ... .. //depot/projects/mips/sys/mips/mips/trap.c#13 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/trap.c#13 (text+ko) ==== @@ -136,14 +136,17 @@ switch (code) { case T_BREAK: #if DDB + default: kdb_trap(code, tf); break; -#endif +#else default: goto dopanic; +#endif } platform_trap_exit(); return; +#ifndef DDB dopanic: if (panicstr != NULL) { printf("Double panic, resetting...\n"); @@ -151,4 +154,5 @@ } panic("trap"); platform_trap_exit(); +#endif } From owner-p4-projects@FreeBSD.ORG Sat Nov 8 17:58:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 390B616A4D0; Sat, 8 Nov 2003 17:58:48 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1477916A4CE for ; Sat, 8 Nov 2003 17:58:48 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8D66743FBD for ; Sat, 8 Nov 2003 17:58:47 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA91wlXJ034368 for ; Sat, 8 Nov 2003 17:58:47 -0800 (PST) (envelope-from jmallett@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA91wlQH034365 for perforce@freebsd.org; Sat, 8 Nov 2003 17:58:47 -0800 (PST) (envelope-from jmallett@freebsd.org) Date: Sat, 8 Nov 2003 17:58:47 -0800 (PST) Message-Id: <200311090158.hA91wlQH034365@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jmallett@freebsd.org using -f From: Juli Mallett To: Perforce Change Reviews Subject: PERFORCE change 41781 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Nov 2003 01:58:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=41781 Change 41781 by jmallett@jmallett_dalek on 2003/11/08 17:58:25 Add nops, use dmtc0. Also, in the R4600 case, jump from TLBMiss to XTLBMiss. There's other brokenness there, but I just want to document this, in terms of some behaviour, since I've no idea what's going on. The CPU seems really, really funky. Affected files ... .. //depot/projects/mips/sys/mips/mips/exception.S#8 edit Differences ... ==== //depot/projects/mips/sys/mips/mips/exception.S#8 (text+ko) ==== @@ -141,6 +141,10 @@ LEAF(TLBMissVector) .set noat +#if R4600 + j XTLBMissVector + nop +#else dsubu sp, sp, TF_SIZE dla k0, 1f j exception_save_registers @@ -160,6 +164,7 @@ move a0, sp daddu sp, sp, TF_SIZE eret +#endif .set at VEND(TLBMissVector) @@ -194,13 +199,17 @@ /* * Write TLB entry. */ - mtc0 k0, MIPS_COP_0_TLB_LO0 + dmtc0 k0, MIPS_COP_0_TLB_LO0 + nop + nop + dmtc0 k1, MIPS_COP_0_TLB_LO1 nop - mtc0 k1, MIPS_COP_0_TLB_LO1 nop tlbwr nop nop + nop + nop eret 1: j BadPTE nop From owner-p4-projects@FreeBSD.ORG Sat Nov 8 21:52:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 37E5A16A4D0; Sat, 8 Nov 2003 21:52:37 -0800 (PST) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 086A016A4CE for ; Sat, 8 Nov 2003 21:52:37 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3E8B543FB1 for ; Sat, 8 Nov 2003 21:52:36 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hA95qZXJ053267 for ; Sat, 8 Nov 2003 21:52:36 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hA95qZV6053264 for perforce@freebsd.org; Sat, 8 Nov 2003 21:52:35 -0800 (PST) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 8 Nov 2003 21:52:35 -0800 (PST) Message-Id: <200311090552.hA95qZV6053264@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 41787 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Nov 2003 05:52:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=41787 Change 41787 by rwatson@rwatson_paprika on 2003/11/08 21:52:12 Add explicit label arguments to ksem policy entry points so that policy modules can avoid explicit knowledge of the ksem structure for label-only decisions. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#6 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#224 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_lomac/mac_lomac.c#72 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_mls/mac_mls.c#182 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_stub/mac_stub.c#9 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_test/mac_test.c#116 edit .. //depot/projects/trustedbsd/mac/sys/sys/mac_policy.h#200 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#6 (text+ko) ==== @@ -92,8 +92,7 @@ if (!mac_enforce_posix_sem) return (0); - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_close, cred, ksemptr); + MAC_CHECK(check_posix_sem_close, cred, ksemptr, &ksemptr->ks_label); return(error); } @@ -106,8 +105,8 @@ if (!mac_enforce_posix_sem) return (0); - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_destroy, cred, ksemptr); + MAC_CHECK(check_posix_sem_destroy, cred, ksemptr, + &ksemptr->ks_label); return(error); } @@ -120,8 +119,8 @@ if (!mac_enforce_posix_sem) return (0); - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_openexisting, cred, ksemptr); + MAC_CHECK(check_posix_sem_openexisting, cred, ksemptr, + &ksemptr->ks_label); return(error); } @@ -134,8 +133,8 @@ if (!mac_enforce_posix_sem) return (0); - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_getvalue, cred, ksemptr); + MAC_CHECK(check_posix_sem_getvalue, cred, ksemptr, + &ksemptr->ks_label); return(error); } @@ -148,8 +147,7 @@ if (!mac_enforce_posix_sem) return (0); - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_post, cred, ksemptr); + MAC_CHECK(check_posix_sem_post, cred, ksemptr, &ksemptr->ks_label); return(error); } @@ -162,8 +160,7 @@ if (!mac_enforce_posix_sem) return (0); - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_unlink, cred, ksemptr); + MAC_CHECK(check_posix_sem_unlink, cred, ksemptr, &ksemptr->ks_label); return(error); } @@ -176,8 +173,7 @@ if (!mac_enforce_posix_sem) return (0); - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_wait, cred, ksemptr); + MAC_CHECK(check_posix_sem_wait, cred, ksemptr, &ksemptr->ks_label); return(error); } ==== //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#224 (text+ko) ==== @@ -2155,7 +2155,8 @@ } static int -mac_biba_check_posix_sem_write(struct ucred *cred, struct ksem *ksemptr) +mac_biba_check_posix_sem_write(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { struct mac_biba *subj, *obj; @@ -2172,7 +2173,8 @@ } static int -mac_biba_check_posix_sem_rdonly(struct ucred *cred, struct ksem *ksemptr) +mac_biba_check_posix_sem_rdonly(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { struct mac_biba *subj, *obj; ==== //depot/projects/trustedbsd/mac/sys/security/mac_lomac/mac_lomac.c#72 (text+ko) ==== @@ -2277,7 +2277,8 @@ } static int -mac_lomac_check_posix_sem_write(struct ucred *cred, struct ksem *ksemptr) +mac_lomac_check_posix_sem_write(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { struct mac_lomac *subj, *obj; @@ -2285,7 +2286,7 @@ return (0); subj = SLOT(cred->cr_label); - obj = SLOT((&ksemptr->ks_label)); + obj = SLOT(ks_label); if (!mac_lomac_dominate_single(subj, obj)) return (EACCES); @@ -2294,7 +2295,8 @@ } static int -mac_lomac_check_posix_sem_rdonly(struct ucred *cred, struct ksem *ksemptr) +mac_lomac_check_posix_sem_rdonly(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { struct mac_lomac *subj, *obj; @@ -2302,7 +2304,7 @@ return (0); subj = SLOT(cred->cr_label); - obj = SLOT((&ksemptr->ks_label)); + obj = SLOT(ks_label); if (!mac_lomac_dominate_single(obj, subj)) return (maybe_demote(subj, obj, "sem_getvalue", "posix_sem", NULL)); ==== //depot/projects/trustedbsd/mac/sys/security/mac_mls/mac_mls.c#182 (text+ko) ==== @@ -2049,7 +2049,8 @@ } static int -mac_mls_check_posix_sem_write(struct ucred *cred, struct ksem *ksemptr) +mac_mls_check_posix_sem_write(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { struct mac_mls *subj, *obj; @@ -2057,7 +2058,7 @@ return (0); subj = SLOT(cred->cr_label); - obj = SLOT((&ksemptr->ks_label)); + obj = SLOT(ks_label); if (!mac_mls_dominate_single(obj, subj)) return (EACCES); @@ -2066,7 +2067,8 @@ } static int -mac_mls_check_posix_sem_rdonly(struct ucred *cred, struct ksem *ksemptr) +mac_mls_check_posix_sem_rdonly(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { struct mac_mls *subj, *obj; @@ -2074,7 +2076,7 @@ return (0); subj = SLOT(cred->cr_label); - obj = SLOT((&ksemptr->ks_label)); + obj = SLOT(ks_label); if (!mac_mls_dominate_single(subj, obj)) return (EACCES); ==== //depot/projects/trustedbsd/mac/sys/security/mac_stub/mac_stub.c#9 (text+ko) ==== @@ -271,7 +271,8 @@ } static void -stub_create_posix_ksem(struct ucred *cred, struct ksem *ksemptr) +stub_create_posix_ksem(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { } @@ -802,49 +803,56 @@ } static int -stub_check_posix_sem_close(struct ucred *cred, struct ksem *ksemptr) +stub_check_posix_sem_close(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { return (0); } static int -stub_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr) +stub_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { return (0); } static int -stub_check_posix_sem_getvalue(struct ucred *cred, struct ksem *ksemptr) +stub_check_posix_sem_getvalue(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { return (0); } static int -stub_check_posix_sem_openexisting(struct ucred *cred, struct ksem *ksemptr) +stub_check_posix_sem_openexisting(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { return (0); } static int -stub_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr) +stub_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { return (0); } static int -stub_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr) +stub_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { return (0); } static int -stub_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr) +stub_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { return (0); ==== //depot/projects/trustedbsd/mac/sys/security/mac_test/mac_test.c#116 (text+ko) ==== @@ -1611,7 +1611,8 @@ } static int -mac_test_check_posix_ksem(struct ucred *cred, struct ksem *ksemptr) +mac_test_check_posix_ksem(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) { ASSERT_CRED_LABEL(cred->cr_label); ==== //depot/projects/trustedbsd/mac/sys/sys/mac_policy.h#200 (text+ko) ==== @@ -386,19 +386,19 @@ int (*mpo_check_pipe_write)(struct ucred *cred, struct pipe *pipe, struct label *pipelabel); int (*mpo_check_posix_sem_close)(struct ucred *cred, - struct ksem *ksemptr); + struct ksem *ksemptr, struct label *ks_label); int (*mpo_check_posix_sem_destroy)(struct ucred *cred, - struct ksem *ksemptr); + struct ksem *ksemptr, struct label *ks_label); int (*mpo_check_posix_sem_getvalue)(struct ucred *cred, - struct ksem *ksemptr); + struct ksem *ksemptr, struct label *ks_label); int (*mpo_check_posix_sem_openexisting)(struct ucred *cred, - struct ksem *ksemptr); + struct ksem *ksemptr, struct label *ks_label); int (*mpo_check_posix_sem_post)(struct ucred *cred, - struct ksem *ksemptr); + struct ksem *ksemptr, struct label *ks_label); int (*mpo_check_posix_sem_unlink)(struct ucred *cred, - struct ksem *ksemptr); + struct ksem *ksemptr, struct label *ks_label); int (*mpo_check_posix_sem_wait)(struct ucred *cred, - struct ksem *ksemptr); + struct ksem *ksemptr, struct label *ks_label); int (*mpo_check_proc_debug)(struct ucred *cred, struct proc *proc); int (*mpo_check_proc_sched)(struct ucred *cred,