From owner-p4-projects@FreeBSD.ORG Sun Aug 24 13:41:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 76A8116A4C1; Sun, 24 Aug 2003 13:41:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1B18B16A4BF for ; Sun, 24 Aug 2003 13:41:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 78B5043FF3 for ; Sun, 24 Aug 2003 13:41:50 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7OKfo0U079050 for ; Sun, 24 Aug 2003 13:41:50 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7OKfot3079047 for perforce@freebsd.org; Sun, 24 Aug 2003 13:41:50 -0700 (PDT) Date: Sun, 24 Aug 2003 13:41:50 -0700 (PDT) Message-Id: <200308242041.h7OKfot3079047@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36856 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Aug 2003 20:41:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=36856 Change 36856 by marcel@marcel_nfs on 2003/08/24 13:41:36 Process DDCD in the TTY swi handler. To support software CRTSCTS, we need to process DRTS and DCTS in the interrupt handler. That's coming up soon. Affected files ... .. //depot/projects/uart/dev/uart/uart_core.c#22 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_core.c#22 (text+ko) ==== @@ -205,9 +205,8 @@ if (pend & UART_IPEND_SIGCHG) { sig = pend & UART_IPEND_SIGMASK; - /* - * TODO: process signals. - */ + if (sig & UART_SIG_DDCD) + (*linesw[tp->t_line].l_modem)(tp, sig & UART_SIG_DCD); } if (pend & UART_IPEND_TXIDLE) { From owner-p4-projects@FreeBSD.ORG Sun Aug 24 16:07:58 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A2EAB16A4C1; Sun, 24 Aug 2003 16:07:58 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5A9E516A4BF for ; Sun, 24 Aug 2003 16:07:58 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 53FEA43F93 for ; Sun, 24 Aug 2003 16:07:56 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7ON7u0U088049 for ; Sun, 24 Aug 2003 16:07:56 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7ON7oZa087989 for perforce@freebsd.org; Sun, 24 Aug 2003 16:07:50 -0700 (PDT) Date: Sun, 24 Aug 2003 16:07:50 -0700 (PDT) Message-Id: <200308242307.h7ON7oZa087989@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36861 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Aug 2003 23:07:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=36861 Change 36861 by marcel@marcel_nfs on 2003/08/24 16:06:56 IFC @36860 Affected files ... .. //depot/projects/ia64/UPDATING#49 integrate .. //depot/projects/ia64/contrib/gcc/config/alpha/freebsd.h#8 integrate .. //depot/projects/ia64/contrib/gcc/config/freebsd-spec.h#8 integrate .. //depot/projects/ia64/contrib/gcc/config/i386/freebsd.h#20 integrate .. //depot/projects/ia64/etc/defaults/rc.conf#40 integrate .. //depot/projects/ia64/etc/rc.d/jail#5 integrate .. //depot/projects/ia64/libexec/lukemftpd/Makefile#12 integrate .. //depot/projects/ia64/sbin/atacontrol/atacontrol.c#12 integrate .. //depot/projects/ia64/sys/amd64/amd64/pmap.c#21 integrate .. //depot/projects/ia64/sys/conf/NOTES#65 integrate .. //depot/projects/ia64/sys/conf/files#95 integrate .. //depot/projects/ia64/sys/conf/options#65 integrate .. //depot/projects/ia64/sys/dev/aac/aac.c#29 integrate .. //depot/projects/ia64/sys/dev/aac/aac_cam.c#11 integrate .. //depot/projects/ia64/sys/dev/aac/aac_debug.c#8 integrate .. //depot/projects/ia64/sys/dev/aac/aac_disk.c#17 integrate .. //depot/projects/ia64/sys/dev/aac/aac_linux.c#2 integrate .. //depot/projects/ia64/sys/dev/aac/aac_pci.c#22 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_cpu.c#8 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_ec.c#17 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_isab.c#4 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_lid.c#7 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_pci_link.c#7 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_pcib.c#18 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_pcib_pci.c#4 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_powerres.c#6 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_resource.c#8 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_thermal.c#10 integrate .. //depot/projects/ia64/sys/dev/acpica/acpica_support.c#7 integrate .. //depot/projects/ia64/sys/dev/adlink/adlink.c#4 integrate .. //depot/projects/ia64/sys/dev/advansys/adv_eisa.c#5 integrate .. //depot/projects/ia64/sys/dev/advansys/adv_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/advansys/adv_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/advansys/advansys.c#8 integrate .. //depot/projects/ia64/sys/dev/advansys/advlib.c#4 integrate .. //depot/projects/ia64/sys/dev/advansys/advmcode.c#2 integrate .. //depot/projects/ia64/sys/dev/advansys/adw_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/advansys/adwcam.c#8 integrate .. //depot/projects/ia64/sys/dev/advansys/adwlib.c#2 integrate .. //depot/projects/ia64/sys/dev/advansys/adwmcode.c#2 integrate .. //depot/projects/ia64/sys/dev/aha/aha.c#10 integrate .. //depot/projects/ia64/sys/dev/aha/aha_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/aha/aha_mca.c#5 integrate .. //depot/projects/ia64/sys/dev/aic/aic.c#9 integrate .. //depot/projects/ia64/sys/dev/aic/aic_cbus.c#3 integrate .. //depot/projects/ia64/sys/dev/aic/aic_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/aic/aic_pccard.c#6 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/ahc_eisa.c#10 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/ahc_pci.c#12 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/ahd_pci.c#9 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic7770.c#8 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic79xx.c#16 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic79xx_osm.c#13 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic79xx_pci.c#13 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic7xxx.c#13 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic7xxx_93cx6.c#4 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic7xxx_osm.c#13 integrate .. //depot/projects/ia64/sys/dev/aic7xxx/aic7xxx_pci.c#10 integrate .. //depot/projects/ia64/sys/dev/amr/amr.c#19 integrate .. //depot/projects/ia64/sys/dev/amr/amr_cam.c#8 integrate .. //depot/projects/ia64/sys/dev/amr/amr_disk.c#10 integrate .. //depot/projects/ia64/sys/dev/amr/amr_pci.c#12 integrate .. //depot/projects/ia64/sys/dev/an/if_aironet_ieee.h#6 integrate .. //depot/projects/ia64/sys/dev/an/if_an.c#26 integrate .. //depot/projects/ia64/sys/dev/an/if_an_isa.c#8 integrate .. //depot/projects/ia64/sys/dev/an/if_an_pccard.c#9 integrate .. //depot/projects/ia64/sys/dev/an/if_an_pci.c#13 integrate .. //depot/projects/ia64/sys/dev/an/if_anreg.h#9 integrate .. //depot/projects/ia64/sys/dev/ar/if_ar.c#10 integrate .. //depot/projects/ia64/sys/dev/ar/if_ar_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/ar/if_ar_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/asr/asr.c#18 integrate .. //depot/projects/ia64/sys/dev/ata/ata-all.c#38 integrate .. //depot/projects/ia64/sys/dev/ata/ata-all.h#14 integrate .. //depot/projects/ia64/sys/dev/ata/ata-card.c#13 integrate .. //depot/projects/ia64/sys/dev/ata/ata-cbus.c#6 integrate .. //depot/projects/ia64/sys/dev/ata/ata-chipset.c#22 integrate .. //depot/projects/ia64/sys/dev/ata/ata-commands.h#1 branch .. //depot/projects/ia64/sys/dev/ata/ata-disk.c#25 integrate .. //depot/projects/ia64/sys/dev/ata/ata-disk.h#9 integrate .. //depot/projects/ia64/sys/dev/ata/ata-dma.c#27 integrate .. //depot/projects/ia64/sys/dev/ata/ata-isa.c#12 integrate .. //depot/projects/ia64/sys/dev/ata/ata-lowlevel.c#1 branch .. //depot/projects/ia64/sys/dev/ata/ata-pci.c#31 integrate .. //depot/projects/ia64/sys/dev/ata/ata-pci.h#12 integrate .. //depot/projects/ia64/sys/dev/ata/ata-queue.c#1 branch .. //depot/projects/ia64/sys/dev/ata/ata-raid.c#23 integrate .. //depot/projects/ia64/sys/dev/ata/ata-raid.h#13 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-all.c#17 delete .. //depot/projects/ia64/sys/dev/ata/atapi-all.h#9 delete .. //depot/projects/ia64/sys/dev/ata/atapi-cam.c#14 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-cd.c#25 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-cd.h#9 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-fd.c#16 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-fd.h#7 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-tape.c#15 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-tape.h#5 integrate .. //depot/projects/ia64/sys/dev/awi/am79c930.c#4 integrate .. //depot/projects/ia64/sys/dev/awi/awi.c#13 integrate .. //depot/projects/ia64/sys/dev/awi/awi_wep.c#10 integrate .. //depot/projects/ia64/sys/dev/awi/awi_wicfg.c#6 integrate .. //depot/projects/ia64/sys/dev/awi/if_awi_pccard.c#8 integrate .. //depot/projects/ia64/sys/dev/bge/if_bge.c#41 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_audio.c#5 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_card.c#6 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_core.c#12 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_i2c.c#5 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_mem.c#3 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_os.c#14 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_tuner.c#3 integrate .. //depot/projects/ia64/sys/dev/buslogic/bt.c#12 integrate .. //depot/projects/ia64/sys/dev/buslogic/bt_eisa.c#6 integrate .. //depot/projects/ia64/sys/dev/buslogic/bt_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/buslogic/bt_mca.c#5 integrate .. //depot/projects/ia64/sys/dev/buslogic/bt_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/cardbus/cardbus.c#17 integrate .. //depot/projects/ia64/sys/dev/cardbus/cardbus_cis.c#16 integrate .. //depot/projects/ia64/sys/dev/cm/if_cm_isa.c#4 integrate .. //depot/projects/ia64/sys/dev/cm/smc90cx6.c#9 integrate .. //depot/projects/ia64/sys/dev/cnw/if_cnw.c#10 integrate .. //depot/projects/ia64/sys/dev/cs/if_cs.c#6 integrate .. //depot/projects/ia64/sys/dev/cs/if_cs_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/cs/if_cs_pccard.c#6 integrate .. //depot/projects/ia64/sys/dev/ct/bshw_machdep.c#3 integrate .. //depot/projects/ia64/sys/dev/ct/ct.c#4 integrate .. //depot/projects/ia64/sys/dev/ct/ct_isa.c#6 integrate .. //depot/projects/ia64/sys/dev/dec/mcclock.c#3 integrate .. //depot/projects/ia64/sys/dev/digi/CX.c#3 integrate .. //depot/projects/ia64/sys/dev/digi/CX_PCI.c#3 integrate .. //depot/projects/ia64/sys/dev/digi/EPCX.c#3 integrate .. //depot/projects/ia64/sys/dev/digi/EPCX_PCI.c#3 integrate .. //depot/projects/ia64/sys/dev/digi/Xe.c#3 integrate .. //depot/projects/ia64/sys/dev/digi/Xem.c#3 integrate .. //depot/projects/ia64/sys/dev/digi/Xr.c#3 integrate .. //depot/projects/ia64/sys/dev/digi/digi_isa.c#7 integrate .. //depot/projects/ia64/sys/dev/digi/digi_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/dpt/dpt_eisa.c#5 integrate .. //depot/projects/ia64/sys/dev/dpt/dpt_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/dpt/dpt_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/dpt/dpt_scsi.c#11 integrate .. //depot/projects/ia64/sys/dev/drm/mga_state.c#5 integrate .. //depot/projects/ia64/sys/dev/drm/radeon_mem.c#3 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/ed/if_ed_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/eisa/eisaconf.c#6 integrate .. //depot/projects/ia64/sys/dev/em/if_em_hw.c#10 integrate .. //depot/projects/ia64/sys/dev/en/if_en_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep.c#11 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep_eisa.c#5 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep_isa.c#6 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep_mca.c#4 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep_pccard.c#9 integrate .. //depot/projects/ia64/sys/dev/ex/if_ex.c#7 integrate .. //depot/projects/ia64/sys/dev/ex/if_ex_isa.c#4 integrate .. //depot/projects/ia64/sys/dev/ex/if_ex_pccard.c#4 integrate .. //depot/projects/ia64/sys/dev/exca/exca.c#8 integrate .. //depot/projects/ia64/sys/dev/fatm/if_fatm.c#9 integrate .. //depot/projects/ia64/sys/dev/fb/boot_font.c#3 integrate .. //depot/projects/ia64/sys/dev/fb/fb.c#11 integrate .. //depot/projects/ia64/sys/dev/fb/gfb.c#5 integrate .. //depot/projects/ia64/sys/dev/fb/s3_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/fb/splash.c#2 integrate .. //depot/projects/ia64/sys/dev/fb/tga.c#4 integrate .. //depot/projects/ia64/sys/dev/fb/vga.c#14 integrate .. //depot/projects/ia64/sys/dev/fe/if_fe.c#6 integrate .. //depot/projects/ia64/sys/dev/fe/if_fe_cbus.c#3 integrate .. //depot/projects/ia64/sys/dev/fe/if_fe_isa.c#2 integrate .. //depot/projects/ia64/sys/dev/fe/if_fe_pccard.c#6 integrate .. //depot/projects/ia64/sys/dev/firewire/fwcrom.c#8 integrate .. //depot/projects/ia64/sys/dev/firewire/fwdma.c#5 integrate .. //depot/projects/ia64/sys/dev/firewire/fwmem.c#14 integrate .. //depot/projects/ia64/sys/dev/fxp/if_fxp.c#43 integrate .. //depot/projects/ia64/sys/dev/gem/if_gem.c#17 integrate .. //depot/projects/ia64/sys/dev/gem/if_gem_pci.c#11 integrate .. //depot/projects/ia64/sys/dev/gfb/gfb_pci.c#8 integrate .. //depot/projects/ia64/sys/dev/gx/if_gx.c#11 integrate .. //depot/projects/ia64/sys/dev/harp/if_harp.c#2 integrate .. //depot/projects/ia64/sys/dev/hatm/if_hatm_intr.c#4 integrate .. //depot/projects/ia64/sys/dev/hea/eni.c#6 integrate .. //depot/projects/ia64/sys/dev/hea/eni_buffer.c#9 integrate .. //depot/projects/ia64/sys/dev/hea/eni_globals.c#3 integrate .. //depot/projects/ia64/sys/dev/hea/eni_init.c#3 integrate .. //depot/projects/ia64/sys/dev/hea/eni_intr.c#3 integrate .. //depot/projects/ia64/sys/dev/hea/eni_receive.c#6 integrate .. //depot/projects/ia64/sys/dev/hea/eni_transmit.c#6 integrate .. //depot/projects/ia64/sys/dev/hea/eni_vcm.c#6 integrate .. //depot/projects/ia64/sys/dev/hea/hea_freebsd.c#4 integrate .. //depot/projects/ia64/sys/dev/hea/hea_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/hfa/fore_buffer.c#6 integrate .. //depot/projects/ia64/sys/dev/hfa/fore_globals.c#4 integrate .. //depot/projects/ia64/sys/dev/hfa/fore_load.c#8 integrate .. //depot/projects/ia64/sys/dev/hfa/fore_receive.c#8 integrate .. //depot/projects/ia64/sys/dev/hfa/fore_stats.c#4 integrate .. //depot/projects/ia64/sys/dev/hfa/fore_timer.c#3 integrate .. //depot/projects/ia64/sys/dev/hfa/fore_transmit.c#4 integrate .. //depot/projects/ia64/sys/dev/hfa/hfa_eisa.c#2 integrate .. //depot/projects/ia64/sys/dev/hfa/hfa_pci.c#4 integrate .. //depot/projects/ia64/sys/dev/hfa/hfa_sbus.c#3 integrate .. //depot/projects/ia64/sys/dev/hifn/hifn7751.c#15 integrate .. //depot/projects/ia64/sys/dev/hme/if_hme.c#15 integrate .. //depot/projects/ia64/sys/dev/hme/if_hme_pci.c#10 integrate .. //depot/projects/ia64/sys/dev/hme/if_hme_sbus.c#7 integrate .. //depot/projects/ia64/sys/dev/ichsmb/ichsmb.c#4 integrate .. //depot/projects/ia64/sys/dev/ichsmb/ichsmb_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/ida/ida.c#12 integrate .. //depot/projects/ia64/sys/dev/ida/ida_eisa.c#6 integrate .. //depot/projects/ia64/sys/dev/ida/ida_pci.c#7 integrate .. //depot/projects/ia64/sys/dev/idt/idt.c#5 integrate .. //depot/projects/ia64/sys/dev/idt/idt_harp.c#3 integrate .. //depot/projects/ia64/sys/dev/idt/idt_pci.c#2 integrate .. //depot/projects/ia64/sys/dev/ie/if_ie.c#8 integrate .. //depot/projects/ia64/sys/dev/ie/if_ie_isa.c#2 integrate .. //depot/projects/ia64/sys/dev/iicbus/if_ic.c#9 integrate .. //depot/projects/ia64/sys/dev/iicbus/iicbb.c#4 integrate .. //depot/projects/ia64/sys/dev/iicbus/iicbus.c#4 integrate .. //depot/projects/ia64/sys/dev/iicbus/iiconf.c#3 integrate .. //depot/projects/ia64/sys/dev/iir/iir.c#8 integrate .. //depot/projects/ia64/sys/dev/iir/iir_ctrl.c#9 integrate .. //depot/projects/ia64/sys/dev/iir/iir_pci.c#9 integrate .. //depot/projects/ia64/sys/dev/ips/ips.c#4 integrate .. //depot/projects/ia64/sys/dev/ips/ips_commands.c#4 integrate .. //depot/projects/ia64/sys/dev/ips/ips_disk.c#3 integrate .. //depot/projects/ia64/sys/dev/ips/ips_ioctl.c#4 integrate .. //depot/projects/ia64/sys/dev/ips/ips_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/isp/isp.c#18 integrate .. //depot/projects/ia64/sys/dev/isp/isp_freebsd.c#15 integrate .. //depot/projects/ia64/sys/dev/isp/isp_pci.c#17 integrate .. //depot/projects/ia64/sys/dev/isp/isp_sbus.c#8 integrate .. //depot/projects/ia64/sys/dev/ispfw/ispfw.c#5 integrate .. //depot/projects/ia64/sys/dev/joy/joy.c#5 integrate .. //depot/projects/ia64/sys/dev/joy/joy_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/joy/joy_pccard.c#3 integrate .. //depot/projects/ia64/sys/dev/kbd/atkbd.c#9 integrate .. //depot/projects/ia64/sys/dev/kbd/atkbdc.c#8 integrate .. //depot/projects/ia64/sys/dev/kbd/kbd.c#8 integrate .. //depot/projects/ia64/sys/dev/lge/if_lge.c#15 integrate .. //depot/projects/ia64/sys/dev/lmc/if_lmc.c#9 integrate .. //depot/projects/ia64/sys/dev/lmc/if_lmc_common.c#3 integrate .. //depot/projects/ia64/sys/dev/lmc/if_lmc_fbsd3.c#3 integrate .. //depot/projects/ia64/sys/dev/lmc/if_lmc_media.c#3 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc.c#9 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc_cbus.c#5 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/lnc/if_lnc_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/matcd/matcd.c#2 integrate .. //depot/projects/ia64/sys/dev/matcd/matcd_isa.c#2 integrate .. //depot/projects/ia64/sys/dev/mca/mca_bus.c#4 integrate .. //depot/projects/ia64/sys/dev/mcd/mcd.c#7 integrate .. //depot/projects/ia64/sys/dev/mcd/mcd_isa.c#4 integrate .. //depot/projects/ia64/sys/dev/mii/acphy.c#10 integrate .. //depot/projects/ia64/sys/dev/mii/amphy.c#8 integrate .. //depot/projects/ia64/sys/dev/mii/bmtphy.c#5 integrate .. //depot/projects/ia64/sys/dev/mii/brgphy.c#17 integrate .. //depot/projects/ia64/sys/dev/mii/dcphy.c#11 integrate .. //depot/projects/ia64/sys/dev/mii/e1000phy.c#6 integrate .. //depot/projects/ia64/sys/dev/mii/exphy.c#8 integrate .. //depot/projects/ia64/sys/dev/mii/inphy.c#6 integrate .. //depot/projects/ia64/sys/dev/mii/lxtphy.c#9 integrate .. //depot/projects/ia64/sys/dev/mii/mii.c#8 integrate .. //depot/projects/ia64/sys/dev/mii/mii_physubr.c#7 integrate .. //depot/projects/ia64/sys/dev/mii/mlphy.c#7 integrate .. //depot/projects/ia64/sys/dev/mii/nsgphy.c#10 integrate .. //depot/projects/ia64/sys/dev/mii/nsphy.c#8 integrate .. //depot/projects/ia64/sys/dev/mii/pnaphy.c#9 integrate .. //depot/projects/ia64/sys/dev/mii/pnphy.c#8 integrate .. //depot/projects/ia64/sys/dev/mii/qsphy.c#9 integrate .. //depot/projects/ia64/sys/dev/mii/rlphy.c#11 integrate .. //depot/projects/ia64/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/ia64/sys/dev/mii/tdkphy.c#9 integrate .. //depot/projects/ia64/sys/dev/mii/tlphy.c#8 integrate .. //depot/projects/ia64/sys/dev/mii/ukphy.c#6 integrate .. //depot/projects/ia64/sys/dev/mii/ukphy_subr.c#4 integrate .. //depot/projects/ia64/sys/dev/mii/xmphy.c#9 integrate .. //depot/projects/ia64/sys/dev/mk48txx/mk48txx.c#3 integrate .. //depot/projects/ia64/sys/dev/mlx/mlx_disk.c#7 integrate .. //depot/projects/ia64/sys/dev/mlx/mlx_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt.c#6 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_debug.c#4 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_freebsd.c#12 integrate .. //depot/projects/ia64/sys/dev/mpt/mpt_pci.c#10 integrate .. //depot/projects/ia64/sys/dev/musycc/musycc.c#8 integrate .. //depot/projects/ia64/sys/dev/my/if_my.c#14 integrate .. //depot/projects/ia64/sys/dev/ncv/ncr53c500.c#5 integrate .. //depot/projects/ia64/sys/dev/ncv/ncr53c500_pccard.c#9 integrate .. //depot/projects/ia64/sys/dev/nge/if_nge.c#23 integrate .. //depot/projects/ia64/sys/dev/nmdm/nmdm.c#8 integrate .. //depot/projects/ia64/sys/dev/nsp/nsp.c#5 integrate .. //depot/projects/ia64/sys/dev/nsp/nsp_pccard.c#7 integrate .. //depot/projects/ia64/sys/dev/null/null.c#13 integrate .. //depot/projects/ia64/sys/dev/ofw/ofw_console.c#10 integrate .. //depot/projects/ia64/sys/dev/ofw/ofw_disk.c#6 integrate .. //depot/projects/ia64/sys/dev/ofw/openfirm.c#6 integrate .. //depot/projects/ia64/sys/dev/ofw/openfirmio.c#6 integrate .. //depot/projects/ia64/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/ia64/sys/dev/patm/if_patm.c#4 integrate .. //depot/projects/ia64/sys/dev/patm/if_patm_attach.c#4 integrate .. //depot/projects/ia64/sys/dev/patm/if_patm_intr.c#2 integrate .. //depot/projects/ia64/sys/dev/patm/if_patm_ioctl.c#5 integrate .. //depot/projects/ia64/sys/dev/patm/if_patm_rtables.c#2 integrate .. //depot/projects/ia64/sys/dev/patm/if_patm_rx.c#4 integrate .. //depot/projects/ia64/sys/dev/patm/if_patm_tx.c#5 integrate .. //depot/projects/ia64/sys/dev/pccard/pccard.c#22 integrate .. //depot/projects/ia64/sys/dev/pccard/pccard_cis_quirks.c#4 integrate .. //depot/projects/ia64/sys/dev/pci/eisa_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/pci/fixup_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/pci/ignore_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/pci/isa_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/pci/pci_pci.c#17 integrate .. //depot/projects/ia64/sys/dev/pci/pci_user.c#9 integrate .. //depot/projects/ia64/sys/dev/pcic/i82365.c#6 integrate .. //depot/projects/ia64/sys/dev/pcic/i82365_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/pdq/if_fpa.c#6 integrate .. //depot/projects/ia64/sys/dev/pdq/pdq.c#5 integrate .. //depot/projects/ia64/sys/dev/pdq/pdq_ifsubr.c#9 integrate .. //depot/projects/ia64/sys/dev/ppbus/if_plip.c#8 integrate .. //depot/projects/ia64/sys/dev/ppbus/immio.c#2 integrate .. //depot/projects/ia64/sys/dev/ppbus/lpbb.c#4 integrate .. //depot/projects/ia64/sys/dev/ppbus/lpt.c#8 integrate .. //depot/projects/ia64/sys/dev/ppbus/pcfclock.c#6 integrate .. //depot/projects/ia64/sys/dev/ppbus/ppb_1284.c#3 integrate .. //depot/projects/ia64/sys/dev/ppbus/ppb_base.c#3 integrate .. //depot/projects/ia64/sys/dev/ppbus/ppb_msq.c#4 integrate .. //depot/projects/ia64/sys/dev/ppbus/ppbconf.c#2 integrate .. //depot/projects/ia64/sys/dev/ppbus/ppi.c#6 integrate .. //depot/projects/ia64/sys/dev/ppbus/pps.c#9 integrate .. //depot/projects/ia64/sys/dev/ppbus/vpo.c#7 integrate .. //depot/projects/ia64/sys/dev/ppbus/vpoio.c#4 integrate .. //depot/projects/ia64/sys/dev/pst/pst-iop.c#6 integrate .. //depot/projects/ia64/sys/dev/pst/pst-pci.c#5 integrate .. //depot/projects/ia64/sys/dev/pst/pst-raid.c#10 integrate .. //depot/projects/ia64/sys/dev/puc/puc.c#19 integrate .. //depot/projects/ia64/sys/dev/puc/puc_pccard.c#4 integrate .. //depot/projects/ia64/sys/dev/puc/puc_pci.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_acctrace.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_alloclist.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_aselect.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_callback.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_chaindecluster.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_copyback.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_cvscan.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_dagdegrd.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_dagdegwr.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_dagffrd.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_dagffwr.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_dagfuncs.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_dagutils.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_debugMem.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_debugprint.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_decluster.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_declusterPQ.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_diskqueue.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_disks.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_driver.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_engine.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_evenodd.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_evenodd_dagfuncs.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_evenodd_dags.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_fifo.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_geniq.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_interdecluster.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_invertq.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_layout.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_map.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_mcpair.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_memchunk.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_nwayxor.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_options.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_paritylog.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_paritylogDiskMgr.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_paritylogging.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_parityloggingdags.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_parityscan.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_pq.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_pqdeg.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_pqdegdags.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_psstatus.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_raid0.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_raid1.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_raid4.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_raid5.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_raid5_rotatedspare.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_reconbuffer.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_reconmap.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_reconstruct.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_reconutil.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_revent.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_shutdown.c#4 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_sstf.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_states.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_stripelocks.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_strutils.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_threadstuff.c#2 integrate .. //depot/projects/ia64/sys/dev/raidframe/rf_utils.c#2 integrate .. //depot/projects/ia64/sys/dev/random/harvest.c#5 integrate .. //depot/projects/ia64/sys/dev/random/hash.c#5 integrate .. //depot/projects/ia64/sys/dev/random/randomdev.c#10 integrate .. //depot/projects/ia64/sys/dev/random/yarrow.c#7 integrate .. //depot/projects/ia64/sys/dev/ray/if_ray.c#10 integrate .. //depot/projects/ia64/sys/dev/rndtest/rndtest.c#4 integrate .. //depot/projects/ia64/sys/dev/rp/rp.c#10 integrate .. //depot/projects/ia64/sys/dev/rp/rp_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/rp/rp_pci.c#4 integrate .. //depot/projects/ia64/sys/dev/sab/sab.c#14 integrate .. //depot/projects/ia64/sys/dev/sbni/if_sbni.c#11 integrate .. //depot/projects/ia64/sys/dev/sbni/if_sbni_isa.c#7 integrate .. //depot/projects/ia64/sys/dev/sbni/if_sbni_pci.c#7 integrate .. //depot/projects/ia64/sys/dev/sbsh/if_sbsh.c#3 integrate .. //depot/projects/ia64/sys/dev/scd/scd.c#5 integrate .. //depot/projects/ia64/sys/dev/scd/scd_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/si/si.c#8 integrate .. //depot/projects/ia64/sys/dev/si/si2_z280.c#2 integrate .. //depot/projects/ia64/sys/dev/si/si3_t225.c#2 integrate .. //depot/projects/ia64/sys/dev/si/si_eisa.c#2 integrate .. //depot/projects/ia64/sys/dev/si/si_isa.c#4 integrate .. //depot/projects/ia64/sys/dev/si/si_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/sio/sio.c#47 integrate .. //depot/projects/ia64/sys/dev/sio/sio_isa.c#16 integrate .. //depot/projects/ia64/sys/dev/sio/sio_pccard.c#10 integrate .. //depot/projects/ia64/sys/dev/sio/sio_pci.c#18 integrate .. //depot/projects/ia64/sys/dev/sio/sio_puc.c#9 integrate .. //depot/projects/ia64/sys/dev/smbus/smbconf.c#3 integrate .. //depot/projects/ia64/sys/dev/smbus/smbus.c#4 integrate .. //depot/projects/ia64/sys/dev/sn/if_sn.c#8 integrate .. //depot/projects/ia64/sys/dev/sn/if_sn_isa.c#3 integrate .. //depot/projects/ia64/sys/dev/sn/if_sn_pccard.c#9 integrate .. //depot/projects/ia64/sys/dev/snc/dp83932subr.c#4 integrate .. //depot/projects/ia64/sys/dev/snc/if_snc.c#3 integrate .. //depot/projects/ia64/sys/dev/snc/if_snc_cbus.c#4 integrate .. //depot/projects/ia64/sys/dev/snc/if_snc_pccard.c#3 integrate .. //depot/projects/ia64/sys/dev/snp/snp.c#14 integrate .. //depot/projects/ia64/sys/dev/sr/if_sr.c#10 integrate .. //depot/projects/ia64/sys/dev/sr/if_sr_isa.c#4 integrate .. //depot/projects/ia64/sys/dev/sr/if_sr_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/stg/tmc18c30.c#5 integrate .. //depot/projects/ia64/sys/dev/stg/tmc18c30_isa.c#5 integrate .. //depot/projects/ia64/sys/dev/stg/tmc18c30_pccard.c#9 integrate .. //depot/projects/ia64/sys/dev/stg/tmc18c30_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/stg/tmc18c30_subr.c#2 integrate .. //depot/projects/ia64/sys/dev/streams/streams.c#12 integrate .. //depot/projects/ia64/sys/dev/sym/sym_hipd.c#15 integrate .. //depot/projects/ia64/sys/dev/syscons/schistory.c#6 integrate .. //depot/projects/ia64/sys/dev/syscons/scmouse.c#10 integrate .. //depot/projects/ia64/sys/dev/syscons/scterm-dumb.c#3 integrate .. //depot/projects/ia64/sys/dev/syscons/scterm-sc.c#3 integrate .. //depot/projects/ia64/sys/dev/syscons/scterm.c#2 integrate .. //depot/projects/ia64/sys/dev/syscons/scvesactl.c#2 integrate .. //depot/projects/ia64/sys/dev/syscons/scvgarndr.c#4 integrate .. //depot/projects/ia64/sys/dev/syscons/scvidctl.c#6 integrate .. //depot/projects/ia64/sys/dev/syscons/scvtb.c#5 integrate .. //depot/projects/ia64/sys/dev/syscons/syscons.c#21 integrate .. //depot/projects/ia64/sys/dev/syscons/sysmouse.c#4 integrate .. //depot/projects/ia64/sys/dev/tdfx/tdfx_pci.c#14 integrate .. //depot/projects/ia64/sys/dev/tga/tga_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/trm/trm.c#15 integrate .. //depot/projects/ia64/sys/dev/tx/if_tx.c#15 integrate .. //depot/projects/ia64/sys/dev/txp/if_txp.c#14 integrate .. //depot/projects/ia64/sys/dev/ubsec/ubsec.c#21 integrate .. //depot/projects/ia64/sys/dev/usb/ehci.c#3 integrate .. //depot/projects/ia64/sys/dev/usb/ehci_pci.c#6 integrate .. //depot/projects/ia64/sys/dev/usb/hid.c#8 integrate .. //depot/projects/ia64/sys/dev/usb/if_aue.c#22 integrate .. //depot/projects/ia64/sys/dev/usb/if_axe.c#5 integrate .. //depot/projects/ia64/sys/dev/usb/if_cue.c#16 integrate .. //depot/projects/ia64/sys/dev/usb/if_kue.c#15 integrate .. //depot/projects/ia64/sys/dev/usb/if_rue.c#3 integrate .. //depot/projects/ia64/sys/dev/usb/ohci.c#19 integrate .. //depot/projects/ia64/sys/dev/usb/ohci_pci.c#5 integrate .. //depot/projects/ia64/sys/dev/usb/ubsa.c#7 integrate .. //depot/projects/ia64/sys/dev/usb/ucom.c#11 integrate .. //depot/projects/ia64/sys/dev/usb/udbp.c#10 integrate .. //depot/projects/ia64/sys/dev/usb/ufm.c#10 integrate .. //depot/projects/ia64/sys/dev/usb/uftdi.c#9 integrate .. //depot/projects/ia64/sys/dev/usb/ugen.c#16 integrate .. //depot/projects/ia64/sys/dev/usb/uhci.c#20 integrate .. //depot/projects/ia64/sys/dev/usb/uhci_pci.c#7 integrate .. //depot/projects/ia64/sys/dev/usb/uhid.c#14 integrate .. //depot/projects/ia64/sys/dev/usb/uhub.c#9 integrate .. //depot/projects/ia64/sys/dev/usb/ukbd.c#9 integrate .. //depot/projects/ia64/sys/dev/usb/ulpt.c#13 integrate .. //depot/projects/ia64/sys/dev/usb/umct.c#4 integrate .. //depot/projects/ia64/sys/dev/usb/umodem.c#11 integrate .. //depot/projects/ia64/sys/dev/usb/ums.c#11 integrate .. //depot/projects/ia64/sys/dev/usb/uplcom.c#9 integrate .. //depot/projects/ia64/sys/dev/usb/urio.c#14 integrate .. //depot/projects/ia64/sys/dev/usb/usb.c#15 integrate .. //depot/projects/ia64/sys/dev/usb/usb_ethersubr.c#7 integrate .. //depot/projects/ia64/sys/dev/usb/usb_quirks.c#7 integrate .. //depot/projects/ia64/sys/dev/usb/usb_subr.c#12 integrate .. //depot/projects/ia64/sys/dev/usb/usbdi.c#13 integrate .. //depot/projects/ia64/sys/dev/usb/usbdi_util.c#8 integrate .. //depot/projects/ia64/sys/dev/usb/uscanner.c#13 integrate .. //depot/projects/ia64/sys/dev/usb/uvscom.c#12 integrate .. //depot/projects/ia64/sys/dev/vinum/vinum.c#13 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumconfig.c#14 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumdaemon.c#7 integrate .. //depot/projects/ia64/sys/dev/vinum/vinuminterrupt.c#5 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumioctl.c#16 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumlock.c#5 integrate .. //depot/projects/ia64/sys/dev/vinum/vinummemory.c#6 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumparser.c#6 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumraid5.c#3 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumrequest.c#13 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumrevive.c#9 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumstate.c#4 integrate .. //depot/projects/ia64/sys/dev/vinum/vinumutil.c#4 integrate .. //depot/projects/ia64/sys/dev/vx/if_vx.c#11 integrate .. //depot/projects/ia64/sys/dev/vx/if_vx_eisa.c#4 integrate .. //depot/projects/ia64/sys/dev/vx/if_vx_pci.c#4 integrate .. //depot/projects/ia64/sys/dev/wds/wd7000.c#5 integrate .. //depot/projects/ia64/sys/dev/wl/if_wl.c#10 integrate .. //depot/projects/ia64/sys/dev/xe/if_xe.c#10 integrate .. //depot/projects/ia64/sys/dev/xe/if_xe_pccard.c#9 integrate .. //depot/projects/ia64/sys/dev/zs/zs.c#12 integrate .. //depot/projects/ia64/sys/dev/zs/zs_macio.c#3 integrate .. //depot/projects/ia64/sys/dev/zs/zs_sbus.c#5 integrate .. //depot/projects/ia64/sys/i386/conf/GENERIC#38 integrate .. //depot/projects/ia64/sys/netinet/ip_mroute.c#23 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/bus_machdep.c#22 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/genassym.c#23 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/support.S#8 integrate .. //depot/projects/ia64/sys/sys/ata.h#10 integrate Differences ... ==== //depot/projects/ia64/UPDATING#49 (text+ko) ==== @@ -17,6 +17,12 @@ developers choose to disable these features on build machines to maximize performance. +20030824: + ATAng has been committed. You need to build world as sys/ata.h + has changed, and userland atacontrol depends on it. + If you use ATA SW raids you need "device ataraid" in your + kernel config file, as it is no longer pulled in automatically. + 20030819: The OFW_NEWPCI option has been turned on in the Sparc64 GENERIC kernel. Among other things, this changes the device enumeration to be @@ -1339,4 +1345,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.262 2003/08/20 15:42:05 obrien Exp $ +$FreeBSD: src/UPDATING,v 1.264 2003/08/24 16:46:03 sos Exp $ ==== //depot/projects/ia64/contrib/gcc/config/alpha/freebsd.h#8 (text+ko) ==== @@ -20,7 +20,7 @@ Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/alpha/freebsd.h,v 1.16 2003/08/17 08:17:44 gordon Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/alpha/freebsd.h,v 1.17 2003/08/24 16:56:31 obrien Exp $ */ /* Provide a FBSD_TARGET_CPU_CPP_BUILTINS and CPP_SPEC appropriate for FreeBSD/alpha. Besides the dealing with @@ -54,14 +54,11 @@ %{!dynamic-linker:-dynamic-linker /libexec/ld-elf.so.1}} \ %{static:-Bstatic}}" -/* We now have to provide a STARTFILE_SPEC because of a moronic pigheaded +/* Reset our STARTFILE_SPEC because of a moronic pigheaded Linuxism(glibc'ism) that was added to alpha/elf.h. */ - #undef STARTFILE_SPEC - #define STARTFILE_SPEC \ - "%{!shared: \ - %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} %{!p:crt1.o%s}}}\ - crti.o%s %{shared:crtbeginS.o%s}%{!shared:crtbegin.o%s}" +#undef STARTFILE_SPEC +#define STARTFILE_SPEC FBSD_STARTFILE_SPEC /************************[ Target stuff ]***********************************/ ==== //depot/projects/ia64/contrib/gcc/config/freebsd-spec.h#8 (text+ko) ==== @@ -18,7 +18,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/freebsd-spec.h,v 1.8 2003/07/11 05:09:19 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/freebsd-spec.h,v 1.9 2003/08/24 16:56:31 obrien Exp $ */ /* Common FreeBSD configuration. All FreeBSD architectures should include this file, which will specify @@ -101,26 +101,31 @@ %{!ansi:%{!std=c89:%{!std=iso9899.1990:%{!std=iso9899.199409:-D_LONGLONG}}}} \ %{posix:-D_POSIX_SOURCE}" -/* Provide a STARTFILE_SPEC appropriate for FreeBSD. Here we add - the magical crtbegin.o file (see crtstuff.c) which provides part - of the support for getting C++ file-scope static object constructed - before entering `main'. */ +/* Provide a STARTFILE_SPEC appropriate for FreeBSD. Here we add the magical + crtbegin.o file (see crtstuff.c) which provides part of the support for + getting C++ file-scope static object constructed before entering `main'. */ -#define FBSD_STARTFILE_SPEC \ - "%{!shared: \ - %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} \ - %{!p:%{profile:gcrt1.o%s} \ - %{!profile:crt1.o%s}}}} \ - crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}" +#define FBSD_STARTFILE_SPEC "\ + %{!shared: \ + %{pg:gcrt1.o%s} \ + %{!pg: \ + %{p:gcrt1.o%s} \ + %{!p: \ + %{profile:gcrt1.o%s} \ + %{!profile:crt1.o%s}}}} \ + crti.o%s \ + %{!shared:crtbegin.o%s} \ + %{shared:crtbeginS.o%s}" -/* Provide a ENDFILE_SPEC appropriate for FreeBSD. Here we tack on - the magical crtend.o file (see crtstuff.c) which provides part of - the support for getting C++ file-scope static object constructed - before entering `main', followed by a normal "finalizer" file, - `crtn.o'. */ +/* Provide an ENDFILE_SPEC appropriate for FreeBSD/i386. Here we tack on + our own magical crtend.o file (see crtstuff.c) which provides part of + the support for getting C++ file-scope static object constructed before + entering `main', followed by the normal "finalizer" file, `crtn.o'. */ -#define FBSD_ENDFILE_SPEC \ - " %{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s " +#define FBSD_ENDFILE_SPEC "\ + %{!shared:crtend.o%s} \ + %{shared:crtendS.o%s} \ + crtn.o%s " /* Provide a LIB_SPEC appropriate for FreeBSD as configured and as required by the user-land thread model. Before __FreeBSD_version ==== //depot/projects/ia64/contrib/gcc/config/i386/freebsd.h#20 (text+ko) ==== @@ -22,7 +22,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.65 2003/08/17 08:17:44 gordon Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/i386/freebsd.h,v 1.66 2003/08/24 16:56:31 obrien Exp $ */ #undef CC1_SPEC #define CC1_SPEC "%(cc1_cpu) %{profile:-p}" @@ -58,30 +58,16 @@ %{static:-Bstatic}} \ %{symbolic:-Bsymbolic}" -/* Provide a STARTFILE_SPEC appropriate for FreeBSD. Here we add the magical - crtbegin.o file (see crtstuff.c) which provides part of the support for - getting C++ file-scope static object constructed before entering `main'. */ +/* Reset our STARTFILE_SPEC which was properly set in config/freebsd.h + but trashed by config//. */ #undef STARTFILE_SPEC -#define STARTFILE_SPEC "\ - %{!shared: \ - %{pg:gcrt1.o%s} \ - %{!pg: \ - %{p:gcrt1.o%s} \ - %{!p:crt1.o%s}}} \ - crti.o%s \ - %{!shared:crtbegin.o%s} \ - %{shared:crtbeginS.o%s}" +#define STARTFILE_SPEC FBSD_STARTFILE_SPEC -/* Provide an ENDFILE_SPEC appropriate for FreeBSD/i386. Here we tack on our - own magical crtend.o file (see crtstuff.c) which provides part of the - support for getting C++ file-scope static object constructed before - entering `main', followed by the normal "finalizer" file, `crtn.o'. */ +/* Provide an ENDFILE_SPEC appropriate for FreeBSD/i386. */ #undef ENDFILE_SPEC -#define ENDFILE_SPEC "\ - %{!shared:crtend.o%s} \ - %{shared:crtendS.o%s} crtn.o%s" +#define ENDFILE_SPEC FBSD_ENDFILE_SPEC /************************[ Target stuff ]***********************************/ ==== //depot/projects/ia64/etc/defaults/rc.conf#40 (text+ko) ==== @@ -13,7 +13,7 @@ # # All arguments must be in double or single quotes. # -# $FreeBSD: src/etc/defaults/rc.conf,v 1.186 2003/08/20 06:50:34 mtm Exp $ +# $FreeBSD: src/etc/defaults/rc.conf,v 1.187 2003/08/24 06:29:32 mtm Exp $ ############################################################## ### Important initial Boot-time options #################### @@ -428,16 +428,35 @@ harvest_ethernet="YES" # Entropy device harvests ethernet randomness harvest_p_to_p="YES" # Entropy device harvests point-to-point randomness dmesg_enable="YES" # Save dmesg(8) to /var/run/dmesg.boot +watchdogd_enable="NO" # Start the software watchdog daemon +devfs_rulesets="/etc/defaults/devfs.rules /etc/devfs.rules" # Files containing + # devfs(8) rules. +devfs_system_ruleset="" # The name of a ruleset to apply to /dev + +############################################################## +### Jail Configuration ####################################### +############################################################## jail_enable="NO" # Set to NO to disable starting of any jails jail_list="" # Space separated list of names of jails jail_set_hostname_allow="YES" # Allow root user in a jail to change its hostname jail_socket_unixiproute_only="YES" # Route only TCP/IP within a jail -jail_sysvipc_allow="NO" # Allow SystemV IPC use from within a jail -watchdogd_enable="NO" # Start the software watchdog daemon -devfs_rulesets="/etc/defaults/devfs.rules /etc/devfs.rules" # Files containing - # devfs(8) rules. -devfs_system_ruleset="" # The name of a ruleset to apply to /dev +jail_sysvipc_allow="NO" # Allow SystemV IPC use from within a jail +jail_stop_jailer="NO" # Only stop jailer. Requires jail_*_exec be set + # to use sysutils/jailer port to start the jail. +# +# To use rc's built-in jail infrastructure create entries for +# each jail, specified in jail_list, with the following variables. +# NOTE: replace 'example' with the jail's name. +# +#jail_example_rootdir="/usr/jail/default" # Jail's root directory +#jail_example_hostname="default.domain.com" # Jail's hostname +#jail_example_ip="192.168.0.10" # Jail's IP number +#jail_example_exec="/bin/sh /etc/rc" # command to execute in jail +#jail_example_devfs_enable="NO" # mount devfs in the jail +#jail_example_fdescfs_enable="NO" # mount fdescfs in the jail +#jail_example_procfs_enable="NO" # mount procfs in jail +#jail_example_devfs_ruleset="123" # devfs ruleset to apply to jail ############################################################## ### Define source_rc_confs, the mechanism used by /etc/rc.* ## ==== //depot/projects/ia64/etc/rc.d/jail#5 (text+ko) ==== @@ -1,12 +1,12 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/jail,v 1.5 2003/08/19 03:49:30 kuriyama Exp $ +# $FreeBSD: src/etc/rc.d/jail,v 1.6 2003/08/24 06:29:32 mtm Exp $ # # PROVIDE: jail # REQUIRE: LOGIN # BEFORE: securelevel -# KEYWORD: FreeBSD +# KEYWORD: FreeBSD shutdown . /etc/rc.subr @@ -15,6 +15,50 @@ start_cmd="jail_start" stop_cmd="jail_stop" +# init_variables _j +# Initialize the various jail variables for jail _j. +# +init_variables() +{ + _j="$1" + + if [ -z "$_j" ]; then + warn "init_variables: you must specify a jail" + return + fi + + eval jail_rootdir=\"\$jail_${_j}_rootdir\" + jail_devdir="${jail_rootdir}/dev" + jail_fdescdir="${jail_devdir}/fd" + jail_procdir="${jail_rootdir}/proc" + eval jail_hostname=\"\$jail_${_j}_hostname\" + eval jail_ip=\"\$jail_${_j}_ip\" + eval jail_exec=\"\$jail_${_j}_exec\" + [ -z "${jail_exec}" ] && jail_exec="/bin/sh /etc/rc" + + # The default jail ruleset will be used by rc.subr if none is specified. + eval jail_ruleset=\"\$jail_${_j}_devfs_ruleset\" + eval jail_devfs=\"\$jail_${_j}_devfs_enable\" + [ -z "${jail_devfs}" ] && jail_devfs="NO" + eval jail_fdescfs=\"\$jail_${_j}_fdescfs_enable\" + [ -z "${jail_fdescfs}" ] && jail_fdescfs="NO" + eval jail_procfs=\"\$jail_${_j}_procfs_enable\" + [ -z "${jail_procfs}" ] && jail_procfs="NO" + + # Debuggin aid + # + debug "$_j devfs enable: $jail_devfs" + debug "$_j fdescfs enable: $jail_fdescfs" + debug "$_j procfs enable: $jail_procfs" + debug "$_j hostname: $jail_hostname" + debug "$_j ip: $jail_ip" + debug "$_j root: $jail_rootdir" + debug "$_j devdir: $jail_devdir" + debug "$_j fdescdir: $jail_fdescdir" + debug "$_j procdir: $jail_procdir" + debug "$_j ruleset: $jail_ruleset" +} + jail_start() { echo -n 'Configuring jails:' @@ -46,22 +90,68 @@ fi echo '.' - echo 'Starting Jails.' + echo -n 'Starting Jails:' for _jail in ${jail_list} do - eval jail_rootdir=\"\$jail_${_jail}_rootdir\" - eval jail_hostname=\"\$jail_${_jail}_hostname\" - eval jail_ip=\"\$jail_${_jail}_ip\" - eval jail_exec=\"\$jail_${_jail}_exec\" - [ -z "${jail_exec}" ] && jail_exec="/bin/sh /etc/rc" - - jail ${jail_rootdir} ${jail_hostname} ${jail_ip} ${jail_exec} + init_variables $_jail + if checkyesno jail_devfs; then + info "Mounting devfs on ${jail_devdir}" + devfs_mount_jail "${jail_devdir}" ${jail_ruleset} + + # Transitional symlink for old binaries + if [ ! -L ${jail_devdir}/log ]; then + devfs_link ${jail_devdir} ../var/run/log log + fi + + # Jail console output + devfs_link ${jail_devdir} ../var/log/console console + fi + if checkyesno jail_fdescfs; then + info "Mounting fdescfs on ${jail_fdescdir}" + mount -t fdescfs fdesc "${jail_fdescdir}" + fi + if checkyesno jail_procfs; then + info "Mounting procfs onto ${jail_procdir}" + if [ -d ${jail_procdir} ] ; then + mount -t procfs proc "${jail_procdir}" + fi + fi + jail 1>/dev/null 2>&1 \ + ${jail_rootdir} ${jail_hostname} ${jail_ip} ${jail_exec} + [ "$?" -eq 0 ] && echo -n " $jail_hostname" done + echo '.' } jail_stop() { - kill -TERM $(ps aux | awk '$8 ~ /.*J/ {print $2};') + echo 'Stopping all jails.' + if checkyesno jail_stop_jailer; then + rc_pid=$(ps aux | grep "jailer" | awk '$8 ~ /.*J/ {print $2};') + else + rc_pid=$(ps aux | awk '$8 ~ /.*J/ {print $2};') + fi + if [ -n "${rc_pid}" ]; then + kill -TERM $rc_pid + wait_for_pids $rc_pid + fi + for _jail in ${jail_list} + do + init_variables $_jail + if checkyesno jail_devfs; then + if [ -d ${jail_devdir} ] ; then + umount -f ${jail_devdir} >/dev/null 2>&1 + fi + fi + if checkyesno jail_fdescfs; then + umount -f ${jail_fdescdir} >/dev/null 2>&1 + fi + if checkyesno jail_procfs; then + if [ -d ${jail_procdir} ] ; then + umount -f ${jail_procdir} >/dev/null 2>&1 + fi + fi + done } ==== //depot/projects/ia64/libexec/lukemftpd/Makefile#12 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 4/4/94 -# $FreeBSD: src/libexec/lukemftpd/Makefile,v 1.11 2003/06/14 19:32:51 obrien Exp $ +# $FreeBSD: src/libexec/lukemftpd/Makefile,v 1.12 2003/08/24 17:35:52 obrien Exp $ LUKEMFTPD= ${.CURDIR}/../../contrib/lukemftpd .PATH: ${LUKEMFTPD}/src ${LUKEMFTPD}/libnetbsd @@ -13,7 +13,7 @@ WFORMAT= 0 CFLAGS+= -include nbsd2fbsd.h CFLAGS+= -I${.CURDIR} -I${LUKEMFTPD} -I${LUKEMFTPD}/src -CFLAGS+= -I${.CURDIR}/../..//lib/libc/stdtime +CFLAGS+= -I${.CURDIR}/../../lib/libc/stdtime YFLAGS= LDADD= -lcrypt -lutil ==== //depot/projects/ia64/sbin/atacontrol/atacontrol.c#12 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sbin/atacontrol/atacontrol.c,v 1.25 2003/05/05 10:28:37 sos Exp $ + * $FreeBSD: src/sbin/atacontrol/atacontrol.c,v 1.26 2003/08/24 09:23:54 sos Exp $ */ #include @@ -55,6 +55,7 @@ case ATA_UDMA4: return "UDMA66"; case ATA_UDMA5: return "UDMA100"; case ATA_UDMA6: return "UDMA133"; + case ATA_SA150: return "SATA150"; case ATA_DMA: return "BIOSDMA"; default: return "???"; } @@ -130,66 +131,71 @@ printf("heads %d\n", parm->heads); printf("sectors/track %d\n", parm->sectors); - printf("lba%ssupported ", parm->support_lba ? " " : " not "); + printf("lba%ssupported ", + parm->capabilities1 & ATA_SUPPORT_LBA ? " " : " not "); if (lbasize) printf("%d sectors\n", lbasize); else printf("\n"); printf("lba48%ssupported ", - parm->support.address48 ? " " : " not "); + parm->support.command2 & ATA_SUPPORT_ADDRESS48 ? " " : " not "); if (lbasize48) printf("%ju sectors\n", (uintmax_t)lbasize48); else printf("\n"); - printf("dma%ssupported\n", parm->support_dma ? " " : " not"); + printf("dma%ssupported\n", + parm->capabilities1 & ATA_SUPPORT_DMA ? " " : " not"); - printf("overlap%ssupported\n", parm->support_queueing ? " " : " not "); + printf("overlap%ssupported\n", + parm->capabilities1 & ATA_SUPPORT_OVERLAP ? " " : " not "); printf("\nFeature " "Support Enable Value Vendor\n"); printf("write cache %s %s\n", - parm->support.write_cache ? "yes" : "no", - parm->enabled.write_cache ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_WRITECACHE ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_WRITECACHE ? "yes" : "no"); printf("read ahead %s %s\n", - parm->support.look_ahead ? "yes" : "no", - parm->enabled.look_ahead ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_LOOKAHEAD ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_LOOKAHEAD ? "yes" : "no"); - printf("dma queued %s %s %d/%02X\n", - parm->support.queued ? "yes" : "no", - parm->enabled.queued ? "yes" : "no", - parm->queuelen, parm->queuelen); + printf("dma queued %s %s %d/0x%02X\n", + parm->support.command2 & ATA_SUPPORT_QUEUED ? "yes" : "no", + parm->enabled.command2 & ATA_SUPPORT_QUEUED ? "yes" : "no", + ATA_QUEUE_LEN(parm->queue), ATA_QUEUE_LEN(parm->queue)); printf("SMART %s %s\n", - parm->support.smart ? "yes" : "no", - parm->enabled.smart ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_SMART ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_SMART ? "yes" : "no"); printf("microcode download %s %s\n", - parm->support.microcode ? "yes" : "no", - parm->enabled.microcode ? "yes" : "no"); + parm->support.command2 & ATA_SUPPORT_MICROCODE ? "yes" : "no", + parm->enabled.command2 & ATA_SUPPORT_MICROCODE ? "yes" : "no"); printf("security %s %s\n", - parm->support.security ? "yes" : "no", - parm->enabled.security ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_SECURITY ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_SECURITY ? "yes" : "no"); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Aug 24 16:21:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B7E9A16A4C1; Sun, 24 Aug 2003 16:21:17 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 85F5A16A4BF for ; Sun, 24 Aug 2003 16:21:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C20CA43FB1 for ; Sun, 24 Aug 2003 16:21:15 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7ONLF0U089730 for ; Sun, 24 Aug 2003 16:21:15 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7ONLCRu089727 for perforce@freebsd.org; Sun, 24 Aug 2003 16:21:12 -0700 (PDT) Date: Sun, 24 Aug 2003 16:21:12 -0700 (PDT) Message-Id: <200308242321.h7ONLCRu089727@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36862 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Aug 2003 23:21:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=36862 Change 36862 by marcel@marcel_nfs on 2003/08/24 16:20:27 IFC @36860 Affected files ... .. //depot/projects/uart/amd64/amd64/pmap.c#13 integrate .. //depot/projects/uart/conf/NOTES#10 integrate .. //depot/projects/uart/conf/files#16 integrate .. //depot/projects/uart/conf/options#10 integrate .. //depot/projects/uart/dev/aac/aac.c#5 integrate .. //depot/projects/uart/dev/aac/aac_cam.c#3 integrate .. //depot/projects/uart/dev/aac/aac_debug.c#2 integrate .. //depot/projects/uart/dev/aac/aac_disk.c#4 integrate .. //depot/projects/uart/dev/aac/aac_linux.c#2 integrate .. //depot/projects/uart/dev/aac/aac_pci.c#5 integrate .. //depot/projects/uart/dev/acpica/acpi_cpu.c#2 integrate .. //depot/projects/uart/dev/acpica/acpi_ec.c#8 integrate .. //depot/projects/uart/dev/acpica/acpi_isab.c#4 integrate .. //depot/projects/uart/dev/acpica/acpi_lid.c#2 integrate .. //depot/projects/uart/dev/acpica/acpi_pci.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi_pci_link.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi_pcib.c#4 integrate .. //depot/projects/uart/dev/acpica/acpi_pcib_pci.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi_powerres.c#2 integrate .. //depot/projects/uart/dev/acpica/acpi_resource.c#2 integrate .. //depot/projects/uart/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/uart/dev/acpica/acpica_support.c#2 integrate .. //depot/projects/uart/dev/adlink/adlink.c#3 integrate .. //depot/projects/uart/dev/advansys/adv_eisa.c#3 integrate .. //depot/projects/uart/dev/advansys/adv_isa.c#3 integrate .. //depot/projects/uart/dev/advansys/adv_pci.c#4 integrate .. //depot/projects/uart/dev/advansys/advansys.c#3 integrate .. //depot/projects/uart/dev/advansys/advlib.c#2 integrate .. //depot/projects/uart/dev/advansys/advmcode.c#2 integrate .. //depot/projects/uart/dev/advansys/adw_pci.c#4 integrate .. //depot/projects/uart/dev/advansys/adwcam.c#3 integrate .. //depot/projects/uart/dev/advansys/adwlib.c#2 integrate .. //depot/projects/uart/dev/advansys/adwmcode.c#2 integrate .. //depot/projects/uart/dev/aha/aha.c#3 integrate .. //depot/projects/uart/dev/aha/aha_isa.c#3 integrate .. //depot/projects/uart/dev/aha/aha_mca.c#3 integrate .. //depot/projects/uart/dev/aic/aic.c#4 integrate .. //depot/projects/uart/dev/aic/aic_cbus.c#2 integrate .. //depot/projects/uart/dev/aic/aic_isa.c#2 integrate .. //depot/projects/uart/dev/aic/aic_pccard.c#2 integrate .. //depot/projects/uart/dev/aic7xxx/ahc_eisa.c#3 integrate .. //depot/projects/uart/dev/aic7xxx/ahc_pci.c#3 integrate .. //depot/projects/uart/dev/aic7xxx/ahd_pci.c#3 integrate .. //depot/projects/uart/dev/aic7xxx/aic7770.c#2 integrate .. //depot/projects/uart/dev/aic7xxx/aic79xx.c#2 integrate .. //depot/projects/uart/dev/aic7xxx/aic79xx_osm.c#2 integrate .. //depot/projects/uart/dev/aic7xxx/aic79xx_pci.c#2 integrate .. //depot/projects/uart/dev/aic7xxx/aic7xxx.c#2 integrate .. //depot/projects/uart/dev/aic7xxx/aic7xxx_93cx6.c#2 integrate .. //depot/projects/uart/dev/aic7xxx/aic7xxx_osm.c#2 integrate .. //depot/projects/uart/dev/aic7xxx/aic7xxx_pci.c#2 integrate .. //depot/projects/uart/dev/amr/amr.c#3 integrate .. //depot/projects/uart/dev/amr/amr_cam.c#2 integrate .. //depot/projects/uart/dev/amr/amr_disk.c#2 integrate .. //depot/projects/uart/dev/amr/amr_pci.c#4 integrate .. //depot/projects/uart/dev/an/if_aironet_ieee.h#3 integrate .. //depot/projects/uart/dev/an/if_an.c#4 integrate .. //depot/projects/uart/dev/an/if_an_isa.c#2 integrate .. //depot/projects/uart/dev/an/if_an_pccard.c#2 integrate .. //depot/projects/uart/dev/an/if_an_pci.c#5 integrate .. //depot/projects/uart/dev/an/if_anreg.h#3 integrate .. //depot/projects/uart/dev/ar/if_ar.c#2 integrate .. //depot/projects/uart/dev/ar/if_ar_isa.c#2 integrate .. //depot/projects/uart/dev/ar/if_ar_pci.c#3 integrate .. //depot/projects/uart/dev/asr/asr.c#3 integrate .. //depot/projects/uart/dev/ata/ata-all.c#2 integrate .. //depot/projects/uart/dev/ata/ata-all.h#2 integrate .. //depot/projects/uart/dev/ata/ata-card.c#2 integrate .. //depot/projects/uart/dev/ata/ata-cbus.c#2 integrate .. //depot/projects/uart/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/uart/dev/ata/ata-commands.h#1 branch .. //depot/projects/uart/dev/ata/ata-disk.c#2 integrate .. //depot/projects/uart/dev/ata/ata-disk.h#2 integrate .. //depot/projects/uart/dev/ata/ata-dma.c#4 integrate .. //depot/projects/uart/dev/ata/ata-isa.c#2 integrate .. //depot/projects/uart/dev/ata/ata-lowlevel.c#1 branch .. //depot/projects/uart/dev/ata/ata-pci.c#4 integrate .. //depot/projects/uart/dev/ata/ata-pci.h#3 integrate .. //depot/projects/uart/dev/ata/ata-queue.c#1 branch .. //depot/projects/uart/dev/ata/ata-raid.c#2 integrate .. //depot/projects/uart/dev/ata/ata-raid.h#2 integrate .. //depot/projects/uart/dev/ata/atapi-all.c#2 delete .. //depot/projects/uart/dev/ata/atapi-all.h#2 delete .. //depot/projects/uart/dev/ata/atapi-cam.c#3 integrate .. //depot/projects/uart/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/uart/dev/ata/atapi-cd.h#2 integrate .. //depot/projects/uart/dev/ata/atapi-fd.c#2 integrate .. //depot/projects/uart/dev/ata/atapi-fd.h#2 integrate .. //depot/projects/uart/dev/ata/atapi-tape.c#2 integrate .. //depot/projects/uart/dev/ata/atapi-tape.h#2 integrate .. //depot/projects/uart/dev/awi/am79c930.c#2 integrate .. //depot/projects/uart/dev/awi/awi.c#2 integrate .. //depot/projects/uart/dev/awi/awi_wep.c#2 integrate .. //depot/projects/uart/dev/awi/awi_wicfg.c#2 integrate .. //depot/projects/uart/dev/awi/if_awi_pccard.c#2 integrate .. //depot/projects/uart/dev/bge/if_bge.c#9 integrate .. //depot/projects/uart/dev/bktr/bktr_audio.c#4 integrate .. //depot/projects/uart/dev/bktr/bktr_card.c#3 integrate .. //depot/projects/uart/dev/bktr/bktr_core.c#5 integrate .. //depot/projects/uart/dev/bktr/bktr_i2c.c#3 integrate .. //depot/projects/uart/dev/bktr/bktr_mem.c#2 integrate .. //depot/projects/uart/dev/bktr/bktr_os.c#4 integrate .. //depot/projects/uart/dev/bktr/bktr_tuner.c#3 integrate .. //depot/projects/uart/dev/buslogic/bt.c#4 integrate .. //depot/projects/uart/dev/buslogic/bt_eisa.c#3 integrate .. //depot/projects/uart/dev/buslogic/bt_isa.c#3 integrate .. //depot/projects/uart/dev/buslogic/bt_mca.c#3 integrate .. //depot/projects/uart/dev/buslogic/bt_pci.c#4 integrate .. //depot/projects/uart/dev/cardbus/cardbus.c#3 integrate .. //depot/projects/uart/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/uart/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/uart/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/uart/dev/cnw/if_cnw.c#2 integrate .. //depot/projects/uart/dev/cs/if_cs.c#2 integrate .. //depot/projects/uart/dev/cs/if_cs_isa.c#2 integrate .. //depot/projects/uart/dev/cs/if_cs_pccard.c#2 integrate .. //depot/projects/uart/dev/ct/bshw_machdep.c#2 integrate .. //depot/projects/uart/dev/ct/ct.c#3 integrate .. //depot/projects/uart/dev/ct/ct_isa.c#3 integrate .. //depot/projects/uart/dev/dec/mcclock.c#2 integrate .. //depot/projects/uart/dev/digi/CX.c#2 integrate .. //depot/projects/uart/dev/digi/CX_PCI.c#2 integrate .. //depot/projects/uart/dev/digi/EPCX.c#2 integrate .. //depot/projects/uart/dev/digi/EPCX_PCI.c#2 integrate .. //depot/projects/uart/dev/digi/Xe.c#2 integrate .. //depot/projects/uart/dev/digi/Xem.c#2 integrate .. //depot/projects/uart/dev/digi/Xr.c#2 integrate .. //depot/projects/uart/dev/digi/digi_isa.c#2 integrate .. //depot/projects/uart/dev/digi/digi_pci.c#3 integrate .. //depot/projects/uart/dev/dpt/dpt_eisa.c#3 integrate .. //depot/projects/uart/dev/dpt/dpt_isa.c#3 integrate .. //depot/projects/uart/dev/dpt/dpt_pci.c#4 integrate .. //depot/projects/uart/dev/dpt/dpt_scsi.c#3 integrate .. //depot/projects/uart/dev/drm/mga_state.c#2 integrate .. //depot/projects/uart/dev/drm/radeon_mem.c#2 integrate .. //depot/projects/uart/dev/ed/if_ed_isa.c#2 integrate .. //depot/projects/uart/dev/ed/if_ed_pci.c#3 integrate .. //depot/projects/uart/dev/eisa/eisaconf.c#2 integrate .. //depot/projects/uart/dev/em/if_em_hw.c#2 integrate .. //depot/projects/uart/dev/en/if_en_pci.c#4 integrate .. //depot/projects/uart/dev/ep/if_ep.c#4 integrate .. //depot/projects/uart/dev/ep/if_ep_eisa.c#3 integrate .. //depot/projects/uart/dev/ep/if_ep_isa.c#3 integrate .. //depot/projects/uart/dev/ep/if_ep_mca.c#3 integrate .. //depot/projects/uart/dev/ep/if_ep_pccard.c#3 integrate .. //depot/projects/uart/dev/ex/if_ex.c#2 integrate .. //depot/projects/uart/dev/ex/if_ex_isa.c#2 integrate .. //depot/projects/uart/dev/ex/if_ex_pccard.c#2 integrate .. //depot/projects/uart/dev/exca/exca.c#2 integrate .. //depot/projects/uart/dev/fatm/if_fatm.c#8 integrate .. //depot/projects/uart/dev/fb/boot_font.c#3 integrate .. //depot/projects/uart/dev/fb/fb.c#3 integrate .. //depot/projects/uart/dev/fb/gfb.c#3 integrate .. //depot/projects/uart/dev/fb/s3_pci.c#3 integrate .. //depot/projects/uart/dev/fb/splash.c#2 integrate .. //depot/projects/uart/dev/fb/tga.c#3 integrate .. //depot/projects/uart/dev/fb/vga.c#2 integrate .. //depot/projects/uart/dev/fe/if_fe.c#2 integrate .. //depot/projects/uart/dev/fe/if_fe_cbus.c#2 integrate .. //depot/projects/uart/dev/fe/if_fe_isa.c#2 integrate .. //depot/projects/uart/dev/fe/if_fe_pccard.c#2 integrate .. //depot/projects/uart/dev/firewire/fwcrom.c#3 integrate .. //depot/projects/uart/dev/firewire/fwdma.c#5 integrate .. //depot/projects/uart/dev/firewire/fwmem.c#3 integrate .. //depot/projects/uart/dev/fxp/if_fxp.c#9 integrate .. //depot/projects/uart/dev/gem/if_gem.c#4 integrate .. //depot/projects/uart/dev/gem/if_gem_pci.c#3 integrate .. //depot/projects/uart/dev/gfb/gfb_pci.c#3 integrate .. //depot/projects/uart/dev/gx/if_gx.c#3 integrate .. //depot/projects/uart/dev/harp/if_harp.c#2 integrate .. //depot/projects/uart/dev/hatm/if_hatm_intr.c#4 integrate .. //depot/projects/uart/dev/hea/eni.c#2 integrate .. //depot/projects/uart/dev/hea/eni_buffer.c#2 integrate .. //depot/projects/uart/dev/hea/eni_globals.c#2 integrate .. //depot/projects/uart/dev/hea/eni_init.c#2 integrate .. //depot/projects/uart/dev/hea/eni_intr.c#2 integrate .. //depot/projects/uart/dev/hea/eni_receive.c#2 integrate .. //depot/projects/uart/dev/hea/eni_transmit.c#2 integrate .. //depot/projects/uart/dev/hea/eni_vcm.c#2 integrate .. //depot/projects/uart/dev/hea/hea_freebsd.c#2 integrate .. //depot/projects/uart/dev/hea/hea_pci.c#2 integrate .. //depot/projects/uart/dev/hfa/fore_buffer.c#3 integrate .. //depot/projects/uart/dev/hfa/fore_globals.c#3 integrate .. //depot/projects/uart/dev/hfa/fore_load.c#3 integrate .. //depot/projects/uart/dev/hfa/fore_receive.c#3 integrate .. //depot/projects/uart/dev/hfa/fore_stats.c#3 integrate .. //depot/projects/uart/dev/hfa/fore_timer.c#3 integrate .. //depot/projects/uart/dev/hfa/fore_transmit.c#3 integrate .. //depot/projects/uart/dev/hfa/hfa_eisa.c#2 integrate .. //depot/projects/uart/dev/hfa/hfa_pci.c#2 integrate .. //depot/projects/uart/dev/hfa/hfa_sbus.c#3 integrate .. //depot/projects/uart/dev/hifn/hifn7751.c#5 integrate .. //depot/projects/uart/dev/hme/if_hme.c#4 integrate .. //depot/projects/uart/dev/hme/if_hme_pci.c#5 integrate .. //depot/projects/uart/dev/hme/if_hme_sbus.c#4 integrate .. //depot/projects/uart/dev/ichsmb/ichsmb.c#2 integrate .. //depot/projects/uart/dev/ichsmb/ichsmb_pci.c#3 integrate .. //depot/projects/uart/dev/ida/ida.c#3 integrate .. //depot/projects/uart/dev/ida/ida_eisa.c#3 integrate .. //depot/projects/uart/dev/ida/ida_pci.c#4 integrate .. //depot/projects/uart/dev/idt/idt.c#2 integrate .. //depot/projects/uart/dev/idt/idt_harp.c#2 integrate .. //depot/projects/uart/dev/idt/idt_pci.c#2 integrate .. //depot/projects/uart/dev/ie/if_ie.c#3 integrate .. //depot/projects/uart/dev/ie/if_ie_isa.c#2 integrate .. //depot/projects/uart/dev/iicbus/if_ic.c#2 integrate .. //depot/projects/uart/dev/iicbus/iicbb.c#2 integrate .. //depot/projects/uart/dev/iicbus/iicbus.c#2 integrate .. //depot/projects/uart/dev/iicbus/iiconf.c#2 integrate .. //depot/projects/uart/dev/iir/iir.c#3 integrate .. //depot/projects/uart/dev/iir/iir_ctrl.c#2 integrate .. //depot/projects/uart/dev/iir/iir_pci.c#4 integrate .. //depot/projects/uart/dev/ips/ips.c#3 integrate .. //depot/projects/uart/dev/ips/ips_commands.c#3 integrate .. //depot/projects/uart/dev/ips/ips_disk.c#2 integrate .. //depot/projects/uart/dev/ips/ips_ioctl.c#3 integrate .. //depot/projects/uart/dev/ips/ips_pci.c#4 integrate .. //depot/projects/uart/dev/isp/isp.c#2 integrate .. //depot/projects/uart/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/uart/dev/isp/isp_pci.c#4 integrate .. //depot/projects/uart/dev/isp/isp_sbus.c#4 integrate .. //depot/projects/uart/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/uart/dev/joy/joy.c#2 integrate .. //depot/projects/uart/dev/joy/joy_isa.c#2 integrate .. //depot/projects/uart/dev/joy/joy_pccard.c#2 integrate .. //depot/projects/uart/dev/kbd/atkbd.c#4 integrate .. //depot/projects/uart/dev/kbd/atkbdc.c#2 integrate .. //depot/projects/uart/dev/kbd/kbd.c#2 integrate .. //depot/projects/uart/dev/lge/if_lge.c#4 integrate .. //depot/projects/uart/dev/lmc/if_lmc.c#3 integrate .. //depot/projects/uart/dev/lmc/if_lmc_common.c#2 integrate .. //depot/projects/uart/dev/lmc/if_lmc_fbsd3.c#2 integrate .. //depot/projects/uart/dev/lmc/if_lmc_media.c#2 integrate .. //depot/projects/uart/dev/lnc/if_lnc.c#3 integrate .. //depot/projects/uart/dev/lnc/if_lnc_cbus.c#3 integrate .. //depot/projects/uart/dev/lnc/if_lnc_isa.c#3 integrate .. //depot/projects/uart/dev/lnc/if_lnc_pci.c#4 integrate .. //depot/projects/uart/dev/matcd/matcd.c#2 integrate .. //depot/projects/uart/dev/matcd/matcd_isa.c#2 integrate .. //depot/projects/uart/dev/mca/mca_bus.c#2 integrate .. //depot/projects/uart/dev/mcd/mcd.c#2 integrate .. //depot/projects/uart/dev/mcd/mcd_isa.c#2 integrate .. //depot/projects/uart/dev/mii/acphy.c#2 integrate .. //depot/projects/uart/dev/mii/amphy.c#2 integrate .. //depot/projects/uart/dev/mii/bmtphy.c#2 integrate .. //depot/projects/uart/dev/mii/brgphy.c#6 integrate .. //depot/projects/uart/dev/mii/dcphy.c#3 integrate .. //depot/projects/uart/dev/mii/e1000phy.c#2 integrate .. //depot/projects/uart/dev/mii/exphy.c#2 integrate .. //depot/projects/uart/dev/mii/inphy.c#2 integrate .. //depot/projects/uart/dev/mii/lxtphy.c#2 integrate .. //depot/projects/uart/dev/mii/mii.c#2 integrate .. //depot/projects/uart/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/uart/dev/mii/mlphy.c#2 integrate .. //depot/projects/uart/dev/mii/nsgphy.c#2 integrate .. //depot/projects/uart/dev/mii/nsphy.c#2 integrate .. //depot/projects/uart/dev/mii/pnaphy.c#2 integrate .. //depot/projects/uart/dev/mii/pnphy.c#2 integrate .. //depot/projects/uart/dev/mii/qsphy.c#2 integrate .. //depot/projects/uart/dev/mii/rlphy.c#2 integrate .. //depot/projects/uart/dev/mii/ruephy.c#2 integrate .. //depot/projects/uart/dev/mii/tdkphy.c#2 integrate .. //depot/projects/uart/dev/mii/tlphy.c#2 integrate .. //depot/projects/uart/dev/mii/ukphy.c#2 integrate .. //depot/projects/uart/dev/mii/ukphy_subr.c#2 integrate .. //depot/projects/uart/dev/mii/xmphy.c#2 integrate .. //depot/projects/uart/dev/mk48txx/mk48txx.c#3 integrate .. //depot/projects/uart/dev/mlx/mlx_disk.c#2 integrate .. //depot/projects/uart/dev/mlx/mlx_pci.c#4 integrate .. //depot/projects/uart/dev/mpt/mpt.c#2 integrate .. //depot/projects/uart/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/uart/dev/mpt/mpt_freebsd.c#2 integrate .. //depot/projects/uart/dev/mpt/mpt_pci.c#4 integrate .. //depot/projects/uart/dev/musycc/musycc.c#3 integrate .. //depot/projects/uart/dev/my/if_my.c#3 integrate .. //depot/projects/uart/dev/ncv/ncr53c500.c#2 integrate .. //depot/projects/uart/dev/ncv/ncr53c500_pccard.c#2 integrate .. //depot/projects/uart/dev/nge/if_nge.c#4 integrate .. //depot/projects/uart/dev/nmdm/nmdm.c#2 integrate .. //depot/projects/uart/dev/nsp/nsp.c#2 integrate .. //depot/projects/uart/dev/nsp/nsp_pccard.c#2 integrate .. //depot/projects/uart/dev/null/null.c#2 integrate .. //depot/projects/uart/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/uart/dev/ofw/ofw_disk.c#2 integrate .. //depot/projects/uart/dev/ofw/openfirm.c#2 integrate .. //depot/projects/uart/dev/ofw/openfirmio.c#2 integrate .. //depot/projects/uart/dev/ofw/openpromio.c#2 integrate .. //depot/projects/uart/dev/patm/if_patm.c#4 integrate .. //depot/projects/uart/dev/patm/if_patm_attach.c#4 integrate .. //depot/projects/uart/dev/patm/if_patm_intr.c#2 integrate .. //depot/projects/uart/dev/patm/if_patm_ioctl.c#4 integrate .. //depot/projects/uart/dev/patm/if_patm_rtables.c#2 integrate .. //depot/projects/uart/dev/patm/if_patm_rx.c#4 integrate .. //depot/projects/uart/dev/patm/if_patm_tx.c#5 integrate .. //depot/projects/uart/dev/pccard/pccard.c#3 integrate .. //depot/projects/uart/dev/pccard/pccard_cis_quirks.c#2 integrate .. //depot/projects/uart/dev/pci/eisa_pci.c#3 integrate .. //depot/projects/uart/dev/pci/fixup_pci.c#3 integrate .. //depot/projects/uart/dev/pci/ignore_pci.c#3 integrate .. //depot/projects/uart/dev/pci/isa_pci.c#4 integrate .. //depot/projects/uart/dev/pci/pci_pci.c#3 integrate .. //depot/projects/uart/dev/pci/pci_user.c#3 integrate .. //depot/projects/uart/dev/pcic/i82365.c#2 integrate .. //depot/projects/uart/dev/pcic/i82365_isa.c#2 integrate .. //depot/projects/uart/dev/pdq/if_fpa.c#2 integrate .. //depot/projects/uart/dev/pdq/pdq.c#2 integrate .. //depot/projects/uart/dev/pdq/pdq_ifsubr.c#2 integrate .. //depot/projects/uart/dev/ppbus/if_plip.c#2 integrate .. //depot/projects/uart/dev/ppbus/immio.c#2 integrate .. //depot/projects/uart/dev/ppbus/lpbb.c#2 integrate .. //depot/projects/uart/dev/ppbus/lpt.c#2 integrate .. //depot/projects/uart/dev/ppbus/pcfclock.c#2 integrate .. //depot/projects/uart/dev/ppbus/ppb_1284.c#2 integrate .. //depot/projects/uart/dev/ppbus/ppb_base.c#3 integrate .. //depot/projects/uart/dev/ppbus/ppb_msq.c#2 integrate .. //depot/projects/uart/dev/ppbus/ppbconf.c#2 integrate .. //depot/projects/uart/dev/ppbus/ppi.c#2 integrate .. //depot/projects/uart/dev/ppbus/pps.c#2 integrate .. //depot/projects/uart/dev/ppbus/vpo.c#2 integrate .. //depot/projects/uart/dev/ppbus/vpoio.c#2 integrate .. //depot/projects/uart/dev/pst/pst-iop.c#3 integrate .. //depot/projects/uart/dev/pst/pst-pci.c#3 integrate .. //depot/projects/uart/dev/pst/pst-raid.c#3 integrate .. //depot/projects/uart/dev/puc/puc.c#6 integrate .. //depot/projects/uart/dev/puc/puc_pccard.c#2 integrate .. //depot/projects/uart/dev/puc/puc_pci.c#3 integrate .. //depot/projects/uart/dev/raidframe/rf_acctrace.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_alloclist.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_aselect.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_callback.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_chaindecluster.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_copyback.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_cvscan.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_dagdegrd.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_dagdegwr.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_dagffrd.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_dagffwr.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_dagfuncs.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_dagutils.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_debugMem.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_debugprint.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_decluster.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_declusterPQ.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_diskqueue.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_disks.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_driver.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_engine.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_evenodd.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_evenodd_dagfuncs.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_evenodd_dags.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_fifo.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_geniq.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_interdecluster.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_invertq.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_layout.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_map.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_mcpair.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_memchunk.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_nwayxor.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_options.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_paritylog.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_paritylogDiskMgr.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_paritylogging.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_parityloggingdags.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_parityscan.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_pq.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_pqdeg.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_pqdegdags.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_psstatus.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_raid0.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_raid1.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_raid4.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_raid5.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_raid5_rotatedspare.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_reconbuffer.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_reconmap.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_reconstruct.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_reconutil.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_revent.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_shutdown.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_sstf.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_states.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_stripelocks.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_strutils.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_threadstuff.c#2 integrate .. //depot/projects/uart/dev/raidframe/rf_utils.c#2 integrate .. //depot/projects/uart/dev/random/harvest.c#2 integrate .. //depot/projects/uart/dev/random/hash.c#2 integrate .. //depot/projects/uart/dev/random/randomdev.c#3 integrate .. //depot/projects/uart/dev/random/yarrow.c#2 integrate .. //depot/projects/uart/dev/ray/if_ray.c#2 integrate .. //depot/projects/uart/dev/rndtest/rndtest.c#3 integrate .. //depot/projects/uart/dev/rp/rp.c#3 integrate .. //depot/projects/uart/dev/rp/rp_isa.c#2 integrate .. //depot/projects/uart/dev/rp/rp_pci.c#3 integrate .. //depot/projects/uart/dev/sab/sab.c#3 integrate .. //depot/projects/uart/dev/sbni/if_sbni.c#3 integrate .. //depot/projects/uart/dev/sbni/if_sbni_isa.c#2 integrate .. //depot/projects/uart/dev/sbni/if_sbni_pci.c#3 integrate .. //depot/projects/uart/dev/sbsh/if_sbsh.c#3 integrate .. //depot/projects/uart/dev/scd/scd.c#2 integrate .. //depot/projects/uart/dev/scd/scd_isa.c#2 integrate .. //depot/projects/uart/dev/si/si.c#2 integrate .. //depot/projects/uart/dev/si/si2_z280.c#2 integrate .. //depot/projects/uart/dev/si/si3_t225.c#2 integrate .. //depot/projects/uart/dev/si/si_eisa.c#2 integrate .. //depot/projects/uart/dev/si/si_isa.c#2 integrate .. //depot/projects/uart/dev/si/si_pci.c#3 integrate .. //depot/projects/uart/dev/sio/sio.c#3 integrate .. //depot/projects/uart/dev/sio/sio_isa.c#2 integrate .. //depot/projects/uart/dev/sio/sio_pccard.c#2 integrate .. //depot/projects/uart/dev/sio/sio_pci.c#3 integrate .. //depot/projects/uart/dev/sio/sio_puc.c#2 integrate .. //depot/projects/uart/dev/smbus/smbconf.c#2 integrate .. //depot/projects/uart/dev/smbus/smbus.c#2 integrate .. //depot/projects/uart/dev/sn/if_sn.c#2 integrate .. //depot/projects/uart/dev/sn/if_sn_isa.c#2 integrate .. //depot/projects/uart/dev/sn/if_sn_pccard.c#3 integrate .. //depot/projects/uart/dev/snc/dp83932subr.c#2 integrate .. //depot/projects/uart/dev/snc/if_snc.c#2 integrate .. //depot/projects/uart/dev/snc/if_snc_cbus.c#2 integrate .. //depot/projects/uart/dev/snc/if_snc_pccard.c#2 integrate .. //depot/projects/uart/dev/snp/snp.c#2 integrate .. //depot/projects/uart/dev/sr/if_sr.c#2 integrate .. //depot/projects/uart/dev/sr/if_sr_isa.c#2 integrate .. //depot/projects/uart/dev/sr/if_sr_pci.c#3 integrate .. //depot/projects/uart/dev/stg/tmc18c30.c#2 integrate .. //depot/projects/uart/dev/stg/tmc18c30_isa.c#2 integrate .. //depot/projects/uart/dev/stg/tmc18c30_pccard.c#2 integrate .. //depot/projects/uart/dev/stg/tmc18c30_pci.c#3 integrate .. //depot/projects/uart/dev/stg/tmc18c30_subr.c#2 integrate .. //depot/projects/uart/dev/streams/streams.c#2 integrate .. //depot/projects/uart/dev/sym/sym_hipd.c#4 integrate .. //depot/projects/uart/dev/syscons/schistory.c#3 integrate .. //depot/projects/uart/dev/syscons/scmouse.c#3 integrate .. //depot/projects/uart/dev/syscons/scterm-dumb.c#3 integrate .. //depot/projects/uart/dev/syscons/scterm-sc.c#3 integrate .. //depot/projects/uart/dev/syscons/scterm.c#2 integrate .. //depot/projects/uart/dev/syscons/scvesactl.c#2 integrate .. //depot/projects/uart/dev/syscons/scvgarndr.c#2 integrate .. //depot/projects/uart/dev/syscons/scvidctl.c#3 integrate .. //depot/projects/uart/dev/syscons/scvtb.c#2 integrate .. //depot/projects/uart/dev/syscons/syscons.c#3 integrate .. //depot/projects/uart/dev/syscons/sysmouse.c#2 integrate .. //depot/projects/uart/dev/tdfx/tdfx_pci.c#3 integrate .. //depot/projects/uart/dev/tga/tga_pci.c#3 integrate .. //depot/projects/uart/dev/trm/trm.c#6 integrate .. //depot/projects/uart/dev/tx/if_tx.c#5 integrate .. //depot/projects/uart/dev/txp/if_txp.c#4 integrate .. //depot/projects/uart/dev/ubsec/ubsec.c#5 integrate .. //depot/projects/uart/dev/usb/ehci.c#3 integrate .. //depot/projects/uart/dev/usb/ehci_pci.c#5 integrate .. //depot/projects/uart/dev/usb/hid.c#3 integrate .. //depot/projects/uart/dev/usb/if_aue.c#4 integrate .. //depot/projects/uart/dev/usb/if_axe.c#4 integrate .. //depot/projects/uart/dev/usb/if_cue.c#4 integrate .. //depot/projects/uart/dev/usb/if_kue.c#3 integrate .. //depot/projects/uart/dev/usb/if_rue.c#3 integrate .. //depot/projects/uart/dev/usb/ohci.c#5 integrate .. //depot/projects/uart/dev/usb/ohci_pci.c#3 integrate .. //depot/projects/uart/dev/usb/ubsa.c#3 integrate .. //depot/projects/uart/dev/usb/ucom.c#4 integrate .. //depot/projects/uart/dev/usb/udbp.c#4 integrate .. //depot/projects/uart/dev/usb/ufm.c#3 integrate .. //depot/projects/uart/dev/usb/uftdi.c#4 integrate .. //depot/projects/uart/dev/usb/ugen.c#4 integrate .. //depot/projects/uart/dev/usb/uhci.c#5 integrate .. //depot/projects/uart/dev/usb/uhci_pci.c#3 integrate .. //depot/projects/uart/dev/usb/uhid.c#4 integrate .. //depot/projects/uart/dev/usb/uhub.c#4 integrate .. //depot/projects/uart/dev/usb/ukbd.c#3 integrate .. //depot/projects/uart/dev/usb/ulpt.c#2 integrate .. //depot/projects/uart/dev/usb/umct.c#4 integrate .. //depot/projects/uart/dev/usb/umodem.c#2 integrate .. //depot/projects/uart/dev/usb/ums.c#3 integrate .. //depot/projects/uart/dev/usb/uplcom.c#4 integrate .. //depot/projects/uart/dev/usb/urio.c#3 integrate .. //depot/projects/uart/dev/usb/usb.c#3 integrate .. //depot/projects/uart/dev/usb/usb_ethersubr.c#2 integrate .. //depot/projects/uart/dev/usb/usb_quirks.c#2 integrate .. //depot/projects/uart/dev/usb/usb_subr.c#4 integrate .. //depot/projects/uart/dev/usb/usbdi.c#5 integrate .. //depot/projects/uart/dev/usb/usbdi_util.c#4 integrate .. //depot/projects/uart/dev/usb/uscanner.c#5 integrate .. //depot/projects/uart/dev/usb/uvscom.c#3 integrate .. //depot/projects/uart/dev/vinum/vinum.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumconfig.c#3 integrate .. //depot/projects/uart/dev/vinum/vinumdaemon.c#2 integrate .. //depot/projects/uart/dev/vinum/vinuminterrupt.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumioctl.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumlock.c#2 integrate .. //depot/projects/uart/dev/vinum/vinummemory.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumparser.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumraid5.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumrequest.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumrevive.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumstate.c#2 integrate .. //depot/projects/uart/dev/vinum/vinumutil.c#2 integrate .. //depot/projects/uart/dev/vx/if_vx.c#2 integrate .. //depot/projects/uart/dev/vx/if_vx_eisa.c#2 integrate .. //depot/projects/uart/dev/vx/if_vx_pci.c#3 integrate .. //depot/projects/uart/dev/wds/wd7000.c#3 integrate .. //depot/projects/uart/dev/wl/if_wl.c#2 integrate .. //depot/projects/uart/dev/xe/if_xe.c#2 integrate .. //depot/projects/uart/dev/xe/if_xe_pccard.c#3 integrate .. //depot/projects/uart/dev/zs/zs.c#3 integrate .. //depot/projects/uart/dev/zs/zs_macio.c#3 integrate .. //depot/projects/uart/dev/zs/zs_sbus.c#3 integrate .. //depot/projects/uart/i386/conf/GENERIC#2 integrate .. //depot/projects/uart/netinet/ip_mroute.c#4 integrate .. //depot/projects/uart/sparc64/sparc64/bus_machdep.c#6 integrate .. //depot/projects/uart/sparc64/sparc64/genassym.c#4 integrate .. //depot/projects/uart/sparc64/sparc64/support.S#2 integrate .. //depot/projects/uart/sys/ata.h#2 integrate Differences ... ==== //depot/projects/uart/amd64/amd64/pmap.c#13 (text+ko) ==== @@ -73,7 +73,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.433 2003/08/20 05:09:55 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.434 2003/08/24 08:07:06 alc Exp $"); /* * Manages physical address maps. @@ -904,10 +904,7 @@ /* We just released a PT, unhold the matching PD */ vm_page_t pdpg; - pdpg = vm_page_lookup(pmap->pm_pteobj, NUPDE + - ((va >> PDPSHIFT) & (NUPDPE - 1))); - while (vm_page_sleep_if_busy(pdpg, FALSE, "pulook")) - vm_page_lock_queues(); + pdpg = PHYS_TO_VM_PAGE(*pmap_pdpe(pmap, va)); vm_page_unhold(pdpg); if (pdpg->hold_count == 0) _pmap_unwire_pte_hold(pmap, va, pdpg); @@ -916,10 +913,7 @@ /* We just released a PD, unhold the matching PDP */ vm_page_t pdppg; - pdppg = vm_page_lookup(pmap->pm_pteobj, NUPDE + NUPDPE + - ((va >> PML4SHIFT) & (NUPML4E - 1))); - while (vm_page_sleep_if_busy(pdppg, FALSE, "pulooK")) - vm_page_lock_queues(); + pdppg = PHYS_TO_VM_PAGE(*pmap_pml4e(pmap, va)); vm_page_unhold(pdppg); if (pdppg->hold_count == 0) _pmap_unwire_pte_hold(pmap, va, pdppg); @@ -963,21 +957,12 @@ static int pmap_unuse_pt(pmap_t pmap, vm_offset_t va, vm_page_t mpte) { - vm_pindex_t ptepindex; if (va >= VM_MAXUSER_ADDRESS) return 0; if (mpte == NULL) { - ptepindex = pmap_pde_pindex(va); - if (pmap->pm_pteobj->root && - pmap->pm_pteobj->root->pindex == ptepindex) { - mpte = pmap->pm_pteobj->root; - } else { - while ((mpte = vm_page_lookup(pmap->pm_pteobj, ptepindex)) != NULL && - vm_page_sleep_if_busy(mpte, FALSE, "pulook")) - vm_page_lock_queues(); - } + mpte = PHYS_TO_VM_PAGE(*pmap_pde(pmap, va)); } return pmap_unwire_pte_hold(pmap, va, mpte); ==== //depot/projects/uart/conf/NOTES#10 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1170 2003/08/21 16:48:39 rwatson Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1171 2003/08/24 09:22:25 sos Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -2352,14 +2352,10 @@ # Yet more undocumented options for linting. options AAC_DEBUG -options ACD_DEBUG options ACPI_MAX_THREADS=1 #!options ACPI_NO_SEMAPHORES # Broken: ##options ASR_MEASURE_PERFORMANCE -options AST_DEBUG -options ATAPI_DEBUG -options ATA_DEBUG # BKTR_ALLOC_PAGES has no effect except to cause warnings, and # BROOKTREE_ALLOC_PAGES hasn't actually been superseded by it, since the # driver still mostly spells this option BROOKTREE_ALLOC_PAGES. ==== //depot/projects/uart/conf/files#16 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.815 2003/08/21 16:48:39 rwatson Exp $ +# $FreeBSD: src/sys/conf/files,v 1.816 2003/08/24 09:22:25 sos Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -302,6 +302,8 @@ dev/an/if_an_pci.c optional an pci dev/asr/asr.c optional asr pci dev/ata/ata-all.c optional ata +dev/ata/ata-queue.c optional ata +dev/ata/ata-lowlevel.c optional ata dev/ata/ata-isa.c optional ata isa dev/ata/ata-cbus.c optional ata pc98 dev/ata/ata-card.c optional ata card @@ -310,11 +312,7 @@ dev/ata/ata-chipset.c optional ata pci dev/ata/ata-dma.c optional ata pci dev/ata/ata-disk.c optional atadisk -dev/ata/ata-raid.c optional atadisk -dev/ata/atapi-all.c optional atapicd -dev/ata/atapi-all.c optional atapifd -dev/ata/atapi-all.c optional atapist -dev/ata/atapi-all.c optional atapicam +dev/ata/ata-raid.c optional ataraid dev/ata/atapi-cd.c optional atapicd dev/ata/atapi-fd.c optional atapifd dev/ata/atapi-tape.c optional atapist ==== //depot/projects/uart/conf/options#10 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.411 2003/08/21 16:48:39 rwatson Exp $ +# $FreeBSD: src/sys/conf/options,v 1.412 2003/08/24 09:22:25 sos Exp $ # # On the handling of kernel options # @@ -297,13 +297,10 @@ ISP_FW_CRASH_DUMP opt_isp.h # Options used in the 'ata' ATA/ATAPI driver -ACD_DEBUG opt_ata.h -AST_DEBUG opt_ata.h -ATAPI_DEBUG opt_ata.h -ATA_DEBUG opt_ata.h ATA_STATIC_ID opt_ata.h ATA_NOPCI opt_ata.h DEV_ATADISK opt_ata.h +DEV_ATARAID opt_ata.h DEV_ATAPICD opt_ata.h DEV_ATAPIST opt_ata.h DEV_ATAPIFD opt_ata.h ==== //depot/projects/uart/dev/aac/aac.c#5 (text+ko) ==== @@ -25,10 +25,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/aac/aac.c,v 1.74 2003/08/19 21:31:45 scottl Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/aac/aac.c,v 1.75 2003/08/24 17:48:01 obrien Exp $"); + /* * Driver for the Adaptec 'FSA' family of PCI/SCSI RAID adapters. */ ==== //depot/projects/uart/dev/aac/aac_cam.c#3 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/aac/aac_cam.c,v 1.12 2003/08/19 21:31:45 scottl Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/aac/aac_cam.c,v 1.13 2003/08/24 17:48:01 obrien Exp $"); + /* * CAM front-end for communicating with non-DASD devices */ ==== //depot/projects/uart/dev/aac/aac_debug.c#2 (text+ko) ==== @@ -25,10 +25,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/aac/aac_debug.c,v 1.15 2003/04/01 15:06:22 phk Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/aac/aac_debug.c,v 1.16 2003/08/24 17:48:01 obrien Exp $"); + /* * Debugging support. */ ==== //depot/projects/uart/dev/aac/aac_disk.c#4 (text+ko) ==== @@ -25,10 +25,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/aac/aac_disk.c,v 1.34 2003/08/20 08:24:49 mux Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/aac/aac_disk.c,v 1.35 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_aac.h" #include ==== //depot/projects/uart/dev/aac/aac_linux.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/aac/aac_linux.c,v 1.1 2002/09/25 05:00:25 scottl Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/aac/aac_linux.c,v 1.2 2003/08/24 17:48:01 obrien Exp $"); + /* * Linux ioctl handler for the aac device driver */ ==== //depot/projects/uart/dev/aac/aac_pci.c#5 (text+ko) ==== @@ -25,10 +25,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/aac/aac_pci.c,v 1.37 2003/08/22 05:09:35 imp Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/aac/aac_pci.c,v 1.38 2003/08/24 17:48:01 obrien Exp $"); + /* * PCI bus interface and resource allocation. */ ==== //depot/projects/uart/dev/acpica/acpi_cpu.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_cpu.c,v 1.16 2003/01/23 22:18:14 njl Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_cpu.c,v 1.17 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" #include #include ==== //depot/projects/uart/dev/acpica/acpi_ec.c#8 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/acpi_ec.c,v 1.38 2003/07/30 16:22:52 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/acpi_ec.c,v 1.39 2003/08/24 17:48:01 obrien Exp $ */ /****************************************************************************** * @@ -136,6 +136,9 @@ * *****************************************************************************/ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_ec.c,v 1.39 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" #include #include ==== //depot/projects/uart/dev/acpica/acpi_isab.c#4 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_isab.c,v 1.3 2003/07/17 19:13:41 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_isab.c,v 1.4 2003/08/24 17:48:01 obrien Exp $"); + /* * ISA Bridge driver for Generic ISA Bus Devices. See section 10.7 of the * ACPI 2.0a specification for details on this device. ==== //depot/projects/uart/dev/acpica/acpi_lid.c#2 (text+ko) ==== @@ -25,10 +25,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_lid.c,v 1.12 2002/10/16 17:28:52 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_lid.c,v 1.13 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" #include #include ==== //depot/projects/uart/dev/acpica/acpi_pci.c#3 (text+ko) ==== @@ -24,11 +24,11 @@ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_pci.c,v 1.4 2003/07/01 14:08:33 tmm Exp $ - * */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci.c,v 1.5 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_bus.h" #include ==== //depot/projects/uart/dev/acpica/acpi_pci_link.c#3 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.6 2003/07/13 22:57:16 njl Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.7 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" #include #include ==== //depot/projects/uart/dev/acpica/acpi_pcib.c#4 (text+ko) ==== @@ -23,9 +23,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_pcib.c,v 1.31 2003/08/22 06:06:16 imp Exp $ */ + +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pcib.c,v 1.32 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" #include #include ==== //depot/projects/uart/dev/acpica/acpi_pcib_pci.c#3 (text+ko) ==== @@ -23,9 +23,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_pcib_pci.c,v 1.4 2003/08/22 06:06:16 imp Exp $ */ + +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pcib_pci.c,v 1.5 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" #include ==== //depot/projects/uart/dev/acpica/acpi_powerres.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_powerres.c,v 1.14 2002/10/16 17:28:52 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_powerres.c,v 1.15 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" /* XXX trim includes */ #include #include ==== //depot/projects/uart/dev/acpica/acpi_resource.c#2 (text+ko) ==== @@ -23,10 +23,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_resource.c,v 1.16 2002/12/23 03:48:59 marcel Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_resource.c,v 1.17 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" #include #include ==== //depot/projects/uart/dev/acpica/acpi_thermal.c#2 (text+ko) ==== @@ -23,10 +23,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpi_thermal.c,v 1.29 2002/10/16 17:28:52 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_thermal.c,v 1.30 2003/08/24 17:48:01 obrien Exp $"); + #include "opt_acpi.h" #include #include ==== //depot/projects/uart/dev/acpica/acpica_support.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/acpica/acpica_support.c,v 1.6 2002/07/09 17:53:54 iwasaki Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpica_support.c,v 1.7 2003/08/24 17:48:01 obrien Exp $"); + #include "acpi.h" #include #include ==== //depot/projects/uart/dev/adlink/adlink.c#3 (text+ko) ==== @@ -25,10 +25,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/adlink/adlink.c,v 1.3 2003/08/22 05:11:30 imp Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/dev/adlink/adlink.c,v 1.4 2003/08/24 17:48:01 obrien Exp $"); + #ifdef _KERNEL #include #include ==== //depot/projects/uart/dev/advansys/adv_eisa.c#3 (text+ko) ==== @@ -31,10 +31,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/dev/advansys/adv_eisa.c,v 1.14 2003/07/01 15:51:51 scottl Exp $ */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Aug 24 22:03:21 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EEA4216A4C1; Sun, 24 Aug 2003 22:03:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9790316A4BF for ; Sun, 24 Aug 2003 22:03:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C91AE43FBD for ; Sun, 24 Aug 2003 22:03:17 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7P53H0U018717 for ; Sun, 24 Aug 2003 22:03:17 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7P53AtY018714 for perforce@freebsd.org; Sun, 24 Aug 2003 22:03:10 -0700 (PDT) Date: Sun, 24 Aug 2003 22:03:10 -0700 (PDT) Message-Id: <200308250503.h7P53AtY018714@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 36868 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Aug 2003 05:03:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=36868 Change 36868 by sam@sam_ebb on 2003/08/24 22:02:50 IFC Affected files ... .. //depot/projects/netperf/sys/alpha/alpha/api_up1000.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_1000a.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_2100_a50.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_2100_a500.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_axppci_33.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_eb164.c#3 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_eb64plus.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_kn20aa.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_kn300.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_st550.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/dec_st6600.c#4 integrate .. //depot/projects/netperf/sys/alpha/alpha/machdep.c#5 integrate .. //depot/projects/netperf/sys/alpha/conf/NOTES#2 integrate .. //depot/projects/netperf/sys/amd64/amd64/amd64_mem.c#2 integrate .. //depot/projects/netperf/sys/amd64/amd64/pmap.c#7 integrate .. //depot/projects/netperf/sys/amd64/ia32/Makefile#2 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32.h#2 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_genassym.c#3 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_misc.c#3 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_proto.h#3 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_signal.c#3 integrate .. //depot/projects/netperf/sys/amd64/ia32/ia32_signal.h#2 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_sigtramp.S#2 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_syscall.c#3 integrate .. //depot/projects/netperf/sys/amd64/ia32/ia32_syscall.h#3 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_syscalls.c#3 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_sysent.c#3 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_sysvec.c#3 delete .. //depot/projects/netperf/sys/amd64/ia32/ia32_util.h#2 delete .. //depot/projects/netperf/sys/amd64/ia32/syscalls.conf#2 delete .. //depot/projects/netperf/sys/amd64/ia32/syscalls.master#3 delete .. //depot/projects/netperf/sys/cam/scsi/scsi_da.c#7 integrate .. //depot/projects/netperf/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/netperf/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/netperf/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/netperf/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/netperf/sys/compat/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/netperf/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/netperf/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/netperf/sys/conf/NOTES#7 integrate .. //depot/projects/netperf/sys/conf/files#6 integrate .. //depot/projects/netperf/sys/conf/files.amd64#3 integrate .. //depot/projects/netperf/sys/conf/files.i386#4 integrate .. //depot/projects/netperf/sys/conf/files.ia64#4 integrate .. //depot/projects/netperf/sys/conf/files.sparc64#2 integrate .. //depot/projects/netperf/sys/conf/options#8 integrate .. //depot/projects/netperf/sys/conf/options.alpha#2 integrate .. //depot/projects/netperf/sys/conf/options.ia64#2 integrate .. //depot/projects/netperf/sys/conf/options.sparc64#2 integrate .. //depot/projects/netperf/sys/dev/aac/aac.c#3 integrate .. //depot/projects/netperf/sys/dev/aac/aac_cam.c#3 integrate .. //depot/projects/netperf/sys/dev/aac/aac_debug.c#2 integrate .. //depot/projects/netperf/sys/dev/aac/aac_disk.c#3 integrate .. //depot/projects/netperf/sys/dev/aac/aac_linux.c#2 integrate .. //depot/projects/netperf/sys/dev/aac/aac_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_cpu.c#2 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_ec.c#4 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_isab.c#2 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_lid.c#2 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_pci_link.c#2 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_pcib.c#3 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_pcib_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_powerres.c#2 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_resource.c#2 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/netperf/sys/dev/acpica/acpica_support.c#2 integrate .. //depot/projects/netperf/sys/dev/adlink/adlink.c#3 integrate .. //depot/projects/netperf/sys/dev/advansys/adv_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/advansys/adv_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/advansys/adv_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/advansys/advansys.c#2 integrate .. //depot/projects/netperf/sys/dev/advansys/advlib.c#2 integrate .. //depot/projects/netperf/sys/dev/advansys/advmcode.c#2 integrate .. //depot/projects/netperf/sys/dev/advansys/adw_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/advansys/adwcam.c#2 integrate .. //depot/projects/netperf/sys/dev/advansys/adwlib.c#2 integrate .. //depot/projects/netperf/sys/dev/advansys/adwmcode.c#2 integrate .. //depot/projects/netperf/sys/dev/aha/aha.c#2 integrate .. //depot/projects/netperf/sys/dev/aha/aha_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/aha/aha_mca.c#2 integrate .. //depot/projects/netperf/sys/dev/aic/aic.c#3 integrate .. //depot/projects/netperf/sys/dev/aic/aic_cbus.c#2 integrate .. //depot/projects/netperf/sys/dev/aic/aic_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/aic/aic_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/ahc_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/ahc_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/ahd_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/aic7770.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/aic79xx.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/aic79xx_osm.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/aic79xx_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/aic7xxx.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/aic7xxx_93cx6.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/aic7xxx_osm.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/aic7xxx_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/amr/amr.c#3 integrate .. //depot/projects/netperf/sys/dev/amr/amr_cam.c#2 integrate .. //depot/projects/netperf/sys/dev/amr/amr_disk.c#2 integrate .. //depot/projects/netperf/sys/dev/amr/amr_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/an/if_aironet_ieee.h#3 integrate .. //depot/projects/netperf/sys/dev/an/if_an.c#3 integrate .. //depot/projects/netperf/sys/dev/an/if_an_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/an/if_an_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/an/if_an_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/an/if_anreg.h#3 integrate .. //depot/projects/netperf/sys/dev/ar/if_ar.c#2 integrate .. //depot/projects/netperf/sys/dev/ar/if_ar_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/ar/if_ar_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/asr/asr.c#3 integrate .. //depot/projects/netperf/sys/dev/ata/ata-all.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-card.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-cbus.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-chipset.c#3 integrate .. //depot/projects/netperf/sys/dev/ata/ata-commands.h#1 branch .. //depot/projects/netperf/sys/dev/ata/ata-disk.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-disk.h#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-dma.c#4 integrate .. //depot/projects/netperf/sys/dev/ata/ata-isa.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-lowlevel.c#1 branch .. //depot/projects/netperf/sys/dev/ata/ata-pci.c#3 integrate .. //depot/projects/netperf/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-queue.c#1 branch .. //depot/projects/netperf/sys/dev/ata/ata-raid.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/ata-raid.h#2 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-all.c#2 delete .. //depot/projects/netperf/sys/dev/ata/atapi-all.h#2 delete .. //depot/projects/netperf/sys/dev/ata/atapi-cam.c#3 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-cd.h#2 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-fd.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-fd.h#2 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-tape.c#2 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-tape.h#2 integrate .. //depot/projects/netperf/sys/dev/awi/am79c930.c#2 integrate .. //depot/projects/netperf/sys/dev/awi/awi.c#2 integrate .. //depot/projects/netperf/sys/dev/awi/awi_wep.c#2 integrate .. //depot/projects/netperf/sys/dev/awi/awi_wicfg.c#2 integrate .. //depot/projects/netperf/sys/dev/awi/if_awi_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/bge/if_bge.c#7 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_audio.c#4 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_card.c#3 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_core.c#5 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_i2c.c#3 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_mem.c#2 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_os.c#4 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_tuner.c#3 integrate .. //depot/projects/netperf/sys/dev/buslogic/bt.c#3 integrate .. //depot/projects/netperf/sys/dev/buslogic/bt_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/buslogic/bt_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/buslogic/bt_mca.c#2 integrate .. //depot/projects/netperf/sys/dev/buslogic/bt_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/cardbus/cardbus.c#2 integrate .. //depot/projects/netperf/sys/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/netperf/sys/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/netperf/sys/dev/cnw/if_cnw.c#2 integrate .. //depot/projects/netperf/sys/dev/cs/if_cs.c#2 integrate .. //depot/projects/netperf/sys/dev/cs/if_cs_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/cs/if_cs_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/ct/bshw_machdep.c#2 integrate .. //depot/projects/netperf/sys/dev/ct/ct.c#3 integrate .. //depot/projects/netperf/sys/dev/ct/ct_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/dec/mcclock.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/CX.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/CX_PCI.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/EPCX.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/EPCX_PCI.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/Xe.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/Xem.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/Xr.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/digi_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/digi/digi_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/dpt/dpt_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/dpt/dpt_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/dpt/dpt_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/dpt/dpt_scsi.c#2 integrate .. //depot/projects/netperf/sys/dev/drm/mga_state.c#2 integrate .. //depot/projects/netperf/sys/dev/drm/radeon_mem.c#2 integrate .. //depot/projects/netperf/sys/dev/ed/if_ed_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/ed/if_ed_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/eisa/eisaconf.c#2 integrate .. //depot/projects/netperf/sys/dev/em/if_em_hw.c#2 integrate .. //depot/projects/netperf/sys/dev/en/if_en_pci.c#4 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep.c#3 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_mca.c#2 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/ex/if_ex.c#2 integrate .. //depot/projects/netperf/sys/dev/ex/if_ex_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/ex/if_ex_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/exca/exca.c#2 integrate .. //depot/projects/netperf/sys/dev/fatm/if_fatm.c#6 integrate .. //depot/projects/netperf/sys/dev/fb/boot_font.c#3 integrate .. //depot/projects/netperf/sys/dev/fb/creator.c#1 branch .. //depot/projects/netperf/sys/dev/fb/fb.c#2 integrate .. //depot/projects/netperf/sys/dev/fb/fbreg.h#2 integrate .. //depot/projects/netperf/sys/dev/fb/gallant12x22.h#1 branch .. //depot/projects/netperf/sys/dev/fb/gfb.c#3 integrate .. //depot/projects/netperf/sys/dev/fb/s3_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/fb/splash.c#2 integrate .. //depot/projects/netperf/sys/dev/fb/tga.c#3 integrate .. //depot/projects/netperf/sys/dev/fb/vga.c#2 integrate .. //depot/projects/netperf/sys/dev/fe/if_fe.c#2 integrate .. //depot/projects/netperf/sys/dev/fe/if_fe_cbus.c#2 integrate .. //depot/projects/netperf/sys/dev/fe/if_fe_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/fe/if_fe_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/firewire/fwcrom.c#3 integrate .. //depot/projects/netperf/sys/dev/firewire/fwdma.c#2 integrate .. //depot/projects/netperf/sys/dev/firewire/fwmem.c#2 integrate .. //depot/projects/netperf/sys/dev/fxp/if_fxp.c#7 integrate .. //depot/projects/netperf/sys/dev/gem/if_gem.c#2 integrate .. //depot/projects/netperf/sys/dev/gem/if_gem_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/gfb/gfb_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/gx/if_gx.c#3 integrate .. //depot/projects/netperf/sys/dev/harp/if_harp.c#2 integrate .. //depot/projects/netperf/sys/dev/hatm/if_hatm_intr.c#3 integrate .. //depot/projects/netperf/sys/dev/hea/eni.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/eni_buffer.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/eni_globals.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/eni_init.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/eni_intr.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/eni_receive.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/eni_transmit.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/eni_vcm.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/hea_freebsd.c#2 integrate .. //depot/projects/netperf/sys/dev/hea/hea_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/hfa/fore_buffer.c#3 integrate .. //depot/projects/netperf/sys/dev/hfa/fore_globals.c#3 integrate .. //depot/projects/netperf/sys/dev/hfa/fore_load.c#3 integrate .. //depot/projects/netperf/sys/dev/hfa/fore_receive.c#3 integrate .. //depot/projects/netperf/sys/dev/hfa/fore_stats.c#3 integrate .. //depot/projects/netperf/sys/dev/hfa/fore_timer.c#3 integrate .. //depot/projects/netperf/sys/dev/hfa/fore_transmit.c#3 integrate .. //depot/projects/netperf/sys/dev/hfa/hfa_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/hfa/hfa_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/hfa/hfa_sbus.c#2 integrate .. //depot/projects/netperf/sys/dev/hifn/hifn7751.c#5 integrate .. //depot/projects/netperf/sys/dev/hme/if_hme.c#2 integrate .. //depot/projects/netperf/sys/dev/hme/if_hme_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/hme/if_hme_sbus.c#2 integrate .. //depot/projects/netperf/sys/dev/ichsmb/ichsmb.c#2 integrate .. //depot/projects/netperf/sys/dev/ichsmb/ichsmb_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/ida/ida.c#2 integrate .. //depot/projects/netperf/sys/dev/ida/ida_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/ida/ida_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/idt/idt.c#2 integrate .. //depot/projects/netperf/sys/dev/idt/idt_harp.c#2 integrate .. //depot/projects/netperf/sys/dev/idt/idt_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/ie/if_ie.c#2 integrate .. //depot/projects/netperf/sys/dev/ie/if_ie_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/iicbus/if_ic.c#2 integrate .. //depot/projects/netperf/sys/dev/iicbus/iicbb.c#2 integrate .. //depot/projects/netperf/sys/dev/iicbus/iicbus.c#2 integrate .. //depot/projects/netperf/sys/dev/iicbus/iiconf.c#2 integrate .. //depot/projects/netperf/sys/dev/iir/iir.c#2 integrate .. //depot/projects/netperf/sys/dev/iir/iir_ctrl.c#2 integrate .. //depot/projects/netperf/sys/dev/iir/iir_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/ips/ips.c#2 integrate .. //depot/projects/netperf/sys/dev/ips/ips_commands.c#2 integrate .. //depot/projects/netperf/sys/dev/ips/ips_disk.c#2 integrate .. //depot/projects/netperf/sys/dev/ips/ips_ioctl.c#2 integrate .. //depot/projects/netperf/sys/dev/ips/ips_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/isp/isp.c#2 integrate .. //depot/projects/netperf/sys/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/netperf/sys/dev/isp/isp_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/isp/isp_sbus.c#2 integrate .. //depot/projects/netperf/sys/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/netperf/sys/dev/joy/joy.c#2 integrate .. //depot/projects/netperf/sys/dev/joy/joy_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/joy/joy_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/kbd/atkbd.c#2 integrate .. //depot/projects/netperf/sys/dev/kbd/atkbdc.c#2 integrate .. //depot/projects/netperf/sys/dev/kbd/kbd.c#2 integrate .. //depot/projects/netperf/sys/dev/lge/if_lge.c#3 integrate .. //depot/projects/netperf/sys/dev/lmc/if_lmc.c#3 integrate .. //depot/projects/netperf/sys/dev/lmc/if_lmc_common.c#2 integrate .. //depot/projects/netperf/sys/dev/lmc/if_lmc_fbsd3.c#2 integrate .. //depot/projects/netperf/sys/dev/lmc/if_lmc_media.c#2 integrate .. //depot/projects/netperf/sys/dev/lnc/if_lnc.c#2 integrate .. //depot/projects/netperf/sys/dev/lnc/if_lnc_cbus.c#2 integrate .. //depot/projects/netperf/sys/dev/lnc/if_lnc_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/lnc/if_lnc_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/matcd/matcd.c#2 integrate .. //depot/projects/netperf/sys/dev/matcd/matcd_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/mca/mca_bus.c#2 integrate .. //depot/projects/netperf/sys/dev/mcd/mcd.c#2 integrate .. //depot/projects/netperf/sys/dev/mcd/mcd_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/acphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/amphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/bmtphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/brgphy.c#4 integrate .. //depot/projects/netperf/sys/dev/mii/dcphy.c#3 integrate .. //depot/projects/netperf/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/exphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/lxtphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/mii.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/mii_physubr.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/nsgphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/nsphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/pnaphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/pnphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/qsphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/tlphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/ukphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/ukphy_subr.c#2 integrate .. //depot/projects/netperf/sys/dev/mii/xmphy.c#2 integrate .. //depot/projects/netperf/sys/dev/mk48txx/mk48txx.c#2 integrate .. //depot/projects/netperf/sys/dev/mlx/mlx_disk.c#2 integrate .. //depot/projects/netperf/sys/dev/mlx/mlx_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/mpt/mpt.c#2 integrate .. //depot/projects/netperf/sys/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/netperf/sys/dev/mpt/mpt_freebsd.c#2 integrate .. //depot/projects/netperf/sys/dev/mpt/mpt_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/musycc/musycc.c#3 integrate .. //depot/projects/netperf/sys/dev/my/if_my.c#3 integrate .. //depot/projects/netperf/sys/dev/ncv/ncr53c500.c#2 integrate .. //depot/projects/netperf/sys/dev/ncv/ncr53c500_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/nge/if_nge.c#3 integrate .. //depot/projects/netperf/sys/dev/nmdm/nmdm.c#2 integrate .. //depot/projects/netperf/sys/dev/nsp/nsp.c#2 integrate .. //depot/projects/netperf/sys/dev/nsp/nsp_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/null/null.c#2 integrate .. //depot/projects/netperf/sys/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/netperf/sys/dev/ofw/ofw_disk.c#2 integrate .. //depot/projects/netperf/sys/dev/ofw/openfirm.c#2 integrate .. //depot/projects/netperf/sys/dev/ofw/openfirmio.c#2 integrate .. //depot/projects/netperf/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/netperf/sys/dev/owi/if_ieee80211.h#1 branch .. //depot/projects/netperf/sys/dev/owi/if_owi.c#1 branch .. //depot/projects/netperf/sys/dev/owi/if_owi_pccard.c#1 branch .. //depot/projects/netperf/sys/dev/owi/if_wireg.h#1 branch .. //depot/projects/netperf/sys/dev/owi/if_wivar.h#1 branch .. //depot/projects/netperf/sys/dev/patm/if_patm.c#4 integrate .. //depot/projects/netperf/sys/dev/patm/if_patm_attach.c#4 integrate .. //depot/projects/netperf/sys/dev/patm/if_patm_intr.c#2 integrate .. //depot/projects/netperf/sys/dev/patm/if_patm_ioctl.c#5 integrate .. //depot/projects/netperf/sys/dev/patm/if_patm_rtables.c#2 integrate .. //depot/projects/netperf/sys/dev/patm/if_patm_rx.c#4 integrate .. //depot/projects/netperf/sys/dev/patm/if_patm_tx.c#4 integrate .. //depot/projects/netperf/sys/dev/pccard/pccard.c#3 integrate .. //depot/projects/netperf/sys/dev/pccard/pccard_cis_quirks.c#2 integrate .. //depot/projects/netperf/sys/dev/pci/eisa_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/pci/fixup_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/pci/ignore_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/pci/isa_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/pci/pci_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/pci/pci_user.c#3 integrate .. //depot/projects/netperf/sys/dev/pcic/i82365.c#2 integrate .. //depot/projects/netperf/sys/dev/pcic/i82365_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/pdq/if_fpa.c#2 integrate .. //depot/projects/netperf/sys/dev/pdq/pdq.c#2 integrate .. //depot/projects/netperf/sys/dev/pdq/pdq_ifsubr.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/if_plip.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/immio.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/lpbb.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/lpt.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/pcfclock.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/ppb_1284.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/ppb_base.c#3 integrate .. //depot/projects/netperf/sys/dev/ppbus/ppb_msq.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/ppbconf.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/ppi.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/pps.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/vpo.c#2 integrate .. //depot/projects/netperf/sys/dev/ppbus/vpoio.c#2 integrate .. //depot/projects/netperf/sys/dev/pst/pst-iop.c#3 integrate .. //depot/projects/netperf/sys/dev/pst/pst-pci.c#3 integrate .. //depot/projects/netperf/sys/dev/pst/pst-raid.c#3 integrate .. //depot/projects/netperf/sys/dev/puc/puc.c#3 integrate .. //depot/projects/netperf/sys/dev/puc/puc_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/puc/puc_pci.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_acctrace.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_alloclist.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_aselect.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_callback.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_chaindecluster.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_copyback.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_cvscan.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_dagdegrd.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_dagdegwr.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_dagffrd.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_dagffwr.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_dagfuncs.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_dagutils.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_debugMem.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_debugprint.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_decluster.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_declusterPQ.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_diskqueue.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_disks.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_driver.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_engine.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_evenodd.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_evenodd_dagfuncs.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_evenodd_dags.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_fifo.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_geniq.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_interdecluster.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_invertq.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_layout.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_map.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_mcpair.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_memchunk.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_nwayxor.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_options.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_paritylog.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_paritylogDiskMgr.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_paritylogging.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_parityloggingdags.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_parityscan.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_pq.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_pqdeg.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_pqdegdags.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_psstatus.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_raid0.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_raid1.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_raid4.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_raid5.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_raid5_rotatedspare.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_reconbuffer.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_reconmap.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_reconstruct.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_reconutil.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_revent.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_shutdown.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_sstf.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_states.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_stripelocks.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_strutils.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_threadstuff.c#2 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_utils.c#2 integrate .. //depot/projects/netperf/sys/dev/random/harvest.c#2 integrate .. //depot/projects/netperf/sys/dev/random/hash.c#2 integrate .. //depot/projects/netperf/sys/dev/random/randomdev.c#2 integrate .. //depot/projects/netperf/sys/dev/random/yarrow.c#2 integrate .. //depot/projects/netperf/sys/dev/ray/if_ray.c#2 integrate .. //depot/projects/netperf/sys/dev/rndtest/rndtest.c#4 integrate .. //depot/projects/netperf/sys/dev/rp/rp.c#3 integrate .. //depot/projects/netperf/sys/dev/rp/rp_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/rp/rp_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/sab/sab.c#2 integrate .. //depot/projects/netperf/sys/dev/sbni/if_sbni.c#2 integrate .. //depot/projects/netperf/sys/dev/sbni/if_sbni_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/sbni/if_sbni_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/sbsh/if_sbsh.c#3 integrate .. //depot/projects/netperf/sys/dev/scd/scd.c#2 integrate .. //depot/projects/netperf/sys/dev/scd/scd_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/si/si.c#2 integrate .. //depot/projects/netperf/sys/dev/si/si2_z280.c#2 integrate .. //depot/projects/netperf/sys/dev/si/si3_t225.c#2 integrate .. //depot/projects/netperf/sys/dev/si/si_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/si/si_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/si/si_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/sio/sio.c#2 integrate .. //depot/projects/netperf/sys/dev/sio/sio_ebus.c#2 integrate .. //depot/projects/netperf/sys/dev/sio/sio_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/sio/sio_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/sio/sio_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/sio/sio_puc.c#2 integrate .. //depot/projects/netperf/sys/dev/smbus/smbconf.c#2 integrate .. //depot/projects/netperf/sys/dev/smbus/smbus.c#2 integrate .. //depot/projects/netperf/sys/dev/sn/if_sn.c#2 integrate .. //depot/projects/netperf/sys/dev/sn/if_sn_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/sn/if_sn_pccard.c#3 integrate .. //depot/projects/netperf/sys/dev/snc/dp83932subr.c#2 integrate .. //depot/projects/netperf/sys/dev/snc/if_snc.c#2 integrate .. //depot/projects/netperf/sys/dev/snc/if_snc_cbus.c#2 integrate .. //depot/projects/netperf/sys/dev/snc/if_snc_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/snp/snp.c#2 integrate .. //depot/projects/netperf/sys/dev/sound/pci/ds1.c#3 integrate .. //depot/projects/netperf/sys/dev/sound/pcm/ac97.c#3 integrate .. //depot/projects/netperf/sys/dev/sound/pcm/feeder_fmt.c#2 integrate .. //depot/projects/netperf/sys/dev/sr/if_sr.c#2 integrate .. //depot/projects/netperf/sys/dev/sr/if_sr_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/sr/if_sr_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/stg/tmc18c30.c#2 integrate .. //depot/projects/netperf/sys/dev/stg/tmc18c30_isa.c#2 integrate .. //depot/projects/netperf/sys/dev/stg/tmc18c30_pccard.c#2 integrate .. //depot/projects/netperf/sys/dev/stg/tmc18c30_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/stg/tmc18c30_subr.c#2 integrate .. //depot/projects/netperf/sys/dev/streams/streams.c#2 integrate .. //depot/projects/netperf/sys/dev/sym/sym_hipd.c#3 integrate .. //depot/projects/netperf/sys/dev/syscons/scgfbrndr.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/schistory.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/scmouse.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/scterm-dumb.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/scterm-sc.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/scterm.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/scvesactl.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/scvgarndr.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/scvidctl.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/scvtb.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/syscons.c#2 integrate .. //depot/projects/netperf/sys/dev/syscons/syscons.h#2 integrate .. //depot/projects/netperf/sys/dev/syscons/sysmouse.c#2 integrate .. //depot/projects/netperf/sys/dev/tdfx/tdfx_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/tga/tga_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/trm/trm.c#5 integrate .. //depot/projects/netperf/sys/dev/tx/if_tx.c#4 integrate .. //depot/projects/netperf/sys/dev/txp/if_txp.c#3 integrate .. //depot/projects/netperf/sys/dev/ubsec/ubsec.c#4 integrate .. //depot/projects/netperf/sys/dev/usb/ehci.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ehci_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/usb/hid.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/if_aue.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/if_axe.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/if_cue.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/if_kue.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/if_rue.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ohci.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ohci_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/usb/ubsa.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ucom.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/udbp.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ufm.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/uftdi.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ugen.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/uhci.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/uhci_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/usb/uhid.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/uhub.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ukbd.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ulpt.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/umct.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/umodem.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/ums.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/uplcom.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/urio.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/usb.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/usb_ethersubr.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/usb_quirks.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/usb_subr.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/usbdi.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/usbdi_util.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/uscanner.c#2 integrate .. //depot/projects/netperf/sys/dev/usb/uvscom.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinum.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumconfig.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumdaemon.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinuminterrupt.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumioctl.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumlock.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinummemory.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumparser.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumraid5.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumrequest.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumrevive.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumstate.c#2 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumutil.c#2 integrate .. //depot/projects/netperf/sys/dev/vx/if_vx.c#2 integrate .. //depot/projects/netperf/sys/dev/vx/if_vx_eisa.c#2 integrate .. //depot/projects/netperf/sys/dev/vx/if_vx_pci.c#3 integrate .. //depot/projects/netperf/sys/dev/wds/wd7000.c#2 integrate .. //depot/projects/netperf/sys/dev/wi/if_wi_pccard.c#5 integrate .. //depot/projects/netperf/sys/dev/wl/if_wl.c#2 integrate .. //depot/projects/netperf/sys/dev/xe/if_xe.c#2 integrate .. //depot/projects/netperf/sys/dev/xe/if_xe_pccard.c#3 integrate .. //depot/projects/netperf/sys/dev/zs/zs.c#2 integrate .. //depot/projects/netperf/sys/dev/zs/zs_macio.c#2 integrate .. //depot/projects/netperf/sys/dev/zs/zs_sbus.c#2 integrate .. //depot/projects/netperf/sys/fs/specfs/spec_vnops.c#3 integrate .. //depot/projects/netperf/sys/gnu/ext2fs/ext2_bitops.h#1 branch .. //depot/projects/netperf/sys/gnu/ext2fs/ext2_linux_balloc.c#2 integrate .. //depot/projects/netperf/sys/gnu/ext2fs/ext2_linux_ialloc.c#2 integrate .. //depot/projects/netperf/sys/i386/conf/GENERIC#2 integrate .. //depot/projects/netperf/sys/i386/isa/stallion.c#2 integrate .. //depot/projects/netperf/sys/ia64/conf/Makefile#1 branch .. //depot/projects/netperf/sys/ia64/conf/NOTES#1 branch .. //depot/projects/netperf/sys/ia64/ia64/machdep.c#6 integrate .. //depot/projects/netperf/sys/ia64/include/param.h#3 integrate .. //depot/projects/netperf/sys/kern/kern_timeout.c#2 integrate .. //depot/projects/netperf/sys/kern/kern_xxx.c#2 integrate .. //depot/projects/netperf/sys/kern/vfs_bio.c#3 integrate .. //depot/projects/netperf/sys/modules/agp/Makefile#2 integrate .. //depot/projects/netperf/sys/modules/owi/Makefile#1 branch .. //depot/projects/netperf/sys/netinet/ip_mroute.c#5 integrate .. //depot/projects/netperf/sys/netsmb/smb_conn.c#2 integrate .. //depot/projects/netperf/sys/netsmb/smb_iod.c#2 integrate .. //depot/projects/netperf/sys/netsmb/smb_subr.h#2 integrate .. //depot/projects/netperf/sys/pc98/pc98/clock.c#4 integrate .. //depot/projects/netperf/sys/pci/agp_nvidia.c#1 branch .. //depot/projects/netperf/sys/pci/agpreg.h#2 integrate .. //depot/projects/netperf/sys/pci/if_dc.c#4 integrate .. //depot/projects/netperf/sys/pci/if_xl.c#4 integrate .. //depot/projects/netperf/sys/pci/meteor.c#4 integrate .. //depot/projects/netperf/sys/pci/ncr.c#4 integrate .. //depot/projects/netperf/sys/sparc64/creator/creator.h#1 branch .. //depot/projects/netperf/sys/sparc64/creator/creator_upa.c#1 branch .. //depot/projects/netperf/sys/sparc64/ebus/ebus.c#3 integrate .. //depot/projects/netperf/sys/sparc64/include/sc_machdep.h#1 branch .. //depot/projects/netperf/sys/sparc64/isa/isa.c#3 integrate .. //depot/projects/netperf/sys/sparc64/isa/ofw_isa.c#3 integrate .. //depot/projects/netperf/sys/sparc64/pci/psycho.c#3 integrate .. //depot/projects/netperf/sys/sparc64/sbus/sbus.c#3 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/bus_machdep.c#3 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/eeprom.c#2 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/eeprom_ebus.c#2 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/eeprom_fhc.c#2 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/eeprom_sbus.c#2 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/genassym.c#3 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/ofw_bus.c#3 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/ofw_machdep.c#2 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/sc_machdep.c#1 branch .. //depot/projects/netperf/sys/sparc64/sparc64/support.S#2 integrate .. //depot/projects/netperf/sys/sys/ata.h#3 integrate .. //depot/projects/netperf/sys/sys/mac.h#3 integrate .. //depot/projects/netperf/sys/vm/vm_fault.c#2 integrate .. //depot/projects/netperf/sys/vm/vm_page.c#3 integrate .. //depot/projects/netperf/sys/vm/vm_page.h#2 integrate .. //depot/projects/netperf/sys/vm/vnode_pager.c#5 integrate Differences ... ==== //depot/projects/netperf/sys/alpha/alpha/api_up1000.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/api_up1000.c,v 1.9 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/api_up1000.c,v 1.10 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" @@ -49,18 +49,21 @@ #include #include +#ifndef NO_SIO #ifndef CONSPEED #define CONSPEED TTYDEF_SPEED #endif static int comcnrate = CONSPEED; +extern int comconsole; +extern int siocnattach(int, int); +extern int siogdbattach(int, int); +#endif + +extern int sccnattach(void); void api_up1000_init(void); static void api_up1000_cons_init(void); -extern int siocnattach(int, int); -extern int siogdbattach(int, int); -extern int sccnattach(void); - void api_up1000_init() { @@ -75,38 +78,38 @@ platform.cons_init = api_up1000_cons_init; } -extern int comconsole; - static void api_up1000_cons_init() { struct ctb *ctb; irongate_init(); + +#ifndef NO_SIO #ifdef DDB siogdbattach(0x2f8, 57600); #endif +#endif ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off); switch (ctb->ctb_term_type) { - case 2: + case 2: +#ifndef NO_SIO /* serial console ... */ - /* XXX */ - { - /* - * Delay to allow PROM putchars to complete. - * FIFO depth * character time, - * character time = (1000000 / (defaultrate / 10)) - */ - DELAY(160000000 / comcnrate); - comconsole = 0; - if (siocnattach(0x3f8, comcnrate)) - panic("can't init serial console"); + /* + * Delay to allow PROM putchars to complete. + * FIFO depth * character time, + * character time = (1000000 / (defaultrate / 10)) + */ + DELAY(160000000 / comcnrate); + comconsole = 0; + if (siocnattach(0x3f8, comcnrate)) + panic("can't init serial console"); - boothowto |= RB_SERIAL; - break; - } + boothowto |= RB_SERIAL; +#endif + break; case 3: /* display console ... */ ==== //depot/projects/netperf/sys/alpha/alpha/dec_1000a.c#4 (text+ko) ==== @@ -72,7 +72,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_1000a.c,v 1.16 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_1000a.c,v 1.17 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" @@ -94,15 +94,21 @@ #include +#ifndef NO_SIO #ifndef CONSPEED #define CONSPEED TTYDEF_SPEED #endif static int comcnrate = CONSPEED; +extern int comconsole; +extern int siocnattach(int, int); +extern int siogdbattach(int, int); +#endif +extern int sccnattach(void); + void dec_1000a_init(int); static void dec_1000a_cons_init(void); - static void dec_1000_intr_map(void *); static void dec_1000_intr_disable(int); static void dec_1000_intr_enable(int); @@ -113,11 +119,6 @@ static void dec_1000a_intr_enable(int); static void dec_1000a_intr_init(void); -extern int siocnattach(int, int); -extern int siogdbattach(int, int); -extern int sccnattach(void); - - static const struct alpha_variation_table dec_1000_variations[] = { { 0, "AlphaServer 1000" }, { 0, NULL }, @@ -172,8 +173,6 @@ } -/* XXX for forcing comconsole when srm serial console is used */ -extern int comconsole; static void dec_1000a_cons_init() @@ -186,35 +185,36 @@ apecs_init(); } +#ifndef NO_SIO #ifdef DDB siogdbattach(0x2f8, 57600); #endif +#endif ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off); switch (ctb->ctb_term_type) { case 2: +#ifndef NO_SIO /* serial console ... */ - /* XXX */ - { - /* - * Delay to allow PROM putchars to complete. - * FIFO depth * character time, - * character time = (1000000 / (defaultrate / 10)). - */ - DELAY(160000000 / comcnrate); + /* + * Delay to allow PROM putchars to complete. + * FIFO depth * character time, + * character time = (1000000 / (defaultrate / 10)). + */ + DELAY(160000000 / comcnrate); - /* - * Force a comconsole on com1 if the SRM has a serial - * console. - */ - comconsole = 0; - if (siocnattach(0x3f8, comcnrate)) - panic("can't init serial console"); + /* + * Force a comconsole on com1 if the SRM has a serial + * console. + */ + comconsole = 0; + if (siocnattach(0x3f8, comcnrate)) + panic("can't init serial console"); - boothowto |= RB_SERIAL; - break; - } + boothowto |= RB_SERIAL; +#endif + break; case 3: /* display console ... */ ==== //depot/projects/netperf/sys/alpha/alpha/dec_2100_a50.c#4 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a50.c,v 1.17 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a50.c,v 1.18 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" @@ -54,21 +54,21 @@ #include #include +#ifndef NO_SIO #ifndef CONSPEED #define CONSPEED TTYDEF_SPEED #endif static int comcnrate = CONSPEED; +extern int comconsole; +extern int siocnattach(int, int); +extern int siogdbattach(int, int); +#endif +extern int sccnattach(void); + void dec_2100_a50_init(void); static void dec_2100_a50_cons_init(void); static void dec_2100_a50_intr_map(void *); -void sio_intr_establish(int); -void sio_intr_disestablish(int); -void sio_intr_setup(void); - -extern int siocnattach(int, int); -extern int siogdbattach(int, int); -extern int sccnattach(void); const struct alpha_variation_table dec_2100_a50_variations[] = { { SV_ST_AVANTI, "AlphaStation 400 4/233 (\"Avanti\")" }, @@ -103,9 +103,6 @@ platform.pci_intr_map = dec_2100_a50_intr_map; } -/* XXX for forcing comconsole when srm serial console is used */ -extern int comconsole; - static void dec_2100_a50_cons_init() { @@ -113,32 +110,34 @@ apecs_init(); +#ifndef NO_SIO #ifdef DDB siogdbattach(0x2f8, 9600); #endif +#endif + ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off); switch (ctb->ctb_term_type) { case 2: +#ifndef NO_SIO /* serial console ... */ - /* XXX */ - { - /* - * Delay to allow PROM putchars to complete. - * FIFO depth * character time, - * character time = (1000000 / (defaultrate / 10)). - */ - DELAY(160000000 / comcnrate); - /* - * Force a comconsole on com1 if the SRM has a serial console. - */ - comconsole = 0; - if (siocnattach(0x3f8, comcnrate)) - panic("can't init serial console"); + /* + * Delay to allow PROM putchars to complete. + * FIFO depth * character time, + * character time = (1000000 / (defaultrate / 10)). + */ + DELAY(160000000 / comcnrate); + /* + * Force a comconsole on com1 if the SRM has a serial console. + */ + comconsole = 0; + if (siocnattach(0x3f8, comcnrate)) + panic("can't init serial console"); - boothowto |= RB_SERIAL; - break; - } + boothowto |= RB_SERIAL; +#endif + break; case 3: /* display console ... */ ==== //depot/projects/netperf/sys/alpha/alpha/dec_2100_a500.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a500.c,v 1.16 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a500.c,v 1.17 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" @@ -47,19 +47,22 @@ #include #include +#ifndef NO_SIO #ifndef CONSPEED #define CONSPEED TTYDEF_SPEED #endif static int comcnrate = CONSPEED; +extern int comconsole; +extern int siocnattach(int, int); +extern int siogdbattach(int, int); +#endif + +extern int sccnattach(void); void dec_2100_a500_init(int); static void dec_2100_a500_cons_init(void); static void dec_2100_a500_intr_init(void); -extern int siocnattach(int, int); -extern int siogdbattach(int, int); -extern int sccnattach(void); - void dec_2100_a500_init(int cputype) { @@ -91,8 +94,6 @@ t2_init(); } -/* XXX for forcing comconsole when srm serial console is used */ -extern int comconsole; static void dec_2100_a500_cons_init() @@ -100,15 +101,18 @@ struct ctb *ctb; t2_init(); +#ifndef NO_SIO #ifdef DDB siogdbattach(0x2f8, 9600); #endif +#endif + >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Aug 24 22:09:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B9C3416A4C1; Sun, 24 Aug 2003 22:09:27 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7085F16A4BF for ; Sun, 24 Aug 2003 22:09:27 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 02BE043F85 for ; Sun, 24 Aug 2003 22:09:27 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7P59Q0U018905 for ; Sun, 24 Aug 2003 22:09:26 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7P59PNs018902 for perforce@freebsd.org; Sun, 24 Aug 2003 22:09:25 -0700 (PDT) Date: Sun, 24 Aug 2003 22:09:25 -0700 (PDT) Message-Id: <200308250509.h7P59PNs018902@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 36869 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Aug 2003 05:09:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=36869 Change 36869 by sam@sam_ebb on 2003/08/24 22:08:48 fix merge botch Affected files ... .. //depot/projects/netperf/sys/dev/ata/ata-dma.c#5 edit Differences ... ==== //depot/projects/netperf/sys/dev/ata/ata-dma.c#5 (text+ko) ==== @@ -223,16 +223,10 @@ return -1; } if (count > ch->dma->max_iosize) { -#if 0 ata_prtdev(atadev, "FAILURE - oversized DMA transfer attempted %d > %d\n", count, ch->dma->max_iosize); return -1; -#else - ata_prtdev(atadev, - "WARNING - oversized DMA transfer attempted %d > %d\n", - count, ch->dma->max_iosize); -#endif } return 0; } From owner-p4-projects@FreeBSD.ORG Mon Aug 25 00:23:41 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B0CFE16A4C1; Mon, 25 Aug 2003 00:23:41 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 566F116A4BF for ; Mon, 25 Aug 2003 00:23:41 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC9CE43FBF for ; Mon, 25 Aug 2003 00:23:40 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7P7Ne0U028801 for ; Mon, 25 Aug 2003 00:23:40 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7P7Ne5B028798 for perforce@freebsd.org; Mon, 25 Aug 2003 00:23:40 -0700 (PDT) Date: Mon, 25 Aug 2003 00:23:40 -0700 (PDT) Message-Id: <200308250723.h7P7Ne5B028798@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36871 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Aug 2003 07:23:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=36871 Change 36871 by marcel@marcel_nfs on 2003/08/25 00:22:47 Get the line settings from OpenFirmware. We assume 9600,n,8,1 when something doesn't add up or isn't as we expect. The problem generally is that the line settings may or may not apply to the console currently active. For example, the current console device may not be the one defined by "output-device" in the environment. Also, the line settings in the environment (eg "ttya-mode") may not be the current settings. I don't know enough about OpenFirmware, so there may be a better way. Anyway: if you change the console speed in OpenFirmware, then uart(4) will adhere. Affected files ... .. //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#3 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#3 (text+ko) ==== @@ -45,11 +45,12 @@ int uart_cpu_getdev(int devtype, struct uart_devinfo *di) { - char buffer[8]; - phandle_t chosen, consin, consout; + char buffer[64]; + phandle_t chosen, consin, consout, options; ihandle_t stdin, stdout; bus_addr_t addr; - int error, space; + int baud, bits, error, space, stop; + char flag, par; /* * Get the address of the UART that is selected as the console, if @@ -83,22 +84,51 @@ di->bas.bsh = sparc64_fake_bustag(space, addr, di->bas.bst); di->bas.regshft = 0; di->bas.rclk = 0; + + /* Get the device class. */ + if (OF_getprop(consout, "name", buffer, sizeof(buffer)) == -1) + return (ENXIO); + if (!strcmp(buffer, "se")) + di->ops = uart_sab82532_ops; + else if (!strcmp(buffer, "su")) + di->ops = uart_ns8250_ops; + else + return (ENXIO); + + /* + * Get the line settings. This is tricky because the settings are + * stored under some (possibly) random alias as a property of + * /options and we don't even know if they apply to the currently + * selected device. We simply assume 9600,n,8,1 if something wrong. + * Note that we always return success from here on. + */ di->baudrate = 9600; di->databits = 8; di->stopbits = 1; di->parity = UART_PARITY_NONE; - if (OF_getprop(consout, "name", buffer, sizeof(buffer)) == -1) - return (ENXIO); - if (!strcmp(buffer, "se")) { - di->ops = uart_sab82532_ops; + if ((options = OF_finddevice("/options")) == -1) + return (0); + if (OF_getprop(options, "output-device", buffer, sizeof(buffer)) == -1) + return (0); + if ((consout = OF_finddevice(buffer)) == -1) + return (0); + if (consout != consin) + return (0); + if (sizeof(buffer) - strlen(buffer) < 6) + return (0); + strcat(buffer, "-mode"); + if (OF_getprop(options, buffer, buffer, sizeof(buffer)) == -1) return (0); - } - if (!strcmp(buffer, "su")) { - di->ops = uart_ns8250_ops; + if (sscanf(buffer, "%d,%d,%c,%d,%c", &baud, &bits, &par, &stop, + &flag) != 5) return (0); - } - return (ENXIO); + di->baudrate = baud; + di->databits = bits; + di->stopbits = stop; + di->parity = (par == 'n') ? UART_PARITY_NONE : + (par == 'o') ? UART_PARITY_ODD : UART_PARITY_EVEN; + return (0); } int From owner-p4-projects@FreeBSD.ORG Mon Aug 25 13:17:28 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B872516A4C1; Mon, 25 Aug 2003 13:17:27 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 93AC416A4BF for ; Mon, 25 Aug 2003 13:17:27 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3502043FBF for ; Mon, 25 Aug 2003 13:17:27 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7PKHR0U094279 for ; Mon, 25 Aug 2003 13:17:27 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7PKHQai094274 for perforce@freebsd.org; Mon, 25 Aug 2003 13:17:26 -0700 (PDT) Date: Mon, 25 Aug 2003 13:17:26 -0700 (PDT) Message-Id: <200308252017.h7PKHQai094274@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 36905 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Aug 2003 20:17:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=36905 Change 36905 by rwatson@rwatson_paprika on 2003/08/25 13:16:40 Copy the secarch into the arch-handbook from the developer's handbook, as this is really where it belongs. Affected files ... .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/Makefile#2 edit .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/book.sgml#2 edit .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/chapters.ent#2 edit .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#1 branch Differences ... ==== //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/Makefile#2 (text+ko) ==== @@ -32,6 +32,7 @@ SRCS+= newbus/chapter.sgml SRCS+= pci/chapter.sgml SRCS+= scsi/chapter.sgml +SRCS+= secarch/chapter.sgml SRCS+= smp/chapter.sgml SRCS+= sound/chapter.sgml SRCS+= pccard/chapter.sgml ==== //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/book.sgml#2 (text+ko) ==== @@ -66,6 +66,7 @@ &chap.mac; &chap.vm; &chap.smp; + &chap.secarch; * UFS ==== //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/chapters.ent#2 (text+ko) ==== @@ -18,6 +18,7 @@ + From owner-p4-projects@FreeBSD.ORG Mon Aug 25 14:02:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C06216A4C1; Mon, 25 Aug 2003 14:02:08 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E1C5016A4D5 for ; Mon, 25 Aug 2003 14:02:07 -0700 (PDT) Received: from mail.speakeasy.net (mail10.speakeasy.net [216.254.0.210]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2348443FB1 for ; Mon, 25 Aug 2003 14:02:06 -0700 (PDT) (envelope-from jhb@FreeBSD.org) Received: (qmail 3498 invoked from network); 25 Aug 2003 21:02:05 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender )encrypted SMTP for ; 25 Aug 2003 21:02:05 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.9/8.12.9) with ESMTP id h7PL239s020951; Mon, 25 Aug 2003 17:02:03 -0400 (EDT) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.4 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <20030822.154941.31253895.imp@bsdimp.com> Date: Mon, 25 Aug 2003 17:02:30 -0400 (EDT) From: John Baldwin To: "M. Warner Losh" cc: perforce@freebsd.org cc: marcel@xcllnt.net Subject: Re: PERFORCE change 36551 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Aug 2003 21:02:08 -0000 On 22-Aug-2003 M. Warner Losh wrote: > In message: <20030822173606.GA849@dhcp42.pn.xcllnt.net> > Marcel Moolenaar writes: >: > > So, please. Do not blur the distinction by having it all mapped as >: > > ISA devices. I really don't want to have to shoot you :-) >: > >: > Well, the other alternative is to add an ACPI attachment for every >: > ISA device. I'm sure you can appreciate my lack of zeal for this >: > option. :( >: >: Moving forward I would think that you replace ISA bus attachments >: with ACPI bus attachments until such time you don't have any ISA >: drivers anymore. That is, you probably need drivers for ISA devices >: that exist on alpha, so you'll end up with a handful of drivers >: that have both ACPI and ISA. Hmmm, I don't know if this holds for >: pc98 or not? > > Assumption: bus attachement are cheap. > > There will be a number of drivers that violate this, and may need to > be rearranged, but forcing a device onto the ISA bus because we don't > have a ACPI attachment for it is lame. > > The pc98 folks have expressed a strong desire that CBUS front ends be > separate from ISA front ends. There's a number of technical reasons > for this, in addition to the asthetic argument. Basically, they've > shoe-horned cbus into ISA bus, and it is a poor fit. Let's learn from > that lesson. ACPI isn't a bus like c-bus though. ACPI enumerates ISA devices. A closer analogy would be to create a pnpbios0 bus for ISA devices enumerated by the PNP BIOS. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ From owner-p4-projects@FreeBSD.ORG Mon Aug 25 14:02:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6F7C016A4C2; Mon, 25 Aug 2003 14:02:26 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 46DA716A4BF for ; Mon, 25 Aug 2003 14:02:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 84B5343F85 for ; Mon, 25 Aug 2003 14:02:25 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7PL2P0U096154 for ; Mon, 25 Aug 2003 14:02:25 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7PL2O1S096151 for perforce@freebsd.org; Mon, 25 Aug 2003 14:02:24 -0700 (PDT) Date: Mon, 25 Aug 2003 14:02:24 -0700 (PDT) Message-Id: <200308252102.h7PL2O1S096151@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 36910 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Aug 2003 21:02:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=36910 Change 36910 by rwatson@rwatson_paprika on 2003/08/25 14:02:04 Finish up more of the NFS section. Affected files ... .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#2 edit Differences ... ==== //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#2 (text+ko) ==== @@ -1727,13 +1727,16 @@ permission to mount a file system is explicitly configured by the server administrator by means of the &man.exports.5; configuration file. - These protections are implemented XXX Each file system is exported only to explicitly configured hosts; for each configuration line, arbitrary mappings of local and remote users are provided, as well as mount flags indicating, broadly, what types of mounts are permitted (read-only or otherwise). - Once amount has taken place, each file system RPC is accompanied + Enforcement of these protections is split between the user mountd + process, which reads the /etc/exports file + and services mount requests, and the kernel NFS implementation, + which is informed of the export rules by the mount daemon. + Once a mount has taken place, each file system RPC is accompanied by a credential structure approximately equivilent to the local credential structure, consisting of effective uid, effective gid, and a set of additional groups. @@ -1743,7 +1746,10 @@ necessary uid and gid mapping first. In the default configuration, network credentials with a uid of 0 are mapped to the "nobody user" to limit the level of privilege - given to remote hosts. + given to remote hosts. + In NFSv2, file permissions and protections are largely + implemented by the client system; in NFSv3, the server is + queried by the client before permitting most forms of access. The NFSv2 and NFSv3 protocols supported by FreeBSD do not provide for cryptographic protection of in-flight RPCs on the @@ -1767,10 +1773,6 @@ name any object in the file system regardless of directory-based protections, so clients must be trusted to locally enforce these protections for this and other reasons. - - From owner-p4-projects@FreeBSD.ORG Mon Aug 25 14:07:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8380116A4E1; Mon, 25 Aug 2003 14:07:33 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3B30216A4C0 for ; Mon, 25 Aug 2003 14:07:33 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5A85743FCB for ; Mon, 25 Aug 2003 14:07:32 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7PL7W0U097310 for ; Mon, 25 Aug 2003 14:07:32 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7PL7V9I097307 for perforce@freebsd.org; Mon, 25 Aug 2003 14:07:31 -0700 (PDT) Date: Mon, 25 Aug 2003 14:07:31 -0700 (PDT) Message-Id: <200308252107.h7PL7V9I097307@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 36911 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Aug 2003 21:07:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=36911 Change 36911 by rwatson@rwatson_paprika on 2003/08/25 14:06:49 Cleanup to general socket description, and System V IPC namespace discussion. Affected files ... .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#3 edit Differences ... ==== //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#3 (text+ko) ==== @@ -1817,10 +1817,20 @@ Individual protocols implement protections appropriate to their namespaces and semantics, including controlling access to the namespace, read and write privileges, etc. + Namespaces may be local, such as the file system namespace, + or be distributed across many nodes, as is the case with the + IPv4 network implementation. As sockets are referenced by file descriptors, they may be inheritted across fork() and exec() operations, as well as passed to other processes using UNIX Domain Socket file - descriptor passing. + descriptor passing. + In some situations, a reference to a socket via a file + descriptor is sufficient to authorize use of the socket by + a process; in others, the process must also have appropriate + privilege by virtue of its process credential. + As such, processes with access to sockets, as with other + objects, should take care to permit only authorized processes + to gain access to the sockets. @@ -1845,18 +1855,12 @@ references to the object cannot be created, however. Objects may also be created with the IPC_PRIVATE name, specifying that they should not be accessible to any other - processes. - - -Three kinds of System V IPC objects: semaphores, message queues, and -shared memory segments. - -Other than preventing collisions for live objects, no protections are -placed on the namespace itself, which may permit denial of service or -spoofing attacks to take place; unfortunately, this is a property of -the industry-standard APIs that is not easily corrected without -polyinstantiation. - + processes. + As the System V IPC namespace is not controlled, applications + may be subject to spoofing, reuse, and race attacks by + other processes who have equal ability to modify the + namespace; unfortunately, this is a property of the + industry-standard API that is not easily corrected. Each object has an ipc permissions object, holding creator uid, creator gid, owner uid and owner gid. From owner-p4-projects@FreeBSD.ORG Mon Aug 25 15:03:58 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A55DC16A4C2; Mon, 25 Aug 2003 15:03:58 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5FD0E16A4BF; Mon, 25 Aug 2003 15:03:58 -0700 (PDT) Received: from ns1.xcllnt.net (209-128-86-226.bayarea.net [209.128.86.226]) by mx1.FreeBSD.org (Postfix) with ESMTP id 63B2843FDF; Mon, 25 Aug 2003 15:03:57 -0700 (PDT) (envelope-from marcel@xcllnt.net) Received: from ns1.xcllnt.net (localhost [127.0.0.1]) by ns1.xcllnt.net (8.12.9/8.12.9) with ESMTP id h7PM3owO020135; Mon, 25 Aug 2003 15:03:50 -0700 (PDT) (envelope-from marcel@ns1.xcllnt.net) Received: (from marcel@localhost) by ns1.xcllnt.net (8.12.9/8.12.9/Submit) id h7PM3ou0020134; Mon, 25 Aug 2003 15:03:50 -0700 (PDT) (envelope-from marcel) Date: Mon, 25 Aug 2003 15:03:50 -0700 From: Marcel Moolenaar To: John Baldwin Message-ID: <20030825220350.GA20047@ns1.xcllnt.net> References: <20030822.154941.31253895.imp@bsdimp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.1i cc: perforce@FreeBSD.org cc: "M. Warner Losh" Subject: Re: PERFORCE change 36551 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 25 Aug 2003 22:03:59 -0000 On Mon, Aug 25, 2003 at 05:02:30PM -0400, John Baldwin wrote: > > > The pc98 folks have expressed a strong desire that CBUS front ends be > > separate from ISA front ends. There's a number of technical reasons > > for this, in addition to the asthetic argument. Basically, they've > > shoe-horned cbus into ISA bus, and it is a poor fit. Let's learn from > > that lesson. > > ACPI isn't a bus like c-bus though. ACPI enumerates ISA devices. I think this is too much of a PC PoV. ACPI is designed to bridge the gap between legacy machines and legacy-free machines, but it is not a thingy to enumerate ISA devices. Processors, APICs and the likes are all present in the ACPI namespace and definitely are not ISA devices. I like to think that ACPI allows enumeration of devices that are not attached to a bus and in that way serves as a bus itself. -- Marcel Moolenaar USPA: A-39004 marcel@xcllnt.net From owner-p4-projects@FreeBSD.ORG Mon Aug 25 17:19:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 91C1416A4C1; Mon, 25 Aug 2003 17:19:44 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3710D16A4BF; Mon, 25 Aug 2003 17:19:44 -0700 (PDT) Received: from canning.wemm.org (canning.wemm.org [192.203.228.65]) by mx1.FreeBSD.org (Postfix) with ESMTP id A79DD43FCB; Mon, 25 Aug 2003 17:19:43 -0700 (PDT) (envelope-from peter@wemm.org) Received: from wemm.org (localhost [127.0.0.1]) by canning.wemm.org (Postfix) with ESMTP id 8BDBC2A8D4; Mon, 25 Aug 2003 17:19:43 -0700 (PDT) (envelope-from peter@wemm.org) X-Mailer: exmh version 2.5 07/13/2001 with nmh-1.0.4 To: John Baldwin In-Reply-To: Date: Mon, 25 Aug 2003 17:19:43 -0700 From: Peter Wemm Message-Id: <20030826001943.8BDBC2A8D4@canning.wemm.org> cc: Marcel Moolenaar cc: Perforce Change Reviews Subject: Re: PERFORCE change 36551 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 00:19:45 -0000 John Baldwin wrote: > > On 21-Aug-2003 John Baldwin wrote: > > > > On 21-Aug-2003 Marcel Moolenaar wrote: > >> http://perforce.freebsd.org/chv.cgi?CH=36551 > >> > >> Change 36551 by marcel@marcel_nfs on 2003/08/21 00:30:38 > >> > >> Aarrgghh. The interrupt issue on pluto1 and pluto2 are > >> very likely not driver problems. I forgot we have a hack > >> on the ia64 branch to deal with the fact that the non- > >> legacy interrupts used by the UARTs are edge sensitive, > >> active high. We really need to get that fixed in CVS... > >> > >> Affected files ... > >> > >> .. //depot/projects/uart/ia64/ia64/interrupt.c#4 edit > >> > >> Differences ... > >> > >> ==== //depot/projects/uart/ia64/ia64/interrupt.c#4 (text+ko) ==== > >> > >> @@ -266,9 +266,18 @@ > >> struct sapic *sa = ia64_sapics[i]; > >> if (irq < sa->sa_base || irq > sa->sa_limit) > >> continue; > >> + /* > >> + * KLUDGE: Not all interrupts higher or equal to 16 are > >> + * active low and level sensitive. We don't know yet how > >> + * to check for this, so we hardcode the 2 cases we have > >> + * wrong explicitly. This kludge is specific to the HP > >> + * rx2600... > >> + */ > > > > Have you tried looking at any interrupt overrides in the MADT? > > That is where the BIOS should tell you which interrupts above 15 > > have ISA-like parameters. > > s/BIOS/EFI/ For the record: /* APIC: Length=192, Revision=1, Checksum=121, OEMID=HP, OEM Table ID=rx2600, OEM Revision=0x0, Creator ID=HP, Creator Revision=0x0 */ /* Local APIC ADDR=0xfee00000 Flags={} Type=Local APIC Override Local APIC ADDR=0x00000000fee00000 Type=Local SAPIC ACPI CPU=0 Flags={ENABLED} APIC ID=0 APIC EID=0 Type=Local SAPIC ACPI CPU=1 Flags={ENABLED} APIC ID=1 APIC EID=0 Type=IO SAPIC APIC ID=0 INT BASE=16 ADDR=0xfed20800 Type=IO SAPIC APIC ID=1 INT BASE=27 ADDR=0xfed22800 Type=IO SAPIC APIC ID=2 INT BASE=38 ADDR=0xfed24800 Type=IO SAPIC APIC ID=3 INT BASE=49 ADDR=0xfed26800 Type=IO SAPIC APIC ID=4 INT BASE=60 ADDR=0xfed28800 Type=IO SAPIC APIC ID=6 INT BASE=71 ADDR=0xfed2c800 Type=IO SAPIC APIC ID=7 INT BASE=82 ADDR=0xfed2e800 */ Cheers, -Peter -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5 From owner-p4-projects@FreeBSD.ORG Mon Aug 25 17:51:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 26BBC16A4C1; Mon, 25 Aug 2003 17:51:29 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DD5F916A4BF; Mon, 25 Aug 2003 17:51:28 -0700 (PDT) Received: from harmony.village.org (rover.bsdimp.com [204.144.255.66]) by mx1.FreeBSD.org (Postfix) with ESMTP id B660643FAF; Mon, 25 Aug 2003 17:51:27 -0700 (PDT) (envelope-from imp@bsdimp.com) Received: from localhost (warner@rover2.village.org [10.0.0.1]) by harmony.village.org (8.12.9/8.12.3) with ESMTP id h7Q0pLwN031004; Mon, 25 Aug 2003 18:51:21 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Mon, 25 Aug 2003 18:51:20 -0600 (MDT) Message-Id: <20030825.185120.42774461.imp@bsdimp.com> To: jhb@FreeBSD.org From: "M. Warner Losh" In-Reply-To: References: <20030822.154941.31253895.imp@bsdimp.com> X-Mailer: Mew version 2.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: perforce@FreeBSD.org cc: marcel@xcllnt.net Subject: Re: PERFORCE change 36551 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 00:51:29 -0000 In message: John Baldwin writes: : : On 22-Aug-2003 M. Warner Losh wrote: : > In message: <20030822173606.GA849@dhcp42.pn.xcllnt.net> : > Marcel Moolenaar writes: : >: > > So, please. Do not blur the distinction by having it all mapped as : >: > > ISA devices. I really don't want to have to shoot you :-) : >: > : >: > Well, the other alternative is to add an ACPI attachment for every : >: > ISA device. I'm sure you can appreciate my lack of zeal for this : >: > option. :( : >: : >: Moving forward I would think that you replace ISA bus attachments : >: with ACPI bus attachments until such time you don't have any ISA : >: drivers anymore. That is, you probably need drivers for ISA devices : >: that exist on alpha, so you'll end up with a handful of drivers : >: that have both ACPI and ISA. Hmmm, I don't know if this holds for : >: pc98 or not? : > : > Assumption: bus attachement are cheap. : > : > There will be a number of drivers that violate this, and may need to : > be rearranged, but forcing a device onto the ISA bus because we don't : > have a ACPI attachment for it is lame. : > : > The pc98 folks have expressed a strong desire that CBUS front ends be : > separate from ISA front ends. There's a number of technical reasons : > for this, in addition to the asthetic argument. Basically, they've : > shoe-horned cbus into ISA bus, and it is a poor fit. Let's learn from : > that lesson. : : ACPI isn't a bus like c-bus though. ACPI enumerates ISA devices. : A closer analogy would be to create a pnpbios0 bus for ISA devices : enumerated by the PNP BIOS. cbus and ebus are more closely related. But cbus also has an enumeration. It also sounds like acpi enumerates devices at addresses that may or may not be completely isa. Warner From owner-p4-projects@FreeBSD.ORG Mon Aug 25 18:28:57 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 513D116A4C1; Mon, 25 Aug 2003 18:28:57 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 14C2516A4BF for ; Mon, 25 Aug 2003 18:28:57 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9C08D43FBF for ; Mon, 25 Aug 2003 18:28:55 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7Q1St0U017755 for ; Mon, 25 Aug 2003 18:28:55 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7Q1StKJ017752 for perforce@freebsd.org; Mon, 25 Aug 2003 18:28:55 -0700 (PDT) Date: Mon, 25 Aug 2003 18:28:55 -0700 (PDT) Message-Id: <200308260128.h7Q1StKJ017752@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36923 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 01:28:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=36923 Change 36923 by marcel@marcel_nfs on 2003/08/25 18:28:05 Add the beginnings of something that may be called a manpage; someday. Of course this ultimately has to be put in src/share/man/man4, but the uart tree only covers src/sys. Affected files ... .. //depot/projects/uart/dev/uart/uart.4#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Mon Aug 25 19:15:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 85F8916A4C1; Mon, 25 Aug 2003 19:15:53 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 42E9216A4BF for ; Mon, 25 Aug 2003 19:15:53 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C78CD43FB1 for ; Mon, 25 Aug 2003 19:15:52 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7Q2Fq0U020479 for ; Mon, 25 Aug 2003 19:15:52 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7Q2FqrR020476 for perforce@freebsd.org; Mon, 25 Aug 2003 19:15:52 -0700 (PDT) Date: Mon, 25 Aug 2003 19:15:52 -0700 (PDT) Message-Id: <200308260215.h7Q2FqrR020476@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 36924 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 02:15:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=36924 Change 36924 by rwatson@rwatson_paprika on 2003/08/25 19:15:19 Convert from notes into text for network interface description. Add stub paragraph for routing sockets and the routing system. Begin to put text into the IP networking section. Affected files ... .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#4 edit Differences ... ==== //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#4 (text+ko) ==== @@ -1880,34 +1880,50 @@ Network Interfaces - XXX + Most network protocol stacks included with FreeBSD are + intended for use of local area and wide area networks. + I/O from external network devices is generally abstracted + behind a network interface--most frequently as a source + and sink of packets. + Generally access to network interfaces is performed using + the network stack, with higher level network services + abstracted by sockets. + Management of network interfaces occurs using management + sockets or sysctl, and generally requires privilege, + although access control varies by component. - generally, access to network interfaces performed using the - network stack, abstracted via sockets. - management occurs via special network sockets, and sysctl, and - requires privilege. - Management of specific protocol interactions with the network - stack is performed at the level of the network stack, and - access control may vary by component. + The Berkeley Packet Filter (BPF) permits direct monitoring + and transmission at the interface level, and offers a + kernel-based filtering language to improve performance, avoiding + the copying of uninteresting packets into the user process. + the right to use bpf depends on the protections of bpf devices + in /dev, permitting unprivileged monitoring or transmission of + specific classes of packets. + However, enabled promiscuous mode on interfaces does require + privilege. + - bpf permits direct monitoring and transmission at the - interface level, and offers a kernel-based filtering language - to improve performance, avoiding the copying of uninteresting - packets into the user process. + + Routing Sockets - the right to use bpf depends on the protections of bpf - devices in /dev, permitting unprivileged monitoring or - transmission of specific classes of packets. - however, enabled promiscuous mode on interfaces does require - privilege. - - XXX revision here + The FreeBSD network stack provides centralized, + protocol-independent route management. XXX + IP Networking Protection Model - management interfaces (suser required to manage IP properties + The IPv4 and IPv6 protocol stacks in FreeBSD provide + controlled access to the network interface as abstracted behind + a variety of socket types, including TCP, UDP, and raw sockets. + Internally, routing of packets in and out of interfaces are + controlled by the IPv4 and IPv6 routing tables, which is + manipulated using routing sockets. XXX + + + +management interfaces (suser required to manage IP properties of network interfaces, routing), monitoring of credentials associated with sockets. monitoring interfaces generally do not require privilege, with From owner-p4-projects@FreeBSD.ORG Mon Aug 25 19:16:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 62A8816A4D8; Mon, 25 Aug 2003 19:16:55 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3C11A16A4BF for ; Mon, 25 Aug 2003 19:16:55 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B2E9143FA3 for ; Mon, 25 Aug 2003 19:16:54 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7Q2Gs0U020562 for ; Mon, 25 Aug 2003 19:16:54 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7Q2GsOL020559 for perforce@freebsd.org; Mon, 25 Aug 2003 19:16:54 -0700 (PDT) Date: Mon, 25 Aug 2003 19:16:54 -0700 (PDT) Message-Id: <200308260216.h7Q2GsOL020559@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 36925 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 02:16:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=36925 Change 36925 by rwatson@rwatson_paprika on 2003/08/25 19:16:34 Use instead of for filenames. Pointed out by: simon@FreeBSD.org Affected files ... .. //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#5 edit Differences ... ==== //depot/projects/trustedbsd/doc/en_US.ISO8859-1/books/arch-handbook/secarch/chapter.sgml#5 (text+ko) ==== @@ -1733,7 +1733,7 @@ broadly, what types of mounts are permitted (read-only or otherwise). Enforcement of these protections is split between the user mountd - process, which reads the /etc/exports file + process, which reads the /etc/exports file and services mount requests, and the kernel NFS implementation, which is informed of the export rules by the mount daemon. Once a mount has taken place, each file system RPC is accompanied From owner-p4-projects@FreeBSD.ORG Mon Aug 25 19:54:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0FE5E16A4C1; Mon, 25 Aug 2003 19:54:42 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C657016A4BF for ; Mon, 25 Aug 2003 19:54:41 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7183F43FFB for ; Mon, 25 Aug 2003 19:54:41 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7Q2sf0U021776 for ; Mon, 25 Aug 2003 19:54:41 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7Q2seKu021773 for perforce@freebsd.org; Mon, 25 Aug 2003 19:54:40 -0700 (PDT) Date: Mon, 25 Aug 2003 19:54:40 -0700 (PDT) Message-Id: <200308260254.h7Q2seKu021773@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36926 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 02:54:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=36926 Change 36926 by marcel@marcel_nfs on 2003/08/25 19:54:14 On panther.freebsd.org the ns8250 based UARTs are called su_pnp, not su. Match it. NOTE: The detection of the console isn't right. We should not be using /chosen to get the ihandle, because it doesn't give us information about options. It's the device options that are used to destinguish between channel A or channel B of the se device. Hence, we cannot currently use channel B for the console. Affected files ... .. //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#4 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#4 (text+ko) ==== @@ -90,7 +90,7 @@ return (ENXIO); if (!strcmp(buffer, "se")) di->ops = uart_sab82532_ops; - else if (!strcmp(buffer, "su")) + else if (!strcmp(buffer, "su") || !strcmp(buffer, "su_pnp")) di->ops = uart_ns8250_ops; else return (ENXIO); From owner-p4-projects@FreeBSD.ORG Tue Aug 26 00:55:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D32B816A4C1; Tue, 26 Aug 2003 00:55:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8CB4B16A4BF for ; Tue, 26 Aug 2003 00:55:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 332C043FDD for ; Tue, 26 Aug 2003 00:55:51 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7Q7tp0U048672 for ; Tue, 26 Aug 2003 00:55:51 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7Q7toVY048669 for perforce@freebsd.org; Tue, 26 Aug 2003 00:55:50 -0700 (PDT) Date: Tue, 26 Aug 2003 00:55:50 -0700 (PDT) Message-Id: <200308260755.h7Q7toVY048669@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36934 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 07:55:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=36934 Change 36934 by marcel@marcel_nfs on 2003/08/26 00:55:15 Jake is working on keyboard support for sparc64 and expressed the need to seperate the tty handling from the core of the driver. This file (uart_tty.c) is the result of a nicely executed golfswing, with the only flaw that the golfclub was an axe. Oh, and the caddy got beheaded by the backswing, but that doesn't count really. Also moved to this file is the low-level console support. I expect that the keyboard handling will be much the same WRT architecture. So I envision uart_tty.c and uart_kbd.c, each of which handle the typicalities of their functionality. This file is not currently used. It's only submitted to make it easier to talk about what can be done and serves as a convenience for sending patches. Affected files ... .. //depot/projects/uart/dev/uart/uart_tty.c#6 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Aug 26 06:16:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9511916A4C1; Tue, 26 Aug 2003 06:16:34 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6980016A4BF for ; Tue, 26 Aug 2003 06:16:34 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A1F0743FBF for ; Tue, 26 Aug 2003 06:16:33 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QDGX0U072030 for ; Tue, 26 Aug 2003 06:16:33 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QDGXOB072027 for perforce@freebsd.org; Tue, 26 Aug 2003 06:16:33 -0700 (PDT) Date: Tue, 26 Aug 2003 06:16:33 -0700 (PDT) Message-Id: <200308261316.h7QDGXOB072027@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 36942 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 13:16:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=36942 Change 36942 by areisse@areisse_tislabs on 2003/08/26 06:15:32 64-bit access vector in binary policy files. Updated flask configuration in sample policy. display auditallow as well as allow in checkpolicy -d. Affected files ... .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/checkpolicy/checkpolicy.c#2 edit .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/checkpolicy/policy_parse.y#2 edit .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/Makefile#4 edit .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/flask/access_vectors#2 edit .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/macros/global_macros.te#2 edit .. //depot/projects/trustedbsd/sebsd/lib/libsebsd/security_compute_av.c#2 edit .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/ss/avtab.c#3 edit .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/ss/avtab.h#3 edit .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/ss/policydb.h#3 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/checkpolicy/checkpolicy.c#2 (text+ko) ==== @@ -490,8 +490,25 @@ switch (ret) { case 0: printf("\nallowed {"); + /*printf (" <%qx> ", allowed);*/ + for (i = 1; i <= sizeof(allowed) * 8; i++) { + if (allowed & (((access_vector_t)1) << (i - 1))) { + perm = (char *) hashtab_map(cladatum->permissions.table, + find_perm, &i); + + if (!perm && cladatum->comdatum) { + perm = (char *) hashtab_map(cladatum->comdatum->permissions.table, + find_perm, &i); + } + if (perm) + printf(" %s", perm); + } + } + printf(" }\n"); + + printf("audit-allowed {"); for (i = 1; i <= sizeof(allowed) * 8; i++) { - if (allowed & (1 << (i - 1))) { + if (auditallow & (((access_vector_t)1) << (i - 1))) { perm = (char *) hashtab_map(cladatum->permissions.table, find_perm, &i); @@ -504,6 +521,7 @@ } } printf(" }\n"); + break; case -EINVAL: printf("\ninvalid sid\n"); ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/checkpolicy/policy_parse.y#2 (text+ko) ==== @@ -2013,7 +2013,7 @@ continue; } - avp[i] |= (1 << (perdatum->value - 1)); + avp[i] |= (((__u64)1) << (perdatum->value - 1)); } free(id); ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/Makefile#4 (text+ko) ==== @@ -35,8 +35,8 @@ ALLDOMAINS != echo domains/*.te domains/misc/*.te domains/program/*.te -policy.11: policy.conf $(FC) - ${CHECKPOLICY} -o policy.11 policy.conf +policy.13: policy.conf $(FC) + ${CHECKPOLICY} -o policy.13 policy.conf policy.conf: tmp $(FLASKFILES) $(POLICYFILES) $(MACROFILES) $(M4) $(FLASKFILES) $(POLICYFILES) > policy.conf @@ -44,7 +44,7 @@ tmp: @mkdir tmp -install: policy.11 +install: policy.13 install -c -o root -g wheel -m 400 $> $(INSTALLDIR) tmp/macro_used_flags.te: $(MACROPROGRAMFILES) @@ -72,4 +72,7 @@ cat $> > $@ clean: - rm -f policy.11 policy.conf file_contexts/file_contexts tmp/* + rm -f policy.13 policy.conf file_contexts/file_contexts tmp/* + +install-src: + cd ..; tar cf - policy | (cd $(INSTALLDIR); tar xf -) ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/flask/access_vectors#2 (text+ko) ==== @@ -315,14 +315,29 @@ # those definitions. (Order matters) chown - dac_override + dac_execute + dac_write dac_read_search fowner fsetid - kill + kill + link_dir + setfcap setgid - setuid - setpcap + setuid + mac_downgrade + mac_read + mac_relabel_subj + mac_upgrade + mac_write + inf_nofloat_obj + inf_nofloat_subj + inf_relabel_obj + inf_relabel_subj + audit_control + audit_write + setpcap + xxx_invalid1 linux_immutable net_bind_service net_broadcast ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/macros/global_macros.te#2 (text+ko) ==== @@ -167,6 +167,12 @@ define(`r_shm_perms', `{ associate getattr read unix_read }') define(`rw_shm_perms', `{ associate getattr setattr create destroy read write lock unix_read unix_write }') +# +# Mimic the dac_override capability from linux +# +define(`dac_override', `{ dac_read_search dac_execute dac_write }') + + ################################# # # Macros for type transition rules and ==== //depot/projects/trustedbsd/sebsd/lib/libsebsd/security_compute_av.c#2 (text+ko) ==== @@ -45,7 +45,7 @@ #include "sebsd.h" typedef char __assert_class_size[sizeof(security_class_t) == 2 ? 1 : -1]; -typedef char __assert_av_size[sizeof(access_vector_t) == 4 ? 1 : -1]; +typedef char __assert_av_size[sizeof(access_vector_t) == 8 ? 1 : -1]; /* * Return the decisions SEBSD makes given a specific access vector. @@ -60,10 +60,10 @@ int error; arguments_len = asprintf(&arguments, "%s%c%s%c%s", query->scontext, 0, - query->tcontext, 0, "121234"); + query->tcontext, 0, "1212345678"); if (arguments_len == -1) return (-1); - memcpy(&arguments[arguments_len - (2 + 4)], &query->tclass, + memcpy(&arguments[arguments_len - (2 + 8)], &query->tclass, sizeof(query->tclass)); memcpy(&arguments[arguments_len - 2], &query->requested, sizeof(query->requested)); ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/ss/avtab.c#3 (text+ko) ==== @@ -264,12 +264,24 @@ goto bad; } if (avdatum.specified & AVTAB_AV) { - if (avdatum.specified & AVTAB_ALLOWED) - avtab_allowed(&avdatum) = le32_to_cpu(buf[items++]); + if (avdatum.specified & AVTAB_ALLOWED) + { + __u32 b1 = le32_to_cpu (buf[items++]); + __u32 b2 = le32_to_cpu (buf[items++]); + avtab_allowed(&avdatum) = (((__u64) b1) << 32) | b2; + } if (avdatum.specified & AVTAB_AUDITDENY) - avtab_auditdeny(&avdatum) = le32_to_cpu(buf[items++]); + { + __u32 b1 = le32_to_cpu (buf[items++]); + __u32 b2 = le32_to_cpu (buf[items++]); + avtab_auditdeny(&avdatum) = (((__u64) b1) << 32) | b2; + } if (avdatum.specified & AVTAB_AUDITALLOW) - avtab_auditallow(&avdatum) = le32_to_cpu(buf[items++]); + { + __u32 b1 = le32_to_cpu (buf[items++]); + __u32 b2 = le32_to_cpu (buf[items++]); + avtab_auditallow(&avdatum) = (((__u64) b1) << 32) | b2; + } } else { if (avdatum.specified & AVTAB_TRANSITION) avtab_transition(&avdatum) = le32_to_cpu(buf[items++]); @@ -331,12 +343,18 @@ return -1; } if (cur->datum.specified & AVTAB_AV) { - if (cur->datum.specified & AVTAB_ALLOWED) - buf[items++] = cpu_to_le32(avtab_allowed(&cur->datum)); - if (cur->datum.specified & AVTAB_AUDITDENY) - buf[items++] = cpu_to_le32(avtab_auditdeny(&cur->datum)); - if (cur->datum.specified & AVTAB_AUDITALLOW) - buf[items++] = cpu_to_le32(avtab_auditallow(&cur->datum)); + if (cur->datum.specified & AVTAB_ALLOWED) { + buf[items++] = cpu_to_le32(avtab_allowed(&cur->datum) >> 32); + buf[items++] = cpu_to_le32(avtab_allowed(&cur->datum) & 0xffffffff); + } + if (cur->datum.specified & AVTAB_AUDITDENY) { + buf[items++] = cpu_to_le32(avtab_auditdeny(&cur->datum) >> 32); + buf[items++] = cpu_to_le32(avtab_auditdeny(&cur->datum) & 0xffffffff); + } + if (cur->datum.specified & AVTAB_AUDITALLOW) { + buf[items++] = cpu_to_le32(avtab_auditallow(&cur->datum) >> 32); + buf[items++] = cpu_to_le32(avtab_auditallow(&cur->datum) & 0xffffffff); + } } else { if (cur->datum.specified & AVTAB_TRANSITION) buf[items++] = cpu_to_le32(avtab_transition(&cur->datum)); ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/ss/avtab.h#3 (text+ko) ==== @@ -32,7 +32,7 @@ #define AVTAB_CHANGE 64 #define AVTAB_TYPE (AVTAB_TRANSITION | AVTAB_MEMBER | AVTAB_CHANGE) __u32 specified; /* what fields are specified */ - __u32 data[3]; /* access vectors or types */ + __u64 data[3]; /* access vectors or types */ #define avtab_allowed(x) (x)->data[0] #define avtab_auditdeny(x) (x)->data[1] #define avtab_auditallow(x) (x)->data[2] ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/ss/policydb.h#3 (text+ko) ==== @@ -248,7 +248,7 @@ #define PERM_SYMTAB_SIZE 32 -#define POLICYDB_VERSION 11 +#define POLICYDB_VERSION 13 #define POLICYDB_CONFIG_MLS 1 #define OBJECT_R "object_r" @@ -262,3 +262,5 @@ /* FLASK */ + + From owner-p4-projects@FreeBSD.ORG Tue Aug 26 07:21:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C088916A4C1; Tue, 26 Aug 2003 07:21:01 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6D14216A4BF for ; Tue, 26 Aug 2003 07:21:01 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F1A6D43FB1 for ; Tue, 26 Aug 2003 07:21:00 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QEL00U075481 for ; Tue, 26 Aug 2003 07:21:00 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QEKwhi075465 for perforce@freebsd.org; Tue, 26 Aug 2003 07:20:58 -0700 (PDT) Date: Tue, 26 Aug 2003 07:20:58 -0700 (PDT) Message-Id: <200308261420.h7QEKwhi075465@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 36948 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 14:21:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=36948 Change 36948 by cvance@cvance_release on 2003/08/26 07:20:15 Make some local changes to the release/install process - Remove references to perl, packages, X11 since they won't be on the install media - Make sure to build the modules for the MAC kernel Affected files ... .. //depot/projects/trustedbsd/sebsd/release/Makefile#5 edit .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/dist.c#4 edit .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/dist.h#4 edit .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/install.c#5 edit .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/menus.c#5 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/release/Makefile#5 (text+ko) ==== @@ -529,7 +529,7 @@ release.4: .for kernel in ${KERNELS} cd ${.CURDIR}/..; \ - ${CROSSMAKE} ${KERNEL_FLAGS} -DNO_MODULES \ + ${CROSSMAKE} ${KERNEL_FLAGS} \ KERNCONF=${kernel} INSTKERNNAME=${kernel} kernel \ DESTDIR=${RD}/trees/base .endfor ==== //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/dist.c#4 (text+ko) ==== @@ -350,7 +350,7 @@ Dists = _DIST_DEVELOPER; SrcDists = DIST_SRC_ALL; CRYPTODists = DIST_CRYPTO_ALL; - i = distMaybeSetPorts(self); + /* i = distMaybeSetPorts(self); */ distVerifyFlags(); return i; } @@ -375,7 +375,7 @@ Dists = _DIST_DEVELOPER; SrcDists = DIST_SRC_SYS; CRYPTODists |= DIST_CRYPTO_CRYPTO; - i = distMaybeSetPorts(self); + /* i = distMaybeSetPorts(self); */ distVerifyFlags(); return i; } @@ -399,7 +399,7 @@ distReset(NULL); Dists = _DIST_USER; CRYPTODists |= DIST_CRYPTO_CRYPTO; - i = distMaybeSetPorts(self); + /* i = distMaybeSetPorts(self); */ distVerifyFlags(); return i; } @@ -436,7 +436,7 @@ XF86Dists = DIST_XF86_ALL; XF86ServerDists = DIST_XF86_SERVER_ALL; XF86FontDists = DIST_XF86_FONTS_ALL; - i = distMaybeSetPorts(self); + /* i = distMaybeSetPorts(self); */ distVerifyFlags(); return i; } ==== //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/dist.h#4 (text+ko) ==== @@ -141,7 +141,7 @@ /* Canned distribution sets */ #define _DIST_USER \ - ( DIST_BASE | DIST_DOC | DIST_MANPAGES | DIST_DICT | DIST_CRYPTO | DIST_PERL ) + ( DIST_BASE | DIST_DOC | DIST_MANPAGES | DIST_DICT | DIST_CRYPTO ) #define _DIST_DEVELOPER \ ( _DIST_USER | DIST_PROFLIBS | DIST_INFO | DIST_SRC ) ==== //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/install.c#5 (text+ko) ==== @@ -686,11 +686,13 @@ } dialog_clear_norefresh(); + /* if (!msgYesNo("The FreeBSD package collection is a collection of thousands of ready-to-run\n" "applications, from text editors to games to WEB servers and more. Would you\n" "like to browse the collection now?")) { (void)configPackages(self); } + */ if (!msgYesNo("Would you like to add any initial user accounts to the system?\n" "Adding at least one account for yourself at this stage is suggested\n" ==== //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/menus.c#5 (text+ko) ==== @@ -911,22 +911,14 @@ "distributions", { { "X Exit", "Exit this menu (returning to previous)", checkTrue, dmenuExit, NULL, NULL, '<', '<', '<' }, - { "All", "All system sources, binaries and X Window System", - checkDistEverything, distSetEverything, NULL, NULL, ' ', ' ', ' ' }, { "Reset", "Reset selected distribution list to nothing", NULL, distReset, NULL, NULL, ' ', ' ', ' ' }, { "4 Developer", "Full sources, binaries and doc but no games", checkDistDeveloper, distSetDeveloper }, - { "5 X-Developer", "Same as above + X Window System", - checkDistXDeveloper, distSetXDeveloper }, { "6 Kern-Developer", "Full binaries and doc, kernel sources only", checkDistKernDeveloper, distSetKernDeveloper }, - { "7 X-Kern-Developer", "Same as above + X Window System", - checkDistXKernDeveloper, distSetXKernDeveloper }, { "8 User", "Average user - binaries and doc only", checkDistUser, distSetUser }, - { "9 X-User", "Same as above + X Window System", - checkDistXUser, distSetXUser }, { "A Minimal", "The smallest configuration possible", checkDistMinimum, distSetMinimum }, { "B Custom", "Specify your own distribution set", From owner-p4-projects@FreeBSD.ORG Tue Aug 26 08:27:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6975B16A4C1; Tue, 26 Aug 2003 08:27:22 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3B6C816A4BF for ; Tue, 26 Aug 2003 08:27:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 89FB443FE1 for ; Tue, 26 Aug 2003 08:27:21 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QFRL0U078686 for ; Tue, 26 Aug 2003 08:27:21 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QFRK05078683 for perforce@freebsd.org; Tue, 26 Aug 2003 08:27:20 -0700 (PDT) Date: Tue, 26 Aug 2003 08:27:20 -0700 (PDT) Message-Id: <200308261527.h7QFRK05078683@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 36949 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 15:27:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=36949 Change 36949 by jhb@jhb_laptop on 2003/08/26 08:26:41 Abandon multiple ISA bus idea by popular demand and instead propose having several different busses (isa0, pnpbios0, isapnp0, acpi0, cbus0, etc.) that ISA type drivers can attach to. Requested by: marcel, imp Affected files ... .. //depot/doc/6.0-TODO#3 edit Differences ... ==== //depot/doc/6.0-TODO#3 (text+ko) ==== @@ -24,14 +24,20 @@ registers including BAR's during suspend. The old code that does this in individual drivers can then be removed. (maybe this will be in 5.x, as imp has some code to do this already). -- Fix ISA bus support to have multiple ISA bus drivers. +- Split the current ISA support up into a few different busses. Note that + many ISA drivers will have to grow multiple attachments for this, but + that is seen as the lesser of evils. - 1) An ISA bus that uses ACPI to enumerate PNPBIOS type devices. - 2) An ISA bus that uses the PNPBIOS to enumerate motherboard devices. - 3) A generic ISA bus that doesn't enumerate any builtin devices. - 4) A i386 ISA bus for systems w/o ACPI or PNPBIOS that fakes up - suitable PNPBIOS devices for a base system (attimer, atpic, rtc, - etc.) + 1) A plain ISA bus that only supports hint devices. + 2) A PnP BIOS bus that enumerates PnP BIOS devices. Would be a child of + legacy0 to avoid interfering with ACPI. + 3) ACPI attachments for ACPI-enumerated ISA devices. This is partially + done now. + 4) A PC98 C-Bus bus for pc98 c-bus attachments. + 5) An ISA PnP bus for ISA PnP devices. Probably the generic ISA bus + above would create an ISA PnP child bus if PnP is found. + 6) Some kind of fake PnP BIOS like bus for systems w/o ACPI or PnPBIOS + that attaches to legacy and enumerates pics, timers, etc. - Multiple passes over the new-bus tree for device probe and attach. The multiple passes might look something like this: @@ -49,9 +55,7 @@ hotplug bus. Bus drivers would need to idnetify child devices during this pass as they do now. 2) Probe interrupt controllers. This can allow drivers for interrupt - controllers to be real drivers. What we would probably do to help - old i386 systems without PNPBIOS is to have an ISA bus driver for - such systems (see ISA bus driver 4 above). + controllers to be real drivers. 3) Probe clock devices and timecounters. Note that since a clock driver will likely need to allocate an interrupt, this pass needs to happen after interrupt controllers have attached and made their interrupts From owner-p4-projects@FreeBSD.ORG Tue Aug 26 09:40:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 09F2916A4C1; Tue, 26 Aug 2003 09:40:54 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D9ECC16A4BF for ; Tue, 26 Aug 2003 09:40:53 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6E75D43FCB for ; Tue, 26 Aug 2003 09:40:53 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QGer0U088267 for ; Tue, 26 Aug 2003 09:40:53 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QGeqKP088264 for perforce@freebsd.org; Tue, 26 Aug 2003 09:40:52 -0700 (PDT) Date: Tue, 26 Aug 2003 09:40:52 -0700 (PDT) Message-Id: <200308261640.h7QGeqKP088264@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 36954 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 16:40:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=36954 Change 36954 by areisse@areisse_tislabs on 2003/08/26 09:40:22 fix for sebsd_syscall not getting called Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#6 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#6 (text+ko) ==== @@ -4058,7 +4058,7 @@ return (error); error = ENOSYS; - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { + LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { if (strcmp(mpc->mpc_name, target) == 0 && mpc->mpc_ops->mpo_syscall != NULL) { error = mpc->mpc_ops->mpo_syscall(td, From owner-p4-projects@FreeBSD.ORG Tue Aug 26 10:27:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9978F16A4C1; Tue, 26 Aug 2003 10:27:56 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5870D16A4BF for ; Tue, 26 Aug 2003 10:27:56 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EFD8043FAF for ; Tue, 26 Aug 2003 10:27:55 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QHRt0U091055 for ; Tue, 26 Aug 2003 10:27:55 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QHRtuf091052 for perforce@freebsd.org; Tue, 26 Aug 2003 10:27:55 -0700 (PDT) Date: Tue, 26 Aug 2003 10:27:55 -0700 (PDT) Message-Id: <200308261727.h7QHRtuf091052@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 36962 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 17:27:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=36962 Change 36962 by rwatson@rwatson_tislabs on 2003/08/26 10:27:30 Merge kern_mac.c@3695 into MAC branch: fix mac_syscall() for static policy modules. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#403 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#403 (text+ko) ==== @@ -3891,7 +3891,7 @@ return (error); error = ENOSYS; - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { + LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { if (strcmp(mpc->mpc_name, target) == 0 && mpc->mpc_ops->mpo_syscall != NULL) { error = mpc->mpc_ops->mpo_syscall(td, From owner-p4-projects@FreeBSD.ORG Tue Aug 26 10:47:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F50A16A4C1; Tue, 26 Aug 2003 10:47:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C785A16A4BF for ; Tue, 26 Aug 2003 10:47:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1AE5F43FDD for ; Tue, 26 Aug 2003 10:47:22 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QHlL0U091878 for ; Tue, 26 Aug 2003 10:47:21 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QHlLmC091875 for perforce@freebsd.org; Tue, 26 Aug 2003 10:47:21 -0700 (PDT) Date: Tue, 26 Aug 2003 10:47:21 -0700 (PDT) Message-Id: <200308261747.h7QHlLmC091875@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36967 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 17:47:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=36967 Change 36967 by marcel@marcel_nfs on 2003/08/26 10:47:16 Finalize the split. It's a step in the right direction. So, now all tty related code, including the low-level console support is on uart_tty.c. The core of the uart driver calls helper attach and detach functions depending on the kind of interface. By default this will be tty. The helper attach is responsible to setup the SWI. It's non-optional. Currently the high-level interface specific data has been put in a union. We may want to do that differently. Also, we may want to create a scalable way to call the helper functions. It's not really ideal to have them explicit in bus_attach/bus_detach. We'll see.. Feedback from: jake Affected files ... .. //depot/projects/uart/conf/files#17 edit .. //depot/projects/uart/dev/uart/uart_bus.h#17 edit .. //depot/projects/uart/dev/uart/uart_cons.c#2 delete .. //depot/projects/uart/dev/uart/uart_core.c#23 edit Differences ... ==== //depot/projects/uart/conf/files#17 (text+ko) ==== @@ -786,12 +786,12 @@ dev/uart/uart_bus_pci.c optional uart cardbus dev/uart/uart_bus_pci.c optional uart pci dev/uart/uart_bus_puc.c optional uart puc -dev/uart/uart_cons.c optional uart dev/uart/uart_core.c optional uart dev/uart/uart_dev_ns8250.c optional uart dev/uart/uart_dev_sab82532.c optional uart dev/uart/uart_dev_z8530.c optional uart dev/uart/uart_subr.c optional uart +dev/uart/uart_tty.c optional uart dev/ubsec/ubsec.c optional ubsec # # USB support ==== //depot/projects/uart/dev/uart/uart_bus.h#17 (text+ko) ==== @@ -110,6 +110,7 @@ int sc_fastintr:1; /* This UART uses fast interrupts. */ int sc_hasfifo:1; /* This UART has FIFOs. */ int sc_leaving:1; /* This UART is going away. */ + int sc_keyboard:1; /* This UART is a keyboard device. */ int sc_opened:1; /* This UART is open for business. */ int sc_polled:1; /* This UART has no interrupts. */ int sc_txbusy:1; /* This UART is transmitting. */ @@ -129,10 +130,19 @@ int sc_txdatasz; int sc_txfifosz; /* Size of TX FIFO and buffer. */ - dev_t sc_si[2]; /* We have 2 device special files. */ + /* Upper layer data. */ void *sc_softih; - struct tty *sc_tty; uint32_t sc_ttypend; + union { + /* TTY specific data. */ + struct { + dev_t si[2]; /* We have 2 device special files. */ + struct tty *tp; + } u_tty; + /* Keyboard specific data. */ + struct { + } u_kbd; + } sc_u; }; extern devclass_t uart_devclass; ==== //depot/projects/uart/dev/uart/uart_core.c#23 (text+ko) ==== @@ -62,159 +62,6 @@ MALLOC_DEFINE(M_UART, "UART", "UART driver"); -#define UART_MINOR_CALLOUT 0x10000 - -static d_open_t uart_open; -static d_close_t uart_close; -static d_ioctl_t uart_ioctl; - -static struct cdevsw uart_cdevsw = { - .d_open = uart_open, - .d_close = uart_close, - .d_read = ttyread, - .d_write = ttywrite, - .d_ioctl = uart_ioctl, - .d_poll = ttypoll, - .d_name = uart_driver_name, - .d_maj = MAJOR_AUTO, - .d_flags = D_TTY, - .d_kqfilter = ttykqfilter, -}; - -static void -uart_tty_oproc(struct tty *tp) -{ - struct uart_softc *sc; - - KASSERT(tp->t_dev != NULL, ("foo")); - sc = tp->t_dev->si_drv1; - if (sc == NULL || sc->sc_leaving) - return; - - if (tp->t_state & TS_TBLOCK) - UART_SETSIG(sc, UART_SIG_DRTS); - else - UART_SETSIG(sc, UART_SIG_DRTS|UART_SIG_RTS); - - if (tp->t_state & (TS_BUSY | TS_TIMEOUT | TS_TTSTOP)) { - ttwwakeup(tp); - return; - } - - if (tp->t_outq.c_cc > 0 && !sc->sc_txbusy) { - sc->sc_txdatasz = q_to_b(&tp->t_outq, sc->sc_txbuf, - sc->sc_txfifosz); - tp->t_state |= TS_BUSY; - UART_TRANSMIT(sc); - } - ttwwakeup(tp); -} - -static int -uart_tty_param(struct tty *tp, struct termios *t) -{ - struct uart_softc *sc; - int databits, parity, stopbits; - - KASSERT(tp->t_dev != NULL, ("foo")); - sc = tp->t_dev->si_drv1; - if (sc == NULL || sc->sc_leaving) - return (ENODEV); - if (t->c_ispeed != t->c_ospeed && t->c_ospeed != 0) - return (EINVAL); - /* Hardwire the console speed. */ - if (sc->sc_console) - t->c_ispeed = t->c_ospeed = uart_console.baudrate; - if (t->c_ospeed == 0) { - UART_SETSIG(sc, UART_SIG_DDTR | UART_SIG_DRTS); - return (0); - } - switch (t->c_cflag & CSIZE) { - case CS5: databits = 5; break; - case CS6: databits = 6; break; - case CS7: databits = 7; break; - default: databits = 8; break; - } - stopbits = (t->c_cflag & CSTOPB) ? 2 : 1; - if (t->c_cflag & PARENB) - parity = (t->c_cflag & PARODD) ? UART_PARITY_ODD - : UART_PARITY_EVEN; - else - parity = UART_PARITY_NONE; - UART_PARAM(sc, t->c_ospeed, databits, stopbits, parity); - UART_SETSIG(sc, UART_SIG_DDTR | UART_SIG_DTR); - if ((t->c_cflag & CRTS_IFLOW) == 0) - UART_SETSIG(sc, UART_SIG_DRTS | UART_SIG_RTS); - ttsetwater(tp); - if (sc->sc_console) { - tp->t_cflag |= CLOCAL; - tp->t_cflag &= ~HUPCL; - } - return (0); -} - -static void -uart_tty_stop(struct tty *tp, int rw) -{ - struct uart_softc *sc; - - KASSERT(tp->t_dev != NULL, ("foo")); - sc = tp->t_dev->si_drv1; - if (sc == NULL || sc->sc_leaving) - return; - if (rw & FWRITE) { - if (sc->sc_txbusy) { - sc->sc_txbusy = 0; - UART_FLUSH(sc, UART_FLUSH_TRANSMITTER); - } - tp->t_state &= ~TS_BUSY; - } - if (rw & FREAD) { - UART_FLUSH(sc, UART_FLUSH_RECEIVER); - sc->sc_rxget = sc->sc_rxput = 0; - } -} - -void -uart_tty_intr(void *arg) -{ - struct uart_softc *sc = arg; - struct tty *tp; - int c, pend, sig, xc; - - if (sc->sc_leaving) - return; - - pend = atomic_readandclear_32(&sc->sc_ttypend); - if (!(pend & UART_IPEND_MASK)) - return; - - tp = sc->sc_tty; - - if (pend & UART_IPEND_RXREADY) { - while (!uart_rx_empty(sc)) { - xc = uart_rx_get(sc); - c = xc & 0xff; - if (xc & UART_STAT_FRAMERR) - c |= TTY_FE; - if (xc & UART_STAT_PARERR) - c |= TTY_PE; - (*linesw[tp->t_line].l_rint)(c, tp); - } - } - - if (pend & UART_IPEND_SIGCHG) { - sig = pend & UART_IPEND_SIGMASK; - if (sig & UART_SIG_DDCD) - (*linesw[tp->t_line].l_modem)(tp, sig & UART_SIG_DCD); - } - - if (pend & UART_IPEND_TXIDLE) { - tp->t_state &= ~TS_BUSY; - (*linesw[tp->t_line].l_start)(tp); - } -} - /* * A break condition has been detected. We treat the break condition as * a special case that should not happen during normal operation. When @@ -234,13 +81,8 @@ return; } #endif - if (!sc->sc_opened) - return; - if (sc->sc_tty == NULL || sc->sc_tty->t_iflag & IGNBRK) - return; - if (uart_rx_put(sc, UART_STAT_BREAK)) - sc->sc_rxbuf[sc->sc_rxput] |= UART_STAT_BREAK; - atomic_set_32(&sc->sc_ttypend, UART_IPEND_RXREADY); + if (sc->sc_opened) + atomic_set_32(&sc->sc_ttypend, UART_IPEND_BREAK); } /* @@ -428,7 +270,6 @@ { struct uart_softc *sc, *sc0; const char *sep; - struct tty *tp; int error; /* @@ -525,31 +366,14 @@ printf("\n"); } - tp = ttymalloc(NULL); - sc->sc_tty = tp; + if (sc->sc_keyboard) { + /* Keyboard specific attachment. */ + } else + error = uart_tty_attach(sc); - sc->sc_si[0] = make_dev(&uart_cdevsw, device_get_unit(sc->sc_dev), - UID_ROOT, GID_WHEEL, 0600, "ttyu%r", device_get_unit(sc->sc_dev)); - sc->sc_si[0]->si_drv1 = sc; - sc->sc_si[0]->si_tty = tp; - sc->sc_si[1] = make_dev(&uart_cdevsw, - device_get_unit(sc->sc_dev) | UART_MINOR_CALLOUT, UID_UUCP, - GID_DIALER, 0660, "uart%r", device_get_unit(sc->sc_dev)); - sc->sc_si[1]->si_drv1 = sc; - sc->sc_si[1]->si_tty = tp; + if (error) + goto fail; - tp->t_oproc = uart_tty_oproc; - tp->t_param = uart_tty_param; - tp->t_stop = uart_tty_stop; - - if (sc->sc_console) { - ((struct consdev *)uart_console.consdev)->cn_dev = - makedev(uart_cdevsw.d_maj, device_get_unit(sc->sc_dev)); - } - - swi_add(&tty_ithd, uart_driver_name, uart_tty_intr, sc, SWI_TTY, - INTR_TYPE_TTY, &sc->sc_softih); - sc->sc_leaving = 0; uart_intr(sc); return (0); @@ -568,7 +392,8 @@ return (error); } -int uart_bus_detach(device_t dev) +int +uart_bus_detach(device_t dev) { struct uart_softc *sc; @@ -578,10 +403,10 @@ UART_DETACH(sc); - ithread_remove_handler(sc->sc_softih); - destroy_dev(sc->sc_si[0]); - destroy_dev(sc->sc_si[1]); - /* ttyfree(sc->sc_tty); */ + if (sc->sc_keyboard) { + /* Keyboard specific detachment. */ + } else + uart_tty_detach(sc); free(sc->sc_txbuf, M_UART); free(sc->sc_rxbuf, M_UART); @@ -601,205 +426,3 @@ return (0); } - -static int -uart_open(dev_t dev, int flags, int mode, struct thread *td) -{ - struct uart_softc *sc; - struct tty *tp; - int error; - - sc = dev->si_drv1; - if (sc == NULL || sc->sc_leaving) - return (ENODEV); - - tp = dev->si_tty; - - loop: - if (sc->sc_opened) { - KASSERT(tp->t_state & TS_ISOPEN, ("foo")); - /* - * The device is open, so everything has been initialized. - * Handle conflicts. - */ - if (minor(dev) & UART_MINOR_CALLOUT) { - if (!sc->sc_callout) - return (EBUSY); - } else { - if (sc->sc_callout) { - if (flags & O_NONBLOCK) - return (EBUSY); - error = tsleep(sc, TTIPRI|PCATCH, "uartbi", 0); - if (error) - return (error); - sc = dev->si_drv1; - if (sc == NULL || sc->sc_leaving) - return (ENODEV); - goto loop; - } - } - if (tp->t_state & TS_XCLUDE && suser(td) != 0) - return (EBUSY); - } else { - KASSERT(!(tp->t_state & TS_ISOPEN), ("foo")); - /* - * The device isn't open, so there are no conflicts. - * Initialize it. Initialization is done twice in many - * cases: to preempt sleeping callin opens if we are - * callout, and to complete a callin open after DCD rises. - */ - sc->sc_callout = (minor(dev) & UART_MINOR_CALLOUT) ? 1 : 0; - tp->t_dev = dev; - - tp->t_cflag = TTYDEF_CFLAG; - tp->t_iflag = TTYDEF_IFLAG; - tp->t_lflag = TTYDEF_LFLAG; - tp->t_oflag = TTYDEF_OFLAG; - if (sc->sc_console) - tp->t_ispeed = tp->t_ospeed = uart_console.baudrate; - else - tp->t_ispeed = tp->t_ospeed = TTYDEF_SPEED; - ttychars(tp); - error = uart_tty_param(tp, &tp->t_termios); - if (error) - return (error); - /* - * Handle initial DCD. - */ - if ((UART_GETSIG(sc) & UART_SIG_DCD) || sc->sc_callout) - (*linesw[tp->t_line].l_modem)(tp, 1); - } - /* - * Wait for DCD if necessary. - */ - if (!(tp->t_state & TS_CARR_ON) && !sc->sc_callout && - !(tp->t_cflag & CLOCAL) && !(flags & O_NONBLOCK)) { - error = tsleep(TSA_CARR_ON(tp), TTIPRI|PCATCH, "uartdcd", 0); - if (error) - return (error); - sc = dev->si_drv1; - if (sc == NULL || sc->sc_leaving) - return (ENODEV); - goto loop; - } - error = ttyopen(dev, tp); - if (error) - return (error); - error = (*linesw[tp->t_line].l_open)(dev, tp); - if (error) - return (error); - - KASSERT(tp->t_state & TS_ISOPEN, ("foo")); - sc->sc_opened = 1; - return (0); -} - -static int -uart_close(dev_t dev, int flags, int mode, struct thread *td) -{ - struct uart_softc *sc; - struct tty *tp; - - sc = dev->si_drv1; - if (sc == NULL || sc->sc_leaving) - return (ENODEV); - tp = dev->si_tty; - if (!sc->sc_opened) { - KASSERT(!(tp->t_state & TS_ISOPEN), ("foo")); - return (0); - } - KASSERT(tp->t_state & TS_ISOPEN, ("foo")); - - if (!sc->sc_console) - UART_SETSIG(sc, UART_SIG_DDTR | UART_SIG_DRTS); - - (*linesw[tp->t_line].l_close)(tp, flags); - ttyclose(tp); - wakeup(sc); - wakeup(TSA_CARR_ON(tp)); - KASSERT(!(tp->t_state & TS_ISOPEN), ("foo")); - sc->sc_opened = 0; - return (0); -} - -static int -uart_ioctl(dev_t dev, u_long cmd, caddr_t data, int flags, struct thread *td) -{ - struct uart_softc *sc; - struct tty *tp; - int bits, error, sig; - - sc = dev->si_drv1; - if (sc == NULL || sc->sc_leaving) - return (ENODEV); - - tp = dev->si_tty; - error = (*linesw[tp->t_line].l_ioctl)(tp, cmd, data, flags, td); - if (error != ENOIOCTL) - return (error); - error = ttioctl(tp, cmd, data, flags); - if (error != ENOIOCTL) - return (error); - - switch (cmd) { - case TIOCSBRK: - UART_SETSIG(sc, UART_SIG_DBREAK | UART_SIG_BREAK); - break; - case TIOCCBRK: - UART_SETSIG(sc, UART_SIG_DBREAK); - break; - case TIOCSDTR: - UART_SETSIG(sc, UART_SIG_DDTR | UART_SIG_DTR); - break; - case TIOCCDTR: - UART_SETSIG(sc, UART_SIG_DDTR); - break; - case TIOCMSET: - bits = *(int*)data; - sig = UART_SIG_DDTR | UART_SIG_DRTS; - if (bits & TIOCM_DTR) - sig |= UART_SIG_DTR; - if (bits & TIOCM_RTS) - sig |= UART_SIG_RTS; - UART_SETSIG(sc, sig); - break; - case TIOCMBIS: - bits = *(int*)data; - sig = 0; - if (bits & TIOCM_DTR) - sig |= UART_SIG_DDTR | UART_SIG_DTR; - if (bits & TIOCM_RTS) - sig |= UART_SIG_DRTS | UART_SIG_RTS; - UART_SETSIG(sc, sig); - break; - case TIOCMBIC: - bits = *(int*)data; - sig = 0; - if (bits & TIOCM_DTR) - sig |= UART_SIG_DDTR; - if (bits & TIOCM_RTS) - sig |= UART_SIG_DRTS; - UART_SETSIG(sc, sig); - break; - case TIOCMGET: - sig = UART_GETSIG(sc); - bits = TIOCM_LE; - if (sig & UART_SIG_DTR) - bits |= TIOCM_DTR; - if (sig & UART_SIG_RTS) - bits |= TIOCM_RTS; - if (sig & UART_SIG_DSR) - bits |= TIOCM_DSR; - if (sig & UART_SIG_CTS) - bits |= TIOCM_CTS; - if (sig & UART_SIG_DCD) - bits |= TIOCM_CD; - if (sig & (UART_SIG_DRI | UART_SIG_RI)) - bits |= TIOCM_RI; - *(int*)data = bits; - break; - default: - return (ENOTTY); - } - return (0); -} From owner-p4-projects@FreeBSD.ORG Tue Aug 26 13:47:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 983D516A4C1; Tue, 26 Aug 2003 13:47:18 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6A3E616A4BF for ; Tue, 26 Aug 2003 13:47:18 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E41A543F3F for ; Tue, 26 Aug 2003 13:47:16 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QKlG0U012794 for ; Tue, 26 Aug 2003 13:47:16 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QKlG9e012791 for perforce@freebsd.org; Tue, 26 Aug 2003 13:47:16 -0700 (PDT) Date: Tue, 26 Aug 2003 13:47:16 -0700 (PDT) Message-Id: <200308262047.h7QKlG9e012791@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to Hrishikesh_Dandekar@NAI.com using -f From: Hrishikesh Dandekar To: Perforce Change Reviews Subject: PERFORCE change 36978 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 20:47:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=36978 Change 36978 by hdandeka@hdandeka_yash on 2003/08/26 13:47:12 Integrate the System V IPC changes from the rishi_SystemVIPC branch to the parent mac branch. The changes include: - Kernel wrappers around the original structures for the SystemV IPC primitives ( msg, msqs, sem, shm) to include the MAC label. - Changes to portions of the kernel code to reflect the use of these kernel wrappers. The ipcs utility was also modified for the same reason. - New hooks inside the MAC framework to potentially enforce policies on various actions on the primitives. - Changes to a number of mac policies to support the SystemV IPC MAC framework hooks. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#404 integrate .. //depot/projects/trustedbsd/mac/sys/kern/sysv_ipc.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/kern/sysv_msg.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/kern/sysv_sem.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/kern/sysv_shm.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/modules/sysvipc/sysvmsg/Makefile#2 integrate .. //depot/projects/trustedbsd/mac/sys/modules/sysvipc/sysvsem/Makefile#2 integrate .. //depot/projects/trustedbsd/mac/sys/modules/sysvipc/sysvshm/Makefile#2 integrate .. //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#220 integrate .. //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.h#14 integrate .. //depot/projects/trustedbsd/mac/sys/security/mac_lomac/mac_lomac.c#67 integrate .. //depot/projects/trustedbsd/mac/sys/security/mac_mls/mac_mls.c#178 integrate .. //depot/projects/trustedbsd/mac/sys/security/mac_stub/mac_stub.c#6 edit .. //depot/projects/trustedbsd/mac/sys/sys/mac.h#242 integrate .. //depot/projects/trustedbsd/mac/sys/sys/mac_policy.h#195 integrate .. //depot/projects/trustedbsd/mac/sys/sys/msg.h#6 integrate .. //depot/projects/trustedbsd/mac/sys/sys/msg_msg.h#1 branch .. //depot/projects/trustedbsd/mac/sys/sys/sem.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/sys/shm.h#5 integrate .. //depot/projects/trustedbsd/mac/usr.bin/ipcs/ipcs.c#6 integrate Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#404 (text+ko) ==== @@ -68,6 +68,10 @@ #include #include #include +#include +#include +#include +#include #include #include @@ -171,6 +175,11 @@ &mac_enforce_system, 0, "Enforce MAC policy on system operations"); TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); +static int mac_enforce_sysv = 1; +SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, + &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); +TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); + static int mac_enforce_vm = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); @@ -180,6 +189,7 @@ SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " "relabel"); + static int mac_mmap_revocation_via_cow = 1; SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " @@ -201,7 +211,11 @@ static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacpipes, nmacprocs; + nmacipqs, nmacpipes, nmacprocs, nmacipcmsgs, nmacipcmsqs, + nmacipcsemas, nmacipcshms; + +#define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); +#define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); #define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); #define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); @@ -230,6 +244,14 @@ &nmacvnodes, 0, "number of vnodes in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, &nmacdevfsdirents, 0, "number of devfs dirents inuse"); +SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, + &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); +SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, + &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); +SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, + &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); +SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, + &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); #else #define MAC_DEBUG_COUNTER_INC(x) #define MAC_DEBUG_COUNTER_DEC(x) @@ -823,6 +845,42 @@ mac_init_ifnet_label(&ifp->if_label); } +void +mac_init_ipc_msgmsg(struct msg *msgptr) +{ + + mac_init_label(&msgptr->label); + MAC_PERFORM(init_ipc_msgmsg_label, &msgptr->label); + MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); +} + +void +mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) +{ + + mac_init_label(&msqkptr->label); + MAC_PERFORM(init_ipc_msgqueue_label, &msqkptr->label); + MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); +} + +void +mac_init_ipc_sema(struct semid_kernel *semakptr) +{ + + mac_init_label(&semakptr->label); + MAC_PERFORM(init_ipc_sema_label, &semakptr->label); + MAC_DEBUG_COUNTER_INC(&nmacipcsemas); +} + +void +mac_init_ipc_shm(struct shmid_kernel *shmsegptr) +{ + + mac_init_label(&shmsegptr->label); + MAC_PERFORM(init_ipc_shm_label, &shmsegptr->label); + MAC_DEBUG_COUNTER_INC(&nmacipcshms); +} + int mac_init_ipq(struct ipq *ipq, int flag) { @@ -1045,6 +1103,42 @@ } void +mac_destroy_ipc_msgmsg(struct msg *msgptr) +{ + + MAC_PERFORM(destroy_ipc_msgmsg_label, &msgptr->label); + mac_destroy_label(&msgptr->label); + MAC_DEBUG_COUNTER_DEC(&nmacipcmsgs); +} + +void +mac_destroy_ipc_msgqueue(struct msqid_kernel *msqkptr) +{ + + MAC_PERFORM(destroy_ipc_msgqueue_label, &msqkptr->label); + mac_destroy_label(&msqkptr->label); + MAC_DEBUG_COUNTER_DEC(&nmacipcmsqs); +} + +void +mac_destroy_ipc_sema(struct semid_kernel *semakptr) +{ + + MAC_PERFORM(destroy_ipc_sema_label, &semakptr->label); + mac_destroy_label(&semakptr->label); + MAC_DEBUG_COUNTER_DEC(&nmacipcsemas); +} + +void +mac_destroy_ipc_shm(struct shmid_kernel *shmsegptr) +{ + + MAC_PERFORM(destroy_ipc_shm_label, &shmsegptr->label); + mac_destroy_label(&shmsegptr->label); + MAC_DEBUG_COUNTER_DEC(&nmacipcshms); +} + +void mac_destroy_ipq(struct ipq *ipq) { @@ -2221,6 +2315,34 @@ MAC_PERFORM(create_bpfdesc, cred, bpf_d, &bpf_d->bd_label); } +void +mac_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr) +{ + + MAC_PERFORM(create_ipc_msgmsg, cred, msgptr, &msgptr->label); +} + +void +mac_create_ipc_msgqueue(struct ucred *cred, struct msqid_kernel *msqkptr) +{ + + MAC_PERFORM(create_ipc_msgqueue, cred, msqkptr, &msqkptr->label); +} + +void +mac_create_ipc_sema(struct ucred *cred, struct semid_kernel *semakptr) +{ + + MAC_PERFORM(create_ipc_sema, cred, semakptr, &semakptr->label); +} + +void +mac_create_ipc_shm(struct ucred *cred, struct shmid_kernel *shmsegptr) +{ + + MAC_PERFORM(create_ipc_shm, cred, shmsegptr, &shmsegptr->label); +} + void mac_create_socket(struct ucred *cred, struct socket *socket) { @@ -2472,6 +2594,34 @@ &mp->mnt_fslabel); } +void +mac_cleanup_ipc_msgmsg(struct msg *msgptr) +{ + + MAC_PERFORM(cleanup_ipc_msgmsg, &msgptr->label); +} + +void +mac_cleanup_ipc_msgqueue(struct msqid_kernel *msqkptr) +{ + + MAC_PERFORM(cleanup_ipc_msgqueue, &msqkptr->label); +} + +void +mac_cleanup_ipc_sema(struct semid_kernel *semakptr) +{ + + MAC_PERFORM(cleanup_ipc_sema, &semakptr->label); +} + +void +mac_cleanup_ipc_shm(struct shmid_kernel *shmsegptr) +{ + + MAC_PERFORM(cleanup_ipc_shm, &shmsegptr->label); +} + int mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet) { @@ -2529,6 +2679,209 @@ } int +mac_check_ipc_msgmsq(struct ucred *cred, struct msg *msgptr, + struct msqid_kernel *msqkptr) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &msqkptr->label ?? + MAC_CHECK(check_ipc_msgmsq, cred, msgptr, msqkptr); + + return(error); +} + +int +mac_check_ipc_msgrcv(struct ucred *cred, struct msg *msgptr) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &msqkptr->label ?? + MAC_CHECK(check_ipc_msgrcv, cred, msgptr); + + return(error); +} + +int +mac_check_ipc_msgrmid(struct ucred *cred, struct msg *msgptr) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &msqkptr->label ?? + MAC_CHECK(check_ipc_msgrmid, cred, msgptr); + + return(error); +} + +int +mac_check_ipc_msqget(struct ucred *cred, struct msqid_kernel *msqkptr) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &msqkptr->label ?? + MAC_CHECK(check_ipc_msqget, cred, msqkptr); + + return(error); +} + +int +mac_check_ipc_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &msqkptr->label ?? + MAC_CHECK(check_ipc_msqsnd, cred, msqkptr); + + return(error); +} + +int +mac_check_ipc_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &msqkptr->label ?? + MAC_CHECK(check_ipc_msqrcv, cred, msqkptr); + + return(error); +} + +int +mac_check_ipc_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, + int cmd) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &msqkptr->label ?? + MAC_CHECK(check_ipc_msqctl, cred, msqkptr, cmd); + + return(error); +} + +int +mac_check_ipc_semctl(struct ucred *cred, struct semid_kernel *semakptr, + int cmd) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &semakptr->label ?? + MAC_CHECK(check_ipc_semctl, cred, semakptr, cmd); + + return(error); +} + +int +mac_check_ipc_semget(struct ucred *cred, struct semid_kernel *semakptr) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &semakptr->label ?? + MAC_CHECK(check_ipc_semget, cred, semakptr); + + return(error); +} + +int +mac_check_ipc_semop(struct ucred *cred, struct semid_kernel *semakptr, + size_t accesstype) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &semakptr->label ?? + MAC_CHECK(check_ipc_semop, cred, semakptr, accesstype); + + return(error); +} + +int +mac_check_ipc_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, + int shmflg) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &shmsegptr->label ?? + MAC_CHECK(check_ipc_shmat, cred, shmsegptr, shmflg); + + return(error); +} + +int +mac_check_ipc_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, + int cmd) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &shmsegptr->label ?? + MAC_CHECK(check_ipc_shmctl, cred, shmsegptr, cmd); + + return(error); +} + +int +mac_check_ipc_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &shmsegptr->label ?? + MAC_CHECK(check_ipc_shmdt, cred, shmsegptr); + + return(error); +} + +int +mac_check_ipc_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, + int shmflg) +{ + int error; + + if (!mac_enforce_sysv) + return (0); + + //XXX: Should we also pass &shmsegptr->label ?? + MAC_CHECK(check_ipc_shmget, cred, shmsegptr, shmflg); + + return(error); +} + +int mac_check_kenv_dump(struct ucred *cred) { int error; ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_ipc.c#8 (text+ko) ==== @@ -70,6 +70,13 @@ * Check for ipc permission */ + +/* + * Note: The MAC Framework doesnt add any hook to the ipcperm function as + * fine-grained hooks are inserted throughout the ipc primitives. These hooks + * compliment the ipcperm check. + */ + int ipcperm(td, perm, mode) struct thread *td; ==== //depot/projects/trustedbsd/mac/sys/kern/sysv_msg.c#11 (text+ko) ==== @@ -21,6 +21,7 @@ __FBSDID("$FreeBSD: src/sys/kern/sysv_msg.c,v 1.49 2003/06/11 00:56:57 obrien Exp $"); #include "opt_sysvipc.h" +#include "opt_mac.h" #include #include @@ -35,6 +36,11 @@ #include #include #include +#ifdef MAC +#include +#include +#include +#endif static MALLOC_DEFINE(M_MSG, "msg", "SVID compatible message queues"); @@ -47,6 +53,11 @@ #else #define DPRINTF(a) #endif +#ifdef MAC_DEBUG +#define MPRINTF(a) printf(a) +#else +#define MPRINTF(a) +#endif static void msg_freehdr(struct msg *msghdr); @@ -56,14 +67,17 @@ (sy_call_t *)msgsnd, (sy_call_t *)msgrcv }; +#ifndef MAC +/* For the MAC framework, struct moved to the header file sys/msg_msg.h */ struct msg { struct msg *msg_next; /* next msg in the chain */ long msg_type; /* type of this message */ /* >0 -> type of this message */ /* 0 -> free header */ - u_short msg_ts; /* size of this message */ + unsigned short msg_ts; /* size of this message */ short msg_spot; /* location of start of msg in buffer */ }; +#endif #ifndef MSGSSZ @@ -129,8 +143,10 @@ static char *msgpool; /* MSGMAX byte long msg buffer pool */ static struct msgmap *msgmaps; /* MSGSEG msgmap structures */ static struct msg *msghdrs; /* MSGTQL msg headers */ -static struct msqid_ds *msqids; /* MSGMNI msqid_ds struct's */ +static struct msqid_kernel *msqids; /* MSGMNI msqid_kernel struct's */ static struct mtx msq_mtx; /* global mutex for message queues. */ +static int refcount; /* to ensure consistency during and after msgunload */ +static struct mtx refcnt_mtx; /* global mutex for refcount. */ static void msginit() @@ -151,7 +167,7 @@ msghdrs = malloc(sizeof(struct msg) * msginfo.msgtql, M_MSG, M_WAITOK); if (msghdrs == NULL) panic("msghdrs is NULL"); - msqids = malloc(sizeof(struct msqid_ds) * msginfo.msgmni, M_MSG, M_WAITOK); + msqids = malloc(sizeof(struct msqid_kernel) * msginfo.msgmni, M_MSG, M_WAITOK); if (msqids == NULL) panic("msqids is NULL"); @@ -194,6 +210,9 @@ if (i > 0) msghdrs[i-1].msg_next = &msghdrs[i]; msghdrs[i].msg_next = NULL; +#ifdef MAC + mac_init_ipc_msgmsg(&msghdrs[i]); +#endif } free_msghdrs = &msghdrs[0]; @@ -201,19 +220,44 @@ panic("msqids is NULL"); for (i = 0; i < msginfo.msgmni; i++) { - msqids[i].msg_qbytes = 0; /* implies entry is available */ - msqids[i].msg_perm.seq = 0; /* reset to a known value */ - msqids[i].msg_perm.mode = 0; + msqids[i].u.msg_qbytes = 0; /* implies entry is available */ + msqids[i].u.msg_perm.seq = 0; /* reset to a known value */ + msqids[i].u.msg_perm.mode = 0; +#ifdef MAC + mac_init_ipc_msgqueue(&msqids[i]); +#endif } mtx_init(&msq_mtx, "msq", NULL, MTX_DEF); + refcount = 0; + /* + * It is not permissible to pass the same mutex to mtx_init() multiple + * times without intervening calls to mtx_destroy(). + * Since we cannot destroy the refcnt_mtx during msgunload, we check if the + * mtx_init has ever been called. If so, we dont need to do mtx_init as the + * mutex is already initialized. + */ + if ( mtx_initialized(&refcnt_mtx) == 0 ) + mtx_init(&refcnt_mtx, "msgrefcnt", NULL, MTX_DEF); } static int msgunload() { - struct msqid_ds *msqptr; + struct msqid_kernel *msqkptr; int msqid; + /* + * Make sure that the msgunload maintains the consistency of the msqids + * and msghdrs data structures. This assures that the unload doesn't take + * place if any thread is in any of the code-paths (tinkering with the + * data structures), and also that no thread can enter the code-paths once + * the module is unloaded. + */ + mtx_lock(&refcnt_mtx); + if (refcount > 0) { + mtx_unlock(&refcnt_mtx); + return (EBUSY); + } for (msqid = 0; msqid < msginfo.msgmni; msqid++) { /* * Look for an unallocated and unlocked msqid_ds. @@ -221,19 +265,38 @@ * they are copying the message in/out. We can't * re-use the entry until they release it. */ - msqptr = &msqids[msqid]; - if (msqptr->msg_qbytes != 0 || - (msqptr->msg_perm.mode & MSG_LOCKED) != 0) + msqkptr = &msqids[msqid]; + if (msqkptr->u.msg_qbytes != 0 || + (msqkptr->u.msg_perm.mode & MSG_LOCKED) != 0) break; } - if (msqid != msginfo.msgmni) + if (msqid != msginfo.msgmni) { + mtx_unlock(&refcnt_mtx); return (EBUSY); + } + refcount= -1; /* Mark the module as being unloaded */ + mtx_unlock(&refcnt_mtx); + +#ifdef MAC + int i; + /* Clean up the MAC label associated with the msg objects. */ + for (i = 0; i < msginfo.msgtql; i++) + mac_destroy_ipc_msgmsg(&msghdrs[i]); + /* Clean up the MAC label associated with the msq objects. */ + for (msqid = 0; msqid < msginfo.msgmni; msqid++) + mac_destroy_ipc_msgqueue(&msqids[msqid]); +#endif free(msgpool, M_MSG); free(msgmaps, M_MSG); free(msghdrs, M_MSG); free(msqids, M_MSG); mtx_destroy(&msq_mtx); + /* + * NOTE: We cannot destroy the refcnt_mtx as it is possible that some thread + * might (attempt to) hold the mutex. + */ +/* mtx_destroy(&refcnt_mtx); */ return (0); } @@ -325,6 +388,10 @@ panic("msghdr->msg_spot != -1"); msghdr->msg_next = free_msghdrs; free_msghdrs = msghdr; +#ifdef MAC + /* XXX: Reset the MAC label */ + mac_cleanup_ipc_msgmsg(msghdr); +#endif } #ifndef _SYS_SYSPROTO_H_ @@ -348,76 +415,120 @@ struct msqid_ds *user_msqptr = uap->buf; int rval, error; struct msqid_ds msqbuf; - register struct msqid_ds *msqptr; + register struct msqid_kernel *msqkptr; DPRINTF(("call to msgctl(%d, %d, 0x%x)\n", msqid, cmd, user_msqptr)); if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); + /* Prevent thread from going any further if module is (being) unloaded */ + mtx_lock(&refcnt_mtx); + if (refcount < 0 ) { + mtx_unlock(&refcnt_mtx); + return (ENOSYS); + } + refcount++; /* Indicate that thread is active in the code-path */ + mtx_unlock(&refcnt_mtx); + msqid = IPCID_TO_IX(msqid); if (msqid < 0 || msqid >= msginfo.msgmni) { DPRINTF(("msqid (%d) out of range (0<=msqid<%d)\n", msqid, msginfo.msgmni)); - return (EINVAL); + error = EINVAL; + goto done3; } if (cmd == IPC_SET && - (error = copyin(user_msqptr, &msqbuf, sizeof(msqbuf))) != 0) - return (error); + (error = copyin(user_msqptr, &msqbuf, sizeof(msqbuf))) != 0) + goto done3; - msqptr = &msqids[msqid]; + msqkptr = &msqids[msqid]; mtx_lock(&msq_mtx); - if (msqptr->msg_qbytes == 0) { + if (msqkptr->u.msg_qbytes == 0) { DPRINTF(("no such msqid\n")); error = EINVAL; goto done2; } - if (msqptr->msg_perm.seq != IPCID_TO_SEQ(uap->msqid)) { + if (msqkptr->u.msg_perm.seq != IPCID_TO_SEQ(uap->msqid)) { DPRINTF(("wrong sequence number\n")); error = EINVAL; goto done2; } +#ifdef MAC + if ((error = mac_check_ipc_msqctl(td->td_ucred,msqkptr,cmd))) + { + MPRINTF(("MAC Framework: mac_check_ipc_msqctl permission denied!\n")); + goto done2; + } +#endif error = 0; rval = 0; + switch (cmd) { case IPC_RMID: { struct msg *msghdr; - if ((error = ipcperm(td, &msqptr->msg_perm, IPC_M))) + if ((error = ipcperm(td, &msqkptr->u.msg_perm, IPC_M))) + goto done2; + +#ifdef MAC + /* + * Check that the thread has MAC access permissions to individual + * msghdrs. + * Note: We need to do this in a separate loop because the actual loop + * alters the msq/msghdr info as it progresses, and there is no going + * back if half the way through we discover that the thread cannot free + * a certain msghdr. The msq will get into an inconsistent state. + */ + msghdr = msqkptr->u.msg_first; + while (msghdr != NULL) { + if((error = mac_check_ipc_msgrmid(td->td_ucred,msghdr))) { + MPRINTF("MAC Framework: mac_check_ipc_msgrmid permission denied\n"); + /* XXX wakeup(msqkptr); ??? */ goto done2; + } + msghdr = msghdr->msg_next; + } +#endif + /* Free the message headers */ - msghdr = msqptr->msg_first; + msghdr = msqkptr->u.msg_first; while (msghdr != NULL) { struct msg *msghdr_tmp; /* Free the segments of each message */ - msqptr->msg_cbytes -= msghdr->msg_ts; - msqptr->msg_qnum--; + msqkptr->u.msg_cbytes -= msghdr->msg_ts; + msqkptr->u.msg_qnum--; msghdr_tmp = msghdr; msghdr = msghdr->msg_next; msg_freehdr(msghdr_tmp); } - if (msqptr->msg_cbytes != 0) + if (msqkptr->u.msg_cbytes != 0) panic("msg_cbytes is screwed up"); - if (msqptr->msg_qnum != 0) + if (msqkptr->u.msg_qnum != 0) panic("msg_qnum is screwed up"); - msqptr->msg_qbytes = 0; /* Mark it as free */ + msqkptr->u.msg_qbytes = 0; /* Mark it as free */ + +#ifdef MAC + /* XXX: Reset the MAC label */ + mac_cleanup_ipc_msgqueue(msqkptr); +#endif - wakeup(msqptr); + wakeup(msqkptr); } break; case IPC_SET: - if ((error = ipcperm(td, &msqptr->msg_perm, IPC_M))) + if ((error = ipcperm(td, &msqkptr->u.msg_perm, IPC_M))) goto done2; - if (msqbuf.msg_qbytes > msqptr->msg_qbytes) { + if (msqbuf.msg_qbytes > msqkptr->u.msg_qbytes) { error = suser(td); if (error) goto done2; @@ -432,16 +543,16 @@ error = EINVAL; /* non-standard errno! */ goto done2; } - msqptr->msg_perm.uid = msqbuf.msg_perm.uid; /* change the owner */ - msqptr->msg_perm.gid = msqbuf.msg_perm.gid; /* change the owner */ - msqptr->msg_perm.mode = (msqptr->msg_perm.mode & ~0777) | + msqkptr->u.msg_perm.uid = msqbuf.msg_perm.uid; /* change the owner */ + msqkptr->u.msg_perm.gid = msqbuf.msg_perm.gid; /* change the owner */ + msqkptr->u.msg_perm.mode = (msqkptr->u.msg_perm.mode & ~0777) | (msqbuf.msg_perm.mode & 0777); - msqptr->msg_qbytes = msqbuf.msg_qbytes; - msqptr->msg_ctime = time_second; + msqkptr->u.msg_qbytes = msqbuf.msg_qbytes; + msqkptr->u.msg_ctime = time_second; break; case IPC_STAT: - if ((error = ipcperm(td, &msqptr->msg_perm, IPC_R))) { + if ((error = ipcperm(td, &msqkptr->u.msg_perm, IPC_R))) { DPRINTF(("requester doesn't have read access\n")); goto done2; } @@ -458,7 +569,11 @@ done2: mtx_unlock(&msq_mtx); if (cmd == IPC_STAT && error == 0) - error = copyout(msqptr, user_msqptr, sizeof(struct msqid_ds)); + error = copyout(&(msqkptr->u), user_msqptr, sizeof(struct msqid_ds)); +done3: + mtx_lock(&refcnt_mtx); + refcount--; /* Indicate that thread no longer active in the code-path */ + mtx_unlock(&refcnt_mtx); return(error); } @@ -481,19 +596,28 @@ int key = uap->key; int msgflg = uap->msgflg; struct ucred *cred = td->td_ucred; - register struct msqid_ds *msqptr = NULL; + register struct msqid_kernel *msqkptr = NULL; DPRINTF(("msgget(0x%x, 0%o)\n", key, msgflg)); if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); + /* Prevent thread from going any further if module is (being) unloaded */ + mtx_lock(&refcnt_mtx); + if (refcount < 0 ) { + mtx_unlock(&refcnt_mtx); + return (ENOSYS); + } + refcount++; /* Indicate that thread is active in the code-path */ + mtx_unlock(&refcnt_mtx); + mtx_lock(&msq_mtx); if (key != IPC_PRIVATE) { for (msqid = 0; msqid < msginfo.msgmni; msqid++) { - msqptr = &msqids[msqid]; - if (msqptr->msg_qbytes != 0 && - msqptr->msg_perm.key == key) + msqkptr = &msqids[msqid]; + if (msqkptr->u.msg_qbytes != 0 && + msqkptr->u.msg_perm.key == key) break; } if (msqid < msginfo.msgmni) { @@ -503,11 +627,17 @@ error = EEXIST; goto done2; } - if ((error = ipcperm(td, &msqptr->msg_perm, msgflg & 0700 ))) { + if ((error = ipcperm(td, &msqkptr->u.msg_perm, msgflg & 0700 ))) { DPRINTF(("requester doesn't have 0%o access\n", msgflg & 0700)); goto done2; } +#ifdef MAC + if(( error = mac_check_ipc_msqget(cred, msqkptr) )) { + MPRINTF("MAC Framework: mac_check_ipc_msqget access denied\n"); + goto done2; + } +#endif goto found; } } @@ -521,9 +651,9 @@ * they are copying the message in/out. We can't * re-use the entry until they release it. */ - msqptr = &msqids[msqid]; - if (msqptr->msg_qbytes == 0 && - (msqptr->msg_perm.mode & MSG_LOCKED) == 0) + msqkptr = &msqids[msqid]; + if (msqkptr->u.msg_qbytes == 0 && + (msqkptr->u.msg_perm.mode & MSG_LOCKED) == 0) break; } if (msqid == msginfo.msgmni) { @@ -532,24 +662,27 @@ goto done2; } DPRINTF(("msqid %d is available\n", msqid)); - msqptr->msg_perm.key = key; - msqptr->msg_perm.cuid = cred->cr_uid; - msqptr->msg_perm.uid = cred->cr_uid; - msqptr->msg_perm.cgid = cred->cr_gid; - msqptr->msg_perm.gid = cred->cr_gid; - msqptr->msg_perm.mode = (msgflg & 0777); + msqkptr->u.msg_perm.key = key; + msqkptr->u.msg_perm.cuid = cred->cr_uid; + msqkptr->u.msg_perm.uid = cred->cr_uid; + msqkptr->u.msg_perm.cgid = cred->cr_gid; + msqkptr->u.msg_perm.gid = cred->cr_gid; + msqkptr->u.msg_perm.mode = (msgflg & 0777); /* Make sure that the returned msqid is unique */ - msqptr->msg_perm.seq = (msqptr->msg_perm.seq + 1) & 0x7fff; - msqptr->msg_first = NULL; - msqptr->msg_last = NULL; - msqptr->msg_cbytes = 0; - msqptr->msg_qnum = 0; - msqptr->msg_qbytes = msginfo.msgmnb; - msqptr->msg_lspid = 0; - msqptr->msg_lrpid = 0; - msqptr->msg_stime = 0; - msqptr->msg_rtime = 0; - msqptr->msg_ctime = time_second; + msqkptr->u.msg_perm.seq = (msqkptr->u.msg_perm.seq + 1) & 0x7fff; + msqkptr->u.msg_first = NULL; + msqkptr->u.msg_last = NULL; + msqkptr->u.msg_cbytes = 0; + msqkptr->u.msg_qnum = 0; + msqkptr->u.msg_qbytes = msginfo.msgmnb; + msqkptr->u.msg_lspid = 0; + msqkptr->u.msg_lrpid = 0; + msqkptr->u.msg_stime = 0; + msqkptr->u.msg_rtime = 0; + msqkptr->u.msg_ctime = time_second; +#ifdef MAC + mac_create_ipc_msgqueue(cred, msqkptr); +#endif } else { DPRINTF(("didn't find it and wasn't asked to create it\n")); error = ENOENT; @@ -558,9 +691,12 @@ found: /* Construct the unique msqid */ - td->td_retval[0] = IXSEQ_TO_IPCID(msqid, msqptr->msg_perm); + td->td_retval[0] = IXSEQ_TO_IPCID(msqid, msqkptr->u.msg_perm); done2: mtx_unlock(&msq_mtx); + mtx_lock(&refcnt_mtx); + refcount--; /* Indicate that thread no longer active in the code-path */ + mtx_unlock(&refcnt_mtx); return (error); } @@ -586,7 +722,7 @@ size_t msgsz = uap->msgsz; int msgflg = uap->msgflg; int segs_needed, error = 0; - register struct msqid_ds *msqptr; + register struct msqid_kernel *msqkptr; register struct msg *msghdr; short next; @@ -595,6 +731,15 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); + /* Prevent thread from going any further if module is (being) unloaded */ + mtx_lock(&refcnt_mtx); + if (refcount < 0 ) { + mtx_unlock(&refcnt_mtx); + return (ENOSYS); + } + refcount++; /* Indicate that thread is active in the code-path */ + mtx_unlock(&refcnt_mtx); + mtx_lock(&msq_mtx); msqid = IPCID_TO_IX(msqid); @@ -605,23 +750,31 @@ goto done2; } - msqptr = &msqids[msqid]; - if (msqptr->msg_qbytes == 0) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Aug 26 13:48:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3711916A4C1; Tue, 26 Aug 2003 13:48:20 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D469216A4BF for ; Tue, 26 Aug 2003 13:48:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ECEC443FCB for ; Tue, 26 Aug 2003 13:48:18 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QKmI0U012814 for ; Tue, 26 Aug 2003 13:48:18 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QKmIox012811 for perforce@freebsd.org; Tue, 26 Aug 2003 13:48:18 -0700 (PDT) Date: Tue, 26 Aug 2003 13:48:18 -0700 (PDT) Message-Id: <200308262048.h7QKmIox012811@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 36979 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 20:48:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=36979 Change 36979 by sam@sam_ebb on 2003/08/26 13:47:31 fast swi taskqueue support; for queueing swi's from a fast isr Affected files ... .. //depot/projects/netperf/sys/kern/subr_taskqueue.c#2 edit .. //depot/projects/netperf/sys/sys/interrupt.h#2 edit .. //depot/projects/netperf/sys/sys/taskqueue.h#2 edit Differences ... ==== //depot/projects/netperf/sys/kern/subr_taskqueue.c#2 (text+ko) ==== @@ -240,3 +240,121 @@ TASKQUEUE_DEFINE(swi_giant, taskqueue_swi_giant_enqueue, 0, swi_add(NULL, "Giant task queue", taskqueue_swi_giant_run, NULL, SWI_TQ_GIANT, 0, &taskqueue_giant_ih)); + +int +taskqueue_enqueue_fast(struct taskqueue *queue, struct task *task) +{ + struct task *ins; + struct task *prev; + + mtx_lock_spin(&queue->tq_mutex); + + /* + * Don't allow new tasks on a queue which is being freed. + */ + if (queue->tq_draining) { + mtx_unlock_spin(&queue->tq_mutex); + return EPIPE; + } + + /* + * Count multiple enqueues. + */ + if (task->ta_pending) { + task->ta_pending++; + mtx_unlock_spin(&queue->tq_mutex); + return 0; + } + + /* + * Optimise the case when all tasks have the same priority. + */ + prev = STAILQ_LAST(&queue->tq_queue, task, ta_link); + if (!prev || prev->ta_priority >= task->ta_priority) { + STAILQ_INSERT_TAIL(&queue->tq_queue, task, ta_link); + } else { + prev = 0; + for (ins = STAILQ_FIRST(&queue->tq_queue); ins; + prev = ins, ins = STAILQ_NEXT(ins, ta_link)) + if (ins->ta_priority < task->ta_priority) + break; + + if (prev) + STAILQ_INSERT_AFTER(&queue->tq_queue, prev, task, ta_link); + else + STAILQ_INSERT_HEAD(&queue->tq_queue, task, ta_link); + } + + task->ta_pending = 1; + if (queue->tq_enqueue) + queue->tq_enqueue(queue->tq_context); + + mtx_unlock_spin(&queue->tq_mutex); + + return 0; +} + +static void +taskqueue_run_fast(struct taskqueue *queue) +{ + struct task *task; + int pending; + + mtx_lock_spin(&queue->tq_mutex); + while (STAILQ_FIRST(&queue->tq_queue)) { + /* + * Carefully remove the first task from the queue and + * zero its pending count. + */ + task = STAILQ_FIRST(&queue->tq_queue); + STAILQ_REMOVE_HEAD(&queue->tq_queue, ta_link); + pending = task->ta_pending; + task->ta_pending = 0; + mtx_unlock_spin(&queue->tq_mutex); + + task->ta_func(task->ta_context, pending); + + mtx_lock_spin(&queue->tq_mutex); + } + mtx_unlock_spin(&queue->tq_mutex); +} + +struct taskqueue *taskqueue_fast; +static void *taskqueue_fast_ih; + +static void +taskqueue_fast_schedule(void *context) +{ + swi_sched(taskqueue_fast_ih, 0); +} + +static void +taskqueue_fast_run(void *dummy) +{ + taskqueue_run_fast(taskqueue_fast); +} + +static void +taskqueue_define_fast(void *arg) +{ + taskqueue_fast = malloc(sizeof(struct taskqueue), + M_TASKQUEUE, M_NOWAIT | M_ZERO); + if (!taskqueue_fast) { + printf("%s: Unable to allocate fast task queue!\n", __func__); + return; + } + + STAILQ_INIT(&taskqueue_fast->tq_queue); + taskqueue_fast->tq_name = "fast"; + taskqueue_fast->tq_enqueue = taskqueue_fast_schedule; + mtx_init(&taskqueue_fast->tq_mutex, "taskqueue", NULL, MTX_SPIN); + + mtx_lock(&taskqueue_queues_mutex); + STAILQ_INSERT_TAIL(&taskqueue_queues, taskqueue_fast, tq_link); + mtx_unlock(&taskqueue_queues_mutex); + + swi_add(NULL, "Fast task queue", taskqueue_fast_run, + NULL, SWI_TQ_FAST, 0, &taskqueue_fast_ih); +} +SYSINIT(taskqueue_fast, SI_SUB_CONFIGURE, SI_ORDER_SECOND, + taskqueue_define_fast, NULL); ==== //depot/projects/netperf/sys/sys/interrupt.h#2 (text+ko) ==== @@ -94,9 +94,10 @@ #define SWI_CAMNET 2 #define SWI_CAMBIO 3 #define SWI_VM 4 -#define SWI_TQ_GIANT 5 -#define SWI_TQ 6 -#define SWI_CLOCK 7 +#define SWI_TQ_FAST 5 +#define SWI_TQ_GIANT 6 +#define SWI_TQ 7 +#define SWI_CLOCK 8 extern struct ithd *tty_ithd; extern struct ithd *clk_ithd; ==== //depot/projects/netperf/sys/sys/taskqueue.h#2 (text+ko) ==== @@ -113,4 +113,13 @@ TASKQUEUE_DECLARE(swi_giant); TASKQUEUE_DECLARE(swi); +/* + * Queue for swi handlers dispatched from fast interrupt handlers. + * These are necessarily different from the above because the queue + * must be locked with spinlocks since sleep mutex's cannot be used + * from a fast interrupt handler context. + */ +TASKQUEUE_DECLARE(fast); +int taskqueue_enqueue_fast(struct taskqueue *queue, struct task *task); + #endif /* !_SYS_TASKQUEUE_H_ */ From owner-p4-projects@FreeBSD.ORG Tue Aug 26 13:57:40 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1779916A4C1; Tue, 26 Aug 2003 13:57:40 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C352A16A4BF for ; Tue, 26 Aug 2003 13:57:39 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B12343F3F for ; Tue, 26 Aug 2003 13:57:34 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QKvY0U013481 for ; Tue, 26 Aug 2003 13:57:34 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QKvXmO013478 for perforce@freebsd.org; Tue, 26 Aug 2003 13:57:33 -0700 (PDT) Date: Tue, 26 Aug 2003 13:57:33 -0700 (PDT) Message-Id: <200308262057.h7QKvXmO013478@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to Hrishikesh_Dandekar@NAI.com using -f From: Hrishikesh Dandekar To: Perforce Change Reviews Subject: PERFORCE change 36980 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 20:57:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=36980 Change 36980 by hdandeka@hdandeka_yash on 2003/08/26 13:56:34 Integration fix. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#405 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#405 (text+ko) ==== @@ -217,9 +217,6 @@ #define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); #define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); -#define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); -#define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); - SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, &nmacmbufs, 0, "number of mbufs in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, From owner-p4-projects@FreeBSD.ORG Tue Aug 26 14:41:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6355816A4C1; Tue, 26 Aug 2003 14:41:29 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E958016A4BF for ; Tue, 26 Aug 2003 14:41:28 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6EA9C43FE5 for ; Tue, 26 Aug 2003 14:41:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QLfS0U016082 for ; Tue, 26 Aug 2003 14:41:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QLfRLd016079 for perforce@freebsd.org; Tue, 26 Aug 2003 14:41:27 -0700 (PDT) Date: Tue, 26 Aug 2003 14:41:27 -0700 (PDT) Message-Id: <200308262141.h7QLfRLd016079@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 36982 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 21:41:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=36982 Change 36982 by sam@sam_ebb on 2003/08/26 14:40:35 ip fragment queue locking from rwatson Affected files ... .. //depot/projects/netperf/sys/netinet/ip_input.c#2 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_input.c#2 (text+ko) ==== @@ -182,6 +182,12 @@ (((((x) & 0xF) | ((((x) >> 8) & 0xF) << 4)) ^ (y)) & IPREASS_HMASK) static TAILQ_HEAD(ipqhead, ipq) ipq[IPREASS_NHASH]; +struct mtx ipqlock; + +#define IPQ_LOCK() mtx_lock(&ipqlock) +#define IPQ_UNLOCK() mtx_unlock(&ipqlock) +#define IPQ_LOCK_INIT() mtx_init(&ipqlock, "ipqlock", NULL, MTX_DEF); +#define IPQ_LOCK_ASSERT() mtx_assert(&ipqlock, MA_OWNED); #ifdef IPCTL_DEFMTU SYSCTL_INT(_net_inet_ip, IPCTL_DEFMTU, mtu, CTLFLAG_RW, @@ -257,6 +263,7 @@ pr->pr_protocol && pr->pr_protocol != IPPROTO_RAW) ip_protox[pr->pr_protocol] = pr - inetsw; + IPQ_LOCK_INIT(); for (i = 0; i < IPREASS_NHASH; i++) TAILQ_INIT(&ipq[i]); @@ -744,8 +751,9 @@ ipstat.ips_fragdropped++; goto bad; } - + sum = IPREASS_HASH(ip->ip_src.s_addr, ip->ip_id); + IPQ_LOCK(); /* * Look for queue of fragments * of this datagram. @@ -799,6 +807,7 @@ * that's a non-zero multiple of 8 bytes. */ if (ip->ip_len == 0 || (ip->ip_len & 0x7) != 0) { + IPQ_UNLOCK(); ipstat.ips_toosmall++; /* XXX */ goto bad; } @@ -816,6 +825,7 @@ m->m_pkthdr.header = ip; m = ip_reass(m, &ipq[sum], fp, &divert_info, &args.divert_rule); + IPQ_UNLOCK(); if (m == 0) return; ipstat.ips_reassembled++; @@ -974,6 +984,8 @@ int hlen = ip->ip_hl << 2; int i, next; + IPQ_LOCK_ASSERT(); + /* * Presence of header sizes in mbufs * would confuse code below. @@ -1203,6 +1215,8 @@ { register struct mbuf *q; + IPQ_LOCK_ASSERT(); + while (fp->ipq_frags) { q = fp->ipq_frags; fp->ipq_frags = q->m_nextpkt; @@ -1225,6 +1239,7 @@ int s = splnet(); int i; + IPQ_LOCK(); for (i = 0; i < IPREASS_NHASH; i++) { for(fp = TAILQ_FIRST(&ipq[i]); fp;) { struct ipq *fpp; @@ -1251,6 +1266,7 @@ } } } + IPQ_UNLOCK(); ipflow_slowtimo(); splx(s); } @@ -1263,6 +1279,7 @@ { int i; + IPQ_LOCK(); for (i = 0; i < IPREASS_NHASH; i++) { while(!TAILQ_EMPTY(&ipq[i])) { ipstat.ips_fragdropped += @@ -1270,6 +1287,7 @@ ip_freef(&ipq[i], TAILQ_FIRST(&ipq[i])); } } + IPQ_UNLOCK(); in_rtqdrain(); } From owner-p4-projects@FreeBSD.ORG Tue Aug 26 16:39:59 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0048F16A4C1; Tue, 26 Aug 2003 16:39:58 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B476616A4BF for ; Tue, 26 Aug 2003 16:39:58 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5F3E143FB1 for ; Tue, 26 Aug 2003 16:39:58 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QNdw0U022590 for ; Tue, 26 Aug 2003 16:39:58 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QNdvjj022587 for perforce@freebsd.org; Tue, 26 Aug 2003 16:39:57 -0700 (PDT) Date: Tue, 26 Aug 2003 16:39:57 -0700 (PDT) Message-Id: <200308262339.h7QNdvjj022587@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 36993 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 23:39:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=36993 Change 36993 by sam@sam_ebb on 2003/08/26 16:39:12 must lock the dummynet tables when scanning on ipfw rule delete Affected files ... .. //depot/projects/netperf/sys/netinet/ip_dummynet.c#5 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_dummynet.c#5 (text+ko) ==== @@ -1419,8 +1419,7 @@ struct dn_pkt *pkt ; struct dn_flow_set *fs ; - DUMMYNET_LOCK_ASSERT(MA_OWNED); - + DUMMYNET_LOCK(); /* * If the rule references a queue (dn_flow_set), then scan * the flow set, otherwise scan pipes. Should do either, but doing @@ -1435,6 +1434,7 @@ if (pkt->rule == r) pkt->rule = ip_fw_default_rule ; } + DUMMYNET_UNLOCK(); } /* From owner-p4-projects@FreeBSD.ORG Tue Aug 26 16:43:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A4C1C16A4C1; Tue, 26 Aug 2003 16:43:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 688D016A4BF for ; Tue, 26 Aug 2003 16:43:04 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E556343FDF for ; Tue, 26 Aug 2003 16:43:02 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QNh20U022737 for ; Tue, 26 Aug 2003 16:43:02 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QNh2Pq022731 for perforce@freebsd.org; Tue, 26 Aug 2003 16:43:02 -0700 (PDT) Date: Tue, 26 Aug 2003 16:43:02 -0700 (PDT) Message-Id: <200308262343.h7QNh2Pq022731@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 36994 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 23:43:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=36994 Change 36994 by sam@sam_ebb on 2003/08/26 16:42:07 o lock divert sockets a la udp, et. al. o move divsrc global to a stack variable instead of locking it's use o replace cr_canseesocket with prison_xinpcb to correct socket visibility check in sysctl o wire the sysctl buffer in the scan request a la everyone else Affected files ... .. //depot/projects/netperf/sys/netinet/ip_divert.c#2 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_divert.c#2 (text+ko) ==== @@ -111,9 +111,6 @@ static u_long div_sendspace = DIVSNDQ; /* XXX sysctl ? */ static u_long div_recvspace = DIVRCVQ; /* XXX sysctl ? */ -/* Optimization: have this preinitialized */ -static struct sockaddr_in divsrc = { sizeof(divsrc), AF_INET }; - /* * Initialize divert connection block queue. */ @@ -159,12 +156,11 @@ struct inpcb *inp; struct socket *sa; u_int16_t nport; + struct sockaddr_in divsrc; /* Sanity check */ KASSERT(port != 0, ("%s: port=0", __func__)); - divsrc.sin_port = rule; /* record matching rule */ - /* Assure header */ if (m->m_len < sizeof(struct ip) && (m = m_pullup(m, sizeof(struct ip))) == 0) @@ -175,7 +171,10 @@ * Record receive interface address, if any. * But only for incoming packets. */ - divsrc.sin_addr.s_addr = 0; + bzero(&divsrc, sizeof(divsrc)); + divsrc.sin_len = sizeof(divsrc); + divsrc.sin_family = AF_INET; + divsrc.sin_port = rule; /* record matching rule */ if (incoming) { struct ifaddr *ifa; @@ -196,7 +195,6 @@ /* * Record the incoming interface name whenever we have one. */ - bzero(&divsrc.sin_zero, sizeof(divsrc.sin_zero)); if (m->m_pkthdr.rcvif) { /* * Hide the actual interface name in there in the @@ -224,17 +222,25 @@ /* Put packet on socket queue, if any */ sa = NULL; nport = htons((u_int16_t)port); + INP_INFO_RLOCK(&divcbinfo); LIST_FOREACH(inp, &divcb, inp_list) { - if (inp->inp_lport == nport) + INP_LOCK(inp); + /* XXX why does only one socket match? */ + if (inp->inp_lport == nport) { sa = inp->inp_socket; + if (sbappendaddr(&sa->so_rcv, + (struct sockaddr *)&divsrc, m, + (struct mbuf *)0) == 0) + sa = NULL; /* force mbuf reclaim below */ + else + sorwakeup(sa); + INP_UNLOCK(inp); + break; + } + INP_UNLOCK(inp); } - if (sa) { - if (sbappendaddr(&sa->so_rcv, (struct sockaddr *)&divsrc, - m, (struct mbuf *)0) == 0) - m_freem(m); - else - sorwakeup(sa); - } else { + INP_INFO_RUNLOCK(&divcbinfo); + if (sa == NULL) { m_freem(m); ipstat.ips_noproto++; ipstat.ips_delivered--; @@ -349,28 +355,37 @@ div_attach(struct socket *so, int proto, struct thread *td) { struct inpcb *inp; - int error, s; + int error; + INP_INFO_WLOCK(&divcbinfo); inp = sotoinpcb(so); - if (inp) - panic("div_attach"); - if (td && (error = suser(td)) != 0) + if (inp != 0) { + INP_INFO_WUNLOCK(&divcbinfo); + return EINVAL; + } + if (td && (error = suser(td)) != 0) { + INP_INFO_WUNLOCK(&divcbinfo); return error; - + } error = soreserve(so, div_sendspace, div_recvspace); - if (error) + if (error) { + INP_INFO_WUNLOCK(&divcbinfo); return error; - s = splnet(); + } error = in_pcballoc(so, &divcbinfo, td); - splx(s); - if (error) + if (error) { + INP_INFO_WUNLOCK(&divcbinfo); return error; + } inp = (struct inpcb *)so->so_pcb; + INP_LOCK(inp); + INP_INFO_WUNLOCK(&divcbinfo); inp->inp_ip_p = proto; inp->inp_vflag |= INP_IPV4; inp->inp_flags |= INP_HDRINCL; /* The socket is always "connected" because we always know "where" to send the packet */ + INP_UNLOCK(inp); so->so_state |= SS_ISCONNECTED; return 0; } @@ -380,10 +395,15 @@ { struct inpcb *inp; + INP_INFO_WLOCK(&divcbinfo); inp = sotoinpcb(so); - if (inp == 0) - panic("div_detach"); + if (inp == 0) { + INP_INFO_WUNLOCK(&divcbinfo); + return EINVAL; + } + INP_LOCK(inp); in_pcbdetach(inp); + INP_INFO_WUNLOCK(&divcbinfo); return 0; } @@ -406,11 +426,14 @@ div_bind(struct socket *so, struct sockaddr *nam, struct thread *td) { struct inpcb *inp; - int s; int error; - s = splnet(); + INP_INFO_WLOCK(&divcbinfo); inp = sotoinpcb(so); + if (inp == 0) { + INP_INFO_WUNLOCK(&divcbinfo); + return EINVAL; + } /* in_pcbbind assumes that nam is a sockaddr_in * and in_pcbbind requires a valid address. Since divert * sockets don't we need to make sure the address is @@ -422,9 +445,11 @@ error = EAFNOSUPPORT; else { ((struct sockaddr_in *)nam)->sin_addr.s_addr = INADDR_ANY; + INP_LOCK(inp); error = in_pcbbind(inp, nam, td); + INP_UNLOCK(inp); } - splx(s); + INP_INFO_WUNLOCK(&divcbinfo); return error; } @@ -454,7 +479,7 @@ static int div_pcblist(SYSCTL_HANDLER_ARGS) { - int error, i, n, s; + int error, i, n; struct inpcb *inp, **inp_list; inp_gen_t gencnt; struct xinpgen xig; @@ -476,10 +501,12 @@ /* * OK, now we're committed to doing something. */ - s = splnet(); + INP_INFO_RLOCK(&divcbinfo); gencnt = divcbinfo.ipi_gencnt; n = divcbinfo.ipi_count; - splx(s); + INP_INFO_RUNLOCK(&divcbinfo); + + sysctl_wire_old_buffer(req, 2 * sizeof(xig) + n*sizeof(struct xinpcb)); xig.xig_len = sizeof xig; xig.xig_count = n; @@ -493,13 +520,16 @@ if (inp_list == 0) return ENOMEM; - s = splnet(); + INP_INFO_RLOCK(&divcbinfo); for (inp = LIST_FIRST(divcbinfo.listhead), i = 0; inp && i < n; inp = LIST_NEXT(inp, inp_list)) { - if (inp->inp_gencnt <= gencnt && !prison_xinpcb(req->td, inp)) + INP_LOCK(inp); + if (inp->inp_gencnt <= gencnt && + cr_canseesocket(req->td->td_ucred, inp->inp_socket) == 0) inp_list[i++] = inp; + INP_UNLOCK(inp); } - splx(s); + INP_INFO_RUNLOCK(&divcbinfo); n = i; error = 0; @@ -523,11 +553,11 @@ * while we were processing this request, and it * might be necessary to retry. */ - s = splnet(); + INP_INFO_RLOCK(&divcbinfo); xig.xig_gen = divcbinfo.ipi_gencnt; xig.xig_sogen = so_gencnt; xig.xig_count = divcbinfo.ipi_count; - splx(s); + INP_INFO_RUNLOCK(&divcbinfo); error = SYSCTL_OUT(req, &xig, sizeof xig); } free(inp_list, M_TEMP); From owner-p4-projects@FreeBSD.ORG Tue Aug 26 16:51:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AF9B916A4C1; Tue, 26 Aug 2003 16:51:17 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5B48816A4BF for ; Tue, 26 Aug 2003 16:51:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AAC4143FDD for ; Tue, 26 Aug 2003 16:51:14 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QNpE0U028422 for ; Tue, 26 Aug 2003 16:51:14 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QNpClM028419 for perforce@freebsd.org; Tue, 26 Aug 2003 16:51:12 -0700 (PDT) Date: Tue, 26 Aug 2003 16:51:12 -0700 (PDT) Message-Id: <200308262351.h7QNpClM028419@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36995 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 23:51:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=36995 Change 36995 by marcel@marcel_nfs on 2003/08/26 16:51:09 IFC @36992 Affected files ... .. //depot/projects/ia64/Makefile.inc1#78 integrate .. //depot/projects/ia64/contrib/top/top.X#3 integrate .. //depot/projects/ia64/games/fortune/datfiles/startrek#5 integrate .. //depot/projects/ia64/lib/libc/rpc/publickey.5#2 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#65 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/ep.4#3 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/fe.4#3 integrate .. //depot/projects/ia64/share/man/man4/ti.4#6 integrate .. //depot/projects/ia64/share/man/man7/development.7#5 integrate .. //depot/projects/ia64/sys/alpha/alpha/api_up1000.c#9 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_1000a.c#9 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_2100_a50.c#10 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_2100_a500.c#10 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_axppci_33.c#11 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_eb164.c#8 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_eb64plus.c#10 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_kn20aa.c#9 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_kn300.c#10 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_st550.c#9 integrate .. //depot/projects/ia64/sys/alpha/alpha/dec_st6600.c#9 integrate .. //depot/projects/ia64/sys/alpha/alpha/machdep.c#36 integrate .. //depot/projects/ia64/sys/alpha/conf/NOTES#6 integrate .. //depot/projects/ia64/sys/boot/common/bcache.c#4 integrate .. //depot/projects/ia64/sys/boot/common/boot.c#2 integrate .. //depot/projects/ia64/sys/boot/common/commands.c#4 integrate .. //depot/projects/ia64/sys/boot/common/console.c#2 integrate .. //depot/projects/ia64/sys/boot/common/dev_net.c#3 integrate .. //depot/projects/ia64/sys/boot/common/devopen.c#2 integrate .. //depot/projects/ia64/sys/boot/common/interp.c#3 integrate .. //depot/projects/ia64/sys/boot/common/interp_backslash.c#2 integrate .. //depot/projects/ia64/sys/boot/common/interp_forth.c#5 integrate .. //depot/projects/ia64/sys/boot/common/interp_parse.c#2 integrate .. //depot/projects/ia64/sys/boot/common/isapnp.c#2 integrate .. //depot/projects/ia64/sys/boot/common/load.c#2 integrate .. //depot/projects/ia64/sys/boot/common/load_elf.c#13 integrate .. //depot/projects/ia64/sys/boot/common/load_elf32.c#2 integrate .. //depot/projects/ia64/sys/boot/common/load_elf64.c#2 integrate .. //depot/projects/ia64/sys/boot/common/ls.c#2 integrate .. //depot/projects/ia64/sys/boot/common/misc.c#2 integrate .. //depot/projects/ia64/sys/boot/common/module.c#5 integrate .. //depot/projects/ia64/sys/boot/common/panic.c#3 integrate .. //depot/projects/ia64/sys/boot/common/pnp.c#2 integrate .. //depot/projects/ia64/sys/boot/common/ufsread.c#7 integrate .. //depot/projects/ia64/sys/boot/i386/boot2/boot2.c#17 integrate .. //depot/projects/ia64/sys/boot/i386/kgzldr/boot.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/kgzldr/lib.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/biosacpi.c#6 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/bioscd.c#5 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/biosdisk.c#7 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/biosmem.c#3 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/biospci.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/biospnp.c#5 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/biossmap.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/bootinfo.c#7 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/bootinfo32.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/bootinfo64.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/comconsole.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/devicename.c#3 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/elf32_freebsd.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/elf64_freebsd.c#3 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/gatea20.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/i386_copy.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/i386_module.c#7 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/nullconsole.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/pread.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/pxe.c#3 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/time.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/libi386/vidconsole.c#2 integrate .. //depot/projects/ia64/sys/boot/i386/loader/conf.c#7 integrate .. //depot/projects/ia64/sys/boot/i386/loader/main.c#5 integrate .. //depot/projects/ia64/sys/cam/scsi/scsi_da.c#51 integrate .. //depot/projects/ia64/sys/conf/files.pc98#36 integrate .. //depot/projects/ia64/sys/conf/options.alpha#10 integrate .. //depot/projects/ia64/sys/dev/ata/ata-all.c#39 integrate .. //depot/projects/ia64/sys/dev/ata/ata-all.h#15 integrate .. //depot/projects/ia64/sys/dev/ata/ata-card.c#14 integrate .. //depot/projects/ia64/sys/dev/ata/ata-cbus.c#7 integrate .. //depot/projects/ia64/sys/dev/ata/ata-chipset.c#23 integrate .. //depot/projects/ia64/sys/dev/ata/ata-disk.c#26 integrate .. //depot/projects/ia64/sys/dev/ata/ata-dma.c#28 integrate .. //depot/projects/ia64/sys/dev/ata/ata-isa.c#13 integrate .. //depot/projects/ia64/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/ia64/sys/dev/ata/ata-pci.c#32 integrate .. //depot/projects/ia64/sys/dev/ata/ata-pci.h#13 integrate .. //depot/projects/ia64/sys/dev/ata/ata-queue.c#2 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-cd.c#26 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-fd.c#17 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-tape.c#16 integrate .. //depot/projects/ia64/sys/dev/bktr/bktr_core.c#13 integrate .. //depot/projects/ia64/sys/dev/buslogic/bt.c#13 integrate .. //depot/projects/ia64/sys/dev/isp/isp.c#19 integrate .. //depot/projects/ia64/sys/dev/pccard/pccard.c#23 integrate .. //depot/projects/ia64/sys/dev/sio/sio.c#48 integrate .. //depot/projects/ia64/sys/dev/sio/sio_isa.c#17 integrate .. //depot/projects/ia64/sys/dev/sio/sio_pccard.c#11 integrate .. //depot/projects/ia64/sys/dev/sio/siovar.h#15 edit .. //depot/projects/ia64/sys/dev/syscons/scgfbrndr.c#5 integrate .. //depot/projects/ia64/sys/dev/syscons/syscons.c#22 integrate .. //depot/projects/ia64/sys/dev/usb/ucom.c#12 integrate .. //depot/projects/ia64/sys/dev/usb/ufm.c#11 integrate .. //depot/projects/ia64/sys/dev/usb/ugen.c#17 integrate .. //depot/projects/ia64/sys/dev/usb/uhid.c#15 integrate .. //depot/projects/ia64/sys/dev/usb/ulpt.c#14 integrate .. //depot/projects/ia64/sys/dev/usb/ums.c#12 integrate .. //depot/projects/ia64/sys/dev/usb/urio.c#15 integrate .. //depot/projects/ia64/sys/dev/usb/usb.c#16 integrate .. //depot/projects/ia64/sys/dev/usb/uscanner.c#14 integrate .. //depot/projects/ia64/sys/gnu/ext2fs/ext2_bitops.h#1 branch .. //depot/projects/ia64/sys/gnu/ext2fs/ext2_linux_balloc.c#5 integrate .. //depot/projects/ia64/sys/gnu/ext2fs/ext2_linux_ialloc.c#4 integrate .. //depot/projects/ia64/sys/gnu/ext2fs/ia64-bitops.h#2 delete .. //depot/projects/ia64/sys/i386/i386/atomic.c#3 integrate .. //depot/projects/ia64/sys/i386/i386/bios.c#16 integrate .. //depot/projects/ia64/sys/i386/i386/db_disasm.c#5 integrate .. //depot/projects/ia64/sys/i386/i386/db_interface.c#11 integrate .. //depot/projects/ia64/sys/i386/i386/db_trace.c#11 integrate .. //depot/projects/ia64/sys/i386/i386/dump_machdep.c#6 integrate .. //depot/projects/ia64/sys/i386/i386/elan-mmcr.c#11 integrate .. //depot/projects/ia64/sys/i386/i386/elf_machdep.c#11 integrate .. //depot/projects/ia64/sys/i386/i386/i386-gdbstub.c#7 integrate .. //depot/projects/ia64/sys/i386/i386/i686_mem.c#9 integrate .. //depot/projects/ia64/sys/i386/i386/identcpu.c#25 integrate .. //depot/projects/ia64/sys/i386/i386/initcpu.c#13 integrate .. //depot/projects/ia64/sys/i386/i386/k6_mem.c#4 integrate .. //depot/projects/ia64/sys/i386/i386/legacy.c#5 integrate .. //depot/projects/ia64/sys/i386/i386/mp_clock.c#8 integrate .. //depot/projects/ia64/sys/i386/i386/mp_machdep.c#28 integrate .. //depot/projects/ia64/sys/i386/i386/mpapic.c#11 integrate .. //depot/projects/ia64/sys/i386/i386/nexus.c#8 integrate .. //depot/projects/ia64/sys/i386/i386/perfmon.c#10 integrate .. //depot/projects/ia64/sys/i386/i386/pmap.c#60 integrate .. //depot/projects/ia64/sys/i386/i386/sys_machdep.c#22 integrate .. //depot/projects/ia64/sys/i386/i386/tsc.c#8 integrate .. //depot/projects/ia64/sys/i386/i386/vm86.c#12 integrate .. //depot/projects/ia64/sys/i386/isa/bs/bshw_dma.c#3 integrate .. //depot/projects/ia64/sys/ia64/conf/NOTES#2 integrate .. //depot/projects/ia64/sys/kern/kern_mac.c#31 integrate .. //depot/projects/ia64/sys/kern/kern_thread.c#67 integrate .. //depot/projects/ia64/sys/kern/sched_ule.c#24 integrate .. //depot/projects/ia64/sys/netinet/raw_ip.c#26 integrate .. //depot/projects/ia64/sys/pc98/pc98/syscons.c#19 delete .. //depot/projects/ia64/sys/pci/if_dc.c#46 integrate .. //depot/projects/ia64/sys/pci/meteor.c#12 integrate .. //depot/projects/ia64/sys/vm/vm_page.h#23 integrate .. //depot/projects/ia64/usr.sbin/pkg_install/create/pkg_create.1#11 integrate Differences ... ==== //depot/projects/ia64/Makefile.inc1#78 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.383 2003/08/17 07:50:15 gordon Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.385 2003/08/25 18:30:06 imp Exp $ # # Make command line options: # -DNO_KERBEROS Do not build Heimdal (Kerberos 5) @@ -123,8 +123,12 @@ MAKEOBJDIRPREFIX?= /usr/obj .if !defined(OSRELDATE) +.if exists(/usr/include/osreldate.h) OSRELDATE!= awk '/^\#define[[:space:]]*__FreeBSD_version/ { print $$3 }' \ /usr/include/osreldate.h +.else +OSRELDATE!= sysctl -n kern.osreldate +.endif .endif TARGET_ARCH?= ${MACHINE_ARCH} .if ${TARGET_ARCH} == ${MACHINE_ARCH} @@ -387,7 +391,7 @@ .if ${TARGET_ARCH} == ${MACHINE_ARCH} && !defined(DISTDIR) && \ (!defined(DESTDIR) || empty(DESTDIR) || ${DESTDIR} == "/") @echo "Checking to see if your booted kernel is fresh enough.." - ${.OBJDIR}/bin/sh/sh -c \ + @${.OBJDIR}/bin/sh/sh -c \ 'echo "Testing installed kernel for new sigaction(2) syscall"' @echo "Seems ok.." .endif ==== //depot/projects/ia64/contrib/top/top.X#3 (text+ko) ==== @@ -1,6 +1,6 @@ .\" NOTE: changes to the manual page for "top" should be made in the .\" file "top.X" and NOT in the file "top.1". -.\" $FreeBSD: src/contrib/top/top.X,v 1.8 2002/01/24 17:54:04 dwmalone Exp $ +.\" $FreeBSD: src/contrib/top/top.X,v 1.9 2003/08/26 15:37:19 eivind Exp $ .nr N %topn% .nr D %delay% .TH TOP 1 Local @@ -315,7 +315,7 @@ .br /etc/passwd used to map uid numbers to user names .br -/kernel system image +/boot/kernel/kernel system image .SH BUGS Don't shoot me, but the default for .B \-I ==== //depot/projects/ia64/games/fortune/datfiles/startrek#5 (text+ko) ==== @@ -1,4 +1,4 @@ -%% $FreeBSD: src/games/fortune/datfiles/startrek,v 1.4 2003/07/13 03:49:43 kris Exp $ +%% $FreeBSD: src/games/fortune/datfiles/startrek,v 1.5 2003/08/25 20:08:16 ceri Exp $ A father doesn't destroy his children. -- Lt. Carolyn Palamas, "Who Mourns for Adonais?", stardate 3468.1. @@ -490,7 +490,7 @@ deeply -- life in every form from fetus to developed being. -- Hodin of Gideon, "The Mark of Gideon", stardate 5423.4 % -... The prejudices people feel about each other disappear when then get +... The prejudices people feel about each other disappear when they get to know each other. -- Kirk, "Elaan of Troyius", stardate 4372.5 % ==== //depot/projects/ia64/lib/libc/rpc/publickey.5#2 (text+ko) ==== @@ -1,4 +1,4 @@ -.\" $FreeBSD: src/lib/libc/rpc/publickey.5,v 1.6 2001/01/17 18:26:21 ru Exp $ +.\" $FreeBSD: src/lib/libc/rpc/publickey.5,v 1.7 2003/08/26 15:52:47 eivind Exp $ .\" @(#)publickey.5 2.1 88/08/07 4.0 RPCSRC; from 1.6 88/02/29 SMI; .Dd October 19, 1987 .Dt PUBLICKEY 5 @@ -11,7 +11,7 @@ .Sh DESCRIPTION .Pa /etc/publickey is the public key database used for secure -networking. +RPC (Remote Procedure Calls). Each entry in the database consists of a network user name (which may either refer to ==== //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#65 (text+ko) ==== @@ -8,10 +8,8 @@ (i.e. Ethernet interfaces), list broad groups of devices alphabetically as paragraphs sorted alphabetically (frequently these groups will be arranged by manufacturer, i.e. 3Com - Ethernet interfaces). In cases where a group of devices - consists of multiple models (such as the 3C501, 3C503, etc.), - list each specific model or set of closely-related models as - a separate item in an itemized list, sorted alphabetically. + Ethernet interfaces). + Where applicable, a "Miscellaneous" section may follow all other named sections. @@ -31,7 +29,7 @@ - $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v 1.174 2003/08/22 17:36:14 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v 1.177 2003/08/25 04:31:26 bmah Exp $ Supported Devices @@ -779,77 +777,8 @@ - Allied-Telesis AT1700 and RE2000 cards - (&man.fe.4; driver) - - - CONTEC C-NET(PC)C PCMCIA Ethernet - - - Fujitsu MBH10303, MBH10302 Ethernet PCMCIA - - - Fujitsu Towa LA501 Ethernet - - - Fujitsu FMV-J182, FMV-J182A - - - RATOC REX-5588, REX-9822, REX-4886, and REX-R280 - - - Eiger Labs EPX-10BT - - - HITACHI HT-4840-11 - - - NextCom J Link NC5310 - - - TDK LAK-CD021, LAK-CD021A, LAK-CD021BX - - - - Alteon Networks PCI Gigabit Ethernet NICs based on the Tigon - 1 and Tigon 2 chipsets (&man.ti.4; driver) - - - 3Com 3c985-SX (Tigon 1 and 2) - - - Alteon AceNIC (Tigon 1 and 2) - - - Alteon AceNIC 1000baseT (Tigon 2) - - - Asante PCI 1000BASE-SX Gigabit Ethernet Adapter - - - Asante GigaNIX1000T Gigabit Ethernet Adapter - - - DEC/Compaq EtherWORKS 1000 - - - Farallon PN9000SX - - - NEC Gigabit Ethernet - - - Netgear GA620 (Tigon 2) - - - Netgear GA620T (Tigon 2, 1000baseT) - - - Silicon Graphics Gigabit Ethernet - - - + 1 and Tigon 2 chipsets (&man.ti.4; driver) AMD PCnet NICs (&man.lnc.4; and &man.pcn.4; drivers) @@ -1607,53 +1536,7 @@ MELCO LGY-PCI-TXL (PCI) (&man.dc.4; driver) Fujitsu MB86960A/MB86965A based Fast Ethernet NICs - (&man.fe.4; driver) - - - CONTEC C-NET(PC)C Ethernet - - - Eiger Labs EPX-10BT - - - Fujitsu FMV-J182, FMV-J182A, MBH10302, MBH10303 - Ethernet PCMCIA - - - Fujitsu Towa LA501 Ethernet - - - HITACHI HT-4840-11 - - - NextCom J Link NC5310 - - - RATOC REX-5588, REX-9822, REX-4886, REX-R280 - - - TDK LAK-CD021, LAK-CD021A, LAK-CD021BX - - - Allied Telesis RE1000, RE1000Plus, ME1500 (110pin) - - - Contec C-NET(98)P2, C-NET(9N)E (110pin), - C-NET(9N)C(ExtCard) - - - Ungermann-Bass Access/PC N98C+(PC85152,PC85142), - Access/NOTE N98 (PC86132) (110pin) - - - TDK LAC-98012, LAC-98013, LAC-98025, LAC-9N011 - (110pin) - - - Ratoc REX-9880/9881/9882/9883 - - - + (&man.fe.4; driver) Intel 82557-, 82258-, 82559-, 82550- or 82562-based Fast Ethernet NICs (&man.fxp.4; driver) @@ -1723,38 +1606,7 @@ - 3Com 3C5x9 Etherlink III NICs (&man.ep.4; driver) - - - 3C509 - - - 3C529 MCA - - - 3C579 EISA - - - 3CXE589EC, 3CXE589ET PCMCIA - - - 3C589/589B/589C/589D/589E/574TX/574B - PC-card/PCMCIA - - - Megahertz 3CCFEM556BI, 3CXEM556, 3CCFEM556B - - - OfficeConnect 3CXSH572BT - - - Farallon EtherMac - - - 3Com 3C569, 3C569-TPO, 3C569B, 3C569B-COMBO - - - + 3Com 3C5x9 Etherlink III NICs (&man.ep.4; driver) 3Com 3C501 8-bit ISA Ethernet NIC (&man.el.4; driver) ==== //depot/projects/ia64/share/man/man4/man4.i386/ep.4#3 (text+ko) ==== @@ -27,7 +27,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/man4.i386/ep.4,v 1.23 2003/08/21 15:40:05 simon Exp $ +.\" $FreeBSD: src/share/man/man4/man4.i386/ep.4,v 1.24 2003/08/24 22:51:09 bmah Exp $ .\" .Dd February 4, 1993 .Dt EP 4 i386 @@ -53,6 +53,8 @@ .It 3CXE589EC, 3CXE589ET PCMCIA .It +3C569, 3C569-TPO, 3C569B, 3C569B-COMBO +.It 3C589/589B/589C/589D/589E/574TX/574B PC Card/PCMCIA .It Megahertz 3CCFEM556BI, 3CXEM556, 3CCFEM556B ==== //depot/projects/ia64/share/man/man4/man4.i386/fe.4#3 (text+ko) ==== @@ -21,7 +21,7 @@ .\" Contributed by M. Sekiguchi . .\" for fe driver. .\" -.\" $FreeBSD: src/share/man/man4/man4.i386/fe.4,v 1.24 2003/08/21 15:18:21 simon Exp $ +.\" $FreeBSD: src/share/man/man4/man4.i386/fe.4,v 1.26 2003/08/24 22:39:18 bmah Exp $ .Dd March 3, 1996 .Dt FE 4 i386 .Os @@ -45,23 +45,34 @@ .Pp .Bl -bullet -compact .It +Allied Telesis RE1000, RE1000Plus, ME1500 (110-pin) +.It +CONTEC C-NET(98)P2, C-NET (9N)E (110-pin), C-NET(9N)C (ExtCard) +.It CONTEC C-NET(PC)C PCMCIA Ethernet .It +Eiger Labs EPX-10BT +.It +Fujitsu FMV-J182, FMV-J182A +.It Fujitsu MBH10303, MBH10302 Ethernet PCMCIA .It Fujitsu Towa LA501 Ethernet .It -Fujitsu FMV-J182, FMV-J182A +HITACHI HT-4840-11 +.It +NextCom J Link NC5310 .It RATOC REX-5588, REX-9822, REX-4886, and REX-R280 .It -Eiger Labs EPX-10BT +RATOC REX-9880/9881/9882/9883 .It -HITACHI HT-4840-11 +TDK LAC-98012, LAC-98013, LAC-98025, LAC-9N011 (110-pin) .It -NextCom J Link NC5310 +TDK LAK-CD021, LAK-CD021A, LAK-CD021BX .It -TDK LAK-CD021, LAK-CD021A, LAK-CD021BX +Ungermann-Bass Access/PC N98C+(PC85152, PC85142), Access/NOTE +N98(PC86132) (110-pin) .El .Pp The driver provides automatic I/O port address configuration and ==== //depot/projects/ia64/share/man/man4/ti.4#6 (text+ko) ==== @@ -28,7 +28,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/ti.4,v 1.22 2003/06/28 23:53:37 ru Exp $ +.\" $FreeBSD: src/share/man/man4/ti.4,v 1.25 2003/08/25 04:29:43 bmah Exp $ .\" .Dd June 26, 2002 .Dt TI 4 @@ -69,32 +69,34 @@ .Pp .Bl -bullet -compact -offset indent .It -The Alteon AceNIC V gigabit ethernet adapter (1000baseSX) +3Com 3c985-SX Gigabit Ethernet adapter (Tigon 1) .It -The Alteon AceNIC V gigabit ethernet adapter (1000baseT) +3Com 3c985B-SX Gigabit Ethernet adapter (Tigon 2) .It -The 3Com 3c985-SX gigabit ethernet adapter (Tigon 1) +Alteon AceNIC V Gigabit Ethernet adapter (1000baseSX) .It -The 3Com 3c985B-SX gigabit ethernet adapter (Tigon 2) +Alteon AceNIC V Gigabit Ethernet adapter (1000baseT) .It -The Netgear GA620 gigabit ethernet adapter (1000baseSX) +Netgear GA620 Gigabit Ethernet adapter (1000baseSX) .It -The Netgear GA620T gigabit ethernet adapter (1000baseT) +Netgear GA620T Gigabit Ethernet adapter (1000baseT) .El .Pp The following should also be supported but have not yet been tested: .Pp .Bl -bullet -compact -offset indent .It -The Digital EtherWORKS 1000SX PCI Gigabit Adapter +Asante GigaNIX1000T Gigabit Ethernet adapter +.It +Asante PCI 1000BASE-SX Gigabit Ethernet adapter .It -Silicon Graphics PCI gigabit ethernet adapter +Digital EtherWORKS 1000SX PCI Gigabit adapter .It Farallon PN9000SX Gigabit Ethernet adapter .It -Asante PCI 1000BASE-SX Gigabit Ethernet Adapter +NEC Gigabit Ethernet .It -Asante GigaNIX1000T Gigabit Ethernet Adapter +Silicon Graphics PCI Gigabit Ethernet adapter .El .Pp While the Tigon chipset supports 10, 100 and 1000Mbps speeds, support for ==== //depot/projects/ia64/share/man/man7/development.7#5 (text+ko) ==== @@ -2,7 +2,7 @@ .\" the BSD Copyright as specified in the file "/usr/src/COPYRIGHT" in .\" the FreeBSD source tree. .\" -.\" $FreeBSD: src/share/man/man7/development.7,v 1.8 2003/08/22 17:12:55 njl Exp $ +.\" $FreeBSD: src/share/man/man7/development.7,v 1.9 2003/08/25 19:08:37 njl Exp $ .\" .Dd December 21, 2002 .Dt DEVELOPMENT 7 @@ -380,6 +380,13 @@ .Fx tree is based on CVS, the former is convenient. .Pp +First, you need to modify your cvsup environment to avoid it modifying +the local changes you have committed to the repository. +It is important to remove the "delete" keyword from your supfile and to +add the CVSROOT subdirectory to your refuse file. +For more information, see +.Xr cvsup 1 . +.Pp The .Fx version of CVS examines a custom environmental variable, @@ -400,6 +407,23 @@ new tag and begin making changes and committing them. For more information on using cvs, see .Xr cvs 1 . +.Pp +.Sy WARNING! +The cvsup utility may blow away changes made on a local branch in +some situations. +This has been reported to occur when the master CVS repository is +directly manipulated or an RCS file is changed. +At this point, cvsup notices that the client and server have entirely +different RCS files, so it does a full replace instead of trying to +send just deltas. +Ideally this situation should never arise, but in the real world it +happens all the time. +.Pp +While this is the only scenario where the problem should crop up, +there have been some suspicious-sounding reports of +CVS_LOCAL_BRANCH_NUM lossage that can't be explained by this alone. +Bottom line is, if you value your local branch then you +should back it up before every update. .Sh UPDATING VIA CVS The advantage of using cvsup to maintain an updated copy of the CVS repository instead of using it to maintain source trees directly is that you ==== //depot/projects/ia64/sys/alpha/alpha/api_up1000.c#9 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/api_up1000.c,v 1.9 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/api_up1000.c,v 1.10 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" @@ -49,18 +49,21 @@ #include #include +#ifndef NO_SIO #ifndef CONSPEED #define CONSPEED TTYDEF_SPEED #endif static int comcnrate = CONSPEED; +extern int comconsole; +extern int siocnattach(int, int); +extern int siogdbattach(int, int); +#endif + +extern int sccnattach(void); void api_up1000_init(void); static void api_up1000_cons_init(void); -extern int siocnattach(int, int); -extern int siogdbattach(int, int); -extern int sccnattach(void); - void api_up1000_init() { @@ -75,38 +78,38 @@ platform.cons_init = api_up1000_cons_init; } -extern int comconsole; - static void api_up1000_cons_init() { struct ctb *ctb; irongate_init(); + +#ifndef NO_SIO #ifdef DDB siogdbattach(0x2f8, 57600); #endif +#endif ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off); switch (ctb->ctb_term_type) { - case 2: + case 2: +#ifndef NO_SIO /* serial console ... */ - /* XXX */ - { - /* - * Delay to allow PROM putchars to complete. - * FIFO depth * character time, - * character time = (1000000 / (defaultrate / 10)) - */ - DELAY(160000000 / comcnrate); - comconsole = 0; - if (siocnattach(0x3f8, comcnrate)) - panic("can't init serial console"); + /* + * Delay to allow PROM putchars to complete. + * FIFO depth * character time, + * character time = (1000000 / (defaultrate / 10)) + */ + DELAY(160000000 / comcnrate); + comconsole = 0; + if (siocnattach(0x3f8, comcnrate)) + panic("can't init serial console"); - boothowto |= RB_SERIAL; - break; - } + boothowto |= RB_SERIAL; +#endif + break; case 3: /* display console ... */ ==== //depot/projects/ia64/sys/alpha/alpha/dec_1000a.c#9 (text+ko) ==== @@ -72,7 +72,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_1000a.c,v 1.16 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_1000a.c,v 1.17 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" @@ -94,15 +94,21 @@ #include +#ifndef NO_SIO #ifndef CONSPEED #define CONSPEED TTYDEF_SPEED #endif static int comcnrate = CONSPEED; +extern int comconsole; +extern int siocnattach(int, int); +extern int siogdbattach(int, int); +#endif +extern int sccnattach(void); + void dec_1000a_init(int); static void dec_1000a_cons_init(void); - static void dec_1000_intr_map(void *); static void dec_1000_intr_disable(int); static void dec_1000_intr_enable(int); @@ -113,11 +119,6 @@ static void dec_1000a_intr_enable(int); static void dec_1000a_intr_init(void); -extern int siocnattach(int, int); -extern int siogdbattach(int, int); -extern int sccnattach(void); - - static const struct alpha_variation_table dec_1000_variations[] = { { 0, "AlphaServer 1000" }, { 0, NULL }, @@ -172,8 +173,6 @@ } -/* XXX for forcing comconsole when srm serial console is used */ -extern int comconsole; static void dec_1000a_cons_init() @@ -186,35 +185,36 @@ apecs_init(); } +#ifndef NO_SIO #ifdef DDB siogdbattach(0x2f8, 57600); #endif +#endif ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off); switch (ctb->ctb_term_type) { case 2: +#ifndef NO_SIO /* serial console ... */ - /* XXX */ - { - /* - * Delay to allow PROM putchars to complete. - * FIFO depth * character time, - * character time = (1000000 / (defaultrate / 10)). - */ - DELAY(160000000 / comcnrate); + /* + * Delay to allow PROM putchars to complete. + * FIFO depth * character time, + * character time = (1000000 / (defaultrate / 10)). + */ + DELAY(160000000 / comcnrate); - /* - * Force a comconsole on com1 if the SRM has a serial - * console. - */ - comconsole = 0; - if (siocnattach(0x3f8, comcnrate)) - panic("can't init serial console"); + /* + * Force a comconsole on com1 if the SRM has a serial + * console. + */ + comconsole = 0; + if (siocnattach(0x3f8, comcnrate)) + panic("can't init serial console"); - boothowto |= RB_SERIAL; - break; - } + boothowto |= RB_SERIAL; +#endif + break; case 3: /* display console ... */ ==== //depot/projects/ia64/sys/alpha/alpha/dec_2100_a50.c#10 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a50.c,v 1.17 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a50.c,v 1.18 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" @@ -54,21 +54,21 @@ #include #include +#ifndef NO_SIO #ifndef CONSPEED #define CONSPEED TTYDEF_SPEED #endif static int comcnrate = CONSPEED; +extern int comconsole; +extern int siocnattach(int, int); +extern int siogdbattach(int, int); +#endif +extern int sccnattach(void); + void dec_2100_a50_init(void); static void dec_2100_a50_cons_init(void); static void dec_2100_a50_intr_map(void *); -void sio_intr_establish(int); -void sio_intr_disestablish(int); -void sio_intr_setup(void); - -extern int siocnattach(int, int); -extern int siogdbattach(int, int); -extern int sccnattach(void); const struct alpha_variation_table dec_2100_a50_variations[] = { { SV_ST_AVANTI, "AlphaStation 400 4/233 (\"Avanti\")" }, @@ -103,9 +103,6 @@ platform.pci_intr_map = dec_2100_a50_intr_map; } -/* XXX for forcing comconsole when srm serial console is used */ -extern int comconsole; - static void dec_2100_a50_cons_init() { @@ -113,32 +110,34 @@ apecs_init(); +#ifndef NO_SIO #ifdef DDB siogdbattach(0x2f8, 9600); #endif +#endif + ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off); switch (ctb->ctb_term_type) { case 2: +#ifndef NO_SIO /* serial console ... */ - /* XXX */ - { - /* - * Delay to allow PROM putchars to complete. - * FIFO depth * character time, - * character time = (1000000 / (defaultrate / 10)). - */ - DELAY(160000000 / comcnrate); - /* - * Force a comconsole on com1 if the SRM has a serial console. - */ - comconsole = 0; - if (siocnattach(0x3f8, comcnrate)) - panic("can't init serial console"); + /* + * Delay to allow PROM putchars to complete. + * FIFO depth * character time, + * character time = (1000000 / (defaultrate / 10)). + */ + DELAY(160000000 / comcnrate); + /* + * Force a comconsole on com1 if the SRM has a serial console. + */ + comconsole = 0; + if (siocnattach(0x3f8, comcnrate)) + panic("can't init serial console"); - boothowto |= RB_SERIAL; - break; - } + boothowto |= RB_SERIAL; +#endif + break; case 3: /* display console ... */ ==== //depot/projects/ia64/sys/alpha/alpha/dec_2100_a500.c#10 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a500.c,v 1.16 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a500.c,v 1.17 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" @@ -47,19 +47,22 @@ #include #include +#ifndef NO_SIO #ifndef CONSPEED #define CONSPEED TTYDEF_SPEED #endif static int comcnrate = CONSPEED; +extern int comconsole; +extern int siocnattach(int, int); +extern int siogdbattach(int, int); +#endif + +extern int sccnattach(void); void dec_2100_a500_init(int); static void dec_2100_a500_cons_init(void); static void dec_2100_a500_intr_init(void); -extern int siocnattach(int, int); -extern int siogdbattach(int, int); -extern int sccnattach(void); - void dec_2100_a500_init(int cputype) { @@ -91,8 +94,6 @@ t2_init(); } -/* XXX for forcing comconsole when srm serial console is used */ -extern int comconsole; static void dec_2100_a500_cons_init() @@ -100,15 +101,18 @@ struct ctb *ctb; t2_init(); +#ifndef NO_SIO #ifdef DDB siogdbattach(0x2f8, 9600); #endif +#endif + ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off); switch (ctb->ctb_term_type) { case 2: +#ifndef NO_SIO /* serial console ... */ - /* XXX */ /* * Delay to allow PROM putchars to complete. * FIFO depth * character time, @@ -123,6 +127,7 @@ panic("can't init serial console"); boothowto |= RB_SERIAL; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Aug 26 16:58:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BCEA216A4C1; Tue, 26 Aug 2003 16:58:26 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7E80716A4BF for ; Tue, 26 Aug 2003 16:58:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A567F43FDF for ; Tue, 26 Aug 2003 16:58:24 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7QNwO0U029607 for ; Tue, 26 Aug 2003 16:58:24 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7QNwNtG029604 for perforce@freebsd.org; Tue, 26 Aug 2003 16:58:23 -0700 (PDT) Date: Tue, 26 Aug 2003 16:58:23 -0700 (PDT) Message-Id: <200308262358.h7QNwNtG029604@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36996 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 26 Aug 2003 23:58:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=36996 Change 36996 by marcel@marcel_nfs on 2003/08/26 16:58:21 IFC @36992 Affected files ... .. //depot/projects/uart/alpha/alpha/api_up1000.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_1000a.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_2100_a50.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_2100_a500.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_axppci_33.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_eb164.c#4 integrate .. //depot/projects/uart/alpha/alpha/dec_eb64plus.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_kn20aa.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_kn300.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_st550.c#5 integrate .. //depot/projects/uart/alpha/alpha/dec_st6600.c#5 integrate .. //depot/projects/uart/alpha/alpha/machdep.c#7 integrate .. //depot/projects/uart/alpha/conf/NOTES#3 integrate .. //depot/projects/uart/boot/common/bcache.c#2 integrate .. //depot/projects/uart/boot/common/boot.c#2 integrate .. //depot/projects/uart/boot/common/commands.c#2 integrate .. //depot/projects/uart/boot/common/console.c#2 integrate .. //depot/projects/uart/boot/common/dev_net.c#2 integrate .. //depot/projects/uart/boot/common/devopen.c#2 integrate .. //depot/projects/uart/boot/common/interp.c#2 integrate .. //depot/projects/uart/boot/common/interp_backslash.c#2 integrate .. //depot/projects/uart/boot/common/interp_forth.c#2 integrate .. //depot/projects/uart/boot/common/interp_parse.c#2 integrate .. //depot/projects/uart/boot/common/isapnp.c#2 integrate .. //depot/projects/uart/boot/common/load.c#2 integrate .. //depot/projects/uart/boot/common/load_elf.c#2 integrate .. //depot/projects/uart/boot/common/load_elf32.c#2 integrate .. //depot/projects/uart/boot/common/load_elf64.c#2 integrate .. //depot/projects/uart/boot/common/ls.c#2 integrate .. //depot/projects/uart/boot/common/misc.c#2 integrate .. //depot/projects/uart/boot/common/module.c#2 integrate .. //depot/projects/uart/boot/common/panic.c#2 integrate .. //depot/projects/uart/boot/common/pnp.c#2 integrate .. //depot/projects/uart/boot/common/ufsread.c#2 integrate .. //depot/projects/uart/boot/i386/boot2/boot2.c#2 integrate .. //depot/projects/uart/boot/i386/kgzldr/boot.c#2 integrate .. //depot/projects/uart/boot/i386/kgzldr/lib.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/biosacpi.c#4 integrate .. //depot/projects/uart/boot/i386/libi386/bioscd.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/biosmem.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/biospci.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/biospnp.c#3 integrate .. //depot/projects/uart/boot/i386/libi386/biossmap.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/bootinfo.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/bootinfo32.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/bootinfo64.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/comconsole.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/devicename.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/elf32_freebsd.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/elf64_freebsd.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/gatea20.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/i386_copy.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/i386_module.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/nullconsole.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/pread.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/pxe.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/time.c#2 integrate .. //depot/projects/uart/boot/i386/libi386/vidconsole.c#2 integrate .. //depot/projects/uart/boot/i386/loader/conf.c#2 integrate .. //depot/projects/uart/boot/i386/loader/main.c#2 integrate .. //depot/projects/uart/cam/scsi/scsi_da.c#7 integrate .. //depot/projects/uart/conf/files.pc98#5 integrate .. //depot/projects/uart/conf/options.alpha#3 integrate .. //depot/projects/uart/dev/ata/ata-all.c#3 integrate .. //depot/projects/uart/dev/ata/ata-all.h#3 integrate .. //depot/projects/uart/dev/ata/ata-card.c#3 integrate .. //depot/projects/uart/dev/ata/ata-cbus.c#3 integrate .. //depot/projects/uart/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/uart/dev/ata/ata-disk.c#3 integrate .. //depot/projects/uart/dev/ata/ata-dma.c#5 integrate .. //depot/projects/uart/dev/ata/ata-isa.c#3 integrate .. //depot/projects/uart/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/uart/dev/ata/ata-pci.c#5 integrate .. //depot/projects/uart/dev/ata/ata-pci.h#4 integrate .. //depot/projects/uart/dev/ata/ata-queue.c#2 integrate .. //depot/projects/uart/dev/ata/atapi-cd.c#3 integrate .. //depot/projects/uart/dev/ata/atapi-fd.c#3 integrate .. //depot/projects/uart/dev/ata/atapi-tape.c#3 integrate .. //depot/projects/uart/dev/bktr/bktr_core.c#6 integrate .. //depot/projects/uart/dev/buslogic/bt.c#5 integrate .. //depot/projects/uart/dev/isp/isp.c#3 integrate .. //depot/projects/uart/dev/pccard/pccard.c#4 integrate .. //depot/projects/uart/dev/sio/sio.c#4 integrate .. //depot/projects/uart/dev/sio/sio_isa.c#3 integrate .. //depot/projects/uart/dev/sio/sio_pccard.c#3 integrate .. //depot/projects/uart/dev/syscons/scgfbrndr.c#3 integrate .. //depot/projects/uart/dev/syscons/syscons.c#4 integrate .. //depot/projects/uart/dev/usb/ucom.c#5 integrate .. //depot/projects/uart/dev/usb/ufm.c#4 integrate .. //depot/projects/uart/dev/usb/ugen.c#5 integrate .. //depot/projects/uart/dev/usb/uhid.c#5 integrate .. //depot/projects/uart/dev/usb/ulpt.c#3 integrate .. //depot/projects/uart/dev/usb/ums.c#4 integrate .. //depot/projects/uart/dev/usb/urio.c#4 integrate .. //depot/projects/uart/dev/usb/usb.c#4 integrate .. //depot/projects/uart/dev/usb/uscanner.c#6 integrate .. //depot/projects/uart/gnu/ext2fs/ext2_bitops.h#1 branch .. //depot/projects/uart/gnu/ext2fs/ext2_linux_balloc.c#3 integrate .. //depot/projects/uart/gnu/ext2fs/ext2_linux_ialloc.c#3 integrate .. //depot/projects/uart/gnu/ext2fs/ia64-bitops.h#2 delete .. //depot/projects/uart/i386/i386/atomic.c#2 integrate .. //depot/projects/uart/i386/i386/bios.c#2 integrate .. //depot/projects/uart/i386/i386/db_disasm.c#2 integrate .. //depot/projects/uart/i386/i386/db_interface.c#2 integrate .. //depot/projects/uart/i386/i386/db_trace.c#2 integrate .. //depot/projects/uart/i386/i386/dump_machdep.c#2 integrate .. //depot/projects/uart/i386/i386/elan-mmcr.c#2 integrate .. //depot/projects/uart/i386/i386/elf_machdep.c#3 integrate .. //depot/projects/uart/i386/i386/i386-gdbstub.c#2 integrate .. //depot/projects/uart/i386/i386/i686_mem.c#3 integrate .. //depot/projects/uart/i386/i386/identcpu.c#5 integrate .. //depot/projects/uart/i386/i386/initcpu.c#3 integrate .. //depot/projects/uart/i386/i386/k6_mem.c#2 integrate .. //depot/projects/uart/i386/i386/legacy.c#2 integrate .. //depot/projects/uart/i386/i386/mp_clock.c#3 integrate .. //depot/projects/uart/i386/i386/mp_machdep.c#6 integrate .. //depot/projects/uart/i386/i386/mpapic.c#3 integrate .. //depot/projects/uart/i386/i386/nexus.c#2 integrate .. //depot/projects/uart/i386/i386/perfmon.c#4 integrate .. //depot/projects/uart/i386/i386/pmap.c#14 integrate .. //depot/projects/uart/i386/i386/sys_machdep.c#7 integrate .. //depot/projects/uart/i386/i386/tsc.c#4 integrate .. //depot/projects/uart/i386/i386/vm86.c#2 integrate .. //depot/projects/uart/i386/isa/bs/bshw_dma.c#2 integrate .. //depot/projects/uart/ia64/conf/NOTES#2 integrate .. //depot/projects/uart/kern/kern_mac.c#4 integrate .. //depot/projects/uart/kern/kern_thread.c#10 integrate .. //depot/projects/uart/kern/sched_ule.c#5 integrate .. //depot/projects/uart/netinet/raw_ip.c#5 integrate .. //depot/projects/uart/pc98/pc98/syscons.c#3 delete .. //depot/projects/uart/pci/if_dc.c#10 integrate .. //depot/projects/uart/pci/meteor.c#5 integrate .. //depot/projects/uart/vm/vm_page.h#3 integrate Differences ... ==== //depot/projects/uart/alpha/alpha/api_up1000.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/api_up1000.c,v 1.9 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/api_up1000.c,v 1.10 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_1000a.c#5 (text+ko) ==== @@ -72,7 +72,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_1000a.c,v 1.16 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_1000a.c,v 1.17 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_2100_a50.c#5 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a50.c,v 1.17 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a50.c,v 1.18 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_2100_a500.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a500.c,v 1.16 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_2100_a500.c,v 1.17 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_axppci_33.c#5 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_axppci_33.c,v 1.20 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_axppci_33.c,v 1.21 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_eb164.c#4 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_eb164.c,v 1.18 2003/08/17 06:42:07 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_eb164.c,v 1.19 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_eb64plus.c#5 (text+ko) ==== @@ -46,7 +46,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_eb64plus.c,v 1.15 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_eb64plus.c,v 1.16 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_kn20aa.c#5 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_kn20aa.c,v 1.17 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_kn20aa.c,v 1.18 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_kn300.c#5 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_kn300.c,v 1.12 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_kn300.c,v 1.13 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_st550.c#5 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_st550.c,v 1.15 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_st550.c,v 1.16 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/dec_st6600.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_st6600.c,v 1.16 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/dec_st6600.c,v 1.17 2003/08/25 03:43:07 marcel Exp $"); #include "opt_ddb.h" #include "opt_dev_sc.h" ==== //depot/projects/uart/alpha/alpha/machdep.c#7 (text+ko) ==== @@ -88,7 +88,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.211 2003/07/31 05:27:00 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.212 2003/08/25 03:43:07 marcel Exp $"); #include "opt_compat.h" #include "opt_ddb.h" ==== //depot/projects/uart/alpha/conf/NOTES#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/alpha/conf/NOTES,v 1.152 2003/07/21 19:15:25 ticso Exp $ +# $FreeBSD: src/sys/alpha/conf/NOTES,v 1.153 2003/08/25 03:43:08 marcel Exp $ # # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. @@ -40,6 +40,9 @@ options DEC_KN300 # AlphaServer 4100 (Rawhide), # AlphaServer 1200 (Tincup) +# Allow building a kernel without sio(4). +options NO_SIO + ##################################################################### # HARDWARE BUS CONFIGURATION ==== //depot/projects/uart/boot/common/bcache.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/bcache.c,v 1.11 2002/02/25 03:45:09 bde Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/bcache.c,v 1.12 2003/08/25 23:30:41 obrien Exp $"); + /* * Simple LRU block cache */ ==== //depot/projects/uart/boot/common/boot.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/boot.c,v 1.28 2001/09/11 01:09:19 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/boot.c,v 1.29 2003/08/25 23:30:41 obrien Exp $"); + /* * Loading modules, booting the system */ ==== //depot/projects/uart/boot/common/commands.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/commands.c,v 1.18 2003/04/04 16:35:14 phk Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/commands.c,v 1.19 2003/08/25 23:30:41 obrien Exp $"); + #include #include ==== //depot/projects/uart/boot/common/console.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/console.c,v 1.5 1999/08/28 00:39:46 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/console.c,v 1.6 2003/08/25 23:30:41 obrien Exp $"); + #include #include ==== //depot/projects/uart/boot/common/dev_net.c#2 (text+ko) ==== @@ -1,6 +1,5 @@ /* - * $FreeBSD: src/sys/boot/common/dev_net.c,v 1.11 2002/07/31 20:17:06 jake Exp $ - * From: $NetBSD: dev_net.c,v 1.12 1997/12/10 20:38:37 gwr Exp $ + * $NetBSD: dev_net.c,v 1.12 1997/12/10 20:38:37 gwr Exp $ */ /*- @@ -39,7 +38,10 @@ * POSSIBILITY OF SUCH DAMAGE. */ -/* +#include +__FBSDID("$FreeBSD: src/sys/boot/common/dev_net.c,v 1.12 2003/08/25 23:30:41 obrien Exp $"); + +/*- * This module implements a "raw device" interface suitable for * use by the stand-alone I/O library NFS code. This interface * does not support any "block" access, and exists only for the ==== //depot/projects/uart/boot/common/devopen.c#2 (text+ko) ==== @@ -22,10 +22,10 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/devopen.c,v 1.3 1999/08/28 00:39:47 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/devopen.c,v 1.4 2003/08/25 23:30:41 obrien Exp $"); #include #include ==== //depot/projects/uart/boot/common/interp.c#2 (text+ko) ==== @@ -22,9 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/interp.c,v 1.28 2001/11/19 17:30:26 obrien Exp $ */ + +#include +__FBSDID("$FreeBSD: src/sys/boot/common/interp.c,v 1.29 2003/08/25 23:30:41 obrien Exp $"); + /* * Simple commandline interpreter, toplevel and misc. * ==== //depot/projects/uart/boot/common/interp_backslash.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -11,11 +11,12 @@ * Jordan K. Hubbard * 29 August 1998 * - * $FreeBSD: src/sys/boot/common/interp_backslash.c,v 1.5 2000/08/03 09:13:54 jhb Exp $ - * * Routine for doing backslash elimination. */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/interp_backslash.c,v 1.6 2003/08/25 23:30:41 obrien Exp $"); + #include #include #include "bootstrap.h" ==== //depot/projects/uart/boot/common/interp_forth.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Copyright (c) 1998 Michael Smith * All rights reserved. * @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/interp_forth.c,v 1.22 2002/04/09 20:59:34 dcs Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/interp_forth.c,v 1.23 2003/08/25 23:30:41 obrien Exp $"); + #include /* to pick up __FreeBSD_version */ #include #include ==== //depot/projects/uart/boot/common/interp_parse.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -11,11 +11,12 @@ * Jordan K. Hubbard * 29 August 1998 * - * $FreeBSD: src/sys/boot/common/interp_parse.c,v 1.9 2000/08/03 09:13:54 jhb Exp $ - * * The meat of the simple parser. */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/interp_parse.c,v 1.10 2003/08/25 23:30:41 obrien Exp $"); + #include #include #include "bootstrap.h" ==== //depot/projects/uart/boot/common/isapnp.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Copyright (c) 1998, Michael Smith * Copyright (c) 1996, Sujal M. Patel * All rights reserved. @@ -23,10 +23,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/isapnp.c,v 1.6 2000/08/03 09:13:54 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/isapnp.c,v 1.7 2003/08/25 23:30:41 obrien Exp $"); + /* * Machine-independant ISA PnP enumerator implementing a subset of the * ISA PnP specification. ==== //depot/projects/uart/boot/common/load.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/load.c,v 1.2 1999/08/28 00:39:49 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/load.c,v 1.3 2003/08/25 23:30:41 obrien Exp $"); + #include #define LOAD_TINYBUF 2048 ==== //depot/projects/uart/boot/common/load_elf.c#2 (text+ko) ==== @@ -23,10 +23,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/load_elf.c,v 1.28 2003/05/12 05:48:09 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/load_elf.c,v 1.29 2003/08/25 23:30:41 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/common/load_elf32.c#2 (text+ko) ==== @@ -1,3 +1,6 @@ -/* $FreeBSD: src/sys/boot/common/load_elf32.c,v 1.1 2003/05/01 03:56:29 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/load_elf32.c,v 1.2 2003/08/25 23:30:41 obrien Exp $"); + #define __ELF_WORD_SIZE 32 + #include "load_elf.c" ==== //depot/projects/uart/boot/common/load_elf64.c#2 (text+ko) ==== @@ -1,3 +1,6 @@ -/* $FreeBSD: src/sys/boot/common/load_elf64.c,v 1.1 2003/05/01 03:56:29 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/load_elf64.c,v 1.2 2003/08/25 23:30:41 obrien Exp $"); + #define __ELF_WORD_SIZE 64 + #include "load_elf.c" ==== //depot/projects/uart/boot/common/ls.c#2 (text+ko) ==== @@ -1,9 +1,8 @@ /* - * $FreeBSD: src/sys/boot/common/ls.c,v 1.10 2000/05/01 18:03:15 peter Exp $ - * From: $NetBSD: ls.c,v 1.3 1997/06/13 13:48:47 drochner Exp $ + * $NetBSD: ls.c,v 1.3 1997/06/13 13:48:47 drochner Exp $ */ -/* +/*- * Copyright (c) 1993 * The Regents of the University of California. All rights reserved. * Copyright (c) 1996 @@ -38,6 +37,8 @@ * SUCH DAMAGE. */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/ls.c,v 1.11 2003/08/25 23:30:41 obrien Exp $"); #include #include ==== //depot/projects/uart/boot/common/misc.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/misc.c,v 1.7 2000/06/14 10:34:28 ps Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/misc.c,v 1.8 2003/08/25 23:30:41 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/common/module.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/common/module.c,v 1.24 2003/03/03 22:53:35 ru Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/module.c,v 1.25 2003/08/25 23:30:41 obrien Exp $"); + /* * file/module function dispatcher, support, etc. */ ==== //depot/projects/uart/boot/common/panic.c#2 (text+ko) ==== @@ -1,9 +1,7 @@ /* - * $FreeBSD: src/sys/boot/common/panic.c,v 1.6 2001/11/28 14:00:36 dcs Exp $ - * From: $NetBSD: panic.c,v 1.2 1997/03/22 01:48:36 thorpej Exp $ + * $NetBSD: panic.c,v 1.2 1997/03/22 01:48:36 thorpej Exp $ */ - -/* +/*- * Copyright (c) 1996 * Matthias Drochner. All rights reserved. * @@ -35,6 +33,8 @@ * */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/panic.c,v 1.7 2003/08/25 23:30:41 obrien Exp $"); #include #include ==== //depot/projects/uart/boot/common/pnp.c#2 (text+ko) ==== @@ -1,8 +1,11 @@ /* * mjs copyright * - * $FreeBSD: src/sys/boot/common/pnp.c,v 1.15 2000/12/30 20:40:16 phk Exp $ */ + +#include +__FBSDID("$FreeBSD: src/sys/boot/common/pnp.c,v 1.16 2003/08/25 23:30:41 obrien Exp $"); + /* * "Plug and Play" functionality. * ==== //depot/projects/uart/boot/common/ufsread.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Copyright (c) 2002 Networks Associates Technology, Inc. * All rights reserved. * @@ -22,9 +22,8 @@ * purpose. */ -/* - * $FreeBSD: src/sys/boot/common/ufsread.c,v 1.11 2003/02/25 00:10:20 obrien Exp $ - */ +#include +__FBSDID("$FreeBSD: src/sys/boot/common/ufsread.c,v 1.12 2003/08/25 23:30:41 obrien Exp $"); #include #include ==== //depot/projects/uart/boot/i386/boot2/boot2.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Copyright (c) 1998 Robert Nordier * All rights reserved. * @@ -13,9 +13,8 @@ * purpose. */ -/* - * $FreeBSD: src/sys/boot/i386/boot2/boot2.c,v 1.63 2003/04/04 16:35:14 phk Exp $ - */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/boot2/boot2.c,v 1.64 2003/08/25 23:28:31 obrien Exp $"); #include #include ==== //depot/projects/uart/boot/i386/kgzldr/boot.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Copyright (c) 1999 Global Technology Associates, Inc. * All rights reserved. * @@ -22,10 +22,11 @@ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/kgzldr/boot.c,v 1.2 1999/08/28 00:40:10 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/kgzldr/boot.c,v 1.3 2003/08/25 23:28:31 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/i386/kgzldr/lib.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Copyright (c) 1999 Global Technology Associates, Inc. * All rights reserved. * @@ -22,10 +22,11 @@ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/kgzldr/lib.c,v 1.2 1999/08/28 00:40:11 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/kgzldr/lib.c,v 1.3 2003/08/25 23:28:31 obrien Exp $"); + #include #include ==== //depot/projects/uart/boot/i386/libi386/biosacpi.c#4 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/biosacpi.c,v 1.6 2003/08/07 14:53:14 njl Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosacpi.c,v 1.7 2003/08/25 23:28:31 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/i386/libi386/bioscd.c#2 (text+ko) ==== @@ -23,10 +23,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/bioscd.c,v 1.4 2003/04/04 16:35:14 phk Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bioscd.c,v 1.5 2003/08/25 23:28:31 obrien Exp $"); + /* * BIOS CD device handling for CD's that have been booted off of via no * emulation booting as defined in the El Torito standard. ==== //depot/projects/uart/boot/i386/libi386/biosdisk.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.39 2003/04/04 16:35:14 phk Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.40 2003/08/25 23:28:31 obrien Exp $"); + /* * BIOS disk device handling. * ==== //depot/projects/uart/boot/i386/libi386/biosmem.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/biosmem.c,v 1.6 2002/09/23 18:54:26 alfred Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosmem.c,v 1.7 2003/08/25 23:28:31 obrien Exp $"); + /* * Obtain memory configuration information from the BIOS */ ==== //depot/projects/uart/boot/i386/libi386/biospci.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/biospci.c,v 1.3 2000/08/03 09:14:01 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biospci.c,v 1.4 2003/08/25 23:28:31 obrien Exp $"); + /* * PnP enumerator using the PCI BIOS. */ ==== //depot/projects/uart/boot/i386/libi386/biospnp.c#3 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/biospnp.c,v 1.8 2003/08/07 15:04:24 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biospnp.c,v 1.9 2003/08/25 23:28:31 obrien Exp $"); + /* * PnP BIOS enumerator. */ ==== //depot/projects/uart/boot/i386/libi386/biossmap.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/biossmap.c,v 1.1 2003/05/01 03:56:29 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biossmap.c,v 1.2 2003/08/25 23:28:31 obrien Exp $"); + /* * Obtain memory configuration information from the BIOS */ ==== //depot/projects/uart/boot/i386/libi386/bootinfo.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/bootinfo.c,v 1.34 2003/05/01 03:56:29 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo.c,v 1.35 2003/08/25 23:28:31 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/i386/libi386/bootinfo32.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/bootinfo32.c,v 1.35 2003/05/01 04:31:33 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo32.c,v 1.36 2003/08/25 23:28:31 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/i386/libi386/bootinfo64.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/bootinfo64.c,v 1.35 2003/05/01 04:31:33 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo64.c,v 1.36 2003/08/25 23:28:31 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/i386/libi386/comconsole.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* +/*- * Copyright (c) 1998 Michael Smith (msmith@freebsd.org) * * Redistribution and use in source and binary forms, with or without @@ -21,10 +21,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/comconsole.c,v 1.8 2000/08/03 09:14:01 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/comconsole.c,v 1.9 2003/08/25 23:28:31 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/i386/libi386/devicename.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/devicename.c,v 1.5 2001/11/05 18:58:33 jhb Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/devicename.c,v 1.6 2003/08/25 23:28:31 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/i386/libi386/elf32_freebsd.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * - * $FreeBSD: src/sys/boot/i386/libi386/elf32_freebsd.c,v 1.12 2003/05/01 03:56:29 peter Exp $ */ +#include +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/elf32_freebsd.c,v 1.13 2003/08/25 23:28:31 obrien Exp $"); + #include #include #include ==== //depot/projects/uart/boot/i386/libi386/elf64_freebsd.c#2 (text+ko) ==== @@ -22,10 +22,11 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. - * >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Aug 26 17:21:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3114716A4C1; Tue, 26 Aug 2003 17:21:55 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E777416A4BF for ; Tue, 26 Aug 2003 17:21:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5254843FFB for ; Tue, 26 Aug 2003 17:21:54 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7R0Ls0U031339 for ; Tue, 26 Aug 2003 17:21:54 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7R0LrUM031336 for perforce@freebsd.org; Tue, 26 Aug 2003 17:21:53 -0700 (PDT) Date: Tue, 26 Aug 2003 17:21:53 -0700 (PDT) Message-Id: <200308270021.h7R0LrUM031336@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 36998 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 00:21:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=36998 Change 36998 by sam@sam_ebb on 2003/08/26 17:21:41 de-giant arp timer Affected files ... .. //depot/projects/netperf/sys/netinet/if_ether.c#3 edit Differences ... ==== //depot/projects/netperf/sys/netinet/if_ether.c#3 (text+ko) ==== @@ -112,6 +112,7 @@ static int arp_maxtries = 5; static int useloopback = 1; /* use loopback interface for local traffic */ static int arp_proxyall = 0; +static struct callout arp_callout; SYSCTL_INT(_net_link_ether_inet, OID_AUTO, maxtries, CTLFLAG_RW, &arp_maxtries, 0, ""); @@ -142,7 +143,6 @@ void *ignored_arg; { struct llinfo_arp *la, *ola; - int s = splnet(); RADIX_NODE_HEAD_LOCK(rt_tables[AF_INET]); la = LIST_FIRST(&llinfo_arp); @@ -154,8 +154,8 @@ arptfree(ola); /* timer has expired, clear */ } RADIX_NODE_HEAD_UNLOCK(rt_tables[AF_INET]); - splx(s); - timeout(arptimer, NULL, arpt_prune * hz); + + callout_reset(&arp_callout, arpt_prune * hz, arptimer, NULL); } /* @@ -175,7 +175,7 @@ if (!arpinit_done) { arpinit_done = 1; - timeout(arptimer, (caddr_t)0, hz); + callout_reset(&arp_callout, hz, arptimer, NULL); } if (rt->rt_flags & RTF_GATEWAY) return; @@ -510,7 +510,7 @@ if (!arpinit_done) { arpinit_done = 1; - timeout(arptimer, (caddr_t)0, hz); + callout_reset(&arp_callout, hz, arptimer, NULL); } if (m->m_len < sizeof(struct arphdr) && ((m = m_pullup(m, sizeof(struct arphdr))) == NULL)) { @@ -961,7 +961,7 @@ arpintrq.ifq_maxlen = 50; mtx_init(&arpintrq.ifq_mtx, "arp_inq", NULL, MTX_DEF); LIST_INIT(&llinfo_arp); + callout_init(&arp_callout, CALLOUT_MPSAFE); netisr_register(NETISR_ARP, arpintr, &arpintrq); } - SYSINIT(arp, SI_SUB_PROTO_DOMAIN, SI_ORDER_ANY, arp_init, 0); From owner-p4-projects@FreeBSD.ORG Tue Aug 26 17:30:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5B43C16A4C1; Tue, 26 Aug 2003 17:30:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2065716A4BF for ; Tue, 26 Aug 2003 17:30:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 514D143FE1 for ; Tue, 26 Aug 2003 17:30:05 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7R0U40U031592 for ; Tue, 26 Aug 2003 17:30:04 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7R0U4WR031589 for perforce@freebsd.org; Tue, 26 Aug 2003 17:30:04 -0700 (PDT) Date: Tue, 26 Aug 2003 17:30:04 -0700 (PDT) Message-Id: <200308270030.h7R0U4WR031589@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 36999 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 00:30:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=36999 Change 36999 by marcel@marcel_nfs on 2003/08/26 17:29:19 Fix module build after split: o uart_cons.c is out o uart_tty.c is in Affected files ... .. //depot/projects/uart/modules/uart/Makefile#3 edit Differences ... ==== //depot/projects/uart/modules/uart/Makefile#3 (text+ko) ==== @@ -4,9 +4,9 @@ KMOD= uart SRCS= uart_bus_acpi.c uart_bus_ebus.c uart_bus_isa.c uart_bus_pci.c \ - uart_bus_puc.c uart_cons.c uart_core.c uart_cpu_${MACHINE_ARCH}.c \ + uart_bus_puc.c uart_core.c uart_cpu_${MACHINE_ARCH}.c \ uart_dev_ns8250.c uart_dev_sab82532.c uart_dev_z8530.c uart_if.c \ - uart_subr.c + uart_subr.c uart_tty.c SRCS+= bus_if.h device_if.h isa_if.h pci_if.h uart_if.h .include From owner-p4-projects@FreeBSD.ORG Tue Aug 26 17:33:10 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C4E8C16A4C1; Tue, 26 Aug 2003 17:33:09 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 888CC16A4BF for ; Tue, 26 Aug 2003 17:33:09 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 29CE243FE1 for ; Tue, 26 Aug 2003 17:33:09 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7R0X80U031724 for ; Tue, 26 Aug 2003 17:33:09 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7R0X8Yw031721 for perforce@freebsd.org; Tue, 26 Aug 2003 17:33:08 -0700 (PDT) Date: Tue, 26 Aug 2003 17:33:08 -0700 (PDT) Message-Id: <200308270033.h7R0X8Yw031721@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 37000 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 00:33:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=37000 Change 37000 by sam@sam_ebb on 2003/08/26 17:32:48 remove unused global var Affected files ... .. //depot/projects/netperf/sys/netinet/if_ether.c#4 edit Differences ... ==== //depot/projects/netperf/sys/netinet/if_ether.c#4 (text+ko) ==== @@ -105,7 +105,6 @@ static LIST_HEAD(, llinfo_arp) llinfo_arp; static struct ifqueue arpintrq; -static int arp_inuse; /* NB: not used for anything */ static int arp_allocated; static int arpinit_done; @@ -231,7 +230,7 @@ log(LOG_DEBUG, "%s: malloc failed\n", __func__); break; } - arp_inuse++, arp_allocated++; + arp_allocated++; la->la_rt = rt; rt->rt_flags |= RTF_LLINFO; RADIX_NODE_HEAD_LOCK_ASSERT(rt_tables[AF_INET]); @@ -282,7 +281,6 @@ case RTM_DELETE: if (la == 0) break; - arp_inuse--; RADIX_NODE_HEAD_LOCK_ASSERT(rt_tables[AF_INET]); LIST_REMOVE(la, la_le); rt->rt_llinfo = 0; From owner-p4-projects@FreeBSD.ORG Tue Aug 26 18:27:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E554816A4C1; Tue, 26 Aug 2003 18:27:15 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8CC0D16A4BF for ; Tue, 26 Aug 2003 18:27:15 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 098D743FAF for ; Tue, 26 Aug 2003 18:27:15 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7R1RE0U034406 for ; Tue, 26 Aug 2003 18:27:14 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7R1REOU034403 for perforce@freebsd.org; Tue, 26 Aug 2003 18:27:14 -0700 (PDT) Date: Tue, 26 Aug 2003 18:27:14 -0700 (PDT) Message-Id: <200308270127.h7R1REOU034403@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37001 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 01:27:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=37001 Change 37001 by marcel@marcel_nfs on 2003/08/26 18:27:02 Teach the uart core code about keyboards. We already had some suggesting code, but this takes it slightly further. This commit exposes a fundamental problem: Low-level access to the hardware prior to initialization of the bus framework and thus prior to bus enumeration is currently not scalable. We need to create static structures for each of the different kinds of accesses (ie console, debug port and keyboard). This means that if there's a fourth "consumer" we need to teach the uart driver about yet another "exception". What if there are different kinds of keyboards? What if we want 2 serial consoles? It makes sense to approach it slightly differently: o assume an uart can only be used for one kind of special usage at the same time (ie a console is never a debug port nor a keyboard). That way we only need to have a single enumeration. Enumerations are more scalable than bit fields. o struct uart_devinfo should have a field for the kind of consumer and pointers to link them together so that we can have an arbitrary number of devinfos with possibly multiple of the same kind. o If we also put function pointers to helpers for attach and detach in struct uart_devinfo, we don't really need to know anything special and we should have something that's generic enough. Something to work on I guess.. Submitted by: jake Affected files ... .. //depot/projects/uart/dev/uart/uart_bus.h#18 edit .. //depot/projects/uart/dev/uart/uart_core.c#24 edit .. //depot/projects/uart/dev/uart/uart_cpu.h#4 edit .. //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#5 edit .. //depot/projects/uart/dev/uart/uart_dev_ns8250.c#20 edit .. //depot/projects/uart/dev/uart/uart_dev_sab82532.c#16 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_bus.h#18 (text+ko) ==== @@ -109,8 +109,8 @@ int sc_dbgport:1; /* This UART is a debug port. */ int sc_fastintr:1; /* This UART uses fast interrupts. */ int sc_hasfifo:1; /* This UART has FIFOs. */ + int sc_keyboard:1; /* This UART is a keyboard. */ int sc_leaving:1; /* This UART is going away. */ - int sc_keyboard:1; /* This UART is a keyboard device. */ int sc_opened:1; /* This UART is open for business. */ int sc_polled:1; /* This UART has no interrupts. */ int sc_txbusy:1; /* This UART is transmitting. */ ==== //depot/projects/uart/dev/uart/uart_core.c#24 (text+ko) ==== @@ -258,6 +258,10 @@ sc->sc_dbgport = 1; /* XXX check if ops matches class. */ } + if (uart_cpu_eqres(&sc->sc_bas, &uart_keyboard.bas)) { + sc->sc_keyboard = 1; + /* XXX check if ops matches class. */ + } #endif error = UART_PROBE(sc); @@ -338,7 +342,7 @@ if (error) goto fail; - if (sc->sc_console || sc->sc_dbgport) { + if (sc->sc_console || sc->sc_dbgport || sc->sc_keyboard) { sep = ""; device_print_prettyname(dev); if (sc->sc_console) { @@ -349,6 +353,10 @@ printf("%sdebug port", sep); sep = ", "; } + if (sc->sc_keyboard) { + printf("%skeyboard", sep); + sep = ", "; + } printf("\n"); } ==== //depot/projects/uart/dev/uart/uart_cpu.h#4 (text+ko) ==== @@ -59,9 +59,11 @@ extern struct uart_devinfo uart_console; extern struct uart_devinfo uart_dbgport; +extern struct uart_devinfo uart_keyboard; #define UART_DEV_CONSOLE 0 #define UART_DEV_DBGPORT 1 +#define UART_DEV_KEYBOARD 2 int uart_cpu_getdev(int devtype, struct uart_devinfo *di); int uart_cpu_eqres(struct uart_bas *b1, struct uart_bas *b2); ==== //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#5 (text+ko) ==== @@ -40,7 +40,7 @@ int OF_decode_addr(phandle_t node, int *space, bus_addr_t *addr); -static struct bus_space_tag bst_store[2]; +static struct bus_space_tag bst_store[3]; int uart_cpu_getdev(int devtype, struct uart_devinfo *di) @@ -68,14 +68,20 @@ return (ENXIO); if ((consout = OF_instance_to_package(stdout)) == -1) return (ENXIO); - if (consin != consout) - return (ENXIO); - if (OF_getprop(consout, "device_type", buffer, sizeof(buffer)) == -1) + if (devtype == UART_DEV_CONSOLE) { + if (consin != consout) + return (ENXIO); + } else if (devtype == UART_DEV_KEYBOARD) { + if (OF_getprop(consin, "keyboard", buffer, + sizeof(buffer)) == -1) + return (ENXIO); + } + if (OF_getprop(consin, "device_type", buffer, sizeof(buffer)) == -1) return (ENXIO); if (strcmp(buffer, "serial")) return (ENXIO); - error = OF_decode_addr(consout, &space, &addr); + error = OF_decode_addr(consin, &space, &addr); if (error) return (error); @@ -86,7 +92,7 @@ di->bas.rclk = 0; /* Get the device class. */ - if (OF_getprop(consout, "name", buffer, sizeof(buffer)) == -1) + if (OF_getprop(consin, "name", buffer, sizeof(buffer)) == -1) return (ENXIO); if (!strcmp(buffer, "se")) di->ops = uart_sab82532_ops; ==== //depot/projects/uart/dev/uart/uart_dev_ns8250.c#20 (text+ko) ==== @@ -507,7 +507,7 @@ return (error); mcr = MCR_IENABLE; - if (!sc->sc_console && !sc->sc_dbgport) { + if (!sc->sc_console && !sc->sc_dbgport && !sc->sc_keyboard) { /* By using ns8250_init() we also set DTR and RTS. */ ns8250_init(bas, 9600, 8, 1, UART_PARITY_NONE); } else ==== //depot/projects/uart/dev/uart/uart_dev_sab82532.c#16 (text+ko) ==== @@ -383,7 +383,7 @@ uint8_t imr0, imr1; bas = &sc->sc_bas; - if (!sc->sc_console && !sc->sc_dbgport) + if (!sc->sc_console && !sc->sc_dbgport && !sc->sc_keyboard) sab82532_init(bas, 9600, 8, 1, UART_PARITY_NONE); sc->sc_rxfifosz = 32; From owner-p4-projects@FreeBSD.ORG Wed Aug 27 06:52:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9EE6516A4C1; Wed, 27 Aug 2003 06:52:32 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 717FF16A4BF for ; Wed, 27 Aug 2003 06:52:32 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E1A1644001 for ; Wed, 27 Aug 2003 06:52:31 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RDqV0U089154 for ; Wed, 27 Aug 2003 06:52:31 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RDqT09089151 for perforce@freebsd.org; Wed, 27 Aug 2003 06:52:29 -0700 (PDT) Date: Wed, 27 Aug 2003 06:52:29 -0700 (PDT) Message-Id: <200308271352.h7RDqT09089151@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37020 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 13:52:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=37020 Change 37020 by cvance@cvance_release on 2003/08/27 06:52:12 Add policy loading tool Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_setfiles/Makefile#1 add .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_setfiles/sebsd_loadpolicy.8#1 add .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_setfiles/sebsd_loadpolicy.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Aug 27 07:02:47 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E168016A4C1; Wed, 27 Aug 2003 07:02:46 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BAE1316A4BF for ; Wed, 27 Aug 2003 07:02:46 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 19CA043FF9 for ; Wed, 27 Aug 2003 07:02:46 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RE2j0U089607 for ; Wed, 27 Aug 2003 07:02:45 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RE2jMe089604 for perforce@freebsd.org; Wed, 27 Aug 2003 07:02:45 -0700 (PDT) Date: Wed, 27 Aug 2003 07:02:45 -0700 (PDT) Message-Id: <200308271402.h7RE2jMe089604@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37022 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 14:02:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=37022 Change 37022 by cvance@cvance_release on 2003/08/27 07:02:27 Rename directory, not sure what I was thinking. Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_loadpolicy/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_loadpolicy/sebsd_loadpolicy.8#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_loadpolicy/sebsd_loadpolicy.c#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_setfiles/Makefile#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_setfiles/sebsd_loadpolicy.8#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_setfiles/sebsd_loadpolicy.c#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Wed Aug 27 09:10:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 73F1E16A4C1; Wed, 27 Aug 2003 09:10:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 378EF16A4BF for ; Wed, 27 Aug 2003 09:10:23 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF86D43F85 for ; Wed, 27 Aug 2003 09:10:22 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RGAM0U002396 for ; Wed, 27 Aug 2003 09:10:22 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RGAM7V002393 for perforce@freebsd.org; Wed, 27 Aug 2003 09:10:22 -0700 (PDT) Date: Wed, 27 Aug 2003 09:10:22 -0700 (PDT) Message-Id: <200308271610.h7RGAM7V002393@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37025 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 16:10:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=37025 Change 37025 by cvance@cvance_release on 2003/08/27 09:10:17 Fix bug where an extra ',' character was being included at the beginning of externalized MAC labels. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#7 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#7 (text+ko) ==== @@ -427,9 +427,9 @@ } else \ ignorenotfound = 0; \ savedlen = sbuf_len(&sb); \ - if (first) { \ + if (first == 1) { \ error = sbuf_printf(&sb, "%s/", element_name); \ - first = 0; \ + first--; \ } else \ error = sbuf_printf(&sb, ",%s/", element_name); \ if (error == -1) { \ @@ -444,6 +444,7 @@ if (claimed == 0 && ignorenotfound) { \ /* Revert last label name. */ \ sbuf_setpos(&sb, savedlen); \ + first++; \ } else if (claimed != 1) { \ error = EINVAL; /* XXX: ENOLABEL? */ \ break; \ From owner-p4-projects@FreeBSD.ORG Wed Aug 27 09:13:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DC35116A4C2; Wed, 27 Aug 2003 09:13:32 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9D61716A4C0 for ; Wed, 27 Aug 2003 09:13:32 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 29D8943FCB for ; Wed, 27 Aug 2003 09:13:27 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RGDQ0U002543 for ; Wed, 27 Aug 2003 09:13:26 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RGDQsW002539 for perforce@freebsd.org; Wed, 27 Aug 2003 09:13:26 -0700 (PDT) Date: Wed, 27 Aug 2003 09:13:26 -0700 (PDT) Message-Id: <200308271613.h7RGDQsW002539@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37026 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 16:13:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=37026 Change 37026 by cvance@cvance_release on 2003/08/27 09:12:36 "port" the context manipulation library from SELinux. Nothing was really changed, other than header file includes. Affected files ... .. //depot/projects/trustedbsd/sebsd/lib/libsebsd/Makefile#3 edit .. //depot/projects/trustedbsd/sebsd/lib/libsebsd/context.c#1 add Differences ... ==== //depot/projects/trustedbsd/sebsd/lib/libsebsd/Makefile#3 (text+ko) ==== @@ -14,7 +14,7 @@ SRCS= system.c security_get_user_contexts.c get_ordered_context_list.c \ getseccontext.c query_user_context.c security_change_context.c \ - string_to_security_class.c security_compute_av.c + string_to_security_class.c security_compute_av.c context.c INCS= sebsd_context.h sebsd_ss.h sebsd_proc.h sebsd_fs.h sebsd.h \ sebsd_syscalls.h flask_types.h From owner-p4-projects@FreeBSD.ORG Wed Aug 27 09:13:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 507C716A4C1; Wed, 27 Aug 2003 09:13:35 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2ACE616A4BF for ; Wed, 27 Aug 2003 09:13:35 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AEBDD43FE3 for ; Wed, 27 Aug 2003 09:13:27 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RGDR0U002558 for ; Wed, 27 Aug 2003 09:13:27 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RGDRJt002549 for perforce@freebsd.org; Wed, 27 Aug 2003 09:13:27 -0700 (PDT) Date: Wed, 27 Aug 2003 09:13:27 -0700 (PDT) Message-Id: <200308271613.h7RGDRJt002549@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37027 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 16:13:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=37027 Change 37027 by cvance@cvance_release on 2003/08/27 09:13:22 Link sebsd_loadpolicy into the build. Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.sbin/Makefile#4 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/usr.sbin/Makefile#4 (text+ko) ==== @@ -102,6 +102,7 @@ rtsold \ rwhod \ sa \ + sebsd_loadpolicy \ setkey \ setpmac \ sliplogin \ From owner-p4-projects@FreeBSD.ORG Wed Aug 27 09:43:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9319E16A500; Wed, 27 Aug 2003 09:43:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 50B6816A4FD for ; Wed, 27 Aug 2003 09:43:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B412C4400D for ; Wed, 27 Aug 2003 09:43:05 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RGh50U003680 for ; Wed, 27 Aug 2003 09:43:05 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RGh5qk003677 for perforce@freebsd.org; Wed, 27 Aug 2003 09:43:05 -0700 (PDT) Date: Wed, 27 Aug 2003 09:43:05 -0700 (PDT) Message-Id: <200308271643.h7RGh5qk003677@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37030 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 16:43:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=37030 Change 37030 by cvance@cvance_release on 2003/08/27 09:42:20 Sync context mangling code with the most recent SELinux distribution. Affected files ... .. //depot/projects/trustedbsd/sebsd/lib/libsebsd/context.c#2 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/lib/libsebsd/context.c#2 (text+ko) ==== @@ -19,12 +19,12 @@ * 4 colon-separated components and no whitespace. */ context_t -context_new(char *str) +context_new(const char *str) { - int i,j,count,has_level; + int i,count; context_private_t *n = (context_private_t*) malloc(sizeof(context_private_t)); context_t result = (context_t) malloc(sizeof(context_s_t)); - char *p,*tok; + const char *p,*tok; if ( n == 0 || result == 0 ) { goto err; } n->current_str = n->component[0] = n->component[1] = n->component[2] = @@ -43,6 +43,8 @@ for ( i = 0, tok = str; *tok; i++ ) { for ( p = tok; *p && *p != ':'; p++ ) { /* empty */ } n->component[i] = (char*) malloc(p-tok+1); + if (n->component[i] == 0) + goto err; strncpy(n->component[i],tok,p-tok); n->component[i][p-tok] = '\0'; tok = *p ? p+1 : p; @@ -116,10 +118,10 @@ /* Returns nonzero iff failed */ -static int set_comp(context_private_t* n,int index,char *str) +static int set_comp(context_private_t* n,int index, const char *str) { char *t = (char*) malloc(strlen(str)+1); - char *p; + const char *p; if ( !t ) { return 1; } for ( p = str; *p; p++ ) { if ( *p == '\t' || *p == ' ' || *p == '\n' || *p == '\r' || @@ -135,7 +137,7 @@ } #define def_get(name,tag) \ -char * context_ ## name ## _get(context_t context) \ +const char * context_ ## name ## _get(context_t context) \ { \ context_private_t *n = context->ptr; \ return n->component[tag]; \ @@ -147,7 +149,7 @@ def_get(role,COMP_ROLE) #define def_set(name,tag) \ -int context_ ## name ## _set(context_t context, char* str) \ +int context_ ## name ## _set(context_t context, const char* str) \ { \ return set_comp(context->ptr,tag,str);\ } @@ -156,7 +158,7 @@ def_set(role,COMP_ROLE) def_set(user,COMP_USER) -int context_range_set(context_t context,char* str) +int context_range_set(context_t context,const char* str) { context_private_t *n = context->ptr; if ( ! n->component[COMP_RANGE] ) { From owner-p4-projects@FreeBSD.ORG Wed Aug 27 12:49:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 20F4516A4C2; Wed, 27 Aug 2003 12:49:53 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E254116A4C0 for ; Wed, 27 Aug 2003 12:49:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 75F9443FE1 for ; Wed, 27 Aug 2003 12:49:52 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RJnq0U018712 for ; Wed, 27 Aug 2003 12:49:52 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RJnq2B018709 for perforce@freebsd.org; Wed, 27 Aug 2003 12:49:52 -0700 (PDT) Date: Wed, 27 Aug 2003 12:49:52 -0700 (PDT) Message-Id: <200308271949.h7RJnq2B018709@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37032 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 19:49:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=37032 Change 37032 by cvance@cvance_release on 2003/08/27 12:49:43 Synchronize with most recent NSA release Affected files ... .. //depot/projects/trustedbsd/sebsd/lib/libsebsd/sebsd_context.h#2 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/lib/libsebsd/sebsd_context.h#2 (text+ko) ==== @@ -48,7 +48,7 @@ /* Return a new context initialized to a context string */ -extern context_t context_new(char *); +extern context_t context_new(const char *); /* * Return a pointer to the string value of the context_t @@ -63,16 +63,16 @@ /* Get a pointer to the string value of a context component */ -extern char* context_type_get(context_t); -extern char* context_level_get(context_t); -extern char* context_role_get(context_t); -extern char* context_user_get(context_t); +extern const char* context_type_get(context_t); +extern const char* context_range_get(context_t); +extern const char* context_role_get(context_t); +extern const char* context_user_get(context_t); /* Set a context component. Returns nonzero if unsuccessful */ -extern int context_type_set(context_t,char*); -extern int context_level_set(context_t,char*); -extern int context_role_set(context_t,char*); -extern int context_user_set(context_t,char*); +extern int context_type_set(context_t,const char*); +extern int context_range_set(context_t,const char*); +extern int context_role_set(context_t,const char*); +extern int context_user_set(context_t,const char*); #endif From owner-p4-projects@FreeBSD.ORG Wed Aug 27 12:51:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B8AF716A4C1; Wed, 27 Aug 2003 12:51:56 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9267D16A4BF for ; Wed, 27 Aug 2003 12:51:56 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DA50A43F85 for ; Wed, 27 Aug 2003 12:51:55 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RJpt0U018901 for ; Wed, 27 Aug 2003 12:51:55 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RJptFT018898 for perforce@freebsd.org; Wed, 27 Aug 2003 12:51:55 -0700 (PDT) Date: Wed, 27 Aug 2003 12:51:55 -0700 (PDT) Message-Id: <200308271951.h7RJptFT018898@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37033 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 19:51:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=37033 Change 37033 by cvance@cvance_release on 2003/08/27 12:51:09 Add support for the get_default_type call, when provided with a user role, it will attempt to find a corresponding type. This source was "ported" from SELinux; essentially no changes were made. Affected files ... .. //depot/projects/trustedbsd/sebsd/lib/libsebsd/Makefile#4 edit .. //depot/projects/trustedbsd/sebsd/lib/libsebsd/get_default_type.c#1 add .. //depot/projects/trustedbsd/sebsd/lib/libsebsd/sebsd.h#3 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/lib/libsebsd/Makefile#4 (text+ko) ==== @@ -14,7 +14,8 @@ SRCS= system.c security_get_user_contexts.c get_ordered_context_list.c \ getseccontext.c query_user_context.c security_change_context.c \ - string_to_security_class.c security_compute_av.c context.c + string_to_security_class.c security_compute_av.c context.c \ + get_default_type.c INCS= sebsd_context.h sebsd_ss.h sebsd_proc.h sebsd_fs.h sebsd.h \ sebsd_syscalls.h flask_types.h ==== //depot/projects/trustedbsd/sebsd/lib/libsebsd/sebsd.h#3 (text+ko) ==== @@ -70,4 +70,14 @@ int security_compute_av(struct security_query *query, struct security_response *response); + + +/* + * Get the default type (domain) for 'role' and set 'type' to refer to it. + * Caller must free via free(). + * Return 0 on success or -1 otherwise. + */ +#define _DEFTYPE_PATH "/etc/security/sebsd/default_type" +int get_default_type (const char* role, char** type); + #endif /* _SEBSD_H */ From owner-p4-projects@FreeBSD.ORG Wed Aug 27 12:52:58 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9EB7316A4C1; Wed, 27 Aug 2003 12:52:58 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7671C16A4BF for ; Wed, 27 Aug 2003 12:52:58 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0DF5843FD7 for ; Wed, 27 Aug 2003 12:52:58 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RJqv0U018981 for ; Wed, 27 Aug 2003 12:52:57 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RJqvmp018978 for perforce@freebsd.org; Wed, 27 Aug 2003 12:52:57 -0700 (PDT) Date: Wed, 27 Aug 2003 12:52:57 -0700 (PDT) Message-Id: <200308271952.h7RJqvmp018978@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37034 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 19:52:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=37034 Change 37034 by cvance@cvance_release on 2003/08/27 12:52:21 For extra suffering, make multi-label support the default for sysintall-auto-created partitions. Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/label.c#6 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/label.c#6 (text+ko) ==== @@ -335,7 +335,7 @@ pi->newfs_type = NEWFS_UFS; strcpy(pi->newfs_data.newfs_ufs.user_options, ""); pi->newfs_data.newfs_ufs.acls = FALSE; - pi->newfs_data.newfs_ufs.multilabel = FALSE; + pi->newfs_data.newfs_ufs.multilabel = TRUE pi->newfs_data.newfs_ufs.softupdates = strcmp(mpoint, "/"); #ifdef PC98 pi->newfs_data.newfs_ufs.ufs1 = TRUE; From owner-p4-projects@FreeBSD.ORG Wed Aug 27 13:00:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 520EB16A4C2; Wed, 27 Aug 2003 13:00:08 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2035616A4C0 for ; Wed, 27 Aug 2003 13:00:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3963B43FF9 for ; Wed, 27 Aug 2003 13:00:07 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RK070U019294 for ; Wed, 27 Aug 2003 13:00:07 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RK06pD019291 for perforce@freebsd.org; Wed, 27 Aug 2003 13:00:06 -0700 (PDT) Date: Wed, 27 Aug 2003 13:00:06 -0700 (PDT) Message-Id: <200308272000.h7RK06pD019291@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37035 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 20:00:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=37035 Change 37035 by cvance@cvance_release on 2003/08/27 12:59:40 Newrole program, based on the version from SELinux, but almost completely re-written. This should be considered "early access" code, it still has quite a few known defects, but the base functionality is present. Note: ttys are NOT relabeled appropriately yet (working on it). Note: if you don't specify a type on the command line, it will try to find an appropriate one by consulting /etc/security/sebsd/default_type (which isn't installed by default) Note: I don't fully understand PAM. I used PAM for authentication. This might not be done right (requires that the program is setuid?) Note: The SELinux counterpart did some weird fork & exec business, whereas I just mac_execve over the current program. Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_newrole/Makefile#1 add .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_newrole/sebsd_newrole.1#1 add .. //depot/projects/trustedbsd/sebsd/usr.sbin/sebsd_newrole/sebsd_newrole.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Wed Aug 27 13:03:12 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A121616A4C1; Wed, 27 Aug 2003 13:03:12 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 64E6916A4BF for ; Wed, 27 Aug 2003 13:03:12 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AB25D43FD7 for ; Wed, 27 Aug 2003 13:03:11 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RK3B0U020394 for ; Wed, 27 Aug 2003 13:03:11 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RK3BvC020391 for perforce@freebsd.org; Wed, 27 Aug 2003 13:03:11 -0700 (PDT) Date: Wed, 27 Aug 2003 13:03:11 -0700 (PDT) Message-Id: <200308272003.h7RK3BvC020391@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37036 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 20:03:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=37036 Change 37036 by marcel@marcel_nfs on 2003/08/27 13:02:20 Introduce the notion of a system device as a way to abstract consoles, keyboards and debug ports. Key in this is the use of the already existent struct devinfo to represent a system device. It roughly works like this: o Some low-level probing, possibly unknown to uart(4) itself results in the creation of a devinfo structure, the details of which vary per system device, architecture or setup. The active system devices are put on an SLIST. An example can be found in uart_tty.c where the system console is created. o During bus enumeration when we probe the UART, we walk over the SLIST to see if the current UART is also a system device and update the sc_sysdev pointer in the softc to reflect this. o The devinfo structure contains 2 function pointers: attach and detach that can be used to setup (and teardown) a high- level interface other than TTY. For a keyboard you probably want a kbd device with different ioctls than for a generic TTY device. NOTE: the sc_console, sc_dbgport and sc_keyboard bit flags are gone and replaced by a type field in the devinfo structure. This means that a console cannot also serve as a debug port for example. This may eventually be a problem. However, before we can allow "doubling" we need to solve some structural problems first. The limitation is therefore real. For example: If both the console and the dbgport have attach functions, how do you handle that? Both will create a SWI, what's up with that? Liked by: jake Affected files ... .. //depot/projects/uart/dev/uart/uart_bus.h#19 edit .. //depot/projects/uart/dev/uart/uart_core.c#25 edit .. //depot/projects/uart/dev/uart/uart_cpu.h#5 edit .. //depot/projects/uart/dev/uart/uart_dev_ns8250.c#21 edit .. //depot/projects/uart/dev/uart/uart_dev_sab82532.c#17 edit .. //depot/projects/uart/dev/uart/uart_tty.c#7 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_bus.h#19 (text+ko) ==== @@ -105,16 +105,15 @@ int sc_irid; int sc_callout:1; /* This UART is opened for callout. */ - int sc_console:1; /* This UART is a console. */ - int sc_dbgport:1; /* This UART is a debug port. */ int sc_fastintr:1; /* This UART uses fast interrupts. */ int sc_hasfifo:1; /* This UART has FIFOs. */ - int sc_keyboard:1; /* This UART is a keyboard. */ int sc_leaving:1; /* This UART is going away. */ int sc_opened:1; /* This UART is open for business. */ int sc_polled:1; /* This UART has no interrupts. */ int sc_txbusy:1; /* This UART is transmitting. */ + struct uart_devinfo *sc_sysdev; /* System device (or NULL). */ + int sc_altbrk; /* State for alt break sequence. */ int sc_hwsig; /* Signal state. Used by HW driver. */ ==== //depot/projects/uart/dev/uart/uart_core.c#25 (text+ko) ==== @@ -41,6 +41,7 @@ #include #include #include +#include #include #include #include @@ -60,8 +61,17 @@ devclass_t uart_devclass; char uart_driver_name[] = "uart"; +SLIST_HEAD(uart_devinfo_list, uart_devinfo) uart_sysdevs = + SLIST_HEAD_INITIALIZER(uart_sysdevs); + MALLOC_DEFINE(M_UART, "UART", "UART driver"); +void +uart_add_sysdev(struct uart_devinfo *di) +{ + SLIST_INSERT_HEAD(&uart_sysdevs, di, next); +} + /* * A break condition has been detected. We treat the break condition as * a special case that should not happen during normal operation. When @@ -76,7 +86,7 @@ { #if defined(DDB) && defined(BREAK_TO_DEBUGGER) - if (sc->sc_console || sc->sc_dbgport) { + if (sc->sc_sysdev != NULL && sc->sc_sysdev->type == UART_DEV_CONSOLE) { breakpoint(); return; } @@ -124,7 +134,7 @@ rxp = sc->sc_rxput; UART_RECEIVE(sc); #if defined(DDB) && defined(ALT_BREAK_TO_DEBUGGER) - if (sc->sc_console || sc->sc_dbgport) { + if (sc->sc_sysdev != NULL && sc->sc_sysdev->type == UART_DEV_CONSOLE) { while (rxp != sc->sc_rxput) { if (db_alt_break(sc->sc_rxbuf[rxp++], &sc->sc_altbrk)) breakpoint(); @@ -201,6 +211,7 @@ uart_bus_probe(device_t dev, int regshft, int rclk, int rid) { struct uart_softc *sc; + struct uart_devinfo *sysdev; int error; /* @@ -248,21 +259,13 @@ sc->sc_bas.regshft = regshft; sc->sc_bas.rclk = (rclk == 0) ? sc->sc_class->uc_rclk : rclk; - if (uart_console.consdev != NULL && - uart_cpu_eqres(&sc->sc_bas, &uart_console.bas)) { - sc->sc_console = 1; - /* XXX check if ops matches class. */ - } -#if NOTYET - if (uart_cpu_eqres(&sc->sc_bas, &uart_dbgport.bas)) { - sc->sc_dbgport = 1; - /* XXX check if ops matches class. */ + SLIST_FOREACH(sysdev, &uart_sysdevs, next) { + if (uart_cpu_eqres(&sc->sc_bas, &sysdev->bas)) { + /* XXX check if ops matches class. */ + sc->sc_sysdev = sysdev; + break; + } } - if (uart_cpu_eqres(&sc->sc_bas, &uart_keyboard.bas)) { - sc->sc_keyboard = 1; - /* XXX check if ops matches class. */ - } -#endif error = UART_PROBE(sc); bus_release_resource(dev, sc->sc_rtype, sc->sc_rrid, sc->sc_rres); @@ -342,22 +345,21 @@ if (error) goto fail; - if (sc->sc_console || sc->sc_dbgport || sc->sc_keyboard) { - sep = ""; - device_print_prettyname(dev); - if (sc->sc_console) { - printf("%sconsole", sep); - sep = ", "; - } - if (sc->sc_dbgport) { - printf("%sdebug port", sep); - sep = ", "; - } - if (sc->sc_keyboard) { - printf("%skeyboard", sep); - sep = ", "; + if (sc->sc_sysdev != NULL) { + switch (sc->sc_sysdev->type) { + case UART_DEV_CONSOLE: + device_printf(dev, "console\n"); + break; + case UART_DEV_DBGPORT: + device_printf(dev, "debug port\n"); + break; + case UART_DEV_KEYBOARD: + device_printf(dev, "keyboard\n"); + break; + default: + device_printf(dev, "unknown system device\n"); + break; } - printf("\n"); } if (bootverbose && (sc->sc_fastintr || sc->sc_polled)) { @@ -374,11 +376,8 @@ printf("\n"); } - if (sc->sc_keyboard) { - /* Keyboard specific attachment. */ - } else - error = uart_tty_attach(sc); - + error = (sc->sc_sysdev != NULL && sc->sc_sysdev->attach != NULL) + ? (*sc->sc_sysdev->attach)(sc) : uart_tty_attach(sc); if (error) goto fail; @@ -411,9 +410,9 @@ UART_DETACH(sc); - if (sc->sc_keyboard) { - /* Keyboard specific detachment. */ - } else + if (sc->sc_sysdev != NULL && sc->sc_sysdev->detach != NULL) + (*sc->sc_sysdev->detach)(sc); + else uart_tty_detach(sc); free(sc->sc_txbuf, M_UART); ==== //depot/projects/uart/dev/uart/uart_cpu.h#5 (text+ko) ==== @@ -47,27 +47,29 @@ /* * Console and debug port device info. */ +struct uart_softc; struct uart_devinfo { + SLIST_ENTRY(uart_devinfo) next; struct uart_ops ops; struct uart_bas bas; int baudrate; int databits; int stopbits; int parity; - void *consdev; /* Yedi trick. See uart_cons.c */ -}; - -extern struct uart_devinfo uart_console; -extern struct uart_devinfo uart_dbgport; -extern struct uart_devinfo uart_keyboard; - + int type; #define UART_DEV_CONSOLE 0 #define UART_DEV_DBGPORT 1 #define UART_DEV_KEYBOARD 2 + int (*attach)(struct uart_softc*); + int (*detach)(struct uart_softc*); + void *consdev; /* Yedi trick. See uart_cons.c */ +}; int uart_cpu_getdev(int devtype, struct uart_devinfo *di); int uart_cpu_eqres(struct uart_bas *b1, struct uart_bas *b2); +void uart_add_sysdev(struct uart_devinfo*); + /* * Operations for low-level access to the UART. Primarily for use * by console and debug port logic. ==== //depot/projects/uart/dev/uart/uart_dev_ns8250.c#21 (text+ko) ==== @@ -507,7 +507,7 @@ return (error); mcr = MCR_IENABLE; - if (!sc->sc_console && !sc->sc_dbgport && !sc->sc_keyboard) { + if (sc->sc_sysdev == NULL) { /* By using ns8250_init() we also set DTR and RTS. */ ns8250_init(bas, 9600, 8, 1, UART_PARITY_NONE); } else ==== //depot/projects/uart/dev/uart/uart_dev_sab82532.c#17 (text+ko) ==== @@ -383,7 +383,7 @@ uint8_t imr0, imr1; bas = &sc->sc_bas; - if (!sc->sc_console && !sc->sc_dbgport && !sc->sc_keyboard) + if (sc->sc_sysdev == NULL) sab82532_init(bas, 9600, 8, 1, UART_PARITY_NONE); sc->sc_rxfifosz = 32; ==== //depot/projects/uart/dev/uart/uart_tty.c#7 (text+ko) ==== @@ -79,7 +79,7 @@ .d_kqfilter = ttykqfilter, }; -struct uart_devinfo uart_console = { .consdev = NULL }; +struct uart_devinfo uart_console; static void uart_cnprobe(struct consdev *cp) @@ -93,7 +93,7 @@ if (uart_cpu_getdev(UART_DEV_CONSOLE, &uart_console)) return; - if (uart_console.ops.probe(&uart_console.bas)) + if (uart_probe(&uart_console)) return; cp->cn_pri = (boothowto & RB_SERIAL) ? CN_REMOTE : CN_NORMAL; @@ -117,7 +117,8 @@ di = cp->cn_arg; KASSERT(di->consdev == NULL, ("foo")); di->consdev = cp; - + di->type = UART_DEV_CONSOLE; + uart_add_sysdev(di); uart_init(di); } @@ -190,9 +191,9 @@ return (ENODEV); if (t->c_ispeed != t->c_ospeed && t->c_ospeed != 0) return (EINVAL); - /* Hardwire the console speed. */ - if (sc->sc_console) - t->c_ispeed = t->c_ospeed = uart_console.baudrate; + /* Hardwire the speed of system devices. */ + if (sc->sc_sysdev != NULL) + t->c_ispeed = t->c_ospeed = sc->sc_sysdev->baudrate; if (t->c_ospeed == 0) { UART_SETSIG(sc, UART_SIG_DDTR | UART_SIG_DRTS); return (0); @@ -214,7 +215,7 @@ if ((t->c_cflag & CRTS_IFLOW) == 0) UART_SETSIG(sc, UART_SIG_DRTS | UART_SIG_RTS); ttsetwater(tp); - if (sc->sc_console) { + if (sc->sc_sysdev != NULL) { tp->t_cflag |= CLOCAL; tp->t_cflag &= ~HUPCL; } @@ -311,8 +312,8 @@ tp->t_param = uart_tty_param; tp->t_stop = uart_tty_stop; - if (sc->sc_console) { - ((struct consdev *)uart_console.consdev)->cn_dev = + if (sc->sc_sysdev != NULL && sc->sc_sysdev->type == UART_DEV_CONSOLE) { + ((struct consdev *)sc->sc_sysdev->consdev)->cn_dev = makedev(uart_cdevsw.d_maj, device_get_unit(sc->sc_dev)); } @@ -386,10 +387,7 @@ tp->t_iflag = TTYDEF_IFLAG; tp->t_lflag = TTYDEF_LFLAG; tp->t_oflag = TTYDEF_OFLAG; - if (sc->sc_console) - tp->t_ispeed = tp->t_ospeed = uart_console.baudrate; - else - tp->t_ispeed = tp->t_ospeed = TTYDEF_SPEED; + tp->t_ispeed = tp->t_ospeed = TTYDEF_SPEED; ttychars(tp); error = uart_tty_param(tp, &tp->t_termios); if (error) @@ -441,7 +439,7 @@ } KASSERT(tp->t_state & TS_ISOPEN, ("foo")); - if (!sc->sc_console) + if (sc->sc_sysdev == NULL) UART_SETSIG(sc, UART_SIG_DDTR | UART_SIG_DRTS); (*linesw[tp->t_line].l_close)(tp, flags); From owner-p4-projects@FreeBSD.ORG Wed Aug 27 14:20:47 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 88C3F16A4C1; Wed, 27 Aug 2003 14:20:47 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 459CF16A4BF for ; Wed, 27 Aug 2003 14:20:47 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CC5B343FAF for ; Wed, 27 Aug 2003 14:20:46 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RLKk0U024067 for ; Wed, 27 Aug 2003 14:20:46 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RLKk1G024064 for perforce@freebsd.org; Wed, 27 Aug 2003 14:20:46 -0700 (PDT) Date: Wed, 27 Aug 2003 14:20:46 -0700 (PDT) Message-Id: <200308272120.h7RLKk1G024064@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 37038 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 21:20:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=37038 Change 37038 by sam@sam_ebb on 2003/08/27 14:20:07 remove explicit unlocks before destroying the mutex; whatever caused the panic's appears to be fixed Affected files ... .. //depot/projects/netperf/sys/net/route.c#6 edit Differences ... ==== //depot/projects/netperf/sys/net/route.c#6 (text+ko) ==== @@ -275,7 +275,6 @@ /* * and the rtentry itself of course */ - RT_UNLOCK(rt); RT_LOCK_DESTROY(rt); Free(rt); return; @@ -649,7 +648,6 @@ */ RT_LOCK(rt); if ((error = rt_setgate(rt, dst, gateway)) != 0) { - RT_UNLOCK(rt); RT_LOCK_DESTROY(rt); Free(rt); senderr(error); @@ -713,7 +711,6 @@ if (rt->rt_ifa) IFAFREE(rt->rt_ifa); Free(rt_key(rt)); - RT_UNLOCK(rt); RT_LOCK_DESTROY(rt); Free(rt); senderr(EEXIST); From owner-p4-projects@FreeBSD.ORG Wed Aug 27 15:11:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7031E16A4C1; Wed, 27 Aug 2003 15:11:51 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1A25416A4BF for ; Wed, 27 Aug 2003 15:11:51 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 036A843FA3 for ; Wed, 27 Aug 2003 15:11:50 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RMBn0U026781 for ; Wed, 27 Aug 2003 15:11:49 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RMBnYn026778 for perforce@freebsd.org; Wed, 27 Aug 2003 15:11:49 -0700 (PDT) Date: Wed, 27 Aug 2003 15:11:49 -0700 (PDT) Message-Id: <200308272211.h7RMBnYn026778@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 37040 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 22:11:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=37040 Change 37040 by sam@sam_ebb on 2003/08/27 15:11:34 Checkpoint multicast routing locking. From the code: We use two locks: one for the virtual interface table and one for the forwarding table. These locks may be nested in which case the VIF lock must always be taken first. Note that each lock is used to cover not only the specific data structure but also related data structures. It may be better to add more fine-grained locking later; it's not clear to me how performance-critical this code is. Needs thorough review and testing. Affected files ... .. //depot/projects/netperf/sys/netinet/ip_mroute.c#6 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_mroute.c#6 (text+ko) ==== @@ -81,6 +81,15 @@ static MALLOC_DEFINE(M_MRTABLE, "mroutetbl", "multicast routing tables"); +/* + * Locking. We use two locks: one for the virtual interface table and + * one for the forwarding table. These locks may be nested in which case + * the VIF lock must always be taken first. Note that each lock is used + * to cover not only the specific data structure but also related data + * structures. It may be better to add more fine-grained locking later; + * it's not clear to me how performance-critical this code is. + */ + static struct mrtstat mrtstat; SYSCTL_STRUCT(_net_inet_ip, OID_AUTO, mrtstat, CTLFLAG_RW, &mrtstat, mrtstat, @@ -91,14 +100,28 @@ &mfctable, sizeof(mfctable), "S,*mfc[MFCTBLSIZ]", "Multicast Forwarding Table (struct *mfc[MFCTBLSIZ], netinet/ip_mroute.h)"); +static struct mtx mfc_mtx; +#define MFC_LOCK() mtx_lock(&mfc_mtx) +#define MFC_UNLOCK() mtx_unlock(&mfc_mtx) +#define MFC_LOCK_ASSERT() mtx_assert(&mfc_mtx, MA_OWNED) +#define MFC_LOCK_INIT() mtx_init(&mfc_mtx, "mroute mfc table", NULL, MTX_DEF) +#define MFC_LOCK_DESTROY() mtx_destroy(&mfc_mtx) + static struct vif viftable[MAXVIFS]; SYSCTL_OPAQUE(_net_inet_ip, OID_AUTO, viftable, CTLFLAG_RD, &viftable, sizeof(viftable), "S,vif[MAXVIFS]", "Multicast Virtual Interfaces (struct vif[MAXVIFS], netinet/ip_mroute.h)"); +static struct mtx vif_mtx; +#define VIF_LOCK() mtx_lock(&vif_mtx) +#define VIF_UNLOCK() mtx_unlock(&vif_mtx) +#define VIF_LOCK_ASSERT() mtx_assert(&vif_mtx, MA_OWNED) +#define VIF_LOCK_INIT() mtx_init(&vif_mtx, "mroute vif table", NULL, MTX_DEF) +#define VIF_LOCK_DESTROY() mtx_destroy(&vif_mtx) + static u_char nexpire[MFCTBLSIZ]; -static struct callout_handle expire_upcalls_ch; +static struct callout expire_upcalls_ch; #define EXPIRE_TIMEOUT (hz / 4) /* 4x / second */ #define UPCALL_EXPIRE 6 /* number of timeouts */ @@ -149,7 +172,7 @@ */ #define BW_METER_BUCKETS 1024 static struct bw_meter *bw_meter_timers[BW_METER_BUCKETS]; -static struct callout_handle bw_meter_ch; +static struct callout bw_meter_ch; #define BW_METER_PERIOD (hz) /* periodical handling of bw meters */ /* @@ -158,7 +181,7 @@ */ static struct bw_upcall bw_upcalls[BW_UPCALLS_MAX]; static u_int bw_upcalls_n; /* # of pending upcalls */ -static struct callout_handle bw_upcalls_ch; +static struct callout bw_upcalls_ch; #define BW_UPCALLS_PERIOD (hz) /* periodical flush of bw upcalls */ #ifdef PIM @@ -226,6 +249,11 @@ static u_long last_encap_src; static struct vif *last_encap_vif; +/* + * Callout for queue processing. + */ +static struct callout tbf_reprocess_ch; + static u_long X_ip_mcast_src(int vifi); static int X_ip_mforward(struct ip *ip, struct ifnet *ifp, struct mbuf *m, struct ip_moptions *imo); @@ -321,6 +349,8 @@ { struct mfc *rt; + MFC_LOCK_ASSERT(); + for (rt = mfctable[MFCHASH(o,g)]; rt; rt = rt->mfc_next) if ((rt->mfc_origin.s_addr == o) && (rt->mfc_mcastgrp.s_addr == g) && (rt->mfc_stall == NULL)) @@ -515,12 +545,11 @@ static int get_sg_cnt(struct sioc_sg_req *req) { - int s; struct mfc *rt; - s = splnet(); + MFC_LOCK(); rt = mfc_find(req->src.s_addr, req->grp.s_addr); - splx(s); + MFC_UNLOCK(); if (rt == NULL) { req->pktcnt = req->bytecnt = req->wrong_if = 0xffffffff; return EADDRNOTAVAIL; @@ -572,16 +601,24 @@ ip_mrouter = so; bzero((caddr_t)mfctable, sizeof(mfctable)); + MFC_LOCK_INIT(); + VIF_LOCK_INIT(); bzero((caddr_t)nexpire, sizeof(nexpire)); pim_assert = 0; - expire_upcalls_ch = timeout(expire_upcalls, NULL, EXPIRE_TIMEOUT); + callout_init(&expire_upcalls_ch, CALLOUT_MPSAFE); + callout_reset(&expire_upcalls_ch, EXPIRE_TIMEOUT, expire_upcalls, NULL); bw_upcalls_n = 0; bzero((caddr_t)bw_meter_timers, sizeof(bw_meter_timers)); - bw_upcalls_ch = timeout(expire_bw_upcalls_send, NULL, BW_UPCALLS_PERIOD); - bw_meter_ch = timeout(expire_bw_meter_process, NULL, BW_METER_PERIOD); + callout_init(&bw_upcalls_ch, CALLOUT_MPSAFE); + callout_reset(&bw_upcalls_ch, BW_UPCALLS_PERIOD, + expire_bw_upcalls_send, NULL); + callout_init(&bw_meter_ch, CALLOUT_MPSAFE); + callout_reset(&bw_meter_ch, BW_METER_PERIOD, expire_bw_meter_process, NULL); + + callout_init(&tbf_reprocess_ch, CALLOUT_MPSAFE); mrt_api_config = 0; @@ -603,9 +640,19 @@ struct ifreq ifr; struct mfc *rt; struct rtdetq *rte; - int s; + + /* + * Detach/disable hooks to the reset of the system. + */ + ip_mrouter = NULL; + mrt_api_config = 0; - s = splnet(); + VIF_LOCK(); + if (encap_cookie) { + encap_detach(encap_cookie); + encap_cookie = NULL; + } + callout_stop(&tbf_reprocess_ch); /* * For each phyint in use, disable promiscuous reception of all IP @@ -627,17 +674,17 @@ bzero((caddr_t)viftable, sizeof(viftable)); numvifs = 0; pim_assert = 0; - - untimeout(expire_upcalls, NULL, expire_upcalls_ch); - - mrt_api_config = 0; - bw_upcalls_n = 0; - untimeout(expire_bw_upcalls_send, NULL, bw_upcalls_ch); - untimeout(expire_bw_meter_process, NULL, bw_meter_ch); + VIF_UNLOCK(); + VIF_LOCK_DESTROY(); /* * Free all multicast forwarding cache entries. */ + MFC_LOCK(); + callout_stop(&expire_upcalls_ch); + callout_stop(&bw_upcalls_ch); + callout_stop(&bw_meter_ch); + for (i = 0; i < MFCTBLSIZ; i++) { for (rt = mfctable[i]; rt != NULL; ) { struct mfc *nr = rt->mfc_next; @@ -654,10 +701,11 @@ rt = nr; } } - bzero((caddr_t)mfctable, sizeof(mfctable)); - + bw_upcalls_n = 0; bzero(bw_meter_timers, sizeof(bw_meter_timers)); + MFC_UNLOCK(); + MFC_LOCK_DESTROY(); /* * Reset de-encapsulation cache @@ -668,15 +716,6 @@ reg_vif_num = VIFI_INVALID; #endif - if (encap_cookie) { - encap_detach(encap_cookie); - encap_cookie = NULL; - } - - ip_mrouter = NULL; - - splx(s); - if (mrtdebug) log(LOG_DEBUG, "ip_mrouter_done\n"); @@ -824,15 +863,22 @@ struct sockaddr_in sin = {sizeof sin, AF_INET}; struct ifaddr *ifa; struct ifnet *ifp; - int error, s; + int error; struct tbf *v_tbf = tbftable + vifcp->vifc_vifi; - if (vifcp->vifc_vifi >= MAXVIFS) + VIF_LOCK(); + if (vifcp->vifc_vifi >= MAXVIFS) { + VIF_UNLOCK(); return EINVAL; - if (vifp->v_lcl_addr.s_addr != INADDR_ANY) + } + if (vifp->v_lcl_addr.s_addr != INADDR_ANY) { + VIF_UNLOCK(); return EADDRINUSE; - if (vifcp->vifc_lcl_addr.s_addr == INADDR_ANY) + } + if (vifcp->vifc_lcl_addr.s_addr == INADDR_ANY) { + VIF_UNLOCK(); return EADDRNOTAVAIL; + } /* Find the interface with an address in AF_INET family */ #ifdef PIM @@ -861,17 +907,20 @@ * to encapsulated packets. */ if (encap_cookie == NULL) { + int i; + encap_cookie = encap_attach_func(AF_INET, IPPROTO_IPV4, mroute_encapcheck, (struct protosw *)&mroute_encap_protosw, NULL); if (encap_cookie == NULL) { printf("ip_mroute: unable to attach encap\n"); + VIF_UNLOCK(); return EIO; /* XXX */ } - for (s = 0; s < MAXVIFS; ++s) { - multicast_decap_if[s].if_name = "mdecap"; - multicast_decap_if[s].if_unit = s; + for (i = 0; i < MAXVIFS; ++i) { + multicast_decap_if[i].if_name = "mdecap"; + multicast_decap_if[i].if_unit = i; } } /* @@ -884,6 +933,7 @@ bzero(&vifp->v_route, sizeof(vifp->v_route)); } else { log(LOG_ERR, "source routed tunnels not supported\n"); + VIF_UNLOCK(); return EOPNOTSUPP; } #ifdef PIM @@ -901,18 +951,19 @@ } #endif } else { /* Make sure the interface supports multicast */ - if ((ifp->if_flags & IFF_MULTICAST) == 0) + if ((ifp->if_flags & IFF_MULTICAST) == 0) { + VIF_UNLOCK(); return EOPNOTSUPP; + } /* Enable promiscuous reception of all IP multicasts from the if */ - s = splnet(); error = if_allmulti(ifp, 1); - splx(s); - if (error) + if (error) { + VIF_UNLOCK(); return error; + } } - s = splnet(); /* define parameters for the tbf structure */ vifp->v_tbf = v_tbf; GET_TIME(vifp->v_tbf->tbf_last_pkt_t); @@ -935,11 +986,12 @@ vifp->v_pkt_out = 0; vifp->v_bytes_in = 0; vifp->v_bytes_out = 0; - splx(s); /* Adjust numvifs up if the vifi is higher than numvifs */ if (numvifs <= vifcp->vifc_vifi) numvifs = vifcp->vifc_vifi + 1; + VIF_UNLOCK(); + if (mrtdebug) log(LOG_DEBUG, "add_vif #%d, lcladdr %lx, %s %lx, thresh %x, rate %d\n", vifcp->vifc_vifi, @@ -959,16 +1011,19 @@ del_vif(vifi_t vifi) { struct vif *vifp; - int s; + + VIF_LOCK(); - if (vifi >= numvifs) + if (vifi >= numvifs) { + VIF_UNLOCK(); return EINVAL; + } vifp = &viftable[vifi]; - if (vifp->v_lcl_addr.s_addr == INADDR_ANY) + if (vifp->v_lcl_addr.s_addr == INADDR_ANY) { + VIF_UNLOCK(); return EADDRNOTAVAIL; + } - s = splnet(); - if (!(vifp->v_flags & (VIFF_TUNNEL | VIFF_REGISTER))) if_allmulti(vifp->v_ifp, 0); @@ -1004,7 +1059,7 @@ break; numvifs = vifi; - splx(s); + VIF_UNLOCK(); return 0; } @@ -1061,6 +1116,8 @@ u_short nstl; int s; + MFC_LOCK(); + rt = mfc_find(mfccp->mfcc_origin.s_addr, mfccp->mfcc_mcastgrp.s_addr); /* If an entry already exists, just update the fields */ @@ -1071,16 +1128,14 @@ (u_long)ntohl(mfccp->mfcc_mcastgrp.s_addr), mfccp->mfcc_parent); - s = splnet(); update_mfc_params(rt, mfccp); - splx(s); + MFC_UNLOCK(); return 0; } /* * Find the entry for which the upcall was made and update */ - s = splnet(); hash = MFCHASH(mfccp->mfcc_origin.s_addr, mfccp->mfcc_mcastgrp.s_addr); for (rt = mfctable[hash], nstl = 0; rt; rt = rt->mfc_next) { @@ -1156,7 +1211,7 @@ mfctable[hash] = rt; } } - splx(s); + MFC_UNLOCK(); return 0; } @@ -1171,7 +1226,6 @@ struct mfc *rt; struct mfc **nptr; u_long hash; - int s; struct bw_meter *list; origin = mfccp->mfcc_origin; @@ -1181,7 +1235,7 @@ log(LOG_DEBUG,"del_mfc orig %lx mcastgrp %lx\n", (u_long)ntohl(origin.s_addr), (u_long)ntohl(mcastgrp.s_addr)); - s = splnet(); + MFC_LOCK(); hash = MFCHASH(origin.s_addr, mcastgrp.s_addr); for (nptr = &mfctable[hash]; (rt = *nptr) != NULL; nptr = &rt->mfc_next) @@ -1190,12 +1244,14 @@ rt->mfc_stall == NULL) break; if (rt == NULL) { - splx(s); + MFC_UNLOCK(); return EADDRNOTAVAIL; } *nptr = rt->mfc_next; + MFC_UNLOCK(); + /* * free the bw_meter entries */ @@ -1204,8 +1260,6 @@ free(rt, M_MRTABLE); - splx(s); - free_bw_list(list); return 0; @@ -1245,7 +1299,7 @@ struct ip_moptions *imo) { struct mfc *rt; - int s; + int error; vifi_t vifi; if (mrtdebug & DEBUG_FORWARD) @@ -1274,6 +1328,7 @@ return 1; } + VIF_LOCK(); if (imo && ((vifi = imo->imo_multicast_vif) < numvifs)) { if (ip->ip_ttl < 255) ip->ip_ttl++; /* compensate for -1 in *_send routines */ @@ -1286,7 +1341,9 @@ (vifp->v_flags & VIFF_TUNNEL) ? "tunnel on " : "", vifp->v_ifp->if_name, vifp->v_ifp->if_unit); } - return ip_mdq(m, ifp, NULL, vifi); + error = ip_mdq(m, ifp, NULL, vifi); + VIF_UNLOCK(); + return error; } if (rsvpdebug && ip->ip_p == IPPROTO_RSVP) { printf("Warning: IPPROTO_RSVP from %lx to %lx without vif option\n", @@ -1299,20 +1356,24 @@ * Don't forward a packet with time-to-live of zero or one, * or a packet destined to a local-only group. */ - if (ip->ip_ttl <= 1 || ntohl(ip->ip_dst.s_addr) <= INADDR_MAX_LOCAL_GROUP) + if (ip->ip_ttl <= 1 || ntohl(ip->ip_dst.s_addr) <= INADDR_MAX_LOCAL_GROUP) { + VIF_UNLOCK(); return 0; + } /* * Determine forwarding vifs from the forwarding cache table */ - s = splnet(); + MFC_LOCK(); ++mrtstat.mrts_mfc_lookups; rt = mfc_find(ip->ip_src.s_addr, ip->ip_dst.s_addr); /* Entry exists, so forward if necessary */ if (rt != NULL) { - splx(s); - return ip_mdq(m, ifp, rt, -1); + MFC_UNLOCK(); + error = ip_mdq(m, ifp, rt, -1); + VIF_UNLOCK(); + return error; } else { /* * If we don't have a route for packet's origin, @@ -1339,7 +1400,8 @@ */ rte = (struct rtdetq *)malloc((sizeof *rte), M_MRTABLE, M_NOWAIT); if (rte == NULL) { - splx(s); + MFC_UNLOCK(); + VIF_UNLOCK(); return ENOBUFS; } mb0 = m_copypacket(m, M_DONTWAIT); @@ -1347,7 +1409,8 @@ mb0 = m_pullup(mb0, hlen); if (mb0 == NULL) { free(rte, M_MRTABLE); - splx(s); + MFC_UNLOCK(); + VIF_UNLOCK(); return ENOBUFS; } @@ -1405,7 +1468,8 @@ fail: free(rte, M_MRTABLE); m_freem(mb0); - splx(s); + MFC_UNLOCK(); + VIF_UNLOCK(); return ENOBUFS; } @@ -1447,7 +1511,8 @@ non_fatal: free(rte, M_MRTABLE); m_freem(mb0); - splx(s); + MFC_UNLOCK(); + VIF_UNLOCK(); return 0; } @@ -1459,7 +1524,8 @@ rte->ifp = ifp; rte->next = NULL; - splx(s); + MFC_UNLOCK(); + VIF_UNLOCK(); return 0; } @@ -1474,9 +1540,8 @@ struct rtdetq *rte; struct mfc *mfc, **nptr; int i; - int s; - s = splnet(); + MFC_LOCK(); for (i = 0; i < MFCTBLSIZ; i++) { if (nexpire[i] == 0) continue; @@ -1524,8 +1589,9 @@ } } } - splx(s); - expire_upcalls_ch = timeout(expire_upcalls, NULL, EXPIRE_TIMEOUT); + MFC_UNLOCK(); + + callout_reset(&expire_upcalls_ch, EXPIRE_TIMEOUT, expire_upcalls, NULL); } /* @@ -1538,6 +1604,7 @@ vifi_t vifi; int plen = ip->ip_len; + VIF_LOCK_ASSERT(); /* * Macro to send packet on vif. Since RSVP packets don't get counted on * input, they shouldn't get counted on output, so statistics keeping is @@ -1675,8 +1742,10 @@ struct timeval now; GET_TIME(now); + MFC_LOCK(); for (x = rt->mfc_bw_meter; x != NULL; x = x->bm_mfc_next) bw_meter_receive_packet(x, plen, &now); + MFC_UNLOCK(); } return 0; @@ -1688,6 +1757,7 @@ static int X_legal_vif_num(int vif) { + /* XXX unlocked, matter? */ return (vif >= 0 && vif < numvifs); } @@ -1697,6 +1767,7 @@ static u_long X_ip_mcast_src(int vifi) { + /* XXX unlocked, matter? */ if (vifi >= 0 && vifi < numvifs) return viftable[vifi].v_lcl_addr.s_addr; else @@ -1709,6 +1780,8 @@ struct mbuf *mb_copy; int hlen = ip->ip_hl << 2; + VIF_LOCK_ASSERT(); + /* * Make a new reference to the packet; make sure that * the IP header is actually copied, not just referenced, @@ -1733,6 +1806,8 @@ struct ip *ip_copy; int i, len = ip->ip_len; + VIF_LOCK_ASSERT(); + /* Take care of delayed checksums */ if (m->m_pkthdr.csum_flags & CSUM_DELAY_DATA) { in_delayed_cksum(m); @@ -1806,6 +1881,8 @@ { struct tbf *t = vifp->v_tbf; + VIF_LOCK_ASSERT(); + if (p_len > MAX_BKT_SIZE) { /* drop if packet is too large */ mrtstat.mrts_pkt2large++; m_freem(m); @@ -1820,7 +1897,8 @@ tbf_send_packet(vifp, m); } else { /* no, queue packet and try later */ tbf_queue(vifp, m); - timeout(tbf_reprocess_q, (caddr_t)vifp, TBF_REPROCESS); + callout_reset(&tbf_reprocess_ch, TBF_REPROCESS, + tbf_reprocess_q, vifp); } } else if (t->tbf_q_len < t->tbf_max_q_len) { /* finite queue length, so queue pkts and process queue */ @@ -1844,9 +1922,10 @@ static void tbf_queue(struct vif *vifp, struct mbuf *m) { - int s = splnet(); struct tbf *t = vifp->v_tbf; + VIF_LOCK_ASSERT(); + if (t->tbf_t == NULL) /* Queue was empty */ t->tbf_q = m; else /* Insert at tail */ @@ -1862,8 +1941,6 @@ m->m_act = NULL; t->tbf_q_len++; - - splx(s); } /* @@ -1872,9 +1949,10 @@ static void tbf_process_q(struct vif *vifp) { - int s = splnet(); struct tbf *t = vifp->v_tbf; + VIF_LOCK_ASSERT(); + /* loop through the queue at the interface and send as many packets * as possible */ @@ -1895,7 +1973,6 @@ m->m_act = NULL; tbf_send_packet(vifp, m); } - splx(s); } static void @@ -1905,10 +1982,12 @@ if (ip_mrouter == NULL) return; + VIF_LOCK(); tbf_update_tokens(vifp); tbf_process_q(vifp); if (vifp->v_tbf->tbf_q_len) - timeout(tbf_reprocess_q, (caddr_t)vifp, TBF_REPROCESS); + callout_reset(&tbf_reprocess_ch, TBF_REPROCESS, tbf_reprocess_q, vifp); + VIF_UNLOCK(); } /* function that will selectively discard a member of the queue @@ -1917,12 +1996,13 @@ static int tbf_dq_sel(struct vif *vifp, struct ip *ip) { - int s = splnet(); u_int p; struct mbuf *m, *last; struct mbuf **np; struct tbf *t = vifp->v_tbf; + VIF_LOCK_ASSERT(); + p = priority(vifp, ip); np = &t->tbf_q; @@ -1937,21 +2017,19 @@ /* It's impossible for the queue to be empty, but check anyways. */ if (--t->tbf_q_len == 0) t->tbf_t = NULL; - splx(s); mrtstat.mrts_drop_sel++; return 1; } np = &m->m_act; last = m; } - splx(s); return 0; } static void tbf_send_packet(struct vif *vifp, struct mbuf *m) { - int s = splnet(); + VIF_LOCK_ASSERT(); if (vifp->v_flags & VIFF_TUNNEL) /* If tunnel options */ ip_output(m, NULL, &vifp->v_route, IP_FORWARDING, NULL, NULL); @@ -1977,7 +2055,6 @@ log(LOG_DEBUG, "phyint_send on vif %d err %d\n", (int)(vifp - viftable), error); } - splx(s); } /* determine the current time and then @@ -1989,9 +2066,10 @@ { struct timeval tp; u_long tm; - int s = splnet(); struct tbf *t = vifp->v_tbf; + VIF_LOCK_ASSERT(); + GET_TIME(tp); TV_DELTA(tp, t->tbf_last_pkt_t, tm); @@ -2010,8 +2088,6 @@ if (t->tbf_n_tok > MAX_BKT_SIZE) t->tbf_n_tok = MAX_BKT_SIZE; - - splx(s); } static int @@ -2054,7 +2130,7 @@ static int X_ip_rsvp_vif(struct socket *so, struct sockopt *sopt) { - int error, vifi, s; + int error, vifi; if (so->so_type != SOCK_RAW || so->so_proto->pr_protocol != IPPROTO_RSVP) return EOPNOTSUPP; @@ -2063,17 +2139,17 @@ if (error) return error; - s = splnet(); + VIF_LOCK(); if (vifi < 0 || vifi >= numvifs) { /* Error if vif is invalid */ - splx(s); + VIF_UNLOCK(); return EADDRNOTAVAIL; } if (sopt->sopt_name == IP_RSVP_VIF_ON) { /* Check if socket is available. */ if (viftable[vifi].v_rsvpd != NULL) { - splx(s); + VIF_UNLOCK(); return EADDRINUSE; } @@ -2101,7 +2177,7 @@ rsvp_on--; } } - splx(s); + VIF_UNLOCK(); return 0; } @@ -2109,13 +2185,12 @@ X_ip_rsvp_force_done(struct socket *so) { int vifi; - int s; /* Don't bother if it is not the right type of socket. */ if (so->so_type != SOCK_RAW || so->so_proto->pr_protocol != IPPROTO_RSVP) return; - s = splnet(); + VIF_LOCK(); /* The socket may be attached to more than one vif...this * is perfectly legal. @@ -2133,7 +2208,7 @@ } } - splx(s); + VIF_UNLOCK(); } static void @@ -2142,7 +2217,6 @@ int vifi; struct ip *ip = mtod(m, struct ip *); struct sockaddr_in rsvp_src = { sizeof rsvp_src, AF_INET }; - int s; struct ifnet *ifp; if (rsvpdebug) @@ -2157,8 +2231,6 @@ return; } - s = splnet(); - if (rsvpdebug) printf("rsvp_input: check vifs\n"); @@ -2167,6 +2239,8 @@ #endif ifp = m->m_pkthdr.rcvif; + + VIF_LOCK(); /* Find which vif the packet arrived on. */ for (vifi = 0; vifi < numvifs; vifi++) if (viftable[vifi].v_ifp == ifp) @@ -2174,6 +2248,12 @@ if (vifi == numvifs || viftable[vifi].v_rsvpd == NULL) { /* + * Drop the lock here to avoid holding it across rip_input. + * This could make rsvpdebug printfs wrong. If you care, + * record the state of stuff before dropping the lock. + */ + VIF_UNLOCK(); + /* * If the old-style non-vif-associated socket is set, * then use it. Otherwise, drop packet since there * is no specific socket for this vif. @@ -2189,7 +2269,6 @@ printf("rsvp_input: No socket defined for vif %d\n",vifi); m_freem(m); } - splx(s); return; } rsvp_src.sin_addr = ip->ip_src; @@ -2205,8 +2284,7 @@ if (rsvpdebug) printf("rsvp_input: send packet up\n"); } - - splx(s); + VIF_UNLOCK(); } /* @@ -2249,7 +2327,6 @@ struct timeval now; struct bw_meter *x; uint32_t flags; - int s; if (!(mrt_api_config & MRT_MFC_BW_UPCALL)) return EOPNOTSUPP; @@ -2272,10 +2349,10 @@ /* * Find if we have already same bw_meter entry */ - s = splnet(); + MFC_LOCK(); mfc = mfc_find(req->bu_src.s_addr, req->bu_dst.s_addr); if (mfc == NULL) { - splx(s); + MFC_UNLOCK(); return EADDRNOTAVAIL; } for (x = mfc->mfc_bw_meter; x != NULL; x = x->bm_mfc_next) { @@ -2284,16 +2361,17 @@ (x->bm_threshold.b_packets == req->bu_threshold.b_packets) && (x->bm_threshold.b_bytes == req->bu_threshold.b_bytes) && (x->bm_flags & BW_METER_USER_FLAGS) == flags) { - splx(s); + MFC_UNLOCK(); return 0; /* XXX Already installed */ } } - splx(s); /* Allocate the new bw_meter entry */ x = (struct bw_meter *)malloc(sizeof(*x), M_BWMETER, M_NOWAIT); - if (x == NULL) + if (x == NULL) { + MFC_UNLOCK(); return ENOBUFS; + } /* Set the new bw_meter entry */ x->bm_threshold.b_time = req->bu_threshold.b_time; @@ -2308,12 +2386,11 @@ x->bm_time_hash = BW_METER_BUCKETS; /* Add the new bw_meter entry to the front of entries for this MFC */ - s = splnet(); x->bm_mfc = mfc; x->bm_mfc_next = mfc->mfc_bw_meter; mfc->mfc_bw_meter = x; schedule_bw_meter(x, &now); - splx(s); + MFC_UNLOCK(); return 0; } @@ -2338,16 +2415,15 @@ { struct mfc *mfc; struct bw_meter *x; - int s; if (!(mrt_api_config & MRT_MFC_BW_UPCALL)) return EOPNOTSUPP; - s = splnet(); + MFC_LOCK(); /* Find the corresponding MFC entry */ mfc = mfc_find(req->bu_src.s_addr, req->bu_dst.s_addr); if (mfc == NULL) { - splx(s); + MFC_UNLOCK(); return EADDRNOTAVAIL; } else if (req->bu_flags & BW_UPCALL_DELETE_ALL) { /* @@ -2357,7 +2433,7 @@ list = mfc->mfc_bw_meter; mfc->mfc_bw_meter = NULL; - splx(s); + MFC_UNLOCK(); free_bw_list(list); return 0; } else { /* Delete a single bw_meter entry */ @@ -2381,14 +2457,14 @@ prev->bm_mfc_next = x->bm_mfc_next; /* remove from middle*/ else x->bm_mfc->mfc_bw_meter = x->bm_mfc_next;/* new head of list */ - splx(s); + MFC_UNLOCK(); unschedule_bw_meter(x); /* Free the bw_meter entry */ free(x, M_BWMETER); return 0; } else { - splx(s); + MFC_UNLOCK(); return EINVAL; } } @@ -2402,9 +2478,9 @@ bw_meter_receive_packet(struct bw_meter *x, int plen, struct timeval *nowp) { struct timeval delta; - int s; - s = splnet(); + MFC_LOCK_ASSERT(); + delta = *nowp; BW_TIMEVALDECR(&delta, &x->bm_start_time); @@ -2485,7 +2561,6 @@ x->bm_flags &= ~BW_METER_UPCALL_DELIVERED; } } - splx(s); } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Aug 27 15:39:25 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 01EDE16A4C1; Wed, 27 Aug 2003 15:39:25 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A49AA16A4BF for ; Wed, 27 Aug 2003 15:39:24 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3D36943FA3 for ; Wed, 27 Aug 2003 15:39:24 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RMdO0U027696 for ; Wed, 27 Aug 2003 15:39:24 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RMdNif027693 for perforce@freebsd.org; Wed, 27 Aug 2003 15:39:23 -0700 (PDT) Date: Wed, 27 Aug 2003 15:39:23 -0700 (PDT) Message-Id: <200308272239.h7RMdNif027693@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37042 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 22:39:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=37042 Change 37042 by marcel@marcel_nfs on 2003/08/27 15:38:31 Slight rewording only. Affected files ... .. //depot/projects/uart/dev/uart/uart.4#2 edit Differences ... ==== //depot/projects/uart/dev/uart/uart.4#2 (text+ko) ==== @@ -53,18 +53,15 @@ device driver. However, the serial interfaces of those devices that are managed by the .Xr puc 4 -driver are still handled by the +driver are controlled by the .Nm driver. As such, the .Xr puc 4 driver provides umbrella functionality for the .Nm -driver. -This way, the -.Nm -driver is kept clean from the complexities that are inherent when elementary -components are packaged together. +driver and hides the complexities that are inherent when elementary components +are packaged together. .Sh SEE ALSO .Xr puc 4 .Sh HISTORY From owner-p4-projects@FreeBSD.ORG Wed Aug 27 16:28:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5D27816A4C1; Wed, 27 Aug 2003 16:28:26 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 20F2E16A4BF for ; Wed, 27 Aug 2003 16:28:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 87F3C43FBF for ; Wed, 27 Aug 2003 16:28:25 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RNSP0U030405 for ; Wed, 27 Aug 2003 16:28:25 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RNSOwD030402 for perforce@freebsd.org; Wed, 27 Aug 2003 16:28:24 -0700 (PDT) Date: Wed, 27 Aug 2003 16:28:24 -0700 (PDT) Message-Id: <200308272328.h7RNSOwD030402@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37045 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 23:28:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=37045 Change 37045 by marcel@marcel_nfs on 2003/08/27 16:28:17 Add register constants for the enhanced feature register. We need that later on when we add hardware flow control. Rename some constants to be more consistent. While here: always make the size of the Tx FIFO 16 bytes, even if the Rx FIFO is larger. We don't program the Tx trigger level so we get interrupts every 16 bytes. However, we assume that all data has been sent when we get the interrupt. This does not hold if we previously wrote 32 (or so) characters to the Tx FIFO. This needs to be improved, but now at least it's correct. Affected files ... .. //depot/projects/uart/dev/uart/uart_dev_ns8250.c#22 edit .. //depot/projects/uart/dev/uart/uart_dev_ns8250.h#2 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_dev_ns8250.c#22 (text+ko) ==== @@ -277,7 +277,7 @@ uart_barrier(bas); /* Set RTS & DTR. */ - uart_setreg(bas, REG_MCR, MCR_IENABLE | MCR_RTS | MCR_DTR); + uart_setreg(bas, REG_MCR, MCR_IE | MCR_RTS | MCR_DTR); uart_barrier(bas); ns8250_clrint(bas); @@ -288,7 +288,7 @@ { /* Clear RTS & DTR. */ - uart_setreg(bas, REG_MCR, MCR_IENABLE); + uart_setreg(bas, REG_MCR, MCR_IE); uart_barrier(bas); } @@ -506,7 +506,7 @@ if (error) return (error); - mcr = MCR_IENABLE; + mcr = MCR_IE; if (sc->sc_sysdev == NULL) { /* By using ns8250_init() we also set DTR and RTS. */ ns8250_init(bas, 9600, 8, 1, UART_PARITY_NONE); @@ -521,8 +521,7 @@ * Set loopback mode. This avoids having garbage on the wire and * also allows us send and receive data. We set DTR and RTS to * avoid the possibility that automatic flow-control prevents - * any data from being sent. We clear IENABLE to avoid raising - * interrupts. + * any data from being sent. We clear IE to avoid raising interrupts. */ uart_setreg(bas, REG_MCR, MCR_LOOPBACK | MCR_DTR | MCR_RTS); uart_barrier(bas); @@ -547,7 +546,7 @@ return (0); } - uart_setreg(bas, REG_FCR, FCR_ENABLE | FCR_DMA_MODE | FCR_RX_HIGH | + uart_setreg(bas, REG_FCR, FCR_ENABLE | FCR_DMA | FCR_RX_HIGH | FCR_XMT_RST | FCR_RCV_RST); uart_barrier(bas); @@ -616,7 +615,12 @@ "Non-standard ns8250 class UART with FIFOs"); } - sc->sc_txfifosz = sc->sc_rxfifosz; + /* + * Force the Tx FIFO size to 16 bytes for now. We don't program the + * Tx trigger. Also, we assume that all data has been sent when the + * interrupt happens. + */ + sc->sc_txfifosz = 16; return (0); } ==== //depot/projects/uart/dev/uart/uart_dev_ns8250.h#2 (text+ko) ==== @@ -26,34 +26,59 @@ * $FreeBSD$ */ -#ifndef _DEV_UART_8250REG_H_ -#define _DEV_UART_8250REG_H_ +#ifndef _DEV_UART_DEV_NS8250_H_ +#define _DEV_UART_DEV_NS8250_H_ + +/* Enhanced Feature Register. */ +#define EFR_CTS 0x80 +#define EFR_RTS 0x40 +#define EFR_SCD 0x20 /* Special Character Detect. */ +#define EFR_EFC 0x10 /* Enhanced Function Control. */ +#define EFR_SFC_MASK 0x0f /* Software Flow Control. */ +#define EFR_SFC_TX12 0x0c /* BIT: Transmit XON1+2/XOFF1+2. */ +#define EFR_SFC_TX1 0x08 /* BIT: Transmit XON1/XOFF1. */ +#define EFR_SFC_TX2 0x04 /* BIT: Transmit XON2/XOFF2. */ +#define EFR_SFC_RX1 0x02 /* BIT: Receive XON1/XOFF1. */ +#define EFR_SFC_RX2 0x01 /* BIT: Receive XON2/XOFF2. */ +#define EFR_SFC_T12R12 0x0f /* VAL: TX 1+2, RX 1+2. */ +#define EFR_SFC_T1R12 0x0b /* VAL: TX 1, RX 1+2. */ +#define EFR_SFC_T2R12 0x07 /* VAL: TX 2, RX 1+2. */ /* FIFO Control Register. */ +#define FCR_RX_HIGH 0xc0 +#define FCR_RX_MEDH 0x80 +#define FCR_RX_MEDL 0x40 +#define FCR_RX_LOW 0x00 +#define FCR_TX_HIGH 0x30 +#define FCR_TX_MEDH 0x20 +#define FCR_TX_LOW 0x10 +#define FCR_TX_MEDL 0x00 +#define FCR_DMA 0x08 +#define FCR_XMT_RST 0x04 +#define FCR_RCV_RST 0x02 #define FCR_ENABLE 0x01 -#define FCR_RCV_RST 0x02 -#define FCR_XMT_RST 0x04 -#define FCR_DMA_MODE 0x08 -#define FCR_RX_LOW 0x00 -#define FCR_RX_MEDL 0x40 -#define FCR_RX_MEDH 0x80 -#define FCR_RX_HIGH 0xc0 /* Interrupt Enable Register. */ +#define IER_CTS 0x80 +#define IER_RTS 0x40 +#define IER_XOFF 0x20 +#define IER_SLEEP 0x10 +#define IER_EMSC 0x08 +#define IER_ERLS 0x04 +#define IER_ETXRDY 0x02 #define IER_ERXRDY 0x01 -#define IER_ETXRDY 0x02 -#define IER_ERLS 0x04 -#define IER_EMSC 0x08 /* Interrupt Identification Register. */ +#define IIR_FIFO_MASK 0xc0 +#define IIR_RTSCTS 0x20 +#define IIR_XOFF 0x10 #define IIR_IMASK 0x0f #define IIR_RXTOUT 0x0c #define IIR_RLS 0x06 #define IIR_RXRDY 0x04 #define IIR_TXRDY 0x02 +#define IIR_MLSC 0x00 #define IIR_NOPEND 0x01 -#define IIR_MLSC 0x00 -#define IIR_FIFO_MASK 0xc0 /* Line Control Register. */ #define LCR_DLAB 0x80 @@ -70,7 +95,7 @@ #define LCR_5BITS 0x00 /* Line Status Register. */ -#define LSR_RCV_FIFO 0x80 +#define LSR_DERR 0x80 #define LSR_TEMT 0x40 /* Transmitter Empty. */ #define LSR_THRE 0x20 /* Transmitter Holding Register Empty. */ #define LSR_BI 0x10 @@ -78,13 +103,15 @@ #define LSR_PE 0x04 #define LSR_OE 0x02 #define LSR_RXRDY 0x01 -#define LSR_RCV_MASK 0x1f /* Modem Control Register. */ -#define MCR_PRESCALE 0x80 +#define MCR_CS 0x80 +#define MCR_IRE 0x40 +#define MCR_ISEL 0x20 #define MCR_LOOPBACK 0x10 -#define MCR_IENABLE 0x08 -#define MCR_DRS 0x04 +#define MCR_IE 0x08 +#define MCR_LBDCD MCR_IE +#define MCR_LBRI 0x04 #define MCR_RTS 0x02 #define MCR_DTR 0x01 @@ -98,13 +125,10 @@ #define MSR_DDSR 0x02 #define MSR_DCTS 0x01 -/* Register offsets. */ +/* General registers. */ #define REG_DATA 0 /* Data Register. */ #define REG_RBR REG_DATA /* Receiver Buffer Register (R). */ #define REG_THR REG_DATA /* Transmitter Holding Register (W). */ -#define REG_DLBL 0 /* Divisor Latch (LSB). */ -#define REG_DLBH 1 /* Divisor Latch (MSB). */ -#define REG_DL REG_DLBL /* Divisor Latch (16-bit I/O). */ #define REG_IER 1 /* Interrupt Enable Register */ #define REG_IIR 2 /* Interrupt Ident. Register (R). */ #define REG_FCR 2 /* FIFO Control Register (W). */ @@ -114,4 +138,16 @@ #define REG_MSR 6 /* Modem Status Register. */ #define REG_SPR 7 /* Scratch Pad Register. */ -#endif /* _DEV_UART_8250REG_H_ */ +/* Baudrate registers (LCR[7] = 1). */ +#define REG_DLBL 0 /* Divisor Latch (LSB). */ +#define REG_DLBH 1 /* Divisor Latch (MSB). */ +#define REG_DL REG_DLBL /* Divisor Latch (16-bit I/O). */ + +/* Enhanced registers (LCR = 0xBF). */ +#define REG_EFR 2 /* Enhanced Feature Register. */ +#define REG_XON1 4 /* XON character 1. */ +#define REG_XON2 5 /* XON character 2. */ +#define REG_XOFF1 6 /* XOFF character 1. */ +#define REG_XOFF2 7 /* XOFF character 2. */ + +#endif /* _DEV_UART_DEV_NS8250_H_ */ From owner-p4-projects@FreeBSD.ORG Wed Aug 27 16:34:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B03816A4E0; Wed, 27 Aug 2003 16:34:35 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 339ED16A4DE for ; Wed, 27 Aug 2003 16:34:35 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 45FCD43FBF for ; Wed, 27 Aug 2003 16:34:34 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7RNYY0U030712 for ; Wed, 27 Aug 2003 16:34:34 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7RNYXji030707 for perforce@freebsd.org; Wed, 27 Aug 2003 16:34:33 -0700 (PDT) Date: Wed, 27 Aug 2003 16:34:33 -0700 (PDT) Message-Id: <200308272334.h7RNYXji030707@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37047 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 27 Aug 2003 23:34:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=37047 Change 37047 by marcel@marcel_nfs on 2003/08/27 16:34:04 Rename the consdev field in struct uart_devinfo to cookie. This makes it clear that it can be used by any system device for whatever purpose they see fit. While here, make uart_console static. Affected files ... .. //depot/projects/uart/dev/uart/uart_cpu.h#6 edit .. //depot/projects/uart/dev/uart/uart_tty.c#8 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_cpu.h#6 (text+ko) ==== @@ -62,7 +62,7 @@ #define UART_DEV_KEYBOARD 2 int (*attach)(struct uart_softc*); int (*detach)(struct uart_softc*); - void *consdev; /* Yedi trick. See uart_cons.c */ + void *cookie; /* Type dependent use. */ }; int uart_cpu_getdev(int devtype, struct uart_devinfo *di); ==== //depot/projects/uart/dev/uart/uart_tty.c#8 (text+ko) ==== @@ -79,7 +79,7 @@ .d_kqfilter = ttykqfilter, }; -struct uart_devinfo uart_console; +static struct uart_devinfo uart_console; static void uart_cnprobe(struct consdev *cp) @@ -88,7 +88,7 @@ cp->cn_dev = NULL; cp->cn_pri = CN_DEAD; - KASSERT(uart_console.consdev == NULL, ("foo")); + KASSERT(uart_console.cookie == NULL, ("foo")); if (uart_cpu_getdev(UART_DEV_CONSOLE, &uart_console)) return; @@ -115,8 +115,8 @@ * the unit number will be. */ di = cp->cn_arg; - KASSERT(di->consdev == NULL, ("foo")); - di->consdev = cp; + KASSERT(di->cookie == NULL, ("foo")); + di->cookie = cp; di->type = UART_DEV_CONSOLE; uart_add_sysdev(di); uart_init(di); @@ -313,7 +313,7 @@ tp->t_stop = uart_tty_stop; if (sc->sc_sysdev != NULL && sc->sc_sysdev->type == UART_DEV_CONSOLE) { - ((struct consdev *)sc->sc_sysdev->consdev)->cn_dev = + ((struct consdev *)sc->sc_sysdev->cookie)->cn_dev = makedev(uart_cdevsw.d_maj, device_get_unit(sc->sc_dev)); } From owner-p4-projects@FreeBSD.ORG Wed Aug 27 21:06:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8680716A4C1; Wed, 27 Aug 2003 21:06:08 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4A68B16A4BF for ; Wed, 27 Aug 2003 21:06:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A4D2844029 for ; Wed, 27 Aug 2003 21:06:07 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7S4670U056619 for ; Wed, 27 Aug 2003 21:06:07 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7S467RW056616 for perforce@freebsd.org; Wed, 27 Aug 2003 21:06:07 -0700 (PDT) Date: Wed, 27 Aug 2003 21:06:07 -0700 (PDT) Message-Id: <200308280406.h7S467RW056616@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37056 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 04:06:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=37056 Change 37056 by marcel@marcel_nfs on 2003/08/27 21:05:39 Make sure we are allowed to write to the TX FIFO in sab82532_bus_transmit(). Affected files ... .. //depot/projects/uart/dev/uart/uart_dev_sab82532.c#18 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_dev_sab82532.c#18 (text+ko) ==== @@ -593,6 +593,8 @@ int i; bas = &sc->sc_bas; + while (!(uart_getreg(bas, SAB_STAR) & SAB_STAR_XFW)) + ; for (i = 0; i < sc->sc_txdatasz; i++) uart_setreg(bas, SAB_XFIFO + i, sc->sc_txbuf[i]); uart_barrier(bas); From owner-p4-projects@FreeBSD.ORG Wed Aug 27 23:24:59 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7351716A4C1; Wed, 27 Aug 2003 23:24:59 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2824E16A4BF for ; Wed, 27 Aug 2003 23:24:59 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A3F8343F75 for ; Wed, 27 Aug 2003 23:24:57 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7S6Ov0U063288 for ; Wed, 27 Aug 2003 23:24:57 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7S6OuNX063284 for perforce@freebsd.org; Wed, 27 Aug 2003 23:24:56 -0700 (PDT) Date: Wed, 27 Aug 2003 23:24:56 -0700 (PDT) Message-Id: <200308280624.h7S6OuNX063284@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37060 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 06:25:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=37060 Change 37060 by marcel@marcel_nfs on 2003/08/27 23:24:37 IFC @37059 Affected files ... .. //depot/projects/ia64/Makefile#31 integrate .. //depot/projects/ia64/Makefile.inc1#79 integrate .. //depot/projects/ia64/lib/Makefile#36 integrate .. //depot/projects/ia64/sbin/Makefile#30 integrate .. //depot/projects/ia64/sbin/bsdlabel/bsdlabel.c#11 integrate .. //depot/projects/ia64/share/man/man5/make.conf.5#38 integrate .. //depot/projects/ia64/sys/conf/majors#25 integrate .. //depot/projects/ia64/sys/dev/ata/ata-all.c#40 integrate .. //depot/projects/ia64/sys/dev/ata/ata-lowlevel.c#3 integrate .. //depot/projects/ia64/sys/dev/ata/atapi-cam.c#15 integrate .. //depot/projects/ia64/sys/dev/em/README#8 integrate .. //depot/projects/ia64/sys/dev/em/if_em.c#26 integrate .. //depot/projects/ia64/sys/dev/em/if_em.h#19 integrate .. //depot/projects/ia64/sys/dev/em/if_em_hw.c#11 integrate .. //depot/projects/ia64/sys/dev/em/if_em_hw.h#11 integrate .. //depot/projects/ia64/sys/dev/exca/exca.c#9 integrate .. //depot/projects/ia64/sys/dev/sio/sio.c#49 integrate .. //depot/projects/ia64/sys/fs/specfs/spec_vnops.c#23 integrate .. //depot/projects/ia64/sys/gnu/ext2fs/ext2_vfsops.c#20 integrate .. //depot/projects/ia64/sys/gnu/ext2fs/fs.h#5 integrate .. //depot/projects/ia64/sys/pccard/pcic.c#14 integrate .. //depot/projects/ia64/sys/pci/if_dc.c#47 integrate .. //depot/projects/ia64/usr.sbin/Makefile#48 integrate .. //depot/projects/ia64/usr.sbin/acpi/acpidump/Makefile#2 integrate .. //depot/projects/ia64/usr.sbin/acpi/acpidump/acpi.c#13 integrate .. //depot/projects/ia64/usr.sbin/acpi/acpidump/acpi_user.c#7 integrate .. //depot/projects/ia64/usr.sbin/acpi/acpidump/acpidump.8#4 integrate .. //depot/projects/ia64/usr.sbin/acpi/acpidump/acpidump.c#10 integrate .. //depot/projects/ia64/usr.sbin/acpi/acpidump/acpidump.h#10 integrate .. //depot/projects/ia64/usr.sbin/acpi/acpidump/aml_dump.c#3 delete .. //depot/projects/ia64/usr.sbin/acpi/acpidump/asl_dump.c#3 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/Makefile#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_amlmem.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_amlmem.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_common.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_common.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_env.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_evalobj.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_evalobj.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_memman.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_memman.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_name.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_name.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_obj.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_obj.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_parse.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_parse.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_region.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_region.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_status.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_store.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/aml/aml_store.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/amldb.8#5 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/amldb.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/debug.c#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/debug.h#2 delete .. //depot/projects/ia64/usr.sbin/acpi/amldb/region.c#2 delete Differences ... ==== //depot/projects/ia64/Makefile#31 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.287 2003/08/06 11:06:38 ru Exp $ +# $FreeBSD: src/Makefile,v 1.288 2003/08/28 04:03:13 marcel Exp $ # # The user-driven targets are: # @@ -87,9 +87,22 @@ _MAKE= PATH=${PATH} ${BINMAKE} -f Makefile.inc1 # +# Make sure we have an up-to-date make(1). Only world and buildworld +# should do this as those are the initial targets used for upgrades. +# The user can define ALWAYS_CHECK_MAKE to have this check performed +# for all targets. +# +.if defined(ALWAYS_CHECK_MAKE) +${TGTS} ${BITGTS}: upgrade_checks +.else +buildworld: upgrade_checks +.endif + +# # Handle the user-driven targets, using the source relative mk files. # -${TGTS} ${BITGTS}: upgrade_checks + +${TGTS} ${BITGTS}: @cd ${.CURDIR}; \ ${_MAKE} ${.TARGET} ==== //depot/projects/ia64/Makefile.inc1#79 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.385 2003/08/25 18:30:06 imp Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.386 2003/08/27 04:49:43 imp Exp $ # # Make command line options: # -DNO_KERBEROS Do not build Heimdal (Kerberos 5) @@ -127,7 +127,7 @@ OSRELDATE!= awk '/^\#define[[:space:]]*__FreeBSD_version/ { print $$3 }' \ /usr/include/osreldate.h .else -OSRELDATE!= sysctl -n kern.osreldate +OSRELDATE= 0 .endif .endif TARGET_ARCH?= ${MACHINE_ARCH} ==== //depot/projects/ia64/lib/Makefile#36 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/Makefile,v 1.169 2003/08/16 21:21:07 obrien Exp $ +# $FreeBSD: src/lib/Makefile,v 1.170 2003/08/27 20:00:48 phk Exp $ # To satisfy shared library or ELF linkage when only the libraries being # built are visible: @@ -23,7 +23,7 @@ SUBDIR= ${_csu} libcom_err libcrypt libkvm msun libmd \ libncurses libradius librpcsvc libsbuf libtacplus libutil libypclnt \ - ${_compat} libalias libatm ${_libbind} libbz2 libc ${_libc_r} \ + ${_compat} libalias ${_libatm} ${_libbind} libbz2 libc ${_libc_r} \ libcalendar libcam libcompat libdevinfo libdevstat ${_libdisk} \ libedit libexpat libfetch libform libftpio libgeom ${_libio} libipsec \ libipx libisc libmenu ${_libmilter} ${_libmp} ${_libncp} \ @@ -47,6 +47,10 @@ .endif .endif +.if !defined(NOATM) +_libatm= libatm +.endif + .if !defined(NO_BIND) _libbind= libbind .endif ==== //depot/projects/ia64/sbin/Makefile#30 (text+ko) ==== @@ -1,11 +1,10 @@ # @(#)Makefile 8.5 (Berkeley) 3/31/94 -# $FreeBSD: src/sbin/Makefile,v 1.125 2003/08/14 18:55:57 rwatson Exp $ +# $FreeBSD: src/sbin/Makefile,v 1.126 2003/08/27 19:58:40 phk Exp $ # XXX MISSING: icheck ncheck SUBDIR= adjkerntz \ atacontrol \ - atm \ badsect \ bsdlabel \ camcontrol \ @@ -29,7 +28,6 @@ growfs \ ifconfig \ init \ - ip6fw \ ipfw \ kldconfig \ kldload \ @@ -59,7 +57,6 @@ nologin \ nos-tun \ ping \ - ping6 \ quotacheck \ raidctl \ rcorder \ @@ -80,6 +77,10 @@ umount \ vinum +.if !defined(NOATM) +SUBDIR+=atm +.endif + .if !defined(NO_CXX) SUBDIR+=devd .endif @@ -92,6 +93,11 @@ ipnat .endif +.if !defined(NOINET6) +SUBDIR+=ip6fw \ + ping6 +.endif + .if ${MACHINE_ARCH} == "i386" SUBDIR+=cxconfig .if ${MACHINE} == "pc98" ==== //depot/projects/ia64/sbin/bsdlabel/bsdlabel.c#11 (text+ko) ==== @@ -53,7 +53,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/sbin/bsdlabel/bsdlabel.c,v 1.100 2003/06/07 22:02:01 phk Exp $"); +__FBSDID("$FreeBSD: src/sbin/bsdlabel/bsdlabel.c,v 1.101 2003/08/27 22:34:57 phk Exp $"); #include #include @@ -1377,6 +1377,10 @@ strncpy(loclab.d_typename, "amnesiac", sizeof(loclab.d_typename)); + dp = &loclab.d_partitions[0]; + dp->p_offset = BBSIZE / secsize; + dp->p_size = loclab.d_secperunit - dp->p_offset; + dp = &loclab.d_partitions[RAW_PART]; dp->p_size = loclab.d_secperunit; loclab.d_checksum = dkcksum(&loclab); ==== //depot/projects/ia64/share/man/man5/make.conf.5#38 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man5/make.conf.5,v 1.76 2003/07/06 19:01:41 gshapiro Exp $ +.\" $FreeBSD: src/share/man/man5/make.conf.5,v 1.77 2003/08/28 04:03:13 marcel Exp $ .\" .Dd November 3, 2000 .Dt MAKE.CONF 5 @@ -93,6 +93,16 @@ .Pa makefiles for things other than builds. .Bl -tag -width Ar +.It Va ALWAYS_CHECK_MAKE +.Pq Vt bool +Instructs the top-level makefile in the source tree (normally +.Pa /usr/src ) +to always check if +.Xr make 1 +is up-to-date. +Normally this is only done for the world and buildworld targets to handle +upgrades from older versions of +.Fx . .It Va CFLAGS .Pq Vt str Controls the compiler setting when compiling C code. ==== //depot/projects/ia64/sys/conf/majors#25 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/majors,v 1.176 2003/08/15 14:56:05 phk Exp $ +# $FreeBSD: src/sys/conf/majors,v 1.177 2003/08/27 07:35:12 simokawa Exp $ # # This list is semi-obsoleted by DEVFS, but for now it still contains # the current allocation of device major numbers. @@ -174,6 +174,7 @@ 180 nvidia NVIDIA (nvidiaN/nvidiactl) 181 casm HP/Compaq ProLiant Advanced Server Management 183 *smapi SMAPI BIOS interface +184 dcons Dumb console driver 200 ?? entries from 200-252 are reserved for local use 248 *isp dev/isp/isp_freebsd.c 252 ?? entries from 200-252 are reserved for local use ==== //depot/projects/ia64/sys/dev/ata/ata-all.c#40 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.186 2003/08/25 09:01:49 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.187 2003/08/27 15:27:56 sos Exp $"); #include "opt_ata.h" #include @@ -437,8 +437,8 @@ ata_queue_request(request); - if (request->error) - iocmd->u.request.error = request->error; + if (request->result) + iocmd->u.request.error = request->result; else { if (iocmd->u.request.flags & ATA_CMD_READ) error = copyout(buf, ==== //depot/projects/ia64/sys/dev/ata/ata-lowlevel.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.5 2003/08/25 13:06:13 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.6 2003/08/27 11:21:30 sos Exp $"); #include "opt_ata.h" #include @@ -520,22 +520,22 @@ ATA_IDX_OUTB(ch, ATA_ALTSTAT, ATA_A_IDS | ATA_A_RESET); DELAY(10000); ATA_IDX_OUTB(ch, ATA_ALTSTAT, ATA_A_IDS); - DELAY(100000); - ATA_IDX_INB(ch, ATA_ERROR); + DELAY(10000); /* wait for BUSY to go inactive */ - for (timeout = 0; timeout < 310000; timeout++) { + for (timeout = 0; timeout < 310; timeout++) { if (stat0 & ATA_S_BUSY) { ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | ATA_MASTER); DELAY(10); + ATA_IDX_INB(ch, ATA_ERROR); - /* check for ATAPI signature while its still there */ - lsb = ATA_IDX_INB(ch, ATA_CYL_LSB); - msb = ATA_IDX_INB(ch, ATA_CYL_MSB); stat0 = ATA_IDX_INB(ch, ATA_STATUS); - ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00); - ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00); if (!(stat0 & ATA_S_BUSY)) { + /* check for ATAPI signature while its still there */ + lsb = ATA_IDX_INB(ch, ATA_CYL_LSB); + msb = ATA_IDX_INB(ch, ATA_CYL_MSB); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00); if (bootverbose) ata_printf(ch, ATA_MASTER, "ATAPI %02x %02x\n", lsb, msb); if (lsb == ATAPI_MAGIC_LSB && msb == ATAPI_MAGIC_MSB) @@ -545,14 +545,15 @@ if (stat1 & ATA_S_BUSY) { ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | ATA_SLAVE); DELAY(10); + ATA_IDX_INB(ch, ATA_ERROR); - /* check for ATAPI signature while its still there */ - lsb = ATA_IDX_INB(ch, ATA_CYL_LSB); - msb = ATA_IDX_INB(ch, ATA_CYL_MSB); stat1 = ATA_IDX_INB(ch, ATA_STATUS); - ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00); - ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00); if (!(stat1 & ATA_S_BUSY)) { + /* check for ATAPI signature while its still there */ + lsb = ATA_IDX_INB(ch, ATA_CYL_LSB); + msb = ATA_IDX_INB(ch, ATA_CYL_MSB); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00); if (bootverbose) ata_printf(ch, ATA_SLAVE, "ATAPI %02x %02x\n", lsb, msb); if (lsb == ATAPI_MAGIC_LSB && msb == ATAPI_MAGIC_MSB) @@ -568,7 +569,7 @@ if (mask == 0x03) /* wait for both master & slave */ if (!(stat0 & ATA_S_BUSY) && !(stat1 & ATA_S_BUSY)) break; - DELAY(100); + DELAY(100000); } DELAY(10); ATA_IDX_OUTB(ch, ATA_ALTSTAT, ATA_A_4BIT); ==== //depot/projects/ia64/sys/dev/ata/atapi-cam.c#15 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cam.c,v 1.20 2003/08/24 17:48:05 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cam.c,v 1.21 2003/08/28 03:56:04 thomas Exp $"); #include #include @@ -465,9 +465,10 @@ if ((ccb_h->flags & CAM_DIR_MASK) == CAM_DIR_IN && (len & 1)) { /* ATA always transfers an even number of bytes */ if (!(buf = hcb->dxfer_alloc = malloc(++len, M_ATACAM, - M_NOWAIT | M_ZERO))) + M_NOWAIT | M_ZERO))) { printf("cannot allocate ATAPI/CAM buffer\n"); goto action_oom; + } } request->device = dev; request->driver = hcb; ==== //depot/projects/ia64/sys/dev/em/README#8 (text+ko) ==== @@ -1,8 +1,8 @@ -$FreeBSD: src/sys/dev/em/README,v 1.7 2003/06/05 17:51:37 pdeuskar Exp $ +$FreeBSD: src/sys/dev/em/README,v 1.8 2003/08/27 21:52:36 pdeuskar Exp $ FreeBSD* Driver for the Intel(R) PRO/1000 Family of Adapters ============================================================ -April 13, 2003 +July 24, 2003 Contents @@ -21,7 +21,7 @@ Overview ======== -This file describes the FreeBSD* driver, version 1.5.x, for the Intel(R) +This file describes the FreeBSD* driver, version 1.7.x, for the Intel(R) PRO/1000 Family of Adapters. This driver has been developed for use with FreeBSD, version 4.7. @@ -51,9 +51,10 @@ 82544 PRO/1000 XF Server Adapter A50484-xxx 82544 PRO/1000 T Desktop Adapter A62947-xxx - + 82540 PRO/1000 MT Desktop Adapter A78408-xxx - 82541 C91016-xxx + + 82541 PRO/1000 MT Desktop Adapter C91016-xxx 82545 PRO/1000 MT Server Adapter A92165-xxx @@ -67,6 +68,7 @@ 82546EB PRO/1000 MT Quad Port Server Adapter C11227-xxx + 82547 PRO/1000 CT Network Connection To verify your Intel adapter is supported, find the board ID number on the @@ -281,8 +283,46 @@ Known Limitations ================= -There are known performance issues with this driver when running UDP traffic -with Jumbo Frames. Intel recommends not using Jumbo Frames for UDP traffic. + There are known performance issues with this driver when running UDP traffic + with Jumbo Frames. Intel recommends not using Jumbo Frames for UDP traffic. + + + 82541/82547 can't link or is slow to link with some link partners + ----------------------------------------------------------------- + + There is a known compatibility issue with 82541/82547 and some switches + where link will not be established, or will be slow to establish. In + particular, these switches are known to be incompatible with 82541/82547: + + Planex FXG-08TE + I-O Data ETG-SH8 + + To workaround the issue, the driver can be compiled with an override of the + PHY's master/slave setting. Forcing master or forcing slave mode will + improve time-to-link. + + Edit ./em.x.x.x/src/if_em.h to remove the #define EM_MASTER_SLAVE + from within the comments. + + /* #define EM_MASTER_SLAVE 2 */ + #define EM_MASTER_SLAVE 2 + + Use one of the following options. + 0 = Hardware default + 1 = Master mode + 2 = Slave mode + 3 = Auto master/slave + + Recompile the module (refer to step 3 above) + a. To compile the module + + cd em-x.x.x + make clean + make + + b. To install the compiled module in system directory: + + make install Support ==== //depot/projects/ia64/sys/dev/em/if_em.c#26 (text+ko) ==== @@ -31,7 +31,7 @@ ***************************************************************************/ -/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.28 2003/08/01 17:33:59 jdp Exp $*/ +/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.29 2003/08/27 21:52:36 pdeuskar Exp $*/ #include @@ -51,7 +51,7 @@ * Driver version *********************************************************************/ -char em_driver_version[] = "1.6.6"; +char em_driver_version[] = "1.7.16"; /********************************************************************* @@ -89,6 +89,16 @@ { 0x8086, 0x101A, PCI_ANY_ID, PCI_ANY_ID, 0}, { 0x8086, 0x101D, PCI_ANY_ID, PCI_ANY_ID, 0}, { 0x8086, 0x101E, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1026, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1027, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1028, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1075, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1076, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1077, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1078, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1079, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x107A, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x107B, PCI_ANY_ID, PCI_ANY_ID, 0}, /* required last entry */ { 0, 0, 0, 0, 0} }; @@ -163,6 +173,9 @@ static int em_is_valid_ether_addr(u_int8_t *); static int em_sysctl_stats(SYSCTL_HANDLER_ARGS); static int em_sysctl_debug_info(SYSCTL_HANDLER_ARGS); +static u_int32_t em_fill_descriptors (u_int64_t address, + u_int32_t length, + PDESC_ARRAY desc_array); static int em_sysctl_int_delay(SYSCTL_HANDLER_ARGS); static void em_add_int_delay_sysctl(struct adapter *, const char *, const char *, struct em_int_delay_info *, @@ -367,7 +380,13 @@ adapter->hw.fc = em_fc_full; adapter->hw.phy_init_script = 1; + adapter->hw.phy_reset_disable = FALSE; +#ifndef EM_MASTER_SLAVE + adapter->hw.master_slave = em_ms_hw_default; +#else + adapter->hw.master_slave = EM_MASTER_SLAVE; +#endif /* * Set the max frame size assuming standard ethernet * sized frames @@ -465,6 +484,15 @@ } else printf("em%d: Speed:N/A Duplex:N/A\n", adapter->unit); + /* Identify 82544 on PCIX */ + em_get_bus_info(&adapter->hw); + if(adapter->hw.bus_type == em_bus_type_pcix && + adapter->hw.mac_type == em_82544) { + adapter->pcix_82544 = TRUE; + } + else { + adapter->pcix_82544 = FALSE; + } INIT_DEBUGOUT("em_attach: end"); splx(s); return(0); @@ -525,6 +553,9 @@ adapter->rx_desc_base = NULL; } + /* Free the sysctl tree */ + sysctl_ctx_free(&adapter->sysctl_ctx); + /* Remove from the adapter list */ if (em_adapter_list == adapter) em_adapter_list = adapter->next; @@ -641,8 +672,11 @@ case SIOCSIFFLAGS: IOCTL_DEBUGOUT("ioctl rcv'd: SIOCSIFFLAGS (Set Interface Flags)"); if (ifp->if_flags & IFF_UP) { - if (!(ifp->if_flags & IFF_RUNNING)) + if (!(ifp->if_flags & IFF_RUNNING)) { + bcopy(IF_LLADDR(ifp), adapter->hw.mac_addr, + ETHER_ADDR_LEN); em_init(adapter); + } em_disable_promisc(adapter); em_set_promisc(adapter); @@ -685,7 +719,7 @@ } break; default: - IOCTL_DEBUGOUT1("ioctl received: UNKNOWN (0x%d)\n", (int)command); + IOCTL_DEBUGOUT1("ioctl received: UNKNOWN (0x%x)\n", (int)command); error = EINVAL; } @@ -1052,9 +1086,15 @@ em_encap(struct adapter *adapter, struct mbuf *m_head) { u_int32_t txd_upper; - u_int32_t txd_lower; + u_int32_t txd_lower, txd_used = 0, txd_saved = 0; int i, j, error; - + u_int64_t address; + + /* For 82544 Workaround */ + DESC_ARRAY desc_array; + u_int32_t array_elements; + u_int32_t counter; + #if __FreeBSD_version < 500000 struct ifvlan *ifv = NULL; #else @@ -1118,23 +1158,66 @@ #endif i = adapter->next_avail_tx_desc; + if (adapter->pcix_82544) { + txd_saved = i; + txd_used = 0; + } for (j = 0; j < q.nsegs; j++) { - tx_buffer = &adapter->tx_buffer_area[i]; - current_tx_desc = &adapter->tx_desc_base[i]; + /* If adapter is 82544 and on PCIX bus */ + if(adapter->pcix_82544) { + array_elements = 0; + address = htole64(q.segs[j].ds_addr); + /* + * Check the Address and Length combination and + * split the data accordingly + */ + array_elements = em_fill_descriptors(address, + htole32(q.segs[j].ds_len), + &desc_array); + for (counter = 0; counter < array_elements; counter++) { + if (txd_used == adapter->num_tx_desc_avail) { + adapter->next_avail_tx_desc = txd_saved; + adapter->no_tx_desc_avail2++; + bus_dmamap_destroy(adapter->txtag, q.map); + return (ENOBUFS); + } + tx_buffer = &adapter->tx_buffer_area[i]; + current_tx_desc = &adapter->tx_desc_base[i]; + current_tx_desc->buffer_addr = htole64( + desc_array.descriptor[counter].address); + current_tx_desc->lower.data = htole32( + (adapter->txd_cmd | txd_lower | + (u_int16_t)desc_array.descriptor[counter].length)); + current_tx_desc->upper.data = htole32((txd_upper)); + if (++i == adapter->num_tx_desc) + i = 0; + + tx_buffer->m_head = NULL; + txd_used++; + } + } else { + tx_buffer = &adapter->tx_buffer_area[i]; + current_tx_desc = &adapter->tx_desc_base[i]; - current_tx_desc->buffer_addr = htole64(q.segs[j].ds_addr); - current_tx_desc->lower.data = htole32( - adapter->txd_cmd | txd_lower | q.segs[j].ds_len); - current_tx_desc->upper.data = htole32(txd_upper); + current_tx_desc->buffer_addr = htole64(q.segs[j].ds_addr); + current_tx_desc->lower.data = htole32( + adapter->txd_cmd | txd_lower | q.segs[j].ds_len); + current_tx_desc->upper.data = htole32(txd_upper); - if (++i == adapter->num_tx_desc) - i = 0; + if (++i == adapter->num_tx_desc) + i = 0; - tx_buffer->m_head = NULL; + tx_buffer->m_head = NULL; + } } - adapter->num_tx_desc_avail -= q.nsegs; - adapter->next_avail_tx_desc = i; + adapter->next_avail_tx_desc = i; + if (adapter->pcix_82544) { + adapter->num_tx_desc_avail -= txd_used; + } + else { + adapter->num_tx_desc_avail -= q.nsegs; + } #if __FreeBSD_version < 500000 if (ifv != NULL) { @@ -1474,7 +1557,7 @@ struct adapter * adapter = arg; ifp = &adapter->interface_data.ac_if; - INIT_DEBUGOUT("em_stop: begin\n"); + INIT_DEBUGOUT("em_stop: begin"); em_disable_intr(adapter); em_reset_hw(&adapter->hw); untimeout(em_local_timer, adapter, adapter->timer_handle); @@ -1522,6 +1605,12 @@ /* Identify the MAC */ if (em_set_mac_type(&adapter->hw)) printf("em%d: Unknown MAC Type\n", adapter->unit); + + if(adapter->hw.mac_type == em_82541 || + adapter->hw.mac_type == em_82541_rev_2 || + adapter->hw.mac_type == em_82547 || + adapter->hw.mac_type == em_82547_rev_2) + adapter->hw.phy_init_script = TRUE; return; } @@ -1629,6 +1718,7 @@ static int em_hardware_init(struct adapter * adapter) { + INIT_DEBUGOUT("em_hardware_init: begin"); /* Issue a global reset */ em_reset_hw(&adapter->hw); @@ -1984,6 +2074,7 @@ u_int32_t reg_tipg = 0; u_int64_t bus_addr; + INIT_DEBUGOUT("em_initialize_transmit_unit: begin"); /* Setup the Base and Length of the Tx Descriptor Ring */ bus_addr = adapter->txdma.dma_paddr; E1000_WRITE_REG(&adapter->hw, TDBAL, (u_int32_t)bus_addr); @@ -2399,6 +2490,7 @@ struct ifnet *ifp; u_int64_t bus_addr; + INIT_DEBUGOUT("em_initialize_receive_unit: begin"); ifp = &adapter->interface_data.ac_if; /* Make sure receives are disabled while setting up the descriptor ring */ @@ -2469,6 +2561,7 @@ /* Enable Receives */ E1000_WRITE_REG(&adapter->hw, RCTL, reg_rctl); + em_set_promisc(adapter); return; } @@ -2805,6 +2898,59 @@ return; } +/********************************************************************* +* 82544 Coexistence issue workaround. +* There are 2 issues. +* 1. Transmit Hang issue. +* To detect this issue, following equation can be used... +* SIZE[3:0] + ADDR[2:0] = SUM[3:0]. +* If SUM[3:0] is in between 1 to 4, we will have this issue. +* +* 2. DAC issue. +* To detect this issue, following equation can be used... +* SIZE[3:0] + ADDR[2:0] = SUM[3:0]. +* If SUM[3:0] is in between 9 to c, we will have this issue. +* +* +* WORKAROUND: +* Make sure we do not have ending address as 1,2,3,4(Hang) or 9,a,b,c (DAC) +* +*** *********************************************************************/ +static u_int32_t +em_fill_descriptors (u_int64_t address, + u_int32_t length, + PDESC_ARRAY desc_array) +{ + /* Since issue is sensitive to length and address.*/ + /* Let us first check the address...*/ + u_int32_t safe_terminator; + if (length <= 4) { + desc_array->descriptor[0].address = address; + desc_array->descriptor[0].length = length; + desc_array->elements = 1; + return desc_array->elements; + } + safe_terminator = (u_int32_t)((((u_int32_t)address & 0x7) + (length & 0xF)) & 0xF); + /* if it does not fall between 0x1 to 0x4 and 0x9 to 0xC then return */ + if (safe_terminator == 0 || + (safe_terminator > 4 && + safe_terminator < 9) || + (safe_terminator > 0xC && + safe_terminator <= 0xF)) { + desc_array->descriptor[0].address = address; + desc_array->descriptor[0].length = length; + desc_array->elements = 1; + return desc_array->elements; + } + + desc_array->descriptor[0].address = address; + desc_array->descriptor[0].length = length - 4; + desc_array->descriptor[1].address = address + (length - 4); + desc_array->descriptor[1].length = 4; + desc_array->elements = 2; + return desc_array->elements; +} + /********************************************************************** * * Update the board statistics counters. @@ -2815,8 +2961,12 @@ { struct ifnet *ifp; + if(adapter->hw.media_type == em_media_type_copper || + (E1000_READ_REG(&adapter->hw, STATUS) & E1000_STATUS_LU)) { + adapter->stats.symerrs += E1000_READ_REG(&adapter->hw, SYMERRS); + adapter->stats.sec += E1000_READ_REG(&adapter->hw, SEC); + } adapter->stats.crcerrs += E1000_READ_REG(&adapter->hw, CRCERRS); - adapter->stats.symerrs += E1000_READ_REG(&adapter->hw, SYMERRS); adapter->stats.mpc += E1000_READ_REG(&adapter->hw, MPC); adapter->stats.scc += E1000_READ_REG(&adapter->hw, SCC); adapter->stats.ecol += E1000_READ_REG(&adapter->hw, ECOL); @@ -2825,7 +2975,6 @@ adapter->stats.latecol += E1000_READ_REG(&adapter->hw, LATECOL); adapter->stats.colc += E1000_READ_REG(&adapter->hw, COLC); adapter->stats.dc += E1000_READ_REG(&adapter->hw, DC); - adapter->stats.sec += E1000_READ_REG(&adapter->hw, SEC); adapter->stats.rlec += E1000_READ_REG(&adapter->hw, RLEC); adapter->stats.xonrxc += E1000_READ_REG(&adapter->hw, XONRXC); adapter->stats.xontxc += E1000_READ_REG(&adapter->hw, XONTXC); ==== //depot/projects/ia64/sys/dev/em/if_em.h#19 (text+ko) ==== @@ -31,7 +31,7 @@ ***************************************************************************/ -/*$FreeBSD: src/sys/dev/em/if_em.h,v 1.20 2003/08/22 05:54:51 imp Exp $*/ +/*$FreeBSD: src/sys/dev/em/if_em.h,v 1.21 2003/08/27 21:52:37 pdeuskar Exp $*/ #ifndef _EM_H_DEFINED_ #define _EM_H_DEFINED_ @@ -81,7 +81,7 @@ /* Tunables */ /* - * TxDescriptors + * EM_MAX_TXD: Maximum number of Transmit Descriptors * Valid Range: 80-256 for 82542 and 82543-based adapters * 80-4096 for others * Default Value: 256 @@ -92,7 +92,7 @@ #define EM_MAX_TXD 256 /* - * RxDescriptors + * EM_MAX_RXD - Maximum number of receive Descriptors * Valid Range: 80-256 for 82542 and 82543-based adapters * 80-4096 for others * Default Value: 256 @@ -105,7 +105,7 @@ #define EM_MAX_RXD 256 /* - * TxIntDelay + * EM_TIDV - Transmit Interrupt Delay Value * Valid Range: 0-65535 (0=off) * Default Value: 64 * This value delays the generation of transmit interrupts in units of @@ -117,20 +117,20 @@ #define EM_TIDV 64 /* - * TxAbsIntDelay (Not valid for 82542/82543/82544) + * EM_TADV - Transmit Absolute Interrupt Delay Value (Not valid for 82542/82543/82544) * Valid Range: 0-65535 (0=off) * Default Value: 64 * This value, in units of 1.024 microseconds, limits the delay in which a - * transmit interrupt is generated. Useful only if TxIntDelay is non-zero, + * transmit interrupt is generated. Useful only if EM_TIDV is non-zero, * this value ensures that an interrupt is generated after the initial * packet is sent on the wire within the set amount of time. Proper tuning, - * along with TxIntDelay, may improve traffic throughput in specific + * along with EM_TIDV, may improve traffic throughput in specific * network conditions. */ #define EM_TADV 64 /* - * RxIntDelay + * EM_RDTR - Receive Interrupt Delay Timer (Packet Timer) * Valid Range: 0-65535 (0=off) * Default Value: 0 * This value delays the generation of receive interrupts in units of 1.024 @@ -141,24 +141,24 @@ * may be set too high, causing the driver to run out of available receive * descriptors. * - * CAUTION: When setting RxIntDelay to a value other than 0, adapters + * CAUTION: When setting EM_RDTR to a value other than 0, adapters * may hang (stop transmitting) under certain network conditions. * If this occurs a WATCHDOG message is logged in the system event log. * In addition, the controller is automatically reset, restoring the * network connection. To eliminate the potential for the hang - * ensure that RxIntDelay is set to 0. + * ensure that EM_RDTR is set to 0. */ #define EM_RDTR 0 /* - * RxAbsIntDelay (Not valid for 82542/82543/82544) + * Receive Interrupt Absolute Delay Timer (Not valid for 82542/82543/82544) * Valid Range: 0-65535 (0=off) * Default Value: 64 * This value, in units of 1.024 microseconds, limits the delay in which a - * receive interrupt is generated. Useful only if RxIntDelay is non-zero, + * receive interrupt is generated. Useful only if EM_RDTR is non-zero, * this value ensures that an interrupt is generated after the initial * packet is received within the set amount of time. Proper tuning, - * along with RxIntDelay, may improve traffic throughput in specific network + * along with EM_RDTR, may improve traffic throughput in specific network * conditions. */ #define EM_RADV 64 @@ -202,6 +202,17 @@ */ #define WAIT_FOR_AUTO_NEG_DEFAULT 0 +/* + * EM_MASTER_SLAVE is only defined to enable a workaround for a known compatibility issue + * with 82541/82547 devices and some switches. See the "Known Limitations" section of + * the README file for a complete description and a list of affected switches. + * + * 0 = Hardware default + * 1 = Master mode + * 2 = Slave mode + * 3 = Auto master/slave + */ +/* #define EM_MASTER_SLAVE 2 */ /* Tunables -- End */ @@ -301,6 +312,19 @@ int value; /* Current value in usecs */ }; +/* For 82544 PCIX Workaround */ +typedef struct _ADDRESS_LENGTH_PAIR +{ + u_int64_t address; + u_int32_t length; +} ADDRESS_LENGTH_PAIR, *PADDRESS_LENGTH_PAIR; + +typedef struct _DESCRIPTOR_PAIR +{ + ADDRESS_LENGTH_PAIR descriptor[4]; + u_int32_t elements; +} DESC_ARRAY, *PDESC_ARRAY; + /* Our adapter structure */ struct adapter { struct arpcom interface_data; @@ -389,6 +413,9 @@ u_int64_t tx_fifo_reset; u_int64_t tx_fifo_wrk; + /* For 82544 PCIX Workaround */ + boolean_t pcix_82544; + #ifdef DBG_STATS unsigned long no_pkts_avail; unsigned long clean_tx_interrupts; ==== //depot/projects/ia64/sys/dev/em/if_em_hw.c#11 (text+ko) ==== @@ -36,20 +36,21 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/em/if_em_hw.c,v 1.10 2003/08/24 17:46:04 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/em/if_em_hw.c,v 1.11 2003/08/27 21:52:37 pdeuskar Exp $"); #include static int32_t em_set_phy_type(struct em_hw *hw); static void em_phy_init_script(struct em_hw *hw); -static int32_t em_setup_fiber_link(struct em_hw *hw); static int32_t em_setup_copper_link(struct em_hw *hw); +static int32_t em_setup_fiber_serdes_link(struct em_hw *hw); +static int32_t em_adjust_serdes_amplitude(struct em_hw *hw); static int32_t em_phy_force_speed_duplex(struct em_hw *hw); static int32_t em_config_mac_to_phy(struct em_hw *hw); -static int32_t em_force_mac_fc(struct em_hw *hw); static void em_raise_mdi_clk(struct em_hw *hw, uint32_t *ctrl); static void em_lower_mdi_clk(struct em_hw *hw, uint32_t *ctrl); -static void em_shift_out_mdi_bits(struct em_hw *hw, uint32_t data, uint16_t count); +static void em_shift_out_mdi_bits(struct em_hw *hw, uint32_t data, + uint16_t count); static uint16_t em_shift_in_mdi_bits(struct em_hw *hw); static int32_t em_phy_reset_dsp(struct em_hw *hw); static int32_t em_write_eeprom_spi(struct em_hw *hw, uint16_t offset, @@ -60,13 +61,30 @@ static int32_t em_spi_eeprom_ready(struct em_hw *hw); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Aug 27 23:27:03 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0EB1A16A4C1; Wed, 27 Aug 2003 23:27:03 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C5F8B16A4BF for ; Wed, 27 Aug 2003 23:27:02 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2418F43FD7 for ; Wed, 27 Aug 2003 23:27:01 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7S6R10U063825 for ; Wed, 27 Aug 2003 23:27:01 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7S6R0bI063812 for perforce@freebsd.org; Wed, 27 Aug 2003 23:27:00 -0700 (PDT) Date: Wed, 27 Aug 2003 23:27:00 -0700 (PDT) Message-Id: <200308280627.h7S6R0bI063812@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37061 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 06:27:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=37061 Change 37061 by marcel@marcel_nfs on 2003/08/27 23:26:01 IFC @37059 Affected files ... .. //depot/projects/uart/conf/majors#3 integrate .. //depot/projects/uart/dev/ata/ata-all.c#4 integrate .. //depot/projects/uart/dev/ata/ata-lowlevel.c#3 integrate .. //depot/projects/uart/dev/ata/atapi-cam.c#4 integrate .. //depot/projects/uart/dev/em/README#2 integrate .. //depot/projects/uart/dev/em/if_em.c#4 integrate .. //depot/projects/uart/dev/em/if_em.h#6 integrate .. //depot/projects/uart/dev/em/if_em_hw.c#3 integrate .. //depot/projects/uart/dev/em/if_em_hw.h#2 integrate .. //depot/projects/uart/dev/exca/exca.c#3 integrate .. //depot/projects/uart/dev/sio/sio.c#5 integrate .. //depot/projects/uart/fs/specfs/spec_vnops.c#4 integrate .. //depot/projects/uart/gnu/ext2fs/ext2_vfsops.c#3 integrate .. //depot/projects/uart/gnu/ext2fs/fs.h#2 integrate .. //depot/projects/uart/pccard/pcic.c#2 integrate .. //depot/projects/uart/pci/if_dc.c#11 integrate Differences ... ==== //depot/projects/uart/conf/majors#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/majors,v 1.176 2003/08/15 14:56:05 phk Exp $ +# $FreeBSD: src/sys/conf/majors,v 1.177 2003/08/27 07:35:12 simokawa Exp $ # # This list is semi-obsoleted by DEVFS, but for now it still contains # the current allocation of device major numbers. @@ -174,6 +174,7 @@ 180 nvidia NVIDIA (nvidiaN/nvidiactl) 181 casm HP/Compaq ProLiant Advanced Server Management 183 *smapi SMAPI BIOS interface +184 dcons Dumb console driver 200 ?? entries from 200-252 are reserved for local use 248 *isp dev/isp/isp_freebsd.c 252 ?? entries from 200-252 are reserved for local use ==== //depot/projects/uart/dev/ata/ata-all.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.186 2003/08/25 09:01:49 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.187 2003/08/27 15:27:56 sos Exp $"); #include "opt_ata.h" #include @@ -437,8 +437,8 @@ ata_queue_request(request); - if (request->error) - iocmd->u.request.error = request->error; + if (request->result) + iocmd->u.request.error = request->result; else { if (iocmd->u.request.flags & ATA_CMD_READ) error = copyout(buf, ==== //depot/projects/uart/dev/ata/ata-lowlevel.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.5 2003/08/25 13:06:13 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.6 2003/08/27 11:21:30 sos Exp $"); #include "opt_ata.h" #include @@ -520,22 +520,22 @@ ATA_IDX_OUTB(ch, ATA_ALTSTAT, ATA_A_IDS | ATA_A_RESET); DELAY(10000); ATA_IDX_OUTB(ch, ATA_ALTSTAT, ATA_A_IDS); - DELAY(100000); - ATA_IDX_INB(ch, ATA_ERROR); + DELAY(10000); /* wait for BUSY to go inactive */ - for (timeout = 0; timeout < 310000; timeout++) { + for (timeout = 0; timeout < 310; timeout++) { if (stat0 & ATA_S_BUSY) { ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | ATA_MASTER); DELAY(10); + ATA_IDX_INB(ch, ATA_ERROR); - /* check for ATAPI signature while its still there */ - lsb = ATA_IDX_INB(ch, ATA_CYL_LSB); - msb = ATA_IDX_INB(ch, ATA_CYL_MSB); stat0 = ATA_IDX_INB(ch, ATA_STATUS); - ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00); - ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00); if (!(stat0 & ATA_S_BUSY)) { + /* check for ATAPI signature while its still there */ + lsb = ATA_IDX_INB(ch, ATA_CYL_LSB); + msb = ATA_IDX_INB(ch, ATA_CYL_MSB); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00); if (bootverbose) ata_printf(ch, ATA_MASTER, "ATAPI %02x %02x\n", lsb, msb); if (lsb == ATAPI_MAGIC_LSB && msb == ATAPI_MAGIC_MSB) @@ -545,14 +545,15 @@ if (stat1 & ATA_S_BUSY) { ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | ATA_SLAVE); DELAY(10); + ATA_IDX_INB(ch, ATA_ERROR); - /* check for ATAPI signature while its still there */ - lsb = ATA_IDX_INB(ch, ATA_CYL_LSB); - msb = ATA_IDX_INB(ch, ATA_CYL_MSB); stat1 = ATA_IDX_INB(ch, ATA_STATUS); - ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00); - ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00); if (!(stat1 & ATA_S_BUSY)) { + /* check for ATAPI signature while its still there */ + lsb = ATA_IDX_INB(ch, ATA_CYL_LSB); + msb = ATA_IDX_INB(ch, ATA_CYL_MSB); + ATA_IDX_OUTB(ch, ATA_CYL_LSB, 0x00); + ATA_IDX_OUTB(ch, ATA_CYL_MSB, 0x00); if (bootverbose) ata_printf(ch, ATA_SLAVE, "ATAPI %02x %02x\n", lsb, msb); if (lsb == ATAPI_MAGIC_LSB && msb == ATAPI_MAGIC_MSB) @@ -568,7 +569,7 @@ if (mask == 0x03) /* wait for both master & slave */ if (!(stat0 & ATA_S_BUSY) && !(stat1 & ATA_S_BUSY)) break; - DELAY(100); + DELAY(100000); } DELAY(10); ATA_IDX_OUTB(ch, ATA_ALTSTAT, ATA_A_4BIT); ==== //depot/projects/uart/dev/ata/atapi-cam.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cam.c,v 1.20 2003/08/24 17:48:05 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cam.c,v 1.21 2003/08/28 03:56:04 thomas Exp $"); #include #include @@ -465,9 +465,10 @@ if ((ccb_h->flags & CAM_DIR_MASK) == CAM_DIR_IN && (len & 1)) { /* ATA always transfers an even number of bytes */ if (!(buf = hcb->dxfer_alloc = malloc(++len, M_ATACAM, - M_NOWAIT | M_ZERO))) + M_NOWAIT | M_ZERO))) { printf("cannot allocate ATAPI/CAM buffer\n"); goto action_oom; + } } request->device = dev; request->driver = hcb; ==== //depot/projects/uart/dev/em/README#2 (text+ko) ==== @@ -1,8 +1,8 @@ -$FreeBSD: src/sys/dev/em/README,v 1.7 2003/06/05 17:51:37 pdeuskar Exp $ +$FreeBSD: src/sys/dev/em/README,v 1.8 2003/08/27 21:52:36 pdeuskar Exp $ FreeBSD* Driver for the Intel(R) PRO/1000 Family of Adapters ============================================================ -April 13, 2003 +July 24, 2003 Contents @@ -21,7 +21,7 @@ Overview ======== -This file describes the FreeBSD* driver, version 1.5.x, for the Intel(R) +This file describes the FreeBSD* driver, version 1.7.x, for the Intel(R) PRO/1000 Family of Adapters. This driver has been developed for use with FreeBSD, version 4.7. @@ -51,9 +51,10 @@ 82544 PRO/1000 XF Server Adapter A50484-xxx 82544 PRO/1000 T Desktop Adapter A62947-xxx - + 82540 PRO/1000 MT Desktop Adapter A78408-xxx - 82541 C91016-xxx + + 82541 PRO/1000 MT Desktop Adapter C91016-xxx 82545 PRO/1000 MT Server Adapter A92165-xxx @@ -67,6 +68,7 @@ 82546EB PRO/1000 MT Quad Port Server Adapter C11227-xxx + 82547 PRO/1000 CT Network Connection To verify your Intel adapter is supported, find the board ID number on the @@ -281,8 +283,46 @@ Known Limitations ================= -There are known performance issues with this driver when running UDP traffic -with Jumbo Frames. Intel recommends not using Jumbo Frames for UDP traffic. + There are known performance issues with this driver when running UDP traffic + with Jumbo Frames. Intel recommends not using Jumbo Frames for UDP traffic. + + + 82541/82547 can't link or is slow to link with some link partners + ----------------------------------------------------------------- + + There is a known compatibility issue with 82541/82547 and some switches + where link will not be established, or will be slow to establish. In + particular, these switches are known to be incompatible with 82541/82547: + + Planex FXG-08TE + I-O Data ETG-SH8 + + To workaround the issue, the driver can be compiled with an override of the + PHY's master/slave setting. Forcing master or forcing slave mode will + improve time-to-link. + + Edit ./em.x.x.x/src/if_em.h to remove the #define EM_MASTER_SLAVE + from within the comments. + + /* #define EM_MASTER_SLAVE 2 */ + #define EM_MASTER_SLAVE 2 + + Use one of the following options. + 0 = Hardware default + 1 = Master mode + 2 = Slave mode + 3 = Auto master/slave + + Recompile the module (refer to step 3 above) + a. To compile the module + + cd em-x.x.x + make clean + make + + b. To install the compiled module in system directory: + + make install Support ==== //depot/projects/uart/dev/em/if_em.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ ***************************************************************************/ -/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.28 2003/08/01 17:33:59 jdp Exp $*/ +/*$FreeBSD: src/sys/dev/em/if_em.c,v 1.29 2003/08/27 21:52:36 pdeuskar Exp $*/ #include @@ -51,7 +51,7 @@ * Driver version *********************************************************************/ -char em_driver_version[] = "1.6.6"; +char em_driver_version[] = "1.7.16"; /********************************************************************* @@ -89,6 +89,16 @@ { 0x8086, 0x101A, PCI_ANY_ID, PCI_ANY_ID, 0}, { 0x8086, 0x101D, PCI_ANY_ID, PCI_ANY_ID, 0}, { 0x8086, 0x101E, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1026, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1027, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1028, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1075, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1076, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1077, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1078, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x1079, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x107A, PCI_ANY_ID, PCI_ANY_ID, 0}, + { 0x8086, 0x107B, PCI_ANY_ID, PCI_ANY_ID, 0}, /* required last entry */ { 0, 0, 0, 0, 0} }; @@ -163,6 +173,9 @@ static int em_is_valid_ether_addr(u_int8_t *); static int em_sysctl_stats(SYSCTL_HANDLER_ARGS); static int em_sysctl_debug_info(SYSCTL_HANDLER_ARGS); +static u_int32_t em_fill_descriptors (u_int64_t address, + u_int32_t length, + PDESC_ARRAY desc_array); static int em_sysctl_int_delay(SYSCTL_HANDLER_ARGS); static void em_add_int_delay_sysctl(struct adapter *, const char *, const char *, struct em_int_delay_info *, @@ -367,7 +380,13 @@ adapter->hw.fc = em_fc_full; adapter->hw.phy_init_script = 1; + adapter->hw.phy_reset_disable = FALSE; +#ifndef EM_MASTER_SLAVE + adapter->hw.master_slave = em_ms_hw_default; +#else + adapter->hw.master_slave = EM_MASTER_SLAVE; +#endif /* * Set the max frame size assuming standard ethernet * sized frames @@ -465,6 +484,15 @@ } else printf("em%d: Speed:N/A Duplex:N/A\n", adapter->unit); + /* Identify 82544 on PCIX */ + em_get_bus_info(&adapter->hw); + if(adapter->hw.bus_type == em_bus_type_pcix && + adapter->hw.mac_type == em_82544) { + adapter->pcix_82544 = TRUE; + } + else { + adapter->pcix_82544 = FALSE; + } INIT_DEBUGOUT("em_attach: end"); splx(s); return(0); @@ -525,6 +553,9 @@ adapter->rx_desc_base = NULL; } + /* Free the sysctl tree */ + sysctl_ctx_free(&adapter->sysctl_ctx); + /* Remove from the adapter list */ if (em_adapter_list == adapter) em_adapter_list = adapter->next; @@ -641,8 +672,11 @@ case SIOCSIFFLAGS: IOCTL_DEBUGOUT("ioctl rcv'd: SIOCSIFFLAGS (Set Interface Flags)"); if (ifp->if_flags & IFF_UP) { - if (!(ifp->if_flags & IFF_RUNNING)) + if (!(ifp->if_flags & IFF_RUNNING)) { + bcopy(IF_LLADDR(ifp), adapter->hw.mac_addr, + ETHER_ADDR_LEN); em_init(adapter); + } em_disable_promisc(adapter); em_set_promisc(adapter); @@ -685,7 +719,7 @@ } break; default: - IOCTL_DEBUGOUT1("ioctl received: UNKNOWN (0x%d)\n", (int)command); + IOCTL_DEBUGOUT1("ioctl received: UNKNOWN (0x%x)\n", (int)command); error = EINVAL; } @@ -1052,9 +1086,15 @@ em_encap(struct adapter *adapter, struct mbuf *m_head) { u_int32_t txd_upper; - u_int32_t txd_lower; + u_int32_t txd_lower, txd_used = 0, txd_saved = 0; int i, j, error; - + u_int64_t address; + + /* For 82544 Workaround */ + DESC_ARRAY desc_array; + u_int32_t array_elements; + u_int32_t counter; + #if __FreeBSD_version < 500000 struct ifvlan *ifv = NULL; #else @@ -1118,23 +1158,66 @@ #endif i = adapter->next_avail_tx_desc; + if (adapter->pcix_82544) { + txd_saved = i; + txd_used = 0; + } for (j = 0; j < q.nsegs; j++) { - tx_buffer = &adapter->tx_buffer_area[i]; - current_tx_desc = &adapter->tx_desc_base[i]; + /* If adapter is 82544 and on PCIX bus */ + if(adapter->pcix_82544) { + array_elements = 0; + address = htole64(q.segs[j].ds_addr); + /* + * Check the Address and Length combination and + * split the data accordingly + */ + array_elements = em_fill_descriptors(address, + htole32(q.segs[j].ds_len), + &desc_array); + for (counter = 0; counter < array_elements; counter++) { + if (txd_used == adapter->num_tx_desc_avail) { + adapter->next_avail_tx_desc = txd_saved; + adapter->no_tx_desc_avail2++; + bus_dmamap_destroy(adapter->txtag, q.map); + return (ENOBUFS); + } + tx_buffer = &adapter->tx_buffer_area[i]; + current_tx_desc = &adapter->tx_desc_base[i]; + current_tx_desc->buffer_addr = htole64( + desc_array.descriptor[counter].address); + current_tx_desc->lower.data = htole32( + (adapter->txd_cmd | txd_lower | + (u_int16_t)desc_array.descriptor[counter].length)); + current_tx_desc->upper.data = htole32((txd_upper)); + if (++i == adapter->num_tx_desc) + i = 0; + + tx_buffer->m_head = NULL; + txd_used++; + } + } else { + tx_buffer = &adapter->tx_buffer_area[i]; + current_tx_desc = &adapter->tx_desc_base[i]; - current_tx_desc->buffer_addr = htole64(q.segs[j].ds_addr); - current_tx_desc->lower.data = htole32( - adapter->txd_cmd | txd_lower | q.segs[j].ds_len); - current_tx_desc->upper.data = htole32(txd_upper); + current_tx_desc->buffer_addr = htole64(q.segs[j].ds_addr); + current_tx_desc->lower.data = htole32( + adapter->txd_cmd | txd_lower | q.segs[j].ds_len); + current_tx_desc->upper.data = htole32(txd_upper); - if (++i == adapter->num_tx_desc) - i = 0; + if (++i == adapter->num_tx_desc) + i = 0; - tx_buffer->m_head = NULL; + tx_buffer->m_head = NULL; + } } - adapter->num_tx_desc_avail -= q.nsegs; - adapter->next_avail_tx_desc = i; + adapter->next_avail_tx_desc = i; + if (adapter->pcix_82544) { + adapter->num_tx_desc_avail -= txd_used; + } + else { + adapter->num_tx_desc_avail -= q.nsegs; + } #if __FreeBSD_version < 500000 if (ifv != NULL) { @@ -1474,7 +1557,7 @@ struct adapter * adapter = arg; ifp = &adapter->interface_data.ac_if; - INIT_DEBUGOUT("em_stop: begin\n"); + INIT_DEBUGOUT("em_stop: begin"); em_disable_intr(adapter); em_reset_hw(&adapter->hw); untimeout(em_local_timer, adapter, adapter->timer_handle); @@ -1522,6 +1605,12 @@ /* Identify the MAC */ if (em_set_mac_type(&adapter->hw)) printf("em%d: Unknown MAC Type\n", adapter->unit); + + if(adapter->hw.mac_type == em_82541 || + adapter->hw.mac_type == em_82541_rev_2 || + adapter->hw.mac_type == em_82547 || + adapter->hw.mac_type == em_82547_rev_2) + adapter->hw.phy_init_script = TRUE; return; } @@ -1629,6 +1718,7 @@ static int em_hardware_init(struct adapter * adapter) { + INIT_DEBUGOUT("em_hardware_init: begin"); /* Issue a global reset */ em_reset_hw(&adapter->hw); @@ -1984,6 +2074,7 @@ u_int32_t reg_tipg = 0; u_int64_t bus_addr; + INIT_DEBUGOUT("em_initialize_transmit_unit: begin"); /* Setup the Base and Length of the Tx Descriptor Ring */ bus_addr = adapter->txdma.dma_paddr; E1000_WRITE_REG(&adapter->hw, TDBAL, (u_int32_t)bus_addr); @@ -2399,6 +2490,7 @@ struct ifnet *ifp; u_int64_t bus_addr; + INIT_DEBUGOUT("em_initialize_receive_unit: begin"); ifp = &adapter->interface_data.ac_if; /* Make sure receives are disabled while setting up the descriptor ring */ @@ -2469,6 +2561,7 @@ /* Enable Receives */ E1000_WRITE_REG(&adapter->hw, RCTL, reg_rctl); + em_set_promisc(adapter); return; } @@ -2805,6 +2898,59 @@ return; } +/********************************************************************* +* 82544 Coexistence issue workaround. +* There are 2 issues. +* 1. Transmit Hang issue. +* To detect this issue, following equation can be used... +* SIZE[3:0] + ADDR[2:0] = SUM[3:0]. +* If SUM[3:0] is in between 1 to 4, we will have this issue. +* +* 2. DAC issue. +* To detect this issue, following equation can be used... +* SIZE[3:0] + ADDR[2:0] = SUM[3:0]. +* If SUM[3:0] is in between 9 to c, we will have this issue. +* +* +* WORKAROUND: +* Make sure we do not have ending address as 1,2,3,4(Hang) or 9,a,b,c (DAC) +* +*** *********************************************************************/ +static u_int32_t +em_fill_descriptors (u_int64_t address, + u_int32_t length, + PDESC_ARRAY desc_array) +{ + /* Since issue is sensitive to length and address.*/ + /* Let us first check the address...*/ + u_int32_t safe_terminator; + if (length <= 4) { + desc_array->descriptor[0].address = address; + desc_array->descriptor[0].length = length; + desc_array->elements = 1; + return desc_array->elements; + } + safe_terminator = (u_int32_t)((((u_int32_t)address & 0x7) + (length & 0xF)) & 0xF); + /* if it does not fall between 0x1 to 0x4 and 0x9 to 0xC then return */ + if (safe_terminator == 0 || + (safe_terminator > 4 && + safe_terminator < 9) || + (safe_terminator > 0xC && + safe_terminator <= 0xF)) { + desc_array->descriptor[0].address = address; + desc_array->descriptor[0].length = length; + desc_array->elements = 1; + return desc_array->elements; + } + + desc_array->descriptor[0].address = address; + desc_array->descriptor[0].length = length - 4; + desc_array->descriptor[1].address = address + (length - 4); + desc_array->descriptor[1].length = 4; + desc_array->elements = 2; + return desc_array->elements; +} + /********************************************************************** * * Update the board statistics counters. @@ -2815,8 +2961,12 @@ { struct ifnet *ifp; + if(adapter->hw.media_type == em_media_type_copper || + (E1000_READ_REG(&adapter->hw, STATUS) & E1000_STATUS_LU)) { + adapter->stats.symerrs += E1000_READ_REG(&adapter->hw, SYMERRS); + adapter->stats.sec += E1000_READ_REG(&adapter->hw, SEC); + } adapter->stats.crcerrs += E1000_READ_REG(&adapter->hw, CRCERRS); - adapter->stats.symerrs += E1000_READ_REG(&adapter->hw, SYMERRS); adapter->stats.mpc += E1000_READ_REG(&adapter->hw, MPC); adapter->stats.scc += E1000_READ_REG(&adapter->hw, SCC); adapter->stats.ecol += E1000_READ_REG(&adapter->hw, ECOL); @@ -2825,7 +2975,6 @@ adapter->stats.latecol += E1000_READ_REG(&adapter->hw, LATECOL); adapter->stats.colc += E1000_READ_REG(&adapter->hw, COLC); adapter->stats.dc += E1000_READ_REG(&adapter->hw, DC); - adapter->stats.sec += E1000_READ_REG(&adapter->hw, SEC); adapter->stats.rlec += E1000_READ_REG(&adapter->hw, RLEC); adapter->stats.xonrxc += E1000_READ_REG(&adapter->hw, XONRXC); adapter->stats.xontxc += E1000_READ_REG(&adapter->hw, XONTXC); ==== //depot/projects/uart/dev/em/if_em.h#6 (text+ko) ==== @@ -31,7 +31,7 @@ ***************************************************************************/ -/*$FreeBSD: src/sys/dev/em/if_em.h,v 1.20 2003/08/22 05:54:51 imp Exp $*/ +/*$FreeBSD: src/sys/dev/em/if_em.h,v 1.21 2003/08/27 21:52:37 pdeuskar Exp $*/ #ifndef _EM_H_DEFINED_ #define _EM_H_DEFINED_ @@ -81,7 +81,7 @@ /* Tunables */ /* - * TxDescriptors + * EM_MAX_TXD: Maximum number of Transmit Descriptors * Valid Range: 80-256 for 82542 and 82543-based adapters * 80-4096 for others * Default Value: 256 @@ -92,7 +92,7 @@ #define EM_MAX_TXD 256 /* - * RxDescriptors + * EM_MAX_RXD - Maximum number of receive Descriptors * Valid Range: 80-256 for 82542 and 82543-based adapters * 80-4096 for others * Default Value: 256 @@ -105,7 +105,7 @@ #define EM_MAX_RXD 256 /* - * TxIntDelay + * EM_TIDV - Transmit Interrupt Delay Value * Valid Range: 0-65535 (0=off) * Default Value: 64 * This value delays the generation of transmit interrupts in units of @@ -117,20 +117,20 @@ #define EM_TIDV 64 /* - * TxAbsIntDelay (Not valid for 82542/82543/82544) + * EM_TADV - Transmit Absolute Interrupt Delay Value (Not valid for 82542/82543/82544) * Valid Range: 0-65535 (0=off) * Default Value: 64 * This value, in units of 1.024 microseconds, limits the delay in which a - * transmit interrupt is generated. Useful only if TxIntDelay is non-zero, + * transmit interrupt is generated. Useful only if EM_TIDV is non-zero, * this value ensures that an interrupt is generated after the initial * packet is sent on the wire within the set amount of time. Proper tuning, - * along with TxIntDelay, may improve traffic throughput in specific + * along with EM_TIDV, may improve traffic throughput in specific * network conditions. */ #define EM_TADV 64 /* - * RxIntDelay + * EM_RDTR - Receive Interrupt Delay Timer (Packet Timer) * Valid Range: 0-65535 (0=off) * Default Value: 0 * This value delays the generation of receive interrupts in units of 1.024 @@ -141,24 +141,24 @@ * may be set too high, causing the driver to run out of available receive * descriptors. * - * CAUTION: When setting RxIntDelay to a value other than 0, adapters + * CAUTION: When setting EM_RDTR to a value other than 0, adapters * may hang (stop transmitting) under certain network conditions. * If this occurs a WATCHDOG message is logged in the system event log. * In addition, the controller is automatically reset, restoring the * network connection. To eliminate the potential for the hang - * ensure that RxIntDelay is set to 0. + * ensure that EM_RDTR is set to 0. */ #define EM_RDTR 0 /* - * RxAbsIntDelay (Not valid for 82542/82543/82544) + * Receive Interrupt Absolute Delay Timer (Not valid for 82542/82543/82544) * Valid Range: 0-65535 (0=off) * Default Value: 64 * This value, in units of 1.024 microseconds, limits the delay in which a - * receive interrupt is generated. Useful only if RxIntDelay is non-zero, + * receive interrupt is generated. Useful only if EM_RDTR is non-zero, * this value ensures that an interrupt is generated after the initial * packet is received within the set amount of time. Proper tuning, - * along with RxIntDelay, may improve traffic throughput in specific network + * along with EM_RDTR, may improve traffic throughput in specific network * conditions. */ #define EM_RADV 64 @@ -202,6 +202,17 @@ */ #define WAIT_FOR_AUTO_NEG_DEFAULT 0 +/* + * EM_MASTER_SLAVE is only defined to enable a workaround for a known compatibility issue + * with 82541/82547 devices and some switches. See the "Known Limitations" section of + * the README file for a complete description and a list of affected switches. + * + * 0 = Hardware default + * 1 = Master mode + * 2 = Slave mode + * 3 = Auto master/slave + */ +/* #define EM_MASTER_SLAVE 2 */ /* Tunables -- End */ @@ -301,6 +312,19 @@ int value; /* Current value in usecs */ }; +/* For 82544 PCIX Workaround */ +typedef struct _ADDRESS_LENGTH_PAIR +{ + u_int64_t address; + u_int32_t length; +} ADDRESS_LENGTH_PAIR, *PADDRESS_LENGTH_PAIR; + +typedef struct _DESCRIPTOR_PAIR +{ + ADDRESS_LENGTH_PAIR descriptor[4]; + u_int32_t elements; +} DESC_ARRAY, *PDESC_ARRAY; + /* Our adapter structure */ struct adapter { struct arpcom interface_data; @@ -389,6 +413,9 @@ u_int64_t tx_fifo_reset; u_int64_t tx_fifo_wrk; + /* For 82544 PCIX Workaround */ + boolean_t pcix_82544; + #ifdef DBG_STATS unsigned long no_pkts_avail; unsigned long clean_tx_interrupts; ==== //depot/projects/uart/dev/em/if_em_hw.c#3 (text+ko) ==== @@ -36,20 +36,21 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/em/if_em_hw.c,v 1.10 2003/08/24 17:46:04 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/em/if_em_hw.c,v 1.11 2003/08/27 21:52:37 pdeuskar Exp $"); #include static int32_t em_set_phy_type(struct em_hw *hw); static void em_phy_init_script(struct em_hw *hw); -static int32_t em_setup_fiber_link(struct em_hw *hw); static int32_t em_setup_copper_link(struct em_hw *hw); +static int32_t em_setup_fiber_serdes_link(struct em_hw *hw); +static int32_t em_adjust_serdes_amplitude(struct em_hw *hw); static int32_t em_phy_force_speed_duplex(struct em_hw *hw); static int32_t em_config_mac_to_phy(struct em_hw *hw); -static int32_t em_force_mac_fc(struct em_hw *hw); static void em_raise_mdi_clk(struct em_hw *hw, uint32_t *ctrl); static void em_lower_mdi_clk(struct em_hw *hw, uint32_t *ctrl); -static void em_shift_out_mdi_bits(struct em_hw *hw, uint32_t data, uint16_t count); +static void em_shift_out_mdi_bits(struct em_hw *hw, uint32_t data, + uint16_t count); static uint16_t em_shift_in_mdi_bits(struct em_hw *hw); static int32_t em_phy_reset_dsp(struct em_hw *hw); static int32_t em_write_eeprom_spi(struct em_hw *hw, uint16_t offset, @@ -60,13 +61,30 @@ static int32_t em_spi_eeprom_ready(struct em_hw *hw); static void em_raise_ee_clk(struct em_hw *hw, uint32_t *eecd); static void em_lower_ee_clk(struct em_hw *hw, uint32_t *eecd); -static void em_shift_out_ee_bits(struct em_hw *hw, uint16_t data, uint16_t count); +static void em_shift_out_ee_bits(struct em_hw *hw, uint16_t data, + uint16_t count); +static int32_t em_write_phy_reg_ex(struct em_hw *hw, uint32_t reg_addr, + uint16_t phy_data); +static int32_t em_read_phy_reg_ex(struct em_hw *hw,uint32_t reg_addr, + uint16_t *phy_data); static uint16_t em_shift_in_ee_bits(struct em_hw *hw, uint16_t count); static int32_t em_acquire_eeprom(struct em_hw *hw); static void em_release_eeprom(struct em_hw *hw); static void em_standby_eeprom(struct em_hw *hw); static int32_t em_id_led_init(struct em_hw * hw); +static int32_t em_set_vco_speed(struct em_hw *hw); +/* IGP cable length table */ +static const +uint16_t em_igp_cable_length_table[IGP01E1000_AGC_LENGTH_TABLE_SIZE] = + { 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 10, 10, 10, 10, 10, 10, 10, 20, 20, 20, 20, 20, 25, 25, 25, + 25, 25, 25, 25, 30, 30, 30, 30, 40, 40, 40, 40, 40, 40, 40, 40, + 40, 50, 50, 50, 50, 50, 50, 50, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 70, 70, 70, 70, 70, 70, 80, 80, 80, 80, 80, 80, 90, 90, 90, + 90, 90, 90, 90, 90, 90, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, + 100, 100, 100, 100, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, + 110, 110, 110, 110, 110, 110, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120}; /****************************************************************************** @@ -108,41 +126,64 @@ DEBUGFUNC("em_phy_init_script"); if(hw->phy_init_script) { - msec_delay(10); + msec_delay(20); - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x0000); em_write_phy_reg(hw,0x0000,0x0140); msec_delay(5); - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x1F95); - em_write_phy_reg(hw,0x0015,0x0001); + + if(hw->mac_type == em_82541 || hw->mac_type == em_82547) { + em_write_phy_reg(hw, 0x1F95, 0x0001); + + em_write_phy_reg(hw, 0x1F71, 0xBD21); + + em_write_phy_reg(hw, 0x1F79, 0x0018); + + em_write_phy_reg(hw, 0x1F30, 0x1600); + + em_write_phy_reg(hw, 0x1F31, 0x0014); + + em_write_phy_reg(hw, 0x1F32, 0x161C); + + em_write_phy_reg(hw, 0x1F94, 0x0003); + + em_write_phy_reg(hw, 0x1F96, 0x003F); + + em_write_phy_reg(hw, 0x2010, 0x0008); + } else { + em_write_phy_reg(hw, 0x1F73, 0x0099); + } - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x1F71); - em_write_phy_reg(hw,0x0011,0xBD21); + em_write_phy_reg(hw, 0x0000, 0x3300); - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x1F79); - em_write_phy_reg(hw,0x0019,0x0018); - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x1F30); - em_write_phy_reg(hw,0x0010,0x1600); + if(hw->mac_type == em_82547) { + uint16_t fused, fine, coarse; - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x1F31); - em_write_phy_reg(hw,0x0011,0x0014); + /* Move to analog registers page */ + em_read_phy_reg(hw, IGP01E1000_ANALOG_SPARE_FUSE_STATUS, &fused); - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x1F32); - em_write_phy_reg(hw,0x0012,0x161C); + if(!(fused & IGP01E1000_ANALOG_SPARE_FUSE_ENABLED)) { + em_read_phy_reg(hw, IGP01E1000_ANALOG_FUSE_STATUS, &fused); - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x1F94); - em_write_phy_reg(hw,0x0014,0x0003); + fine = fused & IGP01E1000_ANALOG_FUSE_FINE_MASK; + coarse = fused & IGP01E1000_ANALOG_FUSE_COARSE_MASK; - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x1F96); - em_write_phy_reg(hw,0x0016,0x003F); + if(coarse > IGP01E1000_ANALOG_FUSE_COARSE_THRESH) { + coarse -= IGP01E1000_ANALOG_FUSE_COARSE_10; + fine -= IGP01E1000_ANALOG_FUSE_FINE_1; + } else if(coarse == IGP01E1000_ANALOG_FUSE_COARSE_THRESH) + fine -= IGP01E1000_ANALOG_FUSE_FINE_10; - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x2010); - em_write_phy_reg(hw,0x0010,0x0008); + fused = (fused & IGP01E1000_ANALOG_FUSE_POLY_MASK) | + (fine & IGP01E1000_ANALOG_FUSE_FINE_MASK) | + (coarse & IGP01E1000_ANALOG_FUSE_COARSE_MASK); - em_write_phy_reg(hw,IGP01E1000_PHY_PAGE_SELECT,0x0000); - em_write_phy_reg(hw,0x0000,0x3300); + em_write_phy_reg(hw, IGP01E1000_ANALOG_FUSE_CONTROL, fused); + em_write_phy_reg(hw, IGP01E1000_ANALOG_FUSE_BYPASS, + IGP01E1000_ANALOG_FUSE_ENABLE_SW_CONTROL); + } + } } } @@ -191,32 +232,89 @@ case E1000_DEV_ID_82545EM_FIBER: hw->mac_type = em_82545; break; + case E1000_DEV_ID_82545GM_COPPER: + case E1000_DEV_ID_82545GM_FIBER: + case E1000_DEV_ID_82545GM_SERDES: + hw->mac_type = em_82545_rev_3; + break; case E1000_DEV_ID_82546EB_COPPER: case E1000_DEV_ID_82546EB_FIBER: case E1000_DEV_ID_82546EB_QUAD_COPPER: hw->mac_type = em_82546; break; + case E1000_DEV_ID_82546GB_COPPER: + case E1000_DEV_ID_82546GB_FIBER: + case E1000_DEV_ID_82546GB_SERDES: + hw->mac_type = em_82546_rev_3; + break; case E1000_DEV_ID_82541EI: - case E1000_DEV_ID_82541EP: + case E1000_DEV_ID_82541EI_MOBILE: hw->mac_type = em_82541; break; + case E1000_DEV_ID_82541ER: + case E1000_DEV_ID_82541GI: + case E1000_DEV_ID_82541GI_MOBILE: + hw->mac_type = em_82541_rev_2; + break; case E1000_DEV_ID_82547EI: hw->mac_type = em_82547; break; + case E1000_DEV_ID_82547GI: + hw->mac_type = em_82547_rev_2; + break; default: /* Should never have loaded on this device */ return -E1000_ERR_MAC_TYPE; } + return E1000_SUCCESS; +} - return E1000_SUCCESS; +/***************************************************************************** + * Set media type and TBI compatibility. + * + * hw - Struct containing variables accessed by shared code + * **************************************************************************/ +void +em_set_media_type(struct em_hw *hw) +{ + uint32_t status; + + DEBUGFUNC("em_set_media_type"); + + if(hw->mac_type != em_82543) { + /* tbi_compatibility is only valid on 82543 */ + hw->tbi_compatibility_en = FALSE; + } + + switch (hw->device_id) { + case E1000_DEV_ID_82545GM_SERDES: + case E1000_DEV_ID_82546GB_SERDES: + hw->media_type = em_media_type_internal_serdes; + break; + default: + if(hw->mac_type >= em_82543) { + status = E1000_READ_REG(hw, STATUS); + if(status & E1000_STATUS_TBIMODE) { + hw->media_type = em_media_type_fiber; + /* tbi_compatibility not valid on fiber */ + hw->tbi_compatibility_en = FALSE; + } else { + hw->media_type = em_media_type_copper; + } + } else { + /* This is an 82542 (fiber only) */ + hw->media_type = em_media_type_fiber; + } + } } + /****************************************************************************** * Reset the transmit and receive units; mask and clear all interrupts. * * hw - Struct containing variables accessed by shared code *****************************************************************************/ -void +int32_t em_reset_hw(struct em_hw *hw) { uint32_t ctrl; @@ -253,49 +351,75 @@ */ msec_delay(10); + ctrl = E1000_READ_REG(hw, CTRL); + + /* Must reset the PHY before resetting the MAC */ + if((hw->mac_type == em_82541) || (hw->mac_type == em_82547)) { + E1000_WRITE_REG_IO(hw, CTRL, (ctrl | E1000_CTRL_PHY_RST)); + msec_delay(5); + } + /* Issue a global reset to the MAC. This will reset the chip's * transmit, receive, DMA, and link units. It will not effect * the current PCI configuration. The global reset bit is self- * clearing, and should clear within a microsecond. */ DEBUGOUT("Issuing a global reset to MAC\n"); - ctrl = E1000_READ_REG(hw, CTRL); - /* Must reset the PHY before resetting the MAC */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 28 08:00:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 850C316A4C1; Thu, 28 Aug 2003 08:00:31 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 53B2616A4BF for ; Thu, 28 Aug 2003 08:00:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DADD14400D for ; Thu, 28 Aug 2003 08:00:30 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7SF0U0U004159 for ; Thu, 28 Aug 2003 08:00:30 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7SF0Ugk004156 for perforce@freebsd.org; Thu, 28 Aug 2003 08:00:30 -0700 (PDT) Date: Thu, 28 Aug 2003 08:00:30 -0700 (PDT) Message-Id: <200308281500.h7SF0Ugk004156@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37073 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 15:00:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=37073 Change 37073 by cvance@cvance_release on 2003/08/28 07:59:40 Remove a couple rc's from BIN1, they are already in BIN2, where they need to be in order to be installed with execute bits. This has the feel of a mis-merge/mis-integ. Affected files ... .. //depot/projects/trustedbsd/sebsd/etc/Makefile#4 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/etc/Makefile#4 (text+ko) ==== @@ -12,7 +12,7 @@ inetd.conf login.access login.conf \ mac.conf motd netconfig network.subr networks newsyslog.conf \ phones printcap profile protocols \ - rc rc.firewall rc.firewall6 rc.sendmail rc.shutdown \ + rc.firewall rc.firewall6 rc.sendmail \ rc.subr remote rpc services \ shells sysctl.conf syslog.conf usbd.conf \ etc.${MACHINE_ARCH}/ttys \ From owner-p4-projects@FreeBSD.ORG Thu Aug 28 08:29:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 82F6916A4C1; Thu, 28 Aug 2003 08:29:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5DE8016A4BF for ; Thu, 28 Aug 2003 08:29:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D17C743FBF for ; Thu, 28 Aug 2003 08:29:05 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7SFT50U006181 for ; Thu, 28 Aug 2003 08:29:05 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7SFT5dJ006178 for perforce@freebsd.org; Thu, 28 Aug 2003 08:29:05 -0700 (PDT) Date: Thu, 28 Aug 2003 08:29:05 -0700 (PDT) Message-Id: <200308281529.h7SFT5dJ006178@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37074 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 15:29:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=37074 Change 37074 by cvance@cvance_release on 2003/08/28 08:28:41 Link in newrole, though I'm not sure I would recommend it for general consumption. Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.sbin/Makefile#5 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/usr.sbin/Makefile#5 (text+ko) ==== @@ -103,6 +103,7 @@ rwhod \ sa \ sebsd_loadpolicy \ + sebsd_newrole \ setkey \ setpmac \ sliplogin \ From owner-p4-projects@FreeBSD.ORG Thu Aug 28 10:50:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 990B916A4D5; Thu, 28 Aug 2003 10:50:09 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3EDA916A4D5 for ; Thu, 28 Aug 2003 10:50:09 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8F2144008 for ; Thu, 28 Aug 2003 10:50:07 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7SHo70U019868 for ; Thu, 28 Aug 2003 10:50:07 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7SHo7hK019865 for perforce@freebsd.org; Thu, 28 Aug 2003 10:50:07 -0700 (PDT) Date: Thu, 28 Aug 2003 10:50:07 -0700 (PDT) Message-Id: <200308281750.h7SHo7hK019865@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 37084 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 17:50:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=37084 Change 37084 by rwatson@rwatson_tislabs on 2003/08/28 10:50:03 Define a MAC_STATIC option, which informs the MAC Framework that no policies may be dynamically loaded or unloaded after boot. This permits all locking operations for MAC Framework meta-data to be eliminated, and should provide for a subtantial performance enhancement on with static policies, especially on SMP systems. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/options#55 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#406 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/options#55 (text+ko) ==== @@ -115,6 +115,7 @@ MAC_PARTITION opt_dontuse.h MAC_PORTACL opt_dontuse.h MAC_SEEOTHERUIDS opt_dontuse.h +MAC_STATIC opt_mac.h MAC_STUB opt_dontuse.h MAC_TEST opt_dontuse.h MD_ROOT opt_md.h ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#406 (text+ko) ==== @@ -289,9 +289,11 @@ * exclusive consumers that they should try to acquire the lock if a * first attempt at exclusive access fails. */ +#ifndef MAC_STATIC static struct mtx mac_policy_mtx; static struct cv mac_policy_cv; static int mac_policy_count; +#endif static LIST_HEAD(, mac_policy_conf) mac_policy_list; static LIST_HEAD(, mac_policy_conf) mac_static_policy_list; @@ -307,42 +309,54 @@ static __inline void mac_policy_grab_exclusive(void) { + +#ifndef MAC_STATIC WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, "mac_policy_grab_exclusive() at %s:%d", __FILE__, __LINE__); mtx_lock(&mac_policy_mtx); while (mac_policy_count != 0) cv_wait(&mac_policy_cv, &mac_policy_mtx); +#endif } static __inline void mac_policy_assert_exclusive(void) { + +#ifndef MAC_STATIC mtx_assert(&mac_policy_mtx, MA_OWNED); KASSERT(mac_policy_count == 0, ("mac_policy_assert_exclusive(): not exclusive")); +#endif } static __inline void mac_policy_release_exclusive(void) { +#ifndef MAC_STATIC KASSERT(mac_policy_count == 0, ("mac_policy_release_exclusive(): not exclusive")); mtx_unlock(&mac_policy_mtx); cv_signal(&mac_policy_cv); +#endif } static __inline void mac_policy_list_busy(void) { + +#ifndef MAC_STATIC mtx_lock(&mac_policy_mtx); mac_policy_count++; mtx_unlock(&mac_policy_mtx); +#endif } static __inline int mac_policy_list_conditional_busy(void) { +#ifndef MAC_STATIC int ret; mtx_lock(&mac_policy_mtx); @@ -353,17 +367,23 @@ ret = 0; mtx_unlock(&mac_policy_mtx); return (ret); +#else + return (0); +#endif } static __inline void mac_policy_list_unbusy(void) { + +#ifndef MAC_STATIC mtx_lock(&mac_policy_mtx); mac_policy_count--; KASSERT(mac_policy_count >= 0, ("MAC_POLICY_LIST_LOCK")); if (mac_policy_count == 0) cv_signal(&mac_policy_cv); mtx_unlock(&mac_policy_mtx); +#endif } /* @@ -521,8 +541,10 @@ LIST_INIT(&mac_static_policy_list); LIST_INIT(&mac_policy_list); +#ifndef MAC_STATIC mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); cv_init(&mac_policy_cv, "mac_policy_cv"); +#endif } /* @@ -577,6 +599,13 @@ error = 0; mpc = (struct mac_policy_conf *) data; +#ifdef MAC_STATIC + if (mac_late) { + printf("mac_policy_modevent: MAC_STATIC and late\n"); + return (EBUSY); + } +#endif + switch (type) { case MOD_LOAD: if (mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_NOTLATE && From owner-p4-projects@FreeBSD.ORG Thu Aug 28 11:09:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3DDAB16A4C1; Thu, 28 Aug 2003 11:09:44 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D67A316A4BF for ; Thu, 28 Aug 2003 11:09:43 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 67AFA43FBD for ; Thu, 28 Aug 2003 11:09:40 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7SI9d0U021562 for ; Thu, 28 Aug 2003 11:09:39 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7SI9Wqx021555 for perforce@freebsd.org; Thu, 28 Aug 2003 11:09:32 -0700 (PDT) Date: Thu, 28 Aug 2003 11:09:32 -0700 (PDT) Message-Id: <200308281809.h7SI9Wqx021555@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 37087 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 18:09:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=37087 Change 37087 by jhb@jhb_laptop on 2003/08/28 11:09:01 IFC @37083. Huge filelist due to FBSDID additions. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/alpha-gdbstub.c#4 integrate .. //depot/projects/smpng/sys/alpha/alpha/api_up1000.c#5 integrate .. //depot/projects/smpng/sys/alpha/alpha/autoconf.c#11 integrate .. //depot/projects/smpng/sys/alpha/alpha/busspace.c#3 integrate .. //depot/projects/smpng/sys/alpha/alpha/clock.c#10 integrate .. //depot/projects/smpng/sys/alpha/alpha/cpuconf.c#5 integrate .. //depot/projects/smpng/sys/alpha/alpha/db_disasm.c#5 integrate .. //depot/projects/smpng/sys/alpha/alpha/db_interface.c#9 integrate .. //depot/projects/smpng/sys/alpha/alpha/db_trace.c#6 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_1000a.c#8 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_2100_a50.c#6 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_2100_a500.c#7 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_3000_300.c#3 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_3000_500.c#3 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_axppci_33.c#7 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_eb164.c#5 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_eb64plus.c#6 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_kn20aa.c#8 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_kn300.c#7 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_kn8ae.c#4 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_st550.c#8 integrate .. //depot/projects/smpng/sys/alpha/alpha/dec_st6600.c#5 integrate .. //depot/projects/smpng/sys/alpha/alpha/dump_machdep.c#5 integrate .. //depot/projects/smpng/sys/alpha/alpha/elf_machdep.c#10 integrate .. //depot/projects/smpng/sys/alpha/alpha/fp_emulate.c#4 integrate .. //depot/projects/smpng/sys/alpha/alpha/genassym.c#16 integrate .. //depot/projects/smpng/sys/alpha/alpha/ieee_float.c#3 integrate .. //depot/projects/smpng/sys/alpha/alpha/in_cksum.c#4 integrate .. //depot/projects/smpng/sys/alpha/alpha/interrupt.c#22 integrate .. //depot/projects/smpng/sys/alpha/alpha/machdep.c#61 integrate .. //depot/projects/smpng/sys/alpha/alpha/mem.c#12 integrate .. //depot/projects/smpng/sys/alpha/alpha/mp_machdep.c#23 integrate .. //depot/projects/smpng/sys/alpha/alpha/pmap.c#51 integrate .. //depot/projects/smpng/sys/alpha/alpha/prom.c#12 integrate .. //depot/projects/smpng/sys/alpha/alpha/promcons.c#14 integrate .. //depot/projects/smpng/sys/alpha/alpha/sgmap.c#3 integrate .. //depot/projects/smpng/sys/alpha/alpha/sys_machdep.c#17 integrate .. //depot/projects/smpng/sys/alpha/alpha/trap.c#50 integrate .. //depot/projects/smpng/sys/alpha/alpha/vm_machdep.c#27 integrate .. //depot/projects/smpng/sys/alpha/conf/NOTES#7 integrate .. //depot/projects/smpng/sys/alpha/include/cpu.h#8 integrate .. //depot/projects/smpng/sys/alpha/include/md_var.h#8 integrate .. //depot/projects/smpng/sys/alpha/include/pcb.h#4 integrate .. //depot/projects/smpng/sys/alpha/isa/isa.c#10 integrate .. //depot/projects/smpng/sys/alpha/isa/isa_dma.c#5 integrate .. //depot/projects/smpng/sys/alpha/isa/mcclock_isa.c#3 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_dummy.c#7 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_genassym.c#5 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_machdep.c#15 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_sysvec.c#15 integrate .. //depot/projects/smpng/sys/alpha/mcbus/mcbus.c#4 integrate .. //depot/projects/smpng/sys/alpha/mcbus/mcmem.c#3 integrate .. //depot/projects/smpng/sys/alpha/mcbus/mcpcia.c#18 integrate .. //depot/projects/smpng/sys/alpha/osf1/imgact_osf1.c#11 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_ioctl.c#7 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#23 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_mount.c#11 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_signal.c#22 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_sysvec.c#6 integrate .. //depot/projects/smpng/sys/alpha/pci/apecs.c#10 integrate .. //depot/projects/smpng/sys/alpha/pci/apecs_pci.c#4 integrate .. //depot/projects/smpng/sys/alpha/pci/bwx.c#3 integrate .. //depot/projects/smpng/sys/alpha/pci/cia.c#15 integrate .. //depot/projects/smpng/sys/alpha/pci/cia_pci.c#4 integrate .. //depot/projects/smpng/sys/alpha/pci/irongate.c#5 integrate .. //depot/projects/smpng/sys/alpha/pci/irongate_pci.c#5 integrate .. //depot/projects/smpng/sys/alpha/pci/lca.c#6 integrate .. //depot/projects/smpng/sys/alpha/pci/lca_pci.c#6 integrate .. //depot/projects/smpng/sys/alpha/pci/pcibus.c#4 integrate .. //depot/projects/smpng/sys/alpha/pci/swiz.c#3 integrate .. //depot/projects/smpng/sys/alpha/pci/t2.c#17 integrate .. //depot/projects/smpng/sys/alpha/pci/t2_pci.c#9 integrate .. //depot/projects/smpng/sys/alpha/pci/tsunami.c#13 integrate .. //depot/projects/smpng/sys/alpha/pci/tsunami_pci.c#5 integrate .. //depot/projects/smpng/sys/alpha/tlsb/dwlpx.c#13 integrate .. //depot/projects/smpng/sys/alpha/tlsb/gbus.c#3 integrate .. //depot/projects/smpng/sys/alpha/tlsb/kftxx.c#3 integrate .. //depot/projects/smpng/sys/alpha/tlsb/mcclock_tlsb.c#3 integrate .. //depot/projects/smpng/sys/alpha/tlsb/tlsb.c#4 integrate .. //depot/projects/smpng/sys/alpha/tlsb/tlsbcpu.c#5 integrate .. //depot/projects/smpng/sys/alpha/tlsb/tlsbmem.c#3 integrate .. //depot/projects/smpng/sys/alpha/tlsb/zs_tlsb.c#12 integrate .. //depot/projects/smpng/sys/amd64/acpica/OsdEnvironment.c#4 integrate .. //depot/projects/smpng/sys/amd64/acpica/acpi_machdep.c#3 integrate .. //depot/projects/smpng/sys/amd64/acpica/acpi_wakeup.c#3 integrate .. //depot/projects/smpng/sys/amd64/amd64/amd64_mem.c#2 integrate .. //depot/projects/smpng/sys/amd64/amd64/elf_machdep.c#4 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#11 integrate .. //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#7 integrate .. //depot/projects/smpng/sys/amd64/ia32/Makefile#3 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32.h#2 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_genassym.c#3 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_misc.c#3 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_proto.h#2 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_signal.c#4 integrate .. //depot/projects/smpng/sys/amd64/ia32/ia32_signal.h#2 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_sigtramp.S#2 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_syscall.c#4 integrate .. //depot/projects/smpng/sys/amd64/ia32/ia32_syscall.h#2 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_syscalls.c#2 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_sysent.c#2 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_sysvec.c#5 delete .. //depot/projects/smpng/sys/amd64/ia32/ia32_util.h#3 delete .. //depot/projects/smpng/sys/amd64/ia32/syscalls.conf#3 delete .. //depot/projects/smpng/sys/amd64/ia32/syscalls.master#2 delete .. //depot/projects/smpng/sys/amd64/include/cpu.h#2 integrate .. //depot/projects/smpng/sys/amd64/include/md_var.h#4 integrate .. //depot/projects/smpng/sys/amd64/pci/pci_bus.c#3 integrate .. //depot/projects/smpng/sys/boot/Makefile#10 integrate .. //depot/projects/smpng/sys/boot/common/bcache.c#5 integrate .. //depot/projects/smpng/sys/boot/common/boot.c#3 integrate .. //depot/projects/smpng/sys/boot/common/commands.c#4 integrate .. //depot/projects/smpng/sys/boot/common/console.c#2 integrate .. //depot/projects/smpng/sys/boot/common/dev_net.c#3 integrate .. //depot/projects/smpng/sys/boot/common/devopen.c#2 integrate .. //depot/projects/smpng/sys/boot/common/interp.c#3 integrate .. //depot/projects/smpng/sys/boot/common/interp_backslash.c#2 integrate .. //depot/projects/smpng/sys/boot/common/interp_forth.c#5 integrate .. //depot/projects/smpng/sys/boot/common/interp_parse.c#2 integrate .. //depot/projects/smpng/sys/boot/common/isapnp.c#2 integrate .. //depot/projects/smpng/sys/boot/common/load.c#2 integrate .. //depot/projects/smpng/sys/boot/common/load_elf.c#10 integrate .. //depot/projects/smpng/sys/boot/common/load_elf32.c#2 integrate .. //depot/projects/smpng/sys/boot/common/load_elf64.c#2 integrate .. //depot/projects/smpng/sys/boot/common/ls.c#2 integrate .. //depot/projects/smpng/sys/boot/common/misc.c#2 integrate .. //depot/projects/smpng/sys/boot/common/module.c#6 integrate .. //depot/projects/smpng/sys/boot/common/panic.c#3 integrate .. //depot/projects/smpng/sys/boot/common/pnp.c#2 integrate .. //depot/projects/smpng/sys/boot/common/ufsread.c#7 integrate .. //depot/projects/smpng/sys/boot/i386/boot2/boot1.s#6 integrate .. //depot/projects/smpng/sys/boot/i386/boot2/boot2.c#18 integrate .. //depot/projects/smpng/sys/boot/i386/kgzldr/boot.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/kgzldr/lib.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biosacpi.c#6 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/bioscd.c#5 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biosdisk.c#8 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biosmem.c#3 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biospci.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biospnp.c#5 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/biossmap.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/bootinfo.c#8 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/bootinfo32.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/bootinfo64.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/comconsole.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/devicename.c#3 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/elf32_freebsd.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/elf64_freebsd.c#3 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/gatea20.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/i386_copy.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/i386_module.c#9 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/nullconsole.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/pread.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/pxe.c#3 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/time.c#2 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/vidconsole.c#4 integrate .. //depot/projects/smpng/sys/boot/i386/loader/conf.c#8 integrate .. //depot/projects/smpng/sys/boot/i386/loader/main.c#6 integrate .. //depot/projects/smpng/sys/boot/powerpc/loader/Makefile#7 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_da.c#44 integrate .. //depot/projects/smpng/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/smpng/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/smpng/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/smpng/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/smpng/sys/compat/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/smpng/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/smpng/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/smpng/sys/compat/linprocfs/linprocfs.c#31 integrate .. //depot/projects/smpng/sys/conf/NOTES#53 integrate .. //depot/projects/smpng/sys/conf/files#85 integrate .. //depot/projects/smpng/sys/conf/files.amd64#6 integrate .. //depot/projects/smpng/sys/conf/files.i386#46 integrate .. //depot/projects/smpng/sys/conf/files.ia64#32 integrate .. //depot/projects/smpng/sys/conf/files.pc98#47 integrate .. //depot/projects/smpng/sys/conf/files.sparc64#30 integrate .. //depot/projects/smpng/sys/conf/kern.pre.mk#23 integrate .. //depot/projects/smpng/sys/conf/kmod.mk#21 integrate .. //depot/projects/smpng/sys/conf/majors#27 integrate .. //depot/projects/smpng/sys/conf/options#60 integrate .. //depot/projects/smpng/sys/conf/options.alpha#12 integrate .. //depot/projects/smpng/sys/conf/options.ia64#17 integrate .. //depot/projects/smpng/sys/conf/options.sparc64#8 integrate .. //depot/projects/smpng/sys/contrib/dev/oltr/if_oltr.c#6 integrate .. //depot/projects/smpng/sys/ddb/db_command.c#16 integrate .. //depot/projects/smpng/sys/dev/aac/aac.c#29 integrate .. //depot/projects/smpng/sys/dev/aac/aac_cam.c#9 integrate .. //depot/projects/smpng/sys/dev/aac/aac_debug.c#11 integrate .. //depot/projects/smpng/sys/dev/aac/aac_disk.c#16 integrate .. //depot/projects/smpng/sys/dev/aac/aac_linux.c#2 integrate .. //depot/projects/smpng/sys/dev/aac/aac_pci.c#24 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi.c#47 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_cpu.c#14 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_ec.c#20 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_isab.c#4 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_lid.c#8 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#7 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pcib.c#16 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pcib_acpi.c#6 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pcib_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_powerres.c#12 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_resource.c#12 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_thermal.c#17 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_timer.c#12 integrate .. //depot/projects/smpng/sys/dev/acpica/acpica_support.c#6 integrate .. //depot/projects/smpng/sys/dev/acpica/acpiio.h#3 integrate .. //depot/projects/smpng/sys/dev/acpica/acpivar.h#28 integrate .. //depot/projects/smpng/sys/dev/adlink/adlink.c#3 integrate .. //depot/projects/smpng/sys/dev/advansys/adv_eisa.c#5 integrate .. //depot/projects/smpng/sys/dev/advansys/adv_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/advansys/adv_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/advansys/advansys.c#8 integrate .. //depot/projects/smpng/sys/dev/advansys/advlib.c#3 integrate .. //depot/projects/smpng/sys/dev/advansys/advmcode.c#2 integrate .. //depot/projects/smpng/sys/dev/advansys/adw_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/advansys/adwcam.c#8 integrate .. //depot/projects/smpng/sys/dev/advansys/adwlib.c#2 integrate .. //depot/projects/smpng/sys/dev/advansys/adwmcode.c#2 integrate .. //depot/projects/smpng/sys/dev/aha/aha.c#10 integrate .. //depot/projects/smpng/sys/dev/aha/aha_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/aha/aha_mca.c#5 integrate .. //depot/projects/smpng/sys/dev/aic/aic.c#7 integrate .. //depot/projects/smpng/sys/dev/aic/aic_cbus.c#3 integrate .. //depot/projects/smpng/sys/dev/aic/aic_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/aic/aic_pccard.c#6 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/ahc_eisa.c#9 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/ahc_pci.c#11 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/ahd_pci.c#9 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7770.c#9 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx.c#16 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_osm.c#12 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_osm.h#10 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_pci.c#13 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.c#16 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_93cx6.c#5 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_osm.c#12 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_osm.h#11 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_pci.c#12 integrate .. //depot/projects/smpng/sys/dev/amd/amd.c#9 integrate .. //depot/projects/smpng/sys/dev/amr/amr.c#16 integrate .. //depot/projects/smpng/sys/dev/amr/amr_cam.c#8 integrate .. //depot/projects/smpng/sys/dev/amr/amr_disk.c#10 integrate .. //depot/projects/smpng/sys/dev/amr/amr_pci.c#11 integrate .. //depot/projects/smpng/sys/dev/an/if_aironet_ieee.h#7 integrate .. //depot/projects/smpng/sys/dev/an/if_an.c#32 integrate .. //depot/projects/smpng/sys/dev/an/if_an_isa.c#9 integrate .. //depot/projects/smpng/sys/dev/an/if_an_pccard.c#10 integrate .. //depot/projects/smpng/sys/dev/an/if_an_pci.c#14 integrate .. //depot/projects/smpng/sys/dev/an/if_anreg.h#9 integrate .. //depot/projects/smpng/sys/dev/ar/if_ar.c#9 integrate .. //depot/projects/smpng/sys/dev/ar/if_ar_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/ar/if_ar_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/asr/asr.c#19 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#38 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.h#17 integrate .. //depot/projects/smpng/sys/dev/ata/ata-card.c#13 integrate .. //depot/projects/smpng/sys/dev/ata/ata-cbus.c#6 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#17 integrate .. //depot/projects/smpng/sys/dev/ata/ata-commands.h#1 branch .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#31 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.h#13 integrate .. //depot/projects/smpng/sys/dev/ata/ata-dma.c#31 integrate .. //depot/projects/smpng/sys/dev/ata/ata-isa.c#12 integrate .. //depot/projects/smpng/sys/dev/ata/ata-lowlevel.c#1 branch .. //depot/projects/smpng/sys/dev/ata/ata-pci.c#34 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#11 integrate .. //depot/projects/smpng/sys/dev/ata/ata-queue.c#1 branch .. //depot/projects/smpng/sys/dev/ata/ata-raid.c#21 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.h#14 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-all.c#20 delete .. //depot/projects/smpng/sys/dev/ata/atapi-all.h#12 delete .. //depot/projects/smpng/sys/dev/ata/atapi-cam.c#11 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.c#35 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.h#10 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-fd.c#18 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-fd.h#8 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-tape.c#21 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-tape.h#6 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath.c#7 integrate .. //depot/projects/smpng/sys/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/smpng/sys/dev/ath/if_athvar.h#4 integrate .. //depot/projects/smpng/sys/dev/awi/am79c930.c#4 integrate .. //depot/projects/smpng/sys/dev/awi/awi.c#15 integrate .. //depot/projects/smpng/sys/dev/awi/awi_wep.c#12 integrate .. //depot/projects/smpng/sys/dev/awi/awi_wicfg.c#9 integrate .. //depot/projects/smpng/sys/dev/awi/if_awi_pccard.c#8 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#33 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#19 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_audio.c#4 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_card.c#4 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_core.c#11 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_i2c.c#5 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_mem.c#4 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_os.c#15 integrate .. //depot/projects/smpng/sys/dev/bktr/bktr_tuner.c#2 integrate .. //depot/projects/smpng/sys/dev/buslogic/bt.c#12 integrate .. //depot/projects/smpng/sys/dev/buslogic/bt_eisa.c#6 integrate .. //depot/projects/smpng/sys/dev/buslogic/bt_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/buslogic/bt_mca.c#5 integrate .. //depot/projects/smpng/sys/dev/buslogic/bt_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/cardbus/cardbus.c#16 integrate .. //depot/projects/smpng/sys/dev/cardbus/cardbus_cis.c#16 integrate .. //depot/projects/smpng/sys/dev/ciss/ciss.c#20 integrate .. //depot/projects/smpng/sys/dev/cm/if_cm_isa.c#4 integrate .. //depot/projects/smpng/sys/dev/cm/smc90cx6.c#7 integrate .. //depot/projects/smpng/sys/dev/cnw/if_cnw.c#13 integrate .. //depot/projects/smpng/sys/dev/cs/if_cs.c#5 integrate .. //depot/projects/smpng/sys/dev/cs/if_cs_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/cs/if_cs_pccard.c#6 integrate .. //depot/projects/smpng/sys/dev/ct/bshw_machdep.c#3 integrate .. //depot/projects/smpng/sys/dev/ct/ct.c#4 integrate .. //depot/projects/smpng/sys/dev/ct/ct_isa.c#7 integrate .. //depot/projects/smpng/sys/dev/dec/mcclock.c#3 integrate .. //depot/projects/smpng/sys/dev/digi/CX.c#3 integrate .. //depot/projects/smpng/sys/dev/digi/CX_PCI.c#3 integrate .. //depot/projects/smpng/sys/dev/digi/EPCX.c#3 integrate .. //depot/projects/smpng/sys/dev/digi/EPCX_PCI.c#3 integrate .. //depot/projects/smpng/sys/dev/digi/Xe.c#3 integrate .. //depot/projects/smpng/sys/dev/digi/Xem.c#3 integrate .. //depot/projects/smpng/sys/dev/digi/Xr.c#3 integrate .. //depot/projects/smpng/sys/dev/digi/digi_isa.c#7 integrate .. //depot/projects/smpng/sys/dev/digi/digi_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt_eisa.c#5 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/dpt/dpt_scsi.c#9 integrate .. //depot/projects/smpng/sys/dev/drm/ati_pcigart.h#2 integrate .. //depot/projects/smpng/sys/dev/drm/drm.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drmP.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/drm_agpsupport.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_auth.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_bufs.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/drm_context.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/drm_dma.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/drm_drawable.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/drm_drv.h#10 integrate .. //depot/projects/smpng/sys/dev/drm/drm_fops.h#6 integrate .. //depot/projects/smpng/sys/dev/drm/drm_ioctl.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/drm_lock.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/drm_memory.h#6 integrate .. //depot/projects/smpng/sys/dev/drm/drm_memory_debug.h#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_os_freebsd.h#10 integrate .. //depot/projects/smpng/sys/dev/drm/drm_pci.h#1 branch .. //depot/projects/smpng/sys/dev/drm/drm_sarea.h#2 integrate .. //depot/projects/smpng/sys/dev/drm/drm_scatter.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/drm_sysctl.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/drm_vm.h#6 integrate .. //depot/projects/smpng/sys/dev/drm/mga.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/mga_dma.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/mga_drv.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/mga_drv.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/mga_irq.c#2 integrate .. //depot/projects/smpng/sys/dev/drm/mga_state.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/mga_warp.c#3 integrate .. //depot/projects/smpng/sys/dev/drm/r128.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/r128_cce.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/r128_drm.h#3 integrate .. //depot/projects/smpng/sys/dev/drm/r128_drv.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/r128_drv.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/r128_irq.c#2 integrate .. //depot/projects/smpng/sys/dev/drm/r128_state.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/radeon.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_cp.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drm.h#4 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drv.c#4 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_drv.h#5 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_irq.c#3 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_mem.c#3 integrate .. //depot/projects/smpng/sys/dev/drm/radeon_state.c#5 integrate .. //depot/projects/smpng/sys/dev/drm/tdfx.h#2 integrate .. //depot/projects/smpng/sys/dev/drm/tdfx_drv.c#4 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/eisa/eisaconf.c#6 integrate .. //depot/projects/smpng/sys/dev/em/README#8 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#25 integrate .. //depot/projects/smpng/sys/dev/em/if_em.h#18 integrate .. //depot/projects/smpng/sys/dev/em/if_em_hw.c#10 integrate .. //depot/projects/smpng/sys/dev/em/if_em_hw.h#10 integrate .. //depot/projects/smpng/sys/dev/em/if_em_osdep.h#13 integrate .. //depot/projects/smpng/sys/dev/en/if_en_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep.c#9 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_eisa.c#5 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_mca.c#4 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_pccard.c#9 integrate .. //depot/projects/smpng/sys/dev/ex/if_ex.c#6 integrate .. //depot/projects/smpng/sys/dev/ex/if_ex_isa.c#4 integrate .. //depot/projects/smpng/sys/dev/ex/if_ex_pccard.c#4 integrate .. //depot/projects/smpng/sys/dev/exca/exca.c#9 integrate .. //depot/projects/smpng/sys/dev/fatm/if_fatm.c#6 integrate .. //depot/projects/smpng/sys/dev/fb/boot_font.c#2 integrate .. //depot/projects/smpng/sys/dev/fb/creator.c#1 branch .. //depot/projects/smpng/sys/dev/fb/fb.c#8 integrate .. //depot/projects/smpng/sys/dev/fb/fbreg.h#10 integrate .. //depot/projects/smpng/sys/dev/fb/gallant12x22.h#1 branch .. //depot/projects/smpng/sys/dev/fb/gfb.c#4 integrate .. //depot/projects/smpng/sys/dev/fb/s3_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/fb/splash.c#3 integrate .. //depot/projects/smpng/sys/dev/fb/tga.c#3 integrate .. //depot/projects/smpng/sys/dev/fb/vga.c#15 integrate .. //depot/projects/smpng/sys/dev/fe/if_fe.c#6 integrate .. //depot/projects/smpng/sys/dev/fe/if_fe_cbus.c#4 integrate .. //depot/projects/smpng/sys/dev/fe/if_fe_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/fe/if_fe_pccard.c#7 integrate .. //depot/projects/smpng/sys/dev/firewire/firewire.c#24 integrate .. //depot/projects/smpng/sys/dev/firewire/firewire.h#9 integrate .. //depot/projects/smpng/sys/dev/firewire/fwcrom.c#6 integrate .. //depot/projects/smpng/sys/dev/firewire/fwdma.c#5 integrate .. //depot/projects/smpng/sys/dev/firewire/fwmem.c#11 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci.c#23 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci_pci.c#18 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohcireg.h#9 integrate .. //depot/projects/smpng/sys/dev/firewire/if_fwe.c#14 integrate .. //depot/projects/smpng/sys/dev/firewire/sbp.c#24 integrate .. //depot/projects/smpng/sys/dev/fxp/if_fxp.c#44 integrate .. //depot/projects/smpng/sys/dev/gem/if_gem.c#15 integrate .. //depot/projects/smpng/sys/dev/gem/if_gem_pci.c#10 integrate .. //depot/projects/smpng/sys/dev/gfb/gfb_pci.c#7 integrate .. //depot/projects/smpng/sys/dev/gx/if_gx.c#11 integrate .. //depot/projects/smpng/sys/dev/harp/if_harp.c#2 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm.c#6 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_intr.c#3 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_ioctl.c#5 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_rx.c#4 integrate .. //depot/projects/smpng/sys/dev/hatm/if_hatm_tx.c#5 integrate .. //depot/projects/smpng/sys/dev/hea/eni.c#6 integrate .. //depot/projects/smpng/sys/dev/hea/eni.h#7 integrate .. //depot/projects/smpng/sys/dev/hea/eni_buffer.c#9 integrate .. //depot/projects/smpng/sys/dev/hea/eni_globals.c#3 integrate .. //depot/projects/smpng/sys/dev/hea/eni_init.c#3 integrate .. //depot/projects/smpng/sys/dev/hea/eni_intr.c#3 integrate .. //depot/projects/smpng/sys/dev/hea/eni_receive.c#6 integrate .. //depot/projects/smpng/sys/dev/hea/eni_transmit.c#6 integrate .. //depot/projects/smpng/sys/dev/hea/eni_vcm.c#6 integrate .. //depot/projects/smpng/sys/dev/hea/hea_freebsd.c#5 integrate .. //depot/projects/smpng/sys/dev/hea/hea_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_buffer.c#5 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_command.c#6 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_globals.c#3 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_if.c#4 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_init.c#5 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_intr.c#3 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_load.c#6 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_output.c#7 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_receive.c#7 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_stats.c#3 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_timer.c#2 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_transmit.c#3 integrate .. //depot/projects/smpng/sys/dev/hfa/fore_vcm.c#3 integrate .. //depot/projects/smpng/sys/dev/hfa/hfa_eisa.c#2 integrate .. //depot/projects/smpng/sys/dev/hfa/hfa_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/hfa/hfa_sbus.c#2 integrate .. //depot/projects/smpng/sys/dev/hifn/hifn7751.c#10 integrate .. //depot/projects/smpng/sys/dev/hme/if_hme.c#12 integrate .. //depot/projects/smpng/sys/dev/hme/if_hme_pci.c#8 integrate .. //depot/projects/smpng/sys/dev/hme/if_hme_sbus.c#5 integrate .. //depot/projects/smpng/sys/dev/ichsmb/ichsmb.c#5 integrate .. //depot/projects/smpng/sys/dev/ichsmb/ichsmb_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/ida/ida.c#12 integrate .. //depot/projects/smpng/sys/dev/ida/ida_eisa.c#6 integrate .. //depot/projects/smpng/sys/dev/ida/ida_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/idt/idt.c#4 integrate .. //depot/projects/smpng/sys/dev/idt/idt_harp.c#3 integrate .. //depot/projects/smpng/sys/dev/idt/idt_pci.c#2 integrate .. //depot/projects/smpng/sys/dev/ie/if_ie.c#7 integrate .. //depot/projects/smpng/sys/dev/ie/if_ie_isa.c#2 integrate .. //depot/projects/smpng/sys/dev/iicbus/if_ic.c#8 integrate .. //depot/projects/smpng/sys/dev/iicbus/iicbb.c#4 integrate .. //depot/projects/smpng/sys/dev/iicbus/iicbus.c#4 integrate .. //depot/projects/smpng/sys/dev/iicbus/iiconf.c#3 integrate .. //depot/projects/smpng/sys/dev/iir/iir.c#8 integrate .. //depot/projects/smpng/sys/dev/iir/iir_ctrl.c#7 integrate .. //depot/projects/smpng/sys/dev/iir/iir_pci.c#8 integrate .. //depot/projects/smpng/sys/dev/ips/ips.c#4 integrate .. //depot/projects/smpng/sys/dev/ips/ips.h#3 integrate .. //depot/projects/smpng/sys/dev/ips/ips_commands.c#4 integrate .. //depot/projects/smpng/sys/dev/ips/ips_disk.c#3 integrate .. //depot/projects/smpng/sys/dev/ips/ips_disk.h#2 integrate .. //depot/projects/smpng/sys/dev/ips/ips_ioctl.c#4 integrate .. //depot/projects/smpng/sys/dev/ips/ips_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/isp/isp.c#29 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#23 integrate .. //depot/projects/smpng/sys/dev/isp/isp_pci.c#21 integrate .. //depot/projects/smpng/sys/dev/isp/isp_sbus.c#6 integrate .. //depot/projects/smpng/sys/dev/ispfw/ispfw.c#6 integrate .. //depot/projects/smpng/sys/dev/joy/joy.c#6 integrate .. //depot/projects/smpng/sys/dev/joy/joy_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/joy/joy_pccard.c#3 integrate .. //depot/projects/smpng/sys/dev/kbd/atkbd.c#10 integrate .. //depot/projects/smpng/sys/dev/kbd/atkbdc.c#7 integrate .. //depot/projects/smpng/sys/dev/kbd/kbd.c#8 integrate .. //depot/projects/smpng/sys/dev/lge/if_lge.c#15 integrate .. //depot/projects/smpng/sys/dev/lmc/if_lmc.c#8 integrate .. //depot/projects/smpng/sys/dev/lmc/if_lmc_common.c#3 integrate .. //depot/projects/smpng/sys/dev/lmc/if_lmc_fbsd3.c#3 integrate .. //depot/projects/smpng/sys/dev/lmc/if_lmc_media.c#3 integrate .. //depot/projects/smpng/sys/dev/lnc/if_lnc.c#8 integrate .. //depot/projects/smpng/sys/dev/lnc/if_lnc_cbus.c#5 integrate .. //depot/projects/smpng/sys/dev/lnc/if_lnc_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/lnc/if_lnc_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/matcd/matcd.c#2 integrate .. //depot/projects/smpng/sys/dev/matcd/matcd_isa.c#2 integrate .. //depot/projects/smpng/sys/dev/mca/mca_bus.c#4 integrate .. //depot/projects/smpng/sys/dev/mcd/mcd.c#6 integrate .. //depot/projects/smpng/sys/dev/mcd/mcd_isa.c#4 integrate .. //depot/projects/smpng/sys/dev/mii/acphy.c#10 integrate .. //depot/projects/smpng/sys/dev/mii/amphy.c#9 integrate .. //depot/projects/smpng/sys/dev/mii/bmtphy.c#5 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#17 integrate .. //depot/projects/smpng/sys/dev/mii/dcphy.c#10 integrate .. //depot/projects/smpng/sys/dev/mii/e1000phy.c#7 integrate .. //depot/projects/smpng/sys/dev/mii/exphy.c#9 integrate .. //depot/projects/smpng/sys/dev/mii/inphy.c#6 integrate .. //depot/projects/smpng/sys/dev/mii/lxtphy.c#10 integrate .. //depot/projects/smpng/sys/dev/mii/mii.c#8 integrate .. //depot/projects/smpng/sys/dev/mii/mii_physubr.c#8 integrate .. //depot/projects/smpng/sys/dev/mii/mlphy.c#8 integrate .. //depot/projects/smpng/sys/dev/mii/nsgphy.c#11 integrate .. //depot/projects/smpng/sys/dev/mii/nsphy.c#9 integrate .. //depot/projects/smpng/sys/dev/mii/pnaphy.c#10 integrate .. //depot/projects/smpng/sys/dev/mii/pnphy.c#9 integrate .. //depot/projects/smpng/sys/dev/mii/qsphy.c#10 integrate .. //depot/projects/smpng/sys/dev/mii/rlphy.c#12 integrate .. //depot/projects/smpng/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/smpng/sys/dev/mii/tdkphy.c#11 integrate .. //depot/projects/smpng/sys/dev/mii/tlphy.c#10 integrate .. //depot/projects/smpng/sys/dev/mii/ukphy.c#7 integrate .. //depot/projects/smpng/sys/dev/mii/ukphy_subr.c#4 integrate .. //depot/projects/smpng/sys/dev/mii/xmphy.c#10 integrate .. //depot/projects/smpng/sys/dev/mk48txx/mk48txx.c#2 integrate .. //depot/projects/smpng/sys/dev/mlx/mlx_disk.c#8 integrate .. //depot/projects/smpng/sys/dev/mlx/mlx_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/mly/mly.c#18 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt.c#5 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_debug.c#3 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_freebsd.c#9 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/musycc/musycc.c#6 integrate .. //depot/projects/smpng/sys/dev/my/if_my.c#11 integrate .. //depot/projects/smpng/sys/dev/ncv/ncr53c500.c#5 integrate .. //depot/projects/smpng/sys/dev/ncv/ncr53c500_pccard.c#10 integrate .. //depot/projects/smpng/sys/dev/nge/if_nge.c#25 integrate .. //depot/projects/smpng/sys/dev/nmdm/nmdm.c#14 integrate .. //depot/projects/smpng/sys/dev/nsp/nsp.c#6 integrate .. //depot/projects/smpng/sys/dev/nsp/nsp_pccard.c#8 integrate .. //depot/projects/smpng/sys/dev/null/null.c#12 integrate .. //depot/projects/smpng/sys/dev/ofw/ofw_console.c#13 integrate .. //depot/projects/smpng/sys/dev/ofw/ofw_disk.c#6 integrate .. //depot/projects/smpng/sys/dev/ofw/openfirm.c#6 integrate .. //depot/projects/smpng/sys/dev/ofw/openfirmio.c#5 integrate .. //depot/projects/smpng/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/smpng/sys/dev/owi/if_ieee80211.h#1 branch .. //depot/projects/smpng/sys/dev/owi/if_owi.c#1 branch .. //depot/projects/smpng/sys/dev/owi/if_owi_pccard.c#1 branch .. //depot/projects/smpng/sys/dev/owi/if_wireg.h#1 branch .. //depot/projects/smpng/sys/dev/owi/if_wivar.h#1 branch .. //depot/projects/smpng/sys/dev/patm/if_patm.c#4 integrate .. //depot/projects/smpng/sys/dev/patm/if_patm_attach.c#2 integrate .. //depot/projects/smpng/sys/dev/patm/if_patm_intr.c#2 integrate .. //depot/projects/smpng/sys/dev/patm/if_patm_ioctl.c#4 integrate .. //depot/projects/smpng/sys/dev/patm/if_patm_rtables.c#2 integrate .. //depot/projects/smpng/sys/dev/patm/if_patm_rx.c#4 integrate .. //depot/projects/smpng/sys/dev/patm/if_patm_tx.c#4 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard.c#22 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard_cis.c#12 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard_cis_quirks.c#4 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs#30 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs.h#30 integrate .. //depot/projects/smpng/sys/dev/pccbb/pccbb.c#34 integrate .. //depot/projects/smpng/sys/dev/pccbb/pccbbdevid.h#10 integrate .. //depot/projects/smpng/sys/dev/pci/eisa_pci.c#2 integrate .. //depot/projects/smpng/sys/dev/pci/fixup_pci.c#2 integrate .. //depot/projects/smpng/sys/dev/pci/ignore_pci.c#2 integrate .. //depot/projects/smpng/sys/dev/pci/isa_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#32 integrate .. //depot/projects/smpng/sys/dev/pci/pci_pci.c#16 integrate .. //depot/projects/smpng/sys/dev/pci/pci_private.h#8 integrate .. //depot/projects/smpng/sys/dev/pci/pci_user.c#9 integrate .. //depot/projects/smpng/sys/dev/pci/pcib_private.h#5 integrate .. //depot/projects/smpng/sys/dev/pci/pcivar.h#10 integrate .. //depot/projects/smpng/sys/dev/pcic/i82365.c#8 integrate .. //depot/projects/smpng/sys/dev/pcic/i82365_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/pdq/if_fpa.c#6 integrate .. //depot/projects/smpng/sys/dev/pdq/pdq.c#5 integrate .. //depot/projects/smpng/sys/dev/pdq/pdq_ifsubr.c#9 integrate .. //depot/projects/smpng/sys/dev/ppbus/if_plip.c#7 integrate .. //depot/projects/smpng/sys/dev/ppbus/immio.c#2 integrate .. //depot/projects/smpng/sys/dev/ppbus/lpbb.c#4 integrate .. //depot/projects/smpng/sys/dev/ppbus/lpt.c#7 integrate .. //depot/projects/smpng/sys/dev/ppbus/pcfclock.c#7 integrate .. //depot/projects/smpng/sys/dev/ppbus/ppb_1284.c#3 integrate .. //depot/projects/smpng/sys/dev/ppbus/ppb_base.c#2 integrate .. //depot/projects/smpng/sys/dev/ppbus/ppb_msq.c#4 integrate .. //depot/projects/smpng/sys/dev/ppbus/ppbconf.c#2 integrate .. //depot/projects/smpng/sys/dev/ppbus/ppi.c#7 integrate .. //depot/projects/smpng/sys/dev/ppbus/pps.c#11 integrate .. //depot/projects/smpng/sys/dev/ppbus/vpo.c#6 integrate .. //depot/projects/smpng/sys/dev/ppbus/vpoio.c#4 integrate .. //depot/projects/smpng/sys/dev/pst/pst-iop.c#4 integrate .. //depot/projects/smpng/sys/dev/pst/pst-pci.c#4 integrate .. //depot/projects/smpng/sys/dev/pst/pst-raid.c#7 integrate .. //depot/projects/smpng/sys/dev/puc/puc.c#14 integrate .. //depot/projects/smpng/sys/dev/puc/puc_pccard.c#3 integrate .. //depot/projects/smpng/sys/dev/puc/puc_pci.c#2 integrate .. //depot/projects/smpng/sys/dev/puc/pucdata.c#17 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_acctrace.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_alloclist.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_aselect.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_callback.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_chaindecluster.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_copyback.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_cvscan.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_dagdegrd.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_dagdegwr.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_dagffrd.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_dagffwr.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_dagfuncs.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_dagutils.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_debugMem.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_debugprint.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_decluster.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_declusterPQ.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_diskqueue.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_disks.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_driver.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_engine.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_evenodd.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_evenodd_dagfuncs.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_evenodd_dags.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_fifo.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_geniq.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_interdecluster.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_invertq.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_layout.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_map.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_mcpair.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_memchunk.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_nwayxor.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_options.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_paritylog.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_paritylogDiskMgr.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_paritylogging.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_parityloggingdags.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_parityscan.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_pq.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_pqdeg.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_pqdegdags.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_psstatus.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_raid0.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_raid1.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_raid4.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_raid5.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_raid5_rotatedspare.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_reconbuffer.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_reconmap.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_reconstruct.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_reconutil.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_revent.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_shutdown.c#3 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_sstf.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_states.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_stripelocks.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_strutils.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_threadstuff.c#2 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_utils.c#2 integrate .. //depot/projects/smpng/sys/dev/random/harvest.c#6 integrate .. //depot/projects/smpng/sys/dev/random/hash.c#5 integrate .. //depot/projects/smpng/sys/dev/random/randomdev.c#14 integrate .. //depot/projects/smpng/sys/dev/random/yarrow.c#9 integrate .. //depot/projects/smpng/sys/dev/ray/if_ray.c#9 integrate .. //depot/projects/smpng/sys/dev/rndtest/rndtest.c#3 integrate .. //depot/projects/smpng/sys/dev/rp/rp.c#13 integrate .. //depot/projects/smpng/sys/dev/rp/rp_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/rp/rp_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/sab/sab.c#11 integrate .. //depot/projects/smpng/sys/dev/safe/safe.c#3 integrate .. //depot/projects/smpng/sys/dev/sbni/if_sbni.c#11 integrate .. //depot/projects/smpng/sys/dev/sbni/if_sbni_isa.c#7 integrate .. //depot/projects/smpng/sys/dev/sbni/if_sbni_pci.c#6 integrate .. //depot/projects/smpng/sys/dev/sbsh/if_sbsh.c#3 integrate .. //depot/projects/smpng/sys/dev/scd/scd.c#5 integrate .. //depot/projects/smpng/sys/dev/scd/scd_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/si/si.c#11 integrate .. //depot/projects/smpng/sys/dev/si/si2_z280.c#2 integrate .. //depot/projects/smpng/sys/dev/si/si3_t225.c#2 integrate .. //depot/projects/smpng/sys/dev/si/si_eisa.c#2 integrate .. //depot/projects/smpng/sys/dev/si/si_isa.c#4 integrate .. //depot/projects/smpng/sys/dev/si/si_pci.c#2 integrate .. //depot/projects/smpng/sys/dev/sio/sio.c#33 integrate .. //depot/projects/smpng/sys/dev/sio/sio_ebus.c#3 integrate .. //depot/projects/smpng/sys/dev/sio/sio_isa.c#12 integrate .. //depot/projects/smpng/sys/dev/sio/sio_pccard.c#7 integrate .. //depot/projects/smpng/sys/dev/sio/sio_pci.c#10 integrate .. //depot/projects/smpng/sys/dev/sio/sio_puc.c#6 integrate .. //depot/projects/smpng/sys/dev/smbus/smbconf.c#3 integrate .. //depot/projects/smpng/sys/dev/smbus/smbus.c#5 integrate .. //depot/projects/smpng/sys/dev/sn/if_sn.c#8 integrate .. //depot/projects/smpng/sys/dev/sn/if_sn_isa.c#3 integrate .. //depot/projects/smpng/sys/dev/sn/if_sn_pccard.c#8 integrate .. //depot/projects/smpng/sys/dev/snc/dp83932subr.c#4 integrate .. //depot/projects/smpng/sys/dev/snc/if_snc.c#3 integrate .. //depot/projects/smpng/sys/dev/snc/if_snc_cbus.c#4 integrate .. //depot/projects/smpng/sys/dev/snc/if_snc_pccard.c#3 integrate .. //depot/projects/smpng/sys/dev/snp/snp.c#12 integrate .. //depot/projects/smpng/sys/dev/sound/pci/als4000.c#9 integrate .. //depot/projects/smpng/sys/dev/sound/pci/au88x0.c#3 integrate .. //depot/projects/smpng/sys/dev/sound/pci/aureal.c#6 integrate .. //depot/projects/smpng/sys/dev/sound/pci/cmi.c#15 integrate .. //depot/projects/smpng/sys/dev/sound/pci/cs4281.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pci/csa.c#7 integrate .. //depot/projects/smpng/sys/dev/sound/pci/csamidi.c#6 integrate .. //depot/projects/smpng/sys/dev/sound/pci/csapcm.c#5 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ds1.c#10 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10k1.c#13 integrate .. //depot/projects/smpng/sys/dev/sound/pci/es137x.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pci/fm801.c#9 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ich.c#23 integrate .. //depot/projects/smpng/sys/dev/sound/pci/maestro.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pci/maestro3.c#14 integrate .. //depot/projects/smpng/sys/dev/sound/pci/neomagic.c#4 integrate .. //depot/projects/smpng/sys/dev/sound/pci/solo.c#7 integrate .. //depot/projects/smpng/sys/dev/sound/pci/t4dwave.c#13 integrate .. //depot/projects/smpng/sys/dev/sound/pci/via8233.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pci/via82c686.c#13 integrate .. //depot/projects/smpng/sys/dev/sound/pci/vibes.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#18 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97.h#6 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97_patch.c#2 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97_patch.h#2 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/channel.c#20 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/feeder_fmt.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/sound.c#18 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/sound.h#12 integrate .. //depot/projects/smpng/sys/dev/sr/if_sr.c#10 integrate .. //depot/projects/smpng/sys/dev/sr/if_sr_isa.c#4 integrate .. //depot/projects/smpng/sys/dev/sr/if_sr_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/stg/tmc18c30.c#5 integrate .. //depot/projects/smpng/sys/dev/stg/tmc18c30_isa.c#6 integrate .. //depot/projects/smpng/sys/dev/stg/tmc18c30_pccard.c#10 integrate .. //depot/projects/smpng/sys/dev/stg/tmc18c30_pci.c#2 integrate .. //depot/projects/smpng/sys/dev/stg/tmc18c30_subr.c#2 integrate .. //depot/projects/smpng/sys/dev/streams/streams.c#15 integrate .. //depot/projects/smpng/sys/dev/sym/sym_hipd.c#14 integrate .. //depot/projects/smpng/sys/dev/syscons/scgfbrndr.c#4 integrate .. //depot/projects/smpng/sys/dev/syscons/schistory.c#5 integrate .. //depot/projects/smpng/sys/dev/syscons/scmouse.c#10 integrate .. //depot/projects/smpng/sys/dev/syscons/scterm-dumb.c#2 integrate .. //depot/projects/smpng/sys/dev/syscons/scterm-sc.c#4 integrate .. //depot/projects/smpng/sys/dev/syscons/scterm.c#2 integrate .. //depot/projects/smpng/sys/dev/syscons/scvesactl.c#3 integrate .. //depot/projects/smpng/sys/dev/syscons/scvgarndr.c#4 integrate .. //depot/projects/smpng/sys/dev/syscons/scvidctl.c#6 integrate .. //depot/projects/smpng/sys/dev/syscons/scvtb.c#4 integrate .. //depot/projects/smpng/sys/dev/syscons/syscons.c#30 integrate .. //depot/projects/smpng/sys/dev/syscons/syscons.h#7 integrate .. //depot/projects/smpng/sys/dev/syscons/sysmouse.c#7 integrate .. //depot/projects/smpng/sys/dev/tdfx/tdfx_pci.c#13 integrate .. //depot/projects/smpng/sys/dev/tga/tga_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/trm/trm.c#11 integrate .. //depot/projects/smpng/sys/dev/twe/twe.c#7 integrate .. //depot/projects/smpng/sys/dev/twe/twe_compat.h#7 integrate .. //depot/projects/smpng/sys/dev/tx/if_tx.c#12 integrate .. //depot/projects/smpng/sys/dev/txp/if_txp.c#16 integrate .. //depot/projects/smpng/sys/dev/ubsec/ubsec.c#14 integrate .. //depot/projects/smpng/sys/dev/usb/ehci.c#3 integrate .. //depot/projects/smpng/sys/dev/usb/ehci_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/usb/hid.c#7 integrate .. //depot/projects/smpng/sys/dev/usb/if_aue.c#23 integrate .. //depot/projects/smpng/sys/dev/usb/if_axe.c#5 integrate .. //depot/projects/smpng/sys/dev/usb/if_cue.c#16 integrate .. //depot/projects/smpng/sys/dev/usb/if_kue.c#15 integrate .. //depot/projects/smpng/sys/dev/usb/if_rue.c#3 integrate .. //depot/projects/smpng/sys/dev/usb/ohci.c#24 integrate .. //depot/projects/smpng/sys/dev/usb/ohci_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/usb/ubsa.c#6 integrate .. //depot/projects/smpng/sys/dev/usb/ucom.c#12 integrate .. //depot/projects/smpng/sys/dev/usb/udbp.c#10 integrate .. //depot/projects/smpng/sys/dev/usb/ufm.c#7 integrate .. //depot/projects/smpng/sys/dev/usb/uftdi.c#8 integrate .. //depot/projects/smpng/sys/dev/usb/ugen.c#18 integrate .. //depot/projects/smpng/sys/dev/usb/uhci.c#27 integrate .. //depot/projects/smpng/sys/dev/usb/uhci_pci.c#5 integrate .. //depot/projects/smpng/sys/dev/usb/uhid.c#16 integrate .. //depot/projects/smpng/sys/dev/usb/uhub.c#13 integrate .. //depot/projects/smpng/sys/dev/usb/ukbd.c#11 integrate .. //depot/projects/smpng/sys/dev/usb/ulpt.c#14 integrate .. //depot/projects/smpng/sys/dev/usb/umass.c#29 integrate .. //depot/projects/smpng/sys/dev/usb/umct.c#3 integrate .. //depot/projects/smpng/sys/dev/usb/umodem.c#16 integrate .. //depot/projects/smpng/sys/dev/usb/ums.c#12 integrate .. //depot/projects/smpng/sys/dev/usb/uplcom.c#8 integrate .. //depot/projects/smpng/sys/dev/usb/urio.c#15 integrate .. //depot/projects/smpng/sys/dev/usb/usb.c#21 integrate .. //depot/projects/smpng/sys/dev/usb/usb_ethersubr.c#8 integrate .. //depot/projects/smpng/sys/dev/usb/usb_quirks.c#6 integrate .. //depot/projects/smpng/sys/dev/usb/usb_subr.c#16 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs#37 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs.h#37 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs_data.h#37 integrate .. //depot/projects/smpng/sys/dev/usb/usbdi.c#14 integrate .. //depot/projects/smpng/sys/dev/usb/usbdi_util.c#9 integrate .. //depot/projects/smpng/sys/dev/usb/uscanner.c#14 integrate .. //depot/projects/smpng/sys/dev/usb/uvscom.c#9 integrate .. //depot/projects/smpng/sys/dev/vinum/vinum.c#14 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumconfig.c#15 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumdaemon.c#7 integrate .. //depot/projects/smpng/sys/dev/vinum/vinuminterrupt.c#5 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumioctl.c#16 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumlock.c#4 integrate .. //depot/projects/smpng/sys/dev/vinum/vinummemory.c#7 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumparser.c#5 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumraid5.c#3 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumrequest.c#12 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumrevive.c#8 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumstate.c#4 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumutil.c#4 integrate .. //depot/projects/smpng/sys/dev/vx/if_vx.c#11 integrate .. //depot/projects/smpng/sys/dev/vx/if_vx_eisa.c#4 integrate .. //depot/projects/smpng/sys/dev/vx/if_vx_pci.c#3 integrate .. //depot/projects/smpng/sys/dev/wds/wd7000.c#5 integrate .. //depot/projects/smpng/sys/dev/wi/if_wi.c#55 integrate .. //depot/projects/smpng/sys/dev/wi/if_wi_pccard.c#23 integrate .. //depot/projects/smpng/sys/dev/wi/if_wi_pci.c#16 integrate .. //depot/projects/smpng/sys/dev/wl/if_wl.c#14 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe.c#9 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe_pccard.c#7 integrate .. //depot/projects/smpng/sys/dev/zs/zs.c#8 integrate .. //depot/projects/smpng/sys/dev/zs/zs_macio.c#2 integrate .. //depot/projects/smpng/sys/dev/zs/zs_sbus.c#3 integrate .. //depot/projects/smpng/sys/fs/pseudofs/pseudofs_vnops.c#27 integrate .. //depot/projects/smpng/sys/fs/specfs/spec_vnops.c#26 integrate .. //depot/projects/smpng/sys/geom/geom_ccd.c#6 integrate .. //depot/projects/smpng/sys/geom/geom_subr.c#31 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_bitops.h#1 branch .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_linux_balloc.c#4 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_linux_ialloc.c#3 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_vfsops.c#24 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/fs.h#6 integrate .. //depot/projects/smpng/sys/i386/acpica/OsdEnvironment.c#7 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_machdep.c#10 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_wakecode.S#3 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_wakeup.c#19 integrate .. //depot/projects/smpng/sys/i386/conf/GENERIC#40 integrate .. //depot/projects/smpng/sys/i386/i386/atomic.c#3 integrate .. //depot/projects/smpng/sys/i386/i386/bios.c#17 integrate .. //depot/projects/smpng/sys/i386/i386/busdma_machdep.c#25 integrate .. //depot/projects/smpng/sys/i386/i386/db_disasm.c#6 integrate .. //depot/projects/smpng/sys/i386/i386/db_interface.c#18 integrate .. //depot/projects/smpng/sys/i386/i386/db_trace.c#12 integrate .. //depot/projects/smpng/sys/i386/i386/dump_machdep.c#6 integrate .. //depot/projects/smpng/sys/i386/i386/elan-mmcr.c#8 integrate .. //depot/projects/smpng/sys/i386/i386/elf_machdep.c#8 integrate .. //depot/projects/smpng/sys/i386/i386/i386-gdbstub.c#6 integrate .. //depot/projects/smpng/sys/i386/i386/i686_mem.c#8 integrate .. //depot/projects/smpng/sys/i386/i386/identcpu.c#24 integrate .. //depot/projects/smpng/sys/i386/i386/initcpu.c#19 integrate .. //depot/projects/smpng/sys/i386/i386/k6_mem.c#4 integrate .. //depot/projects/smpng/sys/i386/i386/legacy.c#4 integrate .. //depot/projects/smpng/sys/i386/i386/mp_clock.c#8 integrate .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#51 integrate .. //depot/projects/smpng/sys/i386/i386/mpapic.c#15 integrate .. //depot/projects/smpng/sys/i386/i386/nexus.c#8 integrate .. //depot/projects/smpng/sys/i386/i386/perfmon.c#12 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#46 integrate .. //depot/projects/smpng/sys/i386/i386/sys_machdep.c#33 integrate .. //depot/projects/smpng/sys/i386/i386/tsc.c#7 integrate .. //depot/projects/smpng/sys/i386/i386/vm86.c#17 integrate .. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#41 integrate .. //depot/projects/smpng/sys/i386/include/cpu.h#8 integrate .. //depot/projects/smpng/sys/i386/include/md_var.h#21 integrate .. //depot/projects/smpng/sys/i386/isa/bs/bshw_dma.c#3 integrate .. //depot/projects/smpng/sys/i386/isa/clock.c#27 integrate .. //depot/projects/smpng/sys/i386/isa/stallion.c#11 integrate .. //depot/projects/smpng/sys/i386/pci/pci_bus.c#17 integrate .. //depot/projects/smpng/sys/i4b/capi/iavc/iavc_pci.c#9 integrate .. //depot/projects/smpng/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c#9 integrate .. //depot/projects/smpng/sys/i4b/layer1/ifpi2/i4b_ifpi2_pci.c#10 integrate .. //depot/projects/smpng/sys/i4b/layer1/isic/i4b_elsa_qs1p.c#5 integrate .. //depot/projects/smpng/sys/i4b/layer1/itjc/i4b_itjc_pci.c#10 integrate .. //depot/projects/smpng/sys/i4b/layer1/iwic/i4b_iwic_pci.c#5 integrate .. //depot/projects/smpng/sys/ia64/acpica/OsdEnvironment.c#5 integrate .. //depot/projects/smpng/sys/ia64/acpica/acpi_machdep.c#2 integrate .. //depot/projects/smpng/sys/ia64/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/smpng/sys/ia64/acpica/madt.c#9 integrate .. //depot/projects/smpng/sys/ia64/conf/Makefile#1 branch .. //depot/projects/smpng/sys/ia64/conf/NOTES#1 branch .. //depot/projects/smpng/sys/ia64/ia32/ia32_proto.h#8 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_syscall.h#8 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_sysent.c#8 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_sysvec.c#4 integrate .. //depot/projects/smpng/sys/ia64/ia32/syscalls.master#11 integrate .. //depot/projects/smpng/sys/ia64/ia64/elf_machdep.c#10 integrate .. //depot/projects/smpng/sys/ia64/ia64/interrupt.c#20 integrate .. //depot/projects/smpng/sys/ia64/ia64/machdep.c#64 integrate .. //depot/projects/smpng/sys/ia64/ia64/mp_machdep.c#25 integrate .. //depot/projects/smpng/sys/ia64/ia64/ptrace_machdep.c#2 integrate .. //depot/projects/smpng/sys/ia64/ia64/trap.c#55 integrate .. //depot/projects/smpng/sys/ia64/ia64/vm_machdep.c#31 integrate .. //depot/projects/smpng/sys/ia64/include/cpu.h#18 integrate .. //depot/projects/smpng/sys/ia64/include/md_var.h#10 integrate .. //depot/projects/smpng/sys/ia64/include/param.h#12 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_lookup.c#8 integrate .. //depot/projects/smpng/sys/kern/init_main.c#38 integrate .. //depot/projects/smpng/sys/kern/kern_fork.c#65 integrate .. //depot/projects/smpng/sys/kern/kern_mac.c#28 integrate .. //depot/projects/smpng/sys/kern/kern_mib.c#22 integrate .. //depot/projects/smpng/sys/kern/kern_shutdown.c#37 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#57 integrate .. //depot/projects/smpng/sys/kern/kern_tc.c#24 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#45 integrate .. //depot/projects/smpng/sys/kern/kern_timeout.c#13 integrate .. //depot/projects/smpng/sys/kern/kern_xxx.c#10 integrate .. //depot/projects/smpng/sys/kern/sched_4bsd.c#13 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#15 integrate .. //depot/projects/smpng/sys/kern/subr_devstat.c#11 integrate .. //depot/projects/smpng/sys/kern/subr_mbuf.c#37 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#48 integrate .. //depot/projects/smpng/sys/kern/vfs_cluster.c#28 integrate .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#62 integrate .. //depot/projects/smpng/sys/modules/Makefile#60 integrate .. //depot/projects/smpng/sys/modules/agp/Makefile#5 integrate .. //depot/projects/smpng/sys/modules/mac_stub/Makefile#1 branch .. //depot/projects/smpng/sys/modules/owi/Makefile#1 branch .. //depot/projects/smpng/sys/net/bpf.c#25 integrate .. //depot/projects/smpng/sys/net/if_ethersubr.c#35 integrate .. //depot/projects/smpng/sys/net/radix.h#5 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_input.c#4 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_node.c#5 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_node.h#4 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_output.c#3 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_proto.h#3 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_var.h#3 integrate .. //depot/projects/smpng/sys/netgraph/ng_ksocket.c#18 integrate .. //depot/projects/smpng/sys/netinet/igmp.c#9 integrate .. //depot/projects/smpng/sys/netinet/in.h#23 integrate .. //depot/projects/smpng/sys/netinet/in_pcb.h#21 integrate .. //depot/projects/smpng/sys/netinet/in_var.h#7 integrate .. //depot/projects/smpng/sys/netinet/ip_icmp.c#18 integrate .. //depot/projects/smpng/sys/netinet/ip_mroute.c#24 integrate .. //depot/projects/smpng/sys/netinet/ip_output.c#41 integrate .. //depot/projects/smpng/sys/netinet/ip_var.h#14 integrate .. //depot/projects/smpng/sys/netinet/raw_ip.c#28 integrate .. //depot/projects/smpng/sys/netinet/tcp_subr.c#32 integrate .. //depot/projects/smpng/sys/netinet/tcp_syncache.c#20 integrate .. //depot/projects/smpng/sys/netinet/udp_usrreq.c#28 integrate .. //depot/projects/smpng/sys/netsmb/smb_conn.c#8 integrate .. //depot/projects/smpng/sys/netsmb/smb_iod.c#12 integrate .. //depot/projects/smpng/sys/netsmb/smb_subr.h#12 integrate .. //depot/projects/smpng/sys/pc98/pc98/clock.c#19 integrate .. //depot/projects/smpng/sys/pc98/pc98/sio.c#31 integrate .. //depot/projects/smpng/sys/pc98/pc98/syscons.c#25 delete .. //depot/projects/smpng/sys/pccard/pcic.c#21 integrate .. //depot/projects/smpng/sys/pci/agp.c#14 integrate .. //depot/projects/smpng/sys/pci/agp_ali.c#6 integrate .. //depot/projects/smpng/sys/pci/agp_amd.c#10 integrate .. //depot/projects/smpng/sys/pci/agp_i810.c#10 integrate .. //depot/projects/smpng/sys/pci/agp_intel.c#12 integrate .. //depot/projects/smpng/sys/pci/agp_nvidia.c#1 branch .. //depot/projects/smpng/sys/pci/agp_sis.c#7 integrate .. //depot/projects/smpng/sys/pci/agp_via.c#7 integrate .. //depot/projects/smpng/sys/pci/agpreg.h#7 integrate .. //depot/projects/smpng/sys/pci/alpm.c#7 integrate .. //depot/projects/smpng/sys/pci/amdpm.c#8 integrate .. //depot/projects/smpng/sys/pci/if_dc.c#43 integrate .. //depot/projects/smpng/sys/pci/if_de.c#12 integrate .. //depot/projects/smpng/sys/pci/if_mn.c#7 integrate .. //depot/projects/smpng/sys/pci/if_pcn.c#19 integrate .. //depot/projects/smpng/sys/pci/if_rl.c#36 integrate .. //depot/projects/smpng/sys/pci/if_rlreg.h#12 integrate .. //depot/projects/smpng/sys/pci/if_sf.c#21 integrate .. //depot/projects/smpng/sys/pci/if_sis.c#30 integrate .. //depot/projects/smpng/sys/pci/if_sk.c#20 integrate .. //depot/projects/smpng/sys/pci/if_ste.c#23 integrate .. //depot/projects/smpng/sys/pci/if_ti.c#30 integrate .. //depot/projects/smpng/sys/pci/if_tl.c#16 integrate .. //depot/projects/smpng/sys/pci/if_vr.c#19 integrate .. //depot/projects/smpng/sys/pci/if_wb.c#18 integrate .. //depot/projects/smpng/sys/pci/if_xl.c#33 integrate .. //depot/projects/smpng/sys/pci/intpm.c#8 integrate .. //depot/projects/smpng/sys/pci/meteor.c#10 integrate .. //depot/projects/smpng/sys/pci/ncr.c#12 integrate .. //depot/projects/smpng/sys/pci/viapm.c#5 integrate .. //depot/projects/smpng/sys/pci/xrpu.c#9 integrate .. //depot/projects/smpng/sys/powerpc/include/cpu.h#14 integrate .. //depot/projects/smpng/sys/powerpc/include/md_var.h#8 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 28 13:26:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D059616A4C1; Thu, 28 Aug 2003 13:26:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 937C216A4BF for ; Thu, 28 Aug 2003 13:26:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 08DAF43FA3 for ; Thu, 28 Aug 2003 13:26:19 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7SKQI0U034809 for ; Thu, 28 Aug 2003 13:26:18 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7SKQInj034806 for perforce@freebsd.org; Thu, 28 Aug 2003 13:26:18 -0700 (PDT) Date: Thu, 28 Aug 2003 13:26:18 -0700 (PDT) Message-Id: <200308282026.h7SKQInj034806@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 37104 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 20:26:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=37104 Change 37104 by rwatson@rwatson_tislabs on 2003/08/28 13:25:33 List the three optional MAC #ifdefs in the MAC config file, commented out. Affected files ... .. //depot/projects/trustedbsd/mac/sys/i386/conf/MAC#47 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/i386/conf/MAC#47 (text+ko) ==== @@ -31,7 +31,9 @@ makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols options MAC -options MAC_DEBUG +#options MAC_ALWAYS_LABEL_MBUF +#options MAC_DEBUG +#options MAC_STATIC options UFS_EXTATTR options UFS_EXTATTR_AUTOSTART From owner-p4-projects@FreeBSD.ORG Thu Aug 28 13:59:43 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A188616A4C0; Thu, 28 Aug 2003 13:59:42 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5624216A4E9 for ; Thu, 28 Aug 2003 13:59:42 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5145443FF2 for ; Thu, 28 Aug 2003 13:59:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7SKxT0U036567 for ; Thu, 28 Aug 2003 13:59:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7SKxAdK036423 for perforce@freebsd.org; Thu, 28 Aug 2003 13:59:10 -0700 (PDT) Date: Thu, 28 Aug 2003 13:59:10 -0700 (PDT) Message-Id: <200308282059.h7SKxAdK036423@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 37109 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 20:59:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=37109 Change 37109 by rwatson@rwatson_tislabs on 2003/08/28 13:58:12 Integrate a rwatson_miscmac branch to do additional parallel devopment in. First task, to refactor the kern_mac.c file into useful components. Affected files ... .. //depot/projects/trustedbsd/base/Makefile.inc1#43 integrate .. //depot/projects/trustedbsd/base/UPDATING#36 integrate .. //depot/projects/trustedbsd/base/bin/Makefile.inc#7 integrate .. //depot/projects/trustedbsd/base/bin/ls/ls.1#19 integrate .. //depot/projects/trustedbsd/base/bin/ps/extern.h#11 integrate .. //depot/projects/trustedbsd/base/bin/ps/keyword.c#15 integrate .. //depot/projects/trustedbsd/base/bin/ps/print.c#15 integrate .. //depot/projects/trustedbsd/base/bin/setfacl/setfacl.1#4 integrate .. //depot/projects/trustedbsd/base/bin/setfacl/setfacl.c#6 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/ChangeLog#13 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/Makefile.in#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/c-decl.c#12 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/c-lex.c#9 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/c-pragma.c#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/c-typeck.c#10 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/calls.c#13 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/alpha/freebsd.h#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/darwin.c#3 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/freebsd-spec.h#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/i386/freebsd.h#15 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/i386/freebsd64.h#5 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/i386/gthr-win32.c#2 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/i386/winnt.c#7 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/ia64/ia64.c#6 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/ia64/ia64.md#6 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/rs6000/rs6000.c#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/sparc/freebsd.h#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/config/sparc/sparc.c#10 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/ChangeLog#13 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/call.c#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/class.c#9 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/cp-tree.h#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/decl.c#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/init.c#12 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/method.c#9 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/parse.y#10 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/pt.c#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cp/search.c#9 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cppexp.c#7 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/cppinit.c#10 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/dbxout.c#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/c-tree.texi#7 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/collect2.texi#3 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/cpp.texi#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/cppopts.texi#4 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/extend.texi#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/fragments.texi#2 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/headerdirs.texi#3 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/include/texinfo.tex#5 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/invoke.texi#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/md.texi#7 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/portability.texi#2 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/rtl.texi#7 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/sourcebuild.texi#5 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/doc/trouble.texi#4 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/dwarf2out.c#9 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/expr.c#12 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/f/ChangeLog#12 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/flow.c#10 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/gcse.c#7 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/integrate.c#8 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/libgcc-std.ver#5 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/loop.c#14 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/optabs.c#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/sched-deps.c#9 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/sched-ebb.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/sched-int.h#7 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/sched-rgn.c#6 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/toplev.c#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/tree-inline.c#6 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/unroll.c#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/unwind-c.c#2 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/varasm.c#11 integrate .. //depot/projects/trustedbsd/base/contrib/gcc/version.c#13 integrate .. //depot/projects/trustedbsd/base/contrib/isc-dhcp/FREEBSD-upgrade#6 integrate .. //depot/projects/trustedbsd/base/contrib/isc-dhcp/client/dhclient.c#9 integrate .. //depot/projects/trustedbsd/base/contrib/isc-dhcp/common/dispatch.c#5 integrate .. //depot/projects/trustedbsd/base/contrib/isc-dhcp/includes/dhcpd.h#8 integrate .. //depot/projects/trustedbsd/base/contrib/libf2c/ChangeLog#9 integrate .. //depot/projects/trustedbsd/base/contrib/libobjc/ChangeLog#11 integrate .. //depot/projects/trustedbsd/base/contrib/libstdc++/ChangeLog#12 integrate .. //depot/projects/trustedbsd/base/contrib/libstdc++/config/abi/hppa-linux-gnu/baseline_symbols.txt#1 branch .. //depot/projects/trustedbsd/base/contrib/libstdc++/config/abi/mips-linux-gnu/baseline_symbols.txt#1 branch .. //depot/projects/trustedbsd/base/contrib/libstdc++/config/abi/sparc-linux-gnu/baseline_symbols.txt#1 branch .. //depot/projects/trustedbsd/base/contrib/libstdc++/config/abi/x86_64-linux-gnu/baseline_symbols.txt#2 integrate .. //depot/projects/trustedbsd/base/contrib/libstdc++/configure#9 integrate .. //depot/projects/trustedbsd/base/contrib/libstdc++/configure.in#9 integrate .. //depot/projects/trustedbsd/base/contrib/libstdc++/include/bits/c++config#10 integrate .. //depot/projects/trustedbsd/base/contrib/libstdc++/include/bits/locale_facets.tcc#10 integrate .. //depot/projects/trustedbsd/base/contrib/smbfs/smbutil/common.h#4 integrate .. //depot/projects/trustedbsd/base/contrib/telnet/telnetd/telnetd.c#2 integrate .. //depot/projects/trustedbsd/base/etc/Makefile#33 integrate .. //depot/projects/trustedbsd/base/etc/defaults/Makefile#2 integrate .. //depot/projects/trustedbsd/base/etc/defaults/devfs.rules#1 branch .. //depot/projects/trustedbsd/base/etc/defaults/pccard.conf#18 integrate .. //depot/projects/trustedbsd/base/etc/defaults/rc.conf#30 integrate .. //depot/projects/trustedbsd/base/etc/devd.conf#6 integrate .. //depot/projects/trustedbsd/base/etc/isdn/Makefile#5 integrate .. //depot/projects/trustedbsd/base/etc/mtree/BSD.local.dist#19 integrate .. //depot/projects/trustedbsd/base/etc/mtree/BSD.root.dist#7 integrate .. //depot/projects/trustedbsd/base/etc/mtree/BSD.usr.dist#29 integrate .. //depot/projects/trustedbsd/base/etc/network.subr#4 integrate .. //depot/projects/trustedbsd/base/etc/newsyslog.conf#10 integrate .. //depot/projects/trustedbsd/base/etc/pccard_ether#7 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/devfs#5 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/initdiskless#10 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/jail#3 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/ldconfig#8 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/routing#2 integrate .. //depot/projects/trustedbsd/base/etc/rc.subr#13 integrate .. //depot/projects/trustedbsd/base/etc/sendmail/Makefile#10 integrate .. //depot/projects/trustedbsd/base/etc/services#9 integrate .. //depot/projects/trustedbsd/base/games/fortune/datfiles/startrek#5 integrate .. //depot/projects/trustedbsd/base/gnu/lib/libreadline/readline/Makefile#4 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile#2 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/as/i386-freebsd/Makefile#2 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/ld/Makefile.alpha#7 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/ld/Makefile.amd64#3 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/ld/Makefile.i386#6 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/ld/Makefile.ia64#6 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/ld/Makefile.powerpc#7 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/binutils/ld/Makefile.sparc64#6 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/send-pr/send-pr.sh#6 integrate .. //depot/projects/trustedbsd/base/include/unistd.h#18 integrate .. //depot/projects/trustedbsd/base/lib/Makefile#22 integrate .. //depot/projects/trustedbsd/base/lib/libalias/Makefile#4 integrate .. //depot/projects/trustedbsd/base/lib/libatm/Makefile#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/Makefile#9 integrate .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/Makefile.inc#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/alpha/gen/signalcontext.c#1 branch .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/Ovfork.S#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/fork.S#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/pipe.S#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/alpha/sys/setlogin.S#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/amd64/sys/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/gen/Makefile.inc#18 integrate .. //depot/projects/trustedbsd/base/lib/libc/gen/gethostname.3#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/gen/gethostname.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/gen/pmadvise.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/i386/sys/Makefile.inc#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/ia64/gen/fpgetmask.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/ia64/gen/fpsetmask.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/ia64/sys/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/Makefile.inc#15 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/big5.5#1 branch .. //depot/projects/trustedbsd/base/lib/libc/locale/btowc.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/gb18030.5#1 branch .. //depot/projects/trustedbsd/base/lib/libc/locale/gbk.5#1 branch .. //depot/projects/trustedbsd/base/lib/libc/locale/mblen.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/mbstowcs.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/mbtowc.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/mskanji.5#1 branch .. //depot/projects/trustedbsd/base/lib/libc/locale/multibyte.3#7 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/wcstombs.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/wctob.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/locale/wctomb.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/posix1e/mac.c#6 integrate .. //depot/projects/trustedbsd/base/lib/libc/posix1e/mac_free.3#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/posix1e/mac_get.3#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/posix1e/mac_is_present_np.3#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/posix1e/mac_prepare.3#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/posix1e/mac_set.3#6 integrate .. //depot/projects/trustedbsd/base/lib/libc/posix1e/mac_text.3#7 integrate .. //depot/projects/trustedbsd/base/lib/libc/powerpc/sys/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/sparc64/gen/Makefile.inc#7 integrate .. //depot/projects/trustedbsd/base/lib/libc/sparc64/gen/signalcontext.c#1 branch .. //depot/projects/trustedbsd/base/lib/libc/sparc64/sys/Makefile.inc#7 integrate .. //depot/projects/trustedbsd/base/lib/libc/stdlib/abort.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/stdlib/random.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/sys/Makefile.inc#11 integrate .. //depot/projects/trustedbsd/base/lib/libc/sys/madvise.2#7 integrate .. //depot/projects/trustedbsd/base/lib/libc/sys/mlockall.2#1 branch .. //depot/projects/trustedbsd/base/lib/libc/sys/ptrace.2#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid.3#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid_compare.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid_create.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid_create_nil.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid_equal.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid_from_string.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid_hash.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid_is_nil.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libc/uuid/uuid_to_string.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libcam/Makefile#3 integrate .. //depot/projects/trustedbsd/base/lib/libcrypt/Makefile#4 integrate .. //depot/projects/trustedbsd/base/lib/libdevstat/Makefile#5 integrate .. //depot/projects/trustedbsd/base/lib/libdevstat/devstat.c#6 integrate .. //depot/projects/trustedbsd/base/lib/libedit/Makefile#4 integrate .. //depot/projects/trustedbsd/base/lib/libexpat/Makefile#3 integrate .. //depot/projects/trustedbsd/base/lib/libfetch/ftp.c#14 integrate .. //depot/projects/trustedbsd/base/lib/libgeom/Makefile#5 integrate .. //depot/projects/trustedbsd/base/lib/libipsec/Makefile#3 integrate .. //depot/projects/trustedbsd/base/lib/libipx/Makefile#2 integrate .. //depot/projects/trustedbsd/base/lib/libkvm/Makefile#2 integrate .. //depot/projects/trustedbsd/base/lib/libmd/Makefile#4 integrate .. //depot/projects/trustedbsd/base/lib/libncurses/Makefile#13 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/alpha/context.S#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/alpha/enter_uts.S#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/alpha/pthread_md.c#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/include/atomic_ops.h#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/include/pthread_md.h#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/amd64/amd64/pthread_md.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/ia64/ia64/context.S#3 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/ia64/include/pthread_md.h#4 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/support/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/test/Makefile#3 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_cancel.c#9 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_exit.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_fork.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_init.c#11 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_kern.c#15 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_nanosleep.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_printf.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_private.h#13 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_rtld.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_sig.c#12 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_sigaction.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_sigmask.c#6 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_sigpending.c#6 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_sigprocmask.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_sigsuspend.c#7 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_sigwait.c#8 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_spec.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_yield.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libsbuf/Makefile#3 integrate .. //depot/projects/trustedbsd/base/lib/libufs/Makefile#6 integrate .. //depot/projects/trustedbsd/base/lib/libutil/Makefile#6 integrate .. //depot/projects/trustedbsd/base/lib/libz/Makefile#2 integrate .. //depot/projects/trustedbsd/base/lib/msun/Makefile#7 integrate .. //depot/projects/trustedbsd/base/libexec/lukemftpd/Makefile#10 integrate .. //depot/projects/trustedbsd/base/libexec/rtld-elf/Makefile#7 integrate .. //depot/projects/trustedbsd/base/libexec/rtld-elf/malloc.c#6 integrate .. //depot/projects/trustedbsd/base/libexec/rtld-elf/rtld.c#17 integrate .. //depot/projects/trustedbsd/base/libexec/rtld-elf/rtld.h#5 integrate .. //depot/projects/trustedbsd/base/release/Makefile#49 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/errata/article.sgml#11 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#43 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/alpha/article.sgml#2 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/amd64/article.sgml#2 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#72 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/i386/article.sgml#3 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/ia64/article.sgml#2 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/pc98/article.sgml#2 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/sparc64/article.sgml#4 integrate .. //depot/projects/trustedbsd/base/release/scripts/doFS.sh#14 integrate .. //depot/projects/trustedbsd/base/release/scripts/print-cdrom-packages.sh#18 integrate .. //depot/projects/trustedbsd/base/release/sparc64/mkisoimages.sh#3 integrate .. //depot/projects/trustedbsd/base/rescue/rescue/Makefile#4 integrate .. //depot/projects/trustedbsd/base/sbin/Makefile#18 integrate .. //depot/projects/trustedbsd/base/sbin/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/base/sbin/atacontrol/atacontrol.c#11 integrate .. //depot/projects/trustedbsd/base/sbin/atm/Makefile#3 integrate .. //depot/projects/trustedbsd/base/sbin/atm/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/base/sbin/atm/atm/Makefile#5 integrate .. //depot/projects/trustedbsd/base/sbin/atm/atm/atm.c#4 integrate .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/Makefile#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/atmconfig.8#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/atmconfig.h#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/atmconfig.help#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/diag.c#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/diag.h#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/main.c#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/natm.c#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/atmconfig/private.h#1 branch .. //depot/projects/trustedbsd/base/sbin/atm/fore_dnld/Makefile#5 integrate .. //depot/projects/trustedbsd/base/sbin/atm/ilmid/Makefile#6 integrate .. //depot/projects/trustedbsd/base/sbin/camcontrol/modeedit.c#8 integrate .. //depot/projects/trustedbsd/base/sbin/ccdconfig/Makefile#5 integrate .. //depot/projects/trustedbsd/base/sbin/ccdconfig/ccdconfig.c#8 integrate .. //depot/projects/trustedbsd/base/sbin/comcontrol/Makefile#4 integrate .. //depot/projects/trustedbsd/base/sbin/comcontrol/comcontrol.c#3 integrate .. //depot/projects/trustedbsd/base/sbin/devd/Makefile#5 integrate .. //depot/projects/trustedbsd/base/sbin/dhclient/Makefile.inc#5 integrate .. //depot/projects/trustedbsd/base/sbin/ffsinfo/Makefile#4 integrate .. //depot/projects/trustedbsd/base/sbin/ffsinfo/ffsinfo.8#6 integrate .. //depot/projects/trustedbsd/base/sbin/ffsinfo/ffsinfo.c#3 integrate .. //depot/projects/trustedbsd/base/sbin/growfs/debug.c#5 integrate .. //depot/projects/trustedbsd/base/sbin/growfs/debug.h#2 integrate .. //depot/projects/trustedbsd/base/sbin/ip6fw/ip6fw.c#6 integrate .. //depot/projects/trustedbsd/base/sbin/mount/mount.c#11 integrate .. //depot/projects/trustedbsd/base/sbin/mount_hpfs/mount_hpfs.c#4 integrate .. //depot/projects/trustedbsd/base/sbin/mount_msdosfs/mount_msdosfs.8#5 integrate .. //depot/projects/trustedbsd/base/sbin/mount_msdosfs/mount_msdosfs.c#4 integrate .. //depot/projects/trustedbsd/base/sbin/natd/natd.8#9 integrate .. //depot/projects/trustedbsd/base/sbin/natd/natd.c#7 integrate .. //depot/projects/trustedbsd/base/sbin/nfsiod/nfsiod.8#5 integrate .. //depot/projects/trustedbsd/base/sbin/quotacheck/quotacheck.c#9 integrate .. //depot/projects/trustedbsd/base/sbin/routed/defs.h#2 integrate .. //depot/projects/trustedbsd/base/sbin/routed/trace.c#3 integrate .. //depot/projects/trustedbsd/base/sbin/rtsol/Makefile#3 integrate .. //depot/projects/trustedbsd/base/secure/lib/libcrypto/Makefile#17 integrate .. //depot/projects/trustedbsd/base/secure/libexec/sftp-server/Makefile#6 integrate .. //depot/projects/trustedbsd/base/secure/usr.bin/scp/Makefile#6 integrate .. //depot/projects/trustedbsd/base/secure/usr.bin/sftp/Makefile#6 integrate .. //depot/projects/trustedbsd/base/secure/usr.bin/ssh-add/Makefile#5 integrate .. //depot/projects/trustedbsd/base/secure/usr.bin/ssh-agent/Makefile#5 integrate .. //depot/projects/trustedbsd/base/secure/usr.bin/ssh-keygen/Makefile#5 integrate .. //depot/projects/trustedbsd/base/share/colldef/Makefile#16 integrate .. //depot/projects/trustedbsd/base/share/examples/ppi/ppilcd.c#2 integrate .. //depot/projects/trustedbsd/base/share/man/man3/queue.3#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/Makefile#36 integrate .. //depot/projects/trustedbsd/base/share/man/man4/acpi.4#9 integrate .. //depot/projects/trustedbsd/base/share/man/man4/aha.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/amr.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/an.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/asr.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ath.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/awi.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ccd.4#6 integrate .. //depot/projects/trustedbsd/base/share/man/man4/cue.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/dpt.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/exca.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ieee80211.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ip.4#7 integrate .. //depot/projects/trustedbsd/base/share/man/man4/mac_none.4#6 integrate .. //depot/projects/trustedbsd/base/share/man/man4/mac_stub.4#1 branch .. //depot/projects/trustedbsd/base/share/man/man4/man4.i386/ep.4#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/man4.i386/fe.4#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/mlx.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/natmip.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_atmpif.4#1 branch .. //depot/projects/trustedbsd/base/share/man/man4/oldcard.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/pccard.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/pcic.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/sab.4#1 branch .. //depot/projects/trustedbsd/base/share/man/man4/ti.4#6 integrate .. //depot/projects/trustedbsd/base/share/man/man4/vr.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/wi.4#16 integrate .. //depot/projects/trustedbsd/base/share/man/man5/Makefile#10 integrate .. //depot/projects/trustedbsd/base/share/man/man5/nsmb.conf.5#1 branch .. //depot/projects/trustedbsd/base/share/man/man5/rc.conf.5#32 integrate .. //depot/projects/trustedbsd/base/share/man/man7/development.7#3 integrate .. //depot/projects/trustedbsd/base/share/man/man7/hier.7#16 integrate .. //depot/projects/trustedbsd/base/share/misc/bsd-family-tree#12 integrate .. //depot/projects/trustedbsd/base/share/misc/iso3166#6 integrate .. //depot/projects/trustedbsd/base/share/mk/bsd.lib.mk#18 integrate .. //depot/projects/trustedbsd/base/share/mk/bsd.own.mk#8 integrate .. //depot/projects/trustedbsd/base/share/mklocale/Makefile#15 integrate .. //depot/projects/trustedbsd/base/share/mklocale/ko_KR.CP949.src#1 branch .. //depot/projects/trustedbsd/base/share/mklocale/zh_CN.GB18030.src#2 integrate .. //depot/projects/trustedbsd/base/share/monetdef/Makefile#15 integrate .. //depot/projects/trustedbsd/base/share/msgdef/Makefile#15 integrate .. //depot/projects/trustedbsd/base/share/numericdef/Makefile#15 integrate .. //depot/projects/trustedbsd/base/share/timedef/Makefile#14 integrate .. //depot/projects/trustedbsd/base/share/timedef/am_ET.UTF-8.src#2 integrate .. //depot/projects/trustedbsd/base/share/timedef/zh_CN.GB18030.src#2 integrate .. //depot/projects/trustedbsd/base/share/timedef/zh_CN.eucCN.src#2 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/zone.tab#8 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/alpha-gdbstub.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/api_up1000.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/autoconf.c#8 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/busspace.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/clock.c#7 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/cpuconf.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/critical.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/db_disasm.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/db_interface.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/db_trace.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_1000a.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_2100_a50.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_2100_a500.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_3000_300.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_3000_500.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_axppci_33.c#7 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_eb164.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_eb64plus.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_kn20aa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_kn300.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_kn8ae.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_st550.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dec_st6600.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/dump_machdep.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/elf_machdep.c#9 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/fp_emulate.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/genassym.c#10 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/ieee_float.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/in_cksum.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/interrupt.c#13 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/machdep.c#28 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/mem.c#8 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/mp_machdep.c#15 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/pmap.c#33 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/prom.c#9 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/promcons.c#7 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/sgmap.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/swtch.s#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/sys_machdep.c#10 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/trap.c#21 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/vm_machdep.c#20 integrate .. //depot/projects/trustedbsd/base/sys/alpha/conf/NOTES#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/include/cpu.h#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/include/critical.h#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/include/md_var.h#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/include/pcb.h#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/isa/isa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/isa/isa_dma.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/isa/mcclock_isa.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/linux/linux_dummy.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/linux/linux_genassym.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/linux/linux_machdep.c#10 integrate .. //depot/projects/trustedbsd/base/sys/alpha/linux/linux_sysvec.c#11 integrate .. //depot/projects/trustedbsd/base/sys/alpha/mcbus/mcbus.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/mcbus/mcmem.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/mcbus/mcpcia.c#9 integrate .. //depot/projects/trustedbsd/base/sys/alpha/osf1/imgact_osf1.c#11 integrate .. //depot/projects/trustedbsd/base/sys/alpha/osf1/osf1_ioctl.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/osf1/osf1_misc.c#15 integrate .. //depot/projects/trustedbsd/base/sys/alpha/osf1/osf1_mount.c#9 integrate .. //depot/projects/trustedbsd/base/sys/alpha/osf1/osf1_signal.c#14 integrate .. //depot/projects/trustedbsd/base/sys/alpha/osf1/osf1_sysvec.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/apecs.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/apecs_pci.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/bwx.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/cia.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/cia_pci.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/irongate.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/irongate_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/lca.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/lca_pci.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/pcibus.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/swiz.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/t2.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/t2_pci.c#6 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/tsunami.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/pci/tsunami_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/alpha/tlsb/dwlpx.c#7 integrate .. //depot/projects/trustedbsd/base/sys/alpha/tlsb/gbus.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/tlsb/kftxx.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/tlsb/mcclock_tlsb.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/tlsb/tlsb.c#4 integrate .. //depot/projects/trustedbsd/base/sys/alpha/tlsb/tlsbcpu.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/tlsb/tlsbmem.c#3 integrate .. //depot/projects/trustedbsd/base/sys/alpha/tlsb/zs_tlsb.c#7 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/amd64_mem.c#2 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/critical.c#4 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/elf_machdep.c#4 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/pmap.c#8 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/vm_machdep.c#7 integrate .. //depot/projects/trustedbsd/base/sys/amd64/ia32/Makefile#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32.h#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_genassym.c#3 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_misc.c#3 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_proto.h#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_signal.c#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_signal.h#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_sigtramp.S#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_syscall.c#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_syscall.h#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_syscalls.c#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_sysent.c#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_sysvec.c#3 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/ia32_util.h#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/syscalls.conf#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/ia32/syscalls.master#2 delete .. //depot/projects/trustedbsd/base/sys/amd64/include/cpu.h#2 integrate .. //depot/projects/trustedbsd/base/sys/amd64/include/critical.h#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/include/md_var.h#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/pci/pci_bus.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/Makefile#8 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/bcache.c#4 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/boot.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/commands.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/console.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/dev_net.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/devopen.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/interp.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/interp_backslash.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/interp_forth.c#5 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/interp_parse.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/isapnp.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/load.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/load_elf.c#7 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/load_elf32.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/load_elf64.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/ls.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/misc.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/module.c#5 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/panic.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/pnp.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/common/ufsread.c#7 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/boot2/boot1.s#4 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/boot2/boot2.c#15 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/kgzldr/boot.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/kgzldr/lib.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/biosacpi.c#5 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/bioscd.c#5 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/biosdisk.c#7 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/biosmem.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/biospci.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/biospnp.c#4 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/biossmap.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/bootinfo.c#6 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/bootinfo32.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/bootinfo64.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/comconsole.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/devicename.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/elf32_freebsd.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/elf64_freebsd.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/gatea20.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/i386_copy.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/i386_module.c#7 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/nullconsole.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/pread.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/pxe.c#3 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/time.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/libi386/vidconsole.c#2 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/loader/conf.c#6 integrate .. //depot/projects/trustedbsd/base/sys/boot/i386/loader/main.c#4 integrate .. //depot/projects/trustedbsd/base/sys/boot/powerpc/loader/Makefile#4 integrate .. //depot/projects/trustedbsd/base/sys/cam/scsi/scsi_da.c#37 integrate .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/trustedbsd/base/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/trustedbsd/base/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/trustedbsd/base/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/trustedbsd/base/sys/compat/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/trustedbsd/base/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/trustedbsd/base/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/trustedbsd/base/sys/compat/linprocfs/linprocfs.c#20 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_misc.c#19 integrate .. //depot/projects/trustedbsd/base/sys/conf/NOTES#41 integrate .. //depot/projects/trustedbsd/base/sys/conf/files#63 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.amd64#6 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.i386#35 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.ia64#21 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.pc98#32 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.sparc64#26 integrate .. //depot/projects/trustedbsd/base/sys/conf/kern.post.mk#28 integrate .. //depot/projects/trustedbsd/base/sys/conf/kern.pre.mk#21 integrate .. //depot/projects/trustedbsd/base/sys/conf/kmod.mk#21 integrate .. //depot/projects/trustedbsd/base/sys/conf/majors#24 integrate .. //depot/projects/trustedbsd/base/sys/conf/options#41 integrate .. //depot/projects/trustedbsd/base/sys/conf/options.alpha#10 integrate .. //depot/projects/trustedbsd/base/sys/conf/options.ia64#12 integrate .. //depot/projects/trustedbsd/base/sys/conf/options.sparc64#8 integrate .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/acfreebsd.h#8 integrate .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/common/adisasm.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/common/getopt.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslanalyze.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslcodegen.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslcompile.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslcompiler.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslcompiler.l#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslcompiler.y#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslerror.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslfiles.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslfold.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslglobal.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/asllength.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/asllisting.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslload.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/asllookup.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslmain.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslmap.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslopcodes.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/asloperands.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslopt.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslresource.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslrestype1.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslrestype2.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslstubs.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/asltransform.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/asltree.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/asltypes.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/compiler/aslutils.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/osunixxf.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/dev/oltr/if_oltr.c#6 integrate .. //depot/projects/trustedbsd/base/sys/ddb/db_access.c#3 integrate .. //depot/projects/trustedbsd/base/sys/ddb/db_command.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aac.c#23 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aac_cam.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aac_debug.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aac_disk.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aac_linux.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aac_pci.c#19 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aacvar.h#17 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi.c#28 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_acad.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_battery.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_button.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_cmbat.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_cpu.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_ec.c#16 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_isab.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_lid.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_pci.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_pci_link.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_pcib.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_pcib_acpi.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_pcib_pci.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_powerres.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_resource.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_thermal.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_timer.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpica_support.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpiio.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/adlink/adlink.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/adv_eisa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/adv_isa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/adv_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/advansys.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/advlib.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/advmcode.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/adw_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/adwcam.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/adwlib.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/advansys/adwmcode.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/aha/aha.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/aha/aha_isa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/aha/aha_mca.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic/aic.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic/aic_cbus.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic/aic_isa.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic/aic_pccard.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/ahc_eisa.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/ahc_pci.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/ahd_pci.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic7770.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic79xx.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic79xx_osm.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic79xx_osm.h#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic79xx_pci.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic7xxx.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic7xxx_93cx6.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic7xxx_osm.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic7xxx_osm.h#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/aic7xxx_pci.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/amd/amd.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/amr/amr.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/amr/amr_cam.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/amr/amr_disk.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/amr/amr_pci.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/an/if_aironet_ieee.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/an/if_an.c#19 integrate .. //depot/projects/trustedbsd/base/sys/dev/an/if_an_isa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/an/if_an_pccard.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/an/if_an_pci.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/an/if_anreg.h#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/ar/if_ar.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/ar/if_ar_isa.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ar/if_ar_pci.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/asr/asr.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-all.c#30 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-all.h#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-card.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-cbus.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-chipset.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-commands.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-disk.c#23 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-disk.h#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-dma.c#24 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-isa.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-lowlevel.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-pci.c#26 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-pci.h#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-queue.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-raid.c#19 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-raid.h#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-all.c#18 delete .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-all.h#10 delete .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-cam.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-cd.c#23 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-cd.h#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-fd.c#17 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-fd.h#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-tape.c#16 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-tape.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ath/if_ath.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ath/if_ath_pci.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/ath/if_athvar.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/awi/am79c930.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/awi/awi.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/awi/awi_wep.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/awi/awi_wicfg.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/awi/if_awi_pccard.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/bge/if_bge.c#27 integrate .. //depot/projects/trustedbsd/base/sys/dev/bge/if_bgereg.h#18 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_audio.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_audio.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_card.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_core.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_i2c.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_mem.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_os.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_reg.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/bktr_tuner.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/bktr/msp34xx.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/buslogic/bt.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/buslogic/bt_eisa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/buslogic/bt_isa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/buslogic/bt_mca.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/buslogic/bt_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/cardbus/cardbus.c#16 integrate .. //depot/projects/trustedbsd/base/sys/dev/cardbus/cardbus_cis.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/ciss/ciss.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/cm/if_cm_isa.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/cm/smc90cx6.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/cnw/if_cnw.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/cs/if_cs.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/cs/if_cs_isa.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/cs/if_cs_pccard.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ct/bshw_machdep.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ct/ct.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ct/ct_isa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/dec/mcclock.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/dgb/dgb.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/dgb/dgreg.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/CX.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/CX_PCI.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/EPCX.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/EPCX_PCI.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/Xe.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/Xem.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/Xr.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/digi.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/digi.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/digi_isa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/digi_pci.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/digi/digireg.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/dpt/dpt_eisa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/dpt/dpt_isa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/dpt/dpt_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/dpt/dpt_scsi.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/ati_pcigart.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drmP.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_agpsupport.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_auth.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_bufs.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_context.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_dma.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_drawable.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_drv.h#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_fops.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_ioctl.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_lock.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_memory.h#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_memory_debug.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_os_freebsd.h#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_pci.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_sarea.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_scatter.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_sysctl.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_vm.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_dma.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_drv.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_drv.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_irq.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_state.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_warp.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_cce.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_drm.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_drv.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_drv.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_irq.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_state.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_cp.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_drm.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_drv.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_drv.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_irq.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_mem.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_state.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/tdfx.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/tdfx_drv.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_ed.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_ed_isa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_ed_pccard.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_ed_pci.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/eisa/eisaconf.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/em/if_em.h#17 integrate .. //depot/projects/trustedbsd/base/sys/dev/em/if_em_hw.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/em/if_em_osdep.h#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/en/if_en_pci.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/en/midwayvar.h#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep_eisa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep_isa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep_mca.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep_pccard.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ex/if_ex.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ex/if_ex_isa.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ex/if_ex_pccard.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/exca/exca.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/fatm/if_fatm.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/fatm/if_fatmvar.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/fb/boot_font.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/fb/creator.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/fb/fb.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/fb/fbreg.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/fb/gallant12x22.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/fb/gfb.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/fb/s3_pci.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/fb/splash.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/fb/tga.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/fb/vga.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/fe/if_fe.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/fe/if_fe_cbus.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/fe/if_fe_isa.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/fe/if_fe_pccard.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/firewire.c#20 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/firewire.h#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwcrom.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwdma.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwmem.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwohci.c#18 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwohci_pci.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwohcireg.h#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/if_fwe.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/sbp.c#20 integrate .. //depot/projects/trustedbsd/base/sys/dev/fxp/if_fxp.c#31 integrate .. //depot/projects/trustedbsd/base/sys/dev/gem/if_gem.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/gem/if_gem_pci.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/gfb/gfb_pci.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/gx/if_gx.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/harp/if_harp.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/hatm/if_hatm.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/hatm/if_hatm_intr.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hatm/if_hatm_ioctl.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/hatm/if_hatm_rx.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/hatm/if_hatm_tx.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/hatm/if_hatmvar.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni_buffer.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni_globals.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni_init.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni_intr.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni_receive.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni_transmit.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/eni_vcm.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/hea_freebsd.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hea/hea_pci.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_buffer.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_command.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_globals.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_if.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_init.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_intr.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_load.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_output.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_receive.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_stats.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_timer.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_transmit.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/fore_vcm.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/hfa_eisa.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/hfa_pci.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/hfa/hfa_sbus.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/hifn/hifn7751.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/hme/if_hme.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/hme/if_hme_pci.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/hme/if_hme_sbus.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ichsmb/ichsmb.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ichsmb/ichsmb_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ida/ida.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/ida/ida_disk.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/ida/ida_eisa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ida/ida_pci.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/idt/idt.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/idt/idt_harp.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/idt/idt_pci.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/ie/if_ie.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ie/if_ie_isa.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/iicbus/if_ic.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/iicbus/iic.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/iicbus/iicbb.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/iicbus/iicbus.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/iicbus/iiconf.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/iicbus/iicsmb.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/iir/iir.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/iir/iir_ctrl.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/iir/iir_pci.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips_commands.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips_disk.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips_disk.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips_ioctl.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips_pci.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp.c#22 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp_freebsd.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp_pci.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp_sbus.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ispfw/ispfw.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/joy/joy.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/joy/joy_isa.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/joy/joy_pccard.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/kbd/atkbd.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/kbd/atkbdc.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/kbd/kbd.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/lge/if_lge.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/lmc/if_lmc.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/lmc/if_lmc_common.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/lmc/if_lmc_fbsd3.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/lmc/if_lmc_media.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/lnc/if_lnc.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/lnc/if_lnc_cbus.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/lnc/if_lnc_isa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/lnc/if_lnc_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/matcd/matcd.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/matcd/matcd_isa.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/mca/mca_bus.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/mcd/mcd.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mcd/mcd_isa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/md/md.c#30 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/acphy.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/amphy.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/bmtphy.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/brgphy.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/dcphy.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/e1000phy.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/exphy.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/inphy.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/lxtphy.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/mii.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/mii_physubr.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/mlphy.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/nsgphy.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/nsphy.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/pnaphy.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/pnphy.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/qsphy.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/rlphy.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/tdkphy.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/tlphy.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/ukphy.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/ukphy_subr.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/mii/xmphy.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mk48txx/mk48txx.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/mlx/mlx.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/mlx/mlx_disk.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/mlx/mlx_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/mly/mly.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/mpt/mpt.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/mpt/mpt_debug.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/mpt/mpt_freebsd.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/mpt/mpt_pci.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/musycc/musycc.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/my/if_my.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/ncv/ncr53c500.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ncv/ncr53c500_pccard.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/nge/if_nge.c#19 integrate .. //depot/projects/trustedbsd/base/sys/dev/nmdm/nmdm.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/nsp/nsp.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/nsp/nsp_pccard.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/null/null.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ofw/ofw_console.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/ofw/ofw_disk.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ofw/openfirm.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ofw/openfirmio.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ofw/openpromio.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/owi/if_ieee80211.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/owi/if_owi.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/owi/if_owi_pccard.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/owi/if_wireg.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/owi/if_wivar.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/patm/if_patm.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/patm/if_patm_attach.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/patm/if_patm_intr.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/patm/if_patm_ioctl.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/patm/if_patm_rtables.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/patm/if_patm_rx.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/patm/if_patm_tx.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/patm/if_patmvar.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccard.c#20 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccard_cis.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccard_cis_quirks.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccarddevs#24 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccarddevs.h#24 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccbb/pccbb.c#28 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccbb/pccbbdevid.h#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccbb/pccbbreg.h#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/pci/eisa_pci.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/pci/fixup_pci.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/pci/ignore_pci.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/pci/isa_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/pci/pci.c#26 integrate .. //depot/projects/trustedbsd/base/sys/dev/pci/pci_pci.c#13 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 28 14:31:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 64B2E16A4C1; Thu, 28 Aug 2003 14:31:29 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 24A6016A4BF for ; Thu, 28 Aug 2003 14:31:29 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AA8E643FBF for ; Thu, 28 Aug 2003 14:31:28 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7SLVS0U050318 for ; Thu, 28 Aug 2003 14:31:28 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7SLVScJ050315 for perforce@freebsd.org; Thu, 28 Aug 2003 14:31:28 -0700 (PDT) Date: Thu, 28 Aug 2003 14:31:28 -0700 (PDT) Message-Id: <200308282131.h7SLVScJ050315@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37113 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 28 Aug 2003 21:31:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=37113 Change 37113 by cvance@cvance_release on 2003/08/28 14:30:45 Apparently C would prefer you to terminate _every_ line of code. Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/label.c#7 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/label.c#7 (text+ko) ==== @@ -335,7 +335,7 @@ pi->newfs_type = NEWFS_UFS; strcpy(pi->newfs_data.newfs_ufs.user_options, ""); pi->newfs_data.newfs_ufs.acls = FALSE; - pi->newfs_data.newfs_ufs.multilabel = TRUE + pi->newfs_data.newfs_ufs.multilabel = TRUE; pi->newfs_data.newfs_ufs.softupdates = strcmp(mpoint, "/"); #ifdef PC98 pi->newfs_data.newfs_ufs.ufs1 = TRUE; From owner-p4-projects@FreeBSD.ORG Thu Aug 28 19:16:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4B9F516A4C1; Thu, 28 Aug 2003 19:16:31 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1BE1B16A4BF for ; Thu, 28 Aug 2003 19:16:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4A4CE43FEC for ; Thu, 28 Aug 2003 19:16:30 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T2GU0U071271 for ; Thu, 28 Aug 2003 19:16:30 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T2GTLn071268 for perforce@freebsd.org; Thu, 28 Aug 2003 19:16:29 -0700 (PDT) Date: Thu, 28 Aug 2003 19:16:29 -0700 (PDT) Message-Id: <200308290216.h7T2GTLn071268@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 37136 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 02:16:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=37136 Change 37136 by rwatson@rwatson_tislabs on 2003/08/28 19:15:37 Whitespace cleanup to style(9). Affected files ... .. //depot/projects/trustedbsd/mac/sys/sys/mac.h#243 edit .. //depot/projects/trustedbsd/mac/sys/sys/mac_policy.h#196 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/sys/mac.h#243 (text+ko) ==== @@ -77,27 +77,26 @@ * Extended non-POSIX.1e interfaces that offer additional services * available from the userland and kernel MAC frameworks. */ -int mac_execve(char *fname, char **argv, char **envv, - mac_t _label); -int mac_free(mac_t _label); -int mac_from_text(mac_t *_label, const char *_text); -int mac_get_fd(int _fd, mac_t _label); -int mac_get_file(const char *_path, mac_t _label); -int mac_get_link(const char *_path, mac_t _label); -int mac_get_pid(pid_t _pid, mac_t _label); -int mac_get_proc(mac_t _label); -int mac_is_present(const char *_policyname); -int mac_prepare(mac_t *_label, char *_elements); -int mac_prepare_file_label(mac_t *_label); -int mac_prepare_ifnet_label(mac_t *_label); -int mac_prepare_process_label(mac_t *_label); -int mac_prepare_type(mac_t *_label, const char *_type); -int mac_set_fd(int _fildes, const mac_t _label); -int mac_set_file(const char *_path, mac_t _label); -int mac_set_link(const char *_path, mac_t _label); -int mac_set_proc(const mac_t _label); -int mac_syscall(const char *_policyname, int _call, void *_arg); -int mac_to_text(mac_t mac, char **_text); +int mac_execve(char *fname, char **argv, char **envv, mac_t _label); +int mac_free(mac_t _label); +int mac_from_text(mac_t *_label, const char *_text); +int mac_get_fd(int _fd, mac_t _label); +int mac_get_file(const char *_path, mac_t _label); +int mac_get_link(const char *_path, mac_t _label); +int mac_get_pid(pid_t _pid, mac_t _label); +int mac_get_proc(mac_t _label); +int mac_is_present(const char *_policyname); +int mac_prepare(mac_t *_label, char *_elements); +int mac_prepare_file_label(mac_t *_label); +int mac_prepare_ifnet_label(mac_t *_label); +int mac_prepare_process_label(mac_t *_label); +int mac_prepare_type(mac_t *_label, const char *_type); +int mac_set_fd(int _fildes, const mac_t _label); +int mac_set_file(const char *_path, mac_t _label); +int mac_set_link(const char *_path, mac_t _label); +int mac_set_proc(const mac_t _label); +int mac_syscall(const char *_policyname, int _call, void *_arg); +int mac_to_text(mac_t mac, char **_text); #else /* _KERNEL */ @@ -159,7 +158,7 @@ void mac_destroy_cred(struct ucred *); void mac_destroy_devfsdirent(struct devfs_dirent *); void mac_destroy_ifnet(struct ifnet *); -void mac_destroy_ipc_msgmsg(struct msg *); +void mac_destroy_ipc_msgmsg(struct msg *); void mac_destroy_ipc_msgqueue(struct msqid_kernel *); void mac_destroy_ipc_sema(struct semid_kernel *); void mac_destroy_ipc_shm(struct shmid_kernel *); @@ -212,10 +211,13 @@ /* * Labeling event operations: System V IPC primitives */ -void mac_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr); -void mac_create_ipc_msgqueue(struct ucred *cred, struct msqid_kernel *msqkptr); -void mac_create_ipc_sema(struct ucred *cred, struct semid_kernel *semakptr); -void mac_create_ipc_shm(struct ucred *cred, struct shmid_kernel *shmsegptr); +void mac_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr); +void mac_create_ipc_msgqueue(struct ucred *cred, + struct msqid_kernel *msqkptr); +void mac_create_ipc_sema(struct ucred *cred, + struct semid_kernel *semakptr); +void mac_create_ipc_shm(struct ucred *cred, + struct shmid_kernel *shmsegptr); /* @@ -256,43 +258,49 @@ void mac_thread_userret(struct thread *td); /* - * Label cleanup operation: This is the inverse complement for the mac_create - * and associate type of hooks. This hook lets the policy module(s) perform a - * cleanup/flushing operation on the label associated with the objects, - * without freeing up the space allocated. This hook is useful in cases where it - * is desirable to remove any labeling reference when recycling any object to a - * pool. This hook does not replace the mac_destroy hooks. + * Label cleanup operation: This is the inverse complement for the + * mac_create and associate type of hooks. This hook lets the policy + * module(s) perform a cleanup/flushing operation on the label + * associated with the objects, without freeing up the space allocated. + * This hook is useful in cases where it is desirable to remove any + * labeling reference when recycling any object to a pool. This hook + * does not replace the mac_destroy hooks. */ -void mac_cleanup_ipc_msgmsg(struct msg *msgptr); -void mac_cleanup_ipc_msgqueue(struct msqid_kernel *msqkptr); -void mac_cleanup_ipc_sema(struct semid_kernel *semakptr); -void mac_cleanup_ipc_shm(struct shmid_kernel *shmsegptr); +void mac_cleanup_ipc_msgmsg(struct msg *msgptr); +void mac_cleanup_ipc_msgqueue(struct msqid_kernel *msqkptr); +void mac_cleanup_ipc_sema(struct semid_kernel *semakptr); +void mac_cleanup_ipc_shm(struct shmid_kernel *shmsegptr); /* Access control checks. */ int mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet); int mac_check_cred_visible(struct ucred *u1, struct ucred *u2); int mac_check_ifnet_transmit(struct ifnet *ifnet, struct mbuf *m); -int mac_check_ipc_msgmsq(struct ucred *cred, struct msg *msgptr, - struct msqid_kernel *msqkptr); -int mac_check_ipc_msgrcv(struct ucred *cred, struct msg *msgptr); -int mac_check_ipc_msgrmid(struct ucred *cred, struct msg *msgptr); -int mac_check_ipc_msqget(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_check_ipc_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_check_ipc_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr); -int mac_check_ipc_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, - int cmd); -int mac_check_ipc_semctl(struct ucred *cred, struct semid_kernel *semakptr, - int cmd); -int mac_check_ipc_semget(struct ucred *cred, struct semid_kernel *semakptr); -int mac_check_ipc_semop(struct ucred *cred, struct semid_kernel *semakptr, - size_t accesstype); -int mac_check_ipc_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, - int shmflg); -int mac_check_ipc_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, - int cmd); -int mac_check_ipc_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr); -int mac_check_ipc_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, - int shmflg); +int mac_check_ipc_msgmsq(struct ucred *cred, struct msg *msgptr, + struct msqid_kernel *msqkptr); +int mac_check_ipc_msgrcv(struct ucred *cred, struct msg *msgptr); +int mac_check_ipc_msgrmid(struct ucred *cred, struct msg *msgptr); +int mac_check_ipc_msqget(struct ucred *cred, + struct msqid_kernel *msqkptr); +int mac_check_ipc_msqsnd(struct ucred *cred, + struct msqid_kernel *msqkptr); +int mac_check_ipc_msqrcv(struct ucred *cred, + struct msqid_kernel *msqkptr); +int mac_check_ipc_msqctl(struct ucred *cred, + struct msqid_kernel *msqkptr, int cmd); +int mac_check_ipc_semctl(struct ucred *cred, + struct semid_kernel *semakptr, int cmd); +int mac_check_ipc_semget(struct ucred *cred, + struct semid_kernel *semakptr); +int mac_check_ipc_semop(struct ucred *cred,struct semid_kernel *semakptr, + size_t accesstype); +int mac_check_ipc_shmat(struct ucred *cred, + struct shmid_kernel *shmsegptr, int shmflg); +int mac_check_ipc_shmctl(struct ucred *cred, + struct shmid_kernel *shmsegptr, int cmd); +int mac_check_ipc_shmdt(struct ucred *cred, + struct shmid_kernel *shmsegptr); +int mac_check_ipc_shmget(struct ucred *cred, + struct shmid_kernel *shmsegptr, int shmflg); int mac_check_kenv_dump(struct ucred *cred); int mac_check_kenv_get(struct ucred *cred, char *name); int mac_check_kenv_set(struct ucred *cred, char *name, char *value); ==== //depot/projects/trustedbsd/mac/sys/sys/mac_policy.h#196 (text+ko) ==== @@ -88,8 +88,8 @@ void (*mpo_init_ifnet_label)(struct label *label); void (*mpo_init_ipc_msgmsg_label)(struct label *label); void (*mpo_init_ipc_msgqueue_label)(struct label* label); - void (*mpo_init_ipc_sema_label)(struct label* label); - void (*mpo_init_ipc_shm_label)(struct label* label); + void (*mpo_init_ipc_sema_label)(struct label* label); + void (*mpo_init_ipc_shm_label)(struct label* label); int (*mpo_init_ipq_label)(struct label *label, int flag); int (*mpo_init_mbuf_label)(struct label *label, int flag); void (*mpo_init_mount_label)(struct label *label); @@ -103,10 +103,10 @@ void (*mpo_destroy_cred_label)(struct label *label); void (*mpo_destroy_devfsdirent_label)(struct label *label); void (*mpo_destroy_ifnet_label)(struct label *label); - void (*mpo_destroy_ipc_msgmsg_label)(struct label* label); - void (*mpo_destroy_ipc_msgqueue_label)(struct label* label); - void (*mpo_destroy_ipc_sema_label)(struct label* label); - void (*mpo_destroy_ipc_shm_label)(struct label* label); + void (*mpo_destroy_ipc_msgmsg_label)(struct label* label); + void (*mpo_destroy_ipc_msgqueue_label)(struct label* label); + void (*mpo_destroy_ipc_sema_label)(struct label* label); + void (*mpo_destroy_ipc_shm_label)(struct label* label); void (*mpo_destroy_ipq_label)(struct label *label); void (*mpo_destroy_mbuf_label)(struct label *label); void (*mpo_destroy_mount_label)(struct label *label); @@ -215,14 +215,14 @@ /* * Labeling event operations: System V IPC primitives */ - void (*mpo_create_ipc_msgmsg)(struct ucred *cred, - struct msg *msgptr, struct label *msglabel); + void (*mpo_create_ipc_msgmsg)(struct ucred *cred, struct msg *msgptr, + struct label *msglabel); void (*mpo_create_ipc_msgqueue)(struct ucred *cred, - struct msqid_kernel *msqkptr, struct label *msqlabel); + struct msqid_kernel *msqkptr, struct label *msqlabel); void (*mpo_create_ipc_sema)(struct ucred *cred, - struct semid_kernel *semakptr, struct label *semalabel); + struct semid_kernel *semakptr, struct label *semalabel); void (*mpo_create_ipc_shm)(struct ucred *cred, - struct shmid_kernel *shmsegptr, struct label *shmlabel); + struct shmid_kernel *shmsegptr, struct label *shmlabel); /* * Labeling event operations: network objects. @@ -302,10 +302,10 @@ * labeling reference when recycling any object to a pool. * This hook does not replace the mac_destroy hooks. */ - void (*mpo_cleanup_ipc_msgmsg)(struct label *msglabel); - void (*mpo_cleanup_ipc_msgqueue)(struct label *msqlabel); - void (*mpo_cleanup_ipc_sema)(struct label *semalabel); - void (*mpo_cleanup_ipc_shm)(struct label *shmlabel); + void (*mpo_cleanup_ipc_msgmsg)(struct label *msglabel); + void (*mpo_cleanup_ipc_msgqueue)(struct label *msqlabel); + void (*mpo_cleanup_ipc_sema)(struct label *semalabel); + void (*mpo_cleanup_ipc_shm)(struct label *shmlabel); /* * Access control checks. @@ -322,29 +322,34 @@ int (*mpo_check_ifnet_transmit)(struct ifnet *ifnet, struct label *ifnetlabel, struct mbuf *m, struct label *mbuflabel); - int (*mpo_check_ipc_msgmsq)(struct ucred *cred, struct msg *msgptr, - struct msqid_kernel *msqkptr); - int (*mpo_check_ipc_msgrcv)(struct ucred *cred, struct msg *msgptr); - int (*mpo_check_ipc_msgrmid)(struct ucred *cred, struct msg *msgptr); - int (*mpo_check_ipc_msqget)(struct ucred *cred, struct msqid_kernel *msqkptr); - int (*mpo_check_ipc_msqsnd)(struct ucred *cred, struct msqid_kernel *msqkptr); - int (*mpo_check_ipc_msqrcv)(struct ucred *cred, struct msqid_kernel *msqkptr); - int (*mpo_check_ipc_msqctl)(struct ucred *cred, struct msqid_kernel *msqkptr, - int cmd); - int (*mpo_check_ipc_semctl)(struct ucred *cred, struct semid_kernel *semakptr, - int cmd); - int (*mpo_check_ipc_semget)(struct ucred *cred, - struct semid_kernel *semakptr); - int (*mpo_check_ipc_semop)(struct ucred *cred, struct semid_kernel *semakptr, - size_t accesstype); - int (*mpo_check_ipc_shmat)(struct ucred *cred, - struct shmid_kernel *shmsegptr, int shmflg); - int (*mpo_check_ipc_shmctl)(struct ucred *cred, - struct shmid_kernel *shmsegptr, int cmd); + int (*mpo_check_ipc_msgmsq)(struct ucred *cred, + struct msg *msgptr, struct msqid_kernel *msqkptr); + int (*mpo_check_ipc_msgrcv)(struct ucred *cred, + struct msg *msgptr); + int (*mpo_check_ipc_msgrmid)(struct ucred *cred, + struct msg *msgptr); + int (*mpo_check_ipc_msqget)(struct ucred *cred, + struct msqid_kernel *msqkptr); + int (*mpo_check_ipc_msqsnd)(struct ucred *cred, + struct msqid_kernel *msqkptr); + int (*mpo_check_ipc_msqrcv)(struct ucred *cred, + struct msqid_kernel *msqkptr); + int (*mpo_check_ipc_msqctl)(struct ucred *cred, + struct msqid_kernel *msqkptr, int cmd); + int (*mpo_check_ipc_semctl)(struct ucred *cred, + struct semid_kernel *semakptr, int cmd); + int (*mpo_check_ipc_semget)(struct ucred *cred, + struct semid_kernel *semakptr); + int (*mpo_check_ipc_semop)(struct ucred *cred, + struct semid_kernel *semakptr, size_t accesstype); + int (*mpo_check_ipc_shmat)(struct ucred *cred, + struct shmid_kernel *shmsegptr, int shmflg); + int (*mpo_check_ipc_shmctl)(struct ucred *cred, + struct shmid_kernel *shmsegptr, int cmd); int (*mpo_check_ipc_shmdt)(struct ucred *cred, - struct shmid_kernel *shmsegptr); - int (*mpo_check_ipc_shmget)(struct ucred *cred, - struct shmid_kernel *shmsegptr, int shmflg); + struct shmid_kernel *shmsegptr); + int (*mpo_check_ipc_shmget)(struct ucred *cred, + struct shmid_kernel *shmsegptr, int shmflg); int (*mpo_check_kenv_dump)(struct ucred *cred); int (*mpo_check_kenv_get)(struct ucred *cred, char *name); int (*mpo_check_kenv_set)(struct ucred *cred, char *name, From owner-p4-projects@FreeBSD.ORG Thu Aug 28 19:40:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 54BCB16A4C1; Thu, 28 Aug 2003 19:40:13 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 166C416A4BF for ; Thu, 28 Aug 2003 19:40:13 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6DDB843FE5 for ; Thu, 28 Aug 2003 19:40:12 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T2eC0U072154 for ; Thu, 28 Aug 2003 19:40:12 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T2eB36072151 for perforce@freebsd.org; Thu, 28 Aug 2003 19:40:11 -0700 (PDT) Date: Thu, 28 Aug 2003 19:40:11 -0700 (PDT) Message-Id: <200308290240.h7T2eB36072151@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 37140 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 02:40:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=37140 Change 37140 by rwatson@rwatson_tislabs on 2003/08/28 19:39:16 Whitespace cleanup from ipc merge. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#407 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#407 (text+ko) ==== @@ -211,7 +211,7 @@ static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacpipes, nmacprocs, nmacipcmsgs, nmacipcmsqs, + nmacipqs, nmacpipes, nmacprocs, nmacipcmsgs, nmacipcmsqs, nmacipcsemas, nmacipcshms; #define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); @@ -871,7 +871,7 @@ mac_init_ifnet_label(&ifp->if_label); } -void +void mac_init_ipc_msgmsg(struct msg *msgptr) { @@ -880,7 +880,7 @@ MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); } -void +void mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) { @@ -889,7 +889,7 @@ MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); } -void +void mac_init_ipc_sema(struct semid_kernel *semakptr) { @@ -898,7 +898,7 @@ MAC_DEBUG_COUNTER_INC(&nmacipcsemas); } -void +void mac_init_ipc_shm(struct shmid_kernel *shmsegptr) { @@ -2341,28 +2341,28 @@ MAC_PERFORM(create_bpfdesc, cred, bpf_d, &bpf_d->bd_label); } -void +void mac_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr) { MAC_PERFORM(create_ipc_msgmsg, cred, msgptr, &msgptr->label); } -void +void mac_create_ipc_msgqueue(struct ucred *cred, struct msqid_kernel *msqkptr) { MAC_PERFORM(create_ipc_msgqueue, cred, msqkptr, &msqkptr->label); } -void +void mac_create_ipc_sema(struct ucred *cred, struct semid_kernel *semakptr) { MAC_PERFORM(create_ipc_sema, cred, semakptr, &semakptr->label); } -void +void mac_create_ipc_shm(struct ucred *cred, struct shmid_kernel *shmsegptr) { @@ -2627,21 +2627,21 @@ MAC_PERFORM(cleanup_ipc_msgmsg, &msgptr->label); } -void +void mac_cleanup_ipc_msgqueue(struct msqid_kernel *msqkptr) { MAC_PERFORM(cleanup_ipc_msgqueue, &msqkptr->label); } -void +void mac_cleanup_ipc_sema(struct semid_kernel *semakptr) { MAC_PERFORM(cleanup_ipc_sema, &semakptr->label); } -void +void mac_cleanup_ipc_shm(struct shmid_kernel *shmsegptr) { @@ -2705,7 +2705,7 @@ } int -mac_check_ipc_msgmsq(struct ucred *cred, struct msg *msgptr, +mac_check_ipc_msgmsq(struct ucred *cred, struct msg *msgptr, struct msqid_kernel *msqkptr) { int error; @@ -2848,7 +2848,7 @@ return(error); } -int +int mac_check_ipc_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, int shmflg) { @@ -2878,7 +2878,7 @@ return(error); } -int +int mac_check_ipc_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr) { int error; @@ -2892,7 +2892,7 @@ return(error); } -int +int mac_check_ipc_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, int shmflg) { From owner-p4-projects@FreeBSD.ORG Thu Aug 28 19:47:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 41AA416A4C1; Thu, 28 Aug 2003 19:47:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0548216A4BF for ; Thu, 28 Aug 2003 19:47:23 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 72CDB43FA3 for ; Thu, 28 Aug 2003 19:47:22 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T2lM0U072487 for ; Thu, 28 Aug 2003 19:47:22 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T2lLYY072484 for perforce@freebsd.org; Thu, 28 Aug 2003 19:47:21 -0700 (PDT) Date: Thu, 28 Aug 2003 19:47:21 -0700 (PDT) Message-Id: <200308290247.h7T2lLYY072484@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 37142 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 02:47:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=37142 Change 37142 by rwatson@rwatson_tislabs on 2003/08/28 19:46:30 Update automatically generated system call files from syscalls.master. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/init_sysent.c#54 edit .. //depot/projects/trustedbsd/mac/sys/kern/syscalls.c#54 edit .. //depot/projects/trustedbsd/mac/sys/sys/syscall.h#54 edit .. //depot/projects/trustedbsd/mac/sys/sys/syscall.mk#53 edit .. //depot/projects/trustedbsd/mac/sys/sys/sysproto.h#55 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/init_sysent.c#54 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/init_sysent.c,v 1.155 2003/07/17 22:45:33 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp */ #include "opt_compat.h" ==== //depot/projects/trustedbsd/mac/sys/kern/syscalls.c#54 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/syscalls.c,v 1.141 2003/07/17 22:45:33 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp */ const char *syscallnames[] = { ==== //depot/projects/trustedbsd/mac/sys/sys/syscall.h#54 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/syscall.h,v 1.139 2003/07/17 22:45:33 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp */ #define SYS_syscall 0 ==== //depot/projects/trustedbsd/mac/sys/sys/syscall.mk#53 (text+ko) ==== @@ -1,7 +1,7 @@ # FreeBSD system call names. # DO NOT EDIT-- this file is automatically generated. -# $FreeBSD: src/sys/sys/syscall.mk,v 1.94 2003/07/17 22:45:33 davidxu Exp $ -# created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp +# $FreeBSD$ +# created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp MIASM = \ syscall.o \ exit.o \ ==== //depot/projects/trustedbsd/mac/sys/sys/sysproto.h#55 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/sysproto.h,v 1.135 2003/07/17 22:45:33 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp */ #ifndef _SYS_SYSPROTO_H_ @@ -980,7 +980,6 @@ char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; - char extended_l_[PADL_(void *)]; void * extended; char extended_r_[PADR_(void *)]; }; struct extattr_set_file_args { char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; From owner-p4-projects@FreeBSD.ORG Thu Aug 28 20:49:40 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 45A4C16A4C1; Thu, 28 Aug 2003 20:49:40 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 05ADC16A4BF for ; Thu, 28 Aug 2003 20:49:40 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4B34943FD7 for ; Thu, 28 Aug 2003 20:49:39 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T3nd0U081309 for ; Thu, 28 Aug 2003 20:49:39 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T3nc8W081306 for perforce@freebsd.org; Thu, 28 Aug 2003 20:49:38 -0700 (PDT) Date: Thu, 28 Aug 2003 20:49:38 -0700 (PDT) Message-Id: <200308290349.h7T3nc8W081306@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37145 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 03:49:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=37145 Change 37145 by marcel@marcel_nfs on 2003/08/28 20:48:47 Add a subtype of the Zilog Z8530 dual channel SCC. Affected files ... .. //depot/projects/uart/dev/puc/pucvar.h#5 edit Differences ... ==== //depot/projects/uart/dev/puc/pucvar.h#5 (text+ko) ==== @@ -98,6 +98,7 @@ #define PUC_PORT_SUBTYPE_MASK (~0xff) #define PUC_PORT_UART_NS8250 (0<<8) #define PUC_PORT_UART_SAB82532 (1<<8) +#define PUC_PORT_UART_Z8530 (2<<8) /* Interrupt Latch Register (ILR) types */ #define PUC_ILR_TYPE_NONE 0 From owner-p4-projects@FreeBSD.ORG Thu Aug 28 20:50:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ABB5816A4C1; Thu, 28 Aug 2003 20:50:42 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4BC8216A4BF for ; Thu, 28 Aug 2003 20:50:42 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C0EF943FDF for ; Thu, 28 Aug 2003 20:50:41 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T3of0U081505 for ; Thu, 28 Aug 2003 20:50:41 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T3oeF9081502 for perforce@freebsd.org; Thu, 28 Aug 2003 20:50:40 -0700 (PDT) Date: Thu, 28 Aug 2003 20:50:40 -0700 (PDT) Message-Id: <200308290350.h7T3oeF9081502@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37146 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 03:50:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=37146 Change 37146 by marcel@marcel_nfs on 2003/08/28 20:50:12 Handle the Z8530 subtype. We only need 2 registers per channel. Affected files ... .. //depot/projects/uart/dev/puc/puc.c#7 edit Differences ... ==== //depot/projects/uart/dev/puc/puc.c#7 (text+ko) ==== @@ -281,6 +281,9 @@ case PUC_PORT_UART_SAB82532: ressz = 64; break; + case PUC_PORT_UART_Z8530: + ressz = 2; + break; default: ressz = 8; break; From owner-p4-projects@FreeBSD.ORG Thu Aug 28 20:52:46 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1559316A4C1; Thu, 28 Aug 2003 20:52:46 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B113B16A4BF for ; Thu, 28 Aug 2003 20:52:45 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 36C9843FEA for ; Thu, 28 Aug 2003 20:52:45 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T3qi0U081592 for ; Thu, 28 Aug 2003 20:52:44 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T3qilV081589 for perforce@freebsd.org; Thu, 28 Aug 2003 20:52:44 -0700 (PDT) Date: Thu, 28 Aug 2003 20:52:44 -0700 (PDT) Message-Id: <200308290352.h7T3qilV081589@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37147 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 03:52:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=37147 Change 37147 by marcel@marcel_nfs on 2003/08/28 20:52:21 Add a SBus front-end and recognize the Zilog Z8530. I have this growing feeling that we're misusing puc(4)... Affected files ... .. //depot/projects/uart/conf/files#18 edit .. //depot/projects/uart/dev/puc/puc_sbus.c#1 add Differences ... ==== //depot/projects/uart/conf/files#18 (text+ko) ==== @@ -591,6 +591,7 @@ dev/puc/puc_ebus.c optional puc ebus dev/puc/puc_pci.c optional puc pci dev/puc/puc_pccard.c optional puc pccard +dev/puc/puc_sbus.c optional puc sbus dev/puc/pucdata.c optional puc pci dev/raidframe/rf_acctrace.c optional raidframe dev/raidframe/rf_alloclist.c optional raidframe From owner-p4-projects@FreeBSD.ORG Thu Aug 28 20:54:50 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B933A16A4C1; Thu, 28 Aug 2003 20:54:49 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 64BC616A4BF for ; Thu, 28 Aug 2003 20:54:49 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73E3243FCB for ; Thu, 28 Aug 2003 20:54:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T3sm0U081664 for ; Thu, 28 Aug 2003 20:54:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T3slrr081661 for perforce@freebsd.org; Thu, 28 Aug 2003 20:54:47 -0700 (PDT) Date: Thu, 28 Aug 2003 20:54:47 -0700 (PDT) Message-Id: <200308290354.h7T3slrr081661@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37148 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 03:54:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=37148 Change 37148 by marcel@marcel_nfs on 2003/08/28 20:54:18 Teach OF_decode_addr() about the sbus. This hasn't been tested properly. The ebus decoding still works though :-) Affected files ... .. //depot/projects/uart/sparc64/sparc64/ofw_machdep.c#4 edit Differences ... ==== //depot/projects/uart/sparc64/sparc64/ofw_machdep.c#4 (text+ko) ==== @@ -44,6 +44,7 @@ #include #include +#include int OF_decode_addr(phandle_t node, int *space, bus_addr_t *addr); @@ -63,55 +64,99 @@ OF_decode_addr(phandle_t node, int *space, bus_addr_t *addr) { char name[32]; - struct isa_ranges ir[4]; - struct isa_regs reg; - struct upa_ranges ur[4]; - phandle_t bus, parent, pbus; + union { + struct isa_ranges isa[4]; + struct sbus_ranges sbus[8]; + struct upa_ranges upa[4]; + } range; + union { + struct isa_regs isa; + struct sbus_regs sbus; + } reg; + phandle_t bus, pbus; u_long child, dummy, phys; int cs, i, rsz, type; - parent = OF_parent(node); - if (parent == NULL) + bus = OF_parent(node); + if (bus == NULL) return (ENXIO); - rsz = OF_getprop(parent, "ranges", ir, sizeof(ir)); - if (rsz == -1 || OF_getprop(node, "reg", ®, sizeof(reg)) == -1) - return (ENXIO); - phys = ISA_REG_PHYS(®); - dummy = phys + 1; - type = ofw_isa_map_iorange(ir, rsz / sizeof(*ir), &phys, &dummy); - if (type == SYS_RES_MEMORY) { - cs = PCI_CS_MEM32; - *space = PCI_MEMORY_BUS_SPACE; - } else { - cs = PCI_CS_IO; - *space = PCI_IO_BUS_SPACE; - } - bus = OF_parent(parent); if (OF_getprop(bus, "name", name, sizeof(name)) == -1) return (ENXIO); name[sizeof(name) - 1] = '\0'; - if (strcmp(name, "pci") != 0) - return (ENXIO); + if (strcmp(name, "ebus") == 0) { + if (OF_getprop(node, "reg", ®.isa, sizeof(reg.isa)) == -1) + return (ENXIO); + rsz = OF_getprop(bus, "ranges", range.isa, sizeof(range.isa)); + if (rsz == -1) + return (ENXIO); + phys = ISA_REG_PHYS(®.isa); + dummy = phys + 1; + type = ofw_isa_map_iorange(range.isa, rsz / sizeof(*range.isa), + &phys, &dummy); + if (type == SYS_RES_MEMORY) { + cs = PCI_CS_MEM32; + *space = PCI_MEMORY_BUS_SPACE; + } else { + cs = PCI_CS_IO; + *space = PCI_IO_BUS_SPACE; + } - /* Find the topmost PCI node (the host bridge) */ - while ((pbus = OF_parent(bus)) != 0) { - if (OF_getprop(pbus, "name", name, sizeof(name)) != -1) { + /* Find the topmost PCI node (the host bridge) */ + while (1) { + pbus = OF_parent(bus); + if (pbus == NULL) + return (ENXIO); + if (OF_getprop(pbus, "name", name, sizeof(name)) == -1) + return (ENXIO); name[sizeof(name) - 1] = '\0'; if (strcmp(name, "pci") != 0) break; + bus = pbus; + } + + /* There wasn't a PCI bridge. */ + if (bus == OF_parent(node)) + return (ENXIO); + + /* Make sure we reached the UPA/PCI node. */ + if (OF_getprop(pbus, "device_type", name, sizeof(name)) == -1) + return (ENXIO); + name[sizeof(name) - 1] = '\0'; + if (strcmp(name, "upa") != 0) + return (ENXIO); + + rsz = OF_getprop(bus, "ranges", range.upa, sizeof(range.upa)); + if (rsz == -1) + return (ENXIO); + for (i = 0; i < (rsz / sizeof(range.upa[0])); i++) { + child = UPA_RANGE_CHILD(&range.upa[i]); + if (UPA_RANGE_CS(&range.upa[i]) == cs && + phys >= child && + phys - child < UPA_RANGE_SIZE(&range.upa[i])) { + *addr = UPA_RANGE_PHYS(&range.upa[i]) + phys; + return (0); + } } - bus = pbus; - } - if (pbus == 0) - return (ENXIO); - if ((rsz = OF_getprop(bus, "ranges", ur, sizeof(ur))) == -1) - return (ENXIO); - for (i = 0; i < (rsz / sizeof(ur[0])); i++) { - child = UPA_RANGE_CHILD(&ur[i]); - if (UPA_RANGE_CS(&ur[i]) == cs && phys >= child && - phys - child < UPA_RANGE_SIZE(&ur[i])) { - *addr = UPA_RANGE_PHYS(&ur[i]) + phys; - return (0); + } else if (strcmp(name, "sbus") == 0) { + if (OF_getprop(node, "reg", ®.sbus, sizeof(reg.sbus)) == -1) + return (ENXIO); + rsz = OF_getprop(bus, "ranges", range.sbus, + sizeof(range.sbus)); + if (rsz == -1) + return (ENXIO); + for (i = 0; i < (rsz / sizeof(range.sbus[0])); i++) { + if (reg.sbus.sbr_slot != range.sbus[i].cspace) + continue; + if (reg.sbus.sbr_offset < range.sbus[i].coffset || + reg.sbus.sbr_offset >= range.sbus[i].coffset + + range.sbus[i].size) + continue; + /* Found it... */ + phys = range.sbus[i].poffset | + ((bus_addr_t)range.sbus[i].pspace << 32); + phys += reg.sbus.sbr_offset - range.sbus[i].coffset; + *addr = phys; + *space = SBUS_BUS_SPACE; } } return (ENXIO); From owner-p4-projects@FreeBSD.ORG Thu Aug 28 20:56:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 57F2B16A4C1; Thu, 28 Aug 2003 20:56:52 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 150B816A4BF for ; Thu, 28 Aug 2003 20:56:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B9EA43FDF for ; Thu, 28 Aug 2003 20:56:51 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T3up0U081844 for ; Thu, 28 Aug 2003 20:56:51 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T3uptY081841 for perforce@freebsd.org; Thu, 28 Aug 2003 20:56:51 -0700 (PDT) Date: Thu, 28 Aug 2003 20:56:51 -0700 (PDT) Message-Id: <200308290356.h7T3uptY081841@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37149 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 03:56:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=37149 Change 37149 by marcel@marcel_nfs on 2003/08/28 20:56:17 Add extern declarations for uart_z8530_class and uart_z8530_ops. Affected files ... .. //depot/projects/uart/dev/uart/uart_bus.h#20 edit .. //depot/projects/uart/dev/uart/uart_cpu.h#7 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_bus.h#20 (text+ko) ==== @@ -90,6 +90,7 @@ extern struct uart_class uart_ns8250_class; extern struct uart_class uart_sab82532_class; +extern struct uart_class uart_z8530_class; struct uart_softc { KOBJ_FIELDS; ==== //depot/projects/uart/dev/uart/uart_cpu.h#7 (text+ko) ==== @@ -43,6 +43,7 @@ extern struct uart_ops uart_ns8250_ops; extern struct uart_ops uart_sab82532_ops; +extern struct uart_ops uart_z8530_ops; /* * Console and debug port device info. From owner-p4-projects@FreeBSD.ORG Thu Aug 28 20:58:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8A57216A4C1; Thu, 28 Aug 2003 20:58:55 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 48E8716A4BF for ; Thu, 28 Aug 2003 20:58:55 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BC33F43FEA for ; Thu, 28 Aug 2003 20:58:54 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T3ws0U081952 for ; Thu, 28 Aug 2003 20:58:54 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T3wsYc081949 for perforce@freebsd.org; Thu, 28 Aug 2003 20:58:54 -0700 (PDT) Date: Thu, 28 Aug 2003 20:58:54 -0700 (PDT) Message-Id: <200308290358.h7T3wsYc081949@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37150 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 03:58:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=37150 Change 37150 by marcel@marcel_nfs on 2003/08/28 20:57:53 Recognize the Z8530 subtype. Affected files ... .. //depot/projects/uart/dev/uart/uart_bus_puc.c#4 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_bus_puc.c#4 (text+ko) ==== @@ -77,6 +77,9 @@ case PUC_PORT_UART_SAB82532: sc->sc_class = &uart_sab82532_class; break; + case PUC_PORT_UART_Z8530: + sc->sc_class = &uart_z8530_class; + break; default: return (ENXIO); } From owner-p4-projects@FreeBSD.ORG Thu Aug 28 20:59:58 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C65AE16A4C2; Thu, 28 Aug 2003 20:59:57 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 87D8E16A4BF for ; Thu, 28 Aug 2003 20:59:57 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AFEB843FD7 for ; Thu, 28 Aug 2003 20:59:56 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T3xu0U081999 for ; Thu, 28 Aug 2003 20:59:56 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T3xupg081996 for perforce@freebsd.org; Thu, 28 Aug 2003 20:59:56 -0700 (PDT) Date: Thu, 28 Aug 2003 20:59:56 -0700 (PDT) Message-Id: <200308290359.h7T3xupg081996@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37151 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 03:59:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=37151 Change 37151 by marcel@marcel_nfs on 2003/08/28 20:58:58 Recognize the zs device (= Z8530). Affected files ... .. //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#6 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#6 (text+ko) ==== @@ -98,6 +98,8 @@ di->ops = uart_sab82532_ops; else if (!strcmp(buffer, "su") || !strcmp(buffer, "su_pnp")) di->ops = uart_ns8250_ops; + else if (!strcmp(buffer, "zs")) + di->ops = uart_z8530_ops; else return (ENXIO); From owner-p4-projects@FreeBSD.ORG Thu Aug 28 22:16:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CB28516A4C1; Thu, 28 Aug 2003 22:16:31 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8EC1216A4BF for ; Thu, 28 Aug 2003 22:16:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 19D1E43FBD for ; Thu, 28 Aug 2003 22:16:31 -0700 (PDT) (envelope-from njl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T5GU0U087031 for ; Thu, 28 Aug 2003 22:16:30 -0700 (PDT) (envelope-from njl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T5GUps087028 for perforce@freebsd.org; Thu, 28 Aug 2003 22:16:30 -0700 (PDT) Date: Thu, 28 Aug 2003 22:16:30 -0700 (PDT) Message-Id: <200308290516.h7T5GUps087028@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to njl@freebsd.org using -f From: Nate Lawson To: Perforce Change Reviews Subject: PERFORCE change 37154 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 05:16:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=37154 Change 37154 by njl@njl_laptop on 2003/08/28 22:16:21 Add my 6.0 wishlist for ACPI and newbus Affected files ... .. //depot/doc/6.0-TODO#4 edit Differences ... ==== //depot/doc/6.0-TODO#4 (text+ko) ==== @@ -74,5 +74,37 @@ pass. Modules loaded after boot inherently always run at the last pass. +# njl Wishlist +- Device suspend/resume tree sweep. Many drivers do not properly support + device_suspend and device_resume. On my laptop alone, uhci(4) and + snd_ich (pcm(4)) both fail to work after a suspend. We would maintain + a list of drivers and their suspend/resume level of support, similar to + the SMP status page. The goal would be to get maintainers to fix and + mark their devices as working. + +- Fix and/or implement VGA register save/restore so that syscons is not + garbled after a resume. + +- Add a device_suspend_prep() entry that is called before device_suspend(). + ACPI and APM could traverse the bus tree and allow each device to decide + whether or not to veto the suspend request. + +- Add a device_eject() method to allow devices to prepare to eject (i.e. + PC card, Hotplug PCI). Could this be provided by device_shutdown()? + Call ACPI's _EJx methods for the given device as well. + +- Hook newbus so that ACPI Notifies are delivered to the destination + device if it wishes to be aware of them. + +- Add support for ACPI 2.0 to our implementation. This includes implementing + processor power down states (C1, C2, ...), evaluating other namespaces, + etc. Linux has partial 2.0 support. + +- Add support for vendor-specific ACPI devices (like ASUS and Toshiba + laptop buttons). This can be studied in Linux. + +- Much ACPI bugfixing. I'm uncomfortable with the current level of locking, + for instance. + < need to insert phk's wishlist here? > From owner-p4-projects@FreeBSD.ORG Fri Aug 29 00:59:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B7C0616A4C1; Fri, 29 Aug 2003 00:59:53 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7590016A4BF for ; Fri, 29 Aug 2003 00:59:53 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EB39F43FF3 for ; Fri, 29 Aug 2003 00:59:52 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7T7xq0U099998 for ; Fri, 29 Aug 2003 00:59:52 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7T7xqf9099995 for perforce@freebsd.org; Fri, 29 Aug 2003 00:59:52 -0700 (PDT) Date: Fri, 29 Aug 2003 00:59:52 -0700 (PDT) Message-Id: <200308290759.h7T7xqf9099995@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37160 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 07:59:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=37160 Change 37160 by marcel@marcel_nfs on 2003/08/29 00:59:42 Doh! actually return (0) if we found the address range in which the registers lie. Affected files ... .. //depot/projects/uart/sparc64/sparc64/ofw_machdep.c#5 edit Differences ... ==== //depot/projects/uart/sparc64/sparc64/ofw_machdep.c#5 (text+ko) ==== @@ -157,6 +157,7 @@ phys += reg.sbus.sbr_offset - range.sbus[i].coffset; *addr = phys; *space = SBUS_BUS_SPACE; + return (0); } } return (ENXIO); From owner-p4-projects@FreeBSD.ORG Fri Aug 29 06:10:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 08A1316A4C1; Fri, 29 Aug 2003 06:10:31 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C11C916A4BF for ; Fri, 29 Aug 2003 06:10:30 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3824743FE1 for ; Fri, 29 Aug 2003 06:10:30 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7TDAT0U022573 for ; Fri, 29 Aug 2003 06:10:29 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7TDATur022570 for perforce@freebsd.org; Fri, 29 Aug 2003 06:10:29 -0700 (PDT) Date: Fri, 29 Aug 2003 06:10:29 -0700 (PDT) Message-Id: <200308291310.h7TDATur022570@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37168 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 13:10:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=37168 Change 37168 by cvance@cvance_release on 2003/08/29 06:10:08 A better fix for the comma bug. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#8 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#8 (text+ko) ==== @@ -427,10 +427,9 @@ } else \ ignorenotfound = 0; \ savedlen = sbuf_len(&sb); \ - if (first == 1) { \ + if (first == 1) \ error = sbuf_printf(&sb, "%s/", element_name); \ - first--; \ - } else \ + else \ error = sbuf_printf(&sb, ",%s/", element_name); \ if (error == -1) { \ error = EINVAL; /* XXX: E2BIG? */ \ @@ -444,10 +443,11 @@ if (claimed == 0 && ignorenotfound) { \ /* Revert last label name. */ \ sbuf_setpos(&sb, savedlen); \ - first++; \ } else if (claimed != 1) { \ error = EINVAL; /* XXX: ENOLABEL? */ \ break; \ + } else { \ + first = 0; \ } \ } \ sbuf_finish(&sb); \ From owner-p4-projects@FreeBSD.ORG Fri Aug 29 08:22:21 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 30C4A16A4C2; Fri, 29 Aug 2003 08:22:21 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0C5D316A4BF for ; Fri, 29 Aug 2003 08:22:21 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 64D7F43FB1 for ; Fri, 29 Aug 2003 08:22:20 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7TFMK0U029482 for ; Fri, 29 Aug 2003 08:22:20 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7TFMJM6029479 for perforce@freebsd.org; Fri, 29 Aug 2003 08:22:19 -0700 (PDT) Date: Fri, 29 Aug 2003 08:22:19 -0700 (PDT) Message-Id: <200308291522.h7TFMJM6029479@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 37180 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 15:22:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=37180 Change 37180 by cvance@cvance_korben on 2003/08/29 08:21:42 Fix comma bug -- when we unwind, 'first' was incorrect. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#408 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#408 (text+ko) ==== @@ -459,10 +459,9 @@ } else \ ignorenotfound = 0; \ savedlen = sbuf_len(&sb); \ - if (first) { \ + if (first) \ error = sbuf_printf(&sb, "%s/", element_name); \ - first = 0; \ - } else \ + else \ error = sbuf_printf(&sb, ",%s/", element_name); \ if (error == -1) { \ error = EINVAL; /* XXX: E2BIG? */ \ @@ -479,6 +478,8 @@ } else if (claimed != 1) { \ error = EINVAL; /* XXX: ENOLABEL? */ \ break; \ + } else { \ + first = 0; \ } \ } \ sbuf_finish(&sb); \ From owner-p4-projects@FreeBSD.ORG Fri Aug 29 14:44:19 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3E2D816A4C1; Fri, 29 Aug 2003 14:44:19 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 031DB16A4BF for ; Fri, 29 Aug 2003 14:44:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8BFED43FA3 for ; Fri, 29 Aug 2003 14:44:18 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7TLiI0U060222 for ; Fri, 29 Aug 2003 14:44:18 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7TLiISG060219 for perforce@freebsd.org; Fri, 29 Aug 2003 14:44:18 -0700 (PDT) Date: Fri, 29 Aug 2003 14:44:18 -0700 (PDT) Message-Id: <200308292144.h7TLiISG060219@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37195 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 21:44:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=37195 Change 37195 by marcel@marcel_nfs on 2003/08/29 14:44:17 Even though we have a 4-byte wide memory I/O resource, accessable registers of the z8530 have offsets: Channel B control 0 Channel B data 2 Channel A control 4 Channel A data 6 We're accessing bus space outside our assigned range. For now, give each port 4 bytes of bus space even though it's technically speaking invalid. Something is going on with sbus and I don't know yet what it is... Affected files ... .. //depot/projects/uart/dev/puc/puc_sbus.c#2 edit Differences ... ==== //depot/projects/uart/dev/puc/puc_sbus.c#2 (text+ko) ==== @@ -68,7 +68,7 @@ for (i = 0; i < 2; i++) { dd.ports[i].type = PUC_PORT_TYPE_UART | PUC_PORT_UART_Z8530; dd.ports[i].bar = 0; - dd.ports[i].offset = 0x2 * i; + dd.ports[i].offset = 4 * i; dd.ports[i].serialfreq = 0; dd.ports[i].flags = PUC_FLAGS_MEMORY; } From owner-p4-projects@FreeBSD.ORG Fri Aug 29 14:50:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 580CB16A4C1; Fri, 29 Aug 2003 14:50:27 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1644E16A4BF for ; Fri, 29 Aug 2003 14:50:27 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B14043FCB for ; Fri, 29 Aug 2003 14:50:26 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7TLoQ0U060472 for ; Fri, 29 Aug 2003 14:50:26 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7TLoQ6o060469 for perforce@freebsd.org; Fri, 29 Aug 2003 14:50:26 -0700 (PDT) Date: Fri, 29 Aug 2003 14:50:26 -0700 (PDT) Message-Id: <200308292150.h7TLoQ6o060469@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37196 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 21:50:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=37196 Change 37196 by marcel@marcel_nfs on 2003/08/29 14:49:45 Apply a quick hack. Channel A is at offset 4; channel B at offset 0. Since the console on the test box is on channel A, add 4 to the handle. As I mentioned before, we should ideally be looking at "input-device" and "output-device" under /options instead of looking at "stdin" and "stdout" under /chosen. That way we can consider the arguments given to the device and properly adjust the handle based on the channel referenced by the properties. I'll do that later. Affected files ... .. //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#7 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_cpu_sparc64.c#7 (text+ko) ==== @@ -98,9 +98,10 @@ di->ops = uart_sab82532_ops; else if (!strcmp(buffer, "su") || !strcmp(buffer, "su_pnp")) di->ops = uart_ns8250_ops; - else if (!strcmp(buffer, "zs")) + else if (!strcmp(buffer, "zs")) { di->ops = uart_z8530_ops; - else + di->bas.bsh += 4; + } else return (ENXIO); /* From owner-p4-projects@FreeBSD.ORG Fri Aug 29 14:54:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5FEAD16A4C1; Fri, 29 Aug 2003 14:54:34 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0004316A4BF for ; Fri, 29 Aug 2003 14:54:33 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F21D243FEA for ; Fri, 29 Aug 2003 14:54:32 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7TLsW0U060576 for ; Fri, 29 Aug 2003 14:54:32 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7TLsWU9060573 for perforce@freebsd.org; Fri, 29 Aug 2003 14:54:32 -0700 (PDT) Date: Fri, 29 Aug 2003 14:54:32 -0700 (PDT) Message-Id: <200308292154.h7TLsWU9060573@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37197 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.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, 29 Aug 2003 21:54:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=37197 Change 37197 by marcel@marcel_nfs on 2003/08/29 14:53:54 Add a really bare-bones low-level console support. This is enough to boot with uart(4) as the console device. Note that on the test box the console is on uart1, not uart0. This is because uart0 is the B channel. The A channel has a higher offset and will be uart1. I'm not sure there's anything I need to do about this. It just falls out this way. It may be perceived as aesthetically displeasing though.... While here, cleanup the header. There's no need to prefix every bloody constant with ZS. Affected files ... .. //depot/projects/uart/dev/uart/uart_dev_z8530.c#5 edit .. //depot/projects/uart/dev/uart/uart_dev_z8530.h#2 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_dev_z8530.c#5 (text+ko) ==== @@ -85,20 +85,29 @@ static void z8530_putc(struct uart_bas *bas, int c) { + + while (!(uart_getreg(bas, REG_CTRL) & RR0_TX_READY)) + ; + uart_setreg(bas, REG_DATA, c); + uart_barrier(bas); } static int z8530_poll(struct uart_bas *bas) { - return (-1); + if (!(uart_getreg(bas, REG_CTRL) & RR0_RX_READY)) + return (-1); + return (uart_getreg(bas, REG_DATA)); } static int z8530_getc(struct uart_bas *bas) { - return (-1); + while (!(uart_getreg(bas, REG_CTRL) & RR0_RX_READY)) + ; + return (uart_getreg(bas, REG_DATA)); } /* @@ -137,7 +146,7 @@ "z8530 class", z8530_methods, sizeof(struct z8530_softc), - .uc_range = 64, + .uc_range = 2, .uc_rclk = DEFAULT_RCLK }; ==== //depot/projects/uart/dev/uart/uart_dev_z8530.h#2 (text+ko) ==== @@ -89,30 +89,37 @@ * are not defined here. */ -#define ZS_NCHAN 2 +/* + * Channel B control: 0 + * Channel B data: 2 + * Channel A control: 4 + * Channel A data: 6 + */ +#define REG_CTRL 0 +#define REG_DATA 2 -#define ZSRR_IVEC 2 /* interrupt vector (channel 0) */ -#define ZSRR_IPEND 3 /* interrupt pending (ch. 0 only) */ -#define ZSRR_TXSYNC 6 /* sync transmit char (monosync mode) */ -#define ZSRR_RXSYNC 7 /* sync receive char (monosync mode) */ -#define ZSRR_SYNCLO 6 /* sync low byte (bisync mode) */ -#define ZSRR_SYNCHI 7 /* sync high byte (bisync mode) */ -#define ZSRR_SDLC_ADDR 6 /* SDLC address (SDLC mode) */ -#define ZSRR_SDLC_FLAG 7 /* SDLC flag 0x7E (SDLC mode) */ -#define ZSRR_BAUDLO 12 /* baud rate generator (low half) */ -#define ZSRR_BAUDHI 13 /* baud rate generator (high half) */ -#define ZSRR_ENHANCED 14 /* read address of WR7' - yes, it's not 7!*/ +#define RR_IVEC 2 /* interrupt vector (channel 0) */ +#define RR_IPEND 3 /* interrupt pending (ch. 0 only) */ +#define RR_TXSYNC 6 /* sync transmit char (monosync mode) */ +#define RR_RXSYNC 7 /* sync receive char (monosync mode) */ +#define RR_SYNCLO 6 /* sync low byte (bisync mode) */ +#define RR_SYNCHI 7 /* sync high byte (bisync mode) */ +#define RR_SDLC_ADDR 6 /* SDLC address (SDLC mode) */ +#define RR_SDLC_FLAG 7 /* SDLC flag 0x7E (SDLC mode) */ +#define RR_BAUDLO 12 /* baud rate generator (low half) */ +#define RR_BAUDHI 13 /* baud rate generator (high half) */ +#define RR_ENHANCED 14 /* read address of WR7' - yes, it's not 7!*/ -#define ZSWR_IVEC 2 /* interrupt vector (shared) */ -#define ZSWR_TXSYNC 6 /* sync transmit char (monosync mode) */ -#define ZSWR_RXSYNC 7 /* sync receive char (monosync mode) */ -#define ZSWR_SYNCLO 6 /* sync low byte (bisync mode) */ -#define ZSWR_SYNCHI 7 /* sync high byte (bisync mode) */ -#define ZSWR_SDLC_ADDR 6 /* SDLC address (SDLC mode) */ -#define ZSWR_SDLC_FLAG 7 /* SDLC flag 0x7E (SDLC mode) */ -#define ZSWR_BAUDLO 12 /* baud rate generator (low half) */ -#define ZSWR_BAUDHI 13 /* baud rate generator (high half) */ -#define ZSWR_ENHANCED 7 /* write address of WR7' */ +#define WR_IVEC 2 /* interrupt vector (shared) */ +#define WR_TXSYNC 6 /* sync transmit char (monosync mode) */ +#define WR_RXSYNC 7 /* sync receive char (monosync mode) */ +#define WR_SYNCLO 6 /* sync low byte (bisync mode) */ +#define WR_SYNCHI 7 /* sync high byte (bisync mode) */ +#define WR_SDLC_ADDR 6 /* SDLC address (SDLC mode) */ +#define WR_SDLC_FLAG 7 /* SDLC flag 0x7E (SDLC mode) */ +#define WR_BAUDLO 12 /* baud rate generator (low half) */ +#define WR_BAUDHI 13 /* baud rate generator (high half) */ +#define WR_ENHANCED 7 /* write address of WR7' */ /* * Registers 0 through 7 may be written with any one of the 8 command @@ -141,39 +148,39 @@ * These are just the command modifiers or'ed with register number 0 * (which of course equals the command modifier). */ -#define ZSWR0_RESET_EOM ZSM_RESET_TXUEOM -#define ZSWR0_RESET_TXCRC ZSM_RESET_TXCRC -#define ZSWR0_RESET_RXCRC ZSM_RESET_RXCRC -#define ZSWR0_CLR_INTR ZSM_RESET_IUS -#define ZSWR0_RESET_ERRORS ZSM_RESET_ERR -#define ZSWR0_EI_NEXTRXC ZSM_EI_NEXTRXC -#define ZSWR0_SEND_ABORT ZSM_SEND_ABORT -#define ZSWR0_RESET_STATUS ZSM_RESET_STINT -#define ZSWR0_RESET_TXINT ZSM_RESET_TXINT +#define WR0_RESET_EOM ZSM_RESET_TXUEOM +#define WR0_RESET_TXCRC ZSM_RESET_TXCRC +#define WR0_RESET_RXCRC ZSM_RESET_RXCRC +#define WR0_CLR_INTR ZSM_RESET_IUS +#define WR0_RESET_ERRORS ZSM_RESET_ERR +#define WR0_EI_NEXTRXC ZSM_EI_NEXTRXC +#define WR0_SEND_ABORT ZSM_SEND_ABORT +#define WR0_RESET_STATUS ZSM_RESET_STINT +#define WR0_RESET_TXINT ZSM_RESET_TXINT /* * Bits in Write Register 1 (`Transmit/Receive Interrupt and Data * Transfer Mode Definition'). Note that bits 3 and 4 are taken together * as a single unit, and bits 5 and 6 are useful only if bit 7 is set. */ -#define ZSWR1_REQ_WAIT 0x80 /* WAIT*-REQ* pin gives WAIT* */ -#define ZSWR1_REQ_REQ 0xc0 /* WAIT*-REQ* pin gives REQ* */ -#define ZSWR1_REQ_TX 0x00 /* WAIT*-REQ* pin follows xmit buf */ -#define ZSWR1_REQ_RX 0x20 /* WAIT*-REQ* pin follows recv buf */ +#define WR1_REQ_WAIT 0x80 /* WAIT*-REQ* pin gives WAIT* */ +#define WR1_REQ_REQ 0xc0 /* WAIT*-REQ* pin gives REQ* */ +#define WR1_REQ_TX 0x00 /* WAIT*-REQ* pin follows xmit buf */ +#define WR1_REQ_RX 0x20 /* WAIT*-REQ* pin follows recv buf */ -#define ZSWR1_RIE_NONE 0x00 /* disable rxint entirely */ -#define ZSWR1_RIE_FIRST 0x08 /* rxint on first char & on S.C. */ -#define ZSWR1_RIE 0x10 /* rxint per char & on S.C. */ -#define ZSWR1_RIE_SPECIAL_ONLY 0x18 /* rxint on S.C. only */ +#define WR1_RIE_NONE 0x00 /* disable rxint entirely */ +#define WR1_RIE_FIRST 0x08 /* rxint on first char & on S.C. */ +#define WR1_RIE 0x10 /* rxint per char & on S.C. */ +#define WR1_RIE_SPECIAL_ONLY 0x18 /* rxint on S.C. only */ -#define ZSWR1_PE_SC 0x04 /* parity error is special condition */ -#define ZSWR1_TIE 0x02 /* transmit interrupt enable */ -#define ZSWR1_SIE 0x01 /* external/status interrupt enable */ +#define WR1_PE_SC 0x04 /* parity error is special condition */ +#define WR1_TIE 0x02 /* transmit interrupt enable */ +#define WR1_SIE 0x01 /* external/status interrupt enable */ -#define ZSWR1_IMASK 0x1F /* mask of all itr. enable bits. */ +#define WR1_IMASK 0x1F /* mask of all itr. enable bits. */ /* HSIS compat */ -#define ZSWR1_REQ_ENABLE (ZSWR1_REQ_WAIT | ZSWR1_REQ_TX) +#define WR1_REQ_ENABLE (WR1_REQ_WAIT | WR1_REQ_TX) /* * Bits in Write Register 3 (`Receive Parameters and Control'). @@ -184,144 +191,144 @@ * and DCD enables the receiver. The latter is neither interesting * nor useful, and gets in our way, making it almost unusable. */ -#define ZSWR3_RX_5 0x00 /* receive 5 bits per char */ -#define ZSWR3_RX_7 0x40 /* receive 7 bits per char */ -#define ZSWR3_RX_6 0x80 /* receive 6 bits per char */ -#define ZSWR3_RX_8 0xc0 /* receive 8 bits per char */ -#define ZSWR3_RXSIZE 0xc0 /* receive char size mask */ +#define WR3_RX_5 0x00 /* receive 5 bits per char */ +#define WR3_RX_7 0x40 /* receive 7 bits per char */ +#define WR3_RX_6 0x80 /* receive 6 bits per char */ +#define WR3_RX_8 0xc0 /* receive 8 bits per char */ +#define WR3_RXSIZE 0xc0 /* receive char size mask */ -#define ZSWR3_HFC 0x20 /* hardware flow control */ -#define ZSWR3_HUNT 0x10 /* enter hunt mode */ -#define ZSWR3_RXCRC_ENABLE 0x08 /* enable recv crc calculation */ -#define ZSWR3_ADDR_SEARCH_MODE 0x04 /* address search mode (SDLC only) */ -#define ZSWR3_SDLC_SHORT_ADDR 0x02 /* short address mode (SDLC only) */ -#define ZSWR3_SYNC_LOAD_INH 0x02 /* sync character load inhibit */ -#define ZSWR3_RX_ENABLE 0x01 /* receiver enable */ +#define WR3_HFC 0x20 /* hardware flow control */ +#define WR3_HUNT 0x10 /* enter hunt mode */ +#define WR3_RXCRC_ENABLE 0x08 /* enable recv crc calculation */ +#define WR3_ADDR_SEARCH_MODE 0x04 /* address search mode (SDLC only) */ +#define WR3_SDLC_SHORT_ADDR 0x02 /* short address mode (SDLC only) */ +#define WR3_SYNC_LOAD_INH 0x02 /* sync character load inhibit */ +#define WR3_RX_ENABLE 0x01 /* receiver enable */ /* * Bits in Write Register 4 (`Transmit/Receive Miscellaneous Parameters * and Modes'). Bits 7&6, 5&4, and 3&2 are taken as units. */ -#define ZSWR4_CLK_X1 0x00 /* clock divisor = 1 */ -#define ZSWR4_CLK_X16 0x40 /* clock divisor = 16 */ -#define ZSWR4_CLK_X32 0x80 /* clock divisor = 32 */ -#define ZSWR4_CLK_X64 0xc0 /* clock divisor = 64 */ -#define ZSWR4_CLK_MASK 0xc0 /* clock divisor mask */ +#define WR4_CLK_X1 0x00 /* clock divisor = 1 */ +#define WR4_CLK_X16 0x40 /* clock divisor = 16 */ +#define WR4_CLK_X32 0x80 /* clock divisor = 32 */ +#define WR4_CLK_X64 0xc0 /* clock divisor = 64 */ +#define WR4_CLK_MASK 0xc0 /* clock divisor mask */ -#define ZSWR4_MONOSYNC 0x00 /* 8 bit sync char (sync only) */ -#define ZSWR4_BISYNC 0x10 /* 16 bit sync char (sync only) */ -#define ZSWR4_SDLC 0x20 /* SDLC mode */ -#define ZSWR4_EXTSYNC 0x30 /* external sync mode */ -#define ZSWR4_SYNC_MASK 0x30 /* sync mode bit mask */ +#define WR4_MONOSYNC 0x00 /* 8 bit sync char (sync only) */ +#define WR4_BISYNC 0x10 /* 16 bit sync char (sync only) */ +#define WR4_SDLC 0x20 /* SDLC mode */ +#define WR4_EXTSYNC 0x30 /* external sync mode */ +#define WR4_SYNC_MASK 0x30 /* sync mode bit mask */ -#define ZSWR4_SYNCMODE 0x00 /* no stop bit (sync mode only) */ -#define ZSWR4_ONESB 0x04 /* 1 stop bit */ -#define ZSWR4_1P5SB 0x08 /* 1.5 stop bits (clk cannot be 1x) */ -#define ZSWR4_TWOSB 0x0c /* 2 stop bits */ -#define ZSWR4_SBMASK 0x0c /* mask of all stop bits */ +#define WR4_SYNCMODE 0x00 /* no stop bit (sync mode only) */ +#define WR4_ONESB 0x04 /* 1 stop bit */ +#define WR4_1P5SB 0x08 /* 1.5 stop bits (clk cannot be 1x) */ +#define WR4_TWOSB 0x0c /* 2 stop bits */ +#define WR4_SBMASK 0x0c /* mask of all stop bits */ -#define ZSWR4_EVENP 0x02 /* check for even parity */ -#define ZSWR4_PARENB 0x01 /* enable parity checking */ -#define ZSWR4_PARMASK 0x03 /* mask of all parity bits */ +#define WR4_EVENP 0x02 /* check for even parity */ +#define WR4_PARENB 0x01 /* enable parity checking */ +#define WR4_PARMASK 0x03 /* mask of all parity bits */ /* * Bits in Write Register 5 (`Transmit Parameter and Controls'). * Bits 6 and 5 are taken as a unit; the ordering is, as with RX * bits per char, not sensible. */ -#define ZSWR5_DTR 0x80 /* assert (set to -12V) DTR */ +#define WR5_DTR 0x80 /* assert (set to -12V) DTR */ -#define ZSWR5_TX_5 0x00 /* transmit 5 or fewer bits */ -#define ZSWR5_TX_7 0x20 /* transmit 7 bits */ -#define ZSWR5_TX_6 0x40 /* transmit 6 bits */ -#define ZSWR5_TX_8 0x60 /* transmit 8 bits */ -#define ZSWR5_TXSIZE 0x60 /* transmit char size mask */ +#define WR5_TX_5 0x00 /* transmit 5 or fewer bits */ +#define WR5_TX_7 0x20 /* transmit 7 bits */ +#define WR5_TX_6 0x40 /* transmit 6 bits */ +#define WR5_TX_8 0x60 /* transmit 8 bits */ +#define WR5_TXSIZE 0x60 /* transmit char size mask */ -#define ZSWR5_BREAK 0x10 /* send break (continuous 0s) */ -#define ZSWR5_TX_ENABLE 0x08 /* enable transmitter */ -#define ZSWR5_CRC16 0x04 /* use CRC16 (off => use SDLC) */ -#define ZSWR5_RTS 0x02 /* assert RTS */ -#define ZSWR5_TXCRC_ENABLE 0x01 /* enable xmit crc calculation */ +#define WR5_BREAK 0x10 /* send break (continuous 0s) */ +#define WR5_TX_ENABLE 0x08 /* enable transmitter */ +#define WR5_CRC16 0x04 /* use CRC16 (off => use SDLC) */ +#define WR5_RTS 0x02 /* assert RTS */ +#define WR5_TXCRC_ENABLE 0x01 /* enable xmit crc calculation */ #ifdef not_done_here /* * Bits in Write Register 7 when the chip is in SDLC mode. */ -#define ZSWR7_SDLCFLAG 0x7e /* this value makes SDLC mode work */ +#define WR7_SDLCFLAG 0x7e /* this value makes SDLC mode work */ #endif /* - * Bits in Write Register 7' (ZSWR_ENHANCED above). This register is + * Bits in Write Register 7' (WR_ENHANCED above). This register is * only available on the 85230. Dispite the fact it contains flags * and not a single value, the register was named as it is read * via RR14. Weird. */ /* 0x80 unused */ -#define ZSWR7P_EXTEND_READ 0x40 /* modify read map; make most regs readable */ -#define ZSWR7P_TX_FIFO 0x20 /* change level for Tx FIFO empty int */ -#define ZSWR7P_DTR_TIME 0x10 /* modifies deact. speed of /DTR//REQ */ -#define ZSWR7P_RX_FIFO 0x08 /* Rx FIFO int on 1/2 full? */ -#define ZSWR7P_RTS_DEACT 0x04 /* automatically deassert RTS */ -#define ZSWR7P_AUTO_EOM_RESET 0x02 /* automatically reset EMO/Tx Underrun */ -#define ZSWR7P_AUTO_TX_FLAG 0x01 /* Auto send SDLC flag at transmit start */ +#define WR7P_EXTEND_READ 0x40 /* modify read map; make most regs readable */ +#define WR7P_TX_FIFO 0x20 /* change level for Tx FIFO empty int */ +#define WR7P_DTR_TIME 0x10 /* modifies deact. speed of /DTR//REQ */ +#define WR7P_RX_FIFO 0x08 /* Rx FIFO int on 1/2 full? */ +#define WR7P_RTS_DEACT 0x04 /* automatically deassert RTS */ +#define WR7P_AUTO_EOM_RESET 0x02 /* automatically reset EMO/Tx Underrun */ +#define WR7P_AUTO_TX_FLAG 0x01 /* Auto send SDLC flag at transmit start */ /* * Bits in Write Register 9 (`Master Interrupt Control'). Bits 7 & 6 * are taken as a unit and indicate the type of reset; 00 means no reset * (and is not defined here). */ -#define ZSWR9_HARD_RESET 0xc0 /* force hardware reset */ -#define ZSWR9_A_RESET 0x80 /* reset channel A (0) */ -#define ZSWR9_B_RESET 0x40 /* reset channel B (1) */ -#define ZSWR9_SOFT_INTAC 0x20 /* Not in NMOS version */ +#define WR9_HARD_RESET 0xc0 /* force hardware reset */ +#define WR9_A_RESET 0x80 /* reset channel A (0) */ +#define WR9_B_RESET 0x40 /* reset channel B (1) */ +#define WR9_SOFT_INTAC 0x20 /* Not in NMOS version */ -#define ZSWR9_STATUS_HIGH 0x10 /* status in high bits of intr vec */ -#define ZSWR9_MASTER_IE 0x08 /* master interrupt enable */ -#define ZSWR9_DLC 0x04 /* disable lower chain */ -#define ZSWR9_NO_VECTOR 0x02 /* no vector */ -#define ZSWR9_VECTOR_INCL_STAT 0x01 /* vector includes status */ +#define WR9_STATUS_HIGH 0x10 /* status in high bits of intr vec */ +#define WR9_MASTER_IE 0x08 /* master interrupt enable */ +#define WR9_DLC 0x04 /* disable lower chain */ +#define WR9_NO_VECTOR 0x02 /* no vector */ +#define WR9_VECTOR_INCL_STAT 0x01 /* vector includes status */ /* * Bits in Write Register 10 (`Miscellaneous Transmitter/Receiver Control * Bits'). Bits 6 & 5 are taken as a unit, and some of the bits are * meaningful only in certain modes. Bleah. */ -#define ZSWR10_PRESET_ONES 0x80 /* preset CRC to all 1 (else all 0) */ +#define WR10_PRESET_ONES 0x80 /* preset CRC to all 1 (else all 0) */ -#define ZSWR10_NRZ 0x00 /* NRZ encoding */ -#define ZSWR10_NRZI 0x20 /* NRZI encoding */ -#define ZSWR10_FM1 0x40 /* FM1 encoding */ -#define ZSWR10_FM0 0x60 /* FM0 encoding */ +#define WR10_NRZ 0x00 /* NRZ encoding */ +#define WR10_NRZI 0x20 /* NRZI encoding */ +#define WR10_FM1 0x40 /* FM1 encoding */ +#define WR10_FM0 0x60 /* FM0 encoding */ -#define ZSWR10_GA_ON_POLL 0x10 /* go active on poll (loop mode) */ -#define ZSWR10_MARK_IDLE 0x08 /* all 1s (vs flag) when idle (SDLC) */ -#define ZSWR10_ABORT_ON_UNDERRUN 0x4 /* abort on xmit underrun (SDLC) */ -#define ZSWR10_LOOP_MODE 0x02 /* loop mode (SDLC) */ -#define ZSWR10_6_BIT_SYNC 0x01 /* 6 bits per sync char (sync modes) */ +#define WR10_GA_ON_POLL 0x10 /* go active on poll (loop mode) */ +#define WR10_MARK_IDLE 0x08 /* all 1s (vs flag) when idle (SDLC) */ +#define WR10_ABORT_ON_UNDERRUN 0x04 /* abort on xmit underrun (SDLC) */ +#define WR10_LOOP_MODE 0x02 /* loop mode (SDLC) */ +#define WR10_6_BIT_SYNC 0x01 /* 6 bits per sync char (sync modes) */ /* * Bits in Write Register 11 (`Clock Mode Control'). Bits 6&5, 4&3, and * 1&0 are taken as units. Various bits depend on other bits in complex * ways; see the Zilog manual. */ -#define ZSWR11_XTAL 0x80 /* have xtal between RTxC* and SYNC* */ +#define WR11_XTAL 0x80 /* have xtal between RTxC* and SYNC* */ /* (else have TTL oscil. on RTxC*) */ -#define ZSWR11_RXCLK_RTXC 0x00 /* recv clock taken from RTxC* pin */ -#define ZSWR11_RXCLK_TRXC 0x20 /* recv clock taken from TRxC* pin */ -#define ZSWR11_RXCLK_BAUD 0x40 /* recv clock taken from BRG */ -#define ZSWR11_RXCLK_DPLL 0x60 /* recv clock taken from DPLL */ +#define WR11_RXCLK_RTXC 0x00 /* recv clock taken from RTxC* pin */ +#define WR11_RXCLK_TRXC 0x20 /* recv clock taken from TRxC* pin */ +#define WR11_RXCLK_BAUD 0x40 /* recv clock taken from BRG */ +#define WR11_RXCLK_DPLL 0x60 /* recv clock taken from DPLL */ -#define ZSWR11_TXCLK_RTXC 0x00 /* xmit clock taken from RTxC* pin */ -#define ZSWR11_TXCLK_TRXC 0x08 /* xmit clock taken from TRxC* pin */ -#define ZSWR11_TXCLK_BAUD 0x10 /* xmit clock taken from BRG */ -#define ZSWR11_TXCLK_DPLL 0x18 /* xmit clock taken from DPLL */ +#define WR11_TXCLK_RTXC 0x00 /* xmit clock taken from RTxC* pin */ +#define WR11_TXCLK_TRXC 0x08 /* xmit clock taken from TRxC* pin */ +#define WR11_TXCLK_BAUD 0x10 /* xmit clock taken from BRG */ +#define WR11_TXCLK_DPLL 0x18 /* xmit clock taken from DPLL */ -#define ZSWR11_TRXC_OUT_ENA 0x04 /* TRxC* pin will be an output */ +#define WR11_TRXC_OUT_ENA 0x04 /* TRxC* pin will be an output */ /* (unless it is being used above) */ -#define ZSWR11_TRXC_XTAL 0x00 /* TRxC output from xtal oscillator */ -#define ZSWR11_TRXC_XMIT 0x01 /* TRxC output from xmit clock */ -#define ZSWR11_TRXC_BAUD 0x02 /* TRxC output from BRG */ -#define ZSWR11_TRXC_DPLL 0x03 /* TRxC output from DPLL */ +#define WR11_TRXC_XTAL 0x00 /* TRxC output from xtal oscillator */ +#define WR11_TRXC_XMIT 0x01 /* TRxC output from xmit clock */ +#define WR11_TRXC_BAUD 0x02 /* TRxC output from BRG */ +#define WR11_TRXC_DPLL 0x03 /* TRxC output from DPLL */ /* * Formula for Write Registers 12 and 13 (`Lower Byte of Baud Rate @@ -353,64 +360,64 @@ * Bits in Write Register 14 (`Miscellaneous Control Bits'). * Bits 7 through 5 are taken as a unit and make up a `DPLL command'. */ -#define ZSWR14_DPLL_NOOP 0x00 /* leave DPLL alone */ -#define ZSWR14_DPLL_SEARCH 0x20 /* enter search mode */ -#define ZSWR14_DPLL_RESET_CM 0x40 /* reset `clock missing' in RR10 */ -#define ZSWR14_DPLL_DISABLE 0x60 /* disable DPLL (continuous search) */ -#define ZSWR14_DPLL_SRC_BAUD 0x80 /* set DPLL src = BRG */ -#define ZSWR14_DPLL_SRC_RTXC 0xa0 /* set DPLL src = RTxC* or xtal osc */ -#define ZSWR14_DPLL_FM 0xc0 /* operate in FM mode */ -#define ZSWR14_DPLL_NRZI 0xe0 /* operate in NRZI mode */ +#define WR14_DPLL_NOOP 0x00 /* leave DPLL alone */ +#define WR14_DPLL_SEARCH 0x20 /* enter search mode */ +#define WR14_DPLL_RESET_CM 0x40 /* reset `clock missing' in RR10 */ +#define WR14_DPLL_DISABLE 0x60 /* disable DPLL (continuous search) */ +#define WR14_DPLL_SRC_BAUD 0x80 /* set DPLL src = BRG */ +#define WR14_DPLL_SRC_RTXC 0xa0 /* set DPLL src = RTxC* or xtal osc */ +#define WR14_DPLL_FM 0xc0 /* operate in FM mode */ +#define WR14_DPLL_NRZI 0xe0 /* operate in NRZI mode */ -#define ZSWR14_LOCAL_LOOPBACK 0x10 /* set local loopback mode */ -#define ZSWR14_AUTO_ECHO 0x08 /* set auto echo mode */ -#define ZSWR14_DTR_REQ 0x04 /* DTR* / REQ* pin gives REQ* */ -#define ZSWR14_BAUD_FROM_PCLK 0x02 /* BRG clock taken from PCLK */ +#define WR14_LOCAL_LOOPBACK 0x10 /* set local loopback mode */ +#define WR14_AUTO_ECHO 0x08 /* set auto echo mode */ +#define WR14_DTR_REQ 0x04 /* DTR* / REQ* pin gives REQ* */ +#define WR14_BAUD_FROM_PCLK 0x02 /* BRG clock taken from PCLK */ /* (else from RTxC* pin or xtal osc) */ -#define ZSWR14_BAUD_ENA 0x01 /* enable BRG countdown */ +#define WR14_BAUD_ENA 0x01 /* enable BRG countdown */ /* * Bits in Write Register 15 (`External/Status Interrupt Control'). * Most of these cause status interrupts whenever the corresponding * bit or pin changes state (i.e., any rising or falling edge). * - * NOTE: ZSWR15_SDLC_FIFO & ZSWR15_ENABLE_ENHANCED should not be - * set on an NMOS 8530. Also, ZSWR15_ENABLE_ENHANCED is only + * NOTE: WR15_SDLC_FIFO & WR15_ENABLE_ENHANCED should not be + * set on an NMOS 8530. Also, WR15_ENABLE_ENHANCED is only * available on the 85230. */ -#define ZSWR15_BREAK_IE 0x80 /* enable break/abort status int */ -#define ZSWR15_TXUEOM_IE 0x40 /* enable TX underrun/EOM status int */ -#define ZSWR15_CTS_IE 0x20 /* enable CTS* pin status int */ -#define ZSWR15_SYNCHUNT_IE 0x10 /* enable SYNC* pin/hunt status int */ -#define ZSWR15_DCD_IE 0x08 /* enable DCD* pin status int */ -#define ZSWR15_SDLC_FIFO 0x04 /* enable SDLC FIFO enhancements */ -#define ZSWR15_ZERO_COUNT_IE 0x02 /* enable BRG-counter = 0 status int */ -#define ZSWR15_ENABLE_ENHANCED 0x01 /* enable writing WR7' at reg 7 */ +#define WR15_BREAK_IE 0x80 /* enable break/abort status int */ +#define WR15_TXUEOM_IE 0x40 /* enable TX underrun/EOM status int */ +#define WR15_CTS_IE 0x20 /* enable CTS* pin status int */ +#define WR15_SYNCHUNT_IE 0x10 /* enable SYNC* pin/hunt status int */ +#define WR15_DCD_IE 0x08 /* enable DCD* pin status int */ +#define WR15_SDLC_FIFO 0x04 /* enable SDLC FIFO enhancements */ +#define WR15_ZERO_COUNT_IE 0x02 /* enable BRG-counter = 0 status int */ +#define WR15_ENABLE_ENHANCED 0x01 /* enable writing WR7' at reg 7 */ /* * Bits in Read Register 0 (`Transmit/Receive Buffer Status and External * Status'). */ -#define ZSRR0_BREAK 0x80 /* break/abort detected */ -#define ZSRR0_TXUNDER 0x40 /* transmit underrun/EOM (sync) */ -#define ZSRR0_CTS 0x20 /* clear to send */ -#define ZSRR0_SYNC_HUNT 0x10 /* sync/hunt (sync mode) */ -#define ZSRR0_DCD 0x08 /* data carrier detect */ -#define ZSRR0_TX_READY 0x04 /* transmit buffer empty */ -#define ZSRR0_ZERO_COUNT 0x02 /* zero count in baud clock */ -#define ZSRR0_RX_READY 0x01 /* received character ready */ +#define RR0_BREAK 0x80 /* break/abort detected */ +#define RR0_TXUNDER 0x40 /* transmit underrun/EOM (sync) */ +#define RR0_CTS 0x20 /* clear to send */ +#define RR0_SYNC_HUNT 0x10 /* sync/hunt (sync mode) */ +#define RR0_DCD 0x08 /* data carrier detect */ +#define RR0_TX_READY 0x04 /* transmit buffer empty */ +#define RR0_ZERO_COUNT 0x02 /* zero count in baud clock */ +#define RR0_RX_READY 0x01 /* received character ready */ /* * Bits in Read Register 1 (the Zilog book does not name this one). */ -#define ZSRR1_EOF 0x80 /* end of frame (SDLC mode) */ -#define ZSRR1_FE 0x40 /* CRC/framing error */ -#define ZSRR1_DO 0x20 /* data (receiver) overrun */ -#define ZSRR1_PE 0x10 /* parity error */ -#define ZSRR1_RC0 0x08 /* residue code 0 (SDLC mode) */ -#define ZSRR1_RC1 0x04 /* residue code 1 (SDLC mode) */ -#define ZSRR1_RC2 0x02 /* residue code 2 (SDLC mode) */ -#define ZSRR1_ALL_SENT 0x01 /* all chars out of xmitter (async) */ +#define RR1_EOF 0x80 /* end of frame (SDLC mode) */ +#define RR1_FE 0x40 /* CRC/framing error */ +#define RR1_DO 0x20 /* data (receiver) overrun */ +#define RR1_PE 0x10 /* parity error */ +#define RR1_RC0 0x08 /* residue code 0 (SDLC mode) */ +#define RR1_RC1 0x04 /* residue code 1 (SDLC mode) */ +#define RR1_RC2 0x02 /* residue code 2 (SDLC mode) */ +#define RR1_ALL_SENT 0x01 /* all chars out of xmitter (async) */ /* * Read Register 2 in B channel contains status bits if VECTOR_INCL_STAT @@ -423,33 +430,33 @@ */ /* 0x80 unused, returned as 0 */ /* 0x40 unused, returned as 0 */ -#define ZSRR3_IP_A_RX 0x20 /* channel A recv int pending */ -#define ZSRR3_IP_A_TX 0x10 /* channel A xmit int pending */ -#define ZSRR3_IP_A_STAT 0x08 /* channel A status int pending */ -#define ZSRR3_IP_B_RX 0x04 /* channel B recv int pending */ -#define ZSRR3_IP_B_TX 0x02 /* channel B xmit int pending */ -#define ZSRR3_IP_B_STAT 0x01 /* channel B status int pending */ +#define RR3_IP_A_RX 0x20 /* channel A recv int pending */ +#define RR3_IP_A_TX 0x10 /* channel A xmit int pending */ +#define RR3_IP_A_STAT 0x08 /* channel A status int pending */ +#define RR3_IP_B_RX 0x04 /* channel B recv int pending */ +#define RR3_IP_B_TX 0x02 /* channel B xmit int pending */ +#define RR3_IP_B_STAT 0x01 /* channel B status int pending */ /* * Bits in Read Register 10 (`contains some miscellaneous status bits'). */ -#define ZSRR10_1_CLOCK_MISSING 0x80 /* 1 clock edge missing (FM mode) */ -#define ZSRR10_2_CLOCKS_MISSING 0x40 /* 2 clock edges missing (FM mode) */ +#define RR10_1_CLOCK_MISSING 0x80 /* 1 clock edge missing (FM mode) */ +#define RR10_2_CLOCKS_MISSING 0x40 /* 2 clock edges missing (FM mode) */ /* 0x20 unused */ -#define ZSRR10_LOOP_SENDING 0x10 /* xmitter controls loop (SDLC loop) */ +#define RR10_LOOP_SENDING 0x10 /* xmitter controls loop (SDLC loop) */ /* 0x08 unused */ /* 0x04 unused */ -#define ZSRR10_ON_LOOP 0x02 /* SCC is on loop (SDLC/X.21 modes) */ +#define RR10_ON_LOOP 0x02 /* SCC is on loop (SDLC/X.21 modes) */ /* * Bits in Read Register 15. This register is one of the few that * simply reads back the corresponding Write Register. */ -#define ZSRR15_BREAK_IE 0x80 /* break/abort status int enable */ -#define ZSRR15_TXUEOM_IE 0x40 /* TX underrun/EOM status int enable */ -#define ZSRR15_CTS_IE 0x20 /* CTS* pin status int enable */ -#define ZSRR15_SYNCHUNT_IE 0x10 /* SYNC* pin/hunt status int enable */ -#define ZSRR15_DCD_IE 0x08 /* DCD* pin status int enable */ +#define RR15_BREAK_IE 0x80 /* break/abort status int enable */ +#define RR15_TXUEOM_IE 0x40 /* TX underrun/EOM status int enable */ +#define RR15_CTS_IE 0x20 /* CTS* pin status int enable */ +#define RR15_SYNCHUNT_IE 0x10 /* SYNC* pin/hunt status int enable */ +#define RR15_DCD_IE 0x08 /* DCD* pin status int enable */ /* 0x04 unused, returned as zero */ -#define ZSRR15_ZERO_COUNT_IE 0x02 /* BRG-counter = 0 status int enable */ +#define RR15_ZERO_COUNT_IE 0x02 /* BRG-counter = 0 status int enable */ /* 0x01 unused, returned as zero */ From owner-p4-projects@FreeBSD.ORG Sat Aug 30 14:22:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BABEF16A4C1; Sat, 30 Aug 2003 14:22:32 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6C12516A4BF for ; Sat, 30 Aug 2003 14:22:32 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EDDD443F85 for ; Sat, 30 Aug 2003 14:22:29 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7ULMT0U071087 for ; Sat, 30 Aug 2003 14:22:29 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7ULMTCc071084 for perforce@freebsd.org; Sat, 30 Aug 2003 14:22:29 -0700 (PDT) Date: Sat, 30 Aug 2003 14:22:29 -0700 (PDT) Message-Id: <200308302122.h7ULMTCc071084@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 37242 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Aug 2003 21:22:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=37242 Change 37242 by sam@sam_ebb on 2003/08/30 14:22:20 branch sam_netperf to create sam_tagcleanup Affected files ... .. //depot/projects/tagcleanup/sys/Makefile#1 branch .. //depot/projects/tagcleanup/sys/alpha/Makefile#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/alpha-gdbstub.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/api_up1000.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/atomic.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/autoconf.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/busdma_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/busspace.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/clock.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/clock_if.m#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/cpuconf.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/critical.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/db_disasm.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/db_instruction.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/db_interface.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/db_trace.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_1000a.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_2100_a50.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_2100_a500.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_3000_300.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_3000_500.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_axppci_33.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_eb164.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_eb64plus.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_kn20aa.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_kn300.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_kn8ae.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_st550.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dec_st6600.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/divrem.m4#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/dump_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/elf_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/exception.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/fp_emulate.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/genassym.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/ieee_float.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/ieee_float.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/in_cksum.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/interrupt.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/locore.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/machdep.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/mem.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/mp_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/pal.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/pmap.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/prom.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/prom_disp.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/promcons.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/sgmap.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/support.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/swtch.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/sys_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/timerreg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/trap.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/alpha/vm_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/compile/.cvsignore#1 branch .. //depot/projects/tagcleanup/sys/alpha/conf/GENERIC#1 branch .. //depot/projects/tagcleanup/sys/alpha/conf/GENERIC.hints#1 branch .. //depot/projects/tagcleanup/sys/alpha/conf/Makefile#1 branch .. //depot/projects/tagcleanup/sys/alpha/conf/NOTES#1 branch .. //depot/projects/tagcleanup/sys/alpha/conf/gethints.awk#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/_inttypes.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/_limits.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/_stdint.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/_types.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/alpha_cpu.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/asm.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/atomic.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/bootinfo.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/bus.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/bus_memio.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/bus_pio.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/bwx.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/chipset.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/clock.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/clockvar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/cpu.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/cpuconf.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/cpufunc.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/critical.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/db_machdep.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/elf.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/endian.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/exec.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/float.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/floatingpoint.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/fpu.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/frame.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/ieee.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/ieeefp.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/in_cksum.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/inst.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/intr.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/intrcnt.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/ioctl_bt848.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/ioctl_meteor.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/kse.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/limits.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/md_var.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/mutex.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pal.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/param.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pc/bios.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pc/display.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pc/msdos.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pc/vesa.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pcb.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pcpu.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pmap.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/proc.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/profile.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/prom.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/pte.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/ptrace.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/reg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/reloc.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/resource.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/rpb.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/runq.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/setjmp.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/sgmap.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/sigframe.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/signal.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/smp.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/stdarg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/swiz.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/sysarch.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/ucontext.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/varargs.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/include/vmparam.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/isa/isa.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/isa/isa_dma.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/isa/isavar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/isa/mcclock_isa.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/Makefile#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_dummy.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_genassym.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_ipc64.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_locore.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_proto.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_syscall.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_sysent.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/linux_sysvec.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/syscalls.conf#1 branch .. //depot/projects/tagcleanup/sys/alpha/linux/syscalls.master#1 branch .. //depot/projects/tagcleanup/sys/alpha/mcbus/mcbus.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/mcbus/mcbusreg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/mcbus/mcbusvar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/mcbus/mcmem.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/mcbus/mcpcia.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/mcbus/mcpciareg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/mcbus/mcpciavar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/Makefile#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/README.mach-traps#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/exec_ecoff.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/imgact_osf1.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_ioctl.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_misc.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_mount.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_proto.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_signal.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_signal.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_syscall.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_sysent.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_sysvec.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/osf1_util.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/syscalls.conf#1 branch .. //depot/projects/tagcleanup/sys/alpha/osf1/syscalls.master#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/alphapci_if.m#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/apecs.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/apecs_pci.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/apecsreg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/apecsvar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/bwx.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/cia.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/cia_pci.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/ciareg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/ciavar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/irongate.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/irongate_pci.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/irongatereg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/irongatevar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/lca.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/lca_pci.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/lcareg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/lcavar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/pci_eb164_intr.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/pci_eb64plus_intr.s#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/pcibus.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/pcibus.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/swiz.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/t2.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/t2_pci.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/t2reg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/t2var.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/tsunami.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/tsunami_pci.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/tsunamireg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/pci/tsunamivar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/dwlpx.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/dwlpxreg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/dwlpxvar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/gbus.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/gbusreg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/gbusvar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/kftxx.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/kftxxreg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/kftxxvar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/mcclock_tlsb.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/tlsb.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/tlsbcpu.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/tlsbmem.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/tlsbreg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/tlsbvar.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/zs_tlsb.c#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/zsreg.h#1 branch .. //depot/projects/tagcleanup/sys/alpha/tlsb/zsvar.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/Makefile#1 branch .. //depot/projects/tagcleanup/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/amd64-gdbstub.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/amd64_mem.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/atomic.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/autoconf.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/critical.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/db_disasm.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/db_interface.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/db_trace.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/genassym.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/identcpu.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/initcpu.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/legacy.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/machdep.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/mem.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/nexus.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/pmap.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/support.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/trap.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/tsc.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/compile/.cvsignore#1 branch .. //depot/projects/tagcleanup/sys/amd64/conf/GENERIC#1 branch .. //depot/projects/tagcleanup/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/projects/tagcleanup/sys/amd64/conf/Makefile#1 branch .. //depot/projects/tagcleanup/sys/amd64/conf/gethints.awk#1 branch .. //depot/projects/tagcleanup/sys/amd64/ia32/ia32_exception.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/ia32/ia32_signal.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/ia32/ia32_syscall.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/_inttypes.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/_limits.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/_stdint.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/_types.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/acpica_machdep.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/asm.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/asmacros.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/atomic.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/bus.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/bus_amd64.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/bus_dma.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/bus_memio.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/bus_pio.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/clock.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/cpu.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/cpufunc.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/cputypes.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/critical.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/db_machdep.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/elf.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/endian.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/exec.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/float.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/floatingpoint.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/frame.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/ieeefp.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/in_cksum.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/kse.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/legacyvar.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/limits.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/md_var.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/metadata.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/mutex.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/npx.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/param.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/pc/display.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/pcb.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/pcb_ext.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/pcpu.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/pmap.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/proc.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/profile.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/psl.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/ptrace.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/reg.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/reloc.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/resource.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/runq.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/segments.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/setjmp.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/sigframe.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/signal.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/smp.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/specialreg.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/stdarg.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/sysarch.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/trap.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/tss.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/ucontext.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/varargs.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/include/vmparam.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/clock.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/icu.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/icu_ipl.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/icu_vector.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/intr_machdep.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/intr_machdep.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/isa.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/isa.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/isa_dma.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/isa_dma.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/ithread.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/npx.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/timerreg.h#1 branch .. //depot/projects/tagcleanup/sys/amd64/isa/vector.S#1 branch .. //depot/projects/tagcleanup/sys/amd64/pci/pci_bus.c#1 branch .. //depot/projects/tagcleanup/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/projects/tagcleanup/sys/arm/compile/.cvsignore#1 branch .. //depot/projects/tagcleanup/sys/arm/include/_limits.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/_stdint.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/_types.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/elf.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/endian.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/exec.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/limits.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/param.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/signal.h#1 branch .. //depot/projects/tagcleanup/sys/arm/include/ucontext.h#1 branch .. //depot/projects/tagcleanup/sys/boot/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/README#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/boot1/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/boot1/boot1.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/cdboot/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/cdboot/version#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/common/Makefile.common#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/common/conf.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/common/help.alpha#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/common/main.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/OSFpal.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/alpha_copy.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/alpha_module.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/bbinfo.h#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/bootinfo.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/common.h#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/delay.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/devicename.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/elf_freebsd.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/getsecs.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/libalpha.h#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/pal.S#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/prom.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/prom_disp.S#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/prom_swpal.S#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/reboot.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/srmdisk.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/srmnet.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/start.S#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/libalpha/time.c#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/loader/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/loader/version#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/netboot/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/alpha/netboot/version#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/include/arcfuncs.h#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/include/arctypes.h#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/include/libarc.h#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/abort.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/arcconsole.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/arcdisk.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/arch/alpha/copy.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/arch/alpha/rpb.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/arch/alpha/setjmp.S#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/arch/alpha/start.S#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/bootinfo.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/delay.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/devicename.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/elf_freebsd.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/module.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/prom.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/setjmperr.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/lib/time.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/loader/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/loader/conf.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/loader/help.alpha#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/loader/main.c#1 branch .. //depot/projects/tagcleanup/sys/boot/arc/loader/version#1 branch .. //depot/projects/tagcleanup/sys/boot/common/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/common/bcache.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/boot.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/bootstrap.h#1 branch .. //depot/projects/tagcleanup/sys/boot/common/commands.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/console.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/dev_net.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/dev_net.h#1 branch .. //depot/projects/tagcleanup/sys/boot/common/devopen.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/help.common#1 branch .. //depot/projects/tagcleanup/sys/boot/common/interp.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/interp_backslash.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/interp_forth.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/interp_parse.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/isapnp.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/isapnp.h#1 branch .. //depot/projects/tagcleanup/sys/boot/common/load.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/load_elf.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/load_elf32.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/load_elf64.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/loader.8#1 branch .. //depot/projects/tagcleanup/sys/boot/common/ls.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/merge_help.awk#1 branch .. //depot/projects/tagcleanup/sys/boot/common/misc.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/module.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/newvers.sh#1 branch .. //depot/projects/tagcleanup/sys/boot/common/panic.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/pnp.c#1 branch .. //depot/projects/tagcleanup/sys/boot/common/pnpdata#1 branch .. //depot/projects/tagcleanup/sys/boot/common/ufsread.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/README#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efi.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efi_nii.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efiapi.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/eficon.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efidebug.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efidef.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efidevp.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efierr.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efifpswa.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efifs.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efilib.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efinet.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efipart.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efiprot.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efipxebc.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efiser.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/efistdarg.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/i386/efibind.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/i386/pe.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/ia64/efibind.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/include/ia64/pe.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/arch/ia64/ldscript.ia64#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/arch/ia64/start.S#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/bootinfo.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/copy.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/delay.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/devicename.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/efi_console.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/efiboot.h#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/efifpswa.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/efifs.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/efinet.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/elf_freebsd.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/libefi.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/module.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/libefi/time.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/loader/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/loader/conf.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/loader/main.c#1 branch .. //depot/projects/tagcleanup/sys/boot/efi/loader/version#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/alpha/sysdep.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/alpha/sysdep.h#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/dict.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/ficl.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/ficl.h#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/fileaccess.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/float.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/i386/sysdep.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/i386/sysdep.h#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/ia64/sysdep.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/ia64/sysdep.h#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/loader.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/math64.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/math64.h#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/prefix.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/search.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/classes.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/ficlclass.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/ficllocal.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/fileaccess.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/forml.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/freebsd.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/ifbrack.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/jhlocal.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/marker.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/oo.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/prefix.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/softcore.awk#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/softcore.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/softwords/string.fr#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/sparc64/sysdep.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/sparc64/sysdep.h#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/stack.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/testmain.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/tools.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/unix.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/vm.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ficl/words.c#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/beastie.4th#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/frames.4th#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/loader.4th#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/loader.4th.8#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/loader.conf#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/loader.conf.5#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/loader.rc#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/pnp.4th#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/screen.4th#1 branch .. //depot/projects/tagcleanup/sys/boot/forth/support.4th#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/boot0/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/boot0/boot0.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/boot2/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/boot2/boot1.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/boot2/boot2.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/boot2/lib.h#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/boot2/sio.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/btx/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/btx/btx.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/btxldr/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/btxldr/btxldr.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/lib/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/lib/btxcsu.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/lib/btxsys.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/lib/btxv86.h#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/btx/lib/btxv86.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/cdboot/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/cdboot/cdboot.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/kgzldr/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/kgzldr/boot.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/kgzldr/crt.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/kgzldr/kgzldr.h#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/kgzldr/lib.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/kgzldr/sio.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/kgzldr/start.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/biosacpi.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/bioscd.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/biosdisk.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/biosmem.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/biospci.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/biospnp.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/bootinfo.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/comconsole.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/devicename.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/gatea20.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/i386_copy.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/i386_module.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/libi386.h#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/nullconsole.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/pread.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/pxe.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/pxe.h#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/pxetramp.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/time.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/libi386/vidconsole.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/loader/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/loader/conf.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/loader/help.i386#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/loader/loader.rc#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/loader/main.c#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/loader/version#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/mbr/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/mbr/mbr.s#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/pxeldr/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/pxeldr/pxeboot.8#1 branch .. //depot/projects/tagcleanup/sys/boot/i386/pxeldr/pxeldr.s#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/acpi_stub.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/bootinfo.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/copy.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/delay.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/devicename.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/efi_stub.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/elf_freebsd.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/exit.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/libski.h#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/module.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/pal_stub.S#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/sal_stub.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/skiconsole.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/skifs.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/ssc.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/libski/time.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/skiload/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/skiload/conf.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/skiload/ldscript.ia64#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/skiload/main.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/skiload/skiload.cmd#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/skiload/start.S#1 branch .. //depot/projects/tagcleanup/sys/boot/ia64/skiload/version#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/common/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/common/main.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/devicename.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/elf_freebsd.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/libofw.h#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/ofw_console.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/ofw_copy.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/ofw_disk.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/ofw_memory.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/ofw_module.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/ofw_net.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/ofw_reboot.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/ofw_time.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/openfirm.c#1 branch .. //depot/projects/tagcleanup/sys/boot/ofw/libofw/openfirm.h#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/Makefile.inc#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0.5/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0.5/boot.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0.5/boot0.5.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0.5/disk.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0.5/selector.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0.5/start.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0.5/support.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0.5/syscons.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot0/boot0.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/README.serial.98#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/asm.S#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/asm.h#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/bios.S#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/boot.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/boot.h#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/boot2.S#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/dinode.h#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/disk.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/fs.h#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/inode.h#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/io.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/probe_keyboard.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/quota.h#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/serial.S#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/serial_16550.S#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/serial_8251.S#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/start.S#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/sys.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/boot2/table.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/btx/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/btx/btx.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/btxldr/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/btxldr/btxldr.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/lib/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/lib/btxcsu.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/lib/btxsys.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/lib/btxv86.h#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/btx/lib/btxv86.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/kgzldr/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/kgzldr/crt.s#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/libpc98/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/libpc98/biosdisk.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/libpc98/biosmem.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/libpc98/comconsole.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/libpc98/gatea20.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/libpc98/i386_module.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/libpc98/time.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/libpc98/vidconsole.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/loader/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/loader/conf.c#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/loader/help.pc98#1 branch .. //depot/projects/tagcleanup/sys/boot/pc98/loader/main.c#1 branch .. //depot/projects/tagcleanup/sys/boot/powerpc/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/powerpc/loader/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/powerpc/loader/conf.c#1 branch .. //depot/projects/tagcleanup/sys/boot/powerpc/loader/help.ofw#1 branch .. //depot/projects/tagcleanup/sys/boot/powerpc/loader/metadata.c#1 branch .. //depot/projects/tagcleanup/sys/boot/powerpc/loader/start.c#1 branch .. //depot/projects/tagcleanup/sys/boot/powerpc/loader/version#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/boot1/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/boot1/_start.S#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/boot1/boot1.c#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/loader/Makefile#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/loader/help.sparc64#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/loader/locore.S#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/loader/main.c#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/loader/metadata.c#1 branch .. //depot/projects/tagcleanup/sys/boot/sparc64/loader/version#1 branch .. //depot/projects/tagcleanup/sys/cam/cam.c#1 branch .. //depot/projects/tagcleanup/sys/cam/cam.h#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_ccb.h#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_debug.h#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_periph.c#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_periph.h#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_queue.c#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_queue.h#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_sim.c#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_sim.h#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_xpt.c#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_xpt.h#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_xpt_periph.h#1 branch .. //depot/projects/tagcleanup/sys/cam/cam_xpt_sim.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_all.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_all.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_cd.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_cd.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_ch.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_ch.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_da.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_da.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_dvcfg.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_iu.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_low.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_low.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_low_pisa.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_low_pisa.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_message.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_pass.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_pass.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_pt.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_pt.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_sa.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_sa.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_ses.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_ses.h#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_targ_bh.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_target.c#1 branch .. //depot/projects/tagcleanup/sys/cam/scsi/scsi_targetio.h#1 branch .. //depot/projects/tagcleanup/sys/coda/00READ#1 branch .. //depot/projects/tagcleanup/sys/coda/README#1 branch .. //depot/projects/tagcleanup/sys/coda/TODO#1 branch .. //depot/projects/tagcleanup/sys/coda/cnode.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_fbsd.c#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_io.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_kernel.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_namecache.c#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_namecache.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_opstats.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_pioctl.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_psdev.c#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_psdev.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_subr.c#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_subr.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_venus.c#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_venus.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_vfsops.c#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_vfsops.h#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_vnops.c#1 branch .. //depot/projects/tagcleanup/sys/coda/coda_vnops.h#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/tagcleanup/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/tagcleanup/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/tagcleanup/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/tagcleanup/sys/compat/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/tagcleanup/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/tagcleanup/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/tagcleanup/sys/compat/linprocfs/linprocfs.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_file.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_getcwd.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_ioctl.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_ioctl.h#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_ipc.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_ipc.h#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_mib.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_mib.h#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_misc.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_signal.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_signal.h#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_socket.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_socket.h#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_stats.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_sysctl.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_uid16.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_util.c#1 branch .. //depot/projects/tagcleanup/sys/compat/linux/linux_util.h#1 branch .. //depot/projects/tagcleanup/sys/compat/pecoff/imgact_pecoff.c#1 branch .. //depot/projects/tagcleanup/sys/compat/pecoff/imgact_pecoff.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/Makefile#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/imgact_svr4.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_acl.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_dirent.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_errno.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_exec.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_fcntl.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_fcntl.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_filio.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_filio.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_fuser.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_hrt.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ioctl.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ioctl.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ipc.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ipc.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_misc.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_mman.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_proto.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_resource.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_resource.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_siginfo.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_signal.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_signal.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_socket.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_socket.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_sockio.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_sockio.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_sockmod.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_stat.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_stat.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_statvfs.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_stream.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_stropts.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_syscall.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_syscallnames.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_sysconfig.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_sysent.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_systeminfo.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_sysvec.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_termios.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_termios.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_time.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_timod.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ttold.c#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ttold.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_types.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ucontext.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ulimit.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_ustat.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_util.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_utsname.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/svr4_wait.h#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/syscalls.conf#1 branch .. //depot/projects/tagcleanup/sys/compat/svr4/syscalls.master#1 branch .. //depot/projects/tagcleanup/sys/conf/Makefile.alpha#1 branch .. //depot/projects/tagcleanup/sys/conf/Makefile.amd64#1 branch .. //depot/projects/tagcleanup/sys/conf/Makefile.i386#1 branch .. //depot/projects/tagcleanup/sys/conf/Makefile.ia64#1 branch .. //depot/projects/tagcleanup/sys/conf/Makefile.pc98#1 branch .. //depot/projects/tagcleanup/sys/conf/Makefile.powerpc#1 branch .. //depot/projects/tagcleanup/sys/conf/Makefile.sparc64#1 branch .. //depot/projects/tagcleanup/sys/conf/NOTES#1 branch .. //depot/projects/tagcleanup/sys/conf/defines#1 branch .. //depot/projects/tagcleanup/sys/conf/files#1 branch .. //depot/projects/tagcleanup/sys/conf/files.alpha#1 branch .. //depot/projects/tagcleanup/sys/conf/files.amd64#1 branch .. //depot/projects/tagcleanup/sys/conf/files.i386#1 branch .. //depot/projects/tagcleanup/sys/conf/files.ia64#1 branch .. //depot/projects/tagcleanup/sys/conf/files.pc98#1 branch .. //depot/projects/tagcleanup/sys/conf/files.powerpc#1 branch .. //depot/projects/tagcleanup/sys/conf/files.sparc64#1 branch .. //depot/projects/tagcleanup/sys/conf/kern.mk#1 branch .. //depot/projects/tagcleanup/sys/conf/kern.post.mk#1 branch .. //depot/projects/tagcleanup/sys/conf/kern.pre.mk#1 branch .. //depot/projects/tagcleanup/sys/conf/kmod.mk#1 branch .. //depot/projects/tagcleanup/sys/conf/kmod_syms.awk#1 branch .. //depot/projects/tagcleanup/sys/conf/ldscript.alpha#1 branch .. //depot/projects/tagcleanup/sys/conf/ldscript.amd64#1 branch .. //depot/projects/tagcleanup/sys/conf/ldscript.i386#1 branch .. //depot/projects/tagcleanup/sys/conf/ldscript.ia64#1 branch .. //depot/projects/tagcleanup/sys/conf/ldscript.powerpc#1 branch .. //depot/projects/tagcleanup/sys/conf/ldscript.sparc64#1 branch .. //depot/projects/tagcleanup/sys/conf/majors#1 branch .. //depot/projects/tagcleanup/sys/conf/majors.awk#1 branch .. //depot/projects/tagcleanup/sys/conf/makeLINT.mk#1 branch .. //depot/projects/tagcleanup/sys/conf/makeLINT.sed#1 branch .. //depot/projects/tagcleanup/sys/conf/newvers.sh#1 branch .. //depot/projects/tagcleanup/sys/conf/options#1 branch .. //depot/projects/tagcleanup/sys/conf/options.alpha#1 branch .. //depot/projects/tagcleanup/sys/conf/options.amd64#1 branch .. //depot/projects/tagcleanup/sys/conf/options.i386#1 branch .. //depot/projects/tagcleanup/sys/conf/options.ia64#1 branch .. //depot/projects/tagcleanup/sys/conf/options.pc98#1 branch .. //depot/projects/tagcleanup/sys/conf/options.powerpc#1 branch .. //depot/projects/tagcleanup/sys/conf/options.sparc64#1 branch .. //depot/projects/tagcleanup/sys/conf/systags.sh#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/CHANGES.txt#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acapps.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acconfig.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acdebug.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acdisasm.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acdispat.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acefi.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acenv.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acevents.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acexcep.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acfreebsd.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acgcc.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acglobal.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/achware.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acinterp.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/aclocal.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acmacros.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acnamesp.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acobject.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acoutput.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acparser.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acpi.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acpica_prep.sh#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acpiosxf.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acpixf.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acresrc.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acstruct.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/actables.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/actbl.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/actbl1.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/actbl2.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/actypes.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/acutils.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/amlcode.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/amlresrc.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/common/adisasm.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/common/getopt.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslanalyze.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslcodegen.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslcompile.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslcompiler.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslcompiler.l#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslcompiler.y#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslerror.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslfiles.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslfold.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslglobal.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/asllength.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/asllisting.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslload.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/asllookup.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslmain.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslmap.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslopcodes.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/asloperands.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslopt.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslresource.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslrestype1.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslrestype2.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslstubs.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/asltransform.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/asltree.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/asltypes.h#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/compiler/aslutils.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbcmds.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbdisply.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbexec.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbfileio.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbhistry.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbinput.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbstats.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbutils.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dbxface.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dmbuffer.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dmnames.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dmobject.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dmopcode.c#1 branch .. //depot/projects/tagcleanup/sys/contrib/dev/acpica/dmresrc.c#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Aug 30 14:35:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 53A9416A4C1; Sat, 30 Aug 2003 14:35:48 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 16DF216A4BF for ; Sat, 30 Aug 2003 14:35:48 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8B1D643FDF for ; Sat, 30 Aug 2003 14:35:47 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7ULZl0U071609 for ; Sat, 30 Aug 2003 14:35:47 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7ULZk3Q071606 for perforce@freebsd.org; Sat, 30 Aug 2003 14:35:46 -0700 (PDT) Date: Sat, 30 Aug 2003 14:35:46 -0700 (PDT) Message-Id: <200308302135.h7ULZk3Q071606@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 37244 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Aug 2003 21:35:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=37244 Change 37244 by sam@sam_ebb on 2003/08/30 14:35:40 missing RT_UNLOCK lost to p4 disconnect Affected files ... .. //depot/projects/netperf/sys/netinet6/in6_src.c#2 edit Differences ... ==== //depot/projects/netperf/sys/netinet6/in6_src.c#2 (text+ko) ==== @@ -256,6 +256,7 @@ if (IN6_IS_ADDR_MULTICAST(dst)) { ro->ro_rt = rtalloc1(&((struct route *)ro) ->ro_dst, 0, 0UL); + RT_UNLOCK(ro->ro_rt); } else { rtalloc((struct route *)ro); } From owner-p4-projects@FreeBSD.ORG Sat Aug 30 14:56:15 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E2D2216A4C1; Sat, 30 Aug 2003 14:56:14 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9CA8216A4BF for ; Sat, 30 Aug 2003 14:56:14 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 48F7743FBF for ; Sat, 30 Aug 2003 14:56:13 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7ULuD0U072308 for ; Sat, 30 Aug 2003 14:56:13 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7ULuCsN072305 for perforce@freebsd.org; Sat, 30 Aug 2003 14:56:12 -0700 (PDT) Date: Sat, 30 Aug 2003 14:56:12 -0700 (PDT) Message-Id: <200308302156.h7ULuCsN072305@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 37245 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Aug 2003 21:56:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=37245 Change 37245 by sam@sam_ebb on 2003/08/30 14:56:07 Checkpoint: o split bridge callbacks into input + output so each can be optimized and to cleanup locking o cleanup locking in bridge module unload (still may be a race against timer routine) o combine bridge packet analysis code with input processing; it is unlikely anyone is going to use the existing code to do packet analysis in a driver using a partially received packet and combining the two leads to useful optimizations o move bridge processing work from ether input to the bridge module o replace come m_copy calls with m_copypacket (optimization) o move layer2 ipfw processing logic from ethernet code to ipfw o revamp API to bridge callbacks for consistency and to eliminate confusing cases where sometimes mbufs are reclaimed and sometimes not o revamp ipfw2 layer2 processing callback to eliminate mbuf recaliming o remove use of MT_TAG pseudo-mbufs o move net.link.ether.ipfw sysctl to ipfw module; this means it will not be defined unless the module is loaded o reimplement net.link.ether.ipfw to remove a comparison previously required for each packet o replace 6's with ETHER_ADDR_LEN o revamp divert sockets to use real m_tag's o revamp dummynet to use real m_tag's o cleanup dummynet-bridge integration o redo ip reassembly queue handling to propagate tags instead of recording divert socket state in the queue header o redo ipfw forward handling with m_tag's to eliminate MT_TAG use and parameters to ip_dooptions and ip_forward o revamp dummynet i/o callback method to take out-of-band parameters from the mbuf chain (stored in m_tag) o remove PACKET_TAG_IPFWORWARD; no longer needed as info is stored instated in PACKET_TAG_IPFW This stuff compiles but needs lots more work. Some of this can be culled and integrated (especially bridge cleanup). Affected files ... .. //depot/projects/tagcleanup/sys/net/bridge.c#2 edit .. //depot/projects/tagcleanup/sys/net/bridge.h#2 edit .. //depot/projects/tagcleanup/sys/net/if_ethersubr.c#2 edit .. //depot/projects/tagcleanup/sys/netinet/ip_divert.c#2 edit .. //depot/projects/tagcleanup/sys/netinet/ip_dummynet.c#2 edit .. //depot/projects/tagcleanup/sys/netinet/ip_dummynet.h#2 edit .. //depot/projects/tagcleanup/sys/netinet/ip_fw.h#2 edit .. //depot/projects/tagcleanup/sys/netinet/ip_fw2.c#2 edit .. //depot/projects/tagcleanup/sys/netinet/ip_input.c#2 edit .. //depot/projects/tagcleanup/sys/netinet/ip_output.c#2 edit .. //depot/projects/tagcleanup/sys/netinet/ip_var.h#2 edit .. //depot/projects/tagcleanup/sys/netinet/tcp_input.c#2 edit .. //depot/projects/tagcleanup/sys/sys/mbuf.h#2 edit Differences ... ==== //depot/projects/tagcleanup/sys/net/bridge.c#2 (text+ko) ==== @@ -619,10 +619,10 @@ static void bdg_timeout(void *dummy) { + BDG_LOCK(); if (do_bridge) { int l, i; - BDG_LOCK(); /* * age entries in the forwarding table. */ @@ -650,9 +650,10 @@ bridge_on(); /* we just need unmute, really */ bdg_loops = 0; } - BDG_UNLOCK(); } - callout_reset(&bdg_callout, 2*hz, bdg_timeout, NULL); + if (bridge_in_ptr) + callout_reset(&bdg_callout, 2*hz, bdg_timeout, NULL); + BDG_UNLOCK(); } /* @@ -693,6 +694,9 @@ case 1: if (ETHER_ADDR_EQ(c->my_macs[0].etheraddr, eh->ether_dhost)) return BDG_LOCAL; + case 0: + /* XXX BDG_UNKOWN? */ + break; } /* * Look for a possible destination in table @@ -704,125 +708,6 @@ return BDG_UNKNOWN; } -/** - * bridge_in() is invoked to perform bridging decision on input packets. - * - * On Input: - * eh Ethernet header of the incoming packet. - * ifp interface the packet is coming from. - * - * On Return: destination of packet, one of - * BDG_BCAST broadcast - * BDG_MCAST multicast - * BDG_LOCAL is only for a local address (do not forward) - * BDG_DROP drop the packet - * ifp ifp of the destination interface. - * - * Forwarding is not done directly to give a chance to some drivers - * to fetch more of the packet, or simply drop it completely. - */ - -static struct ifnet * -bridge_in(struct ifnet *ifp, struct ether_header *eh) -{ - int index; - struct ifnet *dst, *old; - bdg_hash_table *bt; /* location in hash table */ - int dropit = BDG_MUTED(ifp); - - /* - * hash the source address - */ - BDG_LOCK(); - index = HASH_FN(eh->ether_shost); - bt = &BDG_CLUSTER(ifp)->ht[index]; - bt->used = 1; - old = bt->name; - if (old) { /* the entry is valid */ - if (!ETHER_ADDR_EQ(eh->ether_shost, bt->etheraddr)) { - bdg_ipfw_colls++; - bt->name = NULL; /* NB: will overwrite below */ - } else if (old != ifp) { - /* - * Found a loop. Either a machine has moved, or there - * is a misconfiguration/reconfiguration of the network. - * First, do not forward this packet! - * Record the relocation anyways; then, if loops persist, - * suspect a reconfiguration and disable forwarding - * from the old interface. - */ - bt->name = ifp; /* relocate address */ - printf("-- loop (%d) %6D to %s%d from %s%d (%s)\n", - bdg_loops, eh->ether_shost, ".", - ifp->if_name, ifp->if_unit, - old->if_name, old->if_unit, - BDG_MUTED(old) ? "muted":"active"); - dropit = 1; - if (!BDG_MUTED(old)) { - if (bdg_loops++ > 10) - BDG_MUTE(old); - } - } - } - - /* - * now write the source address into the table - */ - if (bt->name == NULL) { - DPRINTF(("%s: new addr %6D at %d for %s%d\n", - __func__, eh->ether_shost, ".", index, ifp->if_name, ifp->if_unit)); - ETHER_ADDR_COPY(bt->etheraddr, eh->ether_shost); - bt->name = ifp; - } - dst = bridge_dst_lookup(eh, BDG_CLUSTER(ifp)); - BDG_UNLOCK(); - - /* - * bridge_dst_lookup can return the following values: - * BDG_BCAST, BDG_MCAST, BDG_LOCAL, BDG_UNKNOWN, BDG_DROP, ifp. - * For muted interfaces, or when we detect a loop, the first 3 are - * changed in BDG_LOCAL (we still listen to incoming traffic), - * and others to BDG_DROP (no use for the local host). - * Also, for incoming packets, ifp is changed to BDG_DROP if ifp == src. - * These changes are not necessary for outgoing packets from ether_output(). - */ - BDG_STAT(ifp, BDG_IN); - switch ((uintptr_t)dst) { - case (uintptr_t)BDG_BCAST: - case (uintptr_t)BDG_MCAST: - case (uintptr_t)BDG_LOCAL: - case (uintptr_t)BDG_UNKNOWN: - case (uintptr_t)BDG_DROP: - BDG_STAT(ifp, dst); - break; - default: - if (dst == ifp || dropit) - BDG_STAT(ifp, BDG_DROP); - else - BDG_STAT(ifp, BDG_FORWARD); - break; - } - - if (dropit) { - if (dst == BDG_BCAST || dst == BDG_MCAST || dst == BDG_LOCAL) - dst = BDG_LOCAL; - else - dst = BDG_DROP; - } else { - if (dst == ifp) - dst = BDG_DROP; - } - DPRINTF(("%s: %6D ->%6D ty 0x%04x dst %s%d\n", __func__, - eh->ether_shost, ".", - eh->ether_dhost, ".", - ntohs(eh->ether_type), - (dst <= BDG_FORWARD) ? bdg_dst_names[(int)dst] : - dst->if_name, - (dst <= BDG_FORWARD) ? 0 : dst->if_unit)); - - return dst; -} - /* * Return 1 if it's ok to send a packet out the specified interface. * The interface must be: @@ -832,6 +717,8 @@ * up and running, * not the source interface, and * belong to the same cluster as the 'real_dst'. + * + * NB: src may be NULL when applying this check for outbound frames. */ static __inline int bridge_ifok(struct ifnet *ifp, struct ifnet *src, struct ifnet *dst) @@ -845,84 +732,103 @@ } /* - * Forward a packet to dst -- which can be a single interface or - * an entire cluster. The src port and muted interfaces are excluded. - * - * If src == NULL, the pkt comes from ether_output, and dst is the real - * interface the packet is originally sent to. In this case, we must forward - * it to the whole cluster. - * We never call bdg_forward from ether_output on interfaces which are - * not part of a cluster. - * - * If possible (i.e. we can determine that the caller does not need - * a copy), the packet is consumed here, and bdg_forward returns NULL. - * Otherwise, a pointer to a copy of the packet is returned. + * Forward a packet to dst -- which can be a single interface or an + * entire cluster. The src port and muted interfaces are excluded. + * src is the interface on which the packet originated (if any) and + * real_dst is the interface to which the frame was directed (only + * meaningful for outbound frames). */ static struct mbuf * -bdg_forward(struct mbuf *m0, struct ifnet *dst) +bdg_forward(struct ifnet *dst, struct mbuf *m0, + struct ifnet *real_dst, struct ifnet *src) { -#define EH_RESTORE(_m) do { \ - M_PREPEND((_m), ETHER_HDR_LEN, M_DONTWAIT); \ - if ((_m) == NULL) { \ - bdg_dropped++; \ - return NULL; \ - } \ - if (eh != mtod((_m), struct ether_header *)) \ - bcopy(&save_eh, mtod((_m), struct ether_header *), ETHER_HDR_LEN); \ - else \ - bdg_predict++; \ -} while (0); - struct ether_header *eh; - struct ifnet *src; struct ifnet *ifp, *last; - int shared = bdg_copy; /* someone else is using the mbuf */ - struct ifnet *real_dst = dst; /* real dst from ether_output */ - struct ip_fw_args args; -#ifdef PFIL_HOOKS - struct packet_filter_hook *pfh; - int rv; -#endif /* PFIL_HOOKS */ - struct ether_header save_eh; + int shared; struct mbuf *m; - DDB(quad_t ticks; ticks = rdtsc();) - - args.rule = NULL; /* did we match a firewall rule ? */ - /* Fetch state from dummynet tag, ignore others */ - for (;m0->m_type == MT_TAG; m0 = m0->m_next) - if (m0->_m_tag_id == PACKET_TAG_DUMMYNET) { - args.rule = ((struct dn_pkt *)m0)->rule; - shared = 0; /* For sure this is our own mbuf. */ - } - if (args.rule == NULL) - bdg_thru++; /* count 1st time through bdg_forward */ - + KASSERT(dst != BDG_DROP && dst != BDG_LOCAL, + ("forwarding bogus frame; dst %u", (int) dst)); /* - * The packet arrives with the Ethernet header at the front. + * We need to make a copy if the packet goes to multiple + * destinations or we've been configured explicitly to + * copy frames (is this still useful?). */ - eh = mtod(m0, struct ether_header *); + shared = (dst == BDG_BCAST || dst == BDG_MCAST) | bdg_copy; - src = m0->m_pkthdr.rcvif; - if (src == NULL) { /* packet from ether_output */ - BDG_LOCK(); - dst = bridge_dst_lookup(eh, BDG_CLUSTER(real_dst)); - BDG_UNLOCK(); + last = NULL; + if (dst == BDG_BCAST || dst == BDG_MCAST || dst == BDG_UNKNOWN) { + /* + * Scan all ports and send copies to all but the last. + */ + IFNET_RLOCK(); /* XXX replace with generation # */ + TAILQ_FOREACH(ifp, &ifnet, if_link) { + if (bridge_ifok(ifp, src, real_dst)) { + if (last) { + /* + * At this point we know two interfaces need a copy + * of the packet (last + ifp) so we must create a + * copy to handoff to last. + */ + m = m_copypacket(m0, M_DONTWAIT); + if (m == NULL) { + IFNET_RUNLOCK(); + /* XXX rate-limit */ + printf("%s: m_copypacket failed!\n", __func__); + bdg_dropped++; + return m0; /* the original is still there... */ + } + if (IF_HANDOFF(&last->if_snd, m, last)) + BDG_STAT(last, BDG_OUT); + else + bdg_dropped++; + } + last = ifp; + } + } + IFNET_RUNLOCK(); + } else { + if (bridge_ifok(dst, src, real_dst)) + last = dst; + } + if (last) { + if (shared) { /* need to copy */ + m = m_copypacket(m0, M_DONTWAIT); + if (m == NULL) { + /* XXX rate-limit */ + printf("%s: m_copypacket failed!\n", __func__); + bdg_dropped++ ; + return m0; /* the original is still there... */ + } + } else { /* consume original */ + m = m0, m0 = NULL; + } + if (IF_HANDOFF(&last->if_snd, m, last)) + BDG_STAT(last, BDG_OUT); + else + bdg_dropped++; } + return m0; +} + +/* + * Apply packet filtering rules to a packet destined for forwarding. + * This is terribly ugly because the packet filtering engines all + * expect an IP packet so we must temporarily strip the Ethernet header + * and then restore it on return. This gets complicated if this procedure + * requires reallocation of the mbuf chain and not just a simple adjustment + * of pointers to account for the header removal. + * + * Life would be much better if the packet filtering engines took a + * packet and knew to skip the fixed size Ethernet header. + */ +static struct mbuf * +bdg_filter_and_forward(struct ifnet *dst, struct mbuf *m0, struct ifnet *src) +{ +#ifdef PFIL_HOOKS + struct packet_filter_hook *pfh; +#endif /* PFIL_HOOKS */ - if (dst == BDG_DROP) { /* this should not happen */ - printf("xx bdg_forward for BDG_DROP\n"); - m_freem(m0); - bdg_dropped++; - return NULL; - } - if (dst == BDG_LOCAL) { /* this should not happen as well */ - printf("xx ouch, bdg_forward for local pkt\n"); - return m0; - } - if (dst == BDG_BCAST || dst == BDG_MCAST) { - /* need a copy for the local stack */ - shared = 1; - } + DDB(quad_t ticks; ticks = rdtsc();) /* * Do filtering in a very similar way to what is done in ip_output. @@ -931,21 +837,54 @@ * Additional restrictions may apply e.g. non-IP, short packets, * and pkts already gone through a pipe. */ - if (src != NULL && ( + if ((IPFW_LOADED && bdg_ipfw != 0) #ifdef PFIL_HOOKS - ((pfh = pfil_hook_get(PFIL_IN, &inetsw[ip_protox[IPPROTO_IP]].pr_pfh)) != NULL && bdg_ipf !=0) || + || ((pfh = pfil_hook_get(PFIL_IN, &inetsw[ip_protox[IPPROTO_IP]].pr_pfh)) != NULL && bdg_ipf !=0) #endif - (IPFW_LOADED && bdg_ipfw != 0))) { + ) { +#define EH_RESTORE(_m) do { \ + M_PREPEND((_m), ETHER_HDR_LEN, M_DONTWAIT); \ + if ((_m) == NULL) { \ + bdg_dropped++; \ + return NULL; \ + } \ + if (eh != mtod((_m), struct ether_header *)) \ + bcopy(&save_eh, mtod((_m), struct ether_header *), ETHER_HDR_LEN); \ + else \ + bdg_predict++; \ +} while (0); + struct ether_header *eh; + struct ether_header save_eh; + struct ip_fw_args args; + struct mbuf *m; + struct m_tag *mtag; + int i, shared; - int i; + shared = (dst == BDG_BCAST || dst == BDG_MCAST) | bdg_copy; - if (args.rule != NULL && fw_one_pass) - goto forward; /* packet already partially processed */ + /* + * Yech, check for dummynet state. If the packet is tagged + * and a rule has been applied then this is a subsequent pass + * through the bridge and we need to bypass processing when + * ``one pass'' is enabled. Otherwise we need to record the + * rule number for use by ipfw. + * + * This is bogus, ipfw should check itself for a previous rule + * being applied. + */ + mtag = m_tag_find(m0, PACKET_TAG_DUMMYNET, NULL); + if (mtag != NULL) { + args.rule = ((struct dn_pkt_tag *)(mtag+1))->rule; + if (args.rule != NULL && fw_one_pass) + goto forward; /* packet already partially processed */ + shared = 0; /* for sure this is our own mbuif */ + } else + args.rule = NULL; /* * i need some amt of data to be contiguous, and in case others need * the packet (shared==1) also better be in the first mbuf. */ - i = min(m0->m_pkthdr.len, max_protohdr) ; + i = min(m0->m_pkthdr.len, max_protohdr); if (shared || m0->m_len < i) { m0 = m_pullup(m0, i); if (m0 == NULL) { @@ -953,8 +892,11 @@ bdg_dropped++; return NULL; } - eh = mtod(m0, struct ether_header *); } + /* + * The packet arrives with the Ethernet header at the front. + */ + eh = mtod(m0, struct ether_header *); /* * Processing below expects the Ethernet header is stripped. @@ -983,7 +925,7 @@ do { if (pfh->pfil_func) { - rv = pfh->pfil_func(ip, ip->ip_hl << 2, src, 0, &m0); + int rv = pfh->pfil_func(ip, ip->ip_hl << 2, src, 0, &m0); if (m0 == NULL) { bdg_dropped++; return NULL; @@ -1046,12 +988,12 @@ return NULL; } } else { - m = m0 ; /* pass the original to dummynet */ - m0 = NULL ; /* and nothing back to the caller */ + m = m0; /* pass the original to dummynet */ + m0 = NULL; /* and nothing back to the caller */ } - args.oif = real_dst; - ip_dn_io_ptr(m, (i & 0xffff),DN_TO_BDG_FWD, &args); + args.oif = dst; + ip_dn_io_ptr(m, (i & 0xffff),DN_TO_BDG_FWD); return m0; } /* @@ -1060,88 +1002,169 @@ */ bdg_ipfw_drops++; return m0; +#undef EH_RESTORE } forward: /* - * Again, bring up the headers in case of shared bufs to avoid - * corruptions in the future. + * Do the actual forwarding. We pass src as the real destination + * to avoid forwarding to ourself--this will happen through the + * normal input path by returning a copy of the mbuf chain. */ - if (shared) { - int i = min(m0->m_pkthdr.len, max_protohdr); + bdg_thru++; + return bdg_forward(dst, m0, src, src); +} + +/* + * Process a packet received on the input path. We assume + * the first mbuf has the contiguous Ethernet header. + */ +static struct mbuf * +bdg_input(struct ifnet *ifp, struct mbuf *m) +{ + struct ether_header *eh = mtod(m, struct ether_header *); + int dropit, index; + struct ifnet *dst, *old; + bdg_hash_table *bt; /* location in hash table */ + + KASSERT(ifp == m->m_pkthdr.rcvif, ("rcvif mismatch")); + KASSERT(m->m_len >= sizeof(*eh), ("bogus mbuf, len %u", m->m_len)); - m0 = m_pullup(m0, i); - if (m0 == NULL) { - bdg_dropped++; - return NULL; + /* + * hash the source address + */ + BDG_LOCK(); + dropit = BDG_MUTED(ifp); + index = HASH_FN(eh->ether_shost); + bt = &BDG_CLUSTER(ifp)->ht[index]; + bt->used = 1; + old = bt->name; + if (old) { /* the entry is valid */ + if (!ETHER_ADDR_EQ(eh->ether_shost, bt->etheraddr)) { + bdg_ipfw_colls++; + bt->name = NULL; /* NB: will overwrite below */ + } else if (old != ifp) { + /* + * Found a loop. Either a machine has moved, or there + * is a misconfiguration/reconfiguration of the network. + * First, do not forward this packet! + * Record the relocation anyways; then, if loops persist, + * suspect a reconfiguration and disable forwarding + * from the old interface. + */ + bt->name = ifp; /* relocate address */ + printf("-- loop (%d) %6D to %s%d from %s%d (%s)\n", + bdg_loops, eh->ether_shost, ".", + ifp->if_name, ifp->if_unit, + old->if_name, old->if_unit, + BDG_MUTED(old) ? "muted":"active"); + dropit = 1; + if (!BDG_MUTED(old)) { + if (bdg_loops++ > 10) + BDG_MUTE(old); + } } - /* NB: eh is not used below; no need to recalculate it */ } /* - * now real_dst is used to determine the cluster where to forward. - * For packets coming from ether_input, this is the one of the 'src' - * interface, whereas for locally generated packets (src==NULL) it - * is the cluster of the original destination interface, which - * was already saved into real_dst. + * now write the source address into the table */ - if (src != NULL) - real_dst = src; + if (bt->name == NULL) { + DPRINTF(("%s: new addr %6D at %d for %s%d\n", + __func__, eh->ether_shost, ".", index, ifp->if_name, ifp->if_unit)); + ETHER_ADDR_COPY(bt->etheraddr, eh->ether_shost); + bt->name = ifp; + } + dst = bridge_dst_lookup(eh, BDG_CLUSTER(ifp)); + BDG_UNLOCK(); + + DPRINTF(("%s: %6D ->%6D ty 0x%04x dst %s%d\n", __func__, + eh->ether_shost, ".", + eh->ether_dhost, ".", + ntohs(eh->ether_type), + (dst <= BDG_FORWARD) ? bdg_dst_names[(int)dst] : + dst->if_name, + (dst <= BDG_FORWARD) ? 0 : dst->if_unit)); - last = NULL; - if (dst == BDG_BCAST || dst == BDG_MCAST || dst == BDG_UNKNOWN) { + /* + * bridge_dst_lookup can return the following values: + * BDG_BCAST, BDG_MCAST, BDG_LOCAL, BDG_UNKNOWN, BDG_DROP, ifp. + * For muted interfaces, or when we detect a loop, the first 3 are + * changed in BDG_LOCAL (we still listen to incoming traffic), + * and others to BDG_DROP (no use for the local host). + * Also, for incoming packets, ifp is changed to BDG_DROP if ifp == src. + * These changes are not necessary for outgoing packets from ether_output(). + */ + BDG_STAT(ifp, BDG_IN); + switch ((uintptr_t)dst) { + case (uintptr_t)BDG_UNKNOWN: + /* + * Unknown destination, if interface is muted, drop + * the frame. Otherwise, treat it as local. + */ + if (dropit) + goto drop; + /* fall thru... */ + case (uintptr_t)BDG_LOCAL: /* known local frame */ + BDG_STAT(ifp, dst); + break; + case (uintptr_t)BDG_BCAST: /* broadcast frame */ + case (uintptr_t)BDG_MCAST: /* multicast frame */ + /* + * Broad/multicast. Forward to cluster and + * return a copy for local dispatch. + */ + BDG_STAT(ifp, dst); + m = bdg_filter_and_forward(dst, m, ifp); + if (m == NULL) + if_printf(ifp, "bridge dropped %s packet\n", + dst == BDG_BCAST ? "broadcast" : "multicast"); + break; + case (uintptr_t)BDG_DROP: /* discard/drop frame */ + goto drop; + default: /* forward to specified interface */ /* - * Scan all ports and send copies to all but the last. + * Unicast; if to ourself or interface is muted, discard. */ - IFNET_RLOCK(); /* XXX replace with generation # */ - TAILQ_FOREACH(ifp, &ifnet, if_link) { - if (bridge_ifok(ifp, src, real_dst)) { - if (last) { - /* - * At this point we know two interfaces need a copy - * of the packet (last + ifp) so we must create a - * copy to handoff to last. - */ - m = m_copypacket(m0, M_DONTWAIT); - if (m == NULL) { - IFNET_RUNLOCK(); - printf("%s: , m_copypacket failed!\n", __func__); - bdg_dropped++; - return m0; /* the original is still there... */ - } - if (IF_HANDOFF(&last->if_snd, m, last)) - BDG_STAT(last, BDG_OUT); - else - bdg_dropped++; - } - last = ifp; - } - } - IFNET_RUNLOCK(); - } else { - if (bridge_ifok(dst, src, real_dst)) - last = dst; + if (dst == ifp || dropit) + goto drop; + BDG_STAT(ifp, BDG_FORWARD); + m = bdg_filter_and_forward(dst, m, ifp); + goto drop1; /* XXX must discard ourself */ } - if (last) { - if (shared) { /* need to copy */ - m = m_copypacket(m0, M_DONTWAIT); - if (m == NULL) { - printf("%s: sorry, m_copypacket failed!\n", __func__); - bdg_dropped++ ; - return m0; /* the original is still there... */ - } - } else { /* consume original */ - m = m0, m0 = NULL; - } - if (IF_HANDOFF(&last->if_snd, m, last)) - BDG_STAT(last, BDG_OUT); - else - bdg_dropped++; + return m; /* return for local processing */ +drop: + BDG_STAT(ifp, BDG_DROP); +drop1: + if (m != NULL) + m_freem(m); + return NULL; +} + +/* + * Forward a packet from the output path. The interface specified + * is where the frame is destined; we forward it to the whole cluster. + * We assume the first mbuf has the contiguous Ethernet header. + */ +static struct mbuf * +bdg_output(struct ifnet *ifp, struct mbuf *m) +{ + struct ether_header *eh = mtod(m, struct ether_header *); + struct ifnet *dst; + + KASSERT(m->m_len >= sizeof(*eh), ("bogus mbuf, len %u", m->m_len)); + + /* XXX LOR */ + BDG_LOCK(); + dst = bridge_dst_lookup(eh, BDG_CLUSTER(ifp)); + BDG_UNLOCK(); + if (dst == BDG_LOCAL) { /* this should not happen */ + printf("xx ouch, bdg_forward for local pkt\n"); + return m; } - - DDB(bdg_fw_ticks += (u_long)(rdtsc() - ticks) ; bdg_fw_count++ ; - if (bdg_fw_count != 0) bdg_fw_avg = bdg_fw_ticks/bdg_fw_count; ) - return m0; -#undef EH_RESTORE + m = bdg_forward(dst, m, ifp, NULL); /* NB: nul src is ok */ + if (m) + m_freem(m); + return NULL; } /* @@ -1166,8 +1189,8 @@ bzero(&bdg_stats, sizeof(bdg_stats)); - bridge_in_ptr = bridge_in; - bdg_forward_ptr = bdg_forward; + bridge_in_ptr = bdg_input; + bridge_out_ptr = bdg_output; bdgtakeifaces_ptr = reconfigure_bridge; bdgtakeifaces_ptr(); /* XXX does this do anything? */ @@ -1177,16 +1200,21 @@ return 0 ; } -#ifdef KLD_MODULE static void bdgdestroy(void) { + BDG_LOCK(); + do_bridge = 0; bridge_in_ptr = NULL; - bdg_forward_ptr = NULL; + bridge_out_ptr = NULL; + callout_stop(&bdg_callout); + BDG_UNLOCK(); + bdgtakeifaces_ptr = NULL; - callout_stop(&bdg_callout); + BDG_LOCK(); bridge_off(); + BDG_UNLOCK(); if (clusters) free(clusters, M_IFADDR); @@ -1194,9 +1222,9 @@ free(ifp2sc, M_IFADDR); ifp2sc = NULL; } + /* XXX race with bdg_timeout? */ mtx_destroy(&bdg_mtx); } -#endif /* KLD_MODULE */ /* * initialization code, both for static and dynamic loading. @@ -1204,28 +1232,19 @@ static int bridge_modevent(module_t mod, int type, void *unused) { - int err = 0 ; + int err; switch (type) { case MOD_LOAD: - if (BDG_LOADED) { - err = EEXIST; - break ; - } err = bdginit(); break; case MOD_UNLOAD: -#if !defined(KLD_MODULE) - printf("bridge statically compiled, cannot unload\n"); - err = EINVAL ; -#else /* XXX lock */ - do_bridge = 0; bdgdestroy(); -#endif + err = 0; break; default: - err = EINVAL ; + err = EINVAL; break; } return err; ==== //depot/projects/tagcleanup/sys/net/bridge.h#2 (text+ko) ==== @@ -101,12 +101,12 @@ #define BDG_STAT(ifp, type) bdg_stats.s[ifp->if_index].p_in[(uintptr_t)type]++ #ifdef _KERNEL -typedef struct ifnet *bridge_in_t(struct ifnet *, struct ether_header *); +typedef struct mbuf *bridge_in_t(struct ifnet *, struct mbuf *); /* bdg_forward frees the mbuf if necessary, returning null */ -typedef struct mbuf *bdg_forward_t(struct mbuf *, struct ifnet *); +typedef struct mbuf *bridge_out_t(struct ifnet *, struct mbuf *); typedef void bdgtakeifaces_t(void); extern bridge_in_t *bridge_in_ptr; -extern bdg_forward_t *bdg_forward_ptr; +extern bridge_out_t *bridge_out_ptr; extern bdgtakeifaces_t *bdgtakeifaces_ptr; #define BDG_LOADED (bdgtakeifaces_ptr != NULL) ==== //depot/projects/tagcleanup/sys/net/if_ethersubr.c#2 (text+ko) ==== @@ -107,7 +107,7 @@ /* bridge support */ int do_bridge; bridge_in_t *bridge_in_ptr; -bdg_forward_t *bdg_forward_ptr; +bridge_out_t *bridge_out_ptr; bdgtakeifaces_t *bdgtakeifaces_ptr; struct bdg_softc *ifp2sc; @@ -120,10 +120,7 @@ #define senderr(e) do { error = (e); goto bad;} while (0) #define IFP2AC(IFP) ((struct arpcom *)IFP) -int -ether_ipfw_chk(struct mbuf **m0, struct ifnet *dst, - struct ip_fw **rule, int shared); -static int ether_ipfw; +ether_fw_chk_t *ether_fw_chk_ptr; /* * Ethernet output routine. @@ -141,7 +138,7 @@ { short type; int error = 0, hdrcmplt = 0; - u_char esrc[6], edst[6]; + u_char esrc[ETHER_ADDR_LEN], edst[ETHER_ADDR_LEN]; struct rtentry *rt; struct ether_header *eh; int loop_copy = 0; @@ -229,13 +226,13 @@ case pseudo_AF_HDRCMPLT: hdrcmplt = 1; eh = (struct ether_header *)dst->sa_data; - (void)memcpy(esrc, eh->ether_shost, sizeof (esrc)); + (void)memcpy(esrc, eh->ether_shost, ETHER_ADDR_LEN); /* FALLTHROUGH */ case AF_UNSPEC: loop_copy = -1; /* if this is for us, don't do it */ eh = (struct ether_header *)dst->sa_data; - (void)memcpy(edst, eh->ether_dhost, sizeof (edst)); + (void)memcpy(edst, eh->ether_dhost, ETHER_ADDR_LEN); type = eh->ether_type; break; @@ -252,9 +249,8 @@ if (m == 0) senderr(ENOBUFS); eh = mtod(m, struct ether_header *); - (void)memcpy(&eh->ether_type, &type, - sizeof(eh->ether_type)); - (void)memcpy(eh->ether_dhost, edst, sizeof (edst)); + (void)memcpy(&eh->ether_type, &type, sizeof(eh->ether_type)); + (void)memcpy(eh->ether_dhost, edst, ETHER_ADDR_LEN); if (hdrcmplt) (void)memcpy(eh->ether_shost, esrc, sizeof(eh->ether_shost)); @@ -282,7 +278,7 @@ if ((m->m_flags & M_BCAST) || (loop_copy > 0)) { struct mbuf *n; - if ((n = m_copy(m, 0, (int)M_COPYALL)) != NULL) { + if ((n = m_copypacket(m, M_DONTWAIT)) != NULL) { n->m_pkthdr.csum_flags |= csum_flags; if (csum_flags & CSUM_DATA_VALID) n->m_pkthdr.csum_data = 0xffff; @@ -323,135 +319,27 @@ int ether_output_frame(struct ifnet *ifp, struct mbuf *m) { - struct ip_fw *rule = NULL; - - /* Extract info from dummynet tag, ignore others */ - for (; m->m_type == MT_TAG; m = m->m_next) - if (m->m_flags == PACKET_TAG_DUMMYNET) - rule = ((struct dn_pkt *)m)->rule; - - if (rule == NULL && BDG_ACTIVE(ifp)) { - /* - * Beware, the bridge code notices the null rcvif and - * uses that identify that it's being called from - * ether_output as opposd to ether_input. Yech. - */ - m->m_pkthdr.rcvif = NULL; - m = bdg_forward_ptr(m, ifp); - if (m != NULL) - m_freem(m); - return (0); - } - if (IPFW_LOADED && ether_ipfw != 0) { - if (ether_ipfw_chk(&m, ifp, &rule, 0) == 0) { - if (m) { - m_freem(m); - return ENOBUFS; /* pkt dropped */ - } else - return 0; /* consumed e.g. in a pipe */ - } - } + int error; /* - * Queue message on interface, update output statistics if - * successful, and start output if interface not yet active. + * Pass to bridge if active. */ - return (IF_HANDOFF(&ifp->if_snd, m, ifp) ? 0 : ENOBUFS); -} - -/* - * ipfw processing for ethernet packets (in and out). - * The second parameter is NULL from ether_demux, and ifp from - * ether_output_frame. This section of code could be used from - * bridge.c as well as long as we use some extra info - * to distinguish that case from ether_output_frame(); - */ -int -ether_ipfw_chk(struct mbuf **m0, struct ifnet *dst, - struct ip_fw **rule, int shared) -{ - struct ether_header *eh; - struct ether_header save_eh; - struct mbuf *m; - int i; - struct ip_fw_args args; - - if (*rule != NULL && fw_one_pass) - return 1; /* dummynet packet, already partially processed */ - + if (bridge_out_ptr && (m = (*bridge_out_ptr)(ifp, m)) == NULL) + return 0; /* - * I need some amt of data to be contiguous, and in case others need - * the packet (shared==1) also better be in the first mbuf. + * Pass to ipfw if active. Note that we explicitly return + * an error code returned to us by ipfw when the packet is + * discarded. This is mostly a hack for when dummynet consumes + * packets inside a pipe and we want the transmission to look + * successful. It's not clear if this is necessary. */ - m = *m0; - i = min( m->m_pkthdr.len, max_protohdr); - if ( shared || m->m_len < i) { - m = m_pullup(m, i); - if (m == NULL) { - *m0 = m; - return 0; - } - } - eh = mtod(m, struct ether_header *); - save_eh = *eh; /* save copy for restore below */ - m_adj(m, ETHER_HDR_LEN); /* strip ethernet header */ - - args.m = m; /* the packet we are looking at */ - args.oif = dst; /* destination, if any */ - args.divert_rule = 0; /* we do not support divert yet */ - args.rule = *rule; /* matching rule to restart */ - args.next_hop = NULL; /* we do not support forward yet */ - args.eh = &save_eh; /* MAC header for bridged/MAC packets */ - i = ip_fw_chk_ptr(&args); - m = args.m; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Aug 30 14:57:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 78F0816A4C1; Sat, 30 Aug 2003 14:57:16 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 23D8216A4BF for ; Sat, 30 Aug 2003 14:57:16 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4BB2243FA3 for ; Sat, 30 Aug 2003 14:57:15 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7ULvF0U072336 for ; Sat, 30 Aug 2003 14:57:15 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7ULvEBT072333 for perforce@freebsd.org; Sat, 30 Aug 2003 14:57:14 -0700 (PDT) Date: Sat, 30 Aug 2003 14:57:14 -0700 (PDT) Message-Id: <200308302157.h7ULvEBT072333@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 37246 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Aug 2003 21:57:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=37246 Change 37246 by sam@sam_ebb on 2003/08/30 14:56:51 checkpoint locking: untested Affected files ... .. //depot/projects/netperf/sys/net/if_vlan.c#2 edit Differences ... ==== //depot/projects/netperf/sys/net/if_vlan.c#2 (text+ko) ==== @@ -104,6 +104,18 @@ static MALLOC_DEFINE(M_VLAN, "vlan", "802.1Q Virtual LAN Interface"); static LIST_HEAD(, ifvlan) ifv_list; +/* + * Locking: one lock is used to guard both the ifv_list and modification + * to vlan data structures. We are rather conservative here; probably + * more than necessary. + */ +static struct mtx ifv_mtx; +#define VLAN_LOCK_INIT() mtx_init(&ifv_mtx, "vlan", NULL, MTX_DEF) +#define VLAN_LOCK_DESTROY() mtx_destroy(&ifv_mtx) +#define VLAN_LOCK_ASSERT() mtx_assert(&ifv_mtx, MA_OWNED) +#define VLAN_LOCK() mtx_lock(&ifv_mtx) +#define VLAN_UNLOCK() mtx_lock(&ifv_mtx) + static int vlan_clone_create(struct if_clone *, int); static void vlan_clone_destroy(struct ifnet *); static void vlan_start(struct ifnet *ifp); @@ -135,6 +147,8 @@ struct sockaddr_dl sdl; int error; + VLAN_LOCK_ASSERT(); + /* Find the parent. */ sc = ifp->if_softc; ifp_p = sc->ifv_p; @@ -204,6 +218,7 @@ switch (type) { case MOD_LOAD: LIST_INIT(&ifv_list); + VLAN_LOCK_INIT(); vlan_input_p = vlan_input; if_clone_attach(&vlan_cloner); break; @@ -212,6 +227,7 @@ vlan_input_p = NULL; while (!LIST_EMPTY(&ifv_list)) vlan_clone_destroy(&LIST_FIRST(&ifv_list)->ifv_if); + VLAN_LOCK_DESTROY(); break; } return 0; @@ -230,16 +246,11 @@ { struct ifvlan *ifv; struct ifnet *ifp; - int s; ifv = malloc(sizeof(struct ifvlan), M_VLAN, M_WAITOK | M_ZERO); ifp = &ifv->ifv_if; SLIST_INIT(&ifv->vlan_mc_listhead); - s = splnet(); - LIST_INSERT_HEAD(&ifv_list, ifv, ifv_list); - splx(s); - ifp->if_softc = ifv; ifp->if_name = "vlan"; ifp->if_unit = unit; @@ -258,6 +269,10 @@ ifp->if_type = IFT_L2VLAN; ifp->if_hdrlen = ETHER_VLAN_ENCAP_LEN; + VLAN_LOCK(); + LIST_INSERT_HEAD(&ifv_list, ifv, ifv_list); + VLAN_UNLOCK(); + return (0); } @@ -265,12 +280,11 @@ vlan_clone_destroy(struct ifnet *ifp) { struct ifvlan *ifv = ifp->if_softc; - int s; - s = splnet(); + VLAN_LOCK(); LIST_REMOVE(ifv, ifv_list); vlan_unconfig(ifp); - splx(s); + VLAN_UNLOCK(); ether_ifdetach(ifp); @@ -427,16 +441,18 @@ } } - for (ifv = LIST_FIRST(&ifv_list); ifv != NULL; - ifv = LIST_NEXT(ifv, ifv_list)) + VLAN_LOCK(); + LIST_FOREACH(ifv, &ifv_list, ifv_list) if (ifp == ifv->ifv_p && tag == ifv->ifv_tag) break; if (ifv == NULL || (ifv->ifv_if.if_flags & IFF_UP) == 0) { + VLAN_UNLOCK(); m_freem(m); ifp->if_noproto++; return; } + VLAN_UNLOCK(); /* XXX extend below? */ if (mtag == NULL) { /* @@ -463,6 +479,8 @@ struct ifaddr *ifa1, *ifa2; struct sockaddr_dl *sdl1, *sdl2; + VLAN_LOCK_ASSERT(); + if (p->if_data.ifi_type != IFT_ETHER) return EPROTONOSUPPORT; if (ifv->ifv_p) @@ -558,6 +576,8 @@ struct ifnet *p; int error; + VLAN_LOCK_ASSERT(); + ifv = ifp->if_softc; p = ifv->ifv_p; @@ -623,6 +643,8 @@ struct ifvlan *ifv = ifp->if_softc; int error = 0; + VLAN_LOCK_ASSERT(); + if ((ifp->if_flags & IFF_PROMISC) != 0) { if ((ifv->ifv_flags & IFVF_PROMISC) == 0) { error = ifpromisc(ifv->ifv_p, 1); @@ -680,8 +702,11 @@ break; case SIOCGIFMEDIA: + VLAN_LOCK(); if (ifv->ifv_p != NULL) { - error = (ifv->ifv_p->if_ioctl)(ifv->ifv_p, SIOCGIFMEDIA, data); + error = (*ifv->ifv_p->if_ioctl)(ifv->ifv_p, + SIOCGIFMEDIA, data); + VLAN_UNLOCK(); /* Limit the result to the parent's current config. */ if (error == 0) { struct ifmediareq *ifmr; @@ -694,8 +719,10 @@ sizeof(int)); } } - } else + } else { + VLAN_UNLOCK(); error = EINVAL; + } break; case SIOCSIFMEDIA: @@ -706,6 +733,7 @@ /* * Set the interface MTU. */ + VLAN_LOCK(); if (ifv->ifv_p != NULL) { if (ifr->ifr_mtu > (ifv->ifv_p->if_mtu - ifv->ifv_mtufudge) || @@ -716,6 +744,7 @@ ifp->if_mtu = ifr->ifr_mtu; } else error = EINVAL; + VLAN_UNLOCK(); break; case SIOCSETVLAN: @@ -723,12 +752,11 @@ if (error) break; if (vlr.vlr_parent[0] == '\0') { + VLAN_LOCK(); vlan_unconfig(ifp); - if (ifp->if_flags & IFF_UP) { - int s = splimp(); + VLAN_UNLOCK(); + if (ifp->if_flags & IFF_UP) if_down(ifp); - splx(s); - } ifp->if_flags &= ~IFF_RUNNING; break; } @@ -745,23 +773,29 @@ error = EINVAL; break; } + VLAN_LOCK(); error = vlan_config(ifv, p); - if (error) + if (error) { + VLAN_UNLOCK(); break; + } ifv->ifv_tag = vlr.vlr_tag; ifp->if_flags |= IFF_RUNNING; /* Update promiscuous mode, if necessary. */ vlan_set_promisc(ifp); + VLAN_UNLOCK(); break; case SIOCGETVLAN: bzero(&vlr, sizeof vlr); + VLAN_LOCK(); if (ifv->ifv_p) { snprintf(vlr.vlr_parent, sizeof(vlr.vlr_parent), "%s%d", ifv->ifv_p->if_name, ifv->ifv_p->if_unit); vlr.vlr_tag = ifv->ifv_tag; } + VLAN_UNLOCK(); error = copyout(&vlr, ifr->ifr_data, sizeof vlr); break; @@ -770,13 +804,17 @@ * For promiscuous mode, we enable promiscuous mode on * the parent if we need promiscuous on the VLAN interface. */ + VLAN_LOCK(); if (ifv->ifv_p != NULL) error = vlan_set_promisc(ifp); + VLAN_UNLOCK(); break; case SIOCADDMULTI: case SIOCDELMULTI: + VLAN_LOCK(); error = vlan_setmulti(ifp); + VLAN_UNLOCK(); break; default: error = EINVAL; From owner-p4-projects@FreeBSD.ORG Sat Aug 30 16:09:46 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 792F716A4C1; Sat, 30 Aug 2003 16:09:46 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 37F5616A4BF for ; Sat, 30 Aug 2003 16:09:46 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B72243F85 for ; Sat, 30 Aug 2003 16:09:44 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7UN9i0U077100 for ; Sat, 30 Aug 2003 16:09:44 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7UN9iRq077097 for perforce@freebsd.org; Sat, 30 Aug 2003 16:09:44 -0700 (PDT) Date: Sat, 30 Aug 2003 16:09:44 -0700 (PDT) Message-Id: <200308302309.h7UN9iRq077097@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37249 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Aug 2003 23:09:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=37249 Change 37249 by marcel@marcel_nfs on 2003/08/30 16:09:42 o Properly define DEFAULT_RCLK for the one system I know about. o Add uart_getmreg() and uart_setmreg() to abstract the multiplexing of the registers. This cannot be moved to uart.h, because it's hardware specific. o Implement z8530_divisor() to calculate the BRG time constant from the baudrate. o Implement z8530_param() to set the serial line mode. Note that the RTS and DTR signals need to be given to this function because we cannot obtain their current value and we write the register that defines them. We simply move the problem to the caller. o Implement z8530_init() to initialize a channel suitable for low-level console handling. We only need to add the initialization of interrupts to be complete. o Implement z8530_bus_param() in terms of z8530_param). We only need to preserve RTS and DTR by keeping their state in the softc. o Implement z8530_bus_probe(). Uses z8530_probe(), but otherwise just sets the device description. Replace the copied uart_dev_z8530.h file with my own. The register constants were inconsistent with the register bit definitions. The bits had the WRx or RRx prefix, where x is the register number, but it didn't correlate to the constant used for the register itself. My constants are much more cryptic. You probably wouldn't understand much of them (BES_CTS, BES_DCD and the likes should not be too hard to guess), without the datasheet. Then again, you cannot understand the behaviour of the chip without the datasheet anyway, so it's in perfect harmony. More constants are added on a need to have basis. We're ready to flesh-out the hardware I/F methods used for regular multi-user operation. Affected files ... .. //depot/projects/uart/dev/uart/uart_dev_z8530.c#6 edit .. //depot/projects/uart/dev/uart/uart_dev_z8530.h#3 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_dev_z8530.c#6 (text+ko) ==== @@ -40,7 +40,104 @@ #include "uart_if.h" -#define DEFAULT_RCLK 1843200 +#define DEFAULT_RCLK 307200 + +#define IS_CHANNEL_A(bas) (((bas)->bsh & 7) != 0) +#define IS_CHANNEL_B(bas) (((bas)->bsh & 7) == 0) + +/* Multiplexed I/O. */ +static __inline void +uart_setmreg(struct uart_bas *bas, int reg, int val) +{ + + uart_setreg(bas, REG_CTRL, reg); + uart_barrier(bas); + uart_setreg(bas, REG_CTRL, val); +} + +static __inline uint8_t +uart_getmreg(struct uart_bas *bas, int reg) +{ + + uart_setreg(bas, REG_CTRL, reg); + uart_barrier(bas); + return (uart_getreg(bas, REG_CTRL)); +} + +static int +z8530_divisor(int rclk, int baudrate) +{ + int act_baud, divisor, error; + + if (baudrate == 0) + return (0); + + divisor = (rclk + baudrate) / (baudrate << 1) - 2; + if (divisor >= 65536) + return (0); + act_baud = rclk / 2 / (divisor + 2); + + /* 10 times error in percent: */ + error = ((act_baud - baudrate) * 2000 / baudrate + 1) >> 1; + + /* 3.0% maximum error tolerance: */ + if (error < -30 || error > 30) + return (0); + + return (divisor); +} + +static int +z8530_param(struct uart_bas *bas, int baudrate, int databits, int stopbits, + int parity, int tpc) +{ + int divisor; + uint8_t rpc, mpm; + + rpc = RPC_RXE; + mpm = MPM_CM16; + tpc = TPC_TXE | (tpc & (TPC_DTR | TPC_RTS)); + + if (databits >= 8) { + rpc |= RPC_RB8; + tpc |= TPC_TB8; + } else if (databits == 7) { + rpc |= RPC_RB7; + tpc |= TPC_TB7; + } else if (databits == 6) { + rpc |= RPC_RB6; + tpc |= TPC_TB6; + } else { + rpc |= RPC_RB5; + tpc |= TPC_TB5; + } + mpm |= (stopbits > 1) ? MPM_SB2 : MPM_SB1; + switch (parity) { + case UART_PARITY_EVEN: mpm |= MPM_PE | MPM_EVEN; break; + case UART_PARITY_NONE: break; + case UART_PARITY_ODD: mpm |= MPM_PE; break; + default: return (EINVAL); + } + + /* Set baudrate. */ + if (baudrate > 0) { + divisor = z8530_divisor(bas->rclk, baudrate); + if (divisor == 0) + return (EINVAL); + uart_setmreg(bas, WR_TCL, divisor & 0xff); + uart_barrier(bas); + uart_setmreg(bas, WR_TCH, (divisor >> 8) & 0xff); + uart_barrier(bas); + } + + uart_setmreg(bas, WR_RPC, rpc); + uart_barrier(bas); + uart_setmreg(bas, WR_MPM, mpm); + uart_barrier(bas); + uart_setmreg(bas, WR_TPC, tpc); + uart_barrier(bas); + return (0); +} /* * Low-level UART interface. @@ -75,6 +172,23 @@ if (bas->rclk == 0) bas->rclk = DEFAULT_RCLK; + + /* Assume we don't need to perform a full hardware reset. */ + uart_setmreg(bas, WR_MIC, ((IS_CHANNEL_A(bas)) ? MIC_CRA : MIC_CRB) | + MIC_MIE | MIC_NV); + uart_barrier(bas); + /* Set clock sources and enable BRG. */ + uart_setmreg(bas, WR_CMC, CMC_RC_BRG | CMC_TC_BRG); + uart_setmreg(bas, WR_MCB2, MCB2_PCLK | MCB2_BRGE); + uart_barrier(bas); + /* Set data encoding. */ + uart_setmreg(bas, WR_MCB1, MCB1_NRZ); + uart_barrier(bas); + + z8530_param(bas, baudrate, databits, stopbits, parity, + TPC_DTR | TPC_RTS); + + /* WR1, WR15 */ } static void @@ -86,7 +200,7 @@ z8530_putc(struct uart_bas *bas, int c) { - while (!(uart_getreg(bas, REG_CTRL) & RR0_TX_READY)) + while (!(uart_getmreg(bas, RR_BES) & BES_TXE)) ; uart_setreg(bas, REG_DATA, c); uart_barrier(bas); @@ -96,7 +210,7 @@ z8530_poll(struct uart_bas *bas) { - if (!(uart_getreg(bas, REG_CTRL) & RR0_RX_READY)) + if (!(uart_getmreg(bas, RR_BES) & BES_RXA)) return (-1); return (uart_getreg(bas, REG_DATA)); } @@ -105,7 +219,7 @@ z8530_getc(struct uart_bas *bas) { - while (!(uart_getreg(bas, REG_CTRL) & RR0_RX_READY)) + while (!(uart_getmreg(bas, RR_BES) & BES_RXA)) ; return (uart_getreg(bas, REG_DATA)); } @@ -153,6 +267,14 @@ static int z8530_bus_attach(struct uart_softc *sc) { + struct uart_bas *bas; + + bas = &sc->sc_bas; + if (sc->sc_sysdev == NULL) + z8530_init(bas, 9600, 8, 1, UART_PARITY_NONE); + + sc->sc_rxfifosz = 32; + sc->sc_txfifosz = 32; return (0); } @@ -189,14 +311,28 @@ z8530_bus_param(struct uart_softc *sc, int baudrate, int databits, int stopbits, int parity) { + struct uart_bas *bas; - return (0); + bas = &sc->sc_bas; + return (z8530_param(bas, baudrate, databits, stopbits, parity, 0)); } static int z8530_bus_probe(struct uart_softc *sc) { + char buf[80]; + const char *ch; + int error; + error = z8530_probe(&sc->sc_bas); + if (error) + return (error); + + /* Assume the address range is naturally aligned. */ + ch = IS_CHANNEL_A(&sc->sc_bas) ? "A" : "B"; + + snprintf(buf, sizeof(buf), "z8530, channel %s", ch); + device_set_desc_copy(sc->sc_dev, buf); return (0); } ==== //depot/projects/uart/dev/uart/uart_dev_z8530.h#3 (text+ko) ==== @@ -1,93 +1,33 @@ -/* $NetBSD: z8530reg.h,v 1.8 1996/12/13 21:02:39 gwr Exp $ */ - /* - * Copyright (c) 1992, 1993 - * The Regents of the University of California. All rights reserved. - * - * This software was developed by the Computer Systems Engineering group - * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and - * contributed to Berkeley. + * Copyright (c) 2003 Marcel Moolenaar + * All rights reserved. * - * All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Lawrence Berkeley Laboratory. - * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: + * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * @(#)zsreg.h 8.1 (Berkeley) 6/11/93 - * - * $FreeBSD: src/sys/dev/zs/z8530reg.h,v 1.2 2003/01/08 23:36:16 jake Exp $ + * $FreeBSD$ */ -/* - * Zilog SCC registers, as implemented on the Sun-4c. - * - * Each Z8530 implements two channels (called `a' and `b'). - * - * The damnable chip was designed to fit on Z80 I/O ports, and thus - * has everything multiplexed out the wazoo. We have to select - * a register, then read or write the register, and so on. Worse, - * the parameter bits are scattered all over the register space. - * This thing is full of `miscellaneous' control registers. - * - * Worse yet, the registers have incompatible functions on read - * and write operations. We describe the registers below according - * to whether they are `read registers' (RR) or `write registers' (WR). - * As if this were not enough, some of the channel B status bits show - * up in channel A, and vice versa. The blasted thing shares write - * registers 2 and 9 across both channels, and reads registers 2 and 3 - * differently for the two channels. We can, however, ignore this much - * of the time. - * - * This file also includes flags for the Z85C30 and Z85230 enhanced scc. - * The CMOS 8530 includes extra SDLC functionality, and is used in a - * number of Macs (often in the Z85C80, an 85C30 combined w/ a SCSI - * controller). -wrs - * - * Some of the names in this files were chosen to make the hsis driver - * work unchanged (which means that they will match some in SunOS). - * - * `S.C.' stands for Special Condition, which is any of these: - * receiver overrun (aka silo overflow) - * framing error (missing stop bit, etc) - * end of frame (in synchronous modes) - * parity error (when `parity error is S.C.' is set) - * - * Registers with only a single `numeric value' get a name. - * Other registers hold bits and are only numbered; the bit - * definitions imply the register number (see below). - * - * We never use the receive and transmit data registers as - * indirects (choosing instead the zc_data register), so they - * are not defined here. - */ +#ifndef _DEV_UART_DEV_Z8530_H_ +#define _DEV_UART_DEV_Z8530_H_ /* * Channel B control: 0 @@ -98,365 +38,144 @@ #define REG_CTRL 0 #define REG_DATA 2 -#define RR_IVEC 2 /* interrupt vector (channel 0) */ -#define RR_IPEND 3 /* interrupt pending (ch. 0 only) */ -#define RR_TXSYNC 6 /* sync transmit char (monosync mode) */ -#define RR_RXSYNC 7 /* sync receive char (monosync mode) */ -#define RR_SYNCLO 6 /* sync low byte (bisync mode) */ -#define RR_SYNCHI 7 /* sync high byte (bisync mode) */ -#define RR_SDLC_ADDR 6 /* SDLC address (SDLC mode) */ -#define RR_SDLC_FLAG 7 /* SDLC flag 0x7E (SDLC mode) */ -#define RR_BAUDLO 12 /* baud rate generator (low half) */ -#define RR_BAUDHI 13 /* baud rate generator (high half) */ -#define RR_ENHANCED 14 /* read address of WR7' - yes, it's not 7!*/ +/* Write registers. */ +#define WR_CR 0 /* Command Register. */ +#define WR_IDTM 1 /* Interrupt and Data Transfer Mode. */ +#define WR_IV 2 /* Interrupt Vector (shared). */ +#define WR_RPC 3 /* Receive Parameters and Control. */ +#define WR_MPM 4 /* Miscellaneous Parameters and Modes. */ +#define WR_TPC 5 /* Transmit Parameters and Control. */ +#define WR_SCAF 6 /* Sync Character or (SDLC) Address Field. */ +#define WR_SCF 7 /* Sync Character or (SDCL) Flag. */ +#define WR_EFC 7 /* Extended Feature and FIFO Control. */ +#define WR_TB 8 /* Transmit Buffer. */ +#define WR_MIC 9 /* Master Interrupt Control (shared). */ +#define WR_MCB1 10 /* Miscellaneous Control Bits (part 1 :-). */ +#define WR_CMC 11 /* Clock Mode Control. */ +#define WR_TCL 12 /* BRG Time Constant Low. */ +#define WR_TCH 13 /* BRG Time Constant High. */ +#define WR_MCB2 14 /* Miscellaneous Control Bits (part 2 :-). */ +#define WR_IC 15 /* Interrupt Control. */ -#define WR_IVEC 2 /* interrupt vector (shared) */ -#define WR_TXSYNC 6 /* sync transmit char (monosync mode) */ -#define WR_RXSYNC 7 /* sync receive char (monosync mode) */ -#define WR_SYNCLO 6 /* sync low byte (bisync mode) */ -#define WR_SYNCHI 7 /* sync high byte (bisync mode) */ -#define WR_SDLC_ADDR 6 /* SDLC address (SDLC mode) */ -#define WR_SDLC_FLAG 7 /* SDLC flag 0x7E (SDLC mode) */ -#define WR_BAUDLO 12 /* baud rate generator (low half) */ -#define WR_BAUDHI 13 /* baud rate generator (high half) */ -#define WR_ENHANCED 7 /* write address of WR7' */ +/* Read registers. */ +#define RR_BES 0 /* Buffer and External Status. */ +#define RR_SRC 1 /* Special Receive Condition. */ +#define RR_IV 2 /* Interrupt Vector. */ +#define RR_IP 3 /* Interrupt Pending (ch A only). */ +#define RR_MPM 4 /* Miscellaneous Parameters and Modes. */ +#define RR_TPC 5 /* Transmit Parameters and Control. */ +#define RR_BCL 6 /* Byte Count Low. */ +#define RR_BCH 7 /* Byte Count High. */ +#define RR_RB 8 /* Receive Buffer. */ +#define RR_RPC 9 /* Receive Parameters and Contro. */ +#define RR_MSB 10 /* Miscellaneous Status Bits. */ +#define RR_MCB1 11 /* Miscellaneous Control Bits (part 1). */ +#define RR_TCL 12 /* BRG Time Constant Low. */ +#define RR_TCH 13 /* BRG Time Constant High. */ +#define RR_EFC 14 /* Extended Feature and FIFO Control. */ +#define RR_IC 15 /* Interrupt Control. */ -/* - * Registers 0 through 7 may be written with any one of the 8 command - * modifiers, and/or any one of the 4 reset modifiers, defined below. - * To write registers 8 through 15, however, the command modifier must - * always be `point high'. Rather than track this bizzareness all over - * the driver, we try to avoid using any modifiers, ever (but they are - * defined here if you want them). - */ -#define ZSM_RESET_TXUEOM 0xc0 /* reset xmit underrun / eom latch */ -#define ZSM_RESET_TXCRC 0x80 /* reset xmit crc generator */ -#define ZSM_RESET_RXCRC 0x40 /* reset recv crc checker */ -#define ZSM_NULL 0x00 /* nothing special */ +/* Buffer and External Status (RR0). */ +#define BES_BRK 0x80 /* Break (Abort). */ +#define BES_TXU 0x40 /* Tx Underrun (EOM). */ +#define BES_CTS 0x20 /* CTS. */ +#define BES_SYNC 0x10 /* Sync. */ +#define BES_DCD 0x08 /* DCD. */ +#define BES_TXE 0x04 /* Tx Empty. */ +#define BES_ZC 0x02 /* Zero Count. */ +#define BES_RXA 0x01 /* Rx Available. */ -#define ZSM_RESET_IUS 0x38 /* reset interrupt under service */ -#define ZSM_RESET_ERR 0x30 /* reset error cond */ -#define ZSM_RESET_TXINT 0x28 /* reset xmit interrupt pending */ -#define ZSM_EI_NEXTRXC 0x20 /* enable int. on next rcvd char */ -#define ZSM_SEND_ABORT 0x18 /* send abort (SDLC) */ -#define ZSM_RESET_STINT 0x10 /* reset external/status interrupt */ -#define ZSM_POINTHIGH 0x08 /* `point high' (use r8-r15) */ -#define ZSM_NULL 0x00 /* nothing special */ +/* Clock Mode Control (WR11). */ +#define CMC_XTAL 0x80 /* -RTxC connects to quartz crystal. */ +#define CMC_RC_DPLL 0x60 /* Rx Clock from DPLL. */ +#define CMC_RC_BRG 0x40 /* Rx Clock from BRG. */ +#define CMC_RC_TRXC 0x20 /* Rx Clock from -TRxC. */ +#define CMC_RC_RTXC 0x00 /* Rx Clock from -RTxC. */ +#define CMC_TC_DPLL 0x18 /* Tx Clock from DPLL */ +#define CMC_TC_BRG 0x10 /* Tx Clock from BRG */ +#define CMC_TC_TRXC 0x08 /* Tx Clock from -TRxC. */ +#define CMC_TC_RTXC 0x00 /* Tx Clock from -RTxC. */ +#define CMC_TRXC_OUT 0x04 /* -TRxC is output. */ +#define CMC_TRXC_DPLL 0x03 /* -TRxC from DPLL */ +#define CMC_TRXC_BRG 0x02 /* -TRxC from BRG */ +#define CMC_TRXC_XMIT 0x01 /* -TRxC from Tx clock. */ +#define CMC_TRXC_XTAL 0x00 /* -TRxC from XTAL. */ -/* - * Commands for Write Register 0 (`Command Register'). - * These are just the command modifiers or'ed with register number 0 - * (which of course equals the command modifier). - */ -#define WR0_RESET_EOM ZSM_RESET_TXUEOM -#define WR0_RESET_TXCRC ZSM_RESET_TXCRC -#define WR0_RESET_RXCRC ZSM_RESET_RXCRC -#define WR0_CLR_INTR ZSM_RESET_IUS -#define WR0_RESET_ERRORS ZSM_RESET_ERR -#define WR0_EI_NEXTRXC ZSM_EI_NEXTRXC -#define WR0_SEND_ABORT ZSM_SEND_ABORT -#define WR0_RESET_STATUS ZSM_RESET_STINT -#define WR0_RESET_TXINT ZSM_RESET_TXINT +/* Miscellaneous Control Bits part 1 (WR10). */ +#define MCB1_CRC1 0x80 /* CRC presets to 1. */ +#define MCB1_FM0 0x60 /* FM0 Encoding. */ +#define MCB1_FM1 0x40 /* FM1 Encoding. */ +#define MCB1_NRZI 0x20 /* NRZI Encoding. */ +#define MCB1_NRZ 0x00 /* NRZ Encoding. */ +#define MCB1_AOP 0x10 /* Active On Poll. */ +#define MCB1_MI 0x08 /* Mark Idle. */ +#define MCB1_AOU 0x04 /* Abort On Underrun. */ +#define MCB1_LM 0x02 /* Loop Mode. */ +#define MCB1_SIX 0x01 /* 6 or 12 bit SYNC. */ -/* - * Bits in Write Register 1 (`Transmit/Receive Interrupt and Data - * Transfer Mode Definition'). Note that bits 3 and 4 are taken together - * as a single unit, and bits 5 and 6 are useful only if bit 7 is set. - */ -#define WR1_REQ_WAIT 0x80 /* WAIT*-REQ* pin gives WAIT* */ -#define WR1_REQ_REQ 0xc0 /* WAIT*-REQ* pin gives REQ* */ -#define WR1_REQ_TX 0x00 /* WAIT*-REQ* pin follows xmit buf */ -#define WR1_REQ_RX 0x20 /* WAIT*-REQ* pin follows recv buf */ +/* Miscellaneous Control Bits part 2 (WR14). */ +#define MCB2_NRZI 0xe0 /* DPLL - NRZI mode. */ +#define MCB2_FM 0xc0 /* DPLL - FM mode. */ +#define MCB2_RTXC 0xa0 /* DPLL - Clock from -RTxC. */ +#define MCB2_BRG 0x80 /* DPLL - Clock from BRG. */ +#define MCB2_OFF 0x60 /* DPLL - Disable. */ +#define MCB2_RMC 0x40 /* DPLL - Reset Missing Clock. */ +#define MCB2_ESM 0x20 /* DPLL - Enter Search Mode. */ +#define MCB2_LL 0x10 /* Local Loopback. */ +#define MCB2_AE 0x08 /* Auto Echo. */ +#define MCB2_REQ 0x04 /* Request Function. */ +#define MCB2_PCLK 0x02 /* BRG source is PCLK. */ +#define MCB2_BRGE 0x01 /* BRG enable. */ -#define WR1_RIE_NONE 0x00 /* disable rxint entirely */ -#define WR1_RIE_FIRST 0x08 /* rxint on first char & on S.C. */ -#define WR1_RIE 0x10 /* rxint per char & on S.C. */ -#define WR1_RIE_SPECIAL_ONLY 0x18 /* rxint on S.C. only */ +/* Master Interrupt Control (WR9). */ +#define MIC_FHR 0xc0 /* Force Hardware Reset. */ +#define MIC_CRA 0x80 /* Channel Reset A. */ +#define MIC_CRB 0x40 /* Channel Reset B. */ +#define MIC_SIE 0x20 /* Software INTACK Enable. */ +#define MIC_SH 0x10 /* Status High. */ +#define MIC_MIE 0x08 /* Master Interrupt Enable. */ +#define MIC_DLC 0x04 /* Disable Lower Chain. */ +#define MIC_NV 0x02 /* No Vector. */ +#define MIC_VIS 0x01 /* Vector Includes Status. */ -#define WR1_PE_SC 0x04 /* parity error is special condition */ -#define WR1_TIE 0x02 /* transmit interrupt enable */ -#define WR1_SIE 0x01 /* external/status interrupt enable */ +/* Transmit/Receive Miscellaneous Parameters and Modes. */ +#define MPM_CM64 0xc0 /* X64 Clock Mode. */ +#define MPM_CM32 0x80 /* X32 Clock Mode. */ +#define MPM_CM16 0x40 /* X16 Clock Mode. */ +#define MPM_CM1 0x00 /* X1 Clock Mode. */ +#define MPM_EXT 0x30 /* External Sync Mode. */ +#define MPM_SDLC 0x20 /* SDLC mode. */ +#define MPM_BI 0x10 /* 16-bit Sync (bi-sync). */ +#define MPM_MONO 0x00 /* 8-bit Sync (mono-sync). */ +#define MPM_SB2 0x0c /* Async mode: 2 stopbits. */ +#define MPM_SB15 0x08 /* Async mode: 1.5 stopbits. */ +#define MPM_SB1 0x04 /* Async mode: 1 stopbit. */ +#define MPM_SYNC 0x00 /* Sync Mode Enable. */ +#define MPM_EVEN 0x02 /* Async mode: even parity. */ +#define MPM_PE 0x01 /* Async mode: parity enable. */ -#define WR1_IMASK 0x1F /* mask of all itr. enable bits. */ +/* Receive Parameters and Control (WR3). */ +#define RPC_RB8 0xc0 /* 8 databits. */ +#define RPC_RB6 0x80 /* 6 databits. */ +#define RPC_RB7 0x40 /* 7 databits. */ +#define RPC_RB5 0x00 /* 5 databits. */ +#define RPC_AE 0x20 /* Auto Enable. */ +#define RPC_EHM 0x10 /* Enter Hunt Mode. */ +#define RPC_CRC 0x08 /* CRC Enable. */ +#define RPC_ASM 0x04 /* Address Search Mode. */ +#define RPC_LI 0x02 /* SYNC Character Load Inhibit */ +#define RPC_RXE 0x01 /* Receiver Enable */ -/* HSIS compat */ -#define WR1_REQ_ENABLE (WR1_REQ_WAIT | WR1_REQ_TX) +/* Transmit Parameter and Control (WR5). */ +#define TPC_DTR 0x80 /* DTR. */ +#define TPC_TB8 0x60 /* 8 databits. */ +#define TPC_TB6 0x40 /* 6 databits. */ +#define TPC_TB7 0x20 /* 7 databits. */ +#define TPC_TB5 0x00 /* 5 or fewer databits. */ +#define TPC_SB 0x10 /* Send break. */ +#define TPC_TXE 0x08 /* Transmitter Enable. */ +#define TPC_CRC16 0x04 /* CRC16. */ +#define TPC_RTS 0x02 /* RTS. */ +#define TPC_CRC 0x01 /* CRC Enable. */ -/* - * Bits in Write Register 3 (`Receive Parameters and Control'). - * Bits 7 and 6 are taken as a unit. Note that the receive bits - * per character ordering is insane. - * - * Here `hardware flow control' means CTS enables the transmitter - * and DCD enables the receiver. The latter is neither interesting - * nor useful, and gets in our way, making it almost unusable. - */ -#define WR3_RX_5 0x00 /* receive 5 bits per char */ -#define WR3_RX_7 0x40 /* receive 7 bits per char */ -#define WR3_RX_6 0x80 /* receive 6 bits per char */ -#define WR3_RX_8 0xc0 /* receive 8 bits per char */ -#define WR3_RXSIZE 0xc0 /* receive char size mask */ - -#define WR3_HFC 0x20 /* hardware flow control */ -#define WR3_HUNT 0x10 /* enter hunt mode */ -#define WR3_RXCRC_ENABLE 0x08 /* enable recv crc calculation */ -#define WR3_ADDR_SEARCH_MODE 0x04 /* address search mode (SDLC only) */ -#define WR3_SDLC_SHORT_ADDR 0x02 /* short address mode (SDLC only) */ -#define WR3_SYNC_LOAD_INH 0x02 /* sync character load inhibit */ -#define WR3_RX_ENABLE 0x01 /* receiver enable */ - -/* - * Bits in Write Register 4 (`Transmit/Receive Miscellaneous Parameters - * and Modes'). Bits 7&6, 5&4, and 3&2 are taken as units. - */ -#define WR4_CLK_X1 0x00 /* clock divisor = 1 */ -#define WR4_CLK_X16 0x40 /* clock divisor = 16 */ -#define WR4_CLK_X32 0x80 /* clock divisor = 32 */ -#define WR4_CLK_X64 0xc0 /* clock divisor = 64 */ -#define WR4_CLK_MASK 0xc0 /* clock divisor mask */ - -#define WR4_MONOSYNC 0x00 /* 8 bit sync char (sync only) */ -#define WR4_BISYNC 0x10 /* 16 bit sync char (sync only) */ -#define WR4_SDLC 0x20 /* SDLC mode */ -#define WR4_EXTSYNC 0x30 /* external sync mode */ -#define WR4_SYNC_MASK 0x30 /* sync mode bit mask */ - -#define WR4_SYNCMODE 0x00 /* no stop bit (sync mode only) */ -#define WR4_ONESB 0x04 /* 1 stop bit */ -#define WR4_1P5SB 0x08 /* 1.5 stop bits (clk cannot be 1x) */ -#define WR4_TWOSB 0x0c /* 2 stop bits */ -#define WR4_SBMASK 0x0c /* mask of all stop bits */ - -#define WR4_EVENP 0x02 /* check for even parity */ -#define WR4_PARENB 0x01 /* enable parity checking */ -#define WR4_PARMASK 0x03 /* mask of all parity bits */ - -/* - * Bits in Write Register 5 (`Transmit Parameter and Controls'). - * Bits 6 and 5 are taken as a unit; the ordering is, as with RX - * bits per char, not sensible. - */ -#define WR5_DTR 0x80 /* assert (set to -12V) DTR */ - -#define WR5_TX_5 0x00 /* transmit 5 or fewer bits */ -#define WR5_TX_7 0x20 /* transmit 7 bits */ -#define WR5_TX_6 0x40 /* transmit 6 bits */ -#define WR5_TX_8 0x60 /* transmit 8 bits */ -#define WR5_TXSIZE 0x60 /* transmit char size mask */ - -#define WR5_BREAK 0x10 /* send break (continuous 0s) */ -#define WR5_TX_ENABLE 0x08 /* enable transmitter */ -#define WR5_CRC16 0x04 /* use CRC16 (off => use SDLC) */ -#define WR5_RTS 0x02 /* assert RTS */ -#define WR5_TXCRC_ENABLE 0x01 /* enable xmit crc calculation */ - -#ifdef not_done_here -/* - * Bits in Write Register 7 when the chip is in SDLC mode. - */ -#define WR7_SDLCFLAG 0x7e /* this value makes SDLC mode work */ -#endif - -/* - * Bits in Write Register 7' (WR_ENHANCED above). This register is - * only available on the 85230. Dispite the fact it contains flags - * and not a single value, the register was named as it is read - * via RR14. Weird. - */ - /* 0x80 unused */ -#define WR7P_EXTEND_READ 0x40 /* modify read map; make most regs readable */ -#define WR7P_TX_FIFO 0x20 /* change level for Tx FIFO empty int */ -#define WR7P_DTR_TIME 0x10 /* modifies deact. speed of /DTR//REQ */ -#define WR7P_RX_FIFO 0x08 /* Rx FIFO int on 1/2 full? */ -#define WR7P_RTS_DEACT 0x04 /* automatically deassert RTS */ -#define WR7P_AUTO_EOM_RESET 0x02 /* automatically reset EMO/Tx Underrun */ -#define WR7P_AUTO_TX_FLAG 0x01 /* Auto send SDLC flag at transmit start */ - -/* - * Bits in Write Register 9 (`Master Interrupt Control'). Bits 7 & 6 - * are taken as a unit and indicate the type of reset; 00 means no reset - * (and is not defined here). - */ -#define WR9_HARD_RESET 0xc0 /* force hardware reset */ -#define WR9_A_RESET 0x80 /* reset channel A (0) */ -#define WR9_B_RESET 0x40 /* reset channel B (1) */ -#define WR9_SOFT_INTAC 0x20 /* Not in NMOS version */ - -#define WR9_STATUS_HIGH 0x10 /* status in high bits of intr vec */ -#define WR9_MASTER_IE 0x08 /* master interrupt enable */ -#define WR9_DLC 0x04 /* disable lower chain */ -#define WR9_NO_VECTOR 0x02 /* no vector */ -#define WR9_VECTOR_INCL_STAT 0x01 /* vector includes status */ - -/* - * Bits in Write Register 10 (`Miscellaneous Transmitter/Receiver Control - * Bits'). Bits 6 & 5 are taken as a unit, and some of the bits are - * meaningful only in certain modes. Bleah. - */ -#define WR10_PRESET_ONES 0x80 /* preset CRC to all 1 (else all 0) */ - -#define WR10_NRZ 0x00 /* NRZ encoding */ -#define WR10_NRZI 0x20 /* NRZI encoding */ -#define WR10_FM1 0x40 /* FM1 encoding */ -#define WR10_FM0 0x60 /* FM0 encoding */ - -#define WR10_GA_ON_POLL 0x10 /* go active on poll (loop mode) */ -#define WR10_MARK_IDLE 0x08 /* all 1s (vs flag) when idle (SDLC) */ -#define WR10_ABORT_ON_UNDERRUN 0x04 /* abort on xmit underrun (SDLC) */ -#define WR10_LOOP_MODE 0x02 /* loop mode (SDLC) */ -#define WR10_6_BIT_SYNC 0x01 /* 6 bits per sync char (sync modes) */ - -/* - * Bits in Write Register 11 (`Clock Mode Control'). Bits 6&5, 4&3, and - * 1&0 are taken as units. Various bits depend on other bits in complex - * ways; see the Zilog manual. - */ -#define WR11_XTAL 0x80 /* have xtal between RTxC* and SYNC* */ - /* (else have TTL oscil. on RTxC*) */ -#define WR11_RXCLK_RTXC 0x00 /* recv clock taken from RTxC* pin */ -#define WR11_RXCLK_TRXC 0x20 /* recv clock taken from TRxC* pin */ -#define WR11_RXCLK_BAUD 0x40 /* recv clock taken from BRG */ -#define WR11_RXCLK_DPLL 0x60 /* recv clock taken from DPLL */ - -#define WR11_TXCLK_RTXC 0x00 /* xmit clock taken from RTxC* pin */ -#define WR11_TXCLK_TRXC 0x08 /* xmit clock taken from TRxC* pin */ -#define WR11_TXCLK_BAUD 0x10 /* xmit clock taken from BRG */ -#define WR11_TXCLK_DPLL 0x18 /* xmit clock taken from DPLL */ - -#define WR11_TRXC_OUT_ENA 0x04 /* TRxC* pin will be an output */ - /* (unless it is being used above) */ -#define WR11_TRXC_XTAL 0x00 /* TRxC output from xtal oscillator */ -#define WR11_TRXC_XMIT 0x01 /* TRxC output from xmit clock */ -#define WR11_TRXC_BAUD 0x02 /* TRxC output from BRG */ -#define WR11_TRXC_DPLL 0x03 /* TRxC output from DPLL */ - -/* - * Formula for Write Registers 12 and 13 (`Lower Byte of Baud Rate - * Generator Time Constant' and `Upper Byte of ...'). Inputs: - * - * f BRG input clock frequency (in Hz) AFTER division - * by 1, 16, 32, or 64 (per clock divisor in WR4) - * bps desired rate in bits per second (9600, etc) - * - * We want - * - * f - * ----- + 0.5 - 2 - * 2 bps - * - * rounded down to an integer. This can be computed entirely - * in integer arithemtic as: - * - * f + bps - * ------- - 2 - * 2 bps - */ -#define BPS_TO_TCONST(f, bps) ((((f) + (bps)) / (2 * (bps))) - 2) - -/* inverse of above: given a BRG Time Constant, return Bits Per Second */ -#define TCONST_TO_BPS(f, tc) ((f) / 2 / ((tc) + 2)) - -/* - * Bits in Write Register 14 (`Miscellaneous Control Bits'). - * Bits 7 through 5 are taken as a unit and make up a `DPLL command'. - */ -#define WR14_DPLL_NOOP 0x00 /* leave DPLL alone */ -#define WR14_DPLL_SEARCH 0x20 /* enter search mode */ -#define WR14_DPLL_RESET_CM 0x40 /* reset `clock missing' in RR10 */ -#define WR14_DPLL_DISABLE 0x60 /* disable DPLL (continuous search) */ -#define WR14_DPLL_SRC_BAUD 0x80 /* set DPLL src = BRG */ -#define WR14_DPLL_SRC_RTXC 0xa0 /* set DPLL src = RTxC* or xtal osc */ -#define WR14_DPLL_FM 0xc0 /* operate in FM mode */ -#define WR14_DPLL_NRZI 0xe0 /* operate in NRZI mode */ - -#define WR14_LOCAL_LOOPBACK 0x10 /* set local loopback mode */ -#define WR14_AUTO_ECHO 0x08 /* set auto echo mode */ -#define WR14_DTR_REQ 0x04 /* DTR* / REQ* pin gives REQ* */ -#define WR14_BAUD_FROM_PCLK 0x02 /* BRG clock taken from PCLK */ - /* (else from RTxC* pin or xtal osc) */ -#define WR14_BAUD_ENA 0x01 /* enable BRG countdown */ - -/* - * Bits in Write Register 15 (`External/Status Interrupt Control'). - * Most of these cause status interrupts whenever the corresponding - * bit or pin changes state (i.e., any rising or falling edge). - * - * NOTE: WR15_SDLC_FIFO & WR15_ENABLE_ENHANCED should not be - * set on an NMOS 8530. Also, WR15_ENABLE_ENHANCED is only - * available on the 85230. - */ -#define WR15_BREAK_IE 0x80 /* enable break/abort status int */ -#define WR15_TXUEOM_IE 0x40 /* enable TX underrun/EOM status int */ -#define WR15_CTS_IE 0x20 /* enable CTS* pin status int */ -#define WR15_SYNCHUNT_IE 0x10 /* enable SYNC* pin/hunt status int */ -#define WR15_DCD_IE 0x08 /* enable DCD* pin status int */ -#define WR15_SDLC_FIFO 0x04 /* enable SDLC FIFO enhancements */ -#define WR15_ZERO_COUNT_IE 0x02 /* enable BRG-counter = 0 status int */ -#define WR15_ENABLE_ENHANCED 0x01 /* enable writing WR7' at reg 7 */ - -/* - * Bits in Read Register 0 (`Transmit/Receive Buffer Status and External - * Status'). - */ -#define RR0_BREAK 0x80 /* break/abort detected */ -#define RR0_TXUNDER 0x40 /* transmit underrun/EOM (sync) */ -#define RR0_CTS 0x20 /* clear to send */ -#define RR0_SYNC_HUNT 0x10 /* sync/hunt (sync mode) */ -#define RR0_DCD 0x08 /* data carrier detect */ -#define RR0_TX_READY 0x04 /* transmit buffer empty */ -#define RR0_ZERO_COUNT 0x02 /* zero count in baud clock */ -#define RR0_RX_READY 0x01 /* received character ready */ - -/* - * Bits in Read Register 1 (the Zilog book does not name this one). - */ -#define RR1_EOF 0x80 /* end of frame (SDLC mode) */ -#define RR1_FE 0x40 /* CRC/framing error */ -#define RR1_DO 0x20 /* data (receiver) overrun */ -#define RR1_PE 0x10 /* parity error */ -#define RR1_RC0 0x08 /* residue code 0 (SDLC mode) */ -#define RR1_RC1 0x04 /* residue code 1 (SDLC mode) */ -#define RR1_RC2 0x02 /* residue code 2 (SDLC mode) */ -#define RR1_ALL_SENT 0x01 /* all chars out of xmitter (async) */ - -/* - * Read Register 2 in B channel contains status bits if VECTOR_INCL_STAT - * is set. - */ - -/* - * Bits in Read Register 3 (`Interrupt Pending'). Only channel A - * has an RR3. - */ - /* 0x80 unused, returned as 0 */ - /* 0x40 unused, returned as 0 */ -#define RR3_IP_A_RX 0x20 /* channel A recv int pending */ -#define RR3_IP_A_TX 0x10 /* channel A xmit int pending */ -#define RR3_IP_A_STAT 0x08 /* channel A status int pending */ -#define RR3_IP_B_RX 0x04 /* channel B recv int pending */ -#define RR3_IP_B_TX 0x02 /* channel B xmit int pending */ -#define RR3_IP_B_STAT 0x01 /* channel B status int pending */ - -/* - * Bits in Read Register 10 (`contains some miscellaneous status bits'). - */ -#define RR10_1_CLOCK_MISSING 0x80 /* 1 clock edge missing (FM mode) */ -#define RR10_2_CLOCKS_MISSING 0x40 /* 2 clock edges missing (FM mode) */ - /* 0x20 unused */ -#define RR10_LOOP_SENDING 0x10 /* xmitter controls loop (SDLC loop) */ - /* 0x08 unused */ - /* 0x04 unused */ -#define RR10_ON_LOOP 0x02 /* SCC is on loop (SDLC/X.21 modes) */ - -/* - * Bits in Read Register 15. This register is one of the few that - * simply reads back the corresponding Write Register. - */ -#define RR15_BREAK_IE 0x80 /* break/abort status int enable */ -#define RR15_TXUEOM_IE 0x40 /* TX underrun/EOM status int enable */ -#define RR15_CTS_IE 0x20 /* CTS* pin status int enable */ -#define RR15_SYNCHUNT_IE 0x10 /* SYNC* pin/hunt status int enable */ -#define RR15_DCD_IE 0x08 /* DCD* pin status int enable */ - /* 0x04 unused, returned as zero */ -#define RR15_ZERO_COUNT_IE 0x02 /* BRG-counter = 0 status int enable */ - /* 0x01 unused, returned as zero */ +#endif /* _DEV_UART_DEV_Z8530_H_ */ From owner-p4-projects@FreeBSD.ORG Sat Aug 30 23:35:49 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 79AAE16A4C1; Sat, 30 Aug 2003 23:35:49 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1FDB616A4BF for ; Sat, 30 Aug 2003 23:35:49 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8146F43FAF for ; Sat, 30 Aug 2003 23:35:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7V6Zm0U011637 for ; Sat, 30 Aug 2003 23:35:48 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7V6Zlsk011634 for perforce@freebsd.org; Sat, 30 Aug 2003 23:35:47 -0700 (PDT) Date: Sat, 30 Aug 2003 23:35:47 -0700 (PDT) Message-Id: <200308310635.h7V6Zlsk011634@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37258 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 31 Aug 2003 06:35:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=37258 Change 37258 by marcel@marcel_nfs on 2003/08/30 23:35:11 Implement UART_IPEND() and UART_TRANSMIT(). With only these two functions we can boot single- and multi- user. Of course the console is pretty much useless for anything other than output, but at least I know transmit interrupts work. Next step: UART_GETSIG() and UART_SETSIG() so that getty(8) works, followed by UART_RECEIVE() to allow me to actually login in. I'm pretty happy with how easily one can get new hardware to work. I think it means that the hardware interface has the right (or at least a workable) abstraction... Affected files ... .. //depot/projects/uart/dev/uart/uart_dev_z8530.c#7 edit .. //depot/projects/uart/dev/uart/uart_dev_z8530.h#4 edit Differences ... ==== //depot/projects/uart/dev/uart/uart_dev_z8530.c#7 (text+ko) ==== @@ -187,8 +187,6 @@ z8530_param(bas, baudrate, databits, stopbits, parity, TPC_DTR | TPC_RTS); - - /* WR1, WR15 */ } static void @@ -264,6 +262,13 @@ .uc_rclk = DEFAULT_RCLK }; +#define SIGCHG(c, i, s, d) \ + if (c) { \ + i |= (i & s) ? s : s | d; \ + } else { \ + i = (i & s) ? (i & ~s) | d : i; \ + } + static int z8530_bus_attach(struct uart_softc *sc) { @@ -273,9 +278,13 @@ if (sc->sc_sysdev == NULL) z8530_init(bas, 9600, 8, 1, UART_PARITY_NONE); - sc->sc_rxfifosz = 32; - sc->sc_txfifosz = 32; + sc->sc_rxfifosz = 1; + sc->sc_txfifosz = 1; + uart_setmreg(bas, WR_IC, IC_BRK | IC_CTS | IC_DCD); + uart_setmreg(bas, WR_IDT, IDT_TIE | IDT_RIA); + uart_setmreg(bas, WR_IV, 0); + uart_barrier(bas); return (0); } @@ -303,8 +312,35 @@ static int z8530_bus_ipend(struct uart_softc *sc) { + struct uart_bas *bas; + int ipend; + uint8_t bes, src; - return (0); + bas = &sc->sc_bas; + ipend = 0; + uart_setreg(bas, REG_CTRL, CR_RSTIUS); + uart_barrier(bas); + bes = uart_getmreg(bas, RR_BES); + if (bes & BES_BRK) { + uart_setreg(bas, REG_CTRL, CR_RSTXSI); + ipend |= UART_IPEND_BREAK; + } + if (bes & BES_TXE) { + uart_setreg(bas, REG_CTRL, CR_RSTTXI); + ipend |= UART_IPEND_TXIDLE; + } + if (bes & BES_RXA) + ipend |= UART_IPEND_RXREADY; + SIGCHG(bes & BES_CTS, sc->sc_hwsig, UART_SIG_CTS, UART_SIG_DCTS); + SIGCHG(bes & BES_DCD, sc->sc_hwsig, UART_SIG_DCD, UART_SIG_DDCD); + if (sc->sc_hwsig & UART_SIGMASK_DELTA) + ipend |= UART_IPEND_SIGCHG; + src = uart_getmreg(bas, RR_SRC); + if (src & SRC_OVR) { + uart_setreg(bas, REG_CTRL, CR_RSTERR); + ipend |= UART_IPEND_OVERRUN; + } + return (ipend); } static int @@ -339,7 +375,7 @@ static int z8530_bus_receive(struct uart_softc *sc) { - + return (0); } @@ -353,6 +389,13 @@ static int z8530_bus_transmit(struct uart_softc *sc) { + struct uart_bas *bas; + bas = &sc->sc_bas; + while (!(uart_getmreg(bas, RR_BES) & BES_TXE)) + ; + uart_setreg(bas, REG_DATA, sc->sc_txbuf[0]); + uart_barrier(bas); + sc->sc_txbusy = 1; return (0); } ==== //depot/projects/uart/dev/uart/uart_dev_z8530.h#4 (text+ko) ==== @@ -40,7 +40,7 @@ /* Write registers. */ #define WR_CR 0 /* Command Register. */ -#define WR_IDTM 1 /* Interrupt and Data Transfer Mode. */ +#define WR_IDT 1 /* Interrupt and Data Transfer Mode. */ #define WR_IV 2 /* Interrupt Vector (shared). */ #define WR_RPC 3 /* Receive Parameters and Control. */ #define WR_MPM 4 /* Miscellaneous Parameters and Modes. */ @@ -101,6 +101,65 @@ #define CMC_TRXC_XMIT 0x01 /* -TRxC from Tx clock. */ #define CMC_TRXC_XTAL 0x00 /* -TRxC from XTAL. */ +/* Command Register (WR0). */ +#define CR_RSTTXU 0xc0 /* Reset Tx. Underrun/EOM. */ +#define CR_RSTTXCRC 0x80 /* Reset Tx. CRC. */ +#define CR_RSTRXCRC 0x40 /* Reset Rx. CRC. */ +#define CR_RSTIUS 0x38 /* Reset Int. Under Service. */ +#define CR_RSTERR 0x30 /* Error Reset. */ +#define CR_RSTTXI 0x28 /* Reset Tx. Int. */ +#define CR_ENARXI 0x20 /* Enable Rx. Int. */ +#define CR_ABORT 0x18 /* Send Abort. */ +#define CR_RSTXSI 0x10 /* Reset Ext/Status Int. */ + +/* Extended Feature and FIFO Control (WR7 prime). */ +#define EFC_ERE 0x40 /* Extended Read Enable. */ +#define EFC_FE 0x20 /* Transmit FIFO Empty. */ +#define EFC_RQT 0x10 /* Request Timing. */ +#define EFC_FHF 0x08 /* Receive FIFO Half Full. */ +#define EFC_RTS 0x04 /* Auto RTS Deactivation. */ +#define EFC_EOM 0x02 /* Auto EOM Reset. */ +#define EFC_FLAG 0x01 /* Auto SDLC Flag on Tx. */ + +/* Interrupt Control (WR15). */ +#define IC_BRK 0x80 /* Break (Abort) IE. */ +#define IC_TXU 0x40 /* Tx Underrun IE. */ +#define IC_CTS 0x20 /* CTS IE. */ +#define IC_SYNC 0x10 /* Sync IE. */ +#define IC_DCD 0x08 /* DCD IE. */ +#define IC_FIFO 0x04 /* SDLC FIFO Enable. */ +#define IC_ZC 0x02 /* Zero Count IE. */ +#define IC_EF 0x01 /* Extended Feature Enable. */ + +/* Interrupt and Data Transfer Mode (WR1). */ +#define IDT_WRE 0x80 /* Wait/DMA Request Enable. */ +#define IDT_REQ 0x40 /* DMA Request. */ +#define IDT_WRR 0x20 /* Wait/DMA Reuest on Receive. */ +#define IDT_RISC 0x18 /* Rx Int. on Special Condition Only. */ +#define IDT_RIA 0x10 /* Rx Int. on All Characters. */ +#define IDT_RIF 0x08 /* Rx Int. on First Character. */ +#define IDT_PSC 0x04 /* Parity is Special Condition. */ +#define IDT_TIE 0x02 /* Tx Int. Enable. */ +#define IDT_XIE 0x01 /* Ext. Int. Enable. */ + +/* Interrupt Pending (RR3). */ +#define IP_RIA 0x20 /* Rx. Int. ch. A. */ +#define IP_TIA 0x10 /* Tx. Int. ch. A. */ +#define IP_SIA 0x08 /* Ext/Status Int. ch. A. */ +#define IP_RIB 0x04 /* Rx. Int. ch. B. */ +#define IP_TIB 0x02 /* Tx. Int. ch. B. */ +#define IP_SIB 0x01 /* Ext/Status Int. ch. B. */ + +/* Interrupt Vector Status Low (RR2). */ +#define IV_SCA 0x0e /* Special Condition ch. A. */ +#define IV_RAA 0x0c /* Receive Available ch. A. */ +#define IV_XSA 0x0a /* External/Status Change ch. A. */ +#define IV_TEA 0x08 /* Transmitter Empty ch. A. */ +#define IV_SCB 0x06 /* Special Condition ch. B. */ +#define IV_RAB 0x04 /* Receive Available ch. B. */ +#define IV_XSB 0x02 /* External/Status Change ch. B. */ +#define IV_TEB 0x00 /* Transmitter Empty ch. B. */ + /* Miscellaneous Control Bits part 1 (WR10). */ #define MCB1_CRC1 0x80 /* CRC presets to 1. */ #define MCB1_FM0 0x60 /* FM0 Encoding. */ @@ -138,7 +197,7 @@ #define MIC_NV 0x02 /* No Vector. */ #define MIC_VIS 0x01 /* Vector Includes Status. */ -/* Transmit/Receive Miscellaneous Parameters and Modes. */ +/* Transmit/Receive Miscellaneous Parameters and Modes (WR4). */ #define MPM_CM64 0xc0 /* X64 Clock Mode. */ #define MPM_CM32 0x80 /* X32 Clock Mode. */ #define MPM_CM16 0x40 /* X16 Clock Mode. */ @@ -166,6 +225,16 @@ #define RPC_LI 0x02 /* SYNC Character Load Inhibit */ #define RPC_RXE 0x01 /* Receiver Enable */ +/* Special Receive Condition (RR1). */ +#define SRC_EOF 0x80 /* End Of Frame. */ +#define SRC_FE 0x40 /* Framing Error. */ +#define SRC_OVR 0x20 /* Rx. Overrun. */ +#define SRC_PE 0x10 /* Parity Error. */ +#define SRC_RC0 0x08 /* Residue Code 0. */ +#define SRC_RC1 0x04 /* Residue Code 1. */ +#define SRC_RC2 0x02 /* Residue Code 2. */ +#define SRC_AS 0x01 /* All Sent. */ + /* Transmit Parameter and Control (WR5). */ #define TPC_DTR 0x80 /* DTR. */ #define TPC_TB8 0x60 /* 8 databits. */ From owner-p4-projects@FreeBSD.ORG Sat Aug 30 23:42:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9E9FD16A4C2; Sat, 30 Aug 2003 23:42:02 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 47AC316A4BF for ; Sat, 30 Aug 2003 23:42:02 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5911043FE3 for ; Sat, 30 Aug 2003 23:41:58 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7V6fw0U011930 for ; Sat, 30 Aug 2003 23:41:58 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7V6fuYt011912 for perforce@freebsd.org; Sat, 30 Aug 2003 23:41:56 -0700 (PDT) Date: Sat, 30 Aug 2003 23:41:56 -0700 (PDT) Message-Id: <200308310641.h7V6fuYt011912@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37259 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 31 Aug 2003 06:42:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=37259 Change 37259 by marcel@marcel_nfs on 2003/08/30 23:41:47 IFC @37254 Affected files ... .. //depot/projects/ia64/Makefile#32 integrate .. //depot/projects/ia64/Makefile.inc1#80 integrate .. //depot/projects/ia64/UPDATING#50 integrate .. //depot/projects/ia64/bin/sh/arith.h#3 integrate .. //depot/projects/ia64/bin/sh/arith.y#4 integrate .. //depot/projects/ia64/bin/sh/arith_lex.l#4 integrate .. //depot/projects/ia64/bin/sh/shell.h#4 integrate .. //depot/projects/ia64/contrib/gnu-sort/ABOUT-NLS#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/ChangeLog#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/FREEBSD-upgrade#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/NEWS#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/README#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/README-alpha#2 delete .. //depot/projects/ia64/contrib/gnu-sort/THANKS#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/lib/getopt.c#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/lib/getopt.h#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/lib/getopt1.c#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/lib/gettext.h#1 branch .. //depot/projects/ia64/contrib/gnu-sort/lib/hard-locale.c#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/lib/xmalloc.c#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/man/sort.1#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/src/sort.c#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/src/sys2.h#2 integrate .. //depot/projects/ia64/contrib/gnu-sort/src/system.h#2 integrate .. //depot/projects/ia64/etc/rc.d/Makefile#21 integrate .. //depot/projects/ia64/etc/rc.d/localdaemons#4 delete .. //depot/projects/ia64/etc/rc.d/network1#12 delete .. //depot/projects/ia64/etc/rc.d/network2#5 delete .. //depot/projects/ia64/etc/rc.d/network3#6 delete .. //depot/projects/ia64/gnu/usr.bin/Makefile#22 integrate .. //depot/projects/ia64/gnu/usr.bin/sort/Makefile#5 integrate .. //depot/projects/ia64/gnu/usr.bin/sort/config.h#6 integrate .. //depot/projects/ia64/gnu/usr.bin/sort/libintl.h#2 delete .. //depot/projects/ia64/lib/Makefile#37 integrate .. //depot/projects/ia64/lib/libc/posix1e/mac.c#6 integrate .. //depot/projects/ia64/lib/libc/sys/read.2#5 integrate .. //depot/projects/ia64/lib/libdisk/disk.c#20 integrate .. //depot/projects/ia64/lib/libfetch/ftp.c#13 integrate .. //depot/projects/ia64/lib/libmp/libmp.3#2 integrate .. //depot/projects/ia64/lib/libncurses/Makefile#17 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_concurrency.c#7 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#32 integrate .. //depot/projects/ia64/lib/libpthread/thread/thr_private.h#21 integrate .. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#26 integrate .. //depot/projects/ia64/sbin/Makefile#31 integrate .. //depot/projects/ia64/sbin/fsdb/fsdb.8#7 integrate .. //depot/projects/ia64/share/man/man4/man4.i386/vx.4#2 integrate .. //depot/projects/ia64/share/man/man5/make.conf.5#39 integrate .. //depot/projects/ia64/sys/alpha/alpha/pmap.c#40 integrate .. //depot/projects/ia64/sys/alpha/alpha/vm_machdep.c#26 integrate .. //depot/projects/ia64/sys/amd64/acpica/OsdEnvironment.c#4 integrate .. //depot/projects/ia64/sys/amd64/acpica/acpi_machdep.c#3 integrate .. //depot/projects/ia64/sys/amd64/acpica/acpi_wakeup.c#3 integrate .. //depot/projects/ia64/sys/amd64/amd64/vm_machdep.c#10 integrate .. //depot/projects/ia64/sys/amd64/pci/pci_bus.c#4 integrate .. //depot/projects/ia64/sys/conf/files#96 integrate .. //depot/projects/ia64/sys/ddb/db_ps.c#22 integrate .. //depot/projects/ia64/sys/dev/acpica/Osd/OsdHardware.c#10 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi.c#37 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_cpu.c#9 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_lid.c#8 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_powerres.c#7 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_resource.c#9 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_thermal.c#11 integrate .. //depot/projects/ia64/sys/dev/acpica/acpi_timer.c#15 integrate .. //depot/projects/ia64/sys/dev/acpica/acpica_support.c#8 delete .. //depot/projects/ia64/sys/dev/acpica/acpica_support.h#2 delete .. //depot/projects/ia64/sys/dev/acpica/acpiio.h#4 integrate .. //depot/projects/ia64/sys/dev/acpica/acpivar.h#19 integrate .. //depot/projects/ia64/sys/dev/ata/ata-lowlevel.c#4 integrate .. //depot/projects/ia64/sys/dev/ata/ata-queue.c#3 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep.c#12 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep_isa.c#7 integrate .. //depot/projects/ia64/sys/dev/ep/if_ep_pccard.c#10 integrate .. //depot/projects/ia64/sys/dev/exca/exca.c#10 integrate .. //depot/projects/ia64/sys/dev/firewire/sbp.c#42 integrate .. //depot/projects/ia64/sys/dev/ichsmb/ichsmb_pci.c#7 integrate .. //depot/projects/ia64/sys/dev/pccard/pccardvar.h#11 integrate .. //depot/projects/ia64/sys/dev/pci/pci.c#29 integrate .. //depot/projects/ia64/sys/dev/pci/pcireg.h#5 integrate .. //depot/projects/ia64/sys/dev/puc/puc_pci.c#3 integrate .. //depot/projects/ia64/sys/dev/sound/pci/es137x.c#7 integrate .. //depot/projects/ia64/sys/dev/sound/pci/ich.c#18 integrate .. //depot/projects/ia64/sys/dev/sound/pcm/ac97.c#21 integrate .. //depot/projects/ia64/sys/geom/geom.h#35 integrate .. //depot/projects/ia64/sys/geom/geom_dev.c#41 integrate .. //depot/projects/ia64/sys/i386/acpica/OsdEnvironment.c#7 integrate .. //depot/projects/ia64/sys/i386/acpica/acpi_machdep.c#11 integrate .. //depot/projects/ia64/sys/i386/acpica/acpi_wakecode.S#3 integrate .. //depot/projects/ia64/sys/i386/acpica/acpi_wakeup.c#19 integrate .. //depot/projects/ia64/sys/i386/i386/vm_machdep.c#29 integrate .. //depot/projects/ia64/sys/i386/pci/pci_bus.c#19 integrate .. //depot/projects/ia64/sys/ia64/acpica/OsdEnvironment.c#7 integrate .. //depot/projects/ia64/sys/ia64/acpica/acpi_machdep.c#2 integrate .. //depot/projects/ia64/sys/ia64/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/ia64/sys/ia64/ia64/vm_machdep.c#35 integrate .. //depot/projects/ia64/sys/kern/uipc_syscalls.c#39 integrate .. //depot/projects/ia64/sys/kern/vfs_bio.c#57 integrate .. //depot/projects/ia64/sys/kern/vfs_cluster.c#25 integrate .. //depot/projects/ia64/sys/modules/Makefile#60 integrate .. //depot/projects/ia64/sys/modules/acpi/Makefile#13 integrate .. //depot/projects/ia64/sys/modules/pst/Makefile#1 branch .. //depot/projects/ia64/sys/net/if_ethersubr.c#33 integrate .. //depot/projects/ia64/sys/netatalk/aarp.c#8 integrate .. //depot/projects/ia64/sys/netatalk/ddp_output.c#5 integrate .. //depot/projects/ia64/sys/netinet/igmp.c#10 integrate .. //depot/projects/ia64/sys/pc98/pc98/sio.c#26 integrate .. //depot/projects/ia64/sys/pccard/i82365.h#6 integrate .. //depot/projects/ia64/sys/pccard/pcic.c#15 integrate .. //depot/projects/ia64/sys/powerpc/powerpc/vm_machdep.c#24 integrate .. //depot/projects/ia64/sys/sparc64/sparc64/vm_machdep.c#29 integrate .. //depot/projects/ia64/sys/sys/buf.h#25 integrate .. //depot/projects/ia64/sys/sys/mac.h#19 integrate .. //depot/projects/ia64/sys/ufs/ffs/ffs_softdep.c#28 integrate .. //depot/projects/ia64/sys/vm/swap_pager.c#40 integrate .. //depot/projects/ia64/sys/vm/vm_map.c#63 integrate .. //depot/projects/ia64/sys/vm/vm_map.h#26 integrate .. //depot/projects/ia64/sys/vm/vm_page.c#53 integrate .. //depot/projects/ia64/sys/vm/vm_pageout.c#45 integrate .. //depot/projects/ia64/sys/vm/vnode_pager.c#38 integrate .. //depot/projects/ia64/usr.bin/Makefile#52 integrate .. //depot/projects/ia64/usr.sbin/Makefile#49 integrate Differences ... ==== //depot/projects/ia64/Makefile#32 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.288 2003/08/28 04:03:13 marcel Exp $ +# $FreeBSD: src/Makefile,v 1.289 2003/08/30 13:33:41 ru Exp $ # # The user-driven targets are: # @@ -69,6 +69,7 @@ BITGTS= files includes BITGTS:=${BITGTS} ${BITGTS:S/^/build/} ${BITGTS:S/^/install/} +TGTS+= ${BITGTS} .ORDER: buildworld installworld .ORDER: buildworld distributeworld @@ -93,7 +94,7 @@ # for all targets. # .if defined(ALWAYS_CHECK_MAKE) -${TGTS} ${BITGTS}: upgrade_checks +${TGTS}: upgrade_checks .else buildworld: upgrade_checks .endif @@ -102,7 +103,7 @@ # Handle the user-driven targets, using the source relative mk files. # -${TGTS} ${BITGTS}: +${TGTS}: @cd ${.CURDIR}; \ ${_MAKE} ${.TARGET} ==== //depot/projects/ia64/Makefile.inc1#80 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.386 2003/08/27 04:49:43 imp Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.388 2003/08/30 13:48:16 ru Exp $ # # Make command line options: # -DNO_KERBEROS Do not build Heimdal (Kerberos 5) @@ -388,13 +388,6 @@ false; \ fi .endif -.if ${TARGET_ARCH} == ${MACHINE_ARCH} && !defined(DISTDIR) && \ - (!defined(DESTDIR) || empty(DESTDIR) || ${DESTDIR} == "/") - @echo "Checking to see if your booted kernel is fresh enough.." - @${.OBJDIR}/bin/sh/sh -c \ - 'echo "Testing installed kernel for new sigaction(2) syscall"' - @echo "Seems ok.." -.endif # # distributeworld @@ -765,7 +758,7 @@ .if (!defined(NO_RESCUE) || \ defined(RELEASEDIR)) && \ - ( ${TARGET_ARCH} != ${MACHINE_ARCH} || ${BOOTSTRAPPING} < 501101 ) + (${TARGET_ARCH} != ${MACHINE_ARCH} || ${BOOTSTRAPPING} < 501101) _crunchide= usr.sbin/crunch/crunchide .endif ==== //depot/projects/ia64/UPDATING#50 (text+ko) ==== @@ -17,6 +17,17 @@ developers choose to disable these features on build machines to maximize performance. +20030829: + The following rc.d scripts have been removed and should be + deleted from your installation: atm2.sh atm3.sh devdb + localdaemons network1 network2 network3. Depending on when + you last updated world and used mergemaster(8) you may or + may not have problems during the rc boot sequence. The simplest + solution is an 'rm -rf /etc/rc.d/*' and then 'mergemaster -i'. + The atm2.sh atm3.sh and devdb scripts were removed some time + ago, so depending on when you installed -CURRENT these scripts + may or may not exist on your system. + 20030824: ATAng has been committed. You need to build world as sys/ata.h has changed, and userland atacontrol depends on it. @@ -1345,4 +1356,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.264 2003/08/24 16:46:03 sos Exp $ +$FreeBSD: src/UPDATING,v 1.265 2003/08/29 13:25:08 mtm Exp $ ==== //depot/projects/ia64/bin/sh/arith.h#3 (text+ko) ==== @@ -31,8 +31,9 @@ * SUCH DAMAGE. * * @(#)arith.h 1.1 (Berkeley) 5/4/95 - * $FreeBSD: src/bin/sh/arith.h,v 1.6 2002/02/02 06:50:45 imp Exp $ + * $FreeBSD: src/bin/sh/arith.h,v 1.7 2003/08/30 12:31:44 schweikh Exp $ */ +int arith_assign(char *, arith_t); int arith(char *); int expcmd(int , char **); ==== //depot/projects/ia64/bin/sh/arith.y#4 (text+ko) ==== @@ -1,5 +1,65 @@ -%token ARITH_NUM ARITH_LPAREN ARITH_RPAREN +%{ +/*- + * Copyright (c) 1993 + * The Regents of the University of California. All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Kenneth Almquist. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef lint +#if 0 +static char sccsid[] = "@(#)arith.y 8.3 (Berkeley) 5/4/95"; +#endif +#endif /* not lint */ +#include +__FBSDID("$FreeBSD: src/bin/sh/arith.y,v 1.15 2003/08/30 12:31:44 schweikh Exp $"); + +#include +#include "shell.h" +#include "var.h" +%} +%union { + arith_t l_value; + char* s_value; +} +%token ARITH_NUM ARITH_LPAREN ARITH_RPAREN +%token ARITH_VAR +%type expr +%right ARITH_ASSIGN +%right ARITH_ADDASSIGN ARITH_SUBASSIGN +%right ARITH_MULASSIGN ARITH_DIVASSIGN ARITH_REMASSIGN +%right ARITH_RSHASSIGN ARITH_LSHASSIGN +%right ARITH_BANDASSIGN ARITH_BXORASSIGN ARITH_BORASSIGN %left ARITH_OR %left ARITH_AND %left ARITH_BOR @@ -18,7 +78,6 @@ } ; - expr: ARITH_LPAREN expr ARITH_RPAREN = { $$ = $2; } | expr ARITH_OR expr = { $$ = $1 ? $1 : $3 ? $3 : 0; } | expr ARITH_AND expr = { $$ = $1 ? ( $3 ? $3 : 0 ) : 0; } @@ -51,57 +110,122 @@ | ARITH_SUB expr %prec ARITH_UNARYMINUS = { $$ = -($2); } | ARITH_ADD expr %prec ARITH_UNARYPLUS = { $$ = $2; } | ARITH_NUM + | ARITH_VAR { + char *p; + arith_t arith_val; + char *str_val; + + if (lookupvar($1) == NULL) + setvarsafe($1, "0", 0); + str_val = lookupvar($1); + arith_val = strtoarith_t(str_val, &p, 0); + /* + * Conversion is successful only in case + * we've converted _all_ characters. + */ + if (*p != '\0') + yyerror("variable conversion error"); + $$ = arith_val; + } + | ARITH_VAR ARITH_ASSIGN expr { + if (arith_assign($1, $3) != 1) + yyerror("variable assignment error"); + $$ = $3; + } + | ARITH_VAR ARITH_ADDASSIGN expr { + arith_t value; + + value = atoarith_t(lookupvar($1)) + $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_SUBASSIGN expr { + arith_t value; + + value = atoarith_t(lookupvar($1)) - $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_MULASSIGN expr { + arith_t value; + + value = atoarith_t(lookupvar($1)) * $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_DIVASSIGN expr { + arith_t value; + + if ($3 == 0) + yyerror("division by zero"); + + value = atoarith_t(lookupvar($1)) / $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_REMASSIGN expr { + arith_t value; + + if ($3 == 0) + yyerror("division by zero"); + + value = atoarith_t(lookupvar($1)) % $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_RSHASSIGN expr { + arith_t value; + + value = atoarith_t(lookupvar($1)) >> $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_LSHASSIGN expr { + arith_t value; + + value = atoarith_t(lookupvar($1)) << $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_BANDASSIGN expr { + arith_t value; + + value = atoarith_t(lookupvar($1)) & $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_BXORASSIGN expr { + arith_t value; + + value = atoarith_t(lookupvar($1)) ^ $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } + | ARITH_VAR ARITH_BORASSIGN expr { + arith_t value; + + value = atoarith_t(lookupvar($1)) | $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } ; %% -/*- - * Copyright (c) 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Kenneth Almquist. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#ifndef lint -#if 0 -static char sccsid[] = "@(#)arith.y 8.3 (Berkeley) 5/4/95"; -#endif -#endif /* not lint */ -#include -__FBSDID("$FreeBSD: src/bin/sh/arith.y,v 1.14 2003/05/01 16:58:56 obrien Exp $"); - -#include "shell.h" #include "error.h" #include "output.h" #include "memalloc.h" +#define lstrlen(var) (3 + (2 + CHAR_BIT * sizeof((var))) / 3) + char *arith_buf, *arith_startbuf; extern void arith_lex_reset(); @@ -109,6 +233,18 @@ int yyparse(void); int +arith_assign(char *name, arith_t value) { + char *str; + int ret; + + str = (char *)ckmalloc(lstrlen(value)); + sprintf(str, ARITH_FORMAT_STR, value); + ret = setvarsafe(name, str, 0); + free(str); + return ret; +} + +int arith(char *s) { long result; ==== //depot/projects/ia64/bin/sh/arith_lex.l#4 (text+ko) ==== @@ -41,12 +41,14 @@ #endif #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/sh/arith_lex.l,v 1.18 2003/05/01 16:58:56 obrien Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/arith_lex.l,v 1.19 2003/08/30 12:31:44 schweikh Exp $"); +#include "shell.h" #include "y.tab.h" #include "error.h" +#include "var.h" +#include "memalloc.h" -extern int yylval; extern char *arith_buf, *arith_startbuf; #undef YY_INPUT #define YY_INPUT(buf,result,max) \ @@ -56,7 +58,36 @@ %% [ \t\n] { ; } -[0-9]+ { yylval = atol(yytext); return(ARITH_NUM); } + +0x[a-fA-F0-9]+ { + yylval.l_value = strtoarith_t(yytext, NULL, 16); + return(ARITH_NUM); + } + +0[0-7]+ { + yylval.l_value = strtoarith_t(yytext, NULL, 8); + return(ARITH_NUM); + } + +[0-9]+ { + yylval.l_value = strtoarith_t(yytext, NULL, 10); + return(ARITH_NUM); + } + + +[A-Za-z][A-Za-z0-9_]* { + /* + * If variable doesn't exist, we should initialize + * it to zero. + */ + char *temp; + if (lookupvar(yytext) == NULL) + setvarsafe(yytext, "0", 0); + temp = (char *)ckmalloc(strlen(yytext) + 1); + yylval.s_value = strcpy(temp, yytext); + + return(ARITH_VAR); + } "(" { return(ARITH_LPAREN); } ")" { return(ARITH_RPAREN); } "||" { return(ARITH_OR); } @@ -79,6 +110,17 @@ "-" { return(ARITH_SUB); } "~" { return(ARITH_BNOT); } "!" { return(ARITH_NOT); } +"=" { return(ARITH_ASSIGN); } +"+=" { return(ARITH_ADDASSIGN); } +"-=" { return(ARITH_SUBASSIGN); } +"*=" { return(ARITH_MULASSIGN); } +"/=" { return(ARITH_DIVASSIGN); } +"%=" { return(ARITH_REMASSIGN); } +">>=" { return(ARITH_RSHASSIGN); } +"<<=" { return(ARITH_LSHASSIGN); } +"&=" { return(ARITH_BANDASSIGN); } +"^=" { return(ARITH_BXORASSIGN); } +"|=" { return(ARITH_BORASSIGN); } . { error("arith: syntax error: \"%s\"\n", arith_startbuf); } %% ==== //depot/projects/ia64/bin/sh/shell.h#4 (text+ko) ==== @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)shell.h 8.2 (Berkeley) 5/4/95 - * $FreeBSD: src/bin/sh/shell.h,v 1.14 2002/07/19 08:09:04 tjr Exp $ + * $FreeBSD: src/bin/sh/shell.h,v 1.15 2003/08/30 12:31:44 schweikh Exp $ */ /* @@ -51,6 +51,14 @@ #define JOBS 1 /* #define DEBUG 1 */ +/* + * Type of used arithmetics. SUSv3 requires us to have at least signed long. + */ +typedef long arith_t; +#define strtoarith_t(nptr, endptr, base) strtol(nptr, endptr, base) +#define atoarith_t(arg) strtol(arg, NULL, 0) +#define ARITH_FORMAT_STR "%ld" + typedef void *pointer; #define STATIC static #define MKINIT /* empty */ ==== //depot/projects/ia64/contrib/gnu-sort/ABOUT-NLS#2 (text+ko) ==== @@ -171,190 +171,229 @@ ================== Languages are not equally supported in all packages. The following -matrix shows the current state of internationalization, as of January +matrix shows the current state of internationalization, as of July 2002. The matrix shows, in regard of each package, for which languages PO files have been submitted to translation coordination, with a translation percentage of at least 50%. - Ready PO files bg ca cs da de el en eo es et fi fr - +-------------------------------------+ - a2ps | [] [] [] [] | - bash | [] [] [] [] | - bfd | [] [] | - binutils | [] [] | - bison | [] [] [] | - clisp | [] [] [] [] | - cpio | [] [] [] [] | - diffutils | [] [] [] [] [] [] | - enscript | [] [] | - error | [] [] | - fetchmail | () [] [] [] () | - fileutils | [] [] [] [] [] | - findutils | [] [] [] [] [] | - flex | [] [] [] | - gas | [] | - gawk | [] [] | - gcal | [] [] | - gcc | [] [] | - gettext | [] [] [] [] [] | - gnupg | [] [] [] [] [] [] | - gprof | [] [] | - grep | [] [] [] [] [] [] | - hello | [] [] [] [] [] [] [] [] | - id-utils | [] [] [] | - indent | [] [] [] [] | - jpilot | () [] [] [] | - jwhois | [] [] | - kbd | [] | - ld | [] [] | - libc | [] [] [] [] [] [] [] | - lilypond | [] [] | - lynx | [] [] [] [] | - m4 | [] [] [] [] [] | - make | [] [] [] [] | - mysecretdiary | [] [] | - nano | [] () [] [] [] [] | - nano_1_0 | [] () [] [] [] [] | - opcodes | [] [] [] | - parted | [] [] [] [] | - ptx | [] [] [] [] [] | - python | | - recode | [] [] [] [] [] [] | - sed | [] [] [] [] [] [] [] [] | - sh-utils | [] [] [] [] [] [] [] [] | - sharutils | [] [] [] [] [] [] | - sketch | () [] () | - soundtracker | [] [] [] | - sp | | - tar | [] [] [] [] [] [] | - texinfo | [] [] [] [] [] | - textutils | [] [] [] [] | - util-linux | [] [] [] [] | - wdiff | [] [] [] [] [] | - wget | [] [] [] [] [] [] [] [] | - +-------------------------------------+ - bg ca cs da de el en eo es et fi fr - 0 8 12 31 36 9 1 9 37 15 1 49 + Ready PO files be bg ca cs da de el en eo es et fi fr + +----------------------------------------+ + a2ps | [] [] [] [] | + bash | [] [] [] [] | + bfd | [] [] | + binutils | [] [] | + bison | [] [] [] [] | + clisp | [] [] [] [] | + clisp | | + clisplow | | + cpio | [] [] [] [] | + darkstat | () | + diffutils | [] [] [] [] [] [] | + enscript | [] [] | + error | [] [] [] | + fetchmail | [] () [] [] [] () | + fileutils | [] [] [] [] [] | + findutils | [] [] [] [] [] [] | + flex | [] [] [] [] [] | + gas | [] [] | + gawk | [] [] [] | + gcal | [] [] | + gcc | [] [] | + gettext | [] [] [] [] [] | + gnupg | [] [] [] [] [] [] [] | + gprof | [] [] | + gpsdrive | () () () () () | + grep | [] [] [] [] [] [] [] | + gretl | [] | + gthumb | () () () | + hello | [] [] [] [] [] [] [] [] [] | + id-utils | [] [] [] | + indent | [] [] [] [] [] | + jpilot | () [] [] [] | + jwhois | [] [] | + kbd | [] [] [] | + ld | [] [] | + libc | [] [] [] [] [] [] [] | + libiconv | [] [] [] [] | + lifelines | () () | + lilypond | [] [] [] | + lingoteach | [] [] | + lingoteach_lessons| () () | + lynx | [] [] [] [] [] | + m4 | [] [] [] [] [] | + make | [] [] [] [] | + man-db | [] () () [] () () | + mysecretdiary | [] [] [] | + nano | [] () [] [] [] [] | + nano_1_0 | [] () [] [] [] [] | + opcodes | [] [] [] | + parted | [] [] [] [] [] | + ptx | [] [] [] [] [] [] [] | + python | | + recode | [] [] [] [] [] [] | + sed | [] [] [] [] [] [] [] [] [] | + sh-utils | [] [] [] [] | + sharutils | [] [] [] [] [] [] | + sketch | () [] () | + soundtracker | [] [] [] | + sp | [] | + tar | [] [] [] [] [] [] | + texinfo | [] [] [] [] [] | + textutils | [] [] [] [] [] | + util-linux | [] [] [] [] [] [] | + vorbis-tools | [] | + wastesedge | | + wdiff | [] [] [] [] [] [] | + wget | [] [] [] [] [] [] [] [] [] [] | + +----------------------------------------+ + be bg ca cs da de el en eo es et fi fr + 0 2 19 10 30 44 9 1 12 45 16 3 53 gl he hr hu id it ja ko lv nb nl nn +-------------------------------------+ a2ps | () () [] | - bash | | + bash | [] | bfd | [] | binutils | [] | - bison | [] | + bison | [] [] [] [] | clisp | [] | - cpio | [] [] [] | - diffutils | [] [] | - enscript | [] | + clisp | | + clisplow | | + cpio | [] [] [] [] | + darkstat | () | + diffutils | [] [] [] [] [] | + enscript | [] [] | error | [] | - fetchmail | | - fileutils | [] [] | - findutils | [] [] [] [] [] [] | + fetchmail | [] | + fileutils | [] [] [] | + findutils | [] [] [] [] [] [] [] [] | flex | [] | gas | | gawk | [] | gcal | | gcc | [] | - gettext | [] | - gnupg | [] [] [] | + gettext | [] [] | + gnupg | [] [] [] [] | gprof | | - grep | [] [] | - hello | [] [] [] [] [] [] [] [] [] | - id-utils | [] | - indent | [] [] [] | + gpsdrive | [] () () | + grep | [] [] [] [] [] [] [] | + gretl | | + gthumb | () () | + hello | [] [] [] [] [] [] [] [] [] [] [] [] | + id-utils | [] [] | + indent | [] [] [] [] | jpilot | () () | - jwhois | | + jwhois | [] [] | kbd | | ld | | libc | [] [] [] [] | + libiconv | [] [] [] | + lifelines | | lilypond | [] [] | - lynx | [] [] | + lingoteach | [] | + lingoteach_lessons| | + lynx | [] [] [] [] | m4 | [] [] [] [] | - make | [] [] [] [] | - mysecretdiary | | - nano | [] [] [] () () [] | - nano_1_0 | [] [] [] () () [] | - opcodes | | + make | [] [] [] [] [] [] | + man-db | () () | + mysecretdiary | [] | + nano | [] [] [] [] [] [] | + nano_1_0 | [] [] [] [] [] | + opcodes | [] [] | parted | [] [] [] | - ptx | [] [] [] [] | + ptx | [] [] [] [] [] | python | | recode | [] [] [] | - sed | [] [] [] [] [] [] [] | - sh-utils | [] [] [] [] [] | + sed | [] [] [] [] [] [] [] [] | + sh-utils | [] [] [] | sharutils | [] [] [] | sketch | () | - soundtracker | [] | + soundtracker | [] [] | sp | | - tar | [] [] [] | + tar | [] [] [] [] [] | texinfo | [] [] [] | - textutils | [] [] | + textutils | [] [] [] | util-linux | () [] | - wdiff | | - wget | [] [] [] [] [] | + vorbis-tools | | + wastesedge | | + wdiff | [] [] [] | + wget | [] [] [] [] [] [] | +-------------------------------------+ gl he hr hu id it ja ko lv nb nl nn - 20 6 1 3 6 11 22 9 1 6 17 4 + 23 9 12 18 14 13 26 9 1 8 19 4 - no pl pt pt_BR ru sk sl sv tr uk zh - +-------------------------------------+ - a2ps | () () () [] [] [] () | 8 - bash | | 4 - bfd | [] [] | 5 - binutils | [] | 4 - bison | [] [] [] | 7 - clisp | | 5 - cpio | [] [] [] [] | 11 - diffutils | [] [] [] | 11 - enscript | [] [] [] | 6 - error | [] [] | 5 - fetchmail | () () | 3 - fileutils | [] [] [] [] | 11 - findutils | [] [] [] [] [] [] | 17 - flex | [] [] | 6 - gas | [] | 2 - gawk | [] [] | 5 - gcal | [] | 3 - gcc | [] | 4 - gettext | [] [] [] [] | 10 - gnupg | [] [] [] | 12 - gprof | [] [] | 4 - grep | [] [] [] [] [] | 13 - hello | [] [] [] [] [] [] [] | 24 - id-utils | [] [] | 6 - indent | [] [] [] [] | 11 - jpilot | () () | 3 - jwhois | () () | 2 - kbd | [] [] | 3 - ld | [] [] | 4 - libc | [] [] [] [] [] [] | 17 - lilypond | [] | 5 - lynx | [] [] [] | 9 - m4 | [] [] [] | 12 - make | [] [] [] [] | 12 - mysecretdiary | [] | 3 - nano | () [] [] [] | 12 - nano_1_0 | () [] [] [] | 12 - opcodes | [] [] | 5 - parted | [] [] [] | 10 - ptx | [] [] [] [] [] [] | 15 - python | | 0 - recode | [] [] [] [] | 13 - sed | [] [] [] [] [] [] | 21 - sh-utils | [] [] [] [] [] [] [] [] [] | 22 - sharutils | [] [] | 11 - sketch | () | 1 - soundtracker | | 4 - sp | | 0 - tar | [] [] [] [] [] [] [] | 16 - texinfo | [] [] | 10 - textutils | [] [] | 8 - util-linux | [] [] [] | 8 - wdiff | [] [] [] [] | 9 - wget | [] [] [] [] [] [] | 19 - +-------------------------------------+ - 35 teams no pl pt pt_BR ru sk sl sv tr uk zh - 54 domains 5 12 2 11 25 10 11 39 29 4 1 463 + no pl pt pt_BR ru sk sl sv tr uk zh_TW + +----------------------------------------+ + a2ps | () () () [] [] [] [] [] | 10 + bash | [] | 6 + bfd | [] [] | 5 + binutils | [] [] | 5 + bison | [] [] [] | 11 + clisp | | 5 + clisp | | 0 + clisplow | | 0 + cpio | [] [] [] [] | 12 + darkstat | [] () | 1 + diffutils | [] [] [] [] [] [] | 17 + enscript | [] [] [] [] | 8 + error | [] [] [] | 7 + fetchmail | () () [] | 6 + fileutils | [] [] [] [] [] | 13 + findutils | [] [] [] [] [] [] [] | 21 + flex | [] [] [] | 9 + gas | [] | 3 + gawk | [] [] | 6 + gcal | [] [] | 4 + gcc | [] | 4 + gettext | [] [] [] [] [] [] | 13 + gnupg | [] [] [] | 14 + gprof | [] [] | 4 + gpsdrive | [] [] () | 3 + grep | [] [] [] [] | 18 + gretl | | 1 + gthumb | () () [] | 1 + hello | [] [] [] [] [] [] [] | 28 + id-utils | [] [] [] [] | 9 + indent | [] [] [] [] [] | 14 + jpilot | () () [] | 4 + jwhois | [] () () [] [] | 7 + kbd | [] [] | 5 + ld | [] [] | 4 + libc | [] [] [] [] [] [] | 17 + libiconv | [] [] [] [] | 11 + lifelines | [] | 1 + lilypond | [] | 6 + lingoteach | [] [] | 5 + lingoteach_lessons| | 0 + lynx | [] [] [] [] | 13 + m4 | [] [] [] | 12 + make | [] [] [] [] | 14 + man-db | | 3 + mysecretdiary | [] [] [] | 7 + nano | [] [] [] [] | 15 + nano_1_0 | [] [] [] [] | 14 + opcodes | [] [] | 7 + parted | [] [] [] | 11 + ptx | [] [] [] [] [] [] [] | 19 + python | | 0 + recode | [] [] [] [] [] [] | 15 + sed | [] [] [] [] [] [] | 23 + sh-utils | [] | 8 + sharutils | [] [] [] [] | 13 + sketch | [] () [] | 4 + soundtracker | [] | 6 + sp | | 1 + tar | [] [] [] [] [] [] [] | 18 + texinfo | [] [] | 10 + textutils | [] [] [] [] [] | 13 + util-linux | [] [] [] | 10 + vorbis-tools | [] | 2 + wastesedge | | 0 + wdiff | [] [] [] [] [] | 14 + wget | [] [] [] [] [] [] [] [] | 24 + +----------------------------------------+ + 36 teams no pl pt pt_BR ru sk sl sv tr uk zh_TW + 67 domains 4 15 2 24 26 12 10 47 42 4 8 594 Some counters in the preceding matrix are higher than the number of visible blocks let us expect. This is because a few extra PO files are @@ -367,7 +406,7 @@ lag between the mere existence a PO file and its wide availability in a distribution. - If January 2002 seems to be old, you may fetch a more recent copy of + If July 2002 seems to be old, you may fetch a more recent copy of this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date matrix with full percentage details can be found at `http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'. >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Aug 30 23:45:07 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B99B316A4C2; Sat, 30 Aug 2003 23:45:06 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 64CB816A4BF for ; Sat, 30 Aug 2003 23:45:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 313A543FF3 for ; Sat, 30 Aug 2003 23:45:03 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h7V6j30U013272 for ; Sat, 30 Aug 2003 23:45:03 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h7V6j2Bs013269 for perforce@freebsd.org; Sat, 30 Aug 2003 23:45:02 -0700 (PDT) Date: Sat, 30 Aug 2003 23:45:02 -0700 (PDT) Message-Id: <200308310645.h7V6j2Bs013269@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 37260 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 31 Aug 2003 06:45:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=37260 Change 37260 by marcel@marcel_nfs on 2003/08/30 23:44:57 IFC @37254 Affected files ... .. //depot/projects/uart/alpha/alpha/pmap.c#9 integrate .. //depot/projects/uart/alpha/alpha/vm_machdep.c#6 integrate .. //depot/projects/uart/amd64/acpica/OsdEnvironment.c#3 integrate .. //depot/projects/uart/amd64/acpica/acpi_machdep.c#3 integrate .. //depot/projects/uart/amd64/acpica/acpi_wakeup.c#3 integrate .. //depot/projects/uart/amd64/amd64/vm_machdep.c#5 integrate .. //depot/projects/uart/amd64/pci/pci_bus.c#4 integrate .. //depot/projects/uart/conf/files#19 integrate .. //depot/projects/uart/ddb/db_ps.c#4 integrate .. //depot/projects/uart/dev/acpica/Osd/OsdHardware.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi.c#7 integrate .. //depot/projects/uart/dev/acpica/acpi_cpu.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi_lid.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi_powerres.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi_resource.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi_thermal.c#3 integrate .. //depot/projects/uart/dev/acpica/acpi_timer.c#4 integrate .. //depot/projects/uart/dev/acpica/acpica_support.c#3 delete .. //depot/projects/uart/dev/acpica/acpica_support.h#2 delete .. //depot/projects/uart/dev/acpica/acpiio.h#3 integrate .. //depot/projects/uart/dev/acpica/acpivar.h#4 integrate .. //depot/projects/uart/dev/ata/ata-lowlevel.c#4 integrate .. //depot/projects/uart/dev/ata/ata-queue.c#3 integrate .. //depot/projects/uart/dev/ep/if_ep.c#5 integrate .. //depot/projects/uart/dev/ep/if_ep_isa.c#4 integrate .. //depot/projects/uart/dev/ep/if_ep_pccard.c#4 integrate .. //depot/projects/uart/dev/exca/exca.c#4 integrate .. //depot/projects/uart/dev/firewire/sbp.c#8 integrate .. //depot/projects/uart/dev/ichsmb/ichsmb_pci.c#4 integrate .. //depot/projects/uart/dev/pccard/pccardvar.h#2 integrate .. //depot/projects/uart/dev/pci/pci.c#6 integrate .. //depot/projects/uart/dev/pci/pcireg.h#3 integrate .. //depot/projects/uart/dev/puc/puc_pci.c#4 integrate .. //depot/projects/uart/dev/sound/pci/es137x.c#4 integrate .. //depot/projects/uart/dev/sound/pci/ich.c#7 integrate .. //depot/projects/uart/dev/sound/pcm/ac97.c#4 integrate .. //depot/projects/uart/geom/geom.h#2 integrate .. //depot/projects/uart/geom/geom_dev.c#4 integrate .. //depot/projects/uart/i386/acpica/OsdEnvironment.c#2 integrate .. //depot/projects/uart/i386/acpica/acpi_machdep.c#2 integrate .. //depot/projects/uart/i386/acpica/acpi_wakecode.S#2 integrate .. //depot/projects/uart/i386/acpica/acpi_wakeup.c#5 integrate .. //depot/projects/uart/i386/i386/vm_machdep.c#4 integrate .. //depot/projects/uart/i386/pci/pci_bus.c#4 integrate .. //depot/projects/uart/ia64/acpica/OsdEnvironment.c#2 integrate .. //depot/projects/uart/ia64/acpica/acpi_machdep.c#2 integrate .. //depot/projects/uart/ia64/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/uart/ia64/ia64/vm_machdep.c#5 integrate .. //depot/projects/uart/kern/uipc_syscalls.c#4 integrate .. //depot/projects/uart/kern/vfs_bio.c#4 integrate .. //depot/projects/uart/kern/vfs_cluster.c#3 integrate .. //depot/projects/uart/modules/Makefile#6 integrate .. //depot/projects/uart/modules/acpi/Makefile#5 integrate .. //depot/projects/uart/modules/pst/Makefile#1 branch .. //depot/projects/uart/net/if_ethersubr.c#4 integrate .. //depot/projects/uart/netatalk/aarp.c#2 integrate .. //depot/projects/uart/netatalk/ddp_output.c#2 integrate .. //depot/projects/uart/netinet/igmp.c#3 integrate .. //depot/projects/uart/pc98/pc98/sio.c#4 integrate .. //depot/projects/uart/pccard/i82365.h#2 integrate .. //depot/projects/uart/pccard/pcic.c#3 integrate .. //depot/projects/uart/powerpc/powerpc/vm_machdep.c#5 integrate .. //depot/projects/uart/sparc64/sparc64/vm_machdep.c#4 integrate .. //depot/projects/uart/sys/buf.h#3 integrate .. //depot/projects/uart/sys/mac.h#4 integrate .. //depot/projects/uart/ufs/ffs/ffs_softdep.c#2 integrate .. //depot/projects/uart/vm/swap_pager.c#9 integrate .. //depot/projects/uart/vm/vm_map.c#8 integrate .. //depot/projects/uart/vm/vm_map.h#5 integrate .. //depot/projects/uart/vm/vm_page.c#5 integrate .. //depot/projects/uart/vm/vm_pageout.c#6 integrate .. //depot/projects/uart/vm/vnode_pager.c#5 integrate Differences ... ==== //depot/projects/uart/alpha/alpha/pmap.c#9 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.134 2003/08/20 20:12:05 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.135 2003/08/28 23:12:28 alc Exp $"); #include #include @@ -340,7 +340,6 @@ static int pmap_release_free_page(pmap_t pmap, vm_page_t p); static vm_page_t _pmap_allocpte(pmap_t pmap, unsigned ptepindex); -static vm_page_t pmap_page_lookup(vm_object_t object, vm_pindex_t pindex); static int pmap_unuse_pt(pmap_t, vm_offset_t, vm_page_t); #ifdef SMP static void pmap_invalidate_page_action(void *arg); @@ -914,22 +913,6 @@ return ALPHA_PHYS_TO_K0SEG(start); } - -static vm_page_t -pmap_page_lookup(vm_object_t object, vm_pindex_t pindex) -{ - vm_page_t m; -retry: - m = vm_page_lookup(object, pindex); - if (m != NULL) { - vm_page_lock_queues(); - if (vm_page_sleep_if_busy(m, FALSE, "pplookp")) - goto retry; - vm_page_unlock_queues(); - } - return m; -} - /*************************************************** * Page table page management routines..... ***************************************************/ @@ -967,10 +950,8 @@ if (m->pindex < NUSERLEV3MAPS) { /* unhold the level 2 page table */ vm_page_t lev2pg; - lev2pg = vm_page_lookup(pmap->pm_pteobj, - NUSERLEV3MAPS + pmap_lev1_index(va)); - while (vm_page_sleep_if_busy(lev2pg, FALSE, "pulook")) - vm_page_lock_queues(); + + lev2pg = PHYS_TO_VM_PAGE(pmap_pte_pa(pmap_lev1pte(pmap, va))); vm_page_unhold(lev2pg); if (lev2pg->hold_count == 0) _pmap_unwire_pte_hold(pmap, va, lev2pg); @@ -1027,9 +1008,7 @@ (pmap->pm_ptphint->pindex == ptepindex)) { mpte = pmap->pm_ptphint; } else { - while ((mpte = vm_page_lookup(pmap->pm_pteobj, ptepindex)) != NULL && - vm_page_sleep_if_busy(mpte, FALSE, "pulook")) - vm_page_lock_queues(); + mpte = PHYS_TO_VM_PAGE(pmap_pte_pa(pmap_lev2pte(pmap, va))); pmap->pm_ptphint = mpte; } } @@ -1240,9 +1219,9 @@ if (!pmap_pte_v(l1pte)) _pmap_allocpte(pmap, NUSERLEV3MAPS + l1index); else { - vm_page_t l2page = - pmap_page_lookup(pmap->pm_pteobj, - NUSERLEV3MAPS + l1index); + vm_page_t l2page; + + l2page = PHYS_TO_VM_PAGE(pmap_pte_pa(l1pte)); l2page->hold_count++; } l2map = (pt_entry_t*) ALPHA_PHYS_TO_K0SEG(pmap_pte_pa(l1pte)); @@ -1297,7 +1276,7 @@ (pmap->pm_ptphint->pindex == ptepindex)) { m = pmap->pm_ptphint; } else { - m = pmap_page_lookup(pmap->pm_pteobj, ptepindex); + m = PHYS_TO_VM_PAGE(pmap_pte_pa(lev2pte)); pmap->pm_ptphint = m; } m->hold_count++; @@ -1999,7 +1978,6 @@ if (mpte && (mpte->pindex == ptepindex)) { mpte->hold_count++; } else { -retry: /* * Get the level 2 entry */ @@ -2014,12 +1992,9 @@ (pmap->pm_ptphint->pindex == ptepindex)) { mpte = pmap->pm_ptphint; } else { - mpte = pmap_page_lookup(pmap->pm_pteobj, - ptepindex); + mpte = PHYS_TO_VM_PAGE(pmap_pte_pa(l2pte)); pmap->pm_ptphint = mpte; } - if (mpte == NULL) - goto retry; mpte->hold_count++; } else { mpte = _pmap_allocpte(pmap, ptepindex); ==== //depot/projects/uart/alpha/alpha/vm_machdep.c#6 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/vm_machdep.c,v 1.93 2003/08/16 23:15:13 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/vm_machdep.c,v 1.94 2003/08/29 20:04:09 alc Exp $"); #include "opt_kstack_pages.h" @@ -82,6 +82,8 @@ #include #include #include +#include +#include #include #include @@ -101,6 +103,20 @@ #include +static void sf_buf_init(void *arg); +SYSINIT(sock_sf, SI_SUB_MBUF, SI_ORDER_ANY, sf_buf_init, NULL) + +/* + * Expanded sf_freelist head. Really an SLIST_HEAD() in disguise, with the + * sf_freelist head with the sf_lock mutex. + */ +static struct { + SLIST_HEAD(, sf_buf) sf_head; + struct mtx sf_lock; +} sf_freelist; + +static u_int sf_buf_alloc_want; + /* * Finish a fork operation, with process p2 nearly set up. * Copy and update the pcb, set up the stack so that the child @@ -370,6 +386,91 @@ } /* + * Allocate a pool of sf_bufs (sendfile(2) or "super-fast" if you prefer. :-)) + */ +static void +sf_buf_init(void *arg) +{ + struct sf_buf *sf_bufs; + vm_offset_t sf_base; + int i; + + mtx_init(&sf_freelist.sf_lock, "sf_bufs list lock", NULL, MTX_DEF); + mtx_lock(&sf_freelist.sf_lock); + SLIST_INIT(&sf_freelist.sf_head); + sf_base = kmem_alloc_nofault(kernel_map, nsfbufs * PAGE_SIZE); + sf_bufs = malloc(nsfbufs * sizeof(struct sf_buf), M_TEMP, + M_NOWAIT | M_ZERO); + for (i = 0; i < nsfbufs; i++) { + sf_bufs[i].kva = sf_base + i * PAGE_SIZE; + SLIST_INSERT_HEAD(&sf_freelist.sf_head, &sf_bufs[i], free_list); + } + sf_buf_alloc_want = 0; + mtx_unlock(&sf_freelist.sf_lock); +} + +/* + * Get an sf_buf from the freelist. Will block if none are available. + */ +struct sf_buf * +sf_buf_alloc(struct vm_page *m) +{ + struct sf_buf *sf; + int error; + + mtx_lock(&sf_freelist.sf_lock); + while ((sf = SLIST_FIRST(&sf_freelist.sf_head)) == NULL) { + sf_buf_alloc_want++; + error = msleep(&sf_freelist, &sf_freelist.sf_lock, PVM|PCATCH, + "sfbufa", 0); + sf_buf_alloc_want--; + + /* + * If we got a signal, don't risk going back to sleep. + */ + if (error) + break; + } + if (sf != NULL) { + SLIST_REMOVE_HEAD(&sf_freelist.sf_head, free_list); + sf->m = m; + pmap_qenter(sf->kva, &sf->m, 1); + } + mtx_unlock(&sf_freelist.sf_lock); + return (sf); +} + +/* + * Detatch mapped page and release resources back to the system. + */ +void +sf_buf_free(void *addr, void *args) +{ + struct sf_buf *sf; + struct vm_page *m; + + sf = args; + pmap_qremove((vm_offset_t)addr, 1); + m = sf->m; + vm_page_lock_queues(); + vm_page_unwire(m, 0); + /* + * Check for the object going away on us. This can + * happen since we don't hold a reference to it. + * If so, we're responsible for freeing the page. + */ + if (m->wire_count == 0 && m->object == NULL) + vm_page_free(m); + vm_page_unlock_queues(); + sf->m = NULL; + mtx_lock(&sf_freelist.sf_lock); + SLIST_INSERT_HEAD(&sf_freelist.sf_head, sf, free_list); + if (sf_buf_alloc_want > 0) + wakeup_one(&sf_freelist); + mtx_unlock(&sf_freelist.sf_lock); +} + +/* * Software interrupt handler for queued VM system processing. */ void ==== //depot/projects/uart/amd64/acpica/OsdEnvironment.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/acpica/OsdEnvironment.c,v 1.10 2003/07/25 21:10:18 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/OsdEnvironment.c,v 1.11 2003/08/28 16:30:31 njl Exp $"); /* * 6.1 : Environmental support @@ -40,7 +40,7 @@ u_long amd64_acpi_root; SYSCTL_ULONG(_machdep, OID_AUTO, acpi_root, CTLFLAG_RD, &amd64_acpi_root, 0, - "The physical address of the RSDP"); + "The physical address of the RSDP"); ACPI_STATUS AcpiOsInitialize(void) ==== //depot/projects/uart/amd64/acpica/acpi_machdep.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_machdep.c,v 1.10 2003/07/25 21:10:19 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_machdep.c,v 1.11 2003/08/28 16:30:31 njl Exp $"); #include #include @@ -38,9 +38,8 @@ { struct acpi_softc *sc; - if ((sc = device_get_softc(dev)) == NULL) { + if ((sc = device_get_softc(dev)) == NULL) return (ENXIO); - } acpi_install_wakeup_handler(sc); ==== //depot/projects/uart/amd64/acpica/acpi_wakeup.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_wakeup.c,v 1.20 2003/07/25 21:10:19 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_wakeup.c,v 1.21 2003/08/28 16:30:31 njl Exp $"); #include #include @@ -37,7 +37,6 @@ int acpi_sleep_machdep(struct acpi_softc *sc, int state) { - return (0); } ==== //depot/projects/uart/amd64/amd64/vm_machdep.c#5 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.216 2003/08/16 23:15:14 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.217 2003/08/29 20:04:09 alc Exp $"); #include "opt_isa.h" #include "opt_kstack_pages.h" @@ -57,7 +57,9 @@ #include #include #include +#include #include +#include #include #include @@ -78,8 +80,21 @@ #include static void cpu_reset_real(void); +static void sf_buf_init(void *arg); +SYSINIT(sock_sf, SI_SUB_MBUF, SI_ORDER_ANY, sf_buf_init, NULL) /* + * Expanded sf_freelist head. Really an SLIST_HEAD() in disguise, with the + * sf_freelist head with the sf_lock mutex. + */ +static struct { + SLIST_HEAD(, sf_buf) sf_head; + struct mtx sf_lock; +} sf_freelist; + +static u_int sf_buf_alloc_want; + +/* * Finish a fork operation, with process p2 nearly set up. * Copy and update the pcb, set up the stack so that the child * ready to run and return to user mode. @@ -349,6 +364,86 @@ } /* + * Allocate a pool of sf_bufs (sendfile(2) or "super-fast" if you prefer. :-)) + */ +static void +sf_buf_init(void *arg) +{ + struct sf_buf *sf_bufs; + int i; + + mtx_init(&sf_freelist.sf_lock, "sf_bufs list lock", NULL, MTX_DEF); + mtx_lock(&sf_freelist.sf_lock); + SLIST_INIT(&sf_freelist.sf_head); + sf_bufs = malloc(nsfbufs * sizeof(struct sf_buf), M_TEMP, + M_NOWAIT | M_ZERO); + for (i = 0; i < nsfbufs; i++) + SLIST_INSERT_HEAD(&sf_freelist.sf_head, &sf_bufs[i], free_list); + sf_buf_alloc_want = 0; + mtx_unlock(&sf_freelist.sf_lock); +} + +/* + * Get an sf_buf from the freelist. Will block if none are available. + */ +struct sf_buf * +sf_buf_alloc(struct vm_page *m) +{ + struct sf_buf *sf; + int error; + + mtx_lock(&sf_freelist.sf_lock); + while ((sf = SLIST_FIRST(&sf_freelist.sf_head)) == NULL) { + sf_buf_alloc_want++; + error = msleep(&sf_freelist, &sf_freelist.sf_lock, PVM|PCATCH, + "sfbufa", 0); + sf_buf_alloc_want--; + + /* + * If we got a signal, don't risk going back to sleep. + */ + if (error) + break; + } + if (sf != NULL) { + SLIST_REMOVE_HEAD(&sf_freelist.sf_head, free_list); + sf->m = m; + sf->kva = PHYS_TO_DMAP(m->phys_addr); + } + mtx_unlock(&sf_freelist.sf_lock); + return (sf); +} + +/* + * Detatch mapped page and release resources back to the system. + */ +void +sf_buf_free(void *addr, void *args) +{ + struct sf_buf *sf; + struct vm_page *m; + + sf = args; + m = sf->m; + vm_page_lock_queues(); + vm_page_unwire(m, 0); + /* + * Check for the object going away on us. This can + * happen since we don't hold a reference to it. + * If so, we're responsible for freeing the page. + */ + if (m->wire_count == 0 && m->object == NULL) + vm_page_free(m); + vm_page_unlock_queues(); + sf->m = NULL; + mtx_lock(&sf_freelist.sf_lock); + SLIST_INSERT_HEAD(&sf_freelist.sf_head, sf, free_list); + if (sf_buf_alloc_want > 0) + wakeup_one(&sf_freelist); + mtx_unlock(&sf_freelist.sf_lock); +} + +/* * Software interrupt handler for queued VM system processing. */ void ==== //depot/projects/uart/amd64/pci/pci_bus.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.101 2003/08/22 07:36:49 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.102 2003/08/28 21:22:24 jhb Exp $"); #include "opt_cpu.h" @@ -328,10 +328,18 @@ for (slot = 0; slot <= PCI_SLOTMAX; slot++) { func = 0; hdrtype = nexus_pcib_read_config(0, bus, slot, func, - PCIR_HEADERTYPE, 1); + PCIR_HDRTYPE, 1); + /* + * When enumerating bus devices, the standard says that + * one should check the header type and ignore the slots whose + * header types that the software doesn't know about. We use + * this to filter out devices. + */ + if ((hdrtype & PCIM_HDRTYPE) > PCI_MAXHDRTYPE) + continue; if ((hdrtype & PCIM_MFDEV) && (!found_orion || hdrtype != 0xff)) - pcifunchigh = 7; + pcifunchigh = PCI_FUNCMAX; else pcifunchigh = 0; for (func = 0; func <= pcifunchigh; func++) { ==== //depot/projects/uart/conf/files#19 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.816 2003/08/24 09:22:25 sos Exp $ +# $FreeBSD: src/sys/conf/files,v 1.817 2003/08/29 04:02:18 njl Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -235,7 +235,6 @@ dev/aac/aac_cam.c optional aacp aac dev/aac/aac_linux.c optional aac compat_linux dev/acpica/acpi.c optional acpi -dev/acpica/acpica_support.c optional acpi dev/acpica/acpi_acad.c optional acpi dev/acpica/acpi_battery.c optional acpi dev/acpica/acpi_button.c optional acpi ==== //depot/projects/uart/ddb/db_ps.c#4 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/ddb/db_ps.c,v 1.48 2003/07/31 17:29:42 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/ddb/db_ps.c,v 1.49 2003/08/30 19:06:57 phk Exp $"); #include #include @@ -70,7 +70,7 @@ p = &proc0; db_setup_paging(db_simple_pager, &quit, DB_LINES_PER_PAGE); - db_printf(" pid proc addr uid ppid pgrp flag stat wmesg wchan cmd\n"); + db_printf(" pid proc uarea uid ppid pgrp flag stat wmesg wchan cmd\n"); while (--np >= 0 && !quit) { if (p == NULL) { printf("oops, ran out of processes early!\n"); ==== //depot/projects/uart/dev/acpica/Osd/OsdHardware.c#3 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/Osd/OsdHardware.c,v 1.10 2003/07/13 22:57:16 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/Osd/OsdHardware.c,v 1.11 2003/08/28 21:22:25 jhb Exp $ */ /* @@ -213,10 +213,10 @@ return (bus); subclass = pci_cfgregread(bus, slot, func, PCIR_SUBCLASS, 1); /* Find the header type, masking off the multifunction bit */ - header = pci_cfgregread(bus, slot, func, PCIR_HEADERTYPE, 1) & 0x7f; - if (header == 1 && subclass == PCIS_BRIDGE_PCI) + header = pci_cfgregread(bus, slot, func, PCIR_HDRTYPE, 1) & PCIM_HDRTYPE; + if (header == PCIM_HDRTYPE_BRIDGE && subclass == PCIS_BRIDGE_PCI) bus = pci_cfgregread(bus, slot, func, PCIR_SECBUS_1, 1); - if (header == 2 && subclass == PCIS_BRIDGE_CARDBUS) + if (header == PCIM_HDRTYPE_CARDBUS && subclass == PCIS_BRIDGE_CARDBUS) bus = pci_cfgregread(bus, slot, func, PCIR_SECBUS_2, 1); return (bus); } ==== //depot/projects/uart/dev/acpica/acpi.c#7 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.95 2003/08/15 02:10:38 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.97 2003/08/29 04:02:19 njl Exp $ */ #include "opt_acpi.h" @@ -46,28 +46,18 @@ #include #include - #include #include "acpi.h" - -#include - #include #include MALLOC_DEFINE(M_ACPIDEV, "acpidev", "ACPI devices"); -/* - * Hooks for the ACPI CA debugging infrastructure - */ +/* Hooks for the ACPI CA debugging infrastructure */ #define _COMPONENT ACPI_BUS ACPI_MODULE_NAME("ACPI") -/* - * Character device - */ - static d_open_t acpiopen; static d_close_t acpiclose; static d_ioctl_t acpiioctl; @@ -95,34 +85,36 @@ static void acpi_identify(driver_t *driver, device_t parent); static int acpi_probe(device_t dev); static int acpi_attach(device_t dev); -static device_t acpi_add_child(device_t bus, int order, const char *name, int unit); +static device_t acpi_add_child(device_t bus, int order, const char *name, + int unit); static int acpi_print_child(device_t bus, device_t child); -static int acpi_read_ivar(device_t dev, device_t child, int index, uintptr_t *result); -static int acpi_write_ivar(device_t dev, device_t child, int index, uintptr_t value); -static int acpi_set_resource(device_t dev, device_t child, int type, int rid, u_long start, - u_long count); -static int acpi_get_resource(device_t dev, device_t child, int type, int rid, u_long *startp, - u_long *countp); -static struct resource *acpi_alloc_resource(device_t bus, device_t child, int type, int *rid, - u_long start, u_long end, u_long count, u_int flags); -static int acpi_release_resource(device_t bus, device_t child, int type, int rid, struct resource *r); +static int acpi_read_ivar(device_t dev, device_t child, int index, + uintptr_t *result); +static int acpi_write_ivar(device_t dev, device_t child, int index, + uintptr_t value); +static int acpi_set_resource(device_t dev, device_t child, int type, + int rid, u_long start, u_long count); +static int acpi_get_resource(device_t dev, device_t child, int type, + int rid, u_long *startp, u_long *countp); +static struct resource *acpi_alloc_resource(device_t bus, device_t child, + int type, int *rid, u_long start, u_long end, + u_long count, u_int flags); +static int acpi_release_resource(device_t bus, device_t child, int type, + int rid, struct resource *r); static u_int32_t acpi_isa_get_logicalid(device_t dev); static u_int32_t acpi_isa_get_compatid(device_t dev); -static int acpi_isa_pnp_probe(device_t bus, device_t child, struct isa_pnp_id *ids); - +static int acpi_isa_pnp_probe(device_t bus, device_t child, + struct isa_pnp_id *ids); static void acpi_probe_children(device_t bus); -static ACPI_STATUS acpi_probe_child(ACPI_HANDLE handle, UINT32 level, void *context, void **status); - +static ACPI_STATUS acpi_probe_child(ACPI_HANDLE handle, UINT32 level, + void *context, void **status); static void acpi_shutdown_pre_sync(void *arg, int howto); static void acpi_shutdown_final(void *arg, int howto); - static void acpi_enable_fixed_events(struct acpi_softc *sc); - static void acpi_system_eventhandler_sleep(void *arg, int state); static void acpi_system_eventhandler_wakeup(void *arg, int state); static int acpi_supported_sleep_state_sysctl(SYSCTL_HANDLER_ARGS); static int acpi_sleep_state_sysctl(SYSCTL_HANDLER_ARGS); - static int acpi_pm_func(u_long cmd, void *arg, ...); static device_method_t acpi_methods[] = { @@ -165,15 +157,19 @@ DRIVER_MODULE(acpi, nexus, acpi_driver, acpi_devclass, acpi_modevent, 0); MODULE_VERSION(acpi, 100); -SYSCTL_INT(_debug, OID_AUTO, acpi_debug_layer, CTLFLAG_RW, &AcpiDbgLayer, 0, ""); -SYSCTL_INT(_debug, OID_AUTO, acpi_debug_level, CTLFLAG_RW, &AcpiDbgLevel, 0, ""); +SYSCTL_INT(_debug, OID_AUTO, acpi_debug_layer, CTLFLAG_RW, &AcpiDbgLayer, 0, + ""); +SYSCTL_INT(_debug, OID_AUTO, acpi_debug_level, CTLFLAG_RW, &AcpiDbgLevel, 0, + ""); static int acpi_ca_version = ACPI_CA_VERSION; -SYSCTL_INT(_debug, OID_AUTO, acpi_ca_version, CTLFLAG_RD, &acpi_ca_version, 0, ""); +SYSCTL_INT(_debug, OID_AUTO, acpi_ca_version, CTLFLAG_RD, &acpi_ca_version, 0, + ""); /* * ACPI can only be loaded as a module by the loader; activating it after * system bootstrap time is not useful, and can be fatal to the system. - * It also cannot be unloaded, since the entire system bus heirarchy hangs off it. + * It also cannot be unloaded, since the entire system bus heirarchy hangs + * off it. */ static int acpi_modevent(struct module *mod, int event, void *junk) @@ -182,17 +178,17 @@ case MOD_LOAD: if (!cold) { printf("The ACPI driver cannot be loaded after boot.\n"); - return(EPERM); + return (EPERM); } break; case MOD_UNLOAD: if (!cold && power_pm_get_type() == POWER_PM_TYPE_ACPI) - return(EBUSY); + return (EBUSY); break; default: break; } - return(0); + return (0); } /* @@ -201,10 +197,10 @@ static void acpi_identify(driver_t *driver, device_t parent) { - device_t child; - int error; + device_t child; + int error; #ifdef ACPI_DEBUGGER - char *debugpoint; + char *debugpoint; #endif ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); @@ -212,32 +208,26 @@ if (!cold) return_VOID; - /* - * Check that we haven't been disabled with a hint. - */ + /* Check that we haven't been disabled with a hint. */ if (resource_disabled("acpi", 0)) return_VOID; - /* - * Make sure we're not being doubly invoked. - */ + /* Make sure we're not being doubly invoked. */ if (device_find_child(parent, "acpi", 0) != NULL) return_VOID; #if __FreeBSD_version >= 500000 - /* initialise the ACPI mutex */ + /* Initialise the ACPI mutex */ mtx_init(&acpi_mutex, "ACPI global lock", NULL, MTX_DEF); #endif - /* - * Start up the ACPI CA subsystem. - */ + /* Start up the ACPI CA subsystem. */ #ifdef ACPI_DEBUGGER debugpoint = getenv("debug.acpi.debugger"); if (debugpoint) { if (!strcmp(debugpoint, "init")) acpi_EnterDebugger(); - freeenv(debugpoint); + freeenv(debugpoint); } #endif if (ACPI_FAILURE(error = AcpiInitializeSubsystem())) { @@ -249,7 +239,7 @@ if (debugpoint) { if (!strcmp(debugpoint, "tables")) acpi_EnterDebugger(); - freeenv(debugpoint); + freeenv(debugpoint); } #endif @@ -258,12 +248,10 @@ return_VOID; } - /* - * Attach the actual ACPI device. - */ + /* Attach the actual ACPI device. */ if ((child = BUS_ADD_CHILD(parent, 0, "acpi", 0)) == NULL) { - device_printf(parent, "ACPI: could not attach\n"); - return_VOID; + device_printf(parent, "ACPI: could not attach\n"); + return_VOID; } } @@ -282,7 +270,8 @@ ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); if (power_pm_get_type() != POWER_PM_TYPE_NONE && - power_pm_get_type() != POWER_PM_TYPE_ACPI) { + power_pm_get_type() != POWER_PM_TYPE_ACPI) { + device_printf(dev, "Other PM system enabled.\n"); return_VALUE(ENXIO); } @@ -290,7 +279,8 @@ ACPI_LOCK; if (ACPI_FAILURE(status = AcpiGetTableHeader(ACPI_TABLE_XSDT, 1, &th))) { - device_printf(dev, "couldn't get XSDT header: %s\n", AcpiFormatException(status)); + device_printf(dev, "couldn't get XSDT header: %s\n", + AcpiFormatException(status)); error = ENXIO; } else { sprintf(buf, "%.6s %.8s", th.OemId, th.OemTableId); @@ -325,61 +315,61 @@ if (debugpoint) { if (!strcmp(debugpoint, "spaces")) acpi_EnterDebugger(); - freeenv(debugpoint); + freeenv(debugpoint); } #endif - /* - * Install the default address space handlers. - */ + /* Install the default address space handlers. */ error = ENXIO; - if (ACPI_FAILURE(status = AcpiInstallAddressSpaceHandler(ACPI_ROOT_OBJECT, - ACPI_ADR_SPACE_SYSTEM_MEMORY, - ACPI_DEFAULT_HANDLER, - NULL, NULL))) { - device_printf(dev, "could not initialise SystemMemory handler: %s\n", AcpiFormatException(status)); + status = AcpiInstallAddressSpaceHandler(ACPI_ROOT_OBJECT, + ACPI_ADR_SPACE_SYSTEM_MEMORY, ACPI_DEFAULT_HANDLER, NULL, NULL); + if (ACPI_FAILURE(status)) { + device_printf(dev, "Could not initialise SystemMemory handler: %s\n", + AcpiFormatException(status)); goto out; } - if (ACPI_FAILURE(status = AcpiInstallAddressSpaceHandler(ACPI_ROOT_OBJECT, - ACPI_ADR_SPACE_SYSTEM_IO, - ACPI_DEFAULT_HANDLER, - NULL, NULL))) { - device_printf(dev, "could not initialise SystemIO handler: %s\n", AcpiFormatException(status)); + status = AcpiInstallAddressSpaceHandler(ACPI_ROOT_OBJECT, + ACPI_ADR_SPACE_SYSTEM_IO, ACPI_DEFAULT_HANDLER, NULL, NULL); + if (ACPI_FAILURE(status)) { + device_printf(dev, "Could not initialise SystemIO handler: %s\n", + AcpiFormatException(status)); goto out; } - if (ACPI_FAILURE(status = AcpiInstallAddressSpaceHandler(ACPI_ROOT_OBJECT, - ACPI_ADR_SPACE_PCI_CONFIG, - ACPI_DEFAULT_HANDLER, - NULL, NULL))) { - device_printf(dev, "could not initialise PciConfig handler: %s\n", AcpiFormatException(status)); + status = AcpiInstallAddressSpaceHandler(ACPI_ROOT_OBJECT, + ACPI_ADR_SPACE_PCI_CONFIG, ACPI_DEFAULT_HANDLER, NULL, NULL); + if (ACPI_FAILURE(status)) { + device_printf(dev, "could not initialise PciConfig handler: %s\n", + AcpiFormatException(status)); goto out; } /* * Bring ACPI fully online. * - * Note that some systems (specifically, those with namespace evaluation issues - * that require the avoidance of parts of the namespace) must avoid running _INI - * and _STA on everything, as well as dodging the final object init pass. + * Note that some systems (specifically, those with namespace evaluation + * issues that require the avoidance of parts of the namespace) must + * avoid running _INI and _STA on everything, as well as dodging the final + * object init pass. * * For these devices, we set ACPI_NO_DEVICE_INIT and ACPI_NO_OBJECT_INIT). * - * XXX We should arrange for the object init pass after we have attached all our - * child devices, but on many systems it works here. + * XXX We should arrange for the object init pass after we have attached + * all our child devices, but on many systems it works here. */ #ifdef ACPI_DEBUGGER debugpoint = getenv("debug.acpi.debugger"); if (debugpoint) { if (!strcmp(debugpoint, "enable")) acpi_EnterDebugger(); - freeenv(debugpoint); + freeenv(debugpoint); } #endif flags = 0; if (testenv("debug.acpi.avoid")) flags = ACPI_NO_DEVICE_INIT | ACPI_NO_OBJECT_INIT; if (ACPI_FAILURE(status = AcpiEnableSubsystem(flags))) { - device_printf(dev, "could not enable ACPI: %s\n", AcpiFormatException(status)); + device_printf(dev, "Could not enable ACPI: %s\n", + AcpiFormatException(status)); goto out; } @@ -390,7 +380,8 @@ acpi_ec_ecdt_probe(dev); if (ACPI_FAILURE(status = AcpiInitializeObjects(flags))) { - device_printf(dev, "could not initialize ACPI objects: %s\n", AcpiFormatException(status)); + device_printf(dev, "Could not initialize ACPI objects: %s\n", + AcpiFormatException(status)); goto out; } @@ -431,8 +422,8 @@ OID_AUTO, "verbose", CTLFLAG_RD | CTLFLAG_RW, &sc->acpi_verbose, 0, "verbose mode"); SYSCTL_ADD_INT(&sc->acpi_sysctl_ctx, SYSCTL_CHILDREN(sc->acpi_sysctl_tree), - OID_AUTO, "disable_on_poweroff", CTLFLAG_RD | CTLFLAG_RW, - &sc->acpi_disable_on_poweroff, 0, "ACPI subsystem disable on poweroff"); + OID_AUTO, "disable_on_poweroff", CTLFLAG_RD | CTLFLAG_RW, + &sc->acpi_disable_on_poweroff, 0, "ACPI subsystem disable on poweroff"); /* * Default to 5 seconds before sleeping to give some machines time to @@ -472,51 +463,47 @@ } #endif - /* - * Register our shutdown handlers - */ - EVENTHANDLER_REGISTER(shutdown_pre_sync, acpi_shutdown_pre_sync, sc, SHUTDOWN_PRI_LAST); - EVENTHANDLER_REGISTER(shutdown_final, acpi_shutdown_final, sc, SHUTDOWN_PRI_LAST); + /* Register our shutdown handlers */ + EVENTHANDLER_REGISTER(shutdown_pre_sync, acpi_shutdown_pre_sync, sc, + SHUTDOWN_PRI_LAST); + EVENTHANDLER_REGISTER(shutdown_final, acpi_shutdown_final, sc, + SHUTDOWN_PRI_LAST); /* * Register our acpi event handlers. * XXX should be configurable eg. via userland policy manager. */ - EVENTHANDLER_REGISTER(acpi_sleep_event, acpi_system_eventhandler_sleep, sc, ACPI_EVENT_PRI_LAST); - EVENTHANDLER_REGISTER(acpi_wakeup_event, acpi_system_eventhandler_wakeup, sc, ACPI_EVENT_PRI_LAST); + EVENTHANDLER_REGISTER(acpi_sleep_event, acpi_system_eventhandler_sleep, + sc, ACPI_EVENT_PRI_LAST); + EVENTHANDLER_REGISTER(acpi_wakeup_event, acpi_system_eventhandler_wakeup, + sc, ACPI_EVENT_PRI_LAST); - /* - * Flag our initial states. - */ + /* Flag our initial states. */ sc->acpi_enabled = 1; sc->acpi_sstate = ACPI_STATE_S0; sc->acpi_sleep_disabled = 0; - /* - * Create the control device >>> TRUNCATED FOR MAIL (1000 lines) <<<