From owner-p4-projects@FreeBSD.ORG Mon Sep 27 03:26:43 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 245C716A4D0; Mon, 27 Sep 2004 03:26:43 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CA49A16A4CE for ; Mon, 27 Sep 2004 03:26:42 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A00B543D45 for ; Mon, 27 Sep 2004 03:26:42 +0000 (GMT) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8R3QgRH060812 for ; Mon, 27 Sep 2004 03:26:42 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8R3QfaP060809 for perforce@freebsd.org; Mon, 27 Sep 2004 03:26:41 GMT (envelope-from julian@freebsd.org) Date: Mon, 27 Sep 2004 03:26:41 GMT Message-Id: <200409270326.i8R3QfaP060809@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Subject: PERFORCE change 62270 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Sep 2004 03:26:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=62270 Change 62270 by julian@julian_ref on 2004/09/27 03:26:04 IFC@62260 Affected files ... .. //depot/projects/nsched/sys/alpha/alpha/db_trace.c#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/bios.c#1 branch .. //depot/projects/nsched/sys/amd64/amd64/db_trace.c#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/machdep.c#10 integrate .. //depot/projects/nsched/sys/amd64/amd64/pmap.c#22 integrate .. //depot/projects/nsched/sys/amd64/conf/GENERIC#11 integrate .. //depot/projects/nsched/sys/amd64/conf/NOTES#5 integrate .. //depot/projects/nsched/sys/amd64/include/db_machdep.h#3 integrate .. //depot/projects/nsched/sys/amd64/include/pc/bios.h#1 branch .. //depot/projects/nsched/sys/arm/arm/bcopyinout.S#2 integrate .. //depot/projects/nsched/sys/arm/arm/busdma_machdep.c#4 integrate .. //depot/projects/nsched/sys/arm/arm/cpufunc.c#3 integrate .. //depot/projects/nsched/sys/arm/arm/db_trace.c#4 integrate .. //depot/projects/nsched/sys/arm/arm/elf_machdep.c#3 integrate .. //depot/projects/nsched/sys/arm/arm/exception.S#3 integrate .. //depot/projects/nsched/sys/arm/arm/genassym.c#2 integrate .. //depot/projects/nsched/sys/arm/arm/identcpu.c#2 integrate .. //depot/projects/nsched/sys/arm/arm/intr.c#3 integrate .. //depot/projects/nsched/sys/arm/arm/irq_dispatch.S#2 integrate .. //depot/projects/nsched/sys/arm/arm/locore.S#3 integrate .. //depot/projects/nsched/sys/arm/arm/machdep.c#4 integrate .. //depot/projects/nsched/sys/arm/arm/nexus_io.c#4 integrate .. //depot/projects/nsched/sys/arm/arm/pmap.c#6 integrate .. //depot/projects/nsched/sys/arm/arm/support.S#3 integrate .. //depot/projects/nsched/sys/arm/arm/swtch.S#2 integrate .. //depot/projects/nsched/sys/arm/arm/sys_machdep.c#3 integrate .. //depot/projects/nsched/sys/arm/arm/trap.c#2 integrate .. //depot/projects/nsched/sys/arm/arm/uio_machdep.c#3 integrate .. //depot/projects/nsched/sys/arm/arm/vm_machdep.c#4 integrate .. //depot/projects/nsched/sys/arm/conf/IQ31244#1 branch .. //depot/projects/nsched/sys/arm/conf/SIMICS#2 integrate .. //depot/projects/nsched/sys/arm/include/asm.h#2 integrate .. //depot/projects/nsched/sys/arm/include/asmacros.h#2 integrate .. //depot/projects/nsched/sys/arm/include/bus.h#4 integrate .. //depot/projects/nsched/sys/arm/include/intr.h#2 integrate .. //depot/projects/nsched/sys/arm/include/md_var.h#2 integrate .. //depot/projects/nsched/sys/arm/include/param.h#3 integrate .. //depot/projects/nsched/sys/arm/include/pcb.h#4 integrate .. //depot/projects/nsched/sys/arm/include/pmap.h#4 integrate .. //depot/projects/nsched/sys/arm/include/profile.h#5 integrate .. //depot/projects/nsched/sys/arm/include/pte.h#2 integrate .. //depot/projects/nsched/sys/arm/include/signal.h#4 integrate .. //depot/projects/nsched/sys/arm/include/sysarch.h#1 branch .. //depot/projects/nsched/sys/arm/include/vmparam.h#3 integrate .. //depot/projects/nsched/sys/arm/sa11x0/assabet_machdep.c#5 integrate .. //depot/projects/nsched/sys/arm/sa11x0/sa11x0.c#4 integrate .. //depot/projects/nsched/sys/arm/sa11x0/sa11x0_io.c#4 integrate .. //depot/projects/nsched/sys/arm/sa11x0/sa11x0_irq.S#2 integrate .. //depot/projects/nsched/sys/arm/sa11x0/sa11x0_irqhandler.c#2 integrate .. //depot/projects/nsched/sys/arm/sa11x0/std.sa11x0#2 integrate .. //depot/projects/nsched/sys/arm/xscale/i80321/files.i80321#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/files.iq31244#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/i80321.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/i80321_intr.h#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/i80321_mcu.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/i80321_pci.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/i80321_space.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/i80321_timer.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/i80321reg.h#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/i80321var.h#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/iq31244_machdep.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/iq80321.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/iq80321reg.h#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/iq80321var.h#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/obio.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/obio_space.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/obiovar.h#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/std.i80321#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/std.iq31244#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/uart_bus_i80321.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/i80321/uart_cpu_i80321.c#1 branch .. //depot/projects/nsched/sys/arm/xscale/xscalereg.h#1 branch .. //depot/projects/nsched/sys/arm/xscale/xscalevar.h#1 branch .. //depot/projects/nsched/sys/boot/common/help.common#3 integrate .. //depot/projects/nsched/sys/boot/efi/libefi/elf_freebsd.c#3 integrate .. //depot/projects/nsched/sys/boot/efi/loader/main.c#3 integrate .. //depot/projects/nsched/sys/boot/forth/loader.conf#7 integrate .. //depot/projects/nsched/sys/boot/i386/libi386/biosdisk.c#3 integrate .. //depot/projects/nsched/sys/boot/ia64/Makefile#2 integrate .. //depot/projects/nsched/sys/boot/ia64/libski/Makefile#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/acpi_stub.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/bootinfo.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/copy.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/delay.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/devicename.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/efi_stub.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/elf_freebsd.c#3 delete .. //depot/projects/nsched/sys/boot/ia64/libski/exit.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/libski.h#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/module.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/pal_stub.S#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/sal_stub.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/skiconsole.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/skifs.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/ssc.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/libski/time.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/ski/Makefile#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/acpi_stub.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/bootinfo.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/conf.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/copy.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/delay.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/devicename.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/efi_stub.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/elf_freebsd.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/exit.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/ldscript.ia64#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/libski.h#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/main.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/pal_stub.S#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/sal_stub.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/skiconsole.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/skifs.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/skiload.cmd#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/ssc.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/start.S#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/time.c#1 branch .. //depot/projects/nsched/sys/boot/ia64/ski/version#1 branch .. //depot/projects/nsched/sys/boot/ia64/skiload/Makefile#2 delete .. //depot/projects/nsched/sys/boot/ia64/skiload/conf.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/skiload/ldscript.ia64#2 delete .. //depot/projects/nsched/sys/boot/ia64/skiload/main.c#2 delete .. //depot/projects/nsched/sys/boot/ia64/skiload/skiload.cmd#2 delete .. //depot/projects/nsched/sys/boot/ia64/skiload/start.S#3 delete .. //depot/projects/nsched/sys/boot/ia64/skiload/version#2 delete .. //depot/projects/nsched/sys/coda/coda_vfsops.c#6 integrate .. //depot/projects/nsched/sys/compat/linux/linux_stats.c#5 integrate .. //depot/projects/nsched/sys/compat/svr4/svr4_misc.c#2 integrate .. //depot/projects/nsched/sys/conf/Makefile.arm#3 integrate .. //depot/projects/nsched/sys/conf/NOTES#21 integrate .. //depot/projects/nsched/sys/conf/files#26 integrate .. //depot/projects/nsched/sys/conf/files.amd64#9 integrate .. //depot/projects/nsched/sys/conf/files.ia64#7 integrate .. //depot/projects/nsched/sys/conf/kern.post.mk#6 integrate .. //depot/projects/nsched/sys/conf/kern.pre.mk#6 integrate .. //depot/projects/nsched/sys/conf/ldscript.arm#2 integrate .. //depot/projects/nsched/sys/conf/options#18 integrate .. //depot/projects/nsched/sys/conf/options.arm#2 integrate .. //depot/projects/nsched/sys/contrib/pf/net/pfvar.h#5 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi.c#12 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pci.c#10 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pci_link.c#9 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pcib_acpi.c#8 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_thermal.c#8 integrate .. //depot/projects/nsched/sys/dev/acpica/acpivar.h#11 integrate .. //depot/projects/nsched/sys/dev/ata/ata-all.c#13 integrate .. //depot/projects/nsched/sys/dev/ata/ata-all.h#6 integrate .. //depot/projects/nsched/sys/dev/ata/ata-disk.c#8 integrate .. //depot/projects/nsched/sys/dev/ata/ata-lowlevel.c#9 integrate .. //depot/projects/nsched/sys/dev/ata/ata-pci.c#5 integrate .. //depot/projects/nsched/sys/dev/ata/ata-queue.c#7 integrate .. //depot/projects/nsched/sys/dev/bge/if_bge.c#7 integrate .. //depot/projects/nsched/sys/dev/bge/if_bgereg.h#4 integrate .. //depot/projects/nsched/sys/dev/cp/if_cp.c#7 integrate .. //depot/projects/nsched/sys/dev/ctau/if_ct.c#9 integrate .. //depot/projects/nsched/sys/dev/cx/if_cx.c#12 integrate .. //depot/projects/nsched/sys/dev/dcons/dcons.c#7 integrate .. //depot/projects/nsched/sys/dev/em/if_em_hw.c#3 integrate .. //depot/projects/nsched/sys/dev/fb/vga.c#5 integrate .. //depot/projects/nsched/sys/dev/fdc/fdc.c#11 integrate .. //depot/projects/nsched/sys/dev/fdc/fdcvar.h#5 integrate .. //depot/projects/nsched/sys/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/nsched/sys/dev/isp/isp_pci.c#4 integrate .. //depot/projects/nsched/sys/dev/mii/brgphy.c#4 integrate .. //depot/projects/nsched/sys/dev/mii/miidevs#3 integrate .. //depot/projects/nsched/sys/dev/pci/pci.c#7 integrate .. //depot/projects/nsched/sys/dev/pdq/pdq.c#2 integrate .. //depot/projects/nsched/sys/dev/sio/sio.c#12 integrate .. //depot/projects/nsched/sys/dev/snp/snp.c#6 integrate .. //depot/projects/nsched/sys/dev/sound/pci/ich.c#5 integrate .. //depot/projects/nsched/sys/dev/syscons/scvgarndr.c#3 integrate .. //depot/projects/nsched/sys/dev/syscons/syscons.c#7 integrate .. //depot/projects/nsched/sys/dev/usb/usb_port.h#3 integrate .. //depot/projects/nsched/sys/fs/devfs/devfs_rule.c#3 integrate .. //depot/projects/nsched/sys/fs/specfs/spec_vnops.c#9 integrate .. //depot/projects/nsched/sys/geom/concat/g_concat.c#9 integrate .. //depot/projects/nsched/sys/geom/geom_dev.c#5 integrate .. //depot/projects/nsched/sys/geom/label/g_label.c#7 integrate .. //depot/projects/nsched/sys/geom/mirror/g_mirror.c#7 integrate .. //depot/projects/nsched/sys/geom/raid3/g_raid3.c#7 integrate .. //depot/projects/nsched/sys/geom/stripe/g_stripe.c#8 integrate .. //depot/projects/nsched/sys/i386/conf/PAE#3 integrate .. //depot/projects/nsched/sys/i386/i386/db_trace.c#5 integrate .. //depot/projects/nsched/sys/i386/i386/mp_machdep.c#9 integrate .. //depot/projects/nsched/sys/i386/i386/mptable.c#6 integrate .. //depot/projects/nsched/sys/i386/i386/pmap.c#24 integrate .. //depot/projects/nsched/sys/ia64/ia32/ia32_trap.c#1 branch .. //depot/projects/nsched/sys/ia64/ia64/db_trace.c#4 integrate .. //depot/projects/nsched/sys/ia64/ia64/exception.S#3 integrate .. //depot/projects/nsched/sys/ia64/ia64/genassym.c#3 integrate .. //depot/projects/nsched/sys/ia64/ia64/locore.S#5 integrate .. //depot/projects/nsched/sys/ia64/ia64/machdep.c#8 integrate .. //depot/projects/nsched/sys/ia64/ia64/pmap.c#13 integrate .. //depot/projects/nsched/sys/ia64/ia64/trap.c#7 integrate .. //depot/projects/nsched/sys/ia64/include/atomic.h#2 integrate .. //depot/projects/nsched/sys/ia64/include/md_var.h#4 integrate .. //depot/projects/nsched/sys/ia64/include/pmap.h#6 integrate .. //depot/projects/nsched/sys/ia64/include/pte.h#3 integrate .. //depot/projects/nsched/sys/isa/syscons_isa.c#3 integrate .. //depot/projects/nsched/sys/isofs/cd9660/cd9660_vfsops.c#7 integrate .. //depot/projects/nsched/sys/isofs/cd9660/cd9660_vnops.c#4 integrate .. //depot/projects/nsched/sys/kern/imgact_elf.c#9 integrate .. //depot/projects/nsched/sys/kern/kern_conf.c#10 integrate .. //depot/projects/nsched/sys/kern/kern_exec.c#12 integrate .. //depot/projects/nsched/sys/kern/kern_exit.c#19 integrate .. //depot/projects/nsched/sys/kern/kern_kse.c#30 integrate .. //depot/projects/nsched/sys/kern/kern_ktr.c#3 integrate .. //depot/projects/nsched/sys/kern/kern_mbuf.c#3 integrate .. //depot/projects/nsched/sys/kern/kern_physio.c#4 integrate .. //depot/projects/nsched/sys/kern/kern_resource.c#8 integrate .. //depot/projects/nsched/sys/kern/kern_thread.c#40 integrate .. //depot/projects/nsched/sys/kern/subr_kdb.c#5 integrate .. //depot/projects/nsched/sys/kern/subr_trap.c#6 integrate .. //depot/projects/nsched/sys/kern/tty.c#10 integrate .. //depot/projects/nsched/sys/kern/tty_cons.c#7 integrate .. //depot/projects/nsched/sys/kern/tty_pty.c#10 integrate .. //depot/projects/nsched/sys/kern/vfs_aio.c#6 integrate .. //depot/projects/nsched/sys/kern/vfs_bio.c#10 integrate .. //depot/projects/nsched/sys/kern/vfs_default.c#5 integrate .. //depot/projects/nsched/sys/kern/vfs_mount.c#9 integrate .. //depot/projects/nsched/sys/kern/vfs_subr.c#13 integrate .. //depot/projects/nsched/sys/kern/vfs_vnops.c#7 integrate .. //depot/projects/nsched/sys/modules/Makefile#13 integrate .. //depot/projects/nsched/sys/net/if.c#14 integrate .. //depot/projects/nsched/sys/net/if_arcsubr.c#6 integrate .. //depot/projects/nsched/sys/net/pfil.c#2 integrate .. //depot/projects/nsched/sys/netinet/ip_input.c#11 integrate .. //depot/projects/nsched/sys/netinet6/ip6_fw.c#4 integrate .. //depot/projects/nsched/sys/netipsec/key.c#5 integrate .. //depot/projects/nsched/sys/netipsec/keydb.h#2 integrate .. //depot/projects/nsched/sys/pc98/pc98/sio.c#12 integrate .. //depot/projects/nsched/sys/pci/if_xl.c#10 integrate .. //depot/projects/nsched/sys/pci/viapm.c#2 integrate .. //depot/projects/nsched/sys/powerpc/powermac/uninorth.c#5 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/db_trace.c#4 integrate .. //depot/projects/nsched/sys/rpc/rpcclnt.h#3 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/db_trace.c#4 integrate .. //depot/projects/nsched/sys/sys/conf.h#11 integrate .. //depot/projects/nsched/sys/sys/proc.h#35 integrate .. //depot/projects/nsched/sys/sys/resource.h#4 integrate .. //depot/projects/nsched/sys/sys/syscallsubr.h#3 integrate .. //depot/projects/nsched/sys/ufs/ffs/ffs_vfsops.c#8 integrate .. //depot/projects/nsched/sys/vm/device_pager.c#6 integrate .. //depot/projects/nsched/sys/vm/swap_pager.c#8 integrate .. //depot/projects/nsched/sys/vm/vm_mmap.c#7 integrate Differences ... ==== //depot/projects/nsched/sys/alpha/alpha/db_trace.c#4 (text+ko) ==== @@ -42,7 +42,7 @@ #include /* RCS ID & Copyright macro defns */ /*__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.9 2000/12/13 03:16:36 mycroft Exp $");*/ -__FBSDID("$FreeBSD: src/sys/alpha/alpha/db_trace.c,v 1.20 2004/07/21 05:07:08 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/db_trace.c,v 1.21 2004/09/20 19:05:31 jhb Exp $"); #include #include @@ -213,14 +213,16 @@ db_expr_t diff; db_addr_t symval; u_long last_ipl, tfps; - int i; + int i, quit; if (count == -1) count = 1024; last_ipl = ~0L; tf = NULL; - while (count--) { + quit = 0; + db_setup_paging(db_simple_pager, &quit, DB_LINES_PER_PAGE); + while (count-- && !quit) { sym = db_search_symbol(pc, DB_STGY_ANY, &diff); if (sym == DB_SYM_NULL) return (ENOENT); ==== //depot/projects/nsched/sys/amd64/amd64/db_trace.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.62 2004/07/21 05:07:08 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.63 2004/09/20 19:05:31 jhb Exp $"); #include #include @@ -373,14 +373,16 @@ long *argp; db_expr_t offset; c_db_sym_t sym; - int narg; + int narg, quit; boolean_t first; if (count == -1) count = 1024; first = TRUE; - while (count--) { + quit = 0; + db_setup_paging(db_simple_pager, &quit, DB_LINES_PER_PAGE); + while (count-- && !quit) { sym = db_search_symbol(pc, DB_STGY_ANY, &offset); db_symbol_values(sym, &name, NULL); ==== //depot/projects/nsched/sys/amd64/amd64/machdep.c#10 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.620 2004/09/05 02:09:52 julian Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.621 2004/09/24 01:11:11 peter Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -111,6 +111,7 @@ #include #include #include +#include #include #include #ifdef PERFMON @@ -798,12 +799,6 @@ #define PHYSMAP_SIZE (2 * 8) -struct bios_smap { - u_int64_t base; - u_int64_t length; - u_int32_t type; -} __packed; - u_int basemem; /* ==== //depot/projects/nsched/sys/amd64/amd64/pmap.c#22 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.501 2004/09/19 21:20:01 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.502 2004/09/22 05:01:48 alc Exp $"); /* * Manages physical address maps. @@ -1014,13 +1014,12 @@ pdppg = PHYS_TO_VM_PAGE(*pmap_pml4e(pmap, va) & PG_FRAME); pmap_unwire_pte_hold(pmap, va, pdppg); } - if (pmap_is_current(pmap)) { - /* - * Do an invltlb to make the invalidated mapping - * take effect immediately. - */ - pmap_invalidate_page(pmap, pteva); - } + + /* + * Do an invltlb to make the invalidated mapping + * take effect immediately. + */ + pmap_invalidate_page(pmap, pteva); vm_page_free_zero(m); atomic_subtract_int(&cnt.v_wire_count, 1); ==== //depot/projects/nsched/sys/amd64/conf/GENERIC#11 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.424 2004/09/10 20:57:46 wpaul Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.425 2004/09/22 00:44:13 peter Exp $ machine amd64 cpu HAMMER @@ -98,6 +98,7 @@ device ahd # AHA39320/29320 and onboard AIC79xx devices device amd # AMD 53C974 (Tekram DC-390(T)) device isp # Qlogic family +#device ispfw # Firmware for QLogic HBAs- normally a module device mpt # LSI-Logic MPT-Fusion #device ncr # NCR/Symbios Logic device sym # NCR/Symbios Logic (newer chipsets + those of `ncr') ==== //depot/projects/nsched/sys/amd64/conf/NOTES#5 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.19 2004/08/27 21:29:20 arved Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.20 2004/09/22 01:04:54 peter Exp $ # # @@ -217,7 +217,7 @@ # for AGP r128 and radeon cards. device mgadrm -device "r128drm" +device r128drm device radeondrm device sisdrm device tdfxdrm @@ -365,20 +365,20 @@ # ifpi2 driver for AVM Fritz!Card PCI version 2 # # AVM Fritz!Card PCI version 2 -#XXX#device "ifpi2" +#XXX#device ifpi2 # #--------------------------------------------------------------------------- # iwic driver for Winbond W6692 chipset # # ASUSCOM P-IN100-ST-D (and other Winbond W6692 based cards) -#XXX#device iwic +#XXX#device iwic # #--------------------------------------------------------------------------- # itjc driver for Siemens ISAC / TJNet Tiger300/320 chipset # # Traverse Technologies NETjet-S # Teles PCI-TJ -#XXX#device itjc +#XXX#device itjc # #--------------------------------------------------------------------------- # iavc driver (AVM active cards, needs i4bcapi driver!) @@ -389,34 +389,38 @@ # ISDN Protocol Stack - mandatory for all hardware drivers # # Q.921 / layer 2 - i4b passive cards D channel handling -#XXX#device "i4bq921" +#XXX#device i4bq921 # # Q.931 / layer 3 - i4b passive cards D channel handling -#XXX#device "i4bq931" +#XXX#device i4bq931 # # layer 4 - i4b common passive and active card handling -#XXX#device "i4b" +#XXX#device i4b # #--------------------------------------------------------------------------- # ISDN devices - mandatory for all hardware drivers # # userland driver to do ISDN tracing (for passive cards only) -#XXX#device "i4btrc" 4 +#XXX#device i4btrc +#XXX#options NI4BTRC=4 # # userland driver to control the whole thing -#XXX#device "i4bctl" +#XXX#device i4bctl # #--------------------------------------------------------------------------- # ISDN devices - optional # # userland driver for access to raw B channel -#XXX#device "i4brbch" 4 +#XXX#device i4brbch +#XXX#options NI4BRBCH=4 # # userland driver for telephony -#XXX#device "i4btel" 2 +#XXX#device i4btel +#XXX#options NI4BTEL=2 # # network driver for IP over raw HDLC ISDN -#XXX#device "i4bipr" 4 +#XXX#device i4bipr +#XXX#options NI4BIPR=4 # enable VJ header compression detection for ipr i/f options IPR_VJ # enable logging of the first n IP packets to isdnd (n=32 here) @@ -424,10 +428,15 @@ # # network driver for sync PPP over ISDN; requires an equivalent # number of sppp device to be configured -#XXX#device "i4bisppp" 4 +#XXX#device i4bisppp +#XXX#options NI4BISPPP=4 # # B-channel interface to the netgraph subsystem -#XXX#device "i4bing" 2 +#XXX#device i4bing +#XXX#options NI4BING=2 +# +# CAPI driver needed for active ISDN cards (see iavc driver above) +#XXX#device i4bcapi # #--------------------------------------------------------------------------- ==== //depot/projects/nsched/sys/amd64/include/db_machdep.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * any improvements or extensions that they make and grant Carnegie Mellon * the rights to redistribute these changes. * - * $FreeBSD: src/sys/amd64/include/db_machdep.h,v 1.20 2004/07/10 23:47:18 marcel Exp $ + * $FreeBSD: src/sys/amd64/include/db_machdep.h,v 1.21 2004/09/22 01:27:06 peter Exp $ */ #ifndef _MACHINE_DB_MACHDEP_H_ @@ -41,9 +41,17 @@ #define BKPT_SIZE (1) /* size of breakpoint inst */ #define BKPT_SET(inst) (BKPT_INST) -#define BKPT_SKIP kdb_frame->tf_rip += 1 +#define BKPT_SKIP \ +do { \ + kdb_frame->tf_rip += 1; \ + kdb_thrctx->pcb_rip += 1; \ +} while(0) -#define FIXUP_PC_AFTER_BREAK kdb_frame->tf_rip -= 1; +#define FIXUP_PC_AFTER_BREAK \ +do { \ + kdb_frame->tf_rip -= 1; \ + kdb_thrctx->pcb_rip -= 1; \ +} while(0); #define db_clear_single_step kdb_cpu_clear_singlestep #define db_set_single_step kdb_cpu_set_singlestep ==== //depot/projects/nsched/sys/arm/arm/bcopyinout.S#2 (text+ko) ==== @@ -40,9 +40,9 @@ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/bcopyinout.S,v 1.1 2004/05/14 11:46:42 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/bcopyinout.S,v 1.2 2004/09/23 21:56:36 cognet Exp $"); #ifdef __XSCALE__ -#include "bcopyinout_xscale.S" +#include #else .text ==== //depot/projects/nsched/sys/arm/arm/busdma_machdep.c#4 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.3 2004/09/08 04:54:18 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.4 2004/09/23 21:57:47 cognet Exp $"); /* * MacPPC bus dma support routines @@ -79,19 +79,18 @@ */ struct arm32_dma_range *ranges; int _nranges; - }; -struct arm_seglist { - bus_dma_segment_t seg; - SLIST_ENTRY(arm_seglist) next; -}; - -#define MAX_SEGS 512 +#define DMAMAP_LINEAR 0x1 +#define DMAMAP_MBUF 0x2 +#define DMAMAP_UIO 0x4 +#define DMAMAP_TYPE_MASK (DMAMAP_LINEAR|DMAMAP_MBUF|DMAMAP_UIO) +#define DMAMAP_COHERENT 0x8 struct bus_dmamap { - bus_dma_tag_t dmat; - int flags; - SLIST_HEAD(, arm_seglist) seglist; + bus_dma_tag_t dmat; + int flags; + void *buffer; + int len; }; /* @@ -103,6 +102,7 @@ bus_dmamap_t map, void *buf, bus_size_t buflen, struct thread *td, int flags, vm_offset_t *lastaddrp, int *segp, int first); + static __inline struct arm32_dma_range * _bus_dma_inrange(struct arm32_dma_range *ranges, int nranges, bus_addr_t curaddr) @@ -161,6 +161,8 @@ /* * Allocate a device specific dma_tag. */ +#define SEG_NB 1024 + int bus_dma_tag_create(bus_dma_tag_t parent, bus_size_t alignment, bus_size_t boundary, bus_addr_t lowaddr, @@ -171,7 +173,6 @@ { bus_dma_tag_t newtag; int error = 0; - /* Return a NULL tag on failure */ *dmat = NULL; @@ -193,6 +194,7 @@ newtag->ref_count = 1; /* Count ourself */ newtag->map_count = 0; newtag->ranges = bus_dma_get_range(); + newtag->_nranges = bus_dma_get_range_nb(); if (lockfunc != NULL) { newtag->lockfunc = lockfunc; newtag->lockfuncarg = lockfuncarg; @@ -200,7 +202,6 @@ newtag->lockfunc = dflt_lock; newtag->lockfuncarg = NULL; } - /* * Take into account any restrictions imposed by our parent tag */ @@ -257,34 +258,6 @@ return (0); } -static void -arm_dmamap_freesegs(bus_dmamap_t map) -{ - struct arm_seglist *seg = SLIST_FIRST(&map->seglist); - - while (seg) { - struct arm_seglist *next; - - next = SLIST_NEXT(seg, next); - SLIST_REMOVE_HEAD(&map->seglist, next); - free(seg, M_DEVBUF); - seg = next; - } -} - -static int -arm_dmamap_addseg(bus_dmamap_t map, vm_offset_t addr, vm_size_t size) -{ - struct arm_seglist *seg = malloc(sizeof(*seg), M_DEVBUF, M_NOWAIT); - - if (!seg) - return (ENOMEM); - seg->seg.ds_addr = addr; - seg->seg.ds_len = size; - SLIST_INSERT_HEAD(&map->seglist, seg, next); - return (0); -} - /* * Allocate a handle for mapping from kva/uva/physical * address space into bus device space. @@ -297,8 +270,9 @@ newmap = malloc(sizeof(*newmap), M_DEVBUF, M_NOWAIT | M_ZERO); if (newmap == NULL) return (ENOMEM); - SLIST_INIT(&newmap->seglist); *mapp = newmap; + newmap->dmat = dmat; + newmap->flags = 0; dmat->map_count++; return (0); @@ -311,7 +285,7 @@ int bus_dmamap_destroy(bus_dma_tag_t dmat, bus_dmamap_t map) { - arm_dmamap_freesegs(map); + free(map, M_DEVBUF); dmat->map_count--; return (0); @@ -326,7 +300,7 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int flags, bus_dmamap_t *mapp) { - bus_dmamap_t newmap; + bus_dmamap_t newmap = NULL; int mflags; @@ -337,11 +311,16 @@ if (flags & BUS_DMA_ZERO) mflags |= M_ZERO; - newmap = malloc(sizeof(*newmap), M_DEVBUF, M_NOWAIT | M_ZERO); - if (newmap == NULL) - return (ENOMEM); - SLIST_INIT(&newmap->seglist); - *mapp = newmap; + if (!*mapp) { + newmap = malloc(sizeof(*newmap), M_DEVBUF, M_NOWAIT | M_ZERO); + if (newmap == NULL) + return (ENOMEM); + dmat->map_count++; + newmap->flags = 0; + *mapp = newmap; + newmap->dmat = dmat; + } + if (dmat->maxsize <= PAGE_SIZE) { *vaddr = malloc(dmat->maxsize, M_DEVBUF, mflags); } else { @@ -354,13 +333,12 @@ 0ul, dmat->lowaddr, dmat->alignment? dmat->alignment : 1ul, dmat->boundary); } - - if (*vaddr == NULL) { + if (*vaddr == NULL && newmap != NULL) { free(newmap, M_DEVBUF); + dmat->map_count--; *mapp = NULL; return (ENOMEM); } - return (0); } @@ -371,14 +349,12 @@ void bus_dmamem_free(bus_dma_tag_t dmat, void *vaddr, bus_dmamap_t map) { - if (map != NULL) - panic("bus_dmamem_free: Invalid map freed\n"); if (dmat->maxsize <= PAGE_SIZE) free(vaddr, M_DEVBUF); else { contigfree(vaddr, dmat->maxsize, M_DEVBUF); } - arm_dmamap_freesegs(map); + dmat->map_count--; free(map, M_DEVBUF); } @@ -398,10 +374,17 @@ bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; #endif + map->flags &= ~DMAMAP_TYPE_MASK; + map->flags |= DMAMAP_LINEAR|DMAMAP_COHERENT; + map->buffer = buf; + map->len = buflen; error = bus_dmamap_load_buffer(dmat, dm_segments, map, buf, buflen, NULL, flags, &lastaddr, &nsegs, 1); - (*callback)(callback_arg, dm_segments, nsegs, error); + if (error) + (*callback)(callback_arg, NULL, 0, error); + else + (*callback)(callback_arg, dm_segments, nsegs + 1, error); return (0); } @@ -428,7 +411,6 @@ pt_entry_t pte; pt_entry_t *ptep; - if (td != NULL) pmap = vmspace_pmap(td->td_proc->p_vmspace); else @@ -451,7 +433,7 @@ (vaddr & L1_S_OFFSET); if (*pde & L1_S_CACHE_MASK) { map->flags &= - ~ARM32_DMAMAP_COHERENT; + ~DMAMAP_COHERENT; } } else { pte = *ptep; @@ -463,22 +445,37 @@ (vaddr & L2_L_OFFSET); if (pte & L2_L_CACHE_MASK) { map->flags &= - ~ARM32_DMAMAP_COHERENT; + ~DMAMAP_COHERENT; + } } else { curaddr = (pte & L2_S_FRAME) | (vaddr & L2_S_OFFSET); if (pte & L2_S_CACHE_MASK) { map->flags &= - ~ARM32_DMAMAP_COHERENT; + ~DMAMAP_COHERENT; } } } } else { curaddr = pmap_extract(pmap, vaddr); - map->flags &= ~ARM32_DMAMAP_COHERENT; + map->flags &= ~DMAMAP_COHERENT; } + if (dmat->ranges) { + struct arm32_dma_range *dr; + + dr = _bus_dma_inrange(dmat->ranges, dmat->_nranges, + curaddr); + if (dr == NULL) + return (EINVAL); + /* + * In a valid DMA range. Translate the physical + * memory address to an address in the DMA window. + */ + curaddr = (curaddr - dr->dr_sysbase) + dr->dr_busbase; + + } /* * Compute the segment size, and adjust counts. */ @@ -499,11 +496,6 @@ * Insert chunk into a segment, coalescing with * the previous segment if possible. */ - error = arm_dmamap_addseg(map, - (vm_offset_t)curaddr, sgsize); - if (error) - break; - if (first) { segs[seg].ds_addr = curaddr; segs[seg].ds_len = sgsize; @@ -512,8 +504,11 @@ if (curaddr == lastaddr && (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && (dmat->boundary == 0 || - (segs[seg].ds_addr & bmask) == (curaddr & bmask))) + (segs[seg].ds_addr & bmask) == + (curaddr & bmask))) { segs[seg].ds_len += sgsize; + goto segdone; + } else { if (++seg >= dmat->nsegments) break; @@ -522,6 +517,9 @@ } } + if (error) + break; +segdone: lastaddr = curaddr + sgsize; vaddr += sgsize; buflen -= sgsize; @@ -555,6 +553,9 @@ M_ASSERTPKTHDR(m0); + map->flags &= ~DMAMAP_TYPE_MASK; + map->flags |= DMAMAP_MBUF | DMAMAP_COHERENT; + map->buffer = m0; if (m0->m_pkthdr.len <= dmat->maxsize) { int first = 1; vm_offset_t lastaddr = 0; @@ -578,7 +579,7 @@ */ (*callback)(callback_arg, dm_segments, 0, 0, error); } else { - (*callback)(callback_arg, dm_segments, nsegs+1, + (*callback)(callback_arg, dm_segments, nsegs + 1, m0->m_pkthdr.len, error); } return (error); @@ -605,6 +606,9 @@ resid = uio->uio_resid; iov = uio->uio_iov; + map->flags &= ~DMAMAP_TYPE_MASK; + map->flags |= DMAMAP_UIO|DMAMAP_COHERENT; + map->buffer = uio; if (uio->uio_segflg == UIO_USERSPACE) { td = uio->uio_td; @@ -647,30 +651,73 @@ } /* - * Release the mapping held by map. A no-op on PowerPC. + * Release the mapping held by map. */ void bus_dmamap_unload(bus_dma_tag_t dmat, bus_dmamap_t map) { - arm_dmamap_freesegs(map); + map->flags &= ~DMAMAP_TYPE_MASK; return; } +static void +bus_dmamap_sync_buf(void *buf, int len, bus_dmasync_op_t op) +{ + + if (op & BUS_DMASYNC_POSTREAD || + op == (BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE)) { + cpu_dcache_wbinv_range((vm_offset_t)buf, len); + return; + } + if (op & BUS_DMASYNC_PREWRITE) + cpu_dcache_wb_range((vm_offset_t)buf, len); + if (op & BUS_DMASYNC_PREREAD) { + if ((((vm_offset_t)buf | len) & arm_dcache_align_mask) == 0) + cpu_dcache_inv_range((vm_offset_t)buf, len); + else + cpu_dcache_wbinv_range((vm_offset_t)buf, len); + } +} + void bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) { - struct arm_seglist *seg = SLIST_FIRST(&map->seglist); - - if (op != BUS_DMASYNC_PREREAD && op != BUS_DMASYNC_PREWRITE) + struct mbuf *m; + struct uio *uio; + int resid; + struct iovec *iov; + + if (op == BUS_DMASYNC_POSTREAD) return; - /* Skip cache frobbing if mapping was COHERENT. */ - if (map->flags & ARM32_DMAMAP_COHERENT) { - /* Drain the write buffer. */ - cpu_drain_writebuf(); + if (map->flags & DMAMAP_COHERENT) return; + switch(map->flags & DMAMAP_TYPE_MASK) { + case DMAMAP_LINEAR: + bus_dmamap_sync_buf(map->buffer, map->len, op); + break; + case DMAMAP_MBUF: + m = map->buffer; + while (m) { + bus_dmamap_sync_buf(m->m_data, m->m_len, op); + m = m->m_next; + } + break; + case DMAMAP_UIO: + uio = map->buffer; + iov = uio->uio_iov; + resid = uio->uio_resid; + for (int i = 0; i < uio->uio_iovcnt && resid != 0; i++) { + bus_size_t minlen = resid < iov[i].iov_len ? resid : + iov[i].iov_len; + if (minlen > 0) { + bus_dmamap_sync_buf(iov[i].iov_base, minlen, + op); + resid -= minlen; + } + } + break; + default: + break; } - while (seg) { - cpu_dcache_wbinv_range(seg->seg.ds_addr, seg->seg.ds_len); - seg = SLIST_NEXT(seg, next); - } + cpu_drain_writebuf(); } ==== //depot/projects/nsched/sys/arm/arm/cpufunc.c#3 (text+ko) ==== @@ -45,7 +45,7 @@ * Created : 30/01/97 */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc.c,v 1.2 2004/07/20 22:39:24 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc.c,v 1.3 2004/09/23 21:59:43 cognet Exp $"); #include @@ -67,18 +67,18 @@ #include >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Sep 27 03:27:45 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CB02B16A4D0; Mon, 27 Sep 2004 03:27:44 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8CCA616A4CE for ; Mon, 27 Sep 2004 03:27:44 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 773E243D1D for ; Mon, 27 Sep 2004 03:27:44 +0000 (GMT) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8R3Rijs060847 for ; Mon, 27 Sep 2004 03:27:44 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8R3RiAp060844 for perforce@freebsd.org; Mon, 27 Sep 2004 03:27:44 GMT (envelope-from julian@freebsd.org) Date: Mon, 27 Sep 2004 03:27:44 GMT Message-Id: <200409270327.i8R3RiAp060844@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Subject: PERFORCE change 62271 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Sep 2004 03:27:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=62271 Change 62271 by julian@julian_ref on 2004/09/27 03:26:53 IFC Affected files ... .. //depot/projects/nsched/sys/geom/mirror/g_mirror.c#8 integrate .. //depot/projects/nsched/sys/geom/mirror/g_mirror.h#2 integrate .. //depot/projects/nsched/sys/ia64/ia32/ia32_trap.c#2 integrate Differences ... ==== //depot/projects/nsched/sys/geom/mirror/g_mirror.c#8 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/mirror/g_mirror.c,v 1.29 2004/09/26 20:30:15 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/mirror/g_mirror.c,v 1.30 2004/09/26 20:41:07 pjd Exp $"); #include #include @@ -392,6 +392,7 @@ disk->d_sync.ds_consumer = NULL; disk->d_sync.ds_offset = md->md_sync_offset; disk->d_sync.ds_offset_done = md->md_sync_offset; + disk->d_sync.ds_resync = -1; disk->d_sync.ds_syncid = md->md_syncid; if (errorp != NULL) *errorp = 0; @@ -952,6 +953,9 @@ return; } case BIO_WRITE: + { + struct g_mirror_disk_sync *sync; + if (bp->bio_error != 0) { G_MIRROR_LOGREQ(0, bp, "Synchronization request failed (error=%d).", @@ -964,17 +968,20 @@ return; } G_MIRROR_LOGREQ(3, bp, "Synchronization request finished."); - disk->d_sync.ds_offset_done = bp->bio_offset + bp->bio_length; + sync = &disk->d_sync; + sync->ds_offset_done = bp->bio_offset + bp->bio_length; g_destroy_bio(bp); - if (disk->d_sync.ds_offset_done == sc->sc_provider->mediasize) { + if (sync->ds_resync != -1) + break; + if (sync->ds_offset_done == sc->sc_provider->mediasize) { /* * Disk up-to-date, activate it. */ g_mirror_event_send(disk, G_MIRROR_DISK_STATE_ACTIVE, G_MIRROR_EVENT_DONTWAIT); return; - } else if ((disk->d_sync.ds_offset_done % - (G_MIRROR_SYNC_BLOCK_SIZE * 100)) == 0) { + } else if (sync->ds_offset_done % + (G_MIRROR_SYNC_BLOCK_SIZE * 100) == 0) { /* * Update offset_done on every 100 blocks. * XXX: This should be configurable. @@ -984,6 +991,7 @@ g_topology_unlock(); } return; + } default: KASSERT(1 == 0, ("Invalid command here: %u (device=%s)", bp->bio_cmd, sc->sc_name)); @@ -1205,6 +1213,7 @@ case BIO_DELETE: { struct g_mirror_disk *disk; + struct g_mirror_disk_sync *sync; struct bio_queue_head queue; struct g_consumer *cp; struct bio *cbp; @@ -1215,12 +1224,21 @@ */ bioq_init(&queue); LIST_FOREACH(disk, &sc->sc_disks, d_next) { + sync = &disk->d_sync; switch (disk->d_state) { case G_MIRROR_DISK_STATE_ACTIVE: break; case G_MIRROR_DISK_STATE_SYNCHRONIZING: - if (bp->bio_offset >= disk->d_sync.ds_offset) + if (bp->bio_offset >= sync->ds_offset) continue; + else if (bp->bio_offset + bp->bio_length > + sync->ds_offset_done && + (bp->bio_offset < sync->ds_resync || + sync->ds_resync != -1)) { + sync->ds_resync = bp->bio_offset - + (bp->bio_offset % + G_MIRROR_SYNC_BLOCK_SIZE); + } break; default: continue; @@ -1330,6 +1348,7 @@ { struct g_mirror_softc *sc; struct g_mirror_disk *disk; + struct g_mirror_disk_sync *sync; struct g_mirror_event *ep; struct bio *bp; u_int nreqs; @@ -1411,13 +1430,17 @@ G_MIRROR_DISK_STATE_SYNCHRONIZING) { continue; } - if (disk->d_sync.ds_offset >= + sync = &disk->d_sync; + if (sync->ds_offset >= sc->sc_provider->mediasize) { continue; } - if (disk->d_sync.ds_offset > - disk->d_sync.ds_offset_done) { + if (sync->ds_offset > sync->ds_offset_done) continue; + if (sync->ds_resync != -1) { + sync->ds_offset = sync->ds_resync; + sync->ds_offset_done = sync->ds_resync; + sync->ds_resync = -1; } g_mirror_sync_one(disk); } ==== //depot/projects/nsched/sys/geom/mirror/g_mirror.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/geom/mirror/g_mirror.h,v 1.8 2004/08/11 23:41:53 pjd Exp $ + * $FreeBSD: src/sys/geom/mirror/g_mirror.h,v 1.9 2004/09/26 20:42:35 pjd Exp $ */ #ifndef _G_MIRROR_H_ @@ -97,6 +97,7 @@ off_t ds_offset; /* Offset of next request to send. */ off_t ds_offset_done; /* Offset of already synchronized region. */ + off_t ds_resync; /* Resynchronize from this offset. */ u_int ds_syncid; /* Disk's synchronization ID. */ u_char *ds_data; }; ==== //depot/projects/nsched/sys/ia64/ia32/ia32_trap.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/ia64/ia32/ia32_trap.c,v 1.2 2004/09/26 00:38:56 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/ia64/ia32/ia32_trap.c,v 1.3 2004/09/26 20:39:56 marcel Exp $"); #include #include @@ -45,6 +45,10 @@ #include #include +#ifdef WITNESS +extern char *syscallnames[]; +#endif + static void ia32_syscall(struct trapframe *tf) { From owner-p4-projects@FreeBSD.ORG Tue Sep 28 23:12:53 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A4BD316A4D0; Tue, 28 Sep 2004 23:12:52 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 58EA916A4CE for ; Tue, 28 Sep 2004 23:12:52 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2F2D443D45 for ; Tue, 28 Sep 2004 23:12:52 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8SNCqxI019025 for ; Tue, 28 Sep 2004 23:12:52 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8SNClvM019022 for perforce@freebsd.org; Tue, 28 Sep 2004 23:12:47 GMT (envelope-from peter@freebsd.org) Date: Tue, 28 Sep 2004 23:12:47 GMT Message-Id: <200409282312.i8SNClvM019022@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 62362 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Sep 2004 23:12:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=62362 Change 62362 by peter@peter_daintree on 2004/09/28 23:11:52 IFC @62361 Affected files ... .. //depot/projects/hammer/Makefile.inc1#61 integrate .. //depot/projects/hammer/UPDATING#57 integrate .. //depot/projects/hammer/bin/mkdir/mkdir.c#4 integrate .. //depot/projects/hammer/bin/sh/exec.c#5 integrate .. //depot/projects/hammer/bin/sh/var.c#6 integrate .. //depot/projects/hammer/contrib/bind/CHANGES#6 delete .. //depot/projects/hammer/contrib/bind/DNSSEC#2 delete .. //depot/projects/hammer/contrib/bind/FREEBSD-Upgrade#3 delete .. //depot/projects/hammer/contrib/bind/FREEBSD-Xlist#2 delete .. //depot/projects/hammer/contrib/bind/INSTALL#2 delete .. //depot/projects/hammer/contrib/bind/LICENSE#2 delete .. //depot/projects/hammer/contrib/bind/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/README#5 delete .. //depot/projects/hammer/contrib/bind/SUPPORT#2 delete .. //depot/projects/hammer/contrib/bind/TODO#2 delete .. //depot/projects/hammer/contrib/bind/Version#5 delete .. //depot/projects/hammer/contrib/bind/bin/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/addr/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/addr/addr.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/dig/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/dig/dig.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/dnskeygen/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/dnskeygen/dnskeygen.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/dnsquery/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/dnsquery/dnsquery.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/host/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/host/host.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/irpd/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/irpd/irpd.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/irpd/irs-irpd.conf#2 delete .. //depot/projects/hammer/contrib/bind/bin/irpd/version.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/mkservdb/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/mkservdb/mkservdb.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named-bootconf/Grot/named-bootconf.pl#2 delete .. //depot/projects/hammer/contrib/bind/bin/named-bootconf/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/named-bootconf/named-bootconf.sh#2 delete .. //depot/projects/hammer/contrib/bind/bin/named-bootconf/test.boot#2 delete .. //depot/projects/hammer/contrib/bind/bin/named-xfer/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/named-xfer/named-xfer.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_defs.h#5 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_dump.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_func.h#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_glob.h#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_glue.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_ixfr.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_load.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_lookup.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_save.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_sec.c#5 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_tsig.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/db_update.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/named.conf#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/named.h#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_config.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_ctl.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_defs.h#5 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_forw.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_func.h#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_glob.h#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_glue.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_init.c#4 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_ixfr.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_lexer.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_lexer.h#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_main.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_maint.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_ncache.c#5 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_notify.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_parser.y#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_parseutil.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_parseutil.h#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_req.c#5 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_resp.c#6 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_signal.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_sort.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_stats.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_udp.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_update.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/named/ns_xfr.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/pathtemplate.h#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/test/127.0.0.zone#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/test/localhost.zone#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/test/named.conf#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/test/root.hint#2 delete .. //depot/projects/hammer/contrib/bind/bin/named/version.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/ndc/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/ndc/ndc.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/commands.l#3 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/debug.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/getinfo.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/list.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/main.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/nslookup.help#2 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/pathnames.h#2 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/res.h#2 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/send.c#3 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/skip.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/nslookup/subr.c#2 delete .. //depot/projects/hammer/contrib/bind/bin/nsupdate/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/bin/nsupdate/nsupdate.c#3 delete .. //depot/projects/hammer/contrib/bind/doc/html/acl.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/address_list.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/comments.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/config.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/controls.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/docdef.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/example.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/include.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/index.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/key.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/logging.html#3 delete .. //depot/projects/hammer/contrib/bind/doc/html/master.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/options.html#4 delete .. //depot/projects/hammer/contrib/bind/doc/html/server.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/trusted-keys.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/html/zone.html#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/dig.1#3 delete .. //depot/projects/hammer/contrib/bind/doc/man/dnskeygen.1#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/dnsquery.1#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/getaddrinfo.3#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/gethostbyname.3#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/getipnodebyname.3#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/getnameinfo.3#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/getnetent.3#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/hesiod.3#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/host.1#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/hostname.7#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/inet_cidr.3#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/irs.conf.5#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/mailaddr.7#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/mkdep.1#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/named-bootconf.8#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/named-xfer.8#3 delete .. //depot/projects/hammer/contrib/bind/doc/man/named.8#3 delete .. //depot/projects/hammer/contrib/bind/doc/man/named.conf.5#4 delete .. //depot/projects/hammer/contrib/bind/doc/man/ndc.8#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/nslookup.8#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/nsupdate.8#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/resolver.3#4 delete .. //depot/projects/hammer/contrib/bind/doc/man/resolver.5#2 delete .. //depot/projects/hammer/contrib/bind/doc/man/tsig.3#2 delete .. //depot/projects/hammer/contrib/bind/doc/misc/DynamicUpdate#2 delete .. //depot/projects/hammer/contrib/bind/doc/misc/FAQ.1of2#2 delete .. //depot/projects/hammer/contrib/bind/doc/misc/FAQ.2of2#2 delete .. //depot/projects/hammer/contrib/bind/doc/misc/rfc2317-notes.txt#2 delete .. //depot/projects/hammer/contrib/bind/doc/misc/style.txt#2 delete .. //depot/projects/hammer/contrib/bind/include/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/include/arpa/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/include/arpa/inet.h#2 delete .. //depot/projects/hammer/contrib/bind/include/arpa/nameser.h#3 delete .. //depot/projects/hammer/contrib/bind/include/arpa/nameser_compat.h#3 delete .. //depot/projects/hammer/contrib/bind/include/fd_setsize.h#2 delete .. //depot/projects/hammer/contrib/bind/include/hesiod.h#3 delete .. //depot/projects/hammer/contrib/bind/include/irp.h#3 delete .. //depot/projects/hammer/contrib/bind/include/irs.h#3 delete .. //depot/projects/hammer/contrib/bind/include/isc/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/include/isc/assertions.h#2 delete .. //depot/projects/hammer/contrib/bind/include/isc/ctl.h#3 delete .. //depot/projects/hammer/contrib/bind/include/isc/dst.h#3 delete .. //depot/projects/hammer/contrib/bind/include/isc/eventlib.h#3 delete .. //depot/projects/hammer/contrib/bind/include/isc/heap.h#2 delete .. //depot/projects/hammer/contrib/bind/include/isc/irpmarshall.h#3 delete .. //depot/projects/hammer/contrib/bind/include/isc/list.h#2 delete .. //depot/projects/hammer/contrib/bind/include/isc/logging.h#3 delete .. //depot/projects/hammer/contrib/bind/include/isc/memcluster.h#2 delete .. //depot/projects/hammer/contrib/bind/include/isc/misc.h#3 delete .. //depot/projects/hammer/contrib/bind/include/isc/tree.h#3 delete .. //depot/projects/hammer/contrib/bind/include/netdb.h#2 delete .. //depot/projects/hammer/contrib/bind/include/netgroup.h#3 delete .. //depot/projects/hammer/contrib/bind/include/res_update.h#2 delete .. //depot/projects/hammer/contrib/bind/include/resolv.h#3 delete .. //depot/projects/hammer/contrib/bind/lib/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/README#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/bsafe_link.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/dst/cylink_link.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/dst/dst_api.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/dst/dst_internal.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/eay_dss_link.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/hmac_link.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/dst/md5.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/md5_dgst.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/md5_locl.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/prandom.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/rsaref_link.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/dst/support.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_addr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_cidr_ntop.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_cidr_pton.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_data.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_lnaof.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_makeaddr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_net_ntop.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_net_pton.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_neta.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_netof.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_network.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_ntoa.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_ntop.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/inet_pton.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/inet/nsap_addr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/Makefile.BSD#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/README#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/dns.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/dns_gr.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/dns_ho.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/dns_nw.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/dns_p.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/dns_pr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/dns_pw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/dns_sv.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gai_strerror.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen_gr.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen_ho.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen_ng.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen_nw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen_p.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen_pr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen_pw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gen_sv.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getaddrinfo.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getgrent.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getgrent_r.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gethostent.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/gethostent_r.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getnameinfo.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getnetent.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getnetent_r.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getnetgrent.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getnetgrent_r.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getprotoent.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getprotoent_r.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getpwent.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getpwent_r.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getservent.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/getservent_r.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/hesiod.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/hesiod_p.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp_gr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp_ho.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp_ng.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp_nw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp_p.h#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp_pr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp_pw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irp_sv.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irpmarshall.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irs_data.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irs_data.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/irs_p.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl_gr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl_ho.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl_ng.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl_nw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl_p.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl_pr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl_pw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/lcl_sv.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis_gr.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis_ho.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis_ng.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis_nw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis_p.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis_pr.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis_pw.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nis_sv.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/nul_ng.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/pathnames.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/irs/util.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/assertions.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/assertions.mdoc#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/base64.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/bitncmp.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/bitncmp.mdoc#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ctl_clnt.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ctl_p.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ctl_p.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ctl_srvr.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ev_connects.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ev_files.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ev_streams.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ev_timers.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/isc/ev_waits.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/isc/eventlib.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/isc/eventlib.mdoc#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/eventlib_p.h#3 delete .. //depot/projects/hammer/contrib/bind/lib/isc/heap.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/heap.mdoc#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/hex.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/logging.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/isc/logging.mdoc#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/logging_p.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/memcluster.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/memcluster.mdoc#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/movefile.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/tree.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/isc/tree.mdoc#2 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_date.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_name.c#5 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_netint.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_parse.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_print.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_samedomain.c#5 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_sign.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_ttl.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/nameser/ns_verify.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/herror.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_comp.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_data.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_debug.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_debug.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_findzonecut.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_init.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_mkquery.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_mkupdate.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_mkupdate.h#2 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_private.h#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_query.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_send.c#3 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_sendsigned.c#2 delete .. //depot/projects/hammer/contrib/bind/lib/resolv/res_update.c#3 delete .. //depot/projects/hammer/contrib/bind/port/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/port/README#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/Makefile.set#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/bin/probe_ipv6#3 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/include/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/include/port_after.h#4 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/include/port_before.h#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/include/prand_conf.h#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/include/sys/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/include/sys/bitypes.h#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/noop.c#2 delete .. //depot/projects/hammer/contrib/bind/port/freebsd/probe#2 delete .. //depot/projects/hammer/contrib/bind/port/prand_conf/Makefile#2 delete .. //depot/projects/hammer/contrib/bind/port/prand_conf/README#2 delete .. //depot/projects/hammer/contrib/bind/port/prand_conf/prand_conf.c#2 delete .. //depot/projects/hammer/contrib/bind/port/settings#2 delete .. //depot/projects/hammer/contrib/bind/port/systype#2 delete .. //depot/projects/hammer/contrib/bind/tests/irs_testclient.c#2 delete .. //depot/projects/hammer/contrib/bind/tests/irs_testirpd.c#2 delete .. //depot/projects/hammer/contrib/bind/tests/irs_testserver.c#2 delete .. //depot/projects/hammer/contrib/bind/tests/test_cidr.c#2 delete .. //depot/projects/hammer/contrib/bind/tests/test_getaddr.c#2 delete .. //depot/projects/hammer/contrib/bind9/FREEBSD-Upgrade#2 integrate .. //depot/projects/hammer/contrib/libbegemot/rpoll.c#1 branch .. //depot/projects/hammer/contrib/libbegemot/rpoll.h#1 branch .. //depot/projects/hammer/contrib/libbegemot/rpoll.man#1 branch .. //depot/projects/hammer/contrib/ngatm/sscop/common.c#3 integrate .. //depot/projects/hammer/contrib/ngatm/sscop/common.h#3 integrate .. //depot/projects/hammer/contrib/ngatm/sscop/sscop_main.c#3 integrate .. //depot/projects/hammer/contrib/pf/man/pf.4#4 integrate .. //depot/projects/hammer/etc/Makefile#27 integrate .. //depot/projects/hammer/etc/defaults/rc.conf#35 integrate .. //depot/projects/hammer/etc/etc.arm/ttys#2 integrate .. //depot/projects/hammer/etc/mtree/BIND.chroot.dist#1 branch .. //depot/projects/hammer/etc/mtree/BIND.include.dist#1 branch .. //depot/projects/hammer/etc/mtree/BSD.include.dist#27 integrate .. //depot/projects/hammer/etc/mtree/BSD.root.dist#13 integrate .. //depot/projects/hammer/etc/mtree/BSD.usr.dist#29 integrate .. //depot/projects/hammer/etc/mtree/BSD.var.dist#6 integrate .. //depot/projects/hammer/etc/mtree/Makefile#2 integrate .. //depot/projects/hammer/etc/namedb/make-localhost#2 integrate .. //depot/projects/hammer/etc/namedb/named.conf#4 integrate .. //depot/projects/hammer/etc/rc.d/named#7 integrate .. //depot/projects/hammer/gnu/usr.bin/cvs/cvsbug/Makefile#4 integrate .. //depot/projects/hammer/gnu/usr.bin/cvs/lib/Makefile#5 integrate .. //depot/projects/hammer/include/Makefile#31 integrate .. //depot/projects/hammer/lib/Makefile#43 integrate .. //depot/projects/hammer/lib/bind/bind/Makefile#3 integrate .. //depot/projects/hammer/lib/bind/bind9/Makefile#3 integrate .. //depot/projects/hammer/lib/bind/config.mk#3 integrate .. //depot/projects/hammer/lib/bind/dns/Makefile#3 integrate .. //depot/projects/hammer/lib/bind/isc/Makefile#3 integrate .. //depot/projects/hammer/lib/bind/isccc/Makefile#3 integrate .. //depot/projects/hammer/lib/bind/isccfg/Makefile#3 integrate .. //depot/projects/hammer/lib/bind/lwres/Makefile#3 integrate .. //depot/projects/hammer/lib/libbegemot/Makefile#1 branch .. //depot/projects/hammer/lib/libc/gen/isnan.c#2 integrate .. //depot/projects/hammer/lib/libpthread/arch/arm/arm/pthread_md.c#2 integrate .. //depot/projects/hammer/lib/libpthread/arch/arm/include/pthread_md.h#4 integrate .. //depot/projects/hammer/lib/libpthread/pthread.map#11 integrate .. //depot/projects/hammer/lib/libpthread/thread/Makefile.inc#12 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_execve.c#1 branch .. //depot/projects/hammer/lib/libpthread/thread/thr_kern.c#32 integrate .. //depot/projects/hammer/lib/libutil/humanize_number.3#4 integrate .. //depot/projects/hammer/lib/libutil/humanize_number.c#2 integrate .. //depot/projects/hammer/libexec/ftpd/ftpd.c#16 integrate .. //depot/projects/hammer/libexec/rtld-elf/arm/reloc.c#3 integrate .. //depot/projects/hammer/libexec/rtld-elf/arm/rtld_start.S#3 integrate .. //depot/projects/hammer/release/Makefile#62 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#63 integrate .. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#14 integrate .. //depot/projects/hammer/release/scripts/print-cdrom-packages.sh#22 integrate .. //depot/projects/hammer/sbin/geom/class/stripe/geom_stripe.c#8 integrate .. //depot/projects/hammer/sbin/geom/class/stripe/gstripe.8#7 integrate .. //depot/projects/hammer/sbin/init/init.c#7 integrate .. //depot/projects/hammer/share/doc/Makefile#3 integrate .. //depot/projects/hammer/share/doc/bind9/Makefile#1 branch .. //depot/projects/hammer/share/examples/etc/make.conf#24 integrate .. //depot/projects/hammer/share/examples/isdn/i4brunppp/Makefile#2 integrate .. //depot/projects/hammer/share/man/man4/gif.4#4 integrate .. //depot/projects/hammer/share/man/man4/re.4#9 integrate .. //depot/projects/hammer/share/man/man4/ulpt.4#4 integrate .. //depot/projects/hammer/share/man/man4/urio.4#4 integrate .. //depot/projects/hammer/share/man/man5/make.conf.5#24 integrate .. //depot/projects/hammer/share/man/man9/Makefile#40 integrate .. //depot/projects/hammer/share/man/man9/kthread.9#4 integrate .. //depot/projects/hammer/share/man/man9/vm_map.9#5 integrate .. //depot/projects/hammer/share/man/man9/vm_map_entry_resize_free.9#1 branch .. //depot/projects/hammer/share/man/man9/vm_map_findspace.9#3 integrate .. //depot/projects/hammer/share/mk/bsd.libnames.mk#23 integrate .. //depot/projects/hammer/share/monetdef/es_ES.ISO8859-1.src#2 integrate .. //depot/projects/hammer/sys/arm/arm/fusu.S#2 integrate .. //depot/projects/hammer/sys/arm/arm/locore.S#4 integrate .. //depot/projects/hammer/sys/arm/arm/pmap.c#9 integrate .. //depot/projects/hammer/sys/arm/arm/swtch.S#3 integrate .. //depot/projects/hammer/sys/boot/common/help.common#8 integrate .. //depot/projects/hammer/sys/boot/forth/loader.conf#15 integrate .. //depot/projects/hammer/sys/boot/ia64/Makefile#2 integrate .. //depot/projects/hammer/sys/boot/ia64/libski/Makefile#5 delete .. //depot/projects/hammer/sys/boot/ia64/libski/acpi_stub.c#4 delete .. //depot/projects/hammer/sys/boot/ia64/libski/bootinfo.c#4 delete .. //depot/projects/hammer/sys/boot/ia64/libski/copy.c#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/delay.c#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/devicename.c#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/efi_stub.c#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/elf_freebsd.c#7 delete .. //depot/projects/hammer/sys/boot/ia64/libski/exit.c#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/libski.h#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/module.c#4 delete .. //depot/projects/hammer/sys/boot/ia64/libski/pal_stub.S#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/sal_stub.c#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/skiconsole.c#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/skifs.c#3 delete .. //depot/projects/hammer/sys/boot/ia64/libski/ssc.c#4 delete .. //depot/projects/hammer/sys/boot/ia64/libski/time.c#4 delete .. //depot/projects/hammer/sys/boot/ia64/ski/Makefile#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/acpi_stub.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/bootinfo.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/conf.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/copy.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/delay.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/devicename.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/efi_stub.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/elf_freebsd.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/exit.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/ldscript.ia64#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/libski.h#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/main.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/pal_stub.S#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/sal_stub.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/skiconsole.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/skifs.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/skiload.cmd#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/ssc.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/start.S#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/time.c#2 integrate .. //depot/projects/hammer/sys/boot/ia64/ski/version#2 integrate .. //depot/projects/hammer/sys/boot/ia64/skiload/Makefile#6 delete .. //depot/projects/hammer/sys/boot/ia64/skiload/conf.c#4 delete .. //depot/projects/hammer/sys/boot/ia64/skiload/ldscript.ia64#3 delete .. //depot/projects/hammer/sys/boot/ia64/skiload/main.c#5 delete .. //depot/projects/hammer/sys/boot/ia64/skiload/skiload.cmd#2 delete .. //depot/projects/hammer/sys/boot/ia64/skiload/start.S#3 delete .. //depot/projects/hammer/sys/boot/ia64/skiload/version#2 delete .. //depot/projects/hammer/sys/compat/linux/linux_stats.c#14 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_misc.c#14 integrate .. //depot/projects/hammer/sys/conf/files.amd64#57 integrate .. //depot/projects/hammer/sys/conf/files.ia64#23 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_pci_link.c#23 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.c#37 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.h#21 integrate .. //depot/projects/hammer/sys/dev/ata/ata-disk.c#23 integrate .. //depot/projects/hammer/sys/dev/ata/ata-lowlevel.c#21 integrate .. //depot/projects/hammer/sys/dev/ata/ata-pci.c#25 integrate .. //depot/projects/hammer/sys/dev/ata/ata-queue.c#17 integrate .. //depot/projects/hammer/sys/dev/bge/if_bge.c#35 integrate .. //depot/projects/hammer/sys/dev/bge/if_bgereg.h#18 integrate .. //depot/projects/hammer/sys/dev/dcons/dcons.c#9 integrate .. //depot/projects/hammer/sys/dev/fdc/fdc.c#18 integrate .. //depot/projects/hammer/sys/dev/mii/brgphy.c#15 integrate .. //depot/projects/hammer/sys/dev/mii/miidevs#9 integrate .. //depot/projects/hammer/sys/dev/musycc/musycc.c#9 integrate .. //depot/projects/hammer/sys/dev/re/if_re.c#20 integrate .. //depot/projects/hammer/sys/dev/snp/snp.c#13 integrate .. //depot/projects/hammer/sys/dev/sound/pci/ich.c#16 integrate .. //depot/projects/hammer/sys/dev/usb/ucom.c#18 integrate .. //depot/projects/hammer/sys/dev/usb/ucomvar.h#5 integrate .. //depot/projects/hammer/sys/dev/usb/ugen.c#19 integrate .. //depot/projects/hammer/sys/dev/usb/usb_port.h#11 integrate .. //depot/projects/hammer/sys/fs/devfs/devfs_rule.c#7 integrate .. //depot/projects/hammer/sys/fs/specfs/spec_vnops.c#26 integrate .. //depot/projects/hammer/sys/geom/geom_dev.c#26 integrate .. //depot/projects/hammer/sys/geom/geom_io.c#27 integrate .. //depot/projects/hammer/sys/geom/mirror/g_mirror.c#8 integrate .. //depot/projects/hammer/sys/geom/mirror/g_mirror.h#2 integrate .. //depot/projects/hammer/sys/geom/raid3/g_raid3.c#7 integrate .. //depot/projects/hammer/sys/geom/raid3/g_raid3.h#3 integrate .. //depot/projects/hammer/sys/gnu/ext2fs/ext2_extern.h#4 integrate .. //depot/projects/hammer/sys/gnu/ext2fs/ext2_readwrite.c#5 integrate .. //depot/projects/hammer/sys/gnu/ext2fs/ext2_vfsops.c#19 integrate .. //depot/projects/hammer/sys/gnu/ext2fs/ext2_vnops.c#13 integrate .. //depot/projects/hammer/sys/i386/i386/mptable.c#14 integrate .. //depot/projects/hammer/sys/ia64/ia32/ia32_trap.c#1 branch .. //depot/projects/hammer/sys/ia64/ia64/exception.S#7 integrate .. //depot/projects/hammer/sys/ia64/ia64/genassym.c#8 integrate .. //depot/projects/hammer/sys/ia64/ia64/trap.c#29 integrate .. //depot/projects/hammer/sys/ia64/include/md_var.h#10 integrate .. //depot/projects/hammer/sys/isofs/cd9660/cd9660_vfsops.c#18 integrate .. //depot/projects/hammer/sys/kern/kern_conf.c#22 integrate .. //depot/projects/hammer/sys/kern/kern_exit.c#36 integrate .. //depot/projects/hammer/sys/kern/kern_thread.c#66 integrate .. //depot/projects/hammer/sys/kern/subr_kdb.c#6 integrate .. //depot/projects/hammer/sys/kern/tty.c#26 integrate .. //depot/projects/hammer/sys/kern/tty_cons.c#17 integrate .. //depot/projects/hammer/sys/kern/uipc_mbuf.c#21 integrate .. //depot/projects/hammer/sys/kern/vfs_bio.c#40 integrate .. //depot/projects/hammer/sys/kern/vfs_cluster.c#17 integrate .. //depot/projects/hammer/sys/kern/vfs_default.c#23 integrate .. //depot/projects/hammer/sys/kern/vfs_mount.c#35 integrate .. //depot/projects/hammer/sys/kern/vfs_subr.c#54 integrate .. //depot/projects/hammer/sys/kern/vfs_vnops.c#22 integrate .. //depot/projects/hammer/sys/modules/mem/Makefile#2 integrate .. //depot/projects/hammer/sys/netinet/ip_input.c#42 integrate .. //depot/projects/hammer/sys/netipsec/key.c#10 integrate .. //depot/projects/hammer/sys/nfs4client/nfs4_vnops.c#8 integrate .. //depot/projects/hammer/sys/nfsclient/nfs.h#13 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_subs.c#16 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_vnops.c#23 integrate .. //depot/projects/hammer/sys/nfsclient/nfsnode.h#7 integrate .. //depot/projects/hammer/sys/pci/if_rlreg.h#14 integrate .. //depot/projects/hammer/sys/pci/if_xl.c#44 integrate .. //depot/projects/hammer/sys/powerpc/powermac/uninorth.c#8 integrate .. //depot/projects/hammer/sys/powerpc/powermac/uninorthvar.h#3 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/mp_machdep.c#13 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/rwindow.c#3 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/vm_machdep.c#17 integrate .. //depot/projects/hammer/sys/sys/buf.h#14 integrate .. //depot/projects/hammer/sys/sys/conf.h#19 integrate .. //depot/projects/hammer/sys/sys/mbuf.h#31 integrate .. //depot/projects/hammer/sys/sys/syscallsubr.h#9 integrate .. //depot/projects/hammer/sys/sys/tty.h#17 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_extern.h#6 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_vfsops.c#28 integrate .. //depot/projects/hammer/sys/ufs/ffs/ffs_vnops.c#24 integrate .. //depot/projects/hammer/sys/ufs/ufs/ufs_extern.h#6 integrate .. //depot/projects/hammer/sys/ufs/ufs/ufs_vnops.c#20 integrate .. //depot/projects/hammer/sys/vm/device_pager.c#12 integrate .. //depot/projects/hammer/sys/vm/swap_pager.c#29 integrate .. //depot/projects/hammer/sys/vm/vm_mmap.c#27 integrate .. //depot/projects/hammer/tools/tools/README#10 integrate .. //depot/projects/hammer/tools/tools/mfc/Makefile#1 branch .. //depot/projects/hammer/tools/tools/mfc/mfc.awk#1 branch .. //depot/projects/hammer/tools/tools/mfc/mfc.sh#1 branch .. //depot/projects/hammer/tools/tools/netrate/netsend/netsend.c#3 integrate .. //depot/projects/hammer/tools/tools/recoverdisk/Makefile#1 branch .. //depot/projects/hammer/tools/tools/recoverdisk/README#1 branch .. //depot/projects/hammer/tools/tools/recoverdisk/recoverdisk.c#1 branch .. //depot/projects/hammer/usr.bin/Makefile#36 integrate .. //depot/projects/hammer/usr.bin/atm/sscop/Makefile#3 integrate .. //depot/projects/hammer/usr.bin/dig/Makefile#4 integrate .. //depot/projects/hammer/usr.bin/host/Makefile#4 integrate .. //depot/projects/hammer/usr.bin/ktrdump/ktrdump.c#6 integrate .. //depot/projects/hammer/usr.bin/nslookup/Makefile#3 integrate .. //depot/projects/hammer/usr.bin/nsupdate/Makefile#3 integrate .. //depot/projects/hammer/usr.bin/printf/printf.c#5 integrate .. //depot/projects/hammer/usr.sbin/Makefile#56 integrate .. //depot/projects/hammer/usr.sbin/bsnmpd/bsnmpd/Makefile#5 integrate .. //depot/projects/hammer/usr.sbin/dconschat/dconschat.c#6 integrate .. //depot/projects/hammer/usr.sbin/dnssec-keygen/Makefile#2 integrate .. //depot/projects/hammer/usr.sbin/dnssec-signzone/Makefile#2 integrate .. //depot/projects/hammer/usr.sbin/inetd/inetd.c#12 integrate .. //depot/projects/hammer/usr.sbin/lpr/lptest/lptest.c#3 integrate .. //depot/projects/hammer/usr.sbin/named-checkconf/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/named-checkzone/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/named/Makefile#6 integrate .. //depot/projects/hammer/usr.sbin/ndiscvt/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/nslookup/Makefile#3 delete .. //depot/projects/hammer/usr.sbin/nsupdate/Makefile#2 delete .. //depot/projects/hammer/usr.sbin/rndc-confgen/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/rndc/Makefile#3 integrate .. //depot/projects/hammer/usr.sbin/smbmsg/Makefile#2 integrate Differences ... ==== //depot/projects/hammer/Makefile.inc1#61 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.447 2004/09/21 21:47:05 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.448 2004/09/27 08:23:42 dougb Exp $ # # Make command line options: # -DNO_DYNAMICROOT do not link /bin and /sbin dynamically @@ -270,6 +270,10 @@ mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ -p ${WORLDTMP}/usr/include >/dev/null ln -sf ${.CURDIR}/sys ${WORLDTMP} +.if defined(WITH_BIND_LIBS) && !defined(NO_BIND) + mtree -deU -f ${.CURDIR}/etc/mtree/BIND.include.dist \ + -p ${WORLDTMP}/usr/include >/dev/null +.endif _legacy: @echo @echo "--------------------------------------------------------------" ==== //depot/projects/hammer/UPDATING#57 (text+ko) ==== @@ -23,6 +23,57 @@ developers choose to disable these features on build machines to maximize performance. +20040928: + If enabled, the default is now to run named in a chroot + "sandbox." For users with existing configurations in + /etc/namedb the migration should be simple. Upgrade your + world as usual, then after installworld but before + mergemaster do the following: + + /etc/rc.d/syslogd stop + If named is running: /etc/rc.d/named stop + cd /etc + mv namedb namedb.bak + mkdir -p /var/named/etc/namedb + cp -Rp namedb.bak/* /var/named/etc/namedb/ + mergemaster (with your usual options) + If using the generated localhost* files: + cd /var/named/etc/namedb + /bin/sh make-localhost + rm -f localhost-v6.rev localhost.rev + /etc/rc.d/syslogd start + /etc/rc.d/named start + + If you are using a custom configuration, or if you have + customised the named_* variables in /etc/rc.conf[.local] + then you may have to adjust the instructions accordingly. + It is suggested that you carefully examine the new named + variables in /etc/defaults/rc.conf and the options in + /var/named/etc/namedb/named.conf to see if they might + now be more suitable. + +20040925: + BIND 9 has been imported into the base, and is now fully + functional. BIND 8 has now been removed. There are numerous + differences between BIND 8 and 9, and users with critical + named installations should read the migration documentation + in /usr/share/doc/bind9/misc/migration. There is also a + new instruction manual in /usr/share/doc/bind9/arm. + + The key differences that most users will experience are in + how picky BIND 9 is about zone file format. If you are using + named as a resolving (caching) name server, you will likely + not have trouble. + + The following files are part of the old BIND 8 installation + and should be removed: + /usr/bin/dnskeygen /usr/bin/dnsquery /usr/libexec/named-xfer + /usr/sbin/named.restart /usr/sbin/ndc + + The following files have moved to /usr/bin, and should be + removed from their old locations: + /usr/sbin/nslookup /usr/sbin/nsupdate + 20040914: The format of the pflogd(8) logfile "/var/log/pflog" has changed for architectures that have a 64 bit long type to make it compatible to @@ -1859,4 +1910,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.361 2004/09/22 20:42:30 andre Exp $ +$FreeBSD: src/UPDATING,v 1.365 2004/09/28 13:44:41 dougb Exp $ ==== //depot/projects/hammer/bin/mkdir/mkdir.c#4 (text+ko) ==== @@ -39,7 +39,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/mkdir/mkdir.c,v 1.28 2004/04/06 20:06:48 markm Exp $"); +__FBSDID("$FreeBSD: src/bin/mkdir/mkdir.c,v 1.29 2004/09/24 06:57:26 das Exp $"); #include #include @@ -147,7 +147,7 @@ else if (p[0] != '/') continue; *p = '\0'; - if (p[1] == '\0') + if (!last && p[1] == '\0') last = 1; if (first) { /* ==== //depot/projects/hammer/bin/sh/exec.c#5 (text+ko) ==== @@ -36,7 +36,7 @@ #endif #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/sh/exec.c,v 1.24 2004/04/06 20:06:51 markm Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/exec.c,v 1.25 2004/09/27 18:43:18 des Exp $"); #include #include @@ -701,7 +701,7 @@ delete_cmd_entry(); return (0); } - return (1); + return (0); } /* ==== //depot/projects/hammer/bin/sh/var.c#6 (text+ko) ==== @@ -36,7 +36,7 @@ #endif #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/sh/var.c,v 1.26 2004/04/06 20:06:51 markm Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/var.c,v 1.27 2004/09/27 18:43:18 des Exp $"); #include #include @@ -761,7 +761,7 @@ } } - return (1); + return (0); } ==== //depot/projects/hammer/contrib/bind9/FREEBSD-Upgrade#2 (text+ko) ==== @@ -1,17 +1,99 @@ -# $FreeBSD: src/contrib/bind9/FREEBSD-Upgrade,v 1.1 2004/09/21 19:01:41 des Exp $ -# -# Bug trhodes@ and des@ to actually throw some text in here. -# + + + FreeBSD maintainer's guide to updating BIND 9 + ============================================= + +1) Obtain the latest source distribution from the ISC's FTP server + (ftp://ftp.isc.org/isc/bind9/) + +2) Unpack the tarball in a suitable directory. + +3) Remove unwanted files and directories: + + $ while read pattern ; do rm -rf $pattern ; done \ + #include #include -#include #include #include @@ -64,7 +63,9 @@ int loose; int user_out_fd; u_int verbose; +#ifndef USE_LIBBEGEMOT evContext evctx; +#endif evFileID sscop_h; evFileID user_h; @@ -153,7 +154,11 @@ if (got == 0) { eof: +#ifdef USE_LIBBEGEMOT + poll_unregister(sscop_h); +#else evDeselectFD(evctx, sscop_h); +#endif (void)close(sscop_fd); sscop_fd = -1; if (m != NULL) @@ -212,7 +217,11 @@ if (size == 0) { eof: +#ifdef USE_LIBBEGEMOT + poll_unregister(user_h); +#else evDeselectFD(evctx, user_h); +#endif if (m != NULL) uni_msg_destroy(m); VERBOSE(("EOF on user connection")); @@ -384,9 +393,14 @@ abort(); } +#ifdef USE_LIBBEGEMOT static void +tfunc(int tid __unused, void *uap) +#else +static void tfunc(evContext ctx __unused, void *uap, struct timespec due __unused, struct timespec inter __unused) +#endif { struct timer *t = uap; @@ -402,18 +416,25 @@ void (*func)(void *)) { struct timer *t; +#ifndef USE_LIBBEGEMOT struct timespec due; +#endif if ((t = malloc(sizeof(*t))) == NULL) err(1, NULL); t->sscop = sscop; t->func = func; +#ifdef USE_LIBBEGEMOT + if ((t->id = poll_start_timer(msec, 0, tfunc, t)) == -1) + err(1, "cannot start timer"); +#else due = evAddTime(evNowTime(), evConsTime((time_t)msec/1000, (long)(msec%1000)*1000)); if (evSetTimer(evctx, tfunc, t, due, evConsTime(0, 0), &t->id)) err(1, "cannot start timer"); +#endif return (t); } @@ -426,6 +447,10 @@ { struct timer *t = tp; +#ifdef USE_LIBBEGEMOT + poll_stop_timer(t->id); +#else evClearTimer(evctx, t->id); +#endif free(t); } ==== //depot/projects/hammer/contrib/ngatm/sscop/common.h#3 (text+ko) ==== @@ -25,7 +25,7 @@ * 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/contrib/ngatm/sscop/common.h,v 1.2 2004/09/24 22:00:33 trhodes Exp $ * $Begemot: libunimsg/sscop/common.h,v 1.4 2004/07/08 08:22:27 brandt Exp $ * * Common declaration for the SAAL programs. @@ -33,6 +33,14 @@ #ifndef _SAAL_COMMON_H_ #define _SAAL_COMMON_H_ +#ifdef USE_LIBBEGEMOT +#include +#define evFileID int +#define evTimerID int +#else +#include +#endif + /* >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Sep 29 00:27:22 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 84B6316A4D0; Wed, 29 Sep 2004 00:27:22 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5BED316A4CE for ; Wed, 29 Sep 2004 00:27:22 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 51A5143D1F for ; Wed, 29 Sep 2004 00:27:22 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8T0RMeh021521 for ; Wed, 29 Sep 2004 00:27:22 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8T0RMGL021518 for perforce@freebsd.org; Wed, 29 Sep 2004 00:27:22 GMT (envelope-from peter@freebsd.org) Date: Wed, 29 Sep 2004 00:27:22 GMT Message-Id: <200409290027.i8T0RMGL021518@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 62364 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Sep 2004 00:27:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=62364 Change 62364 by peter@peter_daintree on 2004/09/29 00:26:55 Integ -I -b i386_hammer (mp_machdep pmap_invalidate fix etc) Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#73 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable.c#31 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#109 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#73 (text+ko) ==== @@ -539,12 +539,14 @@ u_int32_t mpbioswarmvec; int apic_id, cpu, i; u_int64_t *pt4, *pt3, *pt2; + vm_offset_t va = boot_address + KERNBASE; mtx_init(&ap_boot_mtx, "ap boot", NULL, MTX_SPIN); /* install the AP 1st level boot code */ - pmap_kenter(boot_address + KERNBASE, boot_address); - bcopy(mptramp_start, (void *)((uintptr_t)boot_address + KERNBASE), bootMP_size); + pmap_kenter(va, boot_address); + pmap_invalidate_page(kernel_pmap, va); + bcopy(mptramp_start, (void *)va, bootMP_size); /* Locate the page tables, they'll be below the trampoline */ pt4 = (u_int64_t *)(uintptr_t)(mptramp_pagetables + KERNBASE); ==== //depot/projects/hammer/sys/amd64/amd64/mptable.c#31 (text+ko) ==== @@ -928,7 +928,9 @@ if (args->vector == vector) return; KASSERT(args->vector == -1, - ("Multiple entries for PCI IRQ %d", args->vector)); + ("Multiple IRQs for PCI interrupt %d.%d.INT%c: %d and %d\n", + args->bus, args->irq >> 2, 'A' + (args->irq & 0x3), args->vector, + vector)); args->vector = vector; } ==== //depot/projects/hammer/sys/amd64/amd64/pmap.c#109 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Wed Sep 29 02:01:20 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 095F616A4CF; Wed, 29 Sep 2004 02:01:19 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2463416A4D0 for ; Wed, 29 Sep 2004 02:01:16 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1BDD943D39 for ; Wed, 29 Sep 2004 02:01:16 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8T21F2v030641 for ; Wed, 29 Sep 2004 02:01:16 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8T21FuP030638 for perforce@freebsd.org; Wed, 29 Sep 2004 02:01:15 GMT (envelope-from peter@freebsd.org) Date: Wed, 29 Sep 2004 02:01:15 GMT Message-Id: <200409290201.i8T21FuP030638@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 62367 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Sep 2004 02:01:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=62367 Change 62367 by peter@peter_overcee on 2004/09/29 02:01:06 Match -current for ispfw whitespace Affected files ... .. //depot/projects/hammer/sys/amd64/conf/GENERIC#59 edit Differences ... ==== //depot/projects/hammer/sys/amd64/conf/GENERIC#59 (text+ko) ==== @@ -98,7 +98,7 @@ device ahd # AHA39320/29320 and onboard AIC79xx devices device amd # AMD 53C974 (Tekram DC-390(T)) device isp # Qlogic family -#device ispfw # Firmware for QLogic HBAs- normally a module +#device ispfw # Firmware for QLogic HBAs- normally a module device mpt # LSI-Logic MPT-Fusion #device ncr # NCR/Symbios Logic device sym # NCR/Symbios Logic (newer chipsets + those of `ncr') From owner-p4-projects@FreeBSD.ORG Wed Sep 29 02:03:19 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4217E16A4D0; Wed, 29 Sep 2004 02:03:19 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1ABA216A4CE for ; Wed, 29 Sep 2004 02:03:19 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 118B343D45 for ; Wed, 29 Sep 2004 02:03:19 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8T23ILY030676 for ; Wed, 29 Sep 2004 02:03:18 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8T23Iq0030673 for perforce@freebsd.org; Wed, 29 Sep 2004 02:03:18 GMT (envelope-from peter@freebsd.org) Date: Wed, 29 Sep 2004 02:03:18 GMT Message-Id: <200409290203.i8T23Iq0030673@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 62368 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Sep 2004 02:03:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=62368 Change 62368 by peter@peter_daintree on 2004/09/29 02:02:32 Match -current. remove unneeded assertions. (amd64 pmap doesn't need these locks) Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#110 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/pmap.c#110 (text+ko) ==== @@ -1478,7 +1478,6 @@ pt_entry_t oldpte; vm_page_t m; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); oldpte = pte_load_clear(ptq); if (oldpte & PG_W) @@ -1520,7 +1519,6 @@ pd_entry_t ptepde; pt_entry_t *pte; - mtx_assert(&vm_page_queue_mtx, MA_OWNED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); pte = pmap_pte_pde(pmap, va, &ptepde); if (pte == NULL || (*pte & PG_V) == 0) From owner-p4-projects@FreeBSD.ORG Wed Sep 29 23:18:10 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D42BF16A4D0; Wed, 29 Sep 2004 23:18:09 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 922B216A4CE for ; Wed, 29 Sep 2004 23:18:09 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 88BF143D5D for ; Wed, 29 Sep 2004 23:18:09 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8TNI9JC003149 for ; Wed, 29 Sep 2004 23:18:09 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8TNI9xH003146 for perforce@freebsd.org; Wed, 29 Sep 2004 23:18:09 GMT (envelope-from peter@freebsd.org) Date: Wed, 29 Sep 2004 23:18:09 GMT Message-Id: <200409292318.i8TNI9xH003146@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 62412 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Sep 2004 23:18:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=62412 Change 62412 by peter@peter_daintree on 2004/09/29 23:17:12 expose struct cdev for the benefit of libkvm Affected files ... .. //depot/projects/hammer/sys/sys/conf.h#20 edit Differences ... ==== //depot/projects/hammer/sys/sys/conf.h#20 (text+ko) ==== @@ -40,9 +40,6 @@ #ifndef _SYS_CONF_H_ #define _SYS_CONF_H_ -#ifdef _KERNEL -#include - struct tty; struct disk; struct vnode; @@ -107,6 +104,9 @@ #define si_snapdata __si_u.__si_disk.__sid_snapdata #define si_copyonwrite __si_u.__si_disk.__sid_copyonwrite +#ifdef _KERNEL +#include + /* * Definitions of device driver entry switches */ From owner-p4-projects@FreeBSD.ORG Wed Sep 29 23:52:53 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DB05E16A4D0; Wed, 29 Sep 2004 23:52:52 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B616D16A4CE for ; Wed, 29 Sep 2004 23:52:52 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 97B3943D2F for ; Wed, 29 Sep 2004 23:52:52 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8TNqqRx004179 for ; Wed, 29 Sep 2004 23:52:52 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8TNqqqJ004176 for perforce@freebsd.org; Wed, 29 Sep 2004 23:52:52 GMT (envelope-from peter@freebsd.org) Date: Wed, 29 Sep 2004 23:52:52 GMT Message-Id: <200409292352.i8TNqqqJ004176@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 62415 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Sep 2004 23:52:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=62415 Change 62415 by peter@peter_daintree on 2004/09/29 23:52:26 Grrr. Affected files ... .. //depot/projects/hammer/sys/sys/conf.h#21 edit Differences ... ==== //depot/projects/hammer/sys/sys/conf.h#21 (text+ko) ==== @@ -40,6 +40,10 @@ #ifndef _SYS_CONF_H_ #define _SYS_CONF_H_ +#ifndef _KERNEL +#include +#endif + struct tty; struct disk; struct vnode; From owner-p4-projects@FreeBSD.ORG Thu Sep 30 01:10:30 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B782516A4D0; Thu, 30 Sep 2004 01:10:29 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5F3B816A4CE for ; Thu, 30 Sep 2004 01:10:29 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 36DF943D31 for ; Thu, 30 Sep 2004 01:10:29 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8U1ATuO015060 for ; Thu, 30 Sep 2004 01:10:29 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8U1ASA5015057 for perforce@freebsd.org; Thu, 30 Sep 2004 01:10:28 GMT (envelope-from peter@freebsd.org) Date: Thu, 30 Sep 2004 01:10:28 GMT Message-Id: <200409300110.i8U1ASA5015057@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 62421 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 30 Sep 2004 01:10:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=62421 Change 62421 by peter@peter_daintree on 2004/09/30 01:09:48 IFC @62420 Affected files ... .. //depot/projects/hammer/UPDATING#58 integrate .. //depot/projects/hammer/contrib/ngatm/sscop/common.c#4 integrate .. //depot/projects/hammer/contrib/ngatm/sscop/common.h#4 integrate .. //depot/projects/hammer/contrib/ngatm/sscop/sscop_main.c#4 integrate .. //depot/projects/hammer/etc/Makefile#28 integrate .. //depot/projects/hammer/etc/defaults/rc.conf#36 integrate .. //depot/projects/hammer/etc/mtree/BIND.chroot.dist#2 integrate .. //depot/projects/hammer/etc/namedb/named.conf#5 integrate .. //depot/projects/hammer/etc/rc.bsdextended#1 branch .. //depot/projects/hammer/etc/rc.d/Makefile#27 integrate .. //depot/projects/hammer/etc/rc.d/ugidfw#1 branch .. //depot/projects/hammer/games/fortune/datfiles/fortunes2#16 integrate .. //depot/projects/hammer/gnu/lib/libobjc/Makefile#7 integrate .. //depot/projects/hammer/lib/libc/net/addr2ascii.3#5 integrate .. //depot/projects/hammer/libexec/getty/main.c#5 integrate .. //depot/projects/hammer/share/man/man5/rc.conf.5#34 integrate .. //depot/projects/hammer/share/man/man8/diskless.8#9 integrate .. //depot/projects/hammer/share/man/man9/pfil.9#7 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#74 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable.c#32 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#111 integrate .. //depot/projects/hammer/sys/amd64/include/pmap.h#47 integrate .. //depot/projects/hammer/sys/boot/common/commands.c#4 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_fil.c#12 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf.c#13 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_ioctl.c#14 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pfvar.h#8 integrate .. //depot/projects/hammer/sys/dev/em/if_em.c#29 integrate .. //depot/projects/hammer/sys/dev/fdc/fdc_acpi.c#6 integrate .. //depot/projects/hammer/sys/dev/syscons/syscons.c#24 integrate .. //depot/projects/hammer/sys/dev/usb/ugen.c#20 integrate .. //depot/projects/hammer/sys/dev/usb/usb_subr.c#16 integrate .. //depot/projects/hammer/sys/i386/i386/pmap.c#56 integrate .. //depot/projects/hammer/sys/i386/include/pmap.h#18 integrate .. //depot/projects/hammer/sys/isa/psm.c#23 integrate .. //depot/projects/hammer/sys/kern/kern_conf.c#23 integrate .. //depot/projects/hammer/sys/kern/kern_malloc.c#18 integrate .. //depot/projects/hammer/sys/net/bridge.c#18 integrate .. //depot/projects/hammer/sys/net/pfil.c#5 integrate .. //depot/projects/hammer/sys/net/pfil.h#4 integrate .. //depot/projects/hammer/sys/netinet/in_pcb.c#29 integrate .. //depot/projects/hammer/sys/netinet/ip_fastfwd.c#13 integrate .. //depot/projects/hammer/sys/netinet/ip_fw.h#16 integrate .. //depot/projects/hammer/sys/netinet/ip_fw2.c#41 integrate .. //depot/projects/hammer/sys/netinet/ip_fw_pfil.c#5 integrate .. //depot/projects/hammer/sys/netinet/ip_input.c#43 integrate .. //depot/projects/hammer/sys/netinet/ip_output.c#40 integrate .. //depot/projects/hammer/sys/netinet6/ip6_forward.c#11 integrate .. //depot/projects/hammer/sys/netinet6/ip6_input.c#18 integrate .. //depot/projects/hammer/sys/netinet6/ip6_output.c#25 integrate .. //depot/projects/hammer/sys/netkey/key.c#18 integrate .. //depot/projects/hammer/sys/sparc64/include/smp.h#5 integrate .. //depot/projects/hammer/sys/sys/param.h#47 integrate Differences ... ==== //depot/projects/hammer/UPDATING#58 (text+ko) ==== @@ -23,6 +23,11 @@ developers choose to disable these features on build machines to maximize performance. +20040929: + The pfil API has gained an additional argument to pass an inpcb. + You should rebuild all pfil consuming modules: ipfw, ipfilter + and pf. + 20040928: If enabled, the default is now to run named in a chroot "sandbox." For users with existing configurations in @@ -1910,4 +1915,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.365 2004/09/28 13:44:41 dougb Exp $ +$FreeBSD: src/UPDATING,v 1.366 2004/09/29 04:54:31 mlaier Exp $ ==== //depot/projects/hammer/contrib/ngatm/sscop/common.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * 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/contrib/ngatm/sscop/common.c,v 1.2 2004/09/24 22:00:33 trhodes Exp $ + * * $Begemot: libunimsg/sscop/common.c,v 1.4 2004/07/08 08:22:27 brandt Exp $ */ ==== //depot/projects/hammer/contrib/ngatm/sscop/common.h#4 (text+ko) ==== @@ -25,7 +25,7 @@ * 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/contrib/ngatm/sscop/common.h,v 1.2 2004/09/24 22:00:33 trhodes Exp $ + * * $Begemot: libunimsg/sscop/common.h,v 1.4 2004/07/08 08:22:27 brandt Exp $ * * Common declaration for the SAAL programs. ==== //depot/projects/hammer/contrib/ngatm/sscop/sscop_main.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * 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/contrib/ngatm/sscop/sscop_main.c,v 1.2 2004/09/24 22:00:33 trhodes Exp $ + * * $Begemot: libunimsg/sscop/sscop_main.c,v 1.4 2004/07/08 08:22:28 brandt Exp $ */ ==== //depot/projects/hammer/etc/Makefile#28 (text+ko) ==== @@ -1,5 +1,5 @@ # from: @(#)Makefile 5.11 (Berkeley) 5/21/91 -# $FreeBSD: src/etc/Makefile,v 1.331 2004/09/28 09:45:59 dougb Exp $ +# $FreeBSD: src/etc/Makefile,v 1.332 2004/09/29 06:54:18 ru Exp $ .if !defined(NO_SENDMAIL) SUBDIR= sendmail @@ -186,7 +186,7 @@ .endif mtree -deU ${MTREE_FOLLOWS_SYMLINKS} -f ${.CURDIR}/mtree/BIND.chroot.dist \ -p ${DESTDIR}/var/named - ln -s ${DESTDIR}/var/named/etc/namedb ${DESTDIR}/etc/namedb + ln -fhs ${DESTDIR}/var/named/etc/namedb ${DESTDIR}/etc/namedb .endif .if !defined(NO_SENDMAIL) mtree -deU ${MTREE_FOLLOWS_SYMLINKS} -f ${.CURDIR}/mtree/BSD.sendmail.dist -p ${DESTDIR}/ ==== //depot/projects/hammer/etc/defaults/rc.conf#36 (text+ko) ==== @@ -13,7 +13,7 @@ # # All arguments must be in double or single quotes. # -# $FreeBSD: src/etc/defaults/rc.conf,v 1.218 2004/09/28 09:45:59 dougb Exp $ +# $FreeBSD: src/etc/defaults/rc.conf,v 1.220 2004/09/29 07:07:43 trhodes Exp $ ############################################################## ### Important initial Boot-time options #################### @@ -468,6 +468,9 @@ economy_cx_lowest="LOW" # Offline CPU idle state economy_throttle_state="HIGH" # Offline throttling state virecover_enable="YES" # Perform housekeeping for the vi(1) editor +ugidfw_enable="NO" # Load mac_bsdextended(4) rules on boot +bsdextended_script="/etc/rc.bsdextended" # Default mac_bsdextended(4) + # ruleset file. ############################################################## ### Jail Configuration ####################################### ==== //depot/projects/hammer/etc/mtree/BIND.chroot.dist#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BIND.chroot.dist,v 1.2 2004/09/28 09:46:00 dougb Exp $ +# $FreeBSD: src/etc/mtree/BIND.chroot.dist,v 1.5 2004/09/29 03:43:10 dougb Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -8,7 +8,7 @@ dev mode=0555 .. etc - namedb uname=bind + namedb master .. slave uname=bind @@ -17,13 +17,15 @@ .. /set type=dir uname=bind gname=wheel mode=0755 var uname=root - dump - .. + dump + .. log .. run - named + named .. - .. + .. + stats + .. .. .. ==== //depot/projects/hammer/etc/namedb/named.conf#5 (text+ko) ==== @@ -1,4 +1,4 @@ -// $FreeBSD: src/etc/namedb/named.conf,v 1.17 2004/09/28 21:22:09 dougb Exp $ +// $FreeBSD: src/etc/namedb/named.conf,v 1.18 2004/09/29 03:49:35 dougb Exp $ // // Refer to the named.conf(5) and named(8) man pages for details. If // you are ever going to set up a primary server, make sure you @@ -10,6 +10,7 @@ directory "/etc/namedb"; pid-file "/var/run/named/pid"; dump-file "/var/dump/named_dump.db"; + statistics-file "/var/stats/named.stats"; // In addition to the "forwarders" clause, you can force your name // server to never initiate queries of its own, but always ask its ==== //depot/projects/hammer/etc/rc.d/Makefile#27 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: Makefile,v 1.16 2001/01/14 15:37:22 minoura Exp $ -# $FreeBSD: src/etc/rc.d/Makefile,v 1.43 2004/09/15 01:08:33 seanc Exp $ +# $FreeBSD: src/etc/rc.d/Makefile,v 1.44 2004/09/29 00:12:28 trhodes Exp $ FILES= DAEMON LOGIN NETWORKING SERVERS \ abi accounting addswap adjkerntz amd \ @@ -34,7 +34,7 @@ serial sppp sshd swap1 \ syscons sysctl syslogd \ timed tmp \ - usbd \ + ugidfw usbd \ var vinum virecover \ watchdogd \ ypbind yppasswdd ypserv \ ==== //depot/projects/hammer/games/fortune/datfiles/fortunes2#16 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes2,v 1.76 2004/07/20 08:32:42 le Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes2,v 1.77 2004/09/29 19:52:19 wilko Exp $ % ======================================================================= || || @@ -55507,3 +55507,8 @@ nameless to the development team after releasing the second version of their product. % +The state that separates its scholars from its warriors will have its +thinking done by cowards, and its fighting by fools. + + -- Thucydides +% ==== //depot/projects/hammer/gnu/lib/libobjc/Makefile#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/lib/libobjc/Makefile,v 1.20 2004/07/28 05:27:18 kan Exp $ +# $FreeBSD: src/gnu/lib/libobjc/Makefile,v 1.21 2004/09/29 23:42:44 peter Exp $ OBJCDIR=${.CURDIR}/../../../contrib/libobjc GCCDIR= ${.CURDIR}/../../../contrib/gcc @@ -7,7 +7,12 @@ LIB= objc NOMAN= sorry +.if ${MACHINE_ARCH} == "amd64" +SHLIB_MAJOR= 1 +.else +# XXX is this still correct? NOPIC= works but method lookup slowdown is significant +.endif SRCS= archive.c class.c encoding.c gc.c hash.c init.c misc.c \ nil_method.c objects.c sarray.c selector.c sendmsg.c \ ==== //depot/projects/hammer/lib/libc/net/addr2ascii.3#5 (text+ko) ==== @@ -27,7 +27,7 @@ .\" SUCH DAMAGE. .\" .\" $ANA: addr2ascii.3,v 1.1 1996/06/13 18:41:46 wollman Exp $ -.\" $FreeBSD: src/lib/libc/net/addr2ascii.3,v 1.15 2004/07/02 23:52:11 ru Exp $ +.\" $FreeBSD: src/lib/libc/net/addr2ascii.3,v 1.16 2004/09/29 17:54:30 maxim Exp $ .\" .Dd June 13, 1996 .Dt ADDR2ASCII 3 @@ -40,6 +40,7 @@ .Lb libc .Sh SYNOPSIS .In sys/types.h +.In sys/socket.h .In netinet/in.h .In arpa/inet.h .Ft "char *" ==== //depot/projects/hammer/libexec/getty/main.c#5 (text+ko) ==== @@ -42,7 +42,7 @@ static char sccsid[] = "@(#)from: main.c 8.1 (Berkeley) 6/20/93"; #endif static const char rcsid[] = - "$FreeBSD: src/libexec/getty/main.c,v 1.45 2003/07/18 16:25:55 yar Exp $"; + "$FreeBSD: src/libexec/getty/main.c,v 1.46 2004/09/29 20:55:14 imp Exp $"; #endif /* not lint */ #include @@ -427,37 +427,30 @@ static int opentty(const char *tty, int flags) { - int i, j = 0; + int i; int failopenlogged = 0; - while (j < 10 && (i = open(tty, flags)) == -1) + while ((i = open(tty, flags)) == -1) { - if (((j % 10) == 0) && (errno != ENXIO || !failopenlogged)) { + if (!failopenlogged) { syslog(LOG_ERR, "open %s: %m", tty); failopenlogged = 1; } - j++; sleep(60); } - if (i == -1) { - syslog(LOG_ERR, "open %s: %m", tty); - return 0; - } - else { - if (login_tty(i) < 0) { - if (daemon(0,0) < 0) { - syslog(LOG_ERR,"daemon: %m"); - close(i); - return 0; - } - if (login_tty(i) < 0) { - syslog(LOG_ERR, "login_tty %s: %m", tty); - close(i); - return 0; - } + if (login_tty(i) < 0) { + if (daemon(0,0) < 0) { + syslog(LOG_ERR,"daemon: %m"); + close(i); + return 0; + } + if (login_tty(i) < 0) { + syslog(LOG_ERR, "login_tty %s: %m", tty); + close(i); + return 0; } - return 1; } + return 1; } static void ==== //depot/projects/hammer/share/man/man5/rc.conf.5#34 (text+ko) ==== @@ -22,9 +22,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man5/rc.conf.5,v 1.223 2004/09/20 17:49:57 des Exp $ +.\" $FreeBSD: src/share/man/man5/rc.conf.5,v 1.224 2004/09/29 07:08:52 trhodes Exp $ .\" -.Dd September 20, 2004 +.Dd September 29, 2004 .Dt RC.CONF 5 .Os .Sh NAME @@ -3001,6 +3001,17 @@ recover pre-maturely terminated .Xr vi 1 sessions. +.It Va ugidfw_enable +.Dq Li NO +Load the +.Xr mac_bsdextended 4 +module upon system initialization and load a default +ruleset file. +.It Va bsdextended_script +.Dq Li Pa /etc/rc.bsdextended +The default +.Xr mac_bsdextended 4 +ruleset file to load. .It Va ramdisk_units .Pq Vt str A list of one or more ramdisk units to configure with ==== //depot/projects/hammer/share/man/man8/diskless.8#9 (text+ko) ==== @@ -24,9 +24,9 @@ .\" (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/man8/diskless.8,v 1.24 2004/06/21 14:23:31 mpp Exp $ +.\" $FreeBSD: src/share/man/man8/diskless.8,v 1.25 2004/09/29 05:28:48 brooks Exp $ .\" -.Dd January 10, 2004 +.Dd September 28, 2004 .Dt DISKLESS 8 .Os .Sh NAME @@ -146,8 +146,13 @@ .Nm startup and perform the actions found in -.Pa /etc/rc.d/initdiskless +.Pa /etc/rc.d/initdiskless , +.Pa /etc/rc.d/resolv , +.Pa /etc/rc.d/tmp , and +.Pa /etc/rc.d/var . +On early 5.x releases, the functions of latter three scripts where +implemented in .Pa /etc/rc.d/diskless . On older systems, the scripts are located in .Pa /etc/rc.diskless1 ==== //depot/projects/hammer/share/man/man9/pfil.9#7 (text+ko) ==== @@ -26,9 +26,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man9/pfil.9,v 1.15 2004/08/27 15:16:20 andre Exp $ +.\" $FreeBSD: src/share/man/man9/pfil.9,v 1.16 2004/09/29 04:54:32 mlaier Exp $ .\" -.Dd September 8, 2003 +.Dd September 29, 2004 .Dt PFIL 9 .Os .Sh NAME @@ -59,9 +59,9 @@ .Ft void .Fn pfil_remove_hook "int (*func)()" "void *arg" "int flags" "struct pfil_head *" .Ft int -.Fn (*func) "void *arg" "struct mbuf **mp" "struct ifnet *" "int dir" +.Fn (*func) "void *arg" "struct mbuf **mp" "struct ifnet *" "int dir" "struct inpcb *" .Ft int -.Fn pfil_run_hooks "struct pfil_head *head" "struct mbuf **mp" "struct ifnet *" "int dir" +.Fn pfil_run_hooks "struct pfil_head *head" "struct mbuf **mp" "struct ifnet *" "int dir" "struct inpcb *" .Sh DESCRIPTION The .Nm ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#74 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.246 2004/09/01 06:42:01 julian Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.247 2004/09/29 01:59:10 peter Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" ==== //depot/projects/hammer/sys/amd64/amd64/mptable.c#32 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.232 2004/07/08 01:42:49 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.233 2004/09/29 01:58:24 peter Exp $"); #include #include ==== //depot/projects/hammer/sys/amd64/amd64/pmap.c#111 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.502 2004/09/22 05:01:48 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.503 2004/09/29 19:20:39 alc Exp $"); /* * Manages physical address maps. @@ -110,6 +110,7 @@ #include #include #include +#include #include #include #include @@ -212,9 +213,9 @@ vm_offset_t va, pd_entry_t ptepde); static void pmap_insert_entry(pmap_t pmap, vm_offset_t va, vm_page_t m); -static vm_page_t pmap_allocpte(pmap_t pmap, vm_offset_t va); +static vm_page_t pmap_allocpte(pmap_t pmap, vm_offset_t va, int flags); -static vm_page_t _pmap_allocpte(pmap_t pmap, vm_pindex_t ptepindex); +static vm_page_t _pmap_allocpte(pmap_t pmap, vm_pindex_t ptepindex, int flags); static int _pmap_unwire_pte_hold(pmap_t pmap, vm_offset_t va, vm_page_t m); static int pmap_unuse_pt(pmap_t, vm_offset_t, pd_entry_t); static vm_offset_t pmap_kmem_choose(vm_offset_t addr); @@ -1101,22 +1102,26 @@ * race conditions. */ static vm_page_t -_pmap_allocpte(pmap, ptepindex) - pmap_t pmap; - vm_pindex_t ptepindex; +_pmap_allocpte(pmap_t pmap, vm_pindex_t ptepindex, int flags) { vm_page_t m, pdppg, pdpg; + KASSERT((flags & (M_NOWAIT | M_WAITOK)) == M_NOWAIT || + (flags & (M_NOWAIT | M_WAITOK)) == M_WAITOK, + ("_pmap_allocpte: flags is neither M_NOWAIT nor M_WAITOK")); + /* * Allocate a page table page. */ if ((m = vm_page_alloc(NULL, ptepindex, VM_ALLOC_NOOBJ | VM_ALLOC_WIRED | VM_ALLOC_ZERO)) == NULL) { - PMAP_UNLOCK(pmap); - vm_page_unlock_queues(); - VM_WAIT; - vm_page_lock_queues(); - PMAP_LOCK(pmap); + if (flags & M_WAITOK) { + PMAP_UNLOCK(pmap); + vm_page_unlock_queues(); + VM_WAIT; + vm_page_lock_queues(); + PMAP_LOCK(pmap); + } /* * Indicate the need to retry. While waiting, the page table @@ -1156,7 +1161,8 @@ pml4 = &pmap->pm_pml4[pml4index]; if ((*pml4 & PG_V) == 0) { /* Have to allocate a new pdp, recurse */ - if (_pmap_allocpte(pmap, NUPDE + NUPDPE + pml4index) == NULL) { + if (_pmap_allocpte(pmap, NUPDE + NUPDPE + pml4index, + flags) == NULL) { --m->wire_count; vm_page_free(m); return (NULL); @@ -1187,7 +1193,8 @@ pml4 = &pmap->pm_pml4[pml4index]; if ((*pml4 & PG_V) == 0) { /* Have to allocate a new pd, recurse */ - if (_pmap_allocpte(pmap, NUPDE + pdpindex) == NULL) { + if (_pmap_allocpte(pmap, NUPDE + pdpindex, + flags) == NULL) { --m->wire_count; vm_page_free(m); return (NULL); @@ -1199,7 +1206,8 @@ pdp = &pdp[pdpindex & ((1ul << NPDPEPGSHIFT) - 1)]; if ((*pdp & PG_V) == 0) { /* Have to allocate a new pd, recurse */ - if (_pmap_allocpte(pmap, NUPDE + pdpindex) == NULL) { + if (_pmap_allocpte(pmap, NUPDE + pdpindex, + flags) == NULL) { --m->wire_count; vm_page_free(m); return (NULL); @@ -1221,12 +1229,16 @@ } static vm_page_t -pmap_allocpte(pmap_t pmap, vm_offset_t va) +pmap_allocpte(pmap_t pmap, vm_offset_t va, int flags) { vm_pindex_t ptepindex; pd_entry_t *pd; vm_page_t m; + KASSERT((flags & (M_NOWAIT | M_WAITOK)) == M_NOWAIT || + (flags & (M_NOWAIT | M_WAITOK)) == M_WAITOK, + ("pmap_allocpte: flags is neither M_NOWAIT nor M_WAITOK")); + /* * Calculate pagetable page index */ @@ -1259,8 +1271,8 @@ * Here if the pte page isn't mapped, or if it has been * deallocated. */ - m = _pmap_allocpte(pmap, ptepindex); - if (m == NULL) + m = _pmap_allocpte(pmap, ptepindex, flags); + if (m == NULL && (flags & M_WAITOK)) goto retry; } return (m); @@ -1848,7 +1860,7 @@ * resident, we are creating it here. */ if (va < VM_MAXUSER_ADDRESS) { - mpte = pmap_allocpte(pmap, va); + mpte = pmap_allocpte(pmap, va, M_WAITOK); } #if 0 && defined(PMAP_DIAGNOSTIC) else { @@ -2029,7 +2041,8 @@ mpte = PHYS_TO_VM_PAGE(*ptepa & PG_FRAME); mpte->wire_count++; } else { - mpte = _pmap_allocpte(pmap, ptepindex); + mpte = _pmap_allocpte(pmap, ptepindex, + M_WAITOK); if (mpte == NULL) goto retry; } @@ -2224,7 +2237,13 @@ return; vm_page_lock_queues(); - PMAP_LOCK(dst_pmap); + if (dst_pmap < src_pmap) { + PMAP_LOCK(dst_pmap); + PMAP_LOCK(src_pmap); + } else { + PMAP_LOCK(src_pmap); + PMAP_LOCK(dst_pmap); + } for (addr = src_addr; addr < end_addr; addr = va_next) { pt_entry_t *src_pte, *dst_pte; vm_page_t dstmpte, srcmpte; @@ -2303,9 +2322,12 @@ * pte still being around... allocpte can * block. */ - dstmpte = pmap_allocpte(dst_pmap, addr); + dstmpte = pmap_allocpte(dst_pmap, addr, + M_NOWAIT); + if (dstmpte == NULL) + break; dst_pte = pmap_pte(dst_pmap, addr); - if ((*dst_pte == 0) && (ptetemp = *src_pte)) { + if (*dst_pte == 0) { /* * Clear the modified and * accessed (referenced) bits @@ -2325,6 +2347,7 @@ } } vm_page_unlock_queues(); + PMAP_UNLOCK(src_pmap); PMAP_UNLOCK(dst_pmap); } ==== //depot/projects/hammer/sys/amd64/include/pmap.h#47 (text+ko) ==== @@ -39,7 +39,7 @@ * * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.123 2004/09/11 01:31:26 scottl Exp $ + * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.124 2004/09/29 19:20:39 alc Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -240,7 +240,7 @@ mtx_assert(&(pmap)->pm_mtx, (type)) #define PMAP_LOCK_DESTROY(pmap) mtx_destroy(&(pmap)->pm_mtx) #define PMAP_LOCK_INIT(pmap) mtx_init(&(pmap)->pm_mtx, "pmap", \ - NULL, MTX_DEF) + NULL, MTX_DEF | MTX_DUPOK) #define PMAP_LOCKED(pmap) mtx_owned(&(pmap)->pm_mtx) #define PMAP_MTX(pmap) (&(pmap)->pm_mtx) #define PMAP_TRYLOCK(pmap) mtx_trylock(&(pmap)->pm_mtx) ==== //depot/projects/hammer/sys/boot/common/commands.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/common/commands.c,v 1.19 2003/08/25 23:30:41 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/common/commands.c,v 1.20 2004/09/29 13:43:55 ru Exp $"); #include #include @@ -100,7 +100,7 @@ } } -static void +static int help_emitsummary(char *topic, char *subtopic, char *desc) { int i; @@ -119,7 +119,7 @@ } while (i++ < 30); pager_output(desc); } - pager_output("\n"); + return (pager_output("\n")); } @@ -162,7 +162,8 @@ while(help_getnext(hfd, &t, &s, &d)) { if (doindex) { /* dink around formatting */ - help_emitsummary(t, s, d); + if (help_emitsummary(t, s, d)) + break; } else if (strcmp(topic, t)) { /* topic mismatch */ @@ -183,7 +184,8 @@ } } else if ((subtopic == NULL) && (s != NULL)) { /* topic match, list subtopics */ - help_emitsummary(t, s, d); + if (help_emitsummary(t, s, d)) + break; } } free(t); ==== //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_fil.c#12 (text+ko) ==== @@ -132,7 +132,7 @@ #if !defined(lint) static const char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-2000 Darren Reed"; /* static const char rcsid[] = "@(#)$Id: ip_fil.c,v 2.42.2.34 2001/07/23 13:49:57 darrenr Exp $"; */ -static const char rcsid[] = "@(#)$FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.c,v 1.48 2004/08/27 20:01:08 andre Exp $"; +static const char rcsid[] = "@(#)$FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.c,v 1.49 2004/09/29 04:54:32 mlaier Exp $"; #endif extern struct protosw inetsw[]; @@ -312,7 +312,8 @@ } # endif #endif /* __NetBSD_Version >= 105110000 && _KERNEL */ -#if (__FreeBSD_version >= 501108) && defined(_KERNEL) +#if (__FreeBSD_version >= 501108) && (__FreeBSD_version < 600004) && \ + defined(_KERNEL) static int fr_check_wrapper(void *arg, struct mbuf **mp, struct ifnet *ifp, int dir) @@ -331,7 +332,29 @@ ifp, (dir == PFIL_OUT), mp)); } # endif -#endif /* __FreeBSD_version >= 501108 */ + +#elif (__FreeBSD_version >= 600004) && defined(_KERNEL) + +static int +fr_check_wrapper(void *arg, struct mbuf **mp, struct ifnet *ifp, int dir, + struct inpcb *inp) +{ + struct ip *ip = mtod(*mp, struct ip *); + return fr_check(ip, ip->ip_hl << 2, ifp, (dir == PFIL_OUT), mp); +} + +# ifdef USE_INET6 +# include + +static int +fr_check_wrapper6(void *arg, struct mbuf **mp, struct ifnet *ifp, int dir, + struct inpcb *inp) +{ + return (fr_check(mtod(*mp, struct ip *), sizeof(struct ip6_hdr), + ifp, (dir == PFIL_OUT), mp)); +} +# endif +#endif /* __FreeBSD_version >= 600004 && _KERNEL */ #ifdef _KERNEL # if defined(IPFILTER_LKM) && !defined(__sgi) int iplidentify(s) ==== //depot/projects/hammer/sys/contrib/pf/net/pf.c#13 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/pf/net/pf.c,v 1.19 2004/09/11 11:18:25 mlaier Exp $ */ +/* $FreeBSD: src/sys/contrib/pf/net/pf.c,v 1.20 2004/09/29 04:54:32 mlaier Exp $ */ /* $OpenBSD: pf.c,v 1.433.2.2 2004/07/17 03:22:34 brad Exp $ */ /* add $OpenBSD: pf.c,v 1.448 2004/05/11 07:34:11 dhartmei Exp $ */ @@ -185,11 +185,19 @@ int pf_test_tcp(struct pf_rule **, struct pf_state **, int, struct pfi_kif *, struct mbuf *, int, void *, struct pf_pdesc *, struct pf_rule **, +#ifdef __FreeBSD__ + struct pf_ruleset **, struct inpcb *); +#else struct pf_ruleset **); +#endif int pf_test_udp(struct pf_rule **, struct pf_state **, int, struct pfi_kif *, struct mbuf *, int, void *, struct pf_pdesc *, struct pf_rule **, +#ifdef __FreeBSD__ + struct pf_ruleset **, struct inpcb *); +#else struct pf_ruleset **); +#endif int pf_test_icmp(struct pf_rule **, struct pf_state **, int, struct pfi_kif *, struct mbuf *, int, void *, struct pf_pdesc *, struct pf_rule **, @@ -229,8 +237,13 @@ struct ifnet *, struct pf_state *); void pf_route6(struct mbuf **, struct pf_rule *, int, struct ifnet *, struct pf_state *); +#ifdef __FreeBSD__ int pf_socket_lookup(uid_t *, gid_t *, + int, struct pf_pdesc *, struct inpcb *); +#else +int pf_socket_lookup(uid_t *, gid_t *, int, struct pf_pdesc *); +#endif u_int8_t pf_get_wscale(struct mbuf *, int, u_int16_t, sa_family_t); u_int16_t pf_get_mss(struct mbuf *, int, u_int16_t, @@ -2376,7 +2389,12 @@ } int +#ifdef __FreeBSD__ +pf_socket_lookup(uid_t *uid, gid_t *gid, int direction, struct pf_pdesc *pd, + struct inpcb *inp_arg) +#else pf_socket_lookup(uid_t *uid, gid_t *gid, int direction, struct pf_pdesc *pd) +#endif { struct pf_addr *saddr, *daddr; u_int16_t sport, dport; @@ -2389,6 +2407,17 @@ *uid = UID_MAX; *gid = GID_MAX; +#ifdef __FreeBSD__ + if (inp_arg != NULL) { + INP_LOCK_ASSERT(inp_arg); + if (inp_arg->inp_socket) { + *uid = inp_arg->inp_socket->so_cred->cr_uid; + *gid = inp_arg->inp_socket->so_cred->cr_groups[0]; + return (1); + } else + return (0); + } +#endif switch (pd->proto) { case IPPROTO_TCP: sport = pd->hdr.tcp->th_sport; @@ -2663,7 +2692,12 @@ int pf_test_tcp(struct pf_rule **rm, struct pf_state **sm, int direction, struct pfi_kif *kif, struct mbuf *m, int off, void *h, +#ifdef __FreeBSD__ + struct pf_pdesc *pd, struct pf_rule **am, struct pf_ruleset **rsm, + struct inpcb *inp) +#else struct pf_pdesc *pd, struct pf_rule **am, struct pf_ruleset **rsm) +#endif { struct pf_rule *nr = NULL; struct pf_addr *saddr = pd->src, *daddr = pd->dst; @@ -2742,12 +2776,20 @@ else if ((r->flagset & th->th_flags) != r->flags) r = TAILQ_NEXT(r, entries); else if (r->uid.op && (lookup != -1 || (lookup = +#ifdef __FreeBSD__ + pf_socket_lookup(&uid, &gid, direction, pd, inp), 1)) && +#else pf_socket_lookup(&uid, &gid, direction, pd), 1)) && +#endif !pf_match_uid(r->uid.op, r->uid.uid[0], r->uid.uid[1], uid)) r = TAILQ_NEXT(r, entries); else if (r->gid.op && (lookup != -1 || (lookup = +#ifdef __FreeBSD__ + pf_socket_lookup(&uid, &gid, direction, pd, inp), 1)) && +#else pf_socket_lookup(&uid, &gid, direction, pd), 1)) && +#endif !pf_match_gid(r->gid.op, r->gid.gid[0], r->gid.gid[1], gid)) r = TAILQ_NEXT(r, entries); @@ -3023,7 +3065,12 @@ int pf_test_udp(struct pf_rule **rm, struct pf_state **sm, int direction, struct pfi_kif *kif, struct mbuf *m, int off, void *h, +#ifdef __FreeBSD__ + struct pf_pdesc *pd, struct pf_rule **am, struct pf_ruleset **rsm, + struct inpcb *inp) +#else struct pf_pdesc *pd, struct pf_rule **am, struct pf_ruleset **rsm) +#endif { struct pf_rule *nr = NULL; struct pf_addr *saddr = pd->src, *daddr = pd->dst; @@ -3099,12 +3146,20 @@ else if (r->rule_flag & PFRULE_FRAGMENT) r = TAILQ_NEXT(r, entries); else if (r->uid.op && (lookup != -1 || (lookup = +#ifdef __FreeBSD__ + pf_socket_lookup(&uid, &gid, direction, pd, inp), 1)) && +#else pf_socket_lookup(&uid, &gid, direction, pd), 1)) && +#endif !pf_match_uid(r->uid.op, r->uid.uid[0], r->uid.uid[1], uid)) r = TAILQ_NEXT(r, entries); else if (r->gid.op && (lookup != -1 || (lookup = +#ifdef __FreeBSD__ + pf_socket_lookup(&uid, &gid, direction, pd, inp), 1)) && +#else pf_socket_lookup(&uid, &gid, direction, pd), 1)) && +#endif !pf_match_gid(r->gid.op, r->gid.gid[0], r->gid.gid[1], gid)) r = TAILQ_NEXT(r, entries); @@ -5229,7 +5284,7 @@ if (oifp != ifp) { #ifdef __FreeBSD__ PF_UNLOCK(); - if (pf_test(PF_OUT, ifp, &m0) != PF_PASS) { + if (pf_test(PF_OUT, ifp, &m0, NULL) != PF_PASS) { PF_LOCK(); goto bad; } else if (m0 == NULL) { @@ -5519,7 +5574,7 @@ if (oifp != ifp) { #ifdef __FreeBSD__ PF_UNLOCK(); - if (pf_test6(PF_OUT, ifp, &m0) != PF_PASS) { + if (pf_test6(PF_OUT, ifp, &m0, NULL) != PF_PASS) { PF_LOCK(); goto bad; } else if (m0 == NULL) { @@ -5811,7 +5866,11 @@ #ifdef INET int +#ifdef __FreeBSD__ +pf_test(int dir, struct ifnet *ifp, struct mbuf **m0, struct inpcb *inp) +#else pf_test(int dir, struct ifnet *ifp, struct mbuf **m0) +#endif { struct pfi_kif *kif; u_short action, reason = 0, log = 0; @@ -5925,8 +5984,13 @@ a = s->anchor.ptr; log = s->log; } else if (s == NULL) +#ifdef __FreeBSD__ + action = pf_test_tcp(&r, &s, dir, kif, + m, off, h, &pd, &a, &ruleset, inp); +#else action = pf_test_tcp(&r, &s, dir, kif, m, off, h, &pd, &a, &ruleset); +#endif break; } @@ -5959,8 +6023,13 @@ a = s->anchor.ptr; log = s->log; } else if (s == NULL) +#ifdef __FreeBSD__ action = pf_test_udp(&r, &s, dir, kif, + m, off, h, &pd, &a, &ruleset, inp); +#else + action = pf_test_udp(&r, &s, dir, kif, m, off, h, &pd, &a, &ruleset); +#endif break; } @@ -6137,7 +6206,11 @@ #ifdef INET6 int +#ifdef __FreeBSD__ +pf_test6(int dir, struct ifnet *ifp, struct mbuf **m0, struct inpcb *inp) +#else pf_test6(int dir, struct ifnet *ifp, struct mbuf **m0) +#endif { struct pfi_kif *kif; u_short action, reason = 0, log = 0; @@ -6274,8 +6347,13 @@ a = s->anchor.ptr; log = s->log; } else if (s == NULL) +#ifdef __FreeBSD__ + action = pf_test_tcp(&r, &s, dir, kif, + m, off, h, &pd, &a, &ruleset, inp); +#else action = pf_test_tcp(&r, &s, dir, kif, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Sep 30 01:13:34 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3FAED16A4D0; Thu, 30 Sep 2004 01:13:34 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1BD5516A4CE for ; Thu, 30 Sep 2004 01:13:34 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F090243D3F for ; Thu, 30 Sep 2004 01:13:33 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8U1DXoK015208 for ; Thu, 30 Sep 2004 01:13:33 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8U1DX2U015202 for perforce@freebsd.org; Thu, 30 Sep 2004 01:13:33 GMT (envelope-from peter@freebsd.org) Date: Thu, 30 Sep 2004 01:13:33 GMT Message-Id: <200409300113.i8U1DX2U015202@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 62423 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 30 Sep 2004 01:13:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=62423 Change 62423 by peter@peter_melody on 2004/09/30 01:13:25 timespec.h addition not needed.. revert. Affected files ... .. //depot/projects/hammer/lib/libkvm/kvm_proc.c#24 edit Differences ... ==== //depot/projects/hammer/lib/libkvm/kvm_proc.c#24 (text+ko) ==== @@ -62,7 +62,6 @@ #include #include #include -#include #include #include #include From owner-p4-projects@FreeBSD.ORG Thu Sep 30 01:54:30 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 484AC16A4CF; Thu, 30 Sep 2004 01:54:26 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A71A816A4D2 for ; Thu, 30 Sep 2004 01:54:23 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 738EC43D1D for ; Thu, 30 Sep 2004 01:54:23 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i8U1sNAQ016252 for ; Thu, 30 Sep 2004 01:54:23 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i8U1sN4T016249 for perforce@freebsd.org; Thu, 30 Sep 2004 01:54:23 GMT (envelope-from wsalamon@computer.org) Date: Thu, 30 Sep 2004 01:54:23 GMT Message-Id: <200409300154.i8U1sN4T016249@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Subject: PERFORCE change 62424 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 30 Sep 2004 01:54:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=62424 Change 62424 by wsalamon@wsalamon_epi on 2004/09/30 01:53:35 Implement the audit daemon trigger mechanism as a FIFO. Update the audit command to use this mechanism. Affected files ... .. //depot/projects/trustedbsd/audit3/contrib/audit_supt/audit/audit.c#3 edit .. //depot/projects/trustedbsd/audit3/contrib/audit_supt/auditd/auditd.c#4 edit .. //depot/projects/trustedbsd/audit3/contrib/audit_supt/auditd/auditd.h#3 edit .. //depot/projects/trustedbsd/audit3/sys/bsm/audit.h#5 edit Differences ... ==== //depot/projects/trustedbsd/audit3/contrib/audit_supt/audit/audit.c#3 (text+ko) ==== @@ -6,25 +6,14 @@ * */ -#include -#include -#include -#include -#include -#include -#include - -#include -#include - +#include #include +#include #include -#include +#include +#include +#include -mach_port_t serverPort; -mach_port_t bootstrapPort; - -void init(); void process(int flags); /* @@ -38,15 +27,15 @@ switch(ch) { case 'n': - flags = OPEN_NEW; + flags = AUDITD_TRIGGER_OPEN_NEW; break; case 's': - flags = READ_FILE; + flags = AUDITD_TRIGGER_READ_FILE; break; case 't': - flags = CLOSE_AND_DIE; + flags = AUDITD_TRIGGER_CLOSE_AND_DIE; break; case '?': @@ -56,36 +45,26 @@ exit(1); } } - init(); process(flags); return 0; } /* - * Program initialization: - * Look up the server port and store it away. - */ -void init() -{ - if(host_get_audit_control_port(mach_host_self(), &serverPort) != KERN_SUCCESS) { - fprintf(stderr, "Cannot get auditd_control\n"); - exit(1); - } - - printf("Server port is %d\n", serverPort); -} - -/* * Do all the real work. * Send a message to the audit daemon and check the return code. */ void process(int flags) { - kern_return_t retcode; - retcode = auditd_control(serverPort, flags); - if(retcode != KERN_SUCCESS) { - mach_error("error doing IPC: ", retcode); + int fd; + + fd = open(AUDITD_CTL_FILE, O_RDWR); + if (fd == -1) { + perror("error opening auditd control file"); exit(1); } + if (write(fd, &flags, sizeof(flags)) == -1) { + perror("error doing write: "); + exit(-1); + } printf("Client call successful\n"); } ==== //depot/projects/trustedbsd/audit3/contrib/audit_supt/auditd/auditd.c#4 (text+ko) ==== @@ -23,11 +23,11 @@ */ #include -#include #include #include #include #include +#include #include #include @@ -51,6 +51,7 @@ static char *lastfile = NULL; static int allhardcount = 0; +static int controlfd = 0; TAILQ_HEAD(, dir_ent) dir_q; @@ -380,54 +381,39 @@ } /* - * React to input from the audit tool + * Signal handler for the SIGIO signal for events on the auditd control file. */ -int auditd_control(int flags) +static void sigio_handler(int sig) { - int err_ret = 0; + int num; + int trigger; - switch(flags) { - - case OPEN_NEW : - /* create a new file and swap with the one being used in kernel */ - if(swap_audit_file() == -1) { - syslog(LOG_ERR, "Error swapping audit file\n"); - } - break; - - case READ_FILE : - if(read_control_file() == -1) { - syslog(LOG_ERR, "Error in audit control file\n"); - } - break; - - case CLOSE_AND_DIE : - err_ret = close_all(); - exit (err_ret); - break; - - default : - break; + num = read(controlfd, &trigger, sizeof(trigger)); + if ((num == -1) && (errno != EINTR)) { + syslog(LOG_ERR, "sigio_handler(): error %d\n", errno); + return; + } + if (num == 0) { + syslog(LOG_INFO, "sigio_handler(): read EOF\n"); + return; } + syslog(LOG_INFO, "sigio_handler(): read %d\n", trigger); + handle_auditd_trigger(trigger); +} - return 0; -} /* - * XXX This routine will eventually handle kernel messages to rotate the - * audit log, etc. - */ -/* * Suppress duplicate messages within a 30 second interval. * This should be enough to time to rotate log files without * thrashing from soft warnings generated before the log is * actually rotated. */ #define DUPLICATE_INTERVAL 30 -int audit_triggers(int flags) +int handle_auditd_trigger(int flags) { static int last_flags; static time_t last_time; struct dir_ent *dirent; + int rc; /* * Suppres duplicate messages from the kernel within the specified @@ -447,13 +433,15 @@ } syslog(LOG_INFO, - "audit_triggers() called within auditd with flags = %d\n", + "handle_audit_trigger() called within auditd with flags = %d\n", flags); /* * XXX Message processing is done here */ dirent = TAILQ_FIRST(&dir_q); - if(flags == AUDIT_TRIGGER_LOW_SPACE) { + switch(flags) { + + case AUDITD_TRIGGER_LOW_SPACE: if(dirent && (dirent->softlim != 1)) { TAILQ_REMOVE(&dir_q, dirent, dirs); /* add this node to the end of the list */ @@ -483,8 +471,8 @@ */ audit_warn_allsoft(); } - } - else if (flags == AUDIT_TRIGGER_FILE_FULL) { + break; + case AUDITD_TRIGGER_FILE_FULL: /* delete current dir, go on to next */ TAILQ_REMOVE(&dir_q, dirent, dirs); @@ -493,11 +481,34 @@ free(dirent); if(swap_audit_file() == -1) { - syslog(LOG_ERR, "Error swapping audit file in response to AUDIT_TRIGGER_FILE_FULL message\n"); + syslog(LOG_ERR, "Error swapping audit file in " + "response to AUDITD_TRIGGER_FILE_FULL message\n"); /* Nowhere to write to */ audit_warn_allhard(++allhardcount); } + break; + case AUDITD_TRIGGER_OPEN_NEW : + /* create a new file and swap with the one being + * used in kernel */ + if(swap_audit_file() == -1) { + syslog(LOG_ERR, "Error swapping audit file\n"); + } + break; + + case AUDITD_TRIGGER_READ_FILE : + if(read_control_file() == -1) { + syslog(LOG_ERR, "Error in audit control file\n"); + } + break; + + case AUDITD_TRIGGER_CLOSE_AND_DIE : + rc = close_all(); + exit (rc); + break; + + default : + break; } return 0; } @@ -596,10 +607,63 @@ return 0; } +/* + * Configure the IPC mechanism for receiving messages from the kernel + * concerning audit control events. + */ int config_auditd_ipc() { - int fd; + int rc; + struct stat sb; + + rc = mkfifo(AUDITD_CTL_FILE, S_IRUSR | S_IWUSR); + if ((rc != 0) && (errno != EEXIST)) { + syslog(LOG_ERR, + "config_auditd_ipc() : error creating FIFO\n"); + return rc; + } + + rc = stat(AUDITD_CTL_FILE, &sb); + if ((rc != 0) || ((sb.st_mode & S_IFIFO) == 0)) { + syslog(LOG_ERR, + "config_auditd_ipc() : error stat of FIFO\n"); + return rc; + } + + /* Tell the kernel the name of the auditd control file */ + /*else if (auditctl(AC_SETCTLFILE, fn, strlen(fn)) != 0) { */ + if (syscall(SYS_auditctl, AC_SETCTLFILE, AUDITD_CTL_FILE, + strlen(AUDITD_CTL_FILE)) != 0) { + syslog(LOG_ERR, + "config_auditd_ipc() : failed sending control file " + " name to the kernel: %s\n", + strerror(errno)); + } + /* Set up the signal hander */ + if (signal(SIGIO, sigio_handler) == SIG_ERR) { + syslog(LOG_ERR, + "config_auditd_ipc() : error setting up signal handler\n"); + return -1; + } + + controlfd = open(AUDITD_CTL_FILE, O_RDONLY); + if (controlfd < 0) { + syslog(LOG_ERR, + "config_auditd_ipc() : error opening control file\n"); + return -1; + } + if (fcntl(controlfd, F_SETOWN, getpid())) { + syslog(LOG_ERR, + "config_auditd_ipc() : error setting file ownership\n"); + return -1; + } + if (fcntl(controlfd, F_SETFL, O_ASYNC)) { + syslog(LOG_ERR, + "config_auditd_ipc() : error setting file ASYNC\n"); + return -1; + } + return 0; } void setup(long flags) @@ -634,12 +698,11 @@ syslog(LOG_INFO, "Audit controls init failed\n"); if (config_auditd_ipc() == 0) - syslog(LOG_INFO, "auditd control socket created\n"); + syslog(LOG_INFO, "auditd control created\n"); else - syslog(LOG_INFO, "auditd control socket not created\n"); + syslog(LOG_ERR, "auditd control not created\n"); } - int main(int argc, char **argv) { char ch; @@ -686,6 +749,9 @@ } setup(flags); + while(1) + sleep(32768); + syslog(LOG_INFO, "exiting.\n"); exit(1); ==== //depot/projects/trustedbsd/audit3/contrib/audit_supt/auditd/auditd.h#3 (text+ko) ==== @@ -7,7 +7,6 @@ #define MAX_DIR_SIZE 255 #define AUDITD_NAME "auditd" -#define AUDITD_SOCK_FILE "/etc/security/auditd_control" #define POSTFIX_LEN 16 #define NOT_TERMINATED ".not_terminated" @@ -18,11 +17,6 @@ TAILQ_ENTRY(dir_ent) dirs; }; -/* audit utility flags */ -#define OPEN_NEW 0x1 -#define READ_FILE 0x2 -#define CLOSE_AND_DIE 0x4 - #define HARDLIM_ALL_WARN "allhard" #define SOFTLIM_ALL_WARN "allsoft" #define AUDITOFF_WARN "aditoff" ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit.h#5 (text+ko) ==== @@ -36,11 +36,19 @@ #define MAX_AUDIT_RECORD_SIZE 4096 #define MIN_AUDIT_FILE_SIZE 512 * 1024 +/* + * Control FIFO for the audit daemon + */ +#define AUDITD_CTL_FILE "/etc/security/auditd_control" + /* * Triggers for the audit daemon */ -#define AUDIT_TRIGGER_LOW_SPACE 1 -#define AUDIT_TRIGGER_FILE_FULL 2 +#define AUDITD_TRIGGER_LOW_SPACE 1 +#define AUDITD_TRIGGER_FILE_FULL 2 +#define AUDITD_TRIGGER_OPEN_NEW 3 +#define AUDITD_TRIGGER_READ_FILE 4 +#define AUDITD_TRIGGER_CLOSE_AND_DIE 5 /* * Pre-defined audit IDs @@ -157,7 +165,7 @@ * auditctl(2) commands */ #define AC_SETLOGFILE 1 -#define AC_SETCTLFD 2 +#define AC_SETCTLFILE 2 __BEGIN_DECLS From owner-p4-projects@FreeBSD.ORG Fri Oct 1 14:25:43 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 02D1316A50E; Fri, 1 Oct 2004 14:25:42 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9881116A526 for ; Fri, 1 Oct 2004 14:25:42 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 47E8743D2F for ; Fri, 1 Oct 2004 14:25:42 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i91EPgqw017709 for ; Fri, 1 Oct 2004 14:25:42 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i91EPeQE017705 for perforce@freebsd.org; Fri, 1 Oct 2004 14:25:40 GMT (envelope-from jhb@freebsd.org) Date: Fri, 1 Oct 2004 14:25:40 GMT Message-Id: <200410011425.i91EPeQE017705@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 62507 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 01 Oct 2004 14:25:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=62507 Change 62507 by jhb@jhb_slimer on 2004/10/01 14:25:19 IFC @62506. Affected files ... .. //depot/projects/smpng/sys/amd64/amd64/bios.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#30 integrate .. //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#14 integrate .. //depot/projects/smpng/sys/amd64/amd64/mptable.c#5 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#35 integrate .. //depot/projects/smpng/sys/amd64/include/pc/bios.h#1 branch .. //depot/projects/smpng/sys/amd64/include/pmap.h#15 integrate .. //depot/projects/smpng/sys/arm/arm/bcopyinout.S#2 integrate .. //depot/projects/smpng/sys/arm/arm/busdma_machdep.c#4 integrate .. //depot/projects/smpng/sys/arm/arm/cpufunc.c#3 integrate .. //depot/projects/smpng/sys/arm/arm/db_trace.c#6 integrate .. //depot/projects/smpng/sys/arm/arm/elf_machdep.c#4 integrate .. //depot/projects/smpng/sys/arm/arm/exception.S#3 integrate .. //depot/projects/smpng/sys/arm/arm/fusu.S#2 integrate .. //depot/projects/smpng/sys/arm/arm/genassym.c#2 integrate .. //depot/projects/smpng/sys/arm/arm/identcpu.c#2 integrate .. //depot/projects/smpng/sys/arm/arm/intr.c#3 integrate .. //depot/projects/smpng/sys/arm/arm/irq_dispatch.S#2 integrate .. //depot/projects/smpng/sys/arm/arm/locore.S#3 integrate .. //depot/projects/smpng/sys/arm/arm/machdep.c#5 integrate .. //depot/projects/smpng/sys/arm/arm/nexus_io.c#3 integrate .. //depot/projects/smpng/sys/arm/arm/pmap.c#8 integrate .. //depot/projects/smpng/sys/arm/arm/support.S#4 integrate .. //depot/projects/smpng/sys/arm/arm/swtch.S#2 integrate .. //depot/projects/smpng/sys/arm/arm/sys_machdep.c#3 integrate .. //depot/projects/smpng/sys/arm/arm/trap.c#2 integrate .. //depot/projects/smpng/sys/arm/arm/uio_machdep.c#3 integrate .. //depot/projects/smpng/sys/arm/arm/vm_machdep.c#4 integrate .. //depot/projects/smpng/sys/arm/conf/IQ31244#1 branch .. //depot/projects/smpng/sys/arm/conf/SIMICS#2 integrate .. //depot/projects/smpng/sys/arm/include/asm.h#2 integrate .. //depot/projects/smpng/sys/arm/include/asmacros.h#2 integrate .. //depot/projects/smpng/sys/arm/include/bus.h#3 integrate .. //depot/projects/smpng/sys/arm/include/intr.h#2 integrate .. //depot/projects/smpng/sys/arm/include/md_var.h#2 integrate .. //depot/projects/smpng/sys/arm/include/param.h#5 integrate .. //depot/projects/smpng/sys/arm/include/pcb.h#4 integrate .. //depot/projects/smpng/sys/arm/include/pmap.h#4 integrate .. //depot/projects/smpng/sys/arm/include/profile.h#5 integrate .. //depot/projects/smpng/sys/arm/include/pte.h#2 integrate .. //depot/projects/smpng/sys/arm/include/signal.h#5 integrate .. //depot/projects/smpng/sys/arm/include/sysarch.h#1 branch .. //depot/projects/smpng/sys/arm/include/vmparam.h#3 integrate .. //depot/projects/smpng/sys/arm/sa11x0/assabet_machdep.c#4 integrate .. //depot/projects/smpng/sys/arm/sa11x0/sa11x0.c#4 integrate .. //depot/projects/smpng/sys/arm/sa11x0/sa11x0_io.c#3 integrate .. //depot/projects/smpng/sys/arm/sa11x0/sa11x0_irq.S#2 integrate .. //depot/projects/smpng/sys/arm/sa11x0/sa11x0_irqhandler.c#2 integrate .. //depot/projects/smpng/sys/arm/sa11x0/std.sa11x0#2 integrate .. //depot/projects/smpng/sys/arm/xscale/i80321/files.i80321#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/files.iq31244#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_intr.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_mcu.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_pci.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_space.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_timer.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321reg.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/i80321var.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/iq31244_machdep.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/iq80321.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/iq80321reg.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/iq80321var.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/obio.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/obio_space.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/obiovar.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/std.i80321#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/std.iq31244#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/uart_bus_i80321.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/i80321/uart_cpu_i80321.c#1 branch .. //depot/projects/smpng/sys/arm/xscale/xscalereg.h#1 branch .. //depot/projects/smpng/sys/arm/xscale/xscalevar.h#1 branch .. //depot/projects/smpng/sys/boot/common/commands.c#5 integrate .. //depot/projects/smpng/sys/boot/common/help.common#14 integrate .. //depot/projects/smpng/sys/boot/common/loader.8#30 integrate .. //depot/projects/smpng/sys/boot/forth/loader.4th.8#7 integrate .. //depot/projects/smpng/sys/boot/forth/loader.conf#29 integrate .. //depot/projects/smpng/sys/boot/forth/loader.conf.5#8 integrate .. //depot/projects/smpng/sys/boot/i386/loader/help.i386#5 integrate .. //depot/projects/smpng/sys/boot/ia64/Makefile#3 integrate .. //depot/projects/smpng/sys/boot/ia64/libski/Makefile#8 delete .. //depot/projects/smpng/sys/boot/ia64/libski/acpi_stub.c#4 delete .. //depot/projects/smpng/sys/boot/ia64/libski/bootinfo.c#6 delete .. //depot/projects/smpng/sys/boot/ia64/libski/copy.c#4 delete .. //depot/projects/smpng/sys/boot/ia64/libski/delay.c#3 delete .. //depot/projects/smpng/sys/boot/ia64/libski/devicename.c#3 delete .. //depot/projects/smpng/sys/boot/ia64/libski/efi_stub.c#3 delete .. //depot/projects/smpng/sys/boot/ia64/libski/elf_freebsd.c#9 delete .. //depot/projects/smpng/sys/boot/ia64/libski/exit.c#3 delete .. //depot/projects/smpng/sys/boot/ia64/libski/libski.h#4 delete .. //depot/projects/smpng/sys/boot/ia64/libski/module.c#4 delete .. //depot/projects/smpng/sys/boot/ia64/libski/pal_stub.S#3 delete .. //depot/projects/smpng/sys/boot/ia64/libski/sal_stub.c#3 delete .. //depot/projects/smpng/sys/boot/ia64/libski/skiconsole.c#3 delete .. //depot/projects/smpng/sys/boot/ia64/libski/skifs.c#3 delete .. //depot/projects/smpng/sys/boot/ia64/libski/ssc.c#4 delete .. //depot/projects/smpng/sys/boot/ia64/libski/time.c#5 delete .. //depot/projects/smpng/sys/boot/ia64/ski/Makefile#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/acpi_stub.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/bootinfo.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/conf.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/copy.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/delay.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/devicename.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/efi_stub.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/elf_freebsd.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/exit.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/ldscript.ia64#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/libski.h#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/main.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/pal_stub.S#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/sal_stub.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/skiconsole.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/skifs.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/skiload.cmd#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/ssc.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/start.S#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/time.c#1 branch .. //depot/projects/smpng/sys/boot/ia64/ski/version#1 branch .. //depot/projects/smpng/sys/boot/ia64/skiload/Makefile#11 delete .. //depot/projects/smpng/sys/boot/ia64/skiload/conf.c#4 delete .. //depot/projects/smpng/sys/boot/ia64/skiload/ldscript.ia64#3 delete .. //depot/projects/smpng/sys/boot/ia64/skiload/main.c#5 delete .. //depot/projects/smpng/sys/boot/ia64/skiload/skiload.cmd#2 delete .. //depot/projects/smpng/sys/boot/ia64/skiload/start.S#3 delete .. //depot/projects/smpng/sys/boot/ia64/skiload/version#3 delete .. //depot/projects/smpng/sys/boot/pc98/loader/help.pc98#2 integrate .. //depot/projects/smpng/sys/compat/linux/linux_stats.c#20 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#33 integrate .. //depot/projects/smpng/sys/conf/Makefile.arm#3 integrate .. //depot/projects/smpng/sys/conf/files#123 integrate .. //depot/projects/smpng/sys/conf/files.amd64#23 integrate .. //depot/projects/smpng/sys/conf/files.ia64#45 integrate .. //depot/projects/smpng/sys/conf/kern.pre.mk#39 integrate .. //depot/projects/smpng/sys/conf/ldscript.arm#2 integrate .. //depot/projects/smpng/sys/conf/majors#41 integrate .. //depot/projects/smpng/sys/conf/options.arm#2 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil.c#17 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf.c#10 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_ioctl.c#10 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pfvar.h#6 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#22 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#61 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.h#31 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#44 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#44 integrate .. //depot/projects/smpng/sys/dev/ata/ata-lowlevel.c#20 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.c#49 integrate .. //depot/projects/smpng/sys/dev/ata/ata-queue.c#19 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#46 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#24 integrate .. //depot/projects/smpng/sys/dev/dcons/dcons.c#6 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#36 integrate .. //depot/projects/smpng/sys/dev/em/if_em_hw.c#14 integrate .. //depot/projects/smpng/sys/dev/fb/vga.c#18 integrate .. //depot/projects/smpng/sys/dev/fdc/fdc.c#10 integrate .. //depot/projects/smpng/sys/dev/fdc/fdc_acpi.c#6 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#22 integrate .. //depot/projects/smpng/sys/dev/mii/miidevs#14 integrate .. //depot/projects/smpng/sys/dev/musycc/musycc.c#10 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#42 integrate .. //depot/projects/smpng/sys/dev/re/if_re.c#16 integrate .. //depot/projects/smpng/sys/dev/snp/snp.c#18 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ich.c#30 integrate .. //depot/projects/smpng/sys/dev/syscons/scvgarndr.c#6 integrate .. //depot/projects/smpng/sys/dev/syscons/syscons.c#43 integrate .. //depot/projects/smpng/sys/dev/usb/ucom.c#21 integrate .. //depot/projects/smpng/sys/dev/usb/ucomvar.h#6 integrate .. //depot/projects/smpng/sys/dev/usb/ugen.c#27 integrate .. //depot/projects/smpng/sys/dev/usb/usb_port.h#21 integrate .. //depot/projects/smpng/sys/dev/usb/usb_subr.c#26 integrate .. //depot/projects/smpng/sys/fs/devfs/devfs_rule.c#9 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_dbregs.c#14 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_fpregs.c#14 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_regs.c#14 integrate .. //depot/projects/smpng/sys/fs/specfs/spec_vnops.c#39 integrate .. //depot/projects/smpng/sys/geom/geom_dev.c#37 integrate .. //depot/projects/smpng/sys/geom/geom_io.c#33 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#7 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.h#3 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.c#5 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.h#3 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_init.c#5 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_list.c#2 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_plex.c#7 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_raid5.c#5 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_raid5.h#4 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_var.h#3 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_extern.h#9 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_readwrite.c#8 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_vfsops.c#36 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_vnops.c#24 integrate .. //depot/projects/smpng/sys/i386/i386/mptable.c#12 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#73 integrate .. //depot/projects/smpng/sys/i386/include/pmap.h#24 integrate .. //depot/projects/smpng/sys/i386/linux/linux_ptrace.c#10 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_trap.c#1 branch .. //depot/projects/smpng/sys/ia64/ia64/exception.S#9 integrate .. //depot/projects/smpng/sys/ia64/ia64/genassym.c#25 integrate .. //depot/projects/smpng/sys/ia64/ia64/trap.c#69 integrate .. //depot/projects/smpng/sys/ia64/include/md_var.h#17 integrate .. //depot/projects/smpng/sys/isa/psm.c#30 integrate .. //depot/projects/smpng/sys/isa/syscons_isa.c#9 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_vfsops.c#31 integrate .. //depot/projects/smpng/sys/kern/imgact_elf.c#40 integrate .. //depot/projects/smpng/sys/kern/kern_conf.c#32 integrate .. //depot/projects/smpng/sys/kern/kern_exit.c#85 integrate .. //depot/projects/smpng/sys/kern/kern_fork.c#85 integrate .. //depot/projects/smpng/sys/kern/kern_malloc.c#31 integrate .. //depot/projects/smpng/sys/kern/kern_resource.c#51 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#97 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#68 integrate .. //depot/projects/smpng/sys/kern/subr_kdb.c#6 integrate .. //depot/projects/smpng/sys/kern/subr_unit.c#1 branch .. //depot/projects/smpng/sys/kern/tty.c#48 integrate .. //depot/projects/smpng/sys/kern/tty_cons.c#30 integrate .. //depot/projects/smpng/sys/kern/uipc_mbuf.c#31 integrate .. //depot/projects/smpng/sys/kern/vfs_aio.c#51 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#69 integrate .. //depot/projects/smpng/sys/kern/vfs_cluster.c#33 integrate .. //depot/projects/smpng/sys/kern/vfs_default.c#28 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#34 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#84 integrate .. //depot/projects/smpng/sys/kern/vfs_vnops.c#51 integrate .. //depot/projects/smpng/sys/modules/mem/Makefile#2 integrate .. //depot/projects/smpng/sys/net/bridge.c#30 integrate .. //depot/projects/smpng/sys/net/pfil.c#6 integrate .. //depot/projects/smpng/sys/net/pfil.h#7 integrate .. //depot/projects/smpng/sys/netinet/in_pcb.c#49 integrate .. //depot/projects/smpng/sys/netinet/ip_fastfwd.c#11 integrate .. //depot/projects/smpng/sys/netinet/ip_fw.h#23 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#41 integrate .. //depot/projects/smpng/sys/netinet/ip_fw_pfil.c#5 integrate .. //depot/projects/smpng/sys/netinet/ip_input.c#59 integrate .. //depot/projects/smpng/sys/netinet/ip_output.c#66 integrate .. //depot/projects/smpng/sys/netinet6/ip6_forward.c#12 integrate .. //depot/projects/smpng/sys/netinet6/ip6_input.c#36 integrate .. //depot/projects/smpng/sys/netinet6/ip6_output.c#35 integrate .. //depot/projects/smpng/sys/netipsec/ipsec.c#9 integrate .. //depot/projects/smpng/sys/netipsec/key.c#13 integrate .. //depot/projects/smpng/sys/netipsec/key.h#3 integrate .. //depot/projects/smpng/sys/netkey/key.c#26 integrate .. //depot/projects/smpng/sys/nfs4client/nfs4_vnops.c#8 integrate .. //depot/projects/smpng/sys/nfsclient/nfs.h#20 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_bio.c#32 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_subs.c#21 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#42 integrate .. //depot/projects/smpng/sys/nfsclient/nfsnode.h#9 integrate .. //depot/projects/smpng/sys/pci/if_dc.c#60 integrate .. //depot/projects/smpng/sys/pci/if_rlreg.h#21 integrate .. //depot/projects/smpng/sys/pci/if_xl.c#50 integrate .. //depot/projects/smpng/sys/powerpc/powermac/uninorth.c#7 integrate .. //depot/projects/smpng/sys/powerpc/powermac/uninorthvar.h#3 integrate .. //depot/projects/smpng/sys/sparc64/include/smp.h#14 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/counter.c#4 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/machdep.c#66 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/mp_machdep.c#23 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/rwindow.c#8 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/vm_machdep.c#42 integrate .. //depot/projects/smpng/sys/sys/buf.h#30 integrate .. //depot/projects/smpng/sys/sys/conf.h#33 integrate .. //depot/projects/smpng/sys/sys/mbuf.h#44 integrate .. //depot/projects/smpng/sys/sys/param.h#72 integrate .. //depot/projects/smpng/sys/sys/proc.h#129 integrate .. //depot/projects/smpng/sys/sys/syscallsubr.h#10 integrate .. //depot/projects/smpng/sys/sys/systm.h#56 integrate .. //depot/projects/smpng/sys/sys/tty.h#17 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_extern.h#14 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#59 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vnops.c#33 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_extern.h#14 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_vnops.c#40 integrate .. //depot/projects/smpng/sys/vm/device_pager.c#18 integrate .. //depot/projects/smpng/sys/vm/swap_pager.c#49 integrate .. //depot/projects/smpng/sys/vm/vm_mmap.c#49 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/amd64/machdep.c#30 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.620 2004/09/05 02:09:52 julian Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.621 2004/09/24 01:11:11 peter Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -111,6 +111,7 @@ #include #include #include +#include #include #include #ifdef PERFMON @@ -798,12 +799,6 @@ #define PHYSMAP_SIZE (2 * 8) -struct bios_smap { - u_int64_t base; - u_int64_t length; - u_int32_t type; -} __packed; - u_int basemem; /* ==== //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#14 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.246 2004/09/01 06:42:01 julian Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.247 2004/09/29 01:59:10 peter Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -539,12 +539,14 @@ u_int32_t mpbioswarmvec; int apic_id, cpu, i; u_int64_t *pt4, *pt3, *pt2; + vm_offset_t va = boot_address + KERNBASE; mtx_init(&ap_boot_mtx, "ap boot", NULL, MTX_SPIN); /* install the AP 1st level boot code */ - pmap_kenter(boot_address + KERNBASE, boot_address); - bcopy(mptramp_start, (void *)((uintptr_t)boot_address + KERNBASE), bootMP_size); + pmap_kenter(va, boot_address); + pmap_invalidate_page(kernel_pmap, va); + bcopy(mptramp_start, (void *)va, bootMP_size); /* Locate the page tables, they'll be below the trampoline */ pt4 = (u_int64_t *)(uintptr_t)(mptramp_pagetables + KERNBASE); ==== //depot/projects/smpng/sys/amd64/amd64/mptable.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.232 2004/07/08 01:42:49 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.233 2004/09/29 01:58:24 peter Exp $"); #include #include @@ -928,7 +928,9 @@ if (args->vector == vector) return; KASSERT(args->vector == -1, - ("Multiple entries for PCI IRQ %d", args->vector)); + ("Multiple IRQs for PCI interrupt %d.%d.INT%c: %d and %d\n", + args->bus, args->irq >> 2, 'A' + (args->irq & 0x3), args->vector, + vector)); args->vector = vector; } ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#35 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.502 2004/09/22 05:01:48 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.503 2004/09/29 19:20:39 alc Exp $"); /* * Manages physical address maps. @@ -110,6 +110,7 @@ #include #include #include +#include #include #include #include @@ -212,9 +213,9 @@ vm_offset_t va, pd_entry_t ptepde); static void pmap_insert_entry(pmap_t pmap, vm_offset_t va, vm_page_t m); -static vm_page_t pmap_allocpte(pmap_t pmap, vm_offset_t va); +static vm_page_t pmap_allocpte(pmap_t pmap, vm_offset_t va, int flags); -static vm_page_t _pmap_allocpte(pmap_t pmap, vm_pindex_t ptepindex); +static vm_page_t _pmap_allocpte(pmap_t pmap, vm_pindex_t ptepindex, int flags); static int _pmap_unwire_pte_hold(pmap_t pmap, vm_offset_t va, vm_page_t m); static int pmap_unuse_pt(pmap_t, vm_offset_t, pd_entry_t); static vm_offset_t pmap_kmem_choose(vm_offset_t addr); @@ -1101,22 +1102,26 @@ * race conditions. */ static vm_page_t -_pmap_allocpte(pmap, ptepindex) - pmap_t pmap; - vm_pindex_t ptepindex; +_pmap_allocpte(pmap_t pmap, vm_pindex_t ptepindex, int flags) { vm_page_t m, pdppg, pdpg; + KASSERT((flags & (M_NOWAIT | M_WAITOK)) == M_NOWAIT || + (flags & (M_NOWAIT | M_WAITOK)) == M_WAITOK, + ("_pmap_allocpte: flags is neither M_NOWAIT nor M_WAITOK")); + /* * Allocate a page table page. */ if ((m = vm_page_alloc(NULL, ptepindex, VM_ALLOC_NOOBJ | VM_ALLOC_WIRED | VM_ALLOC_ZERO)) == NULL) { - PMAP_UNLOCK(pmap); - vm_page_unlock_queues(); - VM_WAIT; - vm_page_lock_queues(); - PMAP_LOCK(pmap); + if (flags & M_WAITOK) { + PMAP_UNLOCK(pmap); + vm_page_unlock_queues(); + VM_WAIT; + vm_page_lock_queues(); + PMAP_LOCK(pmap); + } /* * Indicate the need to retry. While waiting, the page table @@ -1156,7 +1161,8 @@ pml4 = &pmap->pm_pml4[pml4index]; if ((*pml4 & PG_V) == 0) { /* Have to allocate a new pdp, recurse */ - if (_pmap_allocpte(pmap, NUPDE + NUPDPE + pml4index) == NULL) { + if (_pmap_allocpte(pmap, NUPDE + NUPDPE + pml4index, + flags) == NULL) { --m->wire_count; vm_page_free(m); return (NULL); @@ -1187,7 +1193,8 @@ pml4 = &pmap->pm_pml4[pml4index]; if ((*pml4 & PG_V) == 0) { /* Have to allocate a new pd, recurse */ - if (_pmap_allocpte(pmap, NUPDE + pdpindex) == NULL) { + if (_pmap_allocpte(pmap, NUPDE + pdpindex, + flags) == NULL) { --m->wire_count; vm_page_free(m); return (NULL); @@ -1199,7 +1206,8 @@ pdp = &pdp[pdpindex & ((1ul << NPDPEPGSHIFT) - 1)]; if ((*pdp & PG_V) == 0) { /* Have to allocate a new pd, recurse */ - if (_pmap_allocpte(pmap, NUPDE + pdpindex) == NULL) { + if (_pmap_allocpte(pmap, NUPDE + pdpindex, + flags) == NULL) { --m->wire_count; vm_page_free(m); return (NULL); @@ -1221,12 +1229,16 @@ } static vm_page_t -pmap_allocpte(pmap_t pmap, vm_offset_t va) +pmap_allocpte(pmap_t pmap, vm_offset_t va, int flags) { vm_pindex_t ptepindex; pd_entry_t *pd; vm_page_t m; + KASSERT((flags & (M_NOWAIT | M_WAITOK)) == M_NOWAIT || + (flags & (M_NOWAIT | M_WAITOK)) == M_WAITOK, + ("pmap_allocpte: flags is neither M_NOWAIT nor M_WAITOK")); + /* * Calculate pagetable page index */ @@ -1259,8 +1271,8 @@ * Here if the pte page isn't mapped, or if it has been * deallocated. */ - m = _pmap_allocpte(pmap, ptepindex); - if (m == NULL) + m = _pmap_allocpte(pmap, ptepindex, flags); + if (m == NULL && (flags & M_WAITOK)) goto retry; } return (m); @@ -1848,7 +1860,7 @@ * resident, we are creating it here. */ if (va < VM_MAXUSER_ADDRESS) { - mpte = pmap_allocpte(pmap, va); + mpte = pmap_allocpte(pmap, va, M_WAITOK); } #if 0 && defined(PMAP_DIAGNOSTIC) else { @@ -2029,7 +2041,8 @@ mpte = PHYS_TO_VM_PAGE(*ptepa & PG_FRAME); mpte->wire_count++; } else { - mpte = _pmap_allocpte(pmap, ptepindex); + mpte = _pmap_allocpte(pmap, ptepindex, + M_WAITOK); if (mpte == NULL) goto retry; } @@ -2224,7 +2237,13 @@ return; vm_page_lock_queues(); - PMAP_LOCK(dst_pmap); + if (dst_pmap < src_pmap) { + PMAP_LOCK(dst_pmap); + PMAP_LOCK(src_pmap); + } else { + PMAP_LOCK(src_pmap); + PMAP_LOCK(dst_pmap); + } for (addr = src_addr; addr < end_addr; addr = va_next) { pt_entry_t *src_pte, *dst_pte; vm_page_t dstmpte, srcmpte; @@ -2303,9 +2322,12 @@ * pte still being around... allocpte can * block. */ - dstmpte = pmap_allocpte(dst_pmap, addr); + dstmpte = pmap_allocpte(dst_pmap, addr, + M_NOWAIT); + if (dstmpte == NULL) + break; dst_pte = pmap_pte(dst_pmap, addr); - if ((*dst_pte == 0) && (ptetemp = *src_pte)) { + if (*dst_pte == 0) { /* * Clear the modified and * accessed (referenced) bits @@ -2325,6 +2347,7 @@ } } vm_page_unlock_queues(); + PMAP_UNLOCK(src_pmap); PMAP_UNLOCK(dst_pmap); } ==== //depot/projects/smpng/sys/amd64/include/pmap.h#15 (text+ko) ==== @@ -39,7 +39,7 @@ * * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.123 2004/09/11 01:31:26 scottl Exp $ + * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.124 2004/09/29 19:20:39 alc Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -240,7 +240,7 @@ mtx_assert(&(pmap)->pm_mtx, (type)) #define PMAP_LOCK_DESTROY(pmap) mtx_destroy(&(pmap)->pm_mtx) #define PMAP_LOCK_INIT(pmap) mtx_init(&(pmap)->pm_mtx, "pmap", \ - NULL, MTX_DEF) + NULL, MTX_DEF | MTX_DUPOK) #define PMAP_LOCKED(pmap) mtx_owned(&(pmap)->pm_mtx) #define PMAP_MTX(pmap) (&(pmap)->pm_mtx) #define PMAP_TRYLOCK(pmap) mtx_trylock(&(pmap)->pm_mtx) ==== //depot/projects/smpng/sys/arm/arm/bcopyinout.S#2 (text+ko) ==== @@ -40,9 +40,9 @@ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/bcopyinout.S,v 1.1 2004/05/14 11:46:42 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/bcopyinout.S,v 1.2 2004/09/23 21:56:36 cognet Exp $"); #ifdef __XSCALE__ -#include "bcopyinout_xscale.S" +#include #else .text ==== //depot/projects/smpng/sys/arm/arm/busdma_machdep.c#4 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.3 2004/09/08 04:54:18 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.4 2004/09/23 21:57:47 cognet Exp $"); /* * MacPPC bus dma support routines @@ -79,19 +79,18 @@ */ struct arm32_dma_range *ranges; int _nranges; - }; -struct arm_seglist { - bus_dma_segment_t seg; - SLIST_ENTRY(arm_seglist) next; -}; - -#define MAX_SEGS 512 +#define DMAMAP_LINEAR 0x1 +#define DMAMAP_MBUF 0x2 +#define DMAMAP_UIO 0x4 +#define DMAMAP_TYPE_MASK (DMAMAP_LINEAR|DMAMAP_MBUF|DMAMAP_UIO) +#define DMAMAP_COHERENT 0x8 struct bus_dmamap { - bus_dma_tag_t dmat; - int flags; - SLIST_HEAD(, arm_seglist) seglist; + bus_dma_tag_t dmat; + int flags; + void *buffer; + int len; }; /* @@ -103,6 +102,7 @@ bus_dmamap_t map, void *buf, bus_size_t buflen, struct thread *td, int flags, vm_offset_t *lastaddrp, int *segp, int first); + static __inline struct arm32_dma_range * _bus_dma_inrange(struct arm32_dma_range *ranges, int nranges, bus_addr_t curaddr) @@ -161,6 +161,8 @@ /* * Allocate a device specific dma_tag. */ +#define SEG_NB 1024 + int bus_dma_tag_create(bus_dma_tag_t parent, bus_size_t alignment, bus_size_t boundary, bus_addr_t lowaddr, @@ -171,7 +173,6 @@ { bus_dma_tag_t newtag; int error = 0; - /* Return a NULL tag on failure */ *dmat = NULL; @@ -193,6 +194,7 @@ newtag->ref_count = 1; /* Count ourself */ newtag->map_count = 0; newtag->ranges = bus_dma_get_range(); + newtag->_nranges = bus_dma_get_range_nb(); if (lockfunc != NULL) { newtag->lockfunc = lockfunc; newtag->lockfuncarg = lockfuncarg; @@ -200,7 +202,6 @@ newtag->lockfunc = dflt_lock; newtag->lockfuncarg = NULL; } - /* * Take into account any restrictions imposed by our parent tag */ @@ -257,34 +258,6 @@ return (0); } -static void -arm_dmamap_freesegs(bus_dmamap_t map) -{ - struct arm_seglist *seg = SLIST_FIRST(&map->seglist); - - while (seg) { - struct arm_seglist *next; - - next = SLIST_NEXT(seg, next); - SLIST_REMOVE_HEAD(&map->seglist, next); - free(seg, M_DEVBUF); - seg = next; - } -} - -static int -arm_dmamap_addseg(bus_dmamap_t map, vm_offset_t addr, vm_size_t size) -{ - struct arm_seglist *seg = malloc(sizeof(*seg), M_DEVBUF, M_NOWAIT); - - if (!seg) - return (ENOMEM); - seg->seg.ds_addr = addr; - seg->seg.ds_len = size; - SLIST_INSERT_HEAD(&map->seglist, seg, next); - return (0); -} - /* * Allocate a handle for mapping from kva/uva/physical * address space into bus device space. @@ -297,8 +270,9 @@ newmap = malloc(sizeof(*newmap), M_DEVBUF, M_NOWAIT | M_ZERO); if (newmap == NULL) return (ENOMEM); - SLIST_INIT(&newmap->seglist); *mapp = newmap; + newmap->dmat = dmat; + newmap->flags = 0; dmat->map_count++; return (0); @@ -311,7 +285,7 @@ int bus_dmamap_destroy(bus_dma_tag_t dmat, bus_dmamap_t map) { - arm_dmamap_freesegs(map); + free(map, M_DEVBUF); dmat->map_count--; return (0); @@ -326,7 +300,7 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int flags, bus_dmamap_t *mapp) { - bus_dmamap_t newmap; + bus_dmamap_t newmap = NULL; int mflags; @@ -337,11 +311,16 @@ if (flags & BUS_DMA_ZERO) mflags |= M_ZERO; - newmap = malloc(sizeof(*newmap), M_DEVBUF, M_NOWAIT | M_ZERO); - if (newmap == NULL) - return (ENOMEM); - SLIST_INIT(&newmap->seglist); - *mapp = newmap; + if (!*mapp) { + newmap = malloc(sizeof(*newmap), M_DEVBUF, M_NOWAIT | M_ZERO); + if (newmap == NULL) + return (ENOMEM); + dmat->map_count++; + newmap->flags = 0; + *mapp = newmap; + newmap->dmat = dmat; + } + if (dmat->maxsize <= PAGE_SIZE) { *vaddr = malloc(dmat->maxsize, M_DEVBUF, mflags); } else { @@ -354,13 +333,12 @@ 0ul, dmat->lowaddr, dmat->alignment? dmat->alignment : 1ul, dmat->boundary); } - - if (*vaddr == NULL) { + if (*vaddr == NULL && newmap != NULL) { free(newmap, M_DEVBUF); + dmat->map_count--; *mapp = NULL; return (ENOMEM); } - return (0); } @@ -371,14 +349,12 @@ void bus_dmamem_free(bus_dma_tag_t dmat, void *vaddr, bus_dmamap_t map) { - if (map != NULL) - panic("bus_dmamem_free: Invalid map freed\n"); if (dmat->maxsize <= PAGE_SIZE) free(vaddr, M_DEVBUF); else { contigfree(vaddr, dmat->maxsize, M_DEVBUF); } - arm_dmamap_freesegs(map); + dmat->map_count--; free(map, M_DEVBUF); } @@ -398,10 +374,17 @@ bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; #endif + map->flags &= ~DMAMAP_TYPE_MASK; + map->flags |= DMAMAP_LINEAR|DMAMAP_COHERENT; + map->buffer = buf; + map->len = buflen; error = bus_dmamap_load_buffer(dmat, dm_segments, map, buf, buflen, NULL, flags, &lastaddr, &nsegs, 1); - (*callback)(callback_arg, dm_segments, nsegs, error); + if (error) + (*callback)(callback_arg, NULL, 0, error); + else + (*callback)(callback_arg, dm_segments, nsegs + 1, error); return (0); } @@ -428,7 +411,6 @@ pt_entry_t pte; pt_entry_t *ptep; - if (td != NULL) pmap = vmspace_pmap(td->td_proc->p_vmspace); else @@ -451,7 +433,7 @@ (vaddr & L1_S_OFFSET); if (*pde & L1_S_CACHE_MASK) { map->flags &= - ~ARM32_DMAMAP_COHERENT; + ~DMAMAP_COHERENT; } } else { pte = *ptep; @@ -463,22 +445,37 @@ (vaddr & L2_L_OFFSET); if (pte & L2_L_CACHE_MASK) { map->flags &= - ~ARM32_DMAMAP_COHERENT; + ~DMAMAP_COHERENT; + } } else { curaddr = (pte & L2_S_FRAME) | (vaddr & L2_S_OFFSET); if (pte & L2_S_CACHE_MASK) { map->flags &= - ~ARM32_DMAMAP_COHERENT; + ~DMAMAP_COHERENT; } } } } else { curaddr = pmap_extract(pmap, vaddr); - map->flags &= ~ARM32_DMAMAP_COHERENT; + map->flags &= ~DMAMAP_COHERENT; } + if (dmat->ranges) { + struct arm32_dma_range *dr; + + dr = _bus_dma_inrange(dmat->ranges, dmat->_nranges, + curaddr); + if (dr == NULL) + return (EINVAL); + /* + * In a valid DMA range. Translate the physical + * memory address to an address in the DMA window. + */ + curaddr = (curaddr - dr->dr_sysbase) + dr->dr_busbase; + + } /* * Compute the segment size, and adjust counts. */ @@ -499,11 +496,6 @@ * Insert chunk into a segment, coalescing with * the previous segment if possible. */ - error = arm_dmamap_addseg(map, - (vm_offset_t)curaddr, sgsize); - if (error) - break; - if (first) { segs[seg].ds_addr = curaddr; segs[seg].ds_len = sgsize; @@ -512,8 +504,11 @@ if (curaddr == lastaddr && (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && (dmat->boundary == 0 || - (segs[seg].ds_addr & bmask) == (curaddr & bmask))) + (segs[seg].ds_addr & bmask) == + (curaddr & bmask))) { segs[seg].ds_len += sgsize; + goto segdone; + } else { if (++seg >= dmat->nsegments) break; @@ -522,6 +517,9 @@ } } + if (error) + break; +segdone: lastaddr = curaddr + sgsize; vaddr += sgsize; buflen -= sgsize; @@ -555,6 +553,9 @@ M_ASSERTPKTHDR(m0); + map->flags &= ~DMAMAP_TYPE_MASK; + map->flags |= DMAMAP_MBUF | DMAMAP_COHERENT; + map->buffer = m0; if (m0->m_pkthdr.len <= dmat->maxsize) { int first = 1; vm_offset_t lastaddr = 0; @@ -578,7 +579,7 @@ */ (*callback)(callback_arg, dm_segments, 0, 0, error); } else { - (*callback)(callback_arg, dm_segments, nsegs+1, + (*callback)(callback_arg, dm_segments, nsegs + 1, m0->m_pkthdr.len, error); } return (error); @@ -605,6 +606,9 @@ resid = uio->uio_resid; iov = uio->uio_iov; + map->flags &= ~DMAMAP_TYPE_MASK; + map->flags |= DMAMAP_UIO|DMAMAP_COHERENT; + map->buffer = uio; if (uio->uio_segflg == UIO_USERSPACE) { td = uio->uio_td; @@ -647,30 +651,73 @@ } /* - * Release the mapping held by map. A no-op on PowerPC. + * Release the mapping held by map. */ void bus_dmamap_unload(bus_dma_tag_t dmat, bus_dmamap_t map) { - arm_dmamap_freesegs(map); + map->flags &= ~DMAMAP_TYPE_MASK; return; } +static void +bus_dmamap_sync_buf(void *buf, int len, bus_dmasync_op_t op) +{ + + if (op & BUS_DMASYNC_POSTREAD || + op == (BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE)) { + cpu_dcache_wbinv_range((vm_offset_t)buf, len); + return; + } + if (op & BUS_DMASYNC_PREWRITE) + cpu_dcache_wb_range((vm_offset_t)buf, len); + if (op & BUS_DMASYNC_PREREAD) { + if ((((vm_offset_t)buf | len) & arm_dcache_align_mask) == 0) + cpu_dcache_inv_range((vm_offset_t)buf, len); + else + cpu_dcache_wbinv_range((vm_offset_t)buf, len); + } +} + void bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) { - struct arm_seglist *seg = SLIST_FIRST(&map->seglist); - - if (op != BUS_DMASYNC_PREREAD && op != BUS_DMASYNC_PREWRITE) + struct mbuf *m; + struct uio *uio; + int resid; + struct iovec *iov; + + if (op == BUS_DMASYNC_POSTREAD) return; - /* Skip cache frobbing if mapping was COHERENT. */ - if (map->flags & ARM32_DMAMAP_COHERENT) { - /* Drain the write buffer. */ - cpu_drain_writebuf(); + if (map->flags & DMAMAP_COHERENT) return; + switch(map->flags & DMAMAP_TYPE_MASK) { + case DMAMAP_LINEAR: + bus_dmamap_sync_buf(map->buffer, map->len, op); + break; + case DMAMAP_MBUF: + m = map->buffer; + while (m) { + bus_dmamap_sync_buf(m->m_data, m->m_len, op); + m = m->m_next; + } + break; + case DMAMAP_UIO: + uio = map->buffer; + iov = uio->uio_iov; + resid = uio->uio_resid; + for (int i = 0; i < uio->uio_iovcnt && resid != 0; i++) { + bus_size_t minlen = resid < iov[i].iov_len ? resid : + iov[i].iov_len; + if (minlen > 0) { >>> TRUNCATED FOR MAIL (1000 lines) <<<