From owner-p4-projects@FreeBSD.ORG Sun Mar 4 02:09:33 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5E10716A403; Sun, 4 Mar 2007 02:09:33 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 29B5116A401 for ; Sun, 4 Mar 2007 02:09:33 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 188F613C49D for ; Sun, 4 Mar 2007 02:09:33 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l2429XXe060762 for ; Sun, 4 Mar 2007 02:09:33 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l2428xcO060755 for perforce@freebsd.org; Sun, 4 Mar 2007 02:08:59 GMT (envelope-from csjp@freebsd.org) Date: Sun, 4 Mar 2007 02:08:59 GMT Message-Id: <200703040208.l2428xcO060755@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 115291 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Mar 2007 02:09:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=115291 Change 115291 by csjp@csjp_rnd01 on 2007/03/04 02:08:48 IFC and loop back the recent direction ioctl changes Affected files ... .. //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#8 integrate .. //depot/projects/zcopybpf/src/share/man/man4/bpf.4#4 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/intr_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/mp_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/msi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/nexus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/amd64/uma_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/conf/GENERIC#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/include/gdb_machdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/include/intr_machdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/include/pcpu.h#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/isa/clock.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/isa/isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/linux32/linux.h#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/linux32/linux32_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/linux32/linux32_proto.h#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/linux32/linux32_syscall.h#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/linux32/linux32_sysent.c#2 integrate .. //depot/projects/zcopybpf/src/sys/amd64/linux32/syscalls.master#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/busdma_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/cpufunc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/db_interface.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/intr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/locore.S#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/mem.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/nexus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/pmap.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/support.S#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/sys_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/arm/trap.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91_mci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91_pio.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91_rtc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91_spi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91_ssc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91_st.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/at91_twi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/if_ate.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/at91/ohci_atmelarm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/AVILA#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/EP80219#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/IQ31244#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/conf/SIMICS#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/include/intr.h#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/sa11x0/sa11x0.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/sa11x0/sa11x0_ost.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/i80321/i80321_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/i80321/i80321_timer.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/i80321/iq80321.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/ixp425/avila_ata.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/ixp425/avila_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/ixp425/if_npe.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/ixp425/ixp425.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/ixp425/ixp425_npe.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/ixp425/ixp425_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/ixp425/ixp425_qmgr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/arm/xscale/ixp425/ixp425_timer.c#2 integrate .. //depot/projects/zcopybpf/src/sys/boot/common/loader.8#2 integrate .. //depot/projects/zcopybpf/src/sys/boot/forth/loader.conf#2 integrate .. //depot/projects/zcopybpf/src/sys/boot/i386/cdboot/cdboot.s#2 integrate .. //depot/projects/zcopybpf/src/sys/cam/cam_xpt.c#2 integrate .. //depot/projects/zcopybpf/src/sys/cam/cam_xpt.h#2 integrate .. //depot/projects/zcopybpf/src/sys/cam/scsi/scsi_da.c#3 integrate .. //depot/projects/zcopybpf/src/sys/cam/scsi/scsi_target.c#2 integrate .. //depot/projects/zcopybpf/src/sys/coda/coda_vfsops.h#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/linprocfs/linprocfs.c#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/linux/linux_emul.c#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/linux/linux_futex.c#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/linux/linux_futex.h#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/linux/linux_misc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/linux/linux_socket.c#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/linux/linux_uid16.c#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/linux/linux_util.c#2 integrate .. //depot/projects/zcopybpf/src/sys/compat/ndis/kern_ndis.c#2 integrate .. //depot/projects/zcopybpf/src/sys/conf/NOTES#3 integrate .. //depot/projects/zcopybpf/src/sys/conf/files#4 integrate .. //depot/projects/zcopybpf/src/sys/conf/files.powerpc#2 integrate .. //depot/projects/zcopybpf/src/sys/conf/kmod.mk#2 integrate .. //depot/projects/zcopybpf/src/sys/conf/options#3 integrate .. //depot/projects/zcopybpf/src/sys/conf/options.arm#2 integrate .. //depot/projects/zcopybpf/src/sys/contrib/dev/ipw/LICENSE#1 branch .. //depot/projects/zcopybpf/src/sys/contrib/dev/ipw/ipw2100-1.3-i.fw.uu#1 branch .. //depot/projects/zcopybpf/src/sys/contrib/dev/ipw/ipw2100-1.3-p.fw.uu#1 branch .. //depot/projects/zcopybpf/src/sys/contrib/dev/ipw/ipw2100-1.3.fw.uu#1 branch .. //depot/projects/zcopybpf/src/sys/contrib/dev/iwi/LICENSE#1 branch .. //depot/projects/zcopybpf/src/sys/contrib/dev/iwi/ipw2200-bss.fw.uu#1 branch .. //depot/projects/zcopybpf/src/sys/contrib/dev/iwi/ipw2200-ibss.fw.uu#1 branch .. //depot/projects/zcopybpf/src/sys/contrib/dev/iwi/ipw2200-sniffer.fw.uu#1 branch .. //depot/projects/zcopybpf/src/sys/contrib/dev/oltr/if_oltr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aac.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aac/aacvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/acpica/Osd/OsdInterrupt.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/acpica/Osd/OsdSchedule.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/acpica/acpi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/acpica/acpi_ec.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/adlink/adlink.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/advansys/adv_eisa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/advansys/adv_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/advansys/adv_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/advansys/adwcam.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aha/aha_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aha/aha_mca.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ahb/ahb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aic/aic_cbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aic/aic_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aic/aic_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aic7xxx/aic79xx.seq#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aic7xxx/aic79xx_osm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/aic7xxx/aic7xxx_osm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/amd/amd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/amr/amr_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/an/if_an_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/an/if_an_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/an/if_an_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ar/if_ar.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/arcmsr/arcmsr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/arcmsr/arcmsr.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/arl/if_arl_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/asr/asr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-all.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-card.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-cbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-disk.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-disk.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-dma.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-queue.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-raid.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-raid.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/ata-usb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-cam.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-cd.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-fd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-fd.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-tape.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ata/atapi-tape.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ath/if_ath.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ath/if_ath_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ath/if_athvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/atkbdc/atkbd_atkbdc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/atkbdc/psm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/awi/if_awi_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/bce/if_bce.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/bfe/if_bfe.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/bge/if_bge.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/bge/if_bgereg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/bktr/bktr_os.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/buslogic/bt.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ce/if_ce.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ciss/ciss.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cm/if_cm_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cnw/if_cnw.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cp/if_cp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cs/if_cs_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cs/if_cs_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ct/ct_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ctau/if_ct.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cx/if_cx.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cy/cy.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cy/cy_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cy/cy_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/cy/cyvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/dc/if_dc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/de/if_de.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/dpt/dpt_eisa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/dpt/dpt_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/drm/drm_irq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ed/if_ed_cbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ed/if_ed_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ed/if_ed_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ed/if_ed_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/em/if_em.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/en/if_en_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ep/if_ep_eisa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ep/if_ep_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ep/if_ep_mca.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ep/if_ep_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/esp/esp_sbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ex/if_ex_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ex/if_ex_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/exca/exca.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/fatm/if_fatm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/fdc/fdc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/fe/if_fe.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/firewire/fwohci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/firewire/sbp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/fxp/if_fxp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/gem/if_gem_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hatm/if_hatm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hfa/hfa_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hifn/hifn7751.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hme/if_hme_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hme/if_hme_sbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hptmv/entry.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hptmv/ioctl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/hwpmc/hwpmc_mod.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ichsmb/ichsmb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ida/ida_eisa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ida/ida_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/idt/idt_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ie/if_ie_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ieee488/pcii.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ieee488/tnt4882.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/iir/iir_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ipmi/ipmi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ipmi/ipmi_ssif.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ips/ips_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ipw/if_ipw.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ipw/if_ipwvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/isp/isp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/isp/isp_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/isp/isp_sbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/isp/ispmbox.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/isp/ispreg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/iwi/if_iwi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/iwi/if_iwireg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/iwi/if_iwivar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ixgb/if_ixgb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/le/if_le_cbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/le/if_le_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/le/if_le_lebuffer.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/le/if_le_ledma.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/le/if_le_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/lge/if_lge.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/lmc/if_lmc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mfi/mfi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/brgphy.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/brgphyreg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/miidevs#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/mii/rlphy.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mlx/mlx.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mly/mly.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mpt/mpt.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mpt/mpt_cam.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/mpt/mpt_cam.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mpt/mpt_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mse/mse.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/msk/if_msk.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mxge/if_mxge.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/mxge/if_mxge_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/my/if_my.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ncv/ncr53c500_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/nfe/if_nfe.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/nge/if_nge.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/nsp/nsp_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/nve/if_nve.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/patm/if_patm_attach.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pccard/pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pccard/pccard_cis.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pccard/pccarddevs#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pccard/pccardvarp.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pccbb/pccbb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pccbb/pccbb_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pccbb/pccbbvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pcf/envctrl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pcf/pcf_ebus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pcf/pcf_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pci/pci.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/pci/pcireg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pdq/if_fea.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pdq/if_fpa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ppbus/if_plip.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ppbus/lpt.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ppbus/ppbconf.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ppbus/ppi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ppbus/pps.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ppc/ppc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ppc/ppcvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/pst/pst-iop.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/puc/puc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/puc/puc_bfe.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ral/if_ral_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/random/randomdev_soft.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ray/if_ray.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/rc/rc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/re/if_re.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/rr232x/osm_bsd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/safe/safe.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sbni/if_sbni_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sbni/if_sbni_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sbsh/if_sbsh.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/scc/scc_bfe.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/scc/scc_core.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/scd/scd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/si/si_eisa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/si/si_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/si/si_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sio/sio.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sk/if_sk.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sn/if_sn.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/snc/if_snc_cbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/snc/if_snc_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/driver.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/ad1816.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/ad1816.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/ess.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/gusc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/mss.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/mss.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/sb.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/sb16.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/sb8.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/isa/sbc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/midi.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/midi.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/midiq.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/mpu401.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/mpu401.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/mpu_if.m#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/mpufoi_if.m#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/sequencer.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/sequencer.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/midi/synth_if.m#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/als4000.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/atiixp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/au88x0.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/aureal.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/cmi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/cs4281.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/csa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/csapcm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/ds1.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/emu10k1.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/emu10kx.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/envy24.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/envy24ht.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/fm801.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/hda/hdac.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/ich.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/maestro.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/maestro3.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/solo.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/spicds.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/t4dwave.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/via8233.c#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/via82c686.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pci/vibes.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pcm/ac97_patch.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pcm/ac97_patch.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pcm/buffer.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pcm/buffer.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pcm/dsp.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pcm/sound.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sr/if_sr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/stg/tmc18c30_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/stg/tmc18c30_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/stg/tmc18c30_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/stge/if_stge.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/sym/sym_hipd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/syscons/fire/fire_saver.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/syscons/logo/logo_saver.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/syscons/rain/rain_saver.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/syscons/warp/warp_saver.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ti/if_ti.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/trm/trm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/twa/tw_osl_freebsd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/twe/twe_freebsd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/tx/if_tx.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/txp/if_txp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/uart/uart_core.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/ubsec/ubsec.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/ehci_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/if_aue.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/ohci_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/sl811hs.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/sl811hsvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/slhci_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/ubsa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/uhci_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/uhub.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/uipaq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/umass.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/usb_subr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/usbdevs#3 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/uvisor.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/usb/uvscom.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/vge/if_vge.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/vx/if_vx_eisa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/vx/if_vx_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/wds/wd7000.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/wi/if_wi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/wl/if_wl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/xe/if_xe.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/zs/z8530var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/zs/zs.c#2 integrate .. //depot/projects/zcopybpf/src/sys/dev/zs/zs_macio.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/cd9660/TODO#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/TODO.hibler#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_bmap.c#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_iconv.c#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_lookup.c#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_mount.h#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_node.c#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_node.h#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_rrip.c#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_rrip.h#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_util.c#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_vfsops.c#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/cd9660_vnops.c#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/iso.h#1 branch .. //depot/projects/zcopybpf/src/sys/fs/cd9660/iso_rrip.h#1 branch .. //depot/projects/zcopybpf/src/sys/fs/fifofs/fifo_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/hpfs/hpfs_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/hpfs/hpfs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/msdosfs/msdosfs_fat.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/msdosfs/msdosfs_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/msdosfs/msdosfs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/ntfs/ntfs_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/ntfs/ntfs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/nullfs/null_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/nullfs/null_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/procfs/procfs.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/procfs/procfs_ioctl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/smbfs/smbfs_smb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/udf/udf.h#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/udf/udf_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/udf/udf_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/umapfs/umap_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/umapfs/umap_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/unionfs/union_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/fs/unionfs/union_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/geom/eli/g_eli.c#2 integrate .. //depot/projects/zcopybpf/src/sys/geom/geom_apple.c#2 delete .. //depot/projects/zcopybpf/src/sys/geom/geom_dev.c#2 integrate .. //depot/projects/zcopybpf/src/sys/geom/geom_disk.c#2 integrate .. //depot/projects/zcopybpf/src/sys/geom/geom_gpt.c#2 delete .. //depot/projects/zcopybpf/src/sys/geom/geom_io.c#2 integrate .. //depot/projects/zcopybpf/src/sys/geom/multipath/g_multipath.c#1 branch .. //depot/projects/zcopybpf/src/sys/geom/multipath/g_multipath.h#1 branch .. //depot/projects/zcopybpf/src/sys/geom/part/g_part.c#1 branch .. //depot/projects/zcopybpf/src/sys/geom/part/g_part.h#1 branch .. //depot/projects/zcopybpf/src/sys/geom/part/g_part_apm.c#1 branch .. //depot/projects/zcopybpf/src/sys/geom/part/g_part_gpt.c#1 branch .. //depot/projects/zcopybpf/src/sys/geom/part/g_part_if.m#1 branch .. //depot/projects/zcopybpf/src/sys/gnu/fs/ext2fs/ext2_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/gnu/fs/ext2fs/ext2_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/gnu/fs/reiserfs/reiserfs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/conf/GENERIC#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/db_trace.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/intr_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/mp_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/msi.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/nexus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/pmap.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/i386/vm_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/ibcs2/ibcs2_xenix.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/include/intr_machdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/include/pcpu.h#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/isa/clock.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/isa/isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/isa/npx.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/linux/imgact_linux.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/linux/linux.h#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/linux/linux_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/linux/linux_proto.h#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/linux/linux_syscall.h#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/linux/linux_sysent.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i386/linux/syscalls.master#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/capi/iavc/iavc_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/capi/iavc/iavc_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/ifpi2/i4b_ifpi2_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/ifpnp/i4b_ifpnp_avm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/ihfc/i4b_ihfc_pnp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_avm_a1.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_elsa_pcc16.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_elsa_qs1p.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_isic_pnp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_itk_ix1.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_tel_s016.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_tel_s0163.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_tel_s08.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/isic/i4b_usr_sti.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/itjc/i4b_itjc_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/i4b/layer1/iwic/i4b_iwic_pci.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/conf/DEFAULTS#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/conf/GENERIC#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/interrupt.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/nexus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/pmap.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/ia64/uma_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/include/intr.h#2 integrate .. //depot/projects/zcopybpf/src/sys/ia64/isa/isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/isa/isa_common.h#2 integrate .. //depot/projects/zcopybpf/src/sys/isa/syscons_isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/TODO#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/TODO.hibler#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_bmap.c#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_iconv.c#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_lookup.c#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_mount.h#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_node.c#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_node.h#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_rrip.c#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_rrip.h#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_util.c#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_vfsops.c#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/cd9660_vnops.c#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/iso.h#2 delete .. //depot/projects/zcopybpf/src/sys/isofs/cd9660/iso_rrip.h#2 delete .. //depot/projects/zcopybpf/src/sys/kern/Make.tags.inc#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/bus_if.m#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_conf.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_descrip.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_fork.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_intr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_jail.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_ktrace.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_linker.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_lock.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_mutex.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_resource.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_rwlock.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_sig.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_switch.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_sx.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/kern_synch.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/link_elf.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/sched_4bsd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/sched_ule.c#3 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_bus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_firmware.c#3 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_lock.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_rman.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/subr_witness.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/sys_generic.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/sysv_ipc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/sysv_msg.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/sysv_shm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/uipc_debug.c#1 branch .. //depot/projects/zcopybpf/src/sys/kern/uipc_socket.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/uipc_usrreq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_bio.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_default.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_export.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_init.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_lookup.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_mount.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_syscalls.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vfs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/kern/vnode_if.src#2 integrate .. //depot/projects/zcopybpf/src/sys/modules/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/modules/cd9660/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/modules/cd9660_iconv/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/modules/geom/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/modules/geom/geom_multipath/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/ip_mroute_mod/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/modules/ipwfw/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/ipwfw/ipw_bss/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/ipwfw/ipw_ibss/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/ipwfw/ipw_monitor/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/iwifw/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/iwifw/iwi_bss/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/iwifw/iwi_ibss/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/iwifw/iwi_monitor/Makefile#1 branch .. //depot/projects/zcopybpf/src/sys/modules/msdosfs/Makefile#2 integrate .. //depot/projects/zcopybpf/src/sys/net/bpf.c#19 integrate .. //depot/projects/zcopybpf/src/sys/net/bpf.h#12 integrate .. //depot/projects/zcopybpf/src/sys/net/bpfdesc.h#6 integrate .. //depot/projects/zcopybpf/src/sys/net/if.c#2 integrate .. //depot/projects/zcopybpf/src/sys/net/if_bridge.c#2 integrate .. //depot/projects/zcopybpf/src/sys/net/if_ethersubr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/net/if_loop.c#2 integrate .. //depot/projects/zcopybpf/src/sys/net/if_ppp.c#2 integrate .. //depot/projects/zcopybpf/src/sys/net/if_tap.c#3 integrate .. //depot/projects/zcopybpf/src/sys/net/if_tun.c#2 integrate .. //depot/projects/zcopybpf/src/sys/net/if_vlan_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/net80211/_ieee80211.h#2 integrate .. //depot/projects/zcopybpf/src/sys/net80211/ieee80211_input.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netatalk/at_control.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_ksocket.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_pptpgre.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_source.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netgraph/ng_source.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/if_ether.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/in.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/in.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/in_pcb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/in_pcb.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/in_proto.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_carp.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_fastfwd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_fw2.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_input.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_mroute.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_mroute.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/ip_output.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_asconf.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_auth.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_auth.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_constants.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_crc32.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_indata.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_input.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_os.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_os_bsd.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_output.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_pcb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_peeloff.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_structs.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_timer.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_uio.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_usrreq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctp_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctputil.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/sctputil.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_input.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_output.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_subr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_syncache.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_timer.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_timer.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_usrreq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/tcp_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/udp.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/udp_usrreq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet/udp_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ah_core.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/icmp6.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/in6_proto.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_input.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_mroute.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_mroute.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/ip6_var.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/nd6.c#3 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/raw_ip6.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/sctp6_usrreq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netinet6/udp6_usrreq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netipx/ipx_ip.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netipx/ipx_ip.h#2 integrate .. //depot/projects/zcopybpf/src/sys/netncp/ncp_sock.c#2 integrate .. //depot/projects/zcopybpf/src/sys/netsmb/smb_dev.c#2 integrate .. //depot/projects/zcopybpf/src/sys/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/nfsclient/nfs_socket.c#2 integrate .. //depot/projects/zcopybpf/src/sys/nfsclient/nfs_vfsops.c#3 integrate .. //depot/projects/zcopybpf/src/sys/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/nfsserver/nfs_serv.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pc98/cbus/clock.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pc98/cbus/fdc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pc98/cbus/olpt.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pc98/cbus/pckbd.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pc98/cbus/sio.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pc98/cbus/syscons_cbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pc98/conf/GENERIC#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_mn.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_pcn.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_rl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_sf.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_sis.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_sisreg.h#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_ste.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_tl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_vr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_wb.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/if_xl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/intpm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/pci/ncr.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/conf/DEFAULTS#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/conf/GENERIC#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/intr_machdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/include/openpicvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powermac/hrowpic.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powermac/pswitch.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/cpu.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/intr_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/powerpc/powerpc/openpic.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/audit/audit_arg.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_framework.h#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_inet.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_internal.h#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_label.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_pipe.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_policy.h#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_posix_sem.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_system.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_sysv_msg.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_sysv_sem.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_sysv_shm.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac/mac_vfs.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_biba/mac_biba.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_bsdextended/mac_bsdextended.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_ifoff/mac_ifoff.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_lomac/mac_lomac.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_mls/mac_mls.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_none/mac_none.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_partition/mac_partition.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_portacl/mac_portacl.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_seeotheruids/mac_seeotheruids.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_stub/mac_stub.c#2 integrate .. //depot/projects/zcopybpf/src/sys/security/mac_test/mac_test.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/conf/GENERIC#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/fhc/fhc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/include/intr_machdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/isa/isa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/pci/psycho.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sbus/sbus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/intr_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/nexus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sparc64/sparc64/upa.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/conf/.cvsignore#1 branch .. //depot/projects/zcopybpf/src/sys/sun4v/conf/GENERIC#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/include/intr_machdep.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/include/smp.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/hvcons.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/intr_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/mp_machdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/nexus.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/tte.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sun4v/sun4v/vnex.c#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/_label.h#2 delete .. //depot/projects/zcopybpf/src/sys/sys/apm.h#1 branch .. //depot/projects/zcopybpf/src/sys/sys/bus.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/conf.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/extattr.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/firmware.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/interrupt.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/lock.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/lock_profile.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/mac.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/mbuf.h#3 integrate .. //depot/projects/zcopybpf/src/sys/sys/mount.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/mutex.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/param.h#3 integrate .. //depot/projects/zcopybpf/src/sys/sys/priv.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/runq.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/rwlock.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/sleepqueue.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/socketvar.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/systm.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/unpcb.h#2 integrate .. //depot/projects/zcopybpf/src/sys/sys/vnode.h#2 integrate .. //depot/projects/zcopybpf/src/sys/tools/fw_stub.awk#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ffs/README.softupdates#2 delete .. //depot/projects/zcopybpf/src/sys/ufs/ffs/ffs_alloc.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ffs/ffs_extern.h#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ffs/ffs_rawread.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ffs/ffs_softdep.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ffs/ffs_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ffs/ffs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ufs/ufs_quota.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ufs/ufs_vfsops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/ufs/ufs/ufs_vnops.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/phys_pager.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/swap_pager.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/swap_pager.h#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/uma.h#3 integrate .. //depot/projects/zcopybpf/src/sys/vm/uma_core.c#3 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_contig.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_kern.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_map.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_object.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_page.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_page.h#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_pageout.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_pageq.c#2 integrate .. //depot/projects/zcopybpf/src/sys/vm/vm_zeroidle.c#2 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/bpf.c#5 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/if.c#2 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/inet.c#2 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/inet6.c#2 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/mcast.c#2 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/mroute.c#2 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/mroute6.c#2 integrate .. //depot/projects/zcopybpf/src/usr.sbin/netstat/route.c#2 integrate Differences ... ==== //depot/projects/zcopybpf/src/contrib/libpcap/pcap-bpf.c#8 (text+ko) ==== @@ -18,7 +18,7 @@ * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * - * $FreeBSD: src/contrib/libpcap/pcap-bpf.c,v 1.2 2006/09/04 20:12:45 sam Exp $ + * $FreeBSD: src/contrib/libpcap/pcap-bpf.c,v 1.3 2007/02/26 22:24:14 jkim Exp $ */ #ifndef lint static const char rcsid[] _U_ = @@ -1323,9 +1323,22 @@ static int pcap_setdirection_bpf(pcap_t *p, pcap_direction_t d) { -#ifdef BIOCSSEESENT +#if defined(BIOCSDIRECTION) + u_int direction; + + direction = (d == PCAP_D_IN) ? BPF_D_IN : + ((d == PCAP_D_OUT) ? BPF_D_OUT : BPF_D_INOUT); + if (ioctl(p->fd, BIOCSDIRECTION, &direction) == -1) { + (void) snprintf(p->errbuf, sizeof(p->errbuf), + "Cannot set direction to %s: %s", + (d == PCAP_D_IN) ? "PCAP_D_IN" : + ((d == PCAP_D_OUT) ? "PCAP_D_OUT" : "PCAP_D_INOUT"), + strerror(errno)); + return (-1); + } + return (0); +#elif defined(BIOCSSEESENT) u_int seesent; -#endif /* * We don't support PCAP_D_OUT. @@ -1335,7 +1348,7 @@ "Setting direction to PCAP_D_OUT is not supported on BPF"); return -1; } -#ifdef BIOCSSEESENT + seesent = (d == PCAP_D_INOUT); if (ioctl(p->fd, BIOCSSEESENT, &seesent) == -1) { (void) snprintf(p->errbuf, sizeof(p->errbuf), ==== //depot/projects/zcopybpf/src/share/man/man4/bpf.4#4 (text+ko) ==== @@ -47,9 +47,9 @@ .\" This document is derived in part from the enet man page (enet.4) .\" distributed with 4.3BSD Unix. .\" -.\" $FreeBSD: src/share/man/man4/bpf.4,v 1.47 2005/11/18 10:52:22 ru Exp $ +.\" $FreeBSD: src/share/man/man4/bpf.4,v 1.48 2007/02/26 22:24:14 jkim Exp $ .\" -.Dd August 23, 2005 +.Dd February 26, 2007 .Dt BPF 4 .Os .Sh NAME @@ -367,12 +367,43 @@ .It Dv BIOCSSEESENT .It Dv BIOCGSEESENT .Pq Li u_int +These commands are obsolete but left for compatibility. +Use +.Dv BIOCSDIRECTION +and +.Dv BIOCGDIRECTION +instead. Set or get the flag determining whether locally generated packets on the interface should be returned by BPF. Set to zero to see only incoming packets on the interface. Set to one to see packets originating locally and remotely on the interface. -This flag is initialized to one by -default. +This flag is initialized to one by default. +.It Dv BIOCSDIRECTION +.It Dv BIOCGDIRECTION +.Pq Li u_int +Set or get the setting determining whether incoming, outgoing, or all packets +on the interface should be returned by BPF. +Set to +.Dv BPF_D_IN +to see only incoming packets on the interface. +Set to +.Dv BPF_D_INOUT +to see packets originating locally and remotely on the interface. +Set to +.Dv BPF_D_OUT +to see only outgoing packets on the interface. +This setting is initialized to +.Dv BPF_D_INOUT +by default. +.It Dv BIOCFEEDBACK +.Pq Li u_int +Set packet feedback mode. +This allows injected packets to be fed back as input to the interface when +output via the interface is successful. +When +.Dv BPF_D_INOUT +direction is set, injected outgoing packet is not returned by BPF to avoid +duplication. This flag is initialized to zero by default. .It Dv BIOCLOCK Set the locked flag on the .Nm @@ -878,9 +909,12 @@ Data link protocols with variable length headers are not currently supported. .Pp The -.Dv SEESENT -flag has been observed to work incorrectly on some interface +.Dv SEESENT , +.Dv DIRECTION , +and +.Dv FEEDBACK +settings have been observed to work incorrectly on some interface types, including those with hardware loopback rather than software loopback, and point-to-point interfaces. -It appears to function correctly on a +They appear to function correctly on a broad range of Ethernet-style interfaces. ==== //depot/projects/zcopybpf/src/sys/amd64/amd64/intr_machdep.c#2 (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/amd64/amd64/intr_machdep.c,v 1.27 2006/12/12 19:20:18 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.29 2007/02/23 20:03:23 jhb Exp $ */ /* @@ -158,8 +158,8 @@ } int -intr_add_handler(const char *name, int vector, driver_intr_t handler, - void *arg, enum intr_type flags, void **cookiep) +intr_add_handler(const char *name, int vector, driver_filter_t filter, + driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep) { struct intsrc *isrc; int error; @@ -167,8 +167,8 @@ isrc = intr_lookup_source(vector); if (isrc == NULL) return (EINVAL); - error = intr_event_add_handler(isrc->is_event, name, handler, arg, - intr_priority(flags), flags, cookiep); + error = intr_event_add_handler(isrc->is_event, name, filter, handler, + arg, intr_priority(flags), flags, cookiep); if (error == 0) { intrcnt_updatename(isrc); mtx_lock_spin(&intr_table_lock); @@ -266,17 +266,17 @@ thread = 0; critical_enter(); TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - if (!(ih->ih_flags & IH_FAST)) { + if (ih->ih_filter == NULL) { thread = 1; continue; } CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, - ih->ih_handler, ih->ih_argument == NULL ? frame : + ih->ih_filter, ih->ih_argument == NULL ? frame : ih->ih_argument, ih->ih_name); if (ih->ih_argument == NULL) - ih->ih_handler(frame); + ih->ih_filter(frame); else - ih->ih_handler(ih->ih_argument); + ih->ih_filter(ih->ih_argument); } /* ==== //depot/projects/zcopybpf/src/sys/amd64/amd64/mp_machdep.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.280 2007/01/23 08:38:39 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.281 2007/02/08 16:49:58 jhb Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -632,6 +632,8 @@ continue; if (cpu_info[apic_id].cpu_bsp) continue; + if (cpu_info[apic_id].cpu_disabled) + continue; /* Don't let hyperthreads service interrupts. */ if (hyperthreading_cpus > 1 && ==== //depot/projects/zcopybpf/src/sys/amd64/amd64/msi.c#2 (text+ko) ==== @@ -34,7 +34,7 @@ */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Mar 4 04:52:02 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2251716A405; Sun, 4 Mar 2007 04:52:02 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D95F616A401 for ; Sun, 4 Mar 2007 04:52:01 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id CA9DA13C4AA for ; Sun, 4 Mar 2007 04:52:01 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l244q1Zb097412 for ; Sun, 4 Mar 2007 04:52:01 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l244q0Md097404 for perforce@freebsd.org; Sun, 4 Mar 2007 04:52:00 GMT (envelope-from imp@freebsd.org) Date: Sun, 4 Mar 2007 04:52:00 GMT Message-Id: <200703040452.l244q0Md097404@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 115294 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Mar 2007 04:52:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=115294 Change 115294 by imp@imp_lighthouse on 2007/03/04 04:51:58 Initial, and mostly untested other than compile testing, support for the arm9e, arm10 and arm11 families of cores. I've likely missed stuff in this initial import, which I'll correct next. This support was taken wholesale from NetBSD. Minor, inconsequential changes made by me... Affected files ... .. //depot/projects/arm/src/sys/arm/arm/cpufunc.c#14 edit .. //depot/projects/arm/src/sys/arm/arm/identcpu.c#12 edit .. //depot/projects/arm/src/sys/arm/at91/files.at91#16 edit .. //depot/projects/arm/src/sys/arm/at91/std.at91#5 edit .. //depot/projects/arm/src/sys/arm/include/armreg.h#5 edit .. //depot/projects/arm/src/sys/arm/include/cpuconf.h#7 edit .. //depot/projects/arm/src/sys/arm/include/cpufunc.h#7 edit Differences ... ==== //depot/projects/arm/src/sys/arm/arm/cpufunc.c#14 (text+ko) ==== @@ -283,6 +283,64 @@ }; #endif /* CPU_ARM9 */ +#if defined(CPU_ARM9E) || defined(CPU_ARM10) +struct cpu_functions armv5_ec_cpufuncs = { + /* CPU functions */ + + cpufunc_id, /* id */ + cpufunc_nullop, /* cpwait */ + + /* MMU functions */ + + cpufunc_control, /* control */ + cpufunc_domains, /* Domain */ + armv5_ec_setttb, /* Setttb */ + cpufunc_faultstatus, /* Faultstatus */ + cpufunc_faultaddress, /* Faultaddress */ + + /* TLB functions */ + + armv4_tlb_flushID, /* tlb_flushID */ + arm10_tlb_flushID_SE, /* tlb_flushID_SE */ + armv4_tlb_flushI, /* tlb_flushI */ + arm10_tlb_flushI_SE, /* tlb_flushI_SE */ + armv4_tlb_flushD, /* tlb_flushD */ + armv4_tlb_flushD_SE, /* tlb_flushD_SE */ + + /* Cache operations */ + + armv5_ec_icache_sync_all, /* icache_sync_all */ + armv5_ec_icache_sync_range, /* icache_sync_range */ + + armv5_ec_dcache_wbinv_all, /* dcache_wbinv_all */ + armv5_ec_dcache_wbinv_range, /* dcache_wbinv_range */ +/*XXX*/ armv5_ec_dcache_wbinv_range, /* dcache_inv_range */ + armv5_ec_dcache_wb_range, /* dcache_wb_range */ + + armv5_ec_idcache_wbinv_all, /* idcache_wbinv_all */ + armv5_ec_idcache_wbinv_range, /* idcache_wbinv_range */ + + /* Other functions */ + + cpufunc_nullop, /* flush_prefetchbuf */ + armv4_drain_writebuf, /* drain_writebuf */ + cpufunc_nullop, /* flush_brnchtgt_C */ + (void *)cpufunc_nullop, /* flush_brnchtgt_E */ + + (void *)cpufunc_nullop, /* sleep */ + + /* Soft functions */ + + cpufunc_null_fixup, /* dataabt_fixup */ + cpufunc_null_fixup, /* prefetchabt_fixup */ + + arm10_context_switch, /* context_switch */ + + arm10_setup /* cpu setup */ + +}; +#endif /* CPU_ARM9E || CPU_ARM10 */ + #ifdef CPU_ARM10 struct cpu_functions arm10_cpufuncs = { /* CPU functions */ @@ -832,6 +890,16 @@ return 0; } #endif /* CPU_ARM9 */ +#if defined(CPU_ARM9E) || defined(CPU_ARM10) + if (cputype == CPU_ID_ARM926EJS || + cputype == CPU_ID_ARM1026EJS) { + cpufuncs = armv5_ec_cpufuncs; + cpu_reset_needs_v4_MMU_disable = 1; /* V4 or higher */ + get_cachetype_cp15(); + pmap_pte_init_generic(); + return 0; + } +#endif /* CPU_ARM9E || CPU_ARM10 */ #ifdef CPU_ARM10 if (/* cputype == CPU_ID_ARM1020T || */ cputype == CPU_ID_ARM1020E) { @@ -1394,10 +1462,12 @@ */ #if defined(CPU_ARM7TDMI) || defined(CPU_ARM8) || defined (CPU_ARM9) || \ + defined(CPU_ARM9E) || \ defined(CPU_SA110) || defined(CPU_SA1100) || defined(CPU_SA1110) || \ defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \ defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) || \ - defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342) + defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342) || \ + defined(CPU_ARM10) || defined(CPU_ARM11) #define IGN 0 #define OR 1 @@ -1639,7 +1709,7 @@ } #endif /* CPU_ARM9 */ -#ifdef CPU_ARM10 +#if defined(CPU_ARM9E) || defined(CPU_ARM10) struct cpu_option arm10_options[] = { { "cpu.cache", BIC, OR, (CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE) }, { "cpu.nocache", OR, BIC, (CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE) }, @@ -1682,7 +1752,7 @@ cpu_idcache_wbinv_all(); /* Now really make sure they are clean. */ - asm volatile ("mcr\tp15, 0, r0, c7, c7, 0" : : ); + __asm __volatile ("mcr\tp15, 0, r0, c7, c7, 0" : : ); /* Set the control register */ ctrl = cpuctrl; @@ -1691,7 +1761,57 @@ /* And again. */ cpu_idcache_wbinv_all(); } -#endif /* CPU_ARM10 */ +#endif /* CPU_ARM9E || CPU_ARM10 */ + +#ifdef CPU_ARM11 +struct cpu_option arm11_options[] = { + { "cpu.cache", BIC, OR, (CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE) }, + { "cpu.nocache", OR, BIC, (CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE) }, + { "arm11.cache", BIC, OR, (CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE) }, + { "arm11.icache", BIC, OR, CPU_CONTROL_IC_ENABLE }, + { "arm11.dcache", BIC, OR, CPU_CONTROL_DC_ENABLE }, + { NULL, IGN, IGN, 0 } +}; + +void +arm11_setup(args) + char *args; +{ + int cpuctrl, cpuctrlmask; + + cpuctrl = CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_SYST_ENABLE + | CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE + /* | CPU_CONTROL_BPRD_ENABLE */; + cpuctrlmask = CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_SYST_ENABLE + | CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE + | CPU_CONTROL_ROM_ENABLE | CPU_CONTROL_BPRD_ENABLE + | CPU_CONTROL_BEND_ENABLE | CPU_CONTROL_AFLT_ENABLE + | CPU_CONTROL_ROUNDROBIN | CPU_CONTROL_CPCLK; + +#ifndef ARM32_DISABLE_ALIGNMENT_FAULTS + cpuctrl |= CPU_CONTROL_AFLT_ENABLE; +#endif + + cpuctrl = parse_cpu_options(args, arm11_options, cpuctrl); + +#ifdef __ARMEB__ + cpuctrl |= CPU_CONTROL_BEND_ENABLE; +#endif + + /* Clear out the cache */ + cpu_idcache_wbinv_all(); + + /* Now really make sure they are clean. */ + __asm __volatile ("mcr\tp15, 0, r0, c7, c7, 0" : : ); + + /* Set the control register */ + curcpu()->ci_ctrl = cpuctrl; + cpu_control(0xffffffff, cpuctrl); + + /* And again. */ + cpu_idcache_wbinv_all(); +} +#endif /* CPU_ARM11 */ #ifdef CPU_SA110 struct cpu_option sa110_options[] = { ==== //depot/projects/arm/src/sys/arm/arm/identcpu.c#12 (text+ko) ==== @@ -70,9 +70,12 @@ CPU_CLASS_ARM8, CPU_CLASS_ARM9TDMI, CPU_CLASS_ARM9ES, + CPU_CLASS_ARM9EJS, CPU_CLASS_ARM10E, + CPU_CLASS_ARM10EJ, CPU_CLASS_SA1, - CPU_CLASS_XSCALE + CPU_CLASS_XSCALE, + CPU_CLASS_ARM11J }; static const char * const generic_steppings[16] = { @@ -119,6 +122,13 @@ "rev 12", "rev 13", "rev 14", "rev 15", }; +static const char * const i80219_steppings[16] = { + "step A-0", "rev 1", "rev 2", "rev 3", + "rev 4", "rev 5", "rev 6", "rev 7", + "rev 8", "rev 9", "rev 10", "rev 11", + "rev 12", "rev 13", "rev 14", "rev 15", +}; + static const char * const i80321_steppings[16] = { "step A-0", "step B-0", "rev 2", "rev 3", "rev 4", "rev 5", "rev 6", "rev 7", @@ -133,6 +143,7 @@ "rev 12", "rev 13", "rev 14", "rev 15", }; +/* Steppings for PXA2[15]0 */ static const char * const pxa2x0_steppings[16] = { "step A-0", "step A-1", "step B-0", "step B-1", "step B-2", "step C-0", "rev 6", "rev 7", @@ -140,6 +151,9 @@ "rev 12", "rev 13", "rev 14", "rev 15", }; +/* Steppings for PXA255/26x. + * rev 5: PXA26x B0, rev 6: PXA255 A0 + */ static const char * const pxa255_steppings[16] = { "rev 0", "rev 1", "rev 2", "step A-0", "rev 4", "step B-0", "step A-0", "rev 7", @@ -147,6 +161,14 @@ "rev 12", "rev 13", "rev 14", "rev 15", }; +/* Stepping for PXA27x */ +static const char * const pxa27x_steppings[16] = { + "step A-0", "step A-1", "step B-0", "step B-1", + "step C-0", "rev 5", "rev 6", "rev 7", + "rev 8", "rev 9", "rev 10", "rev 11", + "rev 12", "rev 13", "rev 14", "rev 15", +}; + static const char * const ixp425_steppings[16] = { "step 0 (A0)", "rev 1 (ARMv5TE)", "rev 2", "rev 3", "rev 4", "rev 5", "rev 6", "rev 7", @@ -205,6 +227,8 @@ generic_steppings }, { CPU_ID_ARM922T, CPU_CLASS_ARM9TDMI, "ARM922T", generic_steppings }, + { CPU_ID_ARM926EJS, CPU_CLASS_ARM9EJS, "ARM926EJ-S", + generic_steppings }, { CPU_ID_ARM940T, CPU_CLASS_ARM9TDMI, "ARM940T", generic_steppings }, { CPU_ID_ARM946ES, CPU_CLASS_ARM9ES, "ARM946E-S", @@ -220,6 +244,8 @@ generic_steppings }, { CPU_ID_ARM1022ES, CPU_CLASS_ARM10E, "ARM1022E-S", generic_steppings }, + { CPU_ID_ARM1026EJS, CPU_CLASS_ARM10EJ, "ARM1026EJ-S", + generic_steppings }, { CPU_ID_SA110, CPU_CLASS_SA1, "SA-110", sa110_steppings }, @@ -247,11 +273,12 @@ i81342_steppings }, { CPU_ID_80219_400, CPU_CLASS_XSCALE, "i80219 400MHz", - xscale_steppings }, - + i80219_steppings }, { CPU_ID_80219_600, CPU_CLASS_XSCALE, "i80219 600MHz", - xscale_steppings }, + i80219_steppings }, + { CPU_ID_PXA27X, CPU_CLASS_XSCALE, "PXA27x", + pxa27x_steppings }, { CPU_ID_PXA250A, CPU_CLASS_XSCALE, "PXA250", pxa2x0_steppings }, { CPU_ID_PXA210A, CPU_CLASS_XSCALE, "PXA210", @@ -272,6 +299,11 @@ { CPU_ID_IXP425_266, CPU_CLASS_XSCALE, "IXP425 266MHz", ixp425_steppings }, + { CPU_ID_ARM1136JS, CPU_CLASS_ARM11J, "ARM1136J-S", + generic_steppings }, + { CPU_ID_ARM1136JSR1, CPU_CLASS_ARM11J, "ARM1136J-S R1", + generic_steppings }, + { 0, CPU_CLASS_NONE, NULL, NULL } }; @@ -290,10 +322,13 @@ { "ARM7TDMI", "CPU_ARM7TDMI" }, /* CPU_CLASS_ARM7TDMI */ { "ARM8", "CPU_ARM8" }, /* CPU_CLASS_ARM8 */ { "ARM9TDMI", "CPU_ARM9TDMI" }, /* CPU_CLASS_ARM9TDMI */ - { "ARM9E-S", NULL }, /* CPU_CLASS_ARM9ES */ + { "ARM9E-S", "CPU_ARM9E" }, /* CPU_CLASS_ARM9ES */ + { "ARM9EJ-S", "CPU_ARM9E" }, /* CPU_CLASS_ARM9EJS */ { "ARM10E", "CPU_ARM10" }, /* CPU_CLASS_ARM10E */ + { "ARM10EJ", "CPU_ARM10" }, /* CPU_CLASS_ARM10EJ */ { "SA-1", "CPU_SA110" }, /* CPU_CLASS_SA1 */ { "XScale", "CPU_XSCALE_..." }, /* CPU_CLASS_XSCALE */ + { "ARM11J", "CPU_ARM11" }, /* CPU_CLASS_ARM11J */ }; /* @@ -317,7 +352,7 @@ "**unknown 11**", "**unknown 12**", "**unknown 13**", - "**unknown 14**", + "write-back-locking-C", "**unknown 15**", }; @@ -370,9 +405,13 @@ printf(" IDC enabled"); break; case CPU_CLASS_ARM9TDMI: + case CPU_CLASS_ARM9ES: + case CPU_CLASS_ARM9EJS: case CPU_CLASS_ARM10E: + case CPU_CLASS_ARM10EJ: case CPU_CLASS_SA1: case CPU_CLASS_XSCALE: + case CPU_CLASS_ARM11J: if ((ctrl & CPU_CONTROL_DC_ENABLE) == 0) printf(" DC disabled"); else ==== //depot/projects/arm/src/sys/arm/at91/files.at91#16 (text) ==== @@ -1,5 +1,7 @@ # $FreeBSD: src/sys/arm/at91/files.at91,v 1.7 2007/01/05 02:06:53 ticso Exp $ arm/arm/cpufunc_asm_arm9.S standard +arm/arm/cpufunc_asm_arm10.S standard +arm/arm/cpufunc_asm_armv5_ec.S standard arm/arm/irq_dispatch.S standard arm/at91/at91.c standard arm/at91/at91_bbiic.c optional at91_bbiic ==== //depot/projects/arm/src/sys/arm/at91/std.at91#5 (text) ==== @@ -2,6 +2,7 @@ files "../at91/files.at91" cpu CPU_ARM9 +cpu CPU_ARM9E makeoptions CONF_CFLAGS=-mcpu=arm9 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 ==== //depot/projects/arm/src/sys/arm/include/armreg.h#5 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: armreg.h,v 1.28 2003/10/31 16:30:15 scw Exp $ */ +/* $NetBSD: armreg.h,v 1.37 2007/01/06 00:50:54 christos Exp $ */ /*- * Copyright (c) 1998, 2001 Ben Harris @@ -40,6 +40,7 @@ #ifndef MACHINE_ARMREG_H #define MACHINE_ARMREG_H + #define INSN_SIZE 4 #define INSN_COND_MASK 0xf0000000 /* Condition mask */ #define PSR_MODE 0x0000001f /* mode mask */ @@ -65,6 +66,7 @@ #define CPU_ID_DEC 0x44000000 /* 'D' */ #define CPU_ID_INTEL 0x69000000 /* 'i' */ #define CPU_ID_TI 0x54000000 /* 'T' */ +#define CPU_ID_FARADAY 0x66000000 /* 'f' */ /* How to decide what format the CPUID is in. */ #define CPU_ID_ISOLD(x) (((x) & 0x0000f000) == 0x00000000) @@ -89,6 +91,8 @@ #define CPU_ID_ARCH_V5 0x00030000 #define CPU_ID_ARCH_V5T 0x00040000 #define CPU_ID_ARCH_V5TE 0x00050000 +#define CPU_ID_ARCH_V5TEJ 0x00060000 +#define CPU_ID_ARCH_V6 0x00070000 #define CPU_ID_VARIANT_MASK 0x00f00000 /* Next three nybbles are part number */ @@ -118,7 +122,7 @@ /* ARM7 CPUs -- [15:12] == 7 */ #define CPU_ID_ARM700 0x41007000 /* XXX This is a guess. */ #define CPU_ID_ARM710 0x41007100 -#define CPU_ID_ARM7500 0x41027100 /* XXX This is a guess. */ +#define CPU_ID_ARM7500 0x41027100 #define CPU_ID_ARM710A 0x41047100 /* inc ARM7100 */ #define CPU_ID_ARM7500FE 0x41077100 #define CPU_ID_ARM710T 0x41807100 @@ -131,15 +135,20 @@ #define CPU_ID_ARM920T 0x41129200 #define CPU_ID_ARM920T_ALT 0x41009200 #define CPU_ID_ARM922T 0x41029220 +#define CPU_ID_ARM926EJS 0x41069260 #define CPU_ID_ARM940T 0x41029400 /* XXX no MMU */ #define CPU_ID_ARM946ES 0x41049460 /* XXX no MMU */ #define CPU_ID_ARM966ES 0x41049660 /* XXX no MMU */ #define CPU_ID_ARM966ESR1 0x41059660 /* XXX no MMU */ #define CPU_ID_ARM1020E 0x4115a200 /* (AKA arm10 rev 1) */ #define CPU_ID_ARM1022ES 0x4105a220 +#define CPU_ID_ARM1026EJS 0x4106a260 +#define CPU_ID_ARM1136JS 0x4107b360 +#define CPU_ID_ARM1136JSR1 0x4117b360 #define CPU_ID_SA110 0x4401a100 #define CPU_ID_SA1100 0x4401a110 #define CPU_ID_TI925T 0x54029250 +#define CPU_ID_FA526 0x66015260 #define CPU_ID_SA1110 0x6901b110 #define CPU_ID_IXP1200 0x6901c120 #define CPU_ID_80200 0x69052000 @@ -151,6 +160,7 @@ #define CPU_ID_PXA210B 0x69052920 /* 3rd version Core */ #define CPU_ID_PXA250C 0x69052d00 /* 4th version Core */ #define CPU_ID_PXA210C 0x69052d20 /* 4th version Core */ +#define CPU_ID_PXA27X 0x69054110 #define CPU_ID_80321_400 0x69052420 #define CPU_ID_80321_600 0x69052430 #define CPU_ID_80321_400_B0 0x69052c20 @@ -300,4 +310,6 @@ #define INSN_COND_MASK 0xf0000000 /* Condition mask */ #define INSN_COND_AL 0xe0000000 /* Always condition */ +#define THUMB_INSN_SIZE 2 /* Some are 4 bytes. */ + #endif /* !MACHINE_ARMREG_H */ ==== //depot/projects/arm/src/sys/arm/include/cpuconf.h#7 (text+ko) ==== @@ -50,12 +50,22 @@ /* * Step 1: Count the number of CPU types configured into the kernel. */ -#define CPU_NTYPES 2 +#define CPU_NTYPES (defined(CPU_ARM7TDMI) + \ + defined(CPU_ARM8) + defined(CPU_ARM9) + \ + defined(CPU_ARM9E) + \ + defined(CPU_ARM10) + \ + defined(CPU_ARM11) + \ + defined(CPU_SA110) + defined(CPU_SA1100) + \ + defined(CPU_SA1110) + \ + defined(CPU_IXP12X0) + \ + defined(CPU_XSCALE_80200) + \ + defined(CPU_XSCALE_80321) + \ + defined(__CPU_XSCALE_PXA2XX) + \ + defined(CPU_XSCALE_IXP425)) /* * Step 2: Determine which ARM architecture versions are configured. */ - #if (defined(CPU_ARM7TDMI) || defined(CPU_ARM8) || defined(CPU_ARM9) || \ defined(CPU_SA110) || defined(CPU_SA1100) || defined(CPU_SA1110) || \ defined(CPU_IXP12X0) || defined(CPU_XSCALE_IXP425)) @@ -64,19 +74,34 @@ #define ARM_ARCH_4 0 #endif -#if (defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \ - defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342) || \ - defined(CPU_XSCALE_PXA2X0)) || defined(CPU_ARM10) +#if (defined(CPU_ARM9E) || defined(CPU_ARM10) || \ + defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \ + defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342) || \ + defined(CPU_XSCALE_PXA2X0)) #define ARM_ARCH_5 1 #else #define ARM_ARCH_5 0 #endif -#define ARM_NARCH (ARM_ARCH_4 + ARM_ARCH_5) +#if defined(CPU_ARM11) +#define ARM_ARCH_6 1 +#else +#define ARM_ARCH_6 0 +#endif + +#define ARM_NARCH (ARM_ARCH_4 + ARM_ARCH_5 + ARM_ARCH_6) #if ARM_NARCH == 0 && !defined(KLD_MODULE) && defined(_KERNEL) #error ARM_NARCH is 0 #endif +#if ARM_ARCH_5 || ARM_ARCH_6 +/* + * We could support Thumb code on v4T, but the lack of clean interworking + * makes that hard. + */ +#define THUMB_CODE +#endif + /* * Step 3: Define which MMU classes are configured: * @@ -99,7 +124,8 @@ #endif #if (defined(CPU_ARM6) || defined(CPU_ARM7) || defined(CPU_ARM7TDMI) || \ - defined(CPU_ARM8) || defined(CPU_ARM9) || defined(CPU_ARM10)) + defined(CPU_ARM8) || defined(CPU_ARM9) || defined(CPU_ARM9E) || \ + defined(CPU_ARM10) || defined(CPU_ARM11)) #define ARM_MMU_GENERIC 1 #else #define ARM_MMU_GENERIC 0 ==== //depot/projects/arm/src/sys/arm/include/cpufunc.h#7 (text+ko) ==== @@ -343,7 +343,7 @@ extern unsigned arm9_dcache_index_inc; #endif -#ifdef CPU_ARM10 +#if defined(CPU_ARM9E) || defined(CPU_ARM10) void arm10_setttb (u_int); void arm10_tlb_flushID_SE (u_int); @@ -370,8 +370,60 @@ extern unsigned arm10_dcache_index_inc; #endif -#if defined(CPU_ARM9) || defined(CPU_ARM10) || defined(CPU_SA110) || \ - defined(CPU_SA1100) || defined(CPU_SA1110) || \ +#ifdef CPU_ARM11 +void arm11_setttb (u_int); + +void arm11_tlb_flushID_SE (u_int); +void arm11_tlb_flushI_SE (u_int); + +void arm11_context_switch (void); + +void arm11_setup (char *string); +void arm11_tlb_flushID (void); +void arm11_tlb_flushI (void); +void arm11_tlb_flushD (void); +void arm11_tlb_flushD_SE (u_int va); + +void arm11_drain_writebuf (void); +#endif + +#if defined(CPU_ARM9E) || defined (CPU_ARM10) +void armv5_ec_setttb(u_int); + +void armv5_ec_icache_sync_all(void); +void armv5_ec_icache_sync_range(vm_offset_t, vm_size_t); + +void armv5_ec_dcache_wbinv_all(void); +void armv5_ec_dcache_wbinv_range(vm_offset_t, vm_size_t); +void armv5_ec_dcache_inv_range(vm_offset_t, vm_size_t); +void armv5_ec_dcache_wb_range(vm_offset_t, vm_size_t); + +void armv5_ec_idcache_wbinv_all(void); +void armv5_ec_idcache_wbinv_range(vm_offset_t, vm_size_t); +#endif + +#if defined (CPU_ARM10) || defined (CPU_ARM11) +void armv5_setttb(u_int); + +void armv5_icache_sync_all(void); +void armv5_icache_sync_range(vm_offset_t, vm_size_t); + +void armv5_dcache_wbinv_all(void); +void armv5_dcache_wbinv_range(vm_offset_t, vm_size_t); +void armv5_dcache_inv_range(vm_offset_t, vm_size_t); +void armv5_dcache_wb_range(vm_offset_t, vm_size_t); + +void armv5_idcache_wbinv_all(void); +void armv5_idcache_wbinv_range(vm_offset_t, vm_size_t); + +extern unsigned armv5_dcache_sets_max; +extern unsigned armv5_dcache_sets_inc; +extern unsigned armv5_dcache_index_max; +extern unsigned armv5_dcache_index_inc; +#endif + +#if defined(CPU_ARM9) || defined(CPU_ARM9E) || defined(CPU_ARM10) || \ + defined(CPU_SA110) || defined(CPU_SA1100) || defined(CPU_SA1110) || \ defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \ defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) || \ defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342) From owner-p4-projects@FreeBSD.ORG Sun Mar 4 04:56:08 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1021616A403; Sun, 4 Mar 2007 04:56:08 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 9870416A401 for ; Sun, 4 Mar 2007 04:56:07 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 7285513C491 for ; Sun, 4 Mar 2007 04:56:07 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l244u7Gw098125 for ; Sun, 4 Mar 2007 04:56:07 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l244u75W098122 for perforce@freebsd.org; Sun, 4 Mar 2007 04:56:07 GMT (envelope-from imp@freebsd.org) Date: Sun, 4 Mar 2007 04:56:07 GMT Message-Id: <200703040456.l244u75W098122@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 115295 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Mar 2007 04:56:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=115295 Change 115295 by imp@imp_lighthouse on 2007/03/04 04:55:08 arm9e, arm10 and arm11 support code from NetBSD, the missing files. Obtained from: NetBSD Affected files ... .. //depot/projects/arm/src/sys/arm/arm/cpufunc_asm_arm11.S#1 add .. //depot/projects/arm/src/sys/arm/arm/cpufunc_asm_armv5.S#1 add .. //depot/projects/arm/src/sys/arm/arm/cpufunc_asm_armv5_ec.S#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Sun Mar 4 23:36:44 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3794116A403; Sun, 4 Mar 2007 23:36:44 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0E1AC16A401 for ; Sun, 4 Mar 2007 23:36:44 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id F116513C4B4 for ; Sun, 4 Mar 2007 23:36:43 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l24NabM2038954 for ; Sun, 4 Mar 2007 23:36:37 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l24NaaGt038951 for perforce@freebsd.org; Sun, 4 Mar 2007 23:36:36 GMT (envelope-from piso@freebsd.org) Date: Sun, 4 Mar 2007 23:36:36 GMT Message-Id: <200703042336.l24NaaGt038951@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115314 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Mar 2007 23:36:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=115314 Change 115314 by piso@piso_newluxor on 2007/03/04 23:36:34 IFC@115313 Affected files ... .. //depot/projects/soc2006/intr_filter/boot/pc98/cdboot/cdboot.s#2 integrate .. //depot/projects/soc2006/intr_filter/conf/kmod.mk#7 integrate .. //depot/projects/soc2006/intr_filter/dev/bce/if_bce.c#13 integrate .. //depot/projects/soc2006/intr_filter/dev/ixgb/if_ixgb.c#6 integrate .. //depot/projects/soc2006/intr_filter/dev/msk/if_msk.c#7 integrate .. //depot/projects/soc2006/intr_filter/dev/nfe/if_nfe.c#8 integrate .. //depot/projects/soc2006/intr_filter/dev/nge/if_nge.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb.c#12 integrate .. //depot/projects/soc2006/intr_filter/dev/re/if_re.c#19 integrate .. //depot/projects/soc2006/intr_filter/dev/stge/if_stge.c#6 integrate .. //depot/projects/soc2006/intr_filter/dev/ti/if_ti.c#6 integrate .. //depot/projects/soc2006/intr_filter/dev/txp/if_txp.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/vge/if_vge.c#6 integrate .. //depot/projects/soc2006/intr_filter/i386/isa/clock.c#11 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_acct.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_acl.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_context.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_descrip.c#10 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_event.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_exec.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_exit.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_fork.c#9 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#34 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_jail.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_ktrace.c#8 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_linker.c#10 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_module.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_ntptime.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_prot.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_resource.c#9 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_shutdown.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_sig.c#8 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_sysctl.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_time.c#7 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_xxx.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/p1003_1b.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_prof.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_trap.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/sys_generic.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/sys_process.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/sys_socket.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/sysv_msg.c#8 integrate .. //depot/projects/soc2006/intr_filter/kern/sysv_sem.c#8 integrate .. //depot/projects/soc2006/intr_filter/kern/sysv_shm.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_syscalls.c#9 integrate .. //depot/projects/soc2006/intr_filter/netinet/ip_mroute.c#6 integrate .. //depot/projects/soc2006/intr_filter/nfsserver/nfs_syscalls.c#5 integrate .. //depot/projects/soc2006/intr_filter/pc98/cbus/clock.c#8 integrate .. //depot/projects/soc2006/intr_filter/security/audit/audit.c#5 integrate .. //depot/projects/soc2006/intr_filter/security/audit/audit_syscalls.c#5 integrate .. //depot/projects/soc2006/intr_filter/security/mac/mac_syscalls.c#2 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/boot/pc98/cdboot/cdboot.s#2 (text) ==== @@ -28,7 +28,7 @@ # SUCH DAMAGE. # -# $FreeBSD: src/sys/boot/pc98/cdboot/cdboot.s,v 1.1 2006/05/14 07:26:02 nyan Exp $ +# $FreeBSD: src/sys/boot/pc98/cdboot/cdboot.s,v 1.2 2007/03/04 04:53:17 nyan Exp $ # # Basically, we first create a set of boot arguments to pass to the loaded @@ -705,7 +705,7 @@ twiddle: push %ax # Save push %bx # Save mov twiddle_index,%al # Load index - mov twiddle_chars,%bx # Address table + mov $twiddle_chars,%bx # Address table inc %al # Next and $3,%al # char mov %al,twiddle_index # Save index for next call ==== //depot/projects/soc2006/intr_filter/conf/kmod.mk#7 (text+ko) ==== @@ -1,5 +1,5 @@ # From: @(#)bsd.prog.mk 5.26 (Berkeley) 6/25/91 -# $FreeBSD: src/sys/conf/kmod.mk,v 1.215 2007/03/02 11:42:53 flz Exp $ +# $FreeBSD: src/sys/conf/kmod.mk,v 1.216 2007/03/04 19:35:59 flz Exp $ # # The include file handles building and installing loadable # kernel modules. @@ -38,7 +38,7 @@ # # FIRMWS List of firmware images in format filename:shortname:version # -# FIRMWARE_LICENSED +# FIRMWARE_LICENSE # Set to the name of the license the user has to agree on in # order to use this firmware. See /usr/share/doc/legal # ==== //depot/projects/soc2006/intr_filter/dev/bce/if_bce.c#13 (text) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/bce/if_bce.c,v 1.28 2007/02/23 12:18:34 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/bce/if_bce.c,v 1.29 2007/03/04 03:38:06 csjp Exp $"); /* * The following controllers are supported by this driver: @@ -4726,7 +4726,7 @@ count++; /* Send a copy of the frame to any BPF listeners. */ - BPF_MTAP(ifp, m_head); + ETHER_BPF_MTAP(ifp, m_head); } if (count == 0) { ==== //depot/projects/soc2006/intr_filter/dev/ixgb/if_ixgb.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ ***************************************************************************/ -/*$FreeBSD: src/sys/dev/ixgb/if_ixgb.c,v 1.21 2007/02/23 12:18:45 piso Exp $*/ +/*$FreeBSD: src/sys/dev/ixgb/if_ixgb.c,v 1.22 2007/03/04 03:38:07 csjp Exp $*/ #ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_device_polling.h" @@ -475,7 +475,7 @@ if (ifp->if_bpf) bpf_mtap(ifp, m_head); #else - BPF_MTAP(ifp, m_head); + ETHER_BPF_MTAP(ifp, m_head); #endif /* Set timeout in case hardware has problems transmitting */ ifp->if_timer = IXGB_TX_TIMEOUT; ==== //depot/projects/soc2006/intr_filter/dev/msk/if_msk.c#7 (text+ko) ==== @@ -99,7 +99,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/msk/if_msk.c,v 1.10 2007/02/23 12:18:47 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/msk/if_msk.c,v 1.11 2007/03/04 03:38:07 csjp Exp $"); #include #include @@ -2870,7 +2870,7 @@ * If there's a BPF listener, bounce a copy of this frame * to him. */ - BPF_MTAP(ifp, m_head); + ETHER_BPF_MTAP(ifp, m_head); } if (enq > 0) { ==== //depot/projects/soc2006/intr_filter/dev/nfe/if_nfe.c#8 (text+ko) ==== @@ -21,7 +21,7 @@ /* Driver for NVIDIA nForce MCP Fast Ethernet and Gigabit Ethernet */ #include -__FBSDID("$FreeBSD: src/sys/dev/nfe/if_nfe.c,v 1.15 2007/02/23 12:18:48 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/nfe/if_nfe.c,v 1.16 2007/03/04 03:38:07 csjp Exp $"); /* Uncomment the following line to enable polling. */ /* #define DEVICE_POLLING */ @@ -1700,7 +1700,7 @@ /* packet put in h/w queue, remove from s/w queue */ IFQ_DEQUEUE(&ifp->if_snd, m0); - BPF_MTAP(ifp, m0); + ETHER_BPF_MTAP(ifp, m0); } if (sc->txq.cur == old) { /* nothing sent */ return; ==== //depot/projects/soc2006/intr_filter/dev/nge/if_nge.c#5 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/nge/if_nge.c,v 1.90 2007/02/23 12:18:48 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/nge/if_nge.c,v 1.91 2007/03/04 03:38:07 csjp Exp $"); /* * National Semiconductor DP83820/DP83821 gigabit ethernet driver @@ -1613,7 +1613,7 @@ * If there's a BPF listener, bounce a copy of this frame * to him. */ - BPF_MTAP(ifp, m_head); + ETHER_BPF_MTAP(ifp, m_head); } ==== //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb.c#12 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.156 2007/02/27 17:27:23 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.157 2007/03/04 19:33:12 imp Exp $"); #include #include @@ -487,10 +487,13 @@ cbb_removal(sc); } else if (status & CBB_STATE_NOT_A_CARD) { /* - * Up to 20 times, try to rescan the card when we - * see NOT_A_CARD. + * Up to 10 times, try to rescan the card when we see + * NOT_A_CARD. 10 is somehwat arbitrary. When this + * pathology hits, there's a ~40% chance each try will + * fail. 10 tries takes about 5s and results in a + * 99.99% certainty of the results. */ - if (not_a_card++ < 20) { + if (not_a_card++ < 10) { DEVPRINTF((sc->dev, "Not a card bit set, rescanning\n")); cbb_setb(sc, CBB_SOCKET_FORCE, CBB_FORCE_CV_TEST); @@ -505,12 +508,12 @@ mtx_unlock(&Giant); /* - * Wait until it has been 1s since the last time we + * Wait until it has been 250ms since the last time we * get an interrupt. We handle the rest of the interrupt * at the top of the loop. Although we clear the bit in the * ISR, we signal sc->cv from the detach path after we've * set the CBB_KTHREAD_DONE bit, so we can't do a simple - * 1s sleep here. + * 250ms sleep here. * * In our ISR, we turn off the card changed interrupt. Turn * them back on here before we wait for them to happen. We ==== //depot/projects/soc2006/intr_filter/dev/re/if_re.c#19 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/re/if_re.c,v 1.86 2007/02/27 18:45:37 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/re/if_re.c,v 1.87 2007/03/04 03:38:07 csjp Exp $"); /* * RealTek 8139C+/8169/8169S/8110S/8168/8111/8101E PCI NIC driver @@ -2204,7 +2204,7 @@ * If there's a BPF listener, bounce a copy of this frame * to him. */ - BPF_MTAP(ifp, m_head); + ETHER_BPF_MTAP(ifp, m_head); queued++; } ==== //depot/projects/soc2006/intr_filter/dev/stge/if_stge.c#6 (text+ko) ==== @@ -42,7 +42,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/stge/if_stge.c,v 1.5 2007/02/23 12:18:55 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/stge/if_stge.c,v 1.6 2007/03/04 03:38:07 csjp Exp $"); #ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_device_polling.h" @@ -1346,7 +1346,7 @@ * If there's a BPF listener, bounce a copy of this frame * to him. */ - BPF_MTAP(ifp, m_head); + ETHER_BPF_MTAP(ifp, m_head); } if (enq > 0) { ==== //depot/projects/soc2006/intr_filter/dev/ti/if_ti.c#6 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ti/if_ti.c,v 1.127 2007/02/23 12:18:56 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ti/if_ti.c,v 1.128 2007/03/04 03:38:08 csjp Exp $"); #include "opt_ti.h" @@ -3120,7 +3120,7 @@ * If there's a BPF listener, bounce a copy of this frame * to him. */ - BPF_MTAP(ifp, m_head); + ETHER_BPF_MTAP(ifp, m_head); } if (enq > 0) { ==== //depot/projects/soc2006/intr_filter/dev/txp/if_txp.c#5 (text+ko) ==== @@ -35,14 +35,14 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/txp/if_txp.c,v 1.43 2007/02/23 12:18:57 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/txp/if_txp.c,v 1.44 2007/03/04 03:38:08 csjp Exp $"); /* * Driver for 3c990 (Typhoon) Ethernet ASIC */ #include -__FBSDID("$FreeBSD: src/sys/dev/txp/if_txp.c,v 1.43 2007/02/23 12:18:57 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/txp/if_txp.c,v 1.44 2007/03/04 03:38:08 csjp Exp $"); #include #include @@ -91,7 +91,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sys/dev/txp/if_txp.c,v 1.43 2007/02/23 12:18:57 piso Exp $"; + "$FreeBSD: src/sys/dev/txp/if_txp.c,v 1.44 2007/03/04 03:38:08 csjp Exp $"; #endif /* @@ -1350,7 +1350,7 @@ ifp->if_timer = 5; - BPF_MTAP(ifp, m); + ETHER_BPF_MTAP(ifp, m); WRITE_REG(sc, r->r_reg, TXP_IDX2OFFSET(prod)); } ==== //depot/projects/soc2006/intr_filter/dev/vge/if_vge.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/vge/if_vge.c,v 1.30 2007/02/23 12:18:58 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/vge/if_vge.c,v 1.31 2007/03/04 03:38:08 csjp Exp $"); /* * VIA Networking Technologies VT612x PCI gigabit ethernet NIC driver. @@ -1847,7 +1847,7 @@ * If there's a BPF listener, bounce a copy of this frame * to him. */ - BPF_MTAP(ifp, m_head); + ETHER_BPF_MTAP(ifp, m_head); } if (idx == sc->vge_ldata.vge_tx_prodidx) { ==== //depot/projects/soc2006/intr_filter/i386/isa/clock.c#11 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/isa/clock.c,v 1.233 2007/02/23 12:19:00 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/isa/clock.c,v 1.234 2007/03/04 04:55:19 nyan Exp $"); /* * Routines to handle clock hardware. @@ -760,8 +760,8 @@ * timecounter to user a simpler algorithm. */ if (!using_lapic_timer) { - intr_add_handler("clk", 0, (driver_filter_t *)clkintr, NULL, NULL, - INTR_TYPE_CLK, NULL); + intr_add_handler("clk", 0, (driver_filter_t *)clkintr, NULL, + NULL, INTR_TYPE_CLK, NULL); i8254_intsrc = intr_lookup_source(0); if (i8254_intsrc != NULL) i8254_pending = ==== //depot/projects/soc2006/intr_filter/kern/kern_acct.c#5 (text+ko) ==== @@ -68,7 +68,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_acct.c,v 1.86 2007/01/08 20:35:13 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_acct.c,v 1.87 2007/03/04 22:36:45 rwatson Exp $"); #include "opt_mac.h" @@ -182,10 +182,8 @@ "Accounting suspended or not"); /* - * Accounting system call. Written based on the specification and - * previous implementation done by Mark Tinguely. - * - * MPSAFE + * Accounting system call. Written based on the specification and previous + * implementation done by Mark Tinguely. */ int acct(struct thread *td, struct acct_args *uap) ==== //depot/projects/soc2006/intr_filter/kern/kern_acl.c#5 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_acl.c,v 1.50 2007/01/12 22:01:03 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_acl.c,v 1.51 2007/03/04 22:36:45 rwatson Exp $"); #include "opt_mac.h" @@ -185,8 +185,6 @@ /* * Given a file path, get an ACL for it - * - * MPSAFE */ int __acl_get_file(struct thread *td, struct __acl_get_file_args *uap) @@ -207,8 +205,6 @@ /* * Given a file path, get an ACL for it; don't follow links. - * - * MPSAFE */ int __acl_get_link(struct thread *td, struct __acl_get_link_args *uap) @@ -228,9 +224,7 @@ } /* - * Given a file path, set an ACL for it - * - * MPSAFE + * Given a file path, set an ACL for it. */ int __acl_set_file(struct thread *td, struct __acl_set_file_args *uap) @@ -251,8 +245,6 @@ /* * Given a file path, set an ACL for it; don't follow links. - * - * MPSAFE */ int __acl_set_link(struct thread *td, struct __acl_set_link_args *uap) @@ -273,8 +265,6 @@ /* * Given a file descriptor, get an ACL for it - * - * MPSAFE */ int __acl_get_fd(struct thread *td, struct __acl_get_fd_args *uap) @@ -294,8 +284,6 @@ /* * Given a file descriptor, set an ACL for it - * - * MPSAFE */ int __acl_set_fd(struct thread *td, struct __acl_set_fd_args *uap) @@ -315,8 +303,6 @@ /* * Given a file path, delete an ACL from it. - * - * MPSAFE */ int __acl_delete_file(struct thread *td, struct __acl_delete_file_args *uap) @@ -337,8 +323,6 @@ /* * Given a file path, delete an ACL from it; don't follow links. - * - * MPSAFE */ int __acl_delete_link(struct thread *td, struct __acl_delete_link_args *uap) @@ -359,8 +343,6 @@ /* * Given a file path, delete an ACL from it. - * - * MPSAFE */ int __acl_delete_fd(struct thread *td, struct __acl_delete_fd_args *uap) @@ -379,9 +361,7 @@ } /* - * Given a file path, check an ACL for it - * - * MPSAFE + * Given a file path, check an ACL for it. */ int __acl_aclcheck_file(struct thread *td, struct __acl_aclcheck_file_args *uap) @@ -402,8 +382,6 @@ /* * Given a file path, check an ACL for it; don't follow links. - * - * MPSAFE */ int __acl_aclcheck_link(struct thread *td, struct __acl_aclcheck_link_args *uap) @@ -423,9 +401,7 @@ } /* - * Given a file descriptor, check an ACL for it - * - * MPSAFE + * Given a file descriptor, check an ACL for it. */ int __acl_aclcheck_fd(struct thread *td, struct __acl_aclcheck_fd_args *uap) ==== //depot/projects/soc2006/intr_filter/kern/kern_context.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_context.c,v 1.7 2003/11/09 20:31:03 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_context.c,v 1.8 2007/03/04 22:36:45 rwatson Exp $"); #include #include @@ -58,9 +58,6 @@ } #endif -/* - * MPSAFE - */ int getcontext(struct thread *td, struct getcontext_args *uap) { @@ -79,9 +76,6 @@ return (ret); } -/* - * MPSAFE - */ int setcontext(struct thread *td, struct setcontext_args *uap) { ==== //depot/projects/soc2006/intr_filter/kern/kern_descrip.c#10 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_descrip.c,v 1.303 2007/02/15 10:55:43 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_descrip.c,v 1.304 2007/03/04 22:36:45 rwatson Exp $"); #include "opt_compat.h" #include "opt_ddb.h" @@ -247,9 +247,6 @@ int dummy; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int getdtablesize(struct thread *td, struct getdtablesize_args *uap) @@ -275,9 +272,6 @@ u_int to; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int dup2(struct thread *td, struct dup2_args *uap) @@ -295,9 +289,6 @@ u_int fd; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int dup(struct thread *td, struct dup_args *uap) @@ -316,9 +307,6 @@ long arg; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int fcntl(struct thread *td, struct fcntl_args *uap) @@ -965,9 +953,6 @@ int fd; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int close(td, uap) @@ -1048,9 +1033,6 @@ struct ostat *sb; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int ofstat(struct thread *td, struct ofstat_args *uap) @@ -1077,9 +1059,6 @@ struct stat *sb; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int fstat(struct thread *td, struct fstat_args *uap) @@ -1120,9 +1099,6 @@ struct nstat *sb; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int nfstat(struct thread *td, struct nfstat_args *uap) @@ -1148,9 +1124,6 @@ int name; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int fpathconf(struct thread *td, struct fpathconf_args *uap) @@ -2223,9 +2196,6 @@ int how; }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int flock(struct thread *td, struct flock_args *uap) ==== //depot/projects/soc2006/intr_filter/kern/kern_event.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_event.c,v 1.107 2006/11/20 22:17:50 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_event.c,v 1.108 2007/03/04 22:36:45 rwatson Exp $"); #include "opt_ktrace.h" @@ -506,9 +506,6 @@ return (kn->kn_data != 0); } -/* - * MPSAFE - */ int kqueue(struct thread *td, struct kqueue_args *uap) { @@ -557,9 +554,6 @@ const struct timespec *timeout; }; #endif -/* - * MPSAFE - */ int kevent(struct thread *td, struct kevent_args *uap) { ==== //depot/projects/soc2006/intr_filter/kern/kern_exec.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_exec.c,v 1.299 2006/11/06 13:42:00 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_exec.c,v 1.300 2007/03/04 22:36:45 rwatson Exp $"); #include "opt_hwpmc_hooks.h" #include "opt_ktrace.h" @@ -168,9 +168,6 @@ }; #endif -/* - * MPSAFE - */ int execve(td, uap) struct thread *td; @@ -199,9 +196,6 @@ }; #endif -/* - * MPSAFE - */ int __mac_execve(td, uap) struct thread *td; @@ -277,8 +271,6 @@ /* * In-kernel implementation of execve(). All arguments are assumed to be * userspace pointers from the passed thread. - * - * MPSAFE */ static int do_execve(td, args, mac_p) ==== //depot/projects/soc2006/intr_filter/kern/kern_exit.c#4 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_exit.c,v 1.294 2006/10/25 06:18:04 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_exit.c,v 1.295 2007/03/04 22:36:46 rwatson Exp $"); #include "opt_compat.h" #include "opt_ktrace.h" @@ -91,8 +91,6 @@ /* * exit -- * Death of process. - * - * MPSAFE */ void sys_exit(struct thread *td, struct sys_exit_args *uap) @@ -553,9 +551,6 @@ }; #endif -/* - * MPSAFE. - */ int abort2(struct thread *td, struct abort2_args *uap) { @@ -628,8 +623,6 @@ #ifdef COMPAT_43 /* * The dirty work is handled by kern_wait(). - * - * MPSAFE. */ int owait(struct thread *td, struct owait_args *uap __unused) @@ -645,8 +638,6 @@ /* * The dirty work is handled by kern_wait(). - * - * MPSAFE. */ int wait4(struct thread *td, struct wait_args *uap) ==== //depot/projects/soc2006/intr_filter/kern/kern_fork.c#9 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_fork.c,v 1.268 2007/02/27 17:22:30 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_fork.c,v 1.269 2007/03/04 22:36:46 rwatson Exp $"); #include "opt_ktrace.h" #include "opt_mac.h" @@ -82,9 +82,6 @@ }; #endif -/* - * MPSAFE - */ /* ARGSUSED */ int fork(td, uap) @@ -102,9 +99,6 @@ return (error); } -/* - * MPSAFE - */ /* ARGSUSED */ int vfork(td, uap) @@ -122,9 +116,6 @@ return (error); } -/* - * MPSAFE - */ int rfork(td, uap) struct thread *td; ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#34 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_intr.c,v 1.141 2007/02/27 17:09:20 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_intr.c,v 1.142 2007/03/02 17:01:45 jhb Exp $"); #include "opt_ddb.h" @@ -758,14 +758,15 @@ * number of back to back interrupts exceeds the storm threshold, * then enter storming mode. */ - if (intr_storm_threshold != 0 && ie->ie_count >= intr_storm_threshold) { + if (intr_storm_threshold != 0 && ie->ie_count >= intr_storm_threshold && + !(ie->ie_flags & IE_SOFT)) { if (ie->ie_warned == 0) { printf( "Interrupt storm detected on \"%s\"; throttling interrupt source\n", ie->ie_name); ie->ie_warned = 1; } - tsleep(&ie->ie_count, 0, "istorm", 1); + pause("istorm", 1); } else ie->ie_count++; ==== //depot/projects/soc2006/intr_filter/kern/kern_jail.c#6 (text+ko) ==== @@ -8,7 +8,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_jail.c,v 1.59 2007/03/01 20:47:41 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_jail.c,v 1.60 2007/03/04 22:36:46 rwatson Exp $"); #include "opt_mac.h" @@ -94,8 +94,6 @@ SYSINIT(prison, SI_SUB_INTRINSIC, SI_ORDER_ANY, init_prison, NULL); /* - * MPSAFE - * * struct jail_args { * struct jail *jail; * }; @@ -184,8 +182,6 @@ } /* - * MPSAFE - * * struct jail_attach_args { * int jid; * }; ==== //depot/projects/soc2006/intr_filter/kern/kern_ktrace.c#8 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_ktrace.c,v 1.115 2007/02/13 00:20:13 mpp Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_ktrace.c,v 1.116 2007/03/04 22:36:46 rwatson Exp $"); #include "opt_ktrace.h" #include "opt_mac.h" @@ -373,9 +373,6 @@ mtx_unlock(&ktrace_mtx); } -/* - * MPSAFE - */ void ktrsyscall(code, narg, args) int code, narg; @@ -407,9 +404,6 @@ ktr_submitrequest(curthread, req); } -/* - * MPSAFE - */ void ktrsysret(code, error, retval) int code, error; @@ -564,8 +558,6 @@ /* * ktrace system call - * - * MPSAFE */ #ifndef _SYS_SYSPROTO_H_ struct ktrace_args { @@ -739,8 +731,6 @@ /* * utrace system call - * - * MPSAFE */ /* ARGSUSED */ int ==== //depot/projects/soc2006/intr_filter/kern/kern_linker.c#10 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.146 2007/02/26 16:36:48 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_linker.c,v 1.147 2007/03/04 22:36:46 rwatson Exp $"); #include "opt_ddb.h" #include "opt_hwpmc_hooks.h" @@ -841,9 +841,6 @@ /* * Syscalls. */ -/* - * MPSAFE - */ int kern_kldload(struct thread *td, const char *file, int *fileid) { @@ -909,9 +906,6 @@ return (error); } -/* - * MPSAFE - */ int kern_kldunload(struct thread *td, int fileid, int flags) { @@ -960,9 +954,6 @@ return (error); } -/* - * MPSAFE >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Mar 5 07:43:49 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3D48216A406; Mon, 5 Mar 2007 07:43:49 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 104E216A404 for ; Mon, 5 Mar 2007 07:43:49 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id F279D13C474 for ; Mon, 5 Mar 2007 07:43:48 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l257hmdj055467 for ; Mon, 5 Mar 2007 07:43:48 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l257hldV055462 for perforce@freebsd.org; Mon, 5 Mar 2007 07:43:47 GMT (envelope-from mjacob@freebsd.org) Date: Mon, 5 Mar 2007 07:43:47 GMT Message-Id: <200703050743.l257hldV055462@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Cc: Subject: PERFORCE change 115322 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 07:43:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=115322 Change 115322 by mjacob@mjexp on 2007/03/05 07:43:11 IFC Affected files ... .. //depot/projects/mjexp/UPDATING#10 integrate .. //depot/projects/mjexp/bin/expr/expr.1#2 integrate .. //depot/projects/mjexp/bin/kill/kill.1#2 integrate .. //depot/projects/mjexp/etc/defaults/rc.conf#6 integrate .. //depot/projects/mjexp/etc/mtree/BSD.usr.dist#5 integrate .. //depot/projects/mjexp/etc/rc.d/dhclient#4 integrate .. //depot/projects/mjexp/etc/rc.d/random#2 integrate .. //depot/projects/mjexp/lib/libarchive/Makefile#4 integrate .. //depot/projects/mjexp/lib/libarchive/README#2 integrate .. //depot/projects/mjexp/lib/libarchive/archive.h.in#7 integrate .. //depot/projects/mjexp/lib/libarchive/archive_entry.3#3 integrate .. //depot/projects/mjexp/lib/libarchive/archive_private.h#6 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read.3#6 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read.c#8 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_data_into_fd.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_extract.c#5 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_private.h#1 branch .. //depot/projects/mjexp/lib/libarchive/archive_read_support_compression_bzip2.c#5 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_support_compression_compress.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_support_compression_gzip.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_support_compression_none.c#7 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_support_format_cpio.c#5 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_support_format_empty.c#2 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_support_format_iso9660.c#6 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_support_format_tar.c#5 integrate .. //depot/projects/mjexp/lib/libarchive/archive_read_support_format_zip.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_util.3#3 integrate .. //depot/projects/mjexp/lib/libarchive/archive_util.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_virtual.c#1 branch .. //depot/projects/mjexp/lib/libarchive/archive_write.3#5 integrate .. //depot/projects/mjexp/lib/libarchive/archive_write.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_write_disk.3#1 branch .. //depot/projects/mjexp/lib/libarchive/archive_write_disk.c#1 branch .. //depot/projects/mjexp/lib/libarchive/archive_write_disk_private.h#1 branch .. //depot/projects/mjexp/lib/libarchive/archive_write_disk_set_standard_lookup.c#1 branch .. //depot/projects/mjexp/lib/libarchive/archive_write_private.h#1 branch .. //depot/projects/mjexp/lib/libarchive/archive_write_set_compression_bzip2.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_write_set_compression_gzip.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_write_set_compression_none.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_write_set_format_cpio.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_write_set_format_pax.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_write_set_format_shar.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/archive_write_set_format_ustar.c#4 integrate .. //depot/projects/mjexp/lib/libarchive/test/Makefile#1 branch .. //depot/projects/mjexp/lib/libarchive/test/README#1 branch .. //depot/projects/mjexp/lib/libarchive/test/main.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test.h#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_archive_api_feature.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_bad_fd.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_data_large.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_extract.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_cpio_bin.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_cpio_bin_Z.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_cpio_bin_bz2.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_cpio_bin_gz.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_cpio_odc.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_cpio_svr4_gzip.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_cpio_svr4c_Z.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_empty.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_gtar_gz.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_iso_gz.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_isorr_bz2.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_pax_bz2.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_tar.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_tbz.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_tgz.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_tz.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_format_zip.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_large.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_position.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_read_truncated.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_write_disk.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_write_disk_perms.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_write_disk_secure.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_write_format_cpio_empty.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_write_format_shar_empty.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_write_format_tar.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_write_format_tar_empty.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_write_open_memory.c#1 branch .. //depot/projects/mjexp/lib/libc/Makefile#2 integrate .. //depot/projects/mjexp/lib/libc/regex/engine.c#3 integrate .. //depot/projects/mjexp/lib/libc/rpc/clnt_dg.c#2 integrate .. //depot/projects/mjexp/lib/libc/yp/yplib.c#2 integrate .. //depot/projects/mjexp/lib/libelf/gelf_getehdr.3#3 integrate .. //depot/projects/mjexp/sbin/newfs/newfs.c#3 integrate .. //depot/projects/mjexp/share/doc/Makefile#2 integrate .. //depot/projects/mjexp/share/doc/legal/Makefile#1 branch .. //depot/projects/mjexp/share/doc/legal/intel_ipw/Makefile#1 branch .. //depot/projects/mjexp/share/doc/legal/intel_iwi/Makefile#1 branch .. //depot/projects/mjexp/share/man/man4/ng_source.4#3 integrate .. //depot/projects/mjexp/share/man/man7/hier.7#3 integrate .. //depot/projects/mjexp/share/man/man9/Makefile#11 integrate .. //depot/projects/mjexp/share/man/man9/sleep.9#4 integrate .. //depot/projects/mjexp/share/man/man9/vfs_getopt.9#1 branch .. //depot/projects/mjexp/sys/arm/xscale/ixp425/ixp425_npe.c#4 integrate .. //depot/projects/mjexp/sys/boot/pc98/cdboot/cdboot.s#2 integrate .. //depot/projects/mjexp/sys/conf/kmod.mk#5 integrate .. //depot/projects/mjexp/sys/contrib/dev/ipw/LICENSE#1 branch .. //depot/projects/mjexp/sys/contrib/dev/ipw/ipw2100-1.3-i.fw.uu#1 branch .. //depot/projects/mjexp/sys/contrib/dev/ipw/ipw2100-1.3-p.fw.uu#1 branch .. //depot/projects/mjexp/sys/contrib/dev/ipw/ipw2100-1.3.fw.uu#1 branch .. //depot/projects/mjexp/sys/contrib/dev/iwi/LICENSE#1 branch .. //depot/projects/mjexp/sys/contrib/dev/iwi/ipw2200-bss.fw.uu#1 branch .. //depot/projects/mjexp/sys/contrib/dev/iwi/ipw2200-ibss.fw.uu#1 branch .. //depot/projects/mjexp/sys/contrib/dev/iwi/ipw2200-sniffer.fw.uu#1 branch .. //depot/projects/mjexp/sys/dev/bce/if_bce.c#11 integrate .. //depot/projects/mjexp/sys/dev/ixgb/if_ixgb.c#3 integrate .. //depot/projects/mjexp/sys/dev/msk/if_msk.c#5 integrate .. //depot/projects/mjexp/sys/dev/nfe/if_nfe.c#6 integrate .. //depot/projects/mjexp/sys/dev/nge/if_nge.c#3 integrate .. //depot/projects/mjexp/sys/dev/pccbb/pccbb.c#6 integrate .. //depot/projects/mjexp/sys/dev/re/if_re.c#9 integrate .. //depot/projects/mjexp/sys/dev/stge/if_stge.c#4 integrate .. //depot/projects/mjexp/sys/dev/ti/if_ti.c#4 integrate .. //depot/projects/mjexp/sys/dev/txp/if_txp.c#3 integrate .. //depot/projects/mjexp/sys/dev/vge/if_vge.c#5 integrate .. //depot/projects/mjexp/sys/geom/eli/g_eli.c#4 integrate .. //depot/projects/mjexp/sys/i386/isa/clock.c#6 integrate .. //depot/projects/mjexp/sys/kern/kern_acct.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_acl.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_alq.c#3 integrate .. //depot/projects/mjexp/sys/kern/kern_context.c#2 integrate .. //depot/projects/mjexp/sys/kern/kern_descrip.c#6 integrate .. //depot/projects/mjexp/sys/kern/kern_event.c#3 integrate .. //depot/projects/mjexp/sys/kern/kern_exec.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_exit.c#3 integrate .. //depot/projects/mjexp/sys/kern/kern_fork.c#8 integrate .. //depot/projects/mjexp/sys/kern/kern_intr.c#9 integrate .. //depot/projects/mjexp/sys/kern/kern_jail.c#6 integrate .. //depot/projects/mjexp/sys/kern/kern_ktrace.c#7 integrate .. //depot/projects/mjexp/sys/kern/kern_linker.c#6 integrate .. //depot/projects/mjexp/sys/kern/kern_module.c#2 integrate .. //depot/projects/mjexp/sys/kern/kern_ntptime.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_prot.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_resource.c#8 integrate .. //depot/projects/mjexp/sys/kern/kern_shutdown.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_sig.c#9 integrate .. //depot/projects/mjexp/sys/kern/kern_sysctl.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_time.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_xxx.c#3 integrate .. //depot/projects/mjexp/sys/kern/p1003_1b.c#2 integrate .. //depot/projects/mjexp/sys/kern/subr_prof.c#2 integrate .. //depot/projects/mjexp/sys/kern/subr_trap.c#6 integrate .. //depot/projects/mjexp/sys/kern/sys_generic.c#4 integrate .. //depot/projects/mjexp/sys/kern/sys_process.c#5 integrate .. //depot/projects/mjexp/sys/kern/sys_socket.c#3 integrate .. //depot/projects/mjexp/sys/kern/sysv_msg.c#6 integrate .. //depot/projects/mjexp/sys/kern/sysv_sem.c#3 integrate .. //depot/projects/mjexp/sys/kern/sysv_shm.c#4 integrate .. //depot/projects/mjexp/sys/kern/uipc_syscalls.c#5 integrate .. //depot/projects/mjexp/sys/kern/vfs_cluster.c#3 integrate .. //depot/projects/mjexp/sys/modules/Makefile#6 integrate .. //depot/projects/mjexp/sys/modules/ipwfw/Makefile#1 branch .. //depot/projects/mjexp/sys/modules/ipwfw/ipw_bss/Makefile#1 branch .. //depot/projects/mjexp/sys/modules/ipwfw/ipw_ibss/Makefile#1 branch .. //depot/projects/mjexp/sys/modules/ipwfw/ipw_monitor/Makefile#1 branch .. //depot/projects/mjexp/sys/modules/iwifw/Makefile#1 branch .. //depot/projects/mjexp/sys/modules/iwifw/iwi_bss/Makefile#1 branch .. //depot/projects/mjexp/sys/modules/iwifw/iwi_ibss/Makefile#1 branch .. //depot/projects/mjexp/sys/modules/iwifw/iwi_monitor/Makefile#1 branch .. //depot/projects/mjexp/sys/netgraph/ng_source.c#3 integrate .. //depot/projects/mjexp/sys/netinet/ip_mroute.c#8 integrate .. //depot/projects/mjexp/sys/nfsserver/nfs_syscalls.c#5 integrate .. //depot/projects/mjexp/sys/pc98/cbus/clock.c#6 integrate .. //depot/projects/mjexp/sys/powerpc/powermac/pswitch.c#3 integrate .. //depot/projects/mjexp/sys/security/audit/audit.c#5 integrate .. //depot/projects/mjexp/sys/security/audit/audit_syscalls.c#5 integrate .. //depot/projects/mjexp/sys/security/mac/mac_syscalls.c#2 integrate .. //depot/projects/mjexp/sys/sys/param.h#10 integrate .. //depot/projects/mjexp/sys/tools/fw_stub.awk#4 integrate .. //depot/projects/mjexp/tools/tools/README#2 integrate .. //depot/projects/mjexp/tools/tools/pciroms/Makefile#1 branch .. //depot/projects/mjexp/tools/tools/pciroms/pciroms.c#1 branch .. //depot/projects/mjexp/usr.bin/mkstr/mkstr.1#2 integrate .. //depot/projects/mjexp/usr.bin/netstat/mcast.c#4 integrate .. //depot/projects/mjexp/usr.bin/tar/tree.c#4 integrate .. //depot/projects/mjexp/usr.sbin/freebsd-update/freebsd-update.sh#4 integrate .. //depot/projects/mjexp/usr.sbin/pkg_install/info/pkg_info.1#2 integrate Differences ... ==== //depot/projects/mjexp/UPDATING#10 (text+ko) ==== @@ -21,6 +21,12 @@ developers choose to disable these features on build machines to maximize performance. +20070302: + Firmwares for ipw(4) and iwi(4) are now included in the base tree. + In order to use them one must agree to the respective LICENSE in + share/doc/legal and define legal..license_ack=1 via + loader.conf(5) or kenv(1). + 20070228: The name resolution/mapping functions addr2ascii(3) and ascii2addr(3) were removed from FreeBSD's libc. These originally came from INRIA @@ -751,4 +757,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.481 2007/03/01 15:42:23 ru Exp $ +$FreeBSD: src/UPDATING,v 1.482 2007/03/02 14:56:15 flz Exp $ ==== //depot/projects/mjexp/bin/expr/expr.1#2 (text+ko) ==== @@ -28,7 +28,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/bin/expr/expr.1,v 1.28 2005/01/16 16:41:57 ru Exp $ +.\" $FreeBSD: src/bin/expr/expr.1,v 1.29 2007/03/04 19:52:07 ru Exp $ .\" .Dd July 12, 2004 .Dt EXPR 1 @@ -72,7 +72,10 @@ .Pp Operators are listed below in order of increasing precedence; all are left-associative. -Operators with equal precedence are grouped within { } symbols. +Operators with equal precedence are grouped within symbols +.Ql { +and +.Ql } . .Bl -tag -width indent .It Ar expr1 Li | Ar expr2 Return the evaluation of @@ -97,7 +100,7 @@ Return the results of multiplication, integer division, or remainder of integer-valued arguments. .It Ar expr1 Li : Ar expr2 The -.Dq \&: +.Dq Li \&: operator matches .Ar expr1 against @@ -105,13 +108,13 @@ which must be a basic regular expression. The regular expression is anchored to the beginning of the string with an implicit -.Dq ^ . +.Dq Li ^ . .Pp If the match succeeds and the pattern contains at least one regular expression subexpression -.Dq "\e(...\e)" , +.Dq Li "\e(...\e)" , the string corresponding to -.Dq "\e1" +.Dq Li \e1 is returned; otherwise the matching operator returns the number of characters matched. If the match fails and the pattern contains a regular expression subexpression ==== //depot/projects/mjexp/bin/kill/kill.1#2 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)kill.1 8.2 (Berkeley) 4/28/95 -.\" $FreeBSD: src/bin/kill/kill.1,v 1.20 2005/01/16 16:41:57 ru Exp $ +.\" $FreeBSD: src/bin/kill/kill.1,v 1.21 2007/03/04 09:15:12 ru Exp $ .\" .Dd April 28, 1995 .Dt KILL 1 @@ -41,31 +41,27 @@ .Sh SYNOPSIS .Nm .Op Fl s Ar signal_name -.Ar pid -\&... +.Ar pid ... .Nm .Fl l .Op Ar exit_status .Nm .Fl Ar signal_name -.Ar pid -\&... +.Ar pid ... .Nm .Fl Ar signal_number -.Ar pid -\&... +.Ar pid ... .Sh DESCRIPTION The .Nm utility sends a signal to the processes specified by the .Ar pid -operand(s). +operands. .Pp Only the super-user may send signals to other users' processes. .Pp The options are as follows: -.Pp -.Bl -tag -width Ds +.Bl -tag -width indent .It Fl s Ar signal_name A symbolic signal name specifying the signal to be sent instead of the default @@ -84,15 +80,16 @@ .Dv TERM . .El .Pp -The following pids have special meanings: -.Bl -tag -width Ds -compact +The following PIDs have special meanings: +.Bl -tag -width indent .It -1 If superuser, broadcast the signal to all processes; otherwise broadcast to all processes belonging to the user. .El .Pp Some of the more commonly used signals: -.Bl -tag -width Ds -compact +.Pp +.Bl -tag -width indent -compact .It 1 HUP (hang up) .It 2 @@ -119,17 +116,17 @@ .Ex -std .Sh EXAMPLES Terminate -the processes with pids 142 and 157: +the processes with PIDs 142 and 157: .Pp .Dl "kill 142 157" .Pp Send the hangup signal .Pq Dv SIGHUP -to the process with pid 507: +to the process with PID 507: .Pp .Dl "kill -s HUP 507" .Pp -Terminate the process group with pgid 117: +Terminate the process group with PGID 117: .Pp .Dl "kill -- -117" .Sh SEE ALSO @@ -142,7 +139,7 @@ .Sh STANDARDS The .Nm -function is expected to be +utility is expected to be .St -p1003.2 compatible. .Sh HISTORY ==== //depot/projects/mjexp/etc/defaults/rc.conf#6 (text+ko) ==== @@ -15,7 +15,7 @@ # For a more detailed explanation of all the rc.conf variables, please # refer to the rc.conf(5) manual page. # -# $FreeBSD: src/etc/defaults/rc.conf,v 1.304 2007/02/09 12:11:27 flz Exp $ +# $FreeBSD: src/etc/defaults/rc.conf,v 1.305 2007/03/03 06:36:32 ume Exp $ ############################################################## ### Important initial Boot-time options #################### @@ -425,7 +425,7 @@ ipv6_ipfilter_rules="/etc/ipf6.rules" # rules definition file for ipfilter, # see /usr/src/contrib/ipfilter/rules # for examples -ip6addrctl_enable="NO" # Set to YES to enable default address selection +ip6addrctl_enable="YES" # Set to YES to enable default address selection ip6addrctl_verbose="NO" # Set to YES to enable verbose configuration messages ############################################################## ==== //depot/projects/mjexp/etc/mtree/BSD.usr.dist#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.324 2006/12/05 16:57:10 ru Exp $ +# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.326 2007/03/02 14:56:14 flz Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -75,6 +75,12 @@ misc .. .. + legal + intel_ipw + .. + intel_iwi + .. + .. ncurses .. ntp ==== //depot/projects/mjexp/etc/rc.d/dhclient#4 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: dhclient,v 1.8 2002/03/22 04:33:58 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/dhclient,v 1.26 2007/02/15 06:51:31 yar Exp $ +# $FreeBSD: src/etc/rc.d/dhclient,v 1.27 2007/03/02 20:48:35 brooks Exp $ # # PROVIDE: dhclient @@ -28,17 +28,13 @@ fi # Override for $ifn specific flags (see rc.subr for $flags setting) - eval specific=\$dhclient_flags_$ifn + specific=`get_if_var $ifn dhclient_flags_IF` if [ -z "$flags" -a -n "$specific" ]; then rc_flags=$specific fi - eval specific=\$background_dhclient_$ifn - if [ -n "$specific" ]; then - if checkyesno background_dhclient_$ifn; then - rc_flags="${rc_flags} -b" - fi - elif checkyesno background_dhclient; then + background_dhclient=`get_if_var $ifn background_dhclient_IF $background_dhclient` + if checkyesno background_dhclient_$ifn; then rc_flags="${rc_flags} -b" fi ==== //depot/projects/mjexp/etc/rc.d/random#2 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/random,v 1.8 2005/04/11 02:45:05 dougb Exp $ +# $FreeBSD: src/etc/rc.d/random,v 1.9 2007/03/03 06:39:06 njl Exp $ # # PROVIDE: random @@ -45,6 +45,7 @@ *) if [ -w /dev/random ]; then feed_dev_random "${entropy_file}" + feed_dev_random /var/db/entropy-file fi ;; esac @@ -60,22 +61,22 @@ ;; *) echo -n 'Writing entropy file:' - rm -f ${entropy_file} + rm -f ${entropy_file} 2> /dev/null oumask=`umask` umask 077 - if touch ${entropy_file}; then + if touch ${entropy_file} 2> /dev/null; then entropy_file_confirmed="${entropy_file}" else # Try this as a reasonable alternative for read-only # roots, diskless workstations, etc. - rm -f /var/db/entropy-file - if touch /var/db/entropy-file; then + rm -f /var/db/entropy-file 2> /dev/null + if touch /var/db/entropy-file 2> /dev/null; then entropy_file_confirmed=/var/db/entropy-file fi fi case ${entropy_file_confirmed} in '') - err 1 'entropy file write failed.' + warn 'write failed (read-only fs?)' ;; *) dd if=/dev/random of=${entropy_file_confirmed} \ ==== //depot/projects/mjexp/lib/libarchive/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libarchive/Makefile,v 1.58 2007/02/01 06:18:16 kientzle Exp $ +# $FreeBSD: src/lib/libarchive/Makefile,v 1.59 2007/03/03 07:37:35 kientzle Exp $ LIB= archive DPADD= ${LIBBZ2} ${LIBZ} @@ -9,14 +9,14 @@ # Major: Bumped ONLY when API/ABI breakage happens (see SHLIB_MAJOR) # Minor: Bumped when significant new features are added # Revision: Bumped on any notable change -VERSION= 1.3.1 +VERSION= 2.0.20 ARCHIVE_API_MAJOR!= echo ${VERSION} | sed -e 's/[^0-9]/./g' -e 's/\..*//' ARCHIVE_API_MINOR!= echo ${VERSION} | sed -e 's/[^0-9]/./g' -e 's/[0-9]*\.//' -e 's/\..*//' # FreeBSD SHLIB_MAJOR value is managed as part of the FreeBSD system. # It has no real relation to the version number above. -SHLIB_MAJOR= 3 +SHLIB_MAJOR= 4 CFLAGS+= -DPACKAGE_NAME=\"lib${LIB}\" CFLAGS+= -DPACKAGE_VERSION=\"${VERSION}\" @@ -67,7 +67,10 @@ archive_string.c \ archive_string_sprintf.c \ archive_util.c \ + archive_virtual.c \ archive_write.c \ + archive_write_disk.c \ + archive_write_disk_set_standard_lookup.c \ archive_write_open_fd.c \ archive_write_open_file.c \ archive_write_open_filename.c \ @@ -87,6 +90,7 @@ archive_read.3 \ archive_util.3 \ archive_write.3 \ + archive_write_disk.3 \ libarchive.3 \ libarchive-formats.5 \ tar.5 @@ -173,6 +177,7 @@ MLINKS+= archive_read.3 archive_read_support_format_iso9660.3 MLINKS+= archive_read.3 archive_read_support_format_tar.3 MLINKS+= archive_read.3 archive_read_support_format_zip.3 +MLINKS+= archive_util.3 archive_clear_error.3 MLINKS+= archive_util.3 archive_compression.3 MLINKS+= archive_util.3 archive_compression_name.3 MLINKS+= archive_util.3 archive_errno.3 @@ -201,6 +206,15 @@ MLINKS+= archive_write.3 archive_write_set_format_pax.3 MLINKS+= archive_write.3 archive_write_set_format_shar.3 MLINKS+= archive_write.3 archive_write_set_format_ustar.3 +MLINKS+= archive_write_disk.3 archive_write_disk_new.3 +MLINKS+= archive_write_disk.3 archive_write_disk_set_group_lookup.3 +MLINKS+= archive_write_disk.3 archive_write_disk_set_options.3 +MLINKS+= archive_write_disk.3 archive_write_disk_set_skip_file.3 +MLINKS+= archive_write_disk.3 archive_write_disk_set_standard_lookup.3 +MLINKS+= archive_write_disk.3 archive_write_disk_set_user_lookup.3 MLINKS+= libarchive.3 archive.3 +test: + cd ${.CURDIR}/test && make test + .include ==== //depot/projects/mjexp/lib/libarchive/README#2 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/lib/libarchive/README,v 1.4 2005/02/12 23:09:44 kientzle Exp $ +$FreeBSD: src/lib/libarchive/README,v 1.5 2007/03/03 07:37:35 kientzle Exp $ libarchive: a library for reading and writing streaming archives @@ -6,16 +6,16 @@ Documentation: * libarchive.3 gives an overview of the library as a whole - * archive_read.3 and archive_write.3 provide detailed calling - sequences for the read and write APIs + * archive_read.3, archive_write.3, and archive_write_disk.3 provide + detailed calling sequences for the read and write APIs * archive_entry.3 details the "struct archive_entry" utility class * libarchive-formats.5 documents the file formats supported by the library * tar.5 provides some detailed information about a variety of different "tar" formats. You should also read the copious comments in "archive.h" and the source -code for the sample "bsdtar" program for more details. Please let me know -about any errors or omissions you find. +code for the sample "bsdtar" and "minitar" programs for more details. +Please let me know about any errors or omissions you find. Currently, the library automatically detects and reads the following: * gzip compression @@ -84,8 +84,10 @@ a block of data in memory and add it to a tar archive without first writing a temporary file. You can also read an entry from an archive and write the data directly to a socket. If you want - to read/write entries to disk, there are convenience functions to - make this especially easy. + to read/write entries to disk, the archive_write_disk interface + treats a directory as if it were an archive so you can copy + from archive->disk using the same code you use for archive->archive + transfers. * Note: "pax interchange format" is really an extended tar format, despite what the name says. ==== //depot/projects/mjexp/lib/libarchive/archive.h.in#7 (text+ko) ==== @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/lib/libarchive/archive.h.in,v 1.38 2007/02/01 06:18:16 kientzle Exp $ + * $FreeBSD: src/lib/libarchive/archive.h.in,v 1.39 2007/03/03 07:37:35 kientzle Exp $ */ #ifndef ARCHIVE_H_INCLUDED @@ -37,7 +37,14 @@ #include /* Linux requires this for off_t */ @ARCHIVE_H_INCLUDE_INTTYPES_H@ #include /* For FILE * */ +#ifndef _WIN32 #include /* For ssize_t and size_t */ +#else +typedef long ssize_t; +typedef unsigned int uid_t; +typedef unsigned int gid_t; +typedef unsigned short mode_t; +#endif #ifdef __cplusplus extern "C" { @@ -59,6 +66,7 @@ * 1 - Version tests are available. * 2 - archive_{read,write}_close available separately from _finish. * 3 - open_memory, open_memory2, open_FILE, open_fd available + * 5 - archive_write_disk interface available */ #define ARCHIVE_API_VERSION @ARCHIVE_API_MAJOR@ int archive_api_version(void); @@ -138,8 +146,17 @@ * Top 16 bits identifies the format family (e.g., "tar"); lower * 16 bits indicate the variant. This is updated by read_next_header. * Note that the lower 16 bits will often vary from entry to entry. + * In some cases, this variation occurs as libarchive learns more about + * the archive (for example, later entries might utilize extensions that + * weren't necessary earlier in the archive; in this case, libarchive + * will change the format code to indicate the extended format that + * was used). In other cases, it's because different tools have + * modified the archive and so different parts of the archive + * actually have slightly different formts. (Both tar and cpio store + * format codes in each entry, so it is quite possible for each + * entry to be in a different format.) */ -#define ARCHIVE_FORMAT_BASE_MASK 0xff0000U +#define ARCHIVE_FORMAT_BASE_MASK 0xff0000 #define ARCHIVE_FORMAT_CPIO 0x10000 #define ARCHIVE_FORMAT_CPIO_POSIX (ARCHIVE_FORMAT_CPIO | 1) #define ARCHIVE_FORMAT_CPIO_BIN_LE (ARCHIVE_FORMAT_CPIO | 2) @@ -274,15 +291,28 @@ */ /* The "flags" argument selects optional behavior, 'OR' the flags you want. */ -/* TODO: The 'Default' comments here are not quite correct; clean this up. */ -#define ARCHIVE_EXTRACT_OWNER (1) /* Default: owner/group not restored */ -#define ARCHIVE_EXTRACT_PERM (2) /* Default: restore perm only for reg file*/ -#define ARCHIVE_EXTRACT_TIME (4) /* Default: mod time not restored */ -#define ARCHIVE_EXTRACT_NO_OVERWRITE (8) /* Default: Replace files on disk */ -#define ARCHIVE_EXTRACT_UNLINK (16) /* Default: don't unlink existing files */ -#define ARCHIVE_EXTRACT_ACL (32) /* Default: don't restore ACLs */ -#define ARCHIVE_EXTRACT_FFLAGS (64) /* Default: don't restore fflags */ -#define ARCHIVE_EXTRACT_XATTR (128) /* Default: don't restore xattrs */ + +/* Default: Do not try to set owner/group. */ +#define ARCHIVE_EXTRACT_OWNER (1) +/* Default: Do obey umask, do not restore SUID/SGID/SVTX bits. */ +#define ARCHIVE_EXTRACT_PERM (2) +/* Default: Do not restore mtime/atime. */ +#define ARCHIVE_EXTRACT_TIME (4) +/* Default: Replace existing files. */ +#define ARCHIVE_EXTRACT_NO_OVERWRITE (8) +/* Default: Try create first, unlink only if create fails with EEXIST. */ +#define ARCHIVE_EXTRACT_UNLINK (16) +/* Default: Do not restore ACLs. */ +#define ARCHIVE_EXTRACT_ACL (32) +/* Default: Do not restore fflags. */ +#define ARCHIVE_EXTRACT_FFLAGS (64) +/* Default: Do not restore xattrs. */ +#define ARCHIVE_EXTRACT_XATTR (128) +/* Default: Do not try to guard against extracts redirected by symlinks. */ +/* Note: With ARCHIVE_EXTRACT_UNLINK, will remove any intermediate symlink. */ +#define ARCHIVE_EXTRACT_SECURE_SYMLINKS (256) +/* Default: Do not reject entries with '..' as path elements. */ +#define ARCHIVE_EXTRACT_SECURE_NODOTDOT (512) int archive_read_extract(struct archive *, struct archive_entry *, int flags); @@ -298,7 +328,13 @@ int archive_read_close(struct archive *); /* Release all resources and destroy the object. */ /* Note that archive_read_finish will call archive_read_close for you. */ +#if ARCHIVE_API_VERSION > 1 +int archive_read_finish(struct archive *); +#else +/* Temporarily allow library to compile with either 1.x or 2.0 API. */ +/* Erroneously declared to return void in libarchive 1.x */ void archive_read_finish(struct archive *); +#endif /*- * To create an archive: @@ -362,13 +398,78 @@ */ int archive_write_header(struct archive *, struct archive_entry *); -/* TODO: should be ssize_t, but that might require .so version bump? */ +#if ARCHIVE_API_VERSION > 1 +ssize_t archive_write_data(struct archive *, const void *, size_t); +#else +/* Temporarily allow library to compile with either 1.x or 2.0 API. */ +/* This was erroneously declared to return "int" in libarchive 1.x. */ int archive_write_data(struct archive *, const void *, size_t); +#endif +ssize_t archive_write_data_block(struct archive *, const void *, size_t, off_t); int archive_write_finish_entry(struct archive *); int archive_write_close(struct archive *); +#if ARCHIVE_API_VERSION > 1 +int archive_write_finish(struct archive *); +#else +/* Temporarily allow library to compile with either 1.x or 2.0 API. */ +/* Return value was incorrect in libarchive 1.x. */ void archive_write_finish(struct archive *); +#endif +/*- + * To create objects on disk: + * 1) Ask archive_write_disk_new for a new archive_write_disk object. + * 2) Set any global properties. In particular, you should set + * the compression and format to use. + * 3) For each entry: + * - construct an appropriate struct archive_entry structure + * - archive_write_header to create the file/dir/etc on disk + * - archive_write_data to write the entry data + * 4) archive_write_finish to cleanup the writer and release resources + * + * In particular, you can use this in conjunction with archive_read() + * to pull entries out of an archive and create them on disk. + */ +struct archive *archive_write_disk_new(void); +/* This file will not be overwritten. */ +int archive_write_disk_set_skip_file(struct archive *, + dev_t, ino_t); +/* Set flags to control how the next item gets created. */ +int archive_write_disk_set_options(struct archive *, + int flags); /* + * The lookup functions are given uname/uid (or gname/gid) pairs and + * return a uid (gid) suitable for this system. These are used for + * restoring ownership and for setting ACLs. The default functions + * are naive, they just return the uid/gid. These are small, so reasonable + * for applications that don't need to preserve ownership; they + * are probably also appropriate for applications that are doing + * same-system backup and restore. + */ +/* + * The "standard" lookup functions use common system calls to lookup + * the uname/gname, falling back to the uid/gid if the names can't be + * found. They cache lookups and are reasonably fast, but can be very + * large, so they are not used unless you ask for them. In + * particular, these match the specifications of POSIX "pax" and old + * POSIX "tar". + */ +int archive_write_disk_set_standard_lookup(struct archive *); +/* + * If neither the default (naive) nor the standard (big) functions suit + * your needs, you can write your own and register them. Be sure to + * include a cleanup function if you have allocated private data. + */ +int archive_write_disk_set_group_lookup(struct archive *, + void *private_data, + gid_t (*loookup)(void *, const char *gname, gid_t gid), + void (*cleanup)(void *)); +int archive_write_disk_set_user_lookup(struct archive *, + void *private_data, + uid_t (*)(void *, const char *uname, uid_t uid), + void (*cleanup)(void *)); + +/* * Accessor functions to read/set various information in * the struct archive object: */ @@ -383,6 +484,7 @@ const char *archive_error_string(struct archive *); const char *archive_format_name(struct archive *); int archive_format(struct archive *); +void archive_clear_error(struct archive *); void archive_set_error(struct archive *, int _err, const char *fmt, ...); #ifdef __cplusplus ==== //depot/projects/mjexp/lib/libarchive/archive_entry.3#3 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libarchive/archive_entry.3,v 1.12 2007/01/09 08:05:54 kientzle Exp $ +.\" $FreeBSD: src/lib/libarchive/archive_entry.3,v 1.13 2007/03/03 07:37:36 kientzle Exp $ .\" .Dd December 15, 2003 .Dt archive_entry 3 @@ -46,6 +46,7 @@ .Nm archive_entry_copy_hardlink_w , .Nm archive_entry_copy_pathname_w , .Nm archive_entry_copy_stat , +.Nm archive_entry_copy_symlink , .Nm archive_entry_copy_symlink_w , .Nm archive_entry_copy_uname_w , .Nm archive_entry_dev , @@ -124,6 +125,8 @@ .Ft void .Fn archive_entry_copy_stat "struct archive_entry *" "const struct stat *" .Ft void +.Fn archive_entry_copy_symlink "struct archive_entry *" "const char *" +.Ft void .Fn archive_entry_copy_symlink_w "struct archive_entry *" "const wchar_t *" .Ft void .Fn archive_entry_copy_uname_w "struct archive_entry *" "const wchar_t *" ==== //depot/projects/mjexp/lib/libarchive/archive_private.h#6 (text+ko) ==== @@ -22,7 +22,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/lib/libarchive/archive_private.h,v 1.27 2007/01/09 08:05:54 kientzle Exp $ + * $FreeBSD: src/lib/libarchive/archive_private.h,v 1.28 2007/03/03 07:37:36 kientzle Exp $ */ #ifndef ARCHIVE_PRIVATE_H_INCLUDED @@ -33,6 +33,28 @@ #define ARCHIVE_WRITE_MAGIC (0xb0c5c0deU) #define ARCHIVE_READ_MAGIC (0xdeb0c5U) +#define ARCHIVE_WRITE_DISK_MAGIC (0xc001b0c5U) + +#define ARCHIVE_STATE_ANY 0xFFFFU +#define ARCHIVE_STATE_NEW 1U +#define ARCHIVE_STATE_HEADER 2U +#define ARCHIVE_STATE_DATA 4U +#define ARCHIVE_STATE_DATA_END 8U +#define ARCHIVE_STATE_EOF 0x10U +#define ARCHIVE_STATE_CLOSED 0x20U +#define ARCHIVE_STATE_FATAL 0x8000U + +struct archive_vtable { + int (*archive_write_close)(struct archive *); + int (*archive_write_finish)(struct archive *); + int (*archive_write_header)(struct archive *, + struct archive_entry *); + int (*archive_write_finish_entry)(struct archive *); + ssize_t (*archive_write_data)(struct archive *, + const void *, size_t); + ssize_t (*archive_write_data_block)(struct archive *, + const void *, size_t, off_t); +}; struct archive { /* @@ -44,202 +66,34 @@ unsigned magic; unsigned state; - struct archive_entry *entry; - uid_t user_uid; /* UID of current user. */ - - /* Dev/ino of the archive being read/written. */ - dev_t skip_file_dev; - ino_t skip_file_ino; - - /* Utility: Pointer to a block of nulls. */ - const unsigned char *nulls; - size_t null_length; - /* - * Used by archive_read_data() to track blocks and copy - * data to client buffers, filling gaps with zero bytes. + * Some public API functions depend on the "real" type of the + * archive object. */ - const char *read_data_block; - off_t read_data_offset; - off_t read_data_output_offset; - size_t read_data_remaining; + struct archive_vtable *vtable; - /* Callbacks to open/read/write/close archive stream. */ - archive_open_callback *client_opener; - archive_read_callback *client_reader; - archive_skip_callback *client_skipper; - archive_write_callback *client_writer; - archive_close_callback *client_closer; - void *client_data; + int archive_format; + const char *archive_format_name; - /* - * Blocking information. Note that bytes_in_last_block is - * misleadingly named; I should find a better name. These - * control the final output from all compressors, including - * compression_none. - */ - int bytes_per_block; - int bytes_in_last_block; - - /* - * These control whether data within a gzip/bzip2 compressed - * stream gets padded or not. If pad_uncompressed is set, - * the data will be padded to a full block before being - * compressed. The pad_uncompressed_byte determines the value - * that will be used for padding. Note that these have no - * effect on compression "none." - */ - int pad_uncompressed; - int pad_uncompressed_byte; /* TODO: Support this. */ + int compression_code; /* Currently active compression. */ + const char *compression_name; /* Position in UNCOMPRESSED data stream. */ off_t file_position; /* Position in COMPRESSED data stream. */ off_t raw_position; - /* File offset of beginning of most recently-read header. */ - off_t header_position; - - /* - * Detection functions for decompression: bid functions are - * given a block of data from the beginning of the stream and - * can bid on whether or not they support the data stream. - * General guideline: bid the number of bits that you actually - * test, e.g., 16 if you test a 2-byte magic value. The - * highest bidder will have their init function invoked, which - * can set up pointers to specific handlers. - * - * On write, the client just invokes an archive_write_set function - * which sets up the data here directly. - */ - int compression_code; /* Currently active compression. */ - const char *compression_name; - struct { - int (*bid)(const void *buff, size_t); - int (*init)(struct archive *, const void *buff, size_t); - } decompressors[4]; - /* Read/write data stream (with compression). */ - void *compression_data; /* Data for (de)compressor. */ - int (*compression_init)(struct archive *); /* Initialize. */ - int (*compression_finish)(struct archive *); - int (*compression_write)(struct archive *, const void *, size_t); - /* - * Read uses a peek/consume I/O model: the decompression code - * returns a pointer to the requested block and advances the - * file position only when requested by a consume call. This - * reduces copying and also simplifies look-ahead for format - * detection. - */ - ssize_t (*compression_read_ahead)(struct archive *, - const void **, size_t request); - ssize_t (*compression_read_consume)(struct archive *, size_t); - off_t (*compression_skip)(struct archive *, off_t); - - /* - * Format detection is mostly the same as compression - * detection, with two significant differences: The bidders - * use the read_ahead calls above to examine the stream rather - * than having the supervisor hand them a block of data to - * examine, and the auction is repeated for every header. - * Winning bidders should set the archive_format and - * archive_format_name appropriately. Bid routines should - * check archive_format and decline to bid if the format of - * the last header was incompatible. - * - * Again, write support is considerably simpler because there's - * no need for an auction. - */ - int archive_format; - const char *archive_format_name; - - struct archive_format_descriptor { - int (*bid)(struct archive *); - int (*read_header)(struct archive *, struct archive_entry *); - int (*read_data)(struct archive *, const void **, size_t *, off_t *); - int (*read_data_skip)(struct archive *); - int (*cleanup)(struct archive *); - void *format_data; /* Format-specific data for readers. */ - } formats[8]; - struct archive_format_descriptor *format; /* Active format. */ - - /* - * Storage for format-specific data. Note that there can be - * multiple format readers active at one time, so we need to - * allow for multiple format readers to have their data - * available. The pformat_data slot here is the solution: on - * read, it is guaranteed to always point to a void* variable - * that the format can use. - */ - void **pformat_data; /* Pointer to current format_data. */ - void *format_data; /* Used by writers. */ - /* - * Pointers to format-specific functions for writing. They're - * initialized by archive_write_set_format_XXX() calls. - */ - int (*format_init)(struct archive *); /* Only used on write. */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Mar 5 11:19:16 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9DD6616A403; Mon, 5 Mar 2007 11:19:16 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7578B16A400 for ; Mon, 5 Mar 2007 11:19:16 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 59FAC13C49D for ; Mon, 5 Mar 2007 11:19:16 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25BJGQr013355 for ; Mon, 5 Mar 2007 11:19:16 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25BJGuf013352 for perforce@freebsd.org; Mon, 5 Mar 2007 11:19:16 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 11:19:16 GMT Message-Id: <200703051119.l25BJGuf013352@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115327 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 11:19:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=115327 Change 115327 by piso@piso_longino on 2007/03/05 11:18:40 Toss the overcomplicated implementation of iwi filtered handler. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/iwi/if_iwi.c#12 edit .. //depot/projects/soc2006/intr_filter/dev/iwi/if_iwivar.h#6 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/iwi/if_iwi.c#12 (text+ko) ==== @@ -143,13 +143,9 @@ static void iwi_frame_intr(struct iwi_softc *, struct iwi_rx_data *, int, struct iwi_frame *); static void iwi_notification_intr(struct iwi_softc *, struct iwi_notif *); -static void iwi_rx_intr(void *); +static void iwi_rx_intr(struct iwi_softc *); static void iwi_tx_intr(struct iwi_softc *, struct iwi_tx_ring *); -static void iwi_tx_intr1(void *c, int p __unused); -static void iwi_tx_intr2(void *c, int p __unused); -static void iwi_tx_intr3(void *c, int p __unused); -static void iwi_tx_intr4(void *c, int p __unused); -static int iwi_filter(void *); +static void iwi_intr(void *); static int iwi_cmd(struct iwi_softc *, uint8_t, void *, uint8_t); static void iwi_write_ibssnode(struct iwi_softc *, const u_int8_t [], int); static int iwi_tx_start(struct ifnet *, struct mbuf *, @@ -269,7 +265,7 @@ mtx_init(&sc->sc_mtx, device_get_nameunit(dev), MTX_NETWORK_LOCK, MTX_DEF); - + sc->sc_unr = new_unrhdr(1, IWI_MAX_IBSSNODE-1, &sc->sc_mtx); #if __FreeBSD_version >= 700000 @@ -292,10 +288,6 @@ TASK_INIT(&sc->sc_setwmetask, 0, iwi_wme_setparams, sc); TASK_INIT(&sc->sc_downtask, 0, iwi_down, sc); TASK_INIT(&sc->sc_restarttask, 0, iwi_restart, sc); - TASK_INIT(&sc->sc_tx1_done, 0, iwi_tx_intr1, sc); - TASK_INIT(&sc->sc_tx2_done, 0, iwi_tx_intr2, sc); - TASK_INIT(&sc->sc_tx3_done, 0, iwi_tx_intr3, sc); - TASK_INIT(&sc->sc_tx4_done, 0, iwi_tx_intr4, sc); if (pci_get_powerstate(dev) != PCI_POWERSTATE_D0) { device_printf(dev, "chip is in D%d power mode " @@ -1561,15 +1553,12 @@ } static void -iwi_rx_intr(void *arg) +iwi_rx_intr(struct iwi_softc *sc) { - struct iwi_softc *sc = arg; struct iwi_rx_data *data; struct iwi_hdr *hdr; uint32_t hw; - IWI_LOCK_DECL; - IWI_LOCK(sc); hw = CSR_READ_4(sc, IWI_CSR_RX_RIDX); for (; sc->rxq.cur != hw;) { @@ -1604,8 +1593,6 @@ /* tell the firmware what we have processed */ hw = (hw == 0) ? IWI_RX_RING_COUNT - 1 : hw - 1; CSR_WRITE_4(sc, IWI_CSR_RX_WIDX, hw); - CSR_WRITE_4(sc, IWI_CSR_INTR_MASK, IWI_INTR_MASK); - IWI_UNLOCK(sc); } static void @@ -1615,9 +1602,7 @@ struct ifnet *ifp = ic->ic_ifp; struct iwi_tx_data *data; uint32_t hw; - IWI_LOCK_DECL; - IWI_LOCK(sc); hw = CSR_READ_4(sc, txq->csr_ridx); for (; txq->next != hw;) { @@ -1646,94 +1631,64 @@ iwi_led_event(sc, IWI_LED_TX); iwi_start(ifp); - IWI_UNLOCK(sc); } static void -iwi_tx_intr1(void *arg, int p __unused) { +iwi_intr(void *arg) +{ struct iwi_softc *sc = arg; - - iwi_tx_intr(sc, &sc->txq[0]); -} - -static void -iwi_tx_intr2(void *arg, int p __unused) { - struct iwi_softc *sc = arg; - - iwi_tx_intr(sc, &sc->txq[1]); -} - -static void -iwi_tx_intr3(void *arg, int p __unused) { - struct iwi_softc *sc = arg; - - iwi_tx_intr(sc, &sc->txq[2]); -} - -static void -iwi_tx_intr4(void *arg, int p __unused) { - struct iwi_softc *sc = arg; + uint32_t r; IWI_LOCK_DECL; - IWI_LOCK(sc); - iwi_tx_intr(sc, &sc->txq[3]); - IWI_UNLOCK(sc); -} + IWI_LOCK(sc); -static int -iwi_filter(void *arg) -{ - struct iwi_softc *sc = arg; - uint32_t r; - int ret = FILTER_HANDLED; - - if ((r = CSR_READ_4(sc, IWI_CSR_INTR)) == 0 || r == 0xffffffff) - return (FILTER_STRAY); + if ((r = CSR_READ_4(sc, IWI_CSR_INTR)) == 0 || r == 0xffffffff) { + IWI_UNLOCK(sc); + return; + } /* acknowledge interrupts */ CSR_WRITE_4(sc, IWI_CSR_INTR, r); + if (r & IWI_INTR_FATAL_ERROR) { + device_printf(sc->sc_dev, "firmware error\n"); + taskqueue_enqueue(sc->sc_tq, &sc->sc_restarttask); + } + if (r & IWI_INTR_FW_INITED) { if (!(r & (IWI_INTR_FATAL_ERROR | IWI_INTR_PARITY_ERROR))) wakeup(sc); } - + + if (r & IWI_INTR_RADIO_OFF) + taskqueue_enqueue(sc->sc_tq, &sc->sc_radiofftask); + if (r & IWI_INTR_CMD_DONE) { sc->flags &= ~IWI_FLAG_BUSY; wakeup(sc); } - if (r & IWI_INTR_PARITY_ERROR) { - /* XXX rate-limit */ - device_printf(sc->sc_dev, "parity error\n"); - } - - if (r & IWI_INTR_FATAL_ERROR) { - device_printf(sc->sc_dev, "firmware error\n"); - taskqueue_enqueue(sc->sc_tq, &sc->sc_restarttask); - } - - if (r & IWI_INTR_RADIO_OFF) - taskqueue_enqueue(sc->sc_tq, &sc->sc_radiofftask); - if (r & IWI_INTR_TX1_DONE) - taskqueue_enqueue(sc->sc_tq, &sc->sc_tx1_done); + iwi_tx_intr(sc, &sc->txq[0]); if (r & IWI_INTR_TX2_DONE) - taskqueue_enqueue(sc->sc_tq, &sc->sc_tx2_done); + iwi_tx_intr(sc, &sc->txq[1]); if (r & IWI_INTR_TX3_DONE) - taskqueue_enqueue(sc->sc_tq, &sc->sc_tx3_done); + iwi_tx_intr(sc, &sc->txq[2]); if (r & IWI_INTR_TX4_DONE) - taskqueue_enqueue(sc->sc_tq, &sc->sc_tx4_done); - - if (r & IWI_INTR_RX_DONE) { - /* disable interrupts */ - CSR_WRITE_4(sc, IWI_CSR_INTR_MASK, 0); - ret |= FILTER_SCHEDULE_THREAD; + iwi_tx_intr(sc, &sc->txq[3]); + + if (r & IWI_INTR_RX_DONE) + iwi_rx_intr(sc); + + if (r & IWI_INTR_PARITY_ERROR) { + /* XXX rate-limit */ + device_printf(sc->sc_dev, "parity error\n"); } - return (ret); + + IWI_UNLOCK(sc); } static int @@ -2166,7 +2121,6 @@ CSR_WRITE_4(sc, IWI_CSR_RST, tmp | IWI_RST_PRINCETON_RESET); sc->flags &= ~IWI_FLAG_FW_INITED; - } static int @@ -3323,7 +3277,6 @@ IWI_LOCK_CHECK(sc); /* XXX: pretty sure this triggers */ if (sc->sc_softled) { - IWI_ASSERT_OWNED(sc); callout_stop(&sc->sc_ledtimer); sc->sc_blinking = 0; } @@ -3385,14 +3338,11 @@ iwi_radio_off(void *arg, int pending) { struct iwi_softc *sc = arg; - IWI_LOCK_DECL; - IWI_LOCK(sc); device_printf(sc->sc_dev, "radio turned off\n"); iwi_stop(sc); sc->sc_rfkill_timer = 2; sc->sc_ifp->if_timer = 1; - IWI_UNLOCK(sc); } static int ==== //depot/projects/soc2006/intr_filter/dev/iwi/if_iwivar.h#6 (text+ko) ==== @@ -190,10 +190,6 @@ struct task sc_setwmetask; /* set wme params processing */ struct task sc_downtask; /* disassociate processing */ struct task sc_restarttask; /* restart adapter processing */ - struct task sc_tx1_done; - struct task sc_tx2_done; - struct task sc_tx3_done; - struct task sc_tx4_done; unsigned int sc_softled : 1, /* enable LED gpio status */ sc_ledstate: 1, /* LED on/off state */ @@ -247,7 +243,3 @@ if (!__waslocked) \ mtx_unlock(&(sc)->sc_mtx); \ } while (0) - -#define IWI_ASSERT_OWNED(sc) do { \ - mtx_assert(&(sc)->sc_mtx, MA_OWNED); \ -} while (0) From owner-p4-projects@FreeBSD.ORG Mon Mar 5 11:40:29 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EB6E316A404; Mon, 5 Mar 2007 11:40:28 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A18A316A402 for ; Mon, 5 Mar 2007 11:40:28 +0000 (UTC) (envelope-from piso@newluxor.wired.org) Received: from mail.oltrelinux.com (krisma.oltrelinux.com [194.242.226.43]) by mx1.freebsd.org (Postfix) with ESMTP id 5F64F13C442 for ; Mon, 5 Mar 2007 11:40:28 +0000 (UTC) (envelope-from piso@newluxor.wired.org) Received: from newluxor.wired.org (ip-115-132.sn1.eutelia.it [62.94.115.132]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.oltrelinux.com (Postfix) with ESMTP id 49EDE11AE43; Mon, 5 Mar 2007 12:13:12 +0100 (CET) Received: (from piso@localhost) by newluxor.wired.org (8.13.8/8.13.8/Submit) id l25BCxL1001536; Mon, 5 Mar 2007 12:12:59 +0100 (CET) (envelope-from piso) Date: Mon, 5 Mar 2007 12:12:58 +0100 From: Paolo Pisati To: "M. Warner Losh" Message-ID: <20070305111258.GA1501@tin.it> References: <200703031614.l23GE0QR013965@repoman.freebsd.org> <20070303.135040.179932401.imp@bsdimp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20070303.135040.179932401.imp@bsdimp.com> User-Agent: Mutt/1.4.2.2i X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at krisma.oltrelinux.com Cc: perforce@freebsd.org, piso@freebsd.org Subject: Re: PERFORCE change 115279 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 11:40:29 -0000 On Sat, Mar 03, 2007 at 01:50:40PM -0700, M. Warner Losh wrote: > I think we should re-evaluate how CSC interrupts are handled for > CardBus and PC Card in general, which might simplify things in this > area of the code. It was originally put into place to handle sudden, > surprise removal of the cards in a (mostly) sane way. Now that the > underlying reasons for having these checks are gone, it would make > things better if this could be investigated... I'll have to add it to > my list... If you have any suggestion to simplify the code, i'm all ears. bye, P. From owner-p4-projects@FreeBSD.ORG Mon Mar 5 17:17:31 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 137D716A403; Mon, 5 Mar 2007 17:17:31 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id DBB1316A400 for ; Mon, 5 Mar 2007 17:17:30 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id CBAC813C4A5 for ; Mon, 5 Mar 2007 17:17:30 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25HHUOQ097726 for ; Mon, 5 Mar 2007 17:17:30 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25HHUYn097723 for perforce@freebsd.org; Mon, 5 Mar 2007 17:17:30 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 17:17:30 GMT Message-Id: <200703051717.l25HHUYn097723@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115344 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 17:17:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=115344 Change 115344 by piso@piso_longino on 2007/03/05 17:16:31 Restore ability to use filter+ithread handler for fhc, psycho and sbus. Affected files ... .. //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc.c#6 edit .. //depot/projects/soc2006/intr_filter/sparc64/pci/psycho.c#12 edit .. //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#10 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc.c#6 (text+ko) ==== @@ -51,7 +51,7 @@ struct fhc_clr { driver_filter_t *fc_filter; - driver_filter_t *fc_func; + driver_intr_t *fc_func; void *fc_arg; void *fc_cookie; bus_space_tag_t fc_bt; @@ -64,7 +64,7 @@ }; static int fhc_filter_stub(void *); -static int fhc_intr_stub(void *); +static void fhc_intr_stub(void *); static void fhc_led_func(void *, int); static int fhc_print_res(struct fhc_devinfo *); @@ -219,7 +219,7 @@ long vec; uint32_t inr; - if (filt != NULL && func != NULL) + if (filter != NULL && func != NULL) return (EINVAL); sc = device_get_softc(bus); @@ -244,7 +244,7 @@ if (fc == NULL) return (0); fc->fc_filter = filter; - fc->fc_func = (filt != NULL) ? filt : (driver_filter_t *)func; + fc->fc_func = func; fc->fc_arg = arg; fc->fc_bt = bt; fc->fc_bh = bh; @@ -298,12 +298,12 @@ return (res); } +void fhc_intr_stub(void *arg) { struct fhc_clr *fc = arg; fc->fc_func(fc->fc_arg); - return (FILTER_HANDLED); } struct resource * ==== //depot/projects/soc2006/intr_filter/sparc64/pci/psycho.c#12 (text+ko) ==== @@ -85,7 +85,7 @@ static int psycho_find_intrmap(struct psycho_softc *, int, bus_addr_t *, bus_addr_t *, u_long *); static int psycho_filter_stub(void *); -static int psycho_intr_stub(void *); +static void psycho_intr_stub(void *); static bus_space_tag_t psycho_alloc_bus_tag(struct psycho_softc *, int); /* Interrupt handlers */ @@ -93,11 +93,7 @@ static int psycho_ce(void *); static int psycho_pci_bus(void *); static -#ifdef DEBUGGER_ON_POWERFAIL int -#else -void -#endif psycho_powerfail(void *); static int psycho_overtemp(void *); #ifdef PSYCHO_MAP_WAKEUP @@ -178,7 +174,7 @@ struct psycho_softc *pci_sc; bus_addr_t pci_clr; /* clear register */ driver_filter_t *pci_filter; - driver_filter_t *pci_handler; /* handler to call */ + driver_intr_t *pci_handler; /* handler to call */ void *pci_arg; /* argument for the handler */ void *pci_cookie; /* parent bus int. cookie */ device_t pci_ppb; /* farest PCI-PCI bridge */ @@ -709,8 +705,8 @@ &sc->sc_ihand[index]); else res = bus_setup_intr(sc->sc_dev, sc->sc_irq_res[index], - INTR_TYPE_MISC | iflags, NULL, handler, sc, - &sc->sc_ihand[index]); + INTR_TYPE_MISC | iflags, NULL, (driver_intr_t *)handler, + sc, &sc->sc_ihand[index]); if (res != 0) panic("%s: failed to get interrupt", __func__); PSYCHO_WRITE8(sc, map, INTMAP_ENABLE(mr, PCPU_GET(mid))); @@ -822,11 +818,7 @@ } static -#ifdef DEBUGGER_ON_POWERFAIL int -#else -void -#endif psycho_powerfail(void *arg) { @@ -835,12 +827,12 @@ kdb_enter("powerfail"); PSYCHO_WRITE8(sc, PSR_POWER_INT_CLR, 0); - return(FILTER_HANDLED); + return (FILTER_HANDLED); #else printf("Power Failure Detected: Shutting down NOW.\n"); shutdown_nice(0); + return (FILTER_HANDLED); #endif - return (FILTER_HANDLED); } static int @@ -1035,7 +1027,7 @@ } /* Write to the correct clr register, and call the actual handler. */ -static int +static void psycho_intr_stub(void *arg) { struct psycho_clr *pc = arg; @@ -1046,7 +1038,6 @@ (void)PSYCHO_READ8(pc->pci_sc, PSR_DMA_WRITE_SYNC); } pc->pci_handler(pc->pci_arg); - return (FILTER_HANDLED); } static int @@ -1067,7 +1058,7 @@ uint64_t mr; int error, ino; - if (filt != NULL && intr != NULL) + if (filter != NULL && intr != NULL) return (EINVAL); sc = device_get_softc(dev); @@ -1100,7 +1091,7 @@ pc->pci_sc = sc; pc->pci_arg = arg; pc->pci_filter = filter; - pc->pci_handler = (filt != NULL) ? filt : (driver_filter_t *)intr; + pc->pci_handler = intr; pc->pci_clr = intrclrptr; /* ==== //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#10 (text+ko) ==== @@ -182,7 +182,7 @@ struct sbus_softc *scl_sc; bus_addr_t scl_clr; /* clear register */ driver_filter_t *scl_filter; - driver_filter_t *scl_handler; /* handler to call */ + driver_intr_t *scl_handler; /* handler to call */ void *scl_arg; /* argument for the handler */ void *scl_cookie; /* parent bus int. cookie */ }; @@ -211,7 +211,7 @@ phandle_t); static void sbus_destroy_dinfo(struct sbus_devinfo *); static int sbus_filter_stub(void *); -static int sbus_intr_stub(void *); +static void sbus_intr_stub(void *); static bus_space_tag_t sbus_alloc_bustag(struct sbus_softc *); static int sbus_overtemp(void *); static int sbus_pwrfail(void *); @@ -654,14 +654,13 @@ } /* Write to the correct clr register, and call the actual handler. */ -static int +static void sbus_intr_stub(void *arg) { struct sbus_clr *scl; scl = (struct sbus_clr *)arg; scl->scl_handler(scl->scl_arg); - return (FILTER_HANDLED); } static int @@ -716,8 +715,8 @@ scl->scl_sc = sc; scl->scl_arg = arg; - scl->scl_filter = filter; - scl->scl_handler = (filt != NULL) ? filt : (driver_filter_t *)intr; + scl->scl_filter = filt; + scl->scl_handler = intr; scl->scl_clr = intrclrptr; /* Disable the interrupt while we fiddle with it */ SYSIO_WRITE8(sc, intrmapptr, intrmap & ~INTMAP_V); From owner-p4-projects@FreeBSD.ORG Mon Mar 5 17:33:53 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D20F816A405; Mon, 5 Mar 2007 17:33:52 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 75E5D16A400 for ; Mon, 5 Mar 2007 17:33:52 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 65FD813C461 for ; Mon, 5 Mar 2007 17:33:52 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25HXqWw001000 for ; Mon, 5 Mar 2007 17:33:52 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25HXq2H000995 for perforce@freebsd.org; Mon, 5 Mar 2007 17:33:52 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 17:33:52 GMT Message-Id: <200703051733.l25HXq2H000995@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115346 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 17:33:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=115346 Change 115346 by piso@piso_longino on 2007/03/05 17:32:53 Fix sun4v compilation. Affected files ... .. //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#7 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#7 (text+ko) ==== @@ -343,7 +343,7 @@ } #endif -static int +static void intr_execute_handlers(void *cookie) { struct intr_vector *iv; @@ -351,7 +351,6 @@ iv = cookie; ie = iv->iv_event; - return (FILTER_HANDLED); if (intr_event_handle(ie, NULL) != 0) intr_stray_vector(iv); /* @@ -371,7 +370,7 @@ struct intr_event *orphan; int errcode; - if (filt != NULL && handler != NULL) + if (filter != NULL && handler != NULL) return (EINVAL); /* * Work around a race where more than one CPU may be registering From owner-p4-projects@FreeBSD.ORG Mon Mar 5 17:47:15 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7E5EC16A405; Mon, 5 Mar 2007 17:47:15 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 395EE16A402 for ; Mon, 5 Mar 2007 17:47:15 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 1CFD613C441 for ; Mon, 5 Mar 2007 17:47:15 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25HlE3o002942 for ; Mon, 5 Mar 2007 17:47:15 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25HlEvI002939 for perforce@freebsd.org; Mon, 5 Mar 2007 17:47:14 GMT (envelope-from csjp@freebsd.org) Date: Mon, 5 Mar 2007 17:47:14 GMT Message-Id: <200703051747.l25HlEvI002939@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 115349 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 17:47:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=115349 Change 115349 by csjp@csjp_rnd01 on 2007/03/05 17:46:43 - Introduce -P to put the card into promiscuous mode. I've been setting it manually up until now - Get rid of -t, it was redundant and will now be the default action - Add a comment that the prefetch method really needs to be looked at by somebody with more CPU architecture fu Affected files ... .. //depot/projects/zcopybpf/utils/bpfnull/bpfnull.c#16 edit Differences ... ==== //depot/projects/zcopybpf/utils/bpfnull/bpfnull.c#16 (text+ko) ==== @@ -52,28 +52,43 @@ int bpf_open(void); void usage(void); +u_int64_t sum; static struct ifreq ifr; static pcap_dumper_t *dp; static pcap_t *p; static char *fflag = "-"; +static unsigned long cflag; static int Iflag; static char *iflag; static int bflag = 32768; static int wflag; static int vflag; static int zflag; -static int tflag; static int Tflag; static int pflag; +static int Pflag; + +/* XXX we need an option to put the interface into promisc mode */ static u_char *bufa, *bufb; - +static unsigned long packet_count; static int handle_int(int sig __unused) { + + printf("%lu cycles spent processing packets\n", sum); exit(0); } +u_int64_t +rdtsc(void) +{ + u_int32_t high, low; + + __asm __volatile("rdtsc" : "=a" (low), "=d" (high)); + return (low | ((u_int64_t) high << 32)); +} + static void bpf_init_dumpfile(void) { @@ -98,13 +113,19 @@ u_char *b,*bp, *ep, *p, by; #define bhp ((struct bpf_hdr *)bp) - if (!wflag && !tflag && !Tflag) - return; b = bp = bz->bz_bufa; p = ep = bp + bz->bz_buflen; while (bp < ep) { - if (pflag) + packet_count++; + if (cflag > 0 && packet_count > cflag) + exit(0); + if (pflag) { + /* + * XXXCSJP this prefetch method needs to be + * re-visted + */ __builtin_prefetch(bp + bhp->bh_datalen, 0, 3); + } clen = bhp->bh_caplen; hlen = bhp->bh_hdrlen; p = (u_char *)bp + hlen; @@ -117,10 +138,6 @@ bp += BPF_WORDALIGN(clen + hlen); continue; } - if (tflag) { - bp += BPF_WORDALIGN(clen + hlen); - continue; - } if (wflag) { pcap_dump((u_char *)dp, &phd, p); if (ferror((FILE *)dp)) { @@ -128,8 +145,8 @@ exit(1); } fflush((FILE *)dp); - bp += BPF_WORDALIGN(clen + hlen); } + bp += BPF_WORDALIGN(clen + hlen); } } @@ -143,6 +160,7 @@ struct bpf_zbuf_header *bzha, *bzhb; struct timeval tv; void *prev2, *prev; + u_int64_t b, a; prev2 = prev = NULL; pbuf = malloc(bflag + 1); @@ -153,14 +171,14 @@ FD_SET(fd, &s_set); for (;;) { r_set = s_set; - n = select(fd + 1, &r_set, NULL, NULL, NULL); + n = select(fd + 1, &r_set, NULL, NULL, &tv); if (n < 0) { fprintf(stderr,"owned by select\n"); err(1, "select failed"); } if (vflag) (void) fprintf(stderr, "select wakeup\n"); - if (n != 0 && !FD_ISSET(fd, &r_set)) + if (n != 0 && !FD_ISSET(fd, &r_set) && vflag) printf("No timeout and fd is not ready!\n"); if (zflag == 0) { n = read(fd, pbuf, bflag); @@ -168,7 +186,10 @@ err(1, "read failed"); bz.bz_bufa = pbuf; bz.bz_buflen = n; + b = rdtsc(); bpf_process_packets(&bz, "W"); + a = rdtsc(); + sum += a - b; } else { processed_data = 0; bzha = (struct bpf_zbuf_header *)bufa; @@ -178,6 +199,7 @@ if (ioctl(fd, BIOCROTZBUF, &bz) < 0) err(1, "ioctl"); if (bz.bz_bufa == NULL) { + if (vflag) printf("timeout no data\n"); continue; } @@ -186,14 +208,20 @@ bz.bz_bufa = bufa; bz.bz_bufa += sizeof(struct bpf_zbuf_header); bz.bz_buflen = bzha->bzh_kernel_len; + b = rdtsc(); bpf_process_packets(&bz, "A"); + a = rdtsc(); + sum += a - b; bzha->bzh_user_gen++; processed_data++; } else if (bzhb->bzh_kernel_gen > bzhb->bzh_user_gen) { bz.bz_bufa = bufb; bz.bz_bufa += sizeof(struct bpf_zbuf_header); bz.bz_buflen = bzhb->bzh_kernel_len; + b = rdtsc(); bpf_process_packets(&bz, "B"); + a = rdtsc(); + sum += a - b; bzhb->bzh_user_gen++; processed_data++; } @@ -283,11 +311,17 @@ char ch; signal(SIGINT, (void *)handle_int); - while ((ch = getopt(argc, argv, "b:f:hIi:ptTwvz")) != -1) { + while ((ch = getopt(argc, argv, "b:c:f:hIi:pPTwvz")) != -1) { switch (ch) { case 'b': bflag = atoi(optarg); break; + case 'c': + { + char *r; + cflag = strtoul(optarg, &r, 10); + } + break; case 'f': fflag = optarg; wflag = 1; @@ -301,8 +335,8 @@ case 'p': pflag = 1; break; - case 't': - tflag = 1; + case 'P': + Pflag = 1; break; case 'T': Tflag = 1; @@ -357,6 +391,14 @@ if (ioctl(in, BIOCIMMEDIATE, &opt) < 0) err(1, "BIOCIMMEDIATE"); } + if (Pflag) { + if (vflag) + (void) fprintf(stderr, + "DEBUG: putting card into promiscuous " + "mode\n"); + if (ioctl(in, BIOCPROMISC, NULL) < 0) + err(1, "BIOCPROMISC"); + } if (vflag) (void) fprintf(stderr, "DEBUG: attaching to %s\n", iflag); From owner-p4-projects@FreeBSD.ORG Mon Mar 5 18:48:32 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 37B1916A46D; Mon, 5 Mar 2007 18:48:32 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1447E16A46B for ; Mon, 5 Mar 2007 18:48:32 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 02F5713C49D for ; Mon, 5 Mar 2007 18:48:32 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25ImVEG015572 for ; Mon, 5 Mar 2007 18:48:31 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25ImVlZ015568 for perforce@freebsd.org; Mon, 5 Mar 2007 18:48:31 GMT (envelope-from mjacob@freebsd.org) Date: Mon, 5 Mar 2007 18:48:31 GMT Message-Id: <200703051848.l25ImVlZ015568@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Cc: Subject: PERFORCE change 115353 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 18:48:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=115353 Change 115353 by mjacob@mjexp on 2007/03/05 18:48:19 IFC Affected files ... .. //depot/projects/mjexp/sys/amd64/amd64/io_apic.c#4 integrate .. //depot/projects/mjexp/sys/conf/files#15 integrate .. //depot/projects/mjexp/sys/dev/pci/pci.c#12 integrate .. //depot/projects/mjexp/sys/dev/pci/pcireg.h#7 integrate .. //depot/projects/mjexp/sys/dev/sound/pci/envy24.c#5 integrate .. //depot/projects/mjexp/sys/geom/eli/g_eli_ctl.c#2 integrate .. //depot/projects/mjexp/sys/i386/i386/io_apic.c#4 integrate .. //depot/projects/mjexp/sys/i386/isa/clock.c#7 integrate .. //depot/projects/mjexp/sys/kern/kern_acl.c#5 delete .. //depot/projects/mjexp/sys/kern/kern_context.c#3 integrate .. //depot/projects/mjexp/sys/kern/kern_descrip.c#7 integrate .. //depot/projects/mjexp/sys/kern/kern_environment.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_exec.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_exit.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_ktrace.c#8 integrate .. //depot/projects/mjexp/sys/kern/kern_ntptime.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_prot.c#6 integrate .. //depot/projects/mjexp/sys/kern/kern_resource.c#9 integrate .. //depot/projects/mjexp/sys/kern/kern_sig.c#10 integrate .. //depot/projects/mjexp/sys/kern/kern_synch.c#9 integrate .. //depot/projects/mjexp/sys/kern/kern_sysctl.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_time.c#6 integrate .. //depot/projects/mjexp/sys/kern/kern_umtx.c#8 integrate .. //depot/projects/mjexp/sys/kern/kern_uuid.c#2 integrate .. //depot/projects/mjexp/sys/kern/kern_xxx.c#4 integrate .. //depot/projects/mjexp/sys/kern/p1003_1b.c#3 integrate .. //depot/projects/mjexp/sys/kern/sys_generic.c#5 integrate .. //depot/projects/mjexp/sys/kern/sys_pipe.c#4 integrate .. //depot/projects/mjexp/sys/kern/sysv_msg.c#7 integrate .. //depot/projects/mjexp/sys/kern/sysv_sem.c#4 integrate .. //depot/projects/mjexp/sys/kern/sysv_shm.c#5 integrate .. //depot/projects/mjexp/sys/kern/uipc_mqueue.c#3 integrate .. //depot/projects/mjexp/sys/kern/uipc_sem.c#4 integrate .. //depot/projects/mjexp/sys/kern/uipc_syscalls.c#6 integrate .. //depot/projects/mjexp/sys/kern/vfs_acl.c#1 branch .. //depot/projects/mjexp/sys/kern/vfs_aio.c#4 integrate .. //depot/projects/mjexp/sys/kern/vfs_cache.c#2 integrate .. //depot/projects/mjexp/sys/kern/vfs_mount.c#7 integrate .. //depot/projects/mjexp/sys/kern/vfs_syscalls.c#8 integrate Differences ... ==== //depot/projects/mjexp/sys/amd64/amd64/io_apic.c#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.26 2006/11/17 16:41:03 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.27 2007/03/05 16:22:49 jhb Exp $"); #include "opt_isa.h" @@ -36,11 +36,15 @@ #include #include #include +#include #include -#include +#include #include #include +#include +#include + #include #include @@ -727,3 +731,46 @@ if (pin->io_irq < NUM_IO_INTS) intr_register_source(&pin->io_intsrc); } + +/* A simple new-bus driver to consume PCI I/O APIC devices. */ +static int +ioapic_pci_probe(device_t dev) +{ + + if (pci_get_class(dev) == PCIC_BASEPERIPH && + pci_get_subclass(dev) == PCIS_BASEPERIPH_PIC) { + switch (pci_get_progif(dev)) { + case PCIP_BASEPERIPH_PIC_IO_APIC: + device_set_desc(dev, "IO APIC"); + break; + case PCIP_BASEPERIPH_PIC_IOX_APIC: + device_set_desc(dev, "IO(x) APIC"); + break; + default: + return (ENXIO); + } + device_quiet(dev); + return (-10000); + } + return (ENXIO); +} + +static int +ioapic_pci_attach(device_t dev) +{ + + return (0); +} + +static device_method_t ioapic_pci_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, ioapic_pci_probe), + DEVMETHOD(device_attach, ioapic_pci_attach), + + { 0, 0 } +}; + +DEFINE_CLASS_0(ioapic, ioapic_pci_driver, ioapic_pci_methods, 0); + +static devclass_t ioapic_devclass; +DRIVER_MODULE(ioapic, pci, ioapic_pci_driver, ioapic_devclass, 0, 0); ==== //depot/projects/mjexp/sys/conf/files#15 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1180 2007/02/27 04:01:57 mjacob Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1181 2007/03/05 13:24:01 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1325,7 +1325,6 @@ kern/init_sysent.c standard kern/ksched.c optional _kposix_priority_scheduling kern/kern_acct.c standard -kern/kern_acl.c standard kern/kern_alq.c optional alq kern/kern_clock.c standard kern/kern_condvar.c standard @@ -1455,6 +1454,7 @@ kern/uipc_socket2.c standard kern/uipc_syscalls.c standard kern/uipc_usrreq.c standard +kern/vfs_acl.c standard kern/vfs_aio.c optional vfs_aio kern/vfs_bio.c standard kern/vfs_cache.c standard ==== //depot/projects/mjexp/sys/dev/pci/pci.c#12 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/pci/pci.c,v 1.343 2007/02/17 16:56:39 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/pci/pci.c,v 1.344 2007/03/05 16:21:59 jhb Exp $"); #include "opt_bus.h" @@ -327,7 +327,7 @@ 0, 0, }; - return maptype[mapreg & 0x0f]; + return (maptype[mapreg & 0x0f]); } /* return log2 of map size decoded for memory or port map */ @@ -624,11 +624,11 @@ KASSERT((reg & 3) == 0, ("VPD register must by 4 byte aligned")); - WREG(cfg->vpd.vpd_reg + 2, reg, 2); - while ((REG(cfg->vpd.vpd_reg + 2, 2) & 0x8000) != 0x8000) + WREG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, reg, 2); + while ((REG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, 2) & 0x8000) != 0x8000) DELAY(1); /* limit looping */ - return REG(cfg->vpd.vpd_reg + 4, 4); + return (REG(cfg->vpd.vpd_reg + PCIR_VPD_DATA, 4)); } #if 0 @@ -637,9 +637,9 @@ { KASSERT((reg & 3) == 0, ("VPD register must by 4 byte aligned")); - WREG(cfg->vpd.vpd_reg + 4, data, 4); - WREG(cfg->vpd.vpd_reg + 2, reg | 0x8000, 2); - while ((REG(cfg->vpd.vpd_reg + 2, 2) & 0x8000) == 0x8000) + WREG(cfg->vpd.vpd_reg + PCIR_VPD_DATA, data, 4); + WREG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, reg | 0x8000, 2); + while ((REG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, 2) & 0x8000) == 0x8000) DELAY(1); /* limit looping */ return; @@ -673,7 +673,7 @@ } vrs->cksum += byte; - return byte; + return (byte); } static void @@ -918,9 +918,9 @@ *identptr = cfg->vpd.vpd_ident; if (*identptr == NULL) - return ENXIO; + return (ENXIO); - return 0; + return (0); } int @@ -938,10 +938,10 @@ } if (i != cfg->vpd.vpd_rocnt) - return 0; + return (0); *vptr = NULL; - return ENXIO; + return (ENXIO); } /* @@ -3070,7 +3070,7 @@ if ((flags & RF_ACTIVE) && bus_generic_activate_resource(dev, child, type, *rid, rle->res) != 0) - return NULL; + return (NULL); return (rle->res); } } ==== //depot/projects/mjexp/sys/dev/pci/pcireg.h#7 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/pci/pcireg.h,v 1.58 2007/02/02 19:48:25 jhb Exp $ + * $FreeBSD: src/sys/dev/pci/pcireg.h,v 1.59 2007/03/05 16:18:31 jhb Exp $ * */ @@ -252,7 +252,13 @@ #define PCIC_SIMPLECOMM 0x07 #define PCIS_SIMPLECOMM_UART 0x00 +#define PCIP_SIMPLECOMM_UART_8250 0x00 +#define PCIP_SIMPLECOMM_UART_16450A 0x01 #define PCIP_SIMPLECOMM_UART_16550A 0x02 +#define PCIP_SIMPLECOMM_UART_16650A 0x03 +#define PCIP_SIMPLECOMM_UART_16750A 0x04 +#define PCIP_SIMPLECOMM_UART_16850A 0x05 +#define PCIP_SIMPLECOMM_UART_16950A 0x06 #define PCIS_SIMPLECOMM_PAR 0x01 #define PCIS_SIMPLECOMM_MULSER 0x02 #define PCIS_SIMPLECOMM_MODEM 0x03 @@ -260,6 +266,11 @@ #define PCIC_BASEPERIPH 0x08 #define PCIS_BASEPERIPH_PIC 0x00 +#define PCIP_BASEPERIPH_PIC_8259A 0x00 +#define PCIP_BASEPERIPH_PIC_ISA 0x01 +#define PCIP_BASEPERIPH_PIC_EISA 0x02 +#define PCIP_BASEPERIPH_PIC_IO_APIC 0x10 +#define PCIP_BASEPERIPH_PIC_IOX_APIC 0x20 #define PCIS_BASEPERIPH_DMA 0x01 #define PCIS_BASEPERIPH_TIMER 0x02 #define PCIS_BASEPERIPH_RTC 0x03 @@ -339,7 +350,6 @@ #define PCIB_BCR_DISCARD_TIMER_SERREN 0x0800 /* PCI power manangement */ - #define PCIR_POWER_CAP 0x2 #define PCIM_PCAP_SPEC 0x0007 #define PCIM_PCAP_PMEREQCLK 0x0008 @@ -386,6 +396,10 @@ #define PCIR_POWER_DATA 0x7 +/* VPD capability registers */ +#define PCIR_VPD_ADDR 0x2 +#define PCIR_VPD_DATA 0x4 + /* PCI Message Signalled Interrupts (MSI) */ #define PCIR_MSI_CTRL 0x2 #define PCIM_MSICTRL_VECTOR 0x0100 ==== //depot/projects/mjexp/sys/dev/sound/pci/envy24.c#5 (text+ko) ==== @@ -35,7 +35,7 @@ #include "mixer_if.h" -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/envy24.c,v 1.8 2007/02/23 19:41:16 ariff Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/envy24.c,v 1.9 2007/03/05 07:45:38 ariff Exp $"); MALLOC_DEFINE(M_ENVY24, "envy24", "envy24 audio"); @@ -2413,15 +2413,16 @@ mixer_init(dev, &envy24mixer_class, sc); /* set channel information */ - err = pcm_register(dev, sc, 5, 2 + sc->adcn); + err = pcm_register(dev, sc, sc->dacn, sc->adcn); if (err) goto bad; - sc->chnum = 0; - for (i = 0; i < 5; i++) { + sc->chnum = ENVY24_CHAN_PLAY_DAC1; + for (i = 0; i < sc->dacn; i++) { pcm_addchan(dev, PCMDIR_PLAY, &envy24chan_class, sc); sc->chnum++; } - for (i = 0; i < 2 + sc->adcn; i++) { + sc->chnum = ENVY24_CHAN_REC_ADC1; + for (i = 0; i < sc->adcn; i++) { pcm_addchan(dev, PCMDIR_REC, &envy24chan_class, sc); sc->chnum++; } ==== //depot/projects/mjexp/sys/geom/eli/g_eli_ctl.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/eli/g_eli_ctl.c,v 1.11 2006/09/30 08:16:49 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/eli/g_eli_ctl.c,v 1.12 2007/03/05 12:41:44 pjd Exp $"); #include #include @@ -355,6 +355,10 @@ gctl_error(req, "Invalid sector size."); return; } + if (*sectorsize > PAGE_SIZE) { + gctl_error(req, "warning: Using sectorsize bigger than " + "the page size!"); + } md.md_sectorsize = *sectorsize; } ==== //depot/projects/mjexp/sys/i386/i386/io_apic.c#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/io_apic.c,v 1.30 2006/11/17 16:41:03 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/io_apic.c,v 1.31 2007/03/05 16:22:49 jhb Exp $"); #include "opt_isa.h" @@ -36,11 +36,15 @@ #include #include #include +#include #include -#include +#include #include #include +#include +#include + #include #include @@ -727,3 +731,46 @@ if (pin->io_irq < NUM_IO_INTS) intr_register_source(&pin->io_intsrc); } + +/* A simple new-bus driver to consume PCI I/O APIC devices. */ +static int +ioapic_pci_probe(device_t dev) +{ + + if (pci_get_class(dev) == PCIC_BASEPERIPH && + pci_get_subclass(dev) == PCIS_BASEPERIPH_PIC) { + switch (pci_get_progif(dev)) { + case PCIP_BASEPERIPH_PIC_IO_APIC: + device_set_desc(dev, "IO APIC"); + break; + case PCIP_BASEPERIPH_PIC_IOX_APIC: + device_set_desc(dev, "IO(x) APIC"); + break; + default: + return (ENXIO); + } + device_quiet(dev); + return (-10000); + } + return (ENXIO); +} + +static int +ioapic_pci_attach(device_t dev) +{ + + return (0); +} + +static device_method_t ioapic_pci_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, ioapic_pci_probe), + DEVMETHOD(device_attach, ioapic_pci_attach), + + { 0, 0 } +}; + +DEFINE_CLASS_0(ioapic, ioapic_pci_driver, ioapic_pci_methods, 0); + +static devclass_t ioapic_devclass; +DRIVER_MODULE(ioapic, pci, ioapic_pci_driver, ioapic_devclass, 0, 0); ==== //depot/projects/mjexp/sys/i386/isa/clock.c#7 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/isa/clock.c,v 1.234 2007/03/04 04:55:19 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/isa/clock.c,v 1.235 2007/03/05 09:10:17 bde Exp $"); /* * Routines to handle clock hardware. @@ -579,6 +579,7 @@ /* Restore all of the RTC's "status" (actually, control) registers. */ /* XXX locking is needed for RTC access. */ + rtc_reg = -1; writertc(RTC_STATUSB, RTCSB_24HR); writertc(RTC_STATUSA, rtc_statusa); writertc(RTC_STATUSB, rtc_statusb); ==== //depot/projects/mjexp/sys/kern/kern_context.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_context.c,v 1.8 2007/03/04 22:36:45 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_context.c,v 1.9 2007/03/05 13:10:57 rwatson Exp $"); #include #include @@ -39,9 +39,9 @@ #include /* - * The first two fields of a ucontext_t are the signal mask and - * the machine context. The next field is uc_link; we want to - * avoid destroying the link when copying out contexts. + * The first two fields of a ucontext_t are the signal mask and the machine + * context. The next field is uc_link; we want to avoid destroying the link + * when copying out contexts. */ #define UC_COPY_SIZE offsetof(ucontext_t, uc_link) ==== //depot/projects/mjexp/sys/kern/kern_descrip.c#7 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_descrip.c,v 1.304 2007/03/04 22:36:45 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_descrip.c,v 1.305 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_compat.h" #include "opt_ddb.h" @@ -263,7 +263,7 @@ /* * Duplicate a file descriptor to a particular value. * - * note: keep in mind that a potential race condition exists when closing + * Note: keep in mind that a potential race condition exists when closing * descriptors from a shared descriptor table (via rfork). */ #ifndef _SYS_SYSPROTO_H_ @@ -2187,8 +2187,8 @@ /* * Apply an advisory lock on a file descriptor. * - * Just attempt to get a record lock of the requested type on - * the entire file (l_whence = SEEK_SET, l_start = 0, l_len = 0). + * Just attempt to get a record lock of the requested type on the entire file + * (l_whence = SEEK_SET, l_start = 0, l_len = 0). */ #ifndef _SYS_SYSPROTO_H_ struct flock_args { ==== //depot/projects/mjexp/sys/kern/kern_environment.c#4 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_environment.c,v 1.46 2006/11/06 13:42:00 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_environment.c,v 1.47 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_mac.h" @@ -69,8 +69,7 @@ struct mtx kenv_lock; /* - * No need to protect this with a mutex - * since SYSINITS are single threaded. + * No need to protect this with a mutex since SYSINITS are single threaded. */ int dynamic_kenv = 0; ==== //depot/projects/mjexp/sys/kern/kern_exec.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_exec.c,v 1.300 2007/03/04 22:36:45 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_exec.c,v 1.301 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_hwpmc_hooks.h" #include "opt_ktrace.h" @@ -221,11 +221,11 @@ } /* - * XXX: kern_execve has the astonishing property of not always - * returning to the caller. If sufficiently bad things happen during - * the call to do_execve(), it can end up calling exit1(); as a result, - * callers must avoid doing anything which they might need to undo - * (e.g., allocating memory). + * XXX: kern_execve has the astonishing property of not always returning to + * the caller. If sufficiently bad things happen during the call to + * do_execve(), it can end up calling exit1(); as a result, callers must + * avoid doing anything which they might need to undo (e.g., allocating + * memory). */ int kern_execve(td, args, mac_p) @@ -950,8 +950,8 @@ } /* - * Copy out argument and environment strings from the old process - * address space into the temporary string buffer. + * Copy out argument and environment strings from the old process address + * space into the temporary string buffer. */ int exec_copyin_args(struct image_args *args, char *fname, @@ -1053,9 +1053,9 @@ } /* - * Copy strings out to the new process address space, constructing - * new arg and env vector tables. Return a pointer to the base - * so that it can be used as the initial stack pointer. + * Copy strings out to the new process address space, constructing new arg + * and env vector tables. Return a pointer to the base so that it can be used + * as the initial stack pointer. */ register_t * exec_copyout_strings(imgp) ==== //depot/projects/mjexp/sys/kern/kern_exit.c#4 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_exit.c,v 1.295 2007/03/04 22:36:46 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_exit.c,v 1.296 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_compat.h" #include "opt_ktrace.h" @@ -89,8 +89,7 @@ void (*nlminfo_release_p)(struct proc *p); /* - * exit -- - * Death of process. + * exit -- death of process. */ void sys_exit(struct thread *td, struct sys_exit_args *uap) @@ -101,9 +100,9 @@ } /* - * Exit: deallocate address space and other resources, change proc state - * to zombie, and unlink proc from allproc and parent's lists. Save exit - * status and rusage for wait(). Check for child processes and orphan them. + * Exit: deallocate address space and other resources, change proc state to + * zombie, and unlink proc from allproc and parent's lists. Save exit status + * and rusage for wait(). Check for child processes and orphan them. */ void exit1(struct thread *td, int rv) ==== //depot/projects/mjexp/sys/kern/kern_ktrace.c#8 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_ktrace.c,v 1.116 2007/03/04 22:36:46 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_ktrace.c,v 1.117 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_ktrace.h" #include "opt_mac.h" @@ -556,9 +556,6 @@ /* Interface and common routines */ -/* - * ktrace system call - */ #ifndef _SYS_SYSPROTO_H_ struct ktrace_args { char *fname; @@ -729,9 +726,6 @@ #endif /* KTRACE */ } -/* - * utrace system call - */ /* ARGSUSED */ int utrace(td, uap) ==== //depot/projects/mjexp/sys/kern/kern_ntptime.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_ntptime.c,v 1.62 2007/03/04 22:36:46 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_ntptime.c,v 1.63 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_ntp.h" @@ -249,9 +249,8 @@ /* * ntp_gettime() - NTP user application interface * - * See the timex.h header file for synopsis and API description. Note - * that the TAI offset is returned in the ntvtimeval.tai structure - * member. + * See the timex.h header file for synopsis and API description. Note that + * the TAI offset is returned in the ntvtimeval.tai structure member. */ #ifndef _SYS_SYSPROTO_H_ struct ntp_gettime_args { @@ -294,12 +293,13 @@ SYSCTL_OPAQUE(_kern_ntp_pll, OID_AUTO, pps_freq, CTLFLAG_RD, &pps_freq, sizeof(pps_freq), "I", ""); SYSCTL_OPAQUE(_kern_ntp_pll, OID_AUTO, time_freq, CTLFLAG_RD, &time_freq, sizeof(time_freq), "I", ""); #endif + /* * ntp_adjtime() - NTP daemon application interface * - * See the timex.h header file for synopsis and API description. Note - * that the timex.constant structure member has a dual purpose to set - * the time constant and to set the TAI offset. + * See the timex.h header file for synopsis and API description. Note that + * the timex.constant structure member has a dual purpose to set the time + * constant and to set the TAI offset. */ #ifndef _SYS_SYSPROTO_H_ struct ntp_adjtime_args { ==== //depot/projects/mjexp/sys/kern/kern_prot.c#6 (text+ko) ==== @@ -42,7 +42,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_prot.c,v 1.208 2007/03/04 22:36:46 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_prot.c,v 1.209 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_compat.h" #include "opt_mac.h" @@ -983,10 +983,9 @@ } /* - * setresuid(ruid, euid, suid) is like setreuid except control over the - * saved uid is explicit. + * setresuid(ruid, euid, suid) is like setreuid except control over the saved + * uid is explicit. */ - #ifndef _SYS_SYSPROTO_H_ struct setresuid_args { uid_t ruid; @@ -1065,10 +1064,9 @@ } /* - * setresgid(rgid, egid, sgid) is like setregid except control over the - * saved gid is explicit. + * setresgid(rgid, egid, sgid) is like setregid except control over the saved + * gid is explicit. */ - #ifndef _SYS_SYSPROTO_H_ struct setresgid_args { gid_t rgid; ==== //depot/projects/mjexp/sys/kern/kern_resource.c#9 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_resource.c,v 1.168 2007/03/04 22:36:46 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_resource.c,v 1.169 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_compat.h" @@ -78,7 +78,6 @@ /* * Resource controls and accounting. */ - #ifndef _SYS_SYSPROTO_H_ struct getpriority_args { int which; @@ -280,7 +279,6 @@ struct rtprio *rtp; }; #endif - int rtprio_thread(struct thread *td, struct rtprio_thread_args *uap) { @@ -373,7 +371,6 @@ struct rtprio *rtp; }; #endif - int rtprio(td, uap) struct thread *td; /* curthread */ ==== //depot/projects/mjexp/sys/kern/kern_sig.c#10 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_sig.c,v 1.340 2007/03/04 22:36:46 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_sig.c,v 1.341 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_compat.h" #include "opt_ktrace.h" @@ -546,8 +546,6 @@ * Determine signal that should be delivered to process p, the current * process, 0 if none. If there is a pending stop signal with default * action, the process stops in issignal(). - * - * MP SAFE. */ int cursig(struct thread *td) @@ -1023,10 +1021,6 @@ return (error); } -/* - * sigprocmask() - MP SAFE - */ - #ifndef _SYS_SYSPROTO_H_ struct sigprocmask_args { int how; @@ -1058,9 +1052,6 @@ } #ifdef COMPAT_43 /* XXX - COMPAT_FBSD3 */ -/* - * osigprocmask() - MP SAFE - */ #ifndef _SYS_SYSPROTO_H_ struct osigprocmask_args { int how; @@ -1433,8 +1424,8 @@ #endif /* COMPAT_43 */ /* - * Suspend calling thread until signal, providing mask to be set - * in the meantime. + * Suspend calling thread until signal, providing mask to be set in the + * meantime. */ #ifndef _SYS_SYSPROTO_H_ struct sigsuspend_args { @@ -1754,7 +1745,6 @@ /* union sigval */ void *value; }; #endif - int sigqueue(struct thread *td, struct sigqueue_args *uap) { ==== //depot/projects/mjexp/sys/kern/kern_synch.c#9 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_synch.c,v 1.289 2007/02/27 18:46:07 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_synch.c,v 1.290 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_ktrace.h" @@ -565,7 +565,7 @@ } /* - * General purpose yield system call + * General purpose yield system call. */ int yield(struct thread *td, struct yield_args *uap) ==== //depot/projects/mjexp/sys/kern/kern_sysctl.c#5 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_sysctl.c,v 1.173 2007/03/04 22:36:46 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_sysctl.c,v 1.174 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_compat.h" #include "opt_mac.h" @@ -1294,7 +1294,6 @@ size_t newlen; }; #endif - int __sysctl(struct thread *td, struct sysctl_args *uap) { @@ -1446,6 +1445,7 @@ /* the actual string data is appended here */ } bsdi_si; + /* * this data is appended to the end of the bsdi_si structure during copyout. * The "char *" offsets are relative to the base of the bsdi_si struct. @@ -1462,7 +1462,6 @@ int arg; }; #endif - int ogetkerninfo(struct thread *td, struct getkerninfo_args *uap) { ==== //depot/projects/mjexp/sys/kern/kern_time.c#6 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_time.c,v 1.138 2007/03/04 22:36:46 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_time.c,v 1.139 2007/03/05 13:10:57 rwatson Exp $"); #include "opt_mac.h" @@ -186,7 +186,6 @@ struct timespec *tp; }; #endif - /* ARGSUSED */ int clock_gettime(struct thread *td, struct clock_gettime_args *uap) @@ -255,7 +254,6 @@ const struct timespec *tp; }; #endif - /* ARGSUSED */ int clock_settime(struct thread *td, struct clock_settime_args *uap) @@ -297,7 +295,6 @@ struct timespec *tp; }; #endif - int clock_getres(struct thread *td, struct clock_getres_args *uap) { @@ -395,7 +392,6 @@ struct timespec *rmtp; }; #endif - /* ARGSUSED */ int nanosleep(struct thread *td, struct nanosleep_args *uap) @@ -505,25 +501,25 @@ } /* - * Get value of an interval timer. The process virtual and - * profiling virtual time timers are kept in the p_stats area, since - * they can be swapped out. These are kept internally in the - * way they are specified externally: in time until they expire. + * Get value of an interval timer. The process virtual and profiling virtual + * time timers are kept in the p_stats area, since they can be swapped out. + * These are kept internally in the way they are specified externally: in + * time until they expire. * - * The real time interval timer is kept in the process table slot - * for the process, and its value (it_value) is kept as an - * absolute time rather than as a delta, so that it is easy to keep - * periodic real-time signals from drifting. + * The real time interval timer is kept in the process table slot for the + * process, and its value (it_value) is kept as an absolute time rather than + * as a delta, so that it is easy to keep periodic real-time signals from + * drifting. * * Virtual time timers are processed in the hardclock() routine of - * kern_clock.c. The real time timer is processed by a timeout - * routine, called from the softclock() routine. Since a callout - * may be delayed in real time due to interrupt processing in the system, - * it is possible for the real time timeout routine (realitexpire, given below), - * to be delayed in real time past when it is supposed to occur. It - * does not suffice, therefore, to reload the real timer .it_value from the - * real time timers .it_interval. Rather, we compute the next time in - * absolute time the timer should go off. + * kern_clock.c. The real time timer is processed by a timeout routine, + * called from the softclock() routine. Since a callout may be delayed in + * real time due to interrupt processing in the system, it is possible for + * the real time timeout routine (realitexpire, given below), to be delayed + * in real time past when it is supposed to occur. It does not suffice, + * therefore, to reload the real timer .it_value from the real time timers + * .it_interval. Rather, we compute the next time in absolute time the timer + * should go off. */ #ifndef _SYS_SYSPROTO_H_ struct getitimer_args { @@ -583,7 +579,6 @@ struct itimerval *itv, *oitv; }; #endif - int setitimer(struct thread *td, struct setitimer_args *uap) { @@ -932,7 +927,6 @@ int * timerid; }; #endif - int ktimer_create(struct thread *td, struct ktimer_create_args *uap) { @@ -1072,7 +1066,6 @@ int timerid; }; #endif - int ktimer_delete(struct thread *td, struct ktimer_delete_args *uap) { @@ -1137,7 +1130,6 @@ struct itimerspec * ovalue; }; #endif - int ktimer_settime(struct thread *td, struct ktimer_settime_args *uap) { @@ -1179,7 +1171,6 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Mar 5 18:50:35 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B2FE516A40A; Mon, 5 Mar 2007 18:50:35 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 741C016A407 for ; Mon, 5 Mar 2007 18:50:35 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 6315613C428 for ; Mon, 5 Mar 2007 18:50:35 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25IoZIg015738 for ; Mon, 5 Mar 2007 18:50:35 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25IoZ1C015735 for perforce@freebsd.org; Mon, 5 Mar 2007 18:50:35 GMT (envelope-from mjacob@freebsd.org) Date: Mon, 5 Mar 2007 18:50:35 GMT Message-Id: <200703051850.l25IoZ1C015735@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Cc: Subject: PERFORCE change 115354 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 18:50:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=115354 Change 115354 by mjacob@mjexp on 2007/03/05 18:50:02 Do some integrate -i goop, including a hilarious 63 conflict change to hcall.S which I've never touched. Affected files ... .. //depot/projects/mjexp/sbin/geom/class/multipath/Makefile#3 integrate .. //depot/projects/mjexp/sbin/geom/class/multipath/geom_multipath.c#6 integrate .. //depot/projects/mjexp/sys/geom/multipath/g_multipath.c#15 integrate .. //depot/projects/mjexp/sys/geom/multipath/g_multipath.h#6 integrate .. //depot/projects/mjexp/sys/modules/geom/geom_multipath/Makefile#2 integrate .. //depot/projects/mjexp/sys/sun4v/sun4v/hcall.S#2 integrate Differences ... ==== //depot/projects/mjexp/sbin/geom/class/multipath/Makefile#3 (text+ko) ==== ==== //depot/projects/mjexp/sbin/geom/class/multipath/geom_multipath.c#6 (text+ko) ==== ==== //depot/projects/mjexp/sys/geom/multipath/g_multipath.c#15 (text+ko) ==== ==== //depot/projects/mjexp/sys/geom/multipath/g_multipath.h#6 (text+ko) ==== ==== //depot/projects/mjexp/sys/modules/geom/geom_multipath/Makefile#2 (text+ko) ==== ==== //depot/projects/mjexp/sys/sun4v/sun4v/hcall.S#2 (text+ko) ==== @@ -1,1437 +1,1852 @@ -/* - * CDDL HEADER START +/*- + * Copyright (c) 2006 Kip Macy + * All rights reserved. * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. + * 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. * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END + * $FreeBSD: src/sys/sun4v/sun4v/hcall.S,v 1.18 2006/12/17 01:22:51 kmacy Exp $ */ -/* - * Copyright 2005 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ -#pragma ident "@(#)hcall.s 1.10 05/09/28 SMI" - -/* - * Hypervisor calls - */ -#define _ASM - +#include + #include -__FBSDID("$FreeBSD: src/sys/sun4v/sun4v/hcall.S,v 1.1 2006/10/05 06:14:28 kmacy Exp $") - #include #include -#include +#include #include #include "assym.s" +/* + * Section 9 API Versioning + * + */ -#if defined(lint) -#error lint -#endif -#if defined(__lint) -#error __lint -#endif -#if defined(lint) || defined(__lint) +/* + * request and check for a version of the hypervisor apis + * which may be compatible + * + * arg0 api_group (%o0) + * arg1 major_number (%o1) + * arg2 req_minor_number (%o2) + * + * ret0 status (%o0) + * ret1 act_minor_number (%o1) + * + */ +ENTRY(api_set_version) + mov API_SET_VERSION, %o5 + ta CORE_TRAP + retl + stx %o1, [%o3] +END(api_set_version) -/*ARGSUSED*/ -int64_t -hv_cnputchar(uint8_t ch) -{ return (0); } +/* + * retrieve the major and minor number of the most recently + * successfully negotiated API + * + * arg0 api_group (%o0) + * + * ret0 status (%o0) + * ret1 major_number (%o1) + * ret2 major_number (%o2) + * + */ +ENTRY(api_get_version) + mov %o2, %o4 + mov %o1, %o3 + mov API_GET_VERSION, %o5 + ta CORE_TRAP + retl + stx %o1, [%o4] + +END(api_get_version) + +/* + * Section 10 Domain Services + * + */ -/*ARGSUSED*/ -int64_t -hv_cngetchar(uint8_t *ch) -{ return (0); } +/* + * stop all CPUs in the virtual machine domain and place them + * in the stopped state + * + * arg0 exit_code (%o0) + * + */ +ENTRY(hv_mach_exit) + mov MACH_EXIT, %o5 + ta FAST_TRAP + retl + nop +END(hv_mach_exit) + +/* + * copy the most current machine description into buffer + * upon success or EINVAL the service returns the actual + * size of the machine description + * + * arg0 buffer (%o0) + * arg1 length (%o1) + * + * ret0 status (%o0) + * ret1 length (%o1) + * + */ +ENTRY(hv_mach_desc) + mov %o1, %o2 + ldx [%o1], %o1 + mov MACH_DESC, %o5 + ta FAST_TRAP + retl + stx %o1, [%o2] +END(hv_mach_desc) -/*ARGSUSED*/ -uint64_t -hv_tod_get(uint64_t *seconds) -{ return (0); } +/* + * execute a software initiated reset of a virtual machine domain + * + */ +ENTRY(hv_mach_sir) + mov MACH_SIR, %o5 + ta FAST_TRAP + retl + nop +END(hv_mach_sir) + +/* + * report the guests soft state to the hypervisor + * + * arg0 soft_state (%o0) + * arg1 soft_state_desc_ptr (%o1) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mach_set_soft_state) + mov MACH_SET_SOFT_STATE, %o5 + ta FAST_TRAP + retl + nop +END(hv_mach_set_soft_state) + +/* + * retrieve the current value of the guest's software state + * + * arg0 soft_desc_ptr (%o0) + * + * ret0 status (%o0) + * arg1 soft_state (%o1) + * + */ +ENTRY(hv_mach_get_soft_state) + mov %o1, %o2 + mov MACH_SET_SOFT_STATE, %o5 + ta FAST_TRAP + retl + stx %o1, [%o2] +END(hv_mach_get_soft_state) + +/* + * set a watchdog timer, 0 disables, upon success + * time_remaining contains the time previously remaining + * + * arg0 timeout (%o0) + * + * ret0 status (%o0) + * ret1 time_remaining (%o1) + * + */ +ENTRY(hv_mach_watchdog) + mov %o1, %o2 + mov MACH_WATCHDOG, %o5 + ta FAST_TRAP + brnz,pn %o0, 1f + nop + stx %o1, [%o2] +1: retl + nop +END(hv_mach_watchdog) + +/* + * Section 11 CPU Services + * + */ -/*ARGSUSED*/ -uint64_t -hv_tod_set(uint64_t seconds) -{ return (0);} +/* + * start CPU with id cpuid with pc in %pc and real trap base address + * of rtba + * + * arg0 cpuid (%o0) + * arg1 pc (%o1) + * arg2 rtba (%o2) + * arg3 target_arg0 (%o3) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_cpu_start) + mov CPU_START, %o5 + ta FAST_TRAP + retl + nop +END(hv_cpu_start) -/*ARGSUSED*/ -uint64_t -hv_mmu_map_perm_addr(void *vaddr, int ctx, uint64_t tte, int flags) -{ return (0); } +/* + * stop CPU with id cpuid + * + * arg0 cpuid (%o0) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_cpu_stop) + mov CPU_STOP, %o5 + ta FAST_TRAP + retl + nop +END(hv_cpu_stop) -/*ARGSUSED*/ -uint64_t -hv_mmu_unmap_perm_addr(void *vaddr, int ctx, int flags) -{ return (0); } +/* + * set the real trap base address of the local cpu to rtba + * upon success the previous_rtba contains the address of the + * old rtba + * + * arg0 rtba (%o0) + * + * ret0 status (%o0) + * ret1 previous_rtba(%o1) + * + */ +ENTRY(hv_cpu_set_rtba) + mov %o1, %o2 + mov CPU_SET_RTBA, %o5 + ta FAST_TRAP + retl + stx %o1, [%o2] + +END(hv_cpu_set_rtba) -/*ARGSUSED*/ -uint64_t -hv_set_ctx0(uint64_t ntsb_descriptor, uint64_t desc_ra) -{ return (0); } +/* + * return the current real trap base address + * + * ret0 status (%o0) + * ret1 rtba (%o1) + * + */ +ENTRY(hv_cpu_get_rtba) + mov CPU_GET_RTBA, %o5 + ta FAST_TRAP + retl + nop +END(hv_cpu_get_rtba) + +/* + * suspend execution on current cpu + * + * ret0 status (%o0) + * + */ +ENTRY(hv_cpu_yield) + mov CPU_YIELD, %o5 + ta FAST_TRAP + retl + nop +END(hv_cpu_yield) -/*ARGSUSED*/ -uint64_t -hv_set_ctxnon0(uint64_t ntsb_descriptor, uint64_t desc_ra) -{ return (0); } +/* + * configure queue of size nentries to be placed at base raddr + * + * arg0 queue (%o0) + * arg1 base raddr (%o1) + * arg2 nentries (%o2) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_cpu_qconf) + mov CPU_QCONF, %o5 + ta FAST_TRAP + retl + nop +END(hv_cpu_qconf) + +/* + * return configuration of queue queue + * + * arg0 queue (%o0) + * + * ret0 status (%o0) + * ret1 base raddr (%o1) + * ret2 nentries (%o2) + * + */ +ENTRY(hv_cpu_qinfo) +END(hv_cpu_qinfo) + +/* + * send cpu mondo interrupt to cpulist + * + * arg0 ncpus (%o0) + * arg1 cpu list ra (%o1) + * arg2 mondo data ra(%o2) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_cpu_mondo_send) + ldx [PCPU(MONDO_DATA_RA)], %o2 + mov CPU_MONDO_SEND, %o5 + ta FAST_TRAP + retl + membar #Sync +END(hv_cpu_mondo_send) -#ifdef SET_MMU_STATS -/*ARGSUSED*/ -uint64_t -hv_mmu_set_stat_area(uint64_t rstatarea, uint64_t size) -{ return (0); } -#endif /* SET_MMU_STATS */ +/* + * return the hypervisor id for the current cpu + * + * ret0 status (%o0) + * ret1 cpuid (%o1) + * + */ +ENTRY(hv_cpu_myid) + mov %o0, %o2 + mov CPU_MYID, %o5 + ta FAST_TRAP + stx %o1, [%o2] + retl + nop +END(hv_cpu_myid) -/*ARGSUSED*/ -uint64_t -hv_cpu_qconf(int queue, uint64_t paddr, int size) -{ return (0); } +/* + * retrieve the current state of cpu cpuid + * + * arg0 cpuid (%o0) + * + * ret0 status (%o0) + * ret1 state (%o1) + * + */ +ENTRY(hv_cpu_state) + mov %o1, %o2 + mov CPU_STATE, %o5 + ta FAST_TRAP + stx %o1, [%o2] + retl + nop +END(hv_cpu_state) + +/* + * Section 12 MMU Services + * + */ + +/* + * set the tsb(s) for the current cpu for context 0 + * + * arg0 ntsb (%o0) + * arg1 tsbdptr (%o1) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_tsb_ctx0) + mov MMU_TSB_CTX0, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_tsb_ctx0) -/*ARGSUSED*/ -uint64_t -hvio_config_get(devhandle_t dev_hdl, pci_device_t bdf, - pci_config_offset_t off, pci_config_size_t size, pci_cfg_data_t *data_p) -{ return (0); } +/* + * set the tsb(s) for the current cpu for non-zero contexts + * + * arg0 ntsb (%o0) + * arg1 tsbptr (%o1) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_tsb_ctxnon0) + mov MMU_TSB_CTXNON0, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_tsb_ctxnon0) -/*ARGSUSED*/ -uint64_t -hvio_config_put(devhandle_t dev_hdl, pci_device_t bdf, - pci_config_offset_t off, pci_config_size_t size, pci_cfg_data_t data) -{ return (0); } +/* + * demap any page mapping of virtual address vaddr in context ctx + * + * arg0 reserved (%o0) + * arg1 reserved (%o1) + * arg2 vaddr (%o2) + * arg3 ctx (%o3) + * arg4 flags (%o4) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_demap_page) + mov MMU_DEMAP_PAGE, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_demap_page) -/*ARGSUSED*/ -uint64_t -hvio_intr_devino_to_sysino(uint64_t dev_hdl, uint32_t devino, uint64_t *sysino) -{ return (0); } +/* + * demap all non-permanent virtual address mappings in context ctx + * + * arg0 reserved (%o0) + * arg1 reserved (%o1) + * arg2 ctx (%o2) + * arg3 flags (%o3) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_demap_ctx) + mov MMU_DEMAP_CTX, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_demap_ctx) -/*ARGSUSED*/ -uint64_t -hvio_intr_getvalid(uint64_t sysino, int *intr_valid_state) -{ return (0); } +/* + * demap all non-permanent virtual address mappings for the current + * virtual cpu + * + * arg0 reserved (%o0) + * arg1 reserved (%o1) + * arg2 flags (%o2) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_demap_all) + mov MMU_DEMAP_ALL, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_demap_all) -/*ARGSUSED*/ -uint64_t -hvio_intr_setvalid(uint64_t sysino, int intr_valid_state) -{ return (0); } +/* + * create a non-permanent mapping for the calling virtual cpu + * + * arg0 vaddr (%o0) + * arg1 context (%o1) + * arg2 TTE (%o2) + * arg3 flags (%o3) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_map_addr) + mov MMU_MAP_ADDR, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_map_addr) -/*ARGSUSED*/ -uint64_t -hvio_intr_getstate(uint64_t sysino, int *intr_state) -{ return (0); } +/* + * create a permanent mapping for the calling virtual cpu + * + * arg0 vaddr (%o0) + * arg1 reserved (%o1) + * arg2 TTE (%o2) + * arg3 flags (%o3) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_map_perm_addr) + mov MMU_MAP_PERM_ADDR, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_map_perm_addr) -/*ARGSUSED*/ -uint64_t -hvio_intr_setstate(uint64_t sysino, int intr_state) -{ return (0); } +/* + * demap virtual address vaddr in context ctx on current virtual cpu + * + * arg0 vaddr (%o0) + * arg1 ctx (%o1) + * arg2 flags (%o2) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_unmap_addr) + mov MMU_UNMAP_ADDR, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_unmap_addr) -/*ARGSUSED*/ -uint64_t -hvio_intr_gettarget(uint64_t sysino, uint32_t *cpuid) -{ return (0); } +/* + * demap any permanent mapping at virtual address vaddr on current virtual cpu + * + * arg0 vaddr (%o0) + * arg1 reserved (%o1) + * arg2 flags (%o2) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_unmap_perm_addr) + mov %o1, %o2 + clr %o1 + mov MMU_UNMAP_PERM_ADDR, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_unmap_perm_addr) -/*ARGSUSED*/ -uint64_t -hvio_intr_settarget(uint64_t sysino, uint32_t cpuid) -{ return (0); } +/* + * configure the MMU fault status area for the current virtual cpu + * + * arg0 raddr (%o0) + * + * ret0 status (%o0) + * ret1 prev_raddr (%o1) + * + */ +ENTRY(hv_mmu_fault_area_conf) + mov %o1, %o2 + mov MMU_FAULT_AREA_CONF, %o5 + ta FAST_TRAP + retl + stx %o1, [%o2] +END(hv_mmu_fault_area_conf) -/*ARGSUSED*/ -uint64_t -hvio_iommu_map(devhandle_t dev_hdl, tsbid_t tsbid, - pages_t pages, io_attributes_t io_attributes, - io_page_list_t *io_page_list_p, pages_t *pages_mapped) -{ return (0); } +/* + * enable or disable virtual address translation for the current virtual cpu + * + * arg0 enable_flag (%o0) + * arg1 return_target (%o1) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_mmu_enable) + mov MMU_ENABLE, %o5 + ta FAST_TRAP + retl + nop +END(hv_mmu_enable) -/*ARGSUSED*/ -uint64_t -hvio_iommu_demap(devhandle_t dev_hdl, tsbid_t tsbid, - pages_t pages, pages_t *pages_demapped) -{ return (0); } +/* + * return the TSB configuration as previously defined by mmu_tsb_ctx0 + * + * arg0 maxtsbs (%o0) + * arg1 buffer_ra (%o1) + * + * ret0 status (%o0) + * ret1 ntsbs (%o1) + * + */ +ENTRY(hv_mmu_tsb_ctx0_info) + mov %o1, %o2 + mov MMU_TSB_CTX0_INFO, %o5 + ta FAST_TRAP + retl + stx %o1, [%o2] +END(hv_mmu_tsb_ctx0_info) -/*ARGSUSED*/ -uint64_t -hvio_iommu_getmap(devhandle_t dev_hdl, tsbid_t tsbid, - io_attributes_t *attributes_p, r_addr_t *r_addr_p) -{ return (0); } +/* + * return the TSB configuration as previously defined by mmu_tsb_ctxnon0 + * + * arg0 maxtsbs (%o0) + * arg1 buffer_ra (%o1) + * + * ret0 status (%o0) + * ret1 ntsbs (%o1) + * + */ +ENTRY(hv_mmu_tsb_ctxnon0_info) + mov %o1, %o2 + mov MMU_TSB_CTXNON0_INFO, %o5 + ta FAST_TRAP + retl + stx %o1, [%o2] +END(hv_mmu_tsb_ctxnon0_info) -/*ARGSUSED*/ -uint64_t -hvio_iommu_getbypass(devhandle_t dev_hdl, r_addr_t ra, - io_attributes_t io_attributes, io_addr_t *io_addr_p) -{ return (0); } - -/*ARGSUSED*/ -uint64_t -hvio_peek(devhandle_t dev_hdl, r_addr_t ra, size_t size, uint32_t *status, - uint64_t *data_p) -{ return (0); } - -/*ARGSUSED*/ -uint64_t -hvio_poke(devhandle_t dev_hdl, r_addr_t ra, uint64_t sizes, uint64_t data, - r_addr_t ra2, uint32_t *rdbk_status) -{ return (0); } - -/*ARGSUSED*/ -uint64_t -hvio_dma_sync(devhandle_t dev_hdl, r_addr_t ra, size_t num_bytes, - int io_sync_direction, size_t *bytes_synched) -{ return (0); } - -/*ARGSUSED*/ -uint64_t -hvio_msiq_conf(devhandle_t dev_hdl, msiqid_t msiq_id, r_addr_t ra, - uint_t msiq_rec_cnt) -{ return (0); } - -/*ARGSUSED*/ -uint64_t -hvio_msiq_info(devhandle_t dev_hdl, msiqid_t msiq_id, r_addr_t *r_addr_p, - uint_t *msiq_rec_cnt_p) -{ return (0); } +/* + * return the MMU fault status area defined for the current virtual cpu + * + * ret0 status (%o0) + * ret1 mmfsara (%o1) + * + */ +ENTRY(hv_mmu_fault_area_info) + mov %o0, %o2 + mov MMU_FAULT_AREA_INFO, %o5 + ta FAST_TRAP + retl + stx %o1, [%o2] -/*ARGSUSED*/ -uint64_t -hvio_msiq_getvalid(devhandle_t dev_hdl, msiqid_t msiq_id, - pci_msiq_valid_state_t *msiq_valid_state) -{ return (0); } +END(hv_mmu_fault_area_info) -/*ARGSUSED*/ -uint64_t -hvio_msiq_setvalid(devhandle_t dev_hdl, msiqid_t msiq_id, - pci_msiq_valid_state_t msiq_valid_state) -{ return (0); } +/* + * Section 13 Cache and Memory Services + * + */ -/*ARGSUSED*/ -uint64_t -hvio_msiq_getstate(devhandle_t dev_hdl, msiqid_t msiq_id, - pci_msiq_state_t *msiq_state) -{ return (0); } +/* + * zero from raddr to raddr+length-1 + * + * arg0 raddr (%o0) + * arg1 length (%o1) + * + * ret0 status (%o0) + * ret1 length scrubbed (%o1) + * + */ +ENTRY(hv_mem_scrub) + mov MEM_SCRUB, %o5 + ta FAST_TRAP + stx %o1, [%o2] + retl + nop +END(hv_mem_scrub) -/*ARGSUSED*/ -uint64_t -hvio_msiq_setstate(devhandle_t dev_hdl, msiqid_t msiq_id, - pci_msiq_state_t msiq_state) -{ return (0); } +/* + * for the memory address range from raddr to raddr+length-1 + * for the next access within that range from main system memory + * + * arg0 raddr (%o0) + * arg1 length (%o1) + * + * ret0 status (%o0) + * ret1 length synced (%o1) + * + */ +ENTRY(hv_mem_sync) + mov MEM_SYNC, %o5 + ta FAST_TRAP + stx %o1, [%o2] + retl + nop +END(hv_mem_sync) -/*ARGSUSED*/ -uint64_t -hvio_msiq_gethead(devhandle_t dev_hdl, msiqid_t msiq_id, - msiqhead_t *msiq_head) -{ return (0); } +/* + * Section 14 Device Interrupt Services + * + */ -/*ARGSUSED*/ -uint64_t -hvio_msiq_sethead(devhandle_t dev_hdl, msiqid_t msiq_id, - msiqhead_t msiq_head) -{ return (0); } +/* + * converts a device specific interrupt number given by + * devhandle and devino to a system specific ino (sysino) + * + * arg0 devhandle (%o0) + * arg1 devino (%o1) + * + * ret0 status (%o0) + * ret1 sysino (%o1) + * + */ +ENTRY(hv_intr_devino_to_sysino) + mov INTR_DEVINO2SYSINO, %o5 + ta FAST_TRAP + retl + stx %o1, [%o2] +END(hv_intr_devino_to_sysino) -/*ARGSUSED*/ -uint64_t -hvio_msiq_gettail(devhandle_t dev_hdl, msiqid_t msiq_id, - msiqtail_t *msiq_tail) -{ return (0); } +/* + * return intr enabled state + * + * arg0 sysino (%o0) + * + * ret0 status (%o0) + * ret1 intr_enabled (%o1) + * + */ +ENTRY(hv_intr_getenabled) + mov %o1, %o2 + mov INTR_GETENABLED, %o5 + ta FAST_TRAP + retl + st %o1, [%o2] +END(hv_intr_getenabled) -/*ARGSUSED*/ -uint64_t -hvio_msi_getmsiq(devhandle_t dev_hdl, msinum_t msi_num, - msiqid_t *msiq_id) -{ return (0); } +/* + * set intr enabled state + * + * arg0 sysino (%o0) + * arg1 intr_enabled (%o1) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_intr_setenabled) + mov INTR_SETENABLED, %o5 + ta FAST_TRAP + retl + nop +END(hv_intr_setenabled) -/*ARGSUSED*/ -uint64_t -hvio_msi_setmsiq(devhandle_t dev_hdl, msinum_t msi_num, - msiqid_t msiq_id, msi_type_t msitype) -{ return (0); } +/* + * return current state of the interrupt given + * by the sysino + * + * arg0 sysino (%o0) + * + * ret0 status (%o0) + * ret1 intr_state (%o1) + * + */ +ENTRY(hv_intr_getstate) + mov %o1, %o2 + mov INTR_GETSTATE, %o5 + ta FAST_TRAP + retl + st %o1, [%o2] +END(hv_intr_getstate) -/*ARGSUSED*/ -uint64_t -hvio_msi_getvalid(devhandle_t dev_hdl, msinum_t msi_num, - pci_msi_valid_state_t *msi_valid_state) -{ return (0); } +/* + * set the current state of the interrupt given + * by the sysino + * + * arg0 sysino (%o0) + * arg1 intr_state (%o1) + * + * ret0 status (%o0) + * + */ +ENTRY(hv_intr_setstate) + mov INTR_SETSTATE, %o5 + ta FAST_TRAP + retl + nop +END(hv_intr_setstate) -/*ARGSUSED*/ -uint64_t -hvio_msi_setvalid(devhandle_t dev_hdl, msinum_t msi_num, - pci_msi_valid_state_t msi_valid_state) -{ return (0); } +/* + * return the cpuid that is the current target of the + * interrupt given by the sysino + * + * arg0 sysino (%o0) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Mar 5 21:30:00 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D5F9116A404; Mon, 5 Mar 2007 21:29:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8809016A407 for ; Mon, 5 Mar 2007 21:29:59 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 7380213C46B for ; Mon, 5 Mar 2007 21:29:59 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25LTxpg054119 for ; Mon, 5 Mar 2007 21:29:59 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25LTx6Z054116 for perforce@freebsd.org; Mon, 5 Mar 2007 21:29:59 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 21:29:59 GMT Message-Id: <200703052129.l25LTx6Z054116@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115363 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 21:30:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=115363 Change 115363 by piso@piso_newluxor on 2007/03/05 21:29:23 o Update a printf msg about filters. o Correctly wrap a line at 80. Affected files ... .. //depot/projects/soc2006/intr_filter/arm/at91/at91.c#9 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/at91/at91.c#9 (text) ==== @@ -549,9 +549,9 @@ struct at91_softc *sc = device_get_softc(dev); if (rman_get_start(ires) == AT91RM92_IRQ_SYSTEM && filt == NULL) - panic("All system interrupt ISRs must be type INTR_FAST"); - BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, filt, intr, arg, - cookiep); + panic("All system interrupt ISRs must be FILTER"); + BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, filt, + intr, arg, cookiep); bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_IECR, 1 << rman_get_start(ires)); return (0); From owner-p4-projects@FreeBSD.ORG Mon Mar 5 21:33:04 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 226AE16A404; Mon, 5 Mar 2007 21:33:04 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D72B916A402 for ; Mon, 5 Mar 2007 21:33:03 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id AF72F13C4AA for ; Mon, 5 Mar 2007 21:33:03 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25LX3bH055123 for ; Mon, 5 Mar 2007 21:33:03 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25LX3Yi055120 for perforce@freebsd.org; Mon, 5 Mar 2007 21:33:03 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 21:33:03 GMT Message-Id: <200703052133.l25LX3Yi055120@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115364 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 21:33:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=115364 Change 115364 by piso@piso_newluxor on 2007/03/05 21:32:46 Wrap the BUS_SETUP_INTR() line to 80. Affected files ... .. //depot/projects/soc2006/intr_filter/arm/sa11x0/sa11x0.c#6 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/sa11x0/sa11x0.c#6 (text+ko) ==== @@ -113,8 +113,8 @@ saved_cpsr = SetCPSR(I32_bit, I32_bit); SetCPSR(I32_bit, saved_cpsr & I32_bit); - BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, filt, intr, arg, - cookiep); + BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, filt, + intr, arg, cookiep); return (0); } From owner-p4-projects@FreeBSD.ORG Mon Mar 5 21:40:13 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2638916A516; Mon, 5 Mar 2007 21:40:13 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D31D116A511 for ; Mon, 5 Mar 2007 21:40:12 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id C157B13C474 for ; Mon, 5 Mar 2007 21:40:12 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25LeCYM056034 for ; Mon, 5 Mar 2007 21:40:12 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25LeCIN056030 for perforce@freebsd.org; Mon, 5 Mar 2007 21:40:12 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 21:40:12 GMT Message-Id: <200703052140.l25LeCIN056030@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115365 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 21:40:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=115365 Change 115365 by piso@piso_newluxor on 2007/03/05 21:39:59 Wrap at 80 ixppcib_setup_intr(). Affected files ... .. //depot/projects/soc2006/intr_filter/arm/xscale/ixp425/ixp425_pci.c#4 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/xscale/ixp425/ixp425_pci.c#4 (text+ko) ==== @@ -254,7 +254,8 @@ static int ixppcib_setup_intr(device_t dev, device_t child, struct resource *ires, - int flags, driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep) + int flags, driver_filter_t *filt, driver_intr_t *intr, void *arg, + void **cookiep) { return (BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, From owner-p4-projects@FreeBSD.ORG Mon Mar 5 21:46:22 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A2C9B16A403; Mon, 5 Mar 2007 21:46:22 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 53CF216A400 for ; Mon, 5 Mar 2007 21:46:22 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 44CA313C467 for ; Mon, 5 Mar 2007 21:46:22 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25LkMcv057460 for ; Mon, 5 Mar 2007 21:46:22 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25LkM0V057457 for perforce@freebsd.org; Mon, 5 Mar 2007 21:46:22 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 21:46:22 GMT Message-Id: <200703052146.l25LkM0V057457@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115367 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 21:46:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=115367 Change 115367 by piso@piso_newluxor on 2007/03/05 21:45:54 o Wrap at 80 ata_pci_setup_intr(). o Style(9) a bit the indentation. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#6 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#6 (text+ko) ==== @@ -339,12 +339,12 @@ int ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, - int flags, driver_filter_t *filter, driver_intr_t *function, - void *argument, void **cookiep) + int flags, driver_filter_t *filter, driver_intr_t *function, + void *argument, void **cookiep) { if (ata_legacy(dev)) { - return BUS_SETUP_INTR(device_get_parent(dev), child, irq, - flags, filter, function, argument, cookiep); + return BUS_SETUP_INTR(device_get_parent(dev), child, irq, + flags, filter, function, argument, cookiep); } else { struct ata_pci_controller *controller = device_get_softc(dev); From owner-p4-projects@FreeBSD.ORG Mon Mar 5 21:57:37 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 14A8C16A407; Mon, 5 Mar 2007 21:57:37 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CD67416A404 for ; Mon, 5 Mar 2007 21:57:36 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id BE30313C491 for ; Mon, 5 Mar 2007 21:57:36 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25Lvat7059249 for ; Mon, 5 Mar 2007 21:57:36 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25LvarJ059246 for perforce@freebsd.org; Mon, 5 Mar 2007 21:57:36 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 21:57:36 GMT Message-Id: <200703052157.l25LvarJ059246@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115368 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 21:57:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=115368 Change 115368 by piso@piso_newluxor on 2007/03/05 21:56:49 o Check for at least one handler among filt and ihand, else return EINVAL. o Simplify a bit the filter handler wrapper, cause with the aforementioned check in place, we are sure there will always be an ithread to run. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb.c#13 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb.c#13 (text+ko) ==== @@ -367,6 +367,8 @@ struct cbb_softc *sc = device_get_softc(dev); int err; + if (filt == NULL && intr == NULL) + return (EINVAL); /* * Well, this is no longer strictly true. You can have multiple * FAST ISRs, but can't mix fast and slow, so we have to assume @@ -636,12 +638,8 @@ * in the ISR dispatch */ if (ih->filt != NULL) - return ((*ih->filt)(ih->arg)); - - if (ih->intr != NULL) - return (FILTER_HANDLED | FILTER_SCHEDULE_THREAD); - else - return (FILTER_STRAY); + return ((*ih->filt)(ih->arg)); + return (FILTER_HANDLED | FILTER_SCHEDULE_THREAD); } static void From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:04:49 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B44F216A403; Mon, 5 Mar 2007 22:04:48 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5D08D16A401 for ; Mon, 5 Mar 2007 22:04:48 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 35AE713C4A6 for ; Mon, 5 Mar 2007 22:04:48 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25M4m1V061783 for ; Mon, 5 Mar 2007 22:04:48 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25M4lnF061780 for perforce@freebsd.org; Mon, 5 Mar 2007 22:04:47 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 22:04:47 GMT Message-Id: <200703052204.l25M4lnF061780@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115371 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:04:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=115371 Change 115371 by piso@piso_newluxor on 2007/03/05 22:04:19 Wrap at 80 ppbus_setup_intr(). Affected files ... .. //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#5 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#5 (text+ko) ==== @@ -421,7 +421,8 @@ { int error; struct ppb_data *ppb = DEVTOSOFTC(bus); - struct ppb_device *ppbdev = (struct ppb_device *)device_get_ivars(child); + struct ppb_device *ppbdev = + (struct ppb_device *)device_get_ivars(child); /* a device driver must own the bus to register an interrupt */ if (ppb->ppb_owner != child) From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:08:54 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1C7FA16A408; Mon, 5 Mar 2007 22:08:54 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D15A416A406 for ; Mon, 5 Mar 2007 22:08:53 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id C240613C491 for ; Mon, 5 Mar 2007 22:08:53 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25M8rVq062007 for ; Mon, 5 Mar 2007 22:08:53 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25M8rj7062004 for perforce@freebsd.org; Mon, 5 Mar 2007 22:08:53 GMT (envelope-from sam@freebsd.org) Date: Mon, 5 Mar 2007 22:08:53 GMT Message-Id: <200703052208.l25M8rj7062004@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 115372 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:08:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=115372 Change 115372 by sam@sam_ebb on 2007/03/05 22:08:12 IFC Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#68 integrate .. //depot/projects/wifi/sys/net80211/ieee80211_var.h#49 integrate Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#68 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/net80211/ieee80211_ioctl.c,v 1.51 2006/11/06 13:42:03 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/net80211/ieee80211_ioctl.c,v 1.52 2007/03/05 19:12:25 sam Exp $"); #include "opt_compat.h" @@ -485,7 +485,7 @@ struct scanreq req; int error; - if (ireq->i_len < sizeof(struct scanreq)) + if (ireq->i_len < sizeof(struct ieee80211req_scan_result)) return EFAULT; error = 0; ==== //depot/projects/wifi/sys/net80211/ieee80211_var.h#49 (text+ko) ==== @@ -29,7 +29,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/net80211/ieee80211_var.h,v 1.45 2007/01/06 02:56:41 kmacy Exp $ + * $FreeBSD: src/sys/net80211/ieee80211_var.h,v 1.46 2007/03/05 18:52:35 sam Exp $ */ #ifndef _NET80211_IEEE80211_VAR_H_ #define _NET80211_IEEE80211_VAR_H_ @@ -87,9 +87,9 @@ #define IEEE80211_RTS_DEFAULT IEEE80211_RTS_MAX #define IEEE80211_FRAG_DEFAULT IEEE80211_FRAG_MAX -#define IEEE80211_MS_TO_TU(x) (((x) * 1024) / 1000) -#define IEEE80211_TU_TO_MS(x) (((x) * 1000) / 1024) -#define IEEE80211_TU_TO_TICKS(x)(((x) * hz) / 1024) +#define IEEE80211_MS_TO_TU(x) (((x) * 1000) / 1024) +#define IEEE80211_TU_TO_MS(x) (((x) * 1024) / 1000) +#define IEEE80211_TU_TO_TICKS(x)(((x) * 1024 * hz) / (1000 * 1000)) struct ieee80211_aclator; struct sysctl_ctx_list; From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:10:57 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0E4EF16A405; Mon, 5 Mar 2007 22:10:57 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D975D16A403 for ; Mon, 5 Mar 2007 22:10:56 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id CA53E13C442 for ; Mon, 5 Mar 2007 22:10:56 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25MAuJ8062267 for ; Mon, 5 Mar 2007 22:10:56 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25MAuC7062242 for perforce@freebsd.org; Mon, 5 Mar 2007 22:10:56 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 22:10:56 GMT Message-Id: <200703052210.l25MAuC7062242@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115373 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:10:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=115373 Change 115373 by piso@piso_newluxor on 2007/03/05 22:10:14 o Wrap at 80 ppc_setup_intr(). o Style(9) ppc_setup_intr() a bit. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/ppc/ppc.c#7 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/ppc/ppc.c#7 (text+ko) ==== @@ -1962,7 +1962,7 @@ */ int ppc_setup_intr(device_t bus, device_t child, struct resource *r, int flags, - driver_filter_t *filt, void (*ihand)(void *), void *arg, void **cookiep) + driver_filter_t *filt, void (*ihand)(void *), void *arg, void **cookiep) { int error; struct ppc_data *ppc = DEVTOSOFTC(bus); @@ -1982,9 +1982,12 @@ ppc->ppc_registered = 0; } - /* pass registration to the upper layer, ignore the incoming resource */ + /* + * pass registration to the upper layer, ignore the incoming + * resource + */ return (BUS_SETUP_INTR(device_get_parent(bus), child, - r, flags, filt, ihand, arg, cookiep)); + r, flags, filt, ihand, arg, cookiep)); } /* From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:10:57 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7A39C16A508; Mon, 5 Mar 2007 22:10:57 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5247216A4E2 for ; Mon, 5 Mar 2007 22:10:57 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 3033313C47E for ; Mon, 5 Mar 2007 22:10:57 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25MAvoE062310 for ; Mon, 5 Mar 2007 22:10:57 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25MAuVA062284 for perforce@freebsd.org; Mon, 5 Mar 2007 22:10:56 GMT (envelope-from sam@freebsd.org) Date: Mon, 5 Mar 2007 22:10:56 GMT Message-Id: <200703052210.l25MAuVA062284@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 115374 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:10:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=115374 Change 115374 by sam@sam_ebb on 2007/03/05 22:10:17 IFC Affected files ... .. //depot/projects/wifi/sys/dev/ath/if_ath.c#136 integrate .. //depot/projects/wifi/sys/dev/ath/if_athvar.h#55 integrate Differences ... ==== //depot/projects/wifi/sys/dev/ath/if_ath.c#136 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.162 2007/02/24 23:23:29 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.164 2007/03/05 21:56:33 sam Exp $"); /* * Driver for the Atheros Wireless LAN controller. @@ -419,7 +419,8 @@ error = EIO; goto bad2; } - ath_txq_init(sc, &sc->sc_mcastq, -1); /* NB: s/w q, qnum not used */ + /* NB: s/w q, qnum used only by WITNESS */ + ath_txq_init(sc, &sc->sc_mcastq, HAL_NUM_TX_QUEUES+1); /* NB: insure BK queue is the lowest priority h/w queue */ if (!ath_tx_setup(sc, WME_AC_BK, HAL_WME_AC_BK)) { if_printf(ifp, "unable to setup xmit queue for %s traffic!\n", @@ -3730,6 +3731,11 @@ if (ngood) sc->sc_lastrx = tsf; + /* NB: may want to check mgtq too */ + if ((ifp->if_drv_flags & IFF_DRV_OACTIVE) == 0 && + !IFQ_IS_EMPTY(&ifp->if_snd)) + ath_start(ifp); + NET_UNLOCK_GIANT(); /* XXX */ #undef PA2DESC } ==== //depot/projects/wifi/sys/dev/ath/if_athvar.h#55 (text+ko) ==== @@ -33,7 +33,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.59 2007/02/24 23:12:58 sam Exp $ + * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.60 2007/03/05 21:56:33 sam Exp $ */ /* @@ -166,7 +166,7 @@ #define ATH_TXQ_LOCK_INIT(_sc, _tq) do { \ snprintf((_tq)->axq_name, sizeof((_tq)->axq_name), "%s_txq%u", \ device_get_nameunit((_sc)->sc_dev), (_tq)->axq_qnum); \ - mtx_init(&(_tq)->axq_lock, (_tq)->axq_name, "ath_txq", MTX_DEF); \ + mtx_init(&(_tq)->axq_lock, (_tq)->axq_name, NULL, MTX_DEF); \ } while (0) #define ATH_TXQ_LOCK_DESTROY(_tq) mtx_destroy(&(_tq)->axq_lock) #define ATH_TXQ_LOCK(_tq) mtx_lock(&(_tq)->axq_lock) @@ -329,7 +329,7 @@ #define ATH_LOCK_INIT(_sc) \ mtx_init(&(_sc)->sc_mtx, device_get_nameunit((_sc)->sc_dev), \ - MTX_NETWORK_LOCK, MTX_DEF | MTX_RECURSE) + NULL, MTX_DEF | MTX_RECURSE) #define ATH_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->sc_mtx) #define ATH_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) #define ATH_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) @@ -340,7 +340,7 @@ #define ATH_TXBUF_LOCK_INIT(_sc) do { \ snprintf((_sc)->sc_txname, sizeof((_sc)->sc_txname), "%s_buf", \ device_get_nameunit((_sc)->sc_dev)); \ - mtx_init(&(_sc)->sc_txbuflock, (_sc)->sc_txname, "ath_buf", MTX_DEF); \ + mtx_init(&(_sc)->sc_txbuflock, (_sc)->sc_txname, NULL, MTX_DEF); \ } while (0) #define ATH_TXBUF_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->sc_txbuflock) #define ATH_TXBUF_LOCK(_sc) mtx_lock(&(_sc)->sc_txbuflock) From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:31:23 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C2D9416A405; Mon, 5 Mar 2007 22:31:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7E3B716A402 for ; Mon, 5 Mar 2007 22:31:23 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 6E42E13C441 for ; Mon, 5 Mar 2007 22:31:23 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25MVNvl065806 for ; Mon, 5 Mar 2007 22:31:23 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25MVN2x065803 for perforce@freebsd.org; Mon, 5 Mar 2007 22:31:23 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 22:31:23 GMT Message-Id: <200703052231.l25MVN2x065803@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115376 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:31:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=115376 Change 115376 by piso@piso_newluxor on 2007/03/05 22:30:51 o Axe a bogus and redundant check. o Add a proper check for filter only handlers. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/puc/puc.c#12 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/puc/puc.c#12 (text+ko) ==== @@ -605,8 +605,11 @@ port = device_get_ivars(child); KASSERT(port != NULL, ("%s %d", __func__, __LINE__)); - if (filt == NULL || cookiep == NULL || res != port->p_ires) + if (cookiep == NULL || res != port->p_ires) return (EINVAL); + /* We demand that serdev devices use filter_only interrupts. */ + if (ihand != NULL) + return (ENXIO); if (rman_get_device(port->p_ires) != originator) return (ENXIO); @@ -629,10 +632,6 @@ return (BUS_SETUP_INTR(device_get_parent(dev), originator, sc->sc_ires, flags, filt, ihand, arg, cookiep)); - /* We demand that serdev devices use filter_only interrupts. */ - if (filt != NULL) - return (ENXIO); - sc->sc_serdevs |= 1UL << (port->p_nr - 1); port->p_hasintr = 1; From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:31:26 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E7EE116A40F; Mon, 5 Mar 2007 22:31:25 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C57A616A407; Mon, 5 Mar 2007 22:31:25 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.freebsd.org (Postfix) with ESMTP id 6CD5113C467; Mon, 5 Mar 2007 22:31:25 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.8/8.13.8) with ESMTP id l25MVLIF005346; Mon, 5 Mar 2007 17:31:21 -0500 (EST) (envelope-from jhb@freebsd.org) From: John Baldwin To: Paolo Pisati Date: Mon, 5 Mar 2007 17:26:26 -0500 User-Agent: KMail/1.9.1 References: <200703052146.l25LkM0V057457@repoman.freebsd.org> In-Reply-To: <200703052146.l25LkM0V057457@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200703051726.26875.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Mon, 05 Mar 2007 17:31:21 -0500 (EST) X-Virus-Scanned: ClamAV 0.88.3/2736/Mon Mar 5 13:55:43 2007 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.1.3 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 115367 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:31:26 -0000 On Monday 05 March 2007 16:46, Paolo Pisati wrote: > http://perforce.freebsd.org/chv.cgi?CH=115367 > > Change 115367 by piso@piso_newluxor on 2007/03/05 21:45:54 > > o Wrap at 80 ata_pci_setup_intr(). > o Style(9) a bit the indentation. You should really preserve the 4-space indent since that's what the rest of sys/dev/ata/* uses, and consistency is preserved over a mixed bag. > Affected files ... > > .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#6 edit > > Differences ... > > ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#6 (text+ko) ==== > > @@ -339,12 +339,12 @@ > > int > ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, > - int flags, driver_filter_t *filter, driver_intr_t *function, > - void *argument, void **cookiep) > + int flags, driver_filter_t *filter, driver_intr_t *function, > + void *argument, void **cookiep) > { > if (ata_legacy(dev)) { > - return BUS_SETUP_INTR(device_get_parent(dev), child, irq, > - flags, filter, function, argument, cookiep); > + return BUS_SETUP_INTR(device_get_parent(dev), child, irq, > + flags, filter, function, argument, cookiep); > } > else { > struct ata_pci_controller *controller = device_get_softc(dev); > -- John Baldwin From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:31:26 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 530FF16A506; Mon, 5 Mar 2007 22:31:26 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D5E3916A409; Mon, 5 Mar 2007 22:31:25 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.freebsd.org (Postfix) with ESMTP id 6CF0113C471; Mon, 5 Mar 2007 22:31:25 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.8/8.13.8) with ESMTP id l25MVLIG005346; Mon, 5 Mar 2007 17:31:23 -0500 (EST) (envelope-from jhb@freebsd.org) From: John Baldwin To: Paolo Pisati Date: Mon, 5 Mar 2007 17:26:54 -0500 User-Agent: KMail/1.9.1 References: <200703052204.l25M4lnF061780@repoman.freebsd.org> In-Reply-To: <200703052204.l25M4lnF061780@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200703051726.54857.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Mon, 05 Mar 2007 17:31:23 -0500 (EST) X-Virus-Scanned: ClamAV 0.88.3/2736/Mon Mar 5 13:55:43 2007 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.1.3 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 115371 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:31:26 -0000 On Monday 05 March 2007 17:04, Paolo Pisati wrote: > http://perforce.freebsd.org/chv.cgi?CH=115371 > > Change 115371 by piso@piso_newluxor on 2007/03/05 22:04:19 > > Wrap at 80 ppbus_setup_intr(). You can remove the cast instead. C doesn't require casts for void * pointers. > Affected files ... > > .. //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#5 edit > > Differences ... > > ==== //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#5 (text+ko) ==== > > @@ -421,7 +421,8 @@ > { > int error; > struct ppb_data *ppb = DEVTOSOFTC(bus); > - struct ppb_device *ppbdev = (struct ppb_device *)device_get_ivars(child); > + struct ppb_device *ppbdev = > + (struct ppb_device *)device_get_ivars(child); > > /* a device driver must own the bus to register an interrupt */ > if (ppb->ppb_owner != child) > -- John Baldwin From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:49:48 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3A0C616A401; Mon, 5 Mar 2007 22:49:47 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8C67A16A403 for ; Mon, 5 Mar 2007 22:49:47 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 659D813C4A7 for ; Mon, 5 Mar 2007 22:49:47 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25Mnlp5068224 for ; Mon, 5 Mar 2007 22:49:47 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25MnlUk068221 for perforce@freebsd.org; Mon, 5 Mar 2007 22:49:47 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 22:49:47 GMT Message-Id: <200703052249.l25MnlUk068221@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115378 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:49:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=115378 Change 115378 by piso@piso_newluxor on 2007/03/05 22:49:09 Trim a useless cast. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#6 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#6 (text+ko) ==== @@ -421,8 +421,7 @@ { int error; struct ppb_data *ppb = DEVTOSOFTC(bus); - struct ppb_device *ppbdev = - (struct ppb_device *)device_get_ivars(child); + struct ppb_device *ppbdev = device_get_ivars(child); /* a device driver must own the bus to register an interrupt */ if (ppb->ppb_owner != child) From owner-p4-projects@FreeBSD.ORG Mon Mar 5 22:58:24 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5D0F616A411; Mon, 5 Mar 2007 22:58:24 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 150FD16A402 for ; Mon, 5 Mar 2007 22:58:24 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 0445613C49D for ; Mon, 5 Mar 2007 22:58:24 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25MwNWE069683 for ; Mon, 5 Mar 2007 22:58:23 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25MvwtA069671 for perforce@freebsd.org; Mon, 5 Mar 2007 22:57:58 GMT (envelope-from sam@freebsd.org) Date: Mon, 5 Mar 2007 22:57:58 GMT Message-Id: <200703052257.l25MvwtA069671@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 115379 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 22:58:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=115379 Change 115379 by sam@sam_ebb on 2007/03/05 22:57:17 IFC @ 115378 Affected files ... .. //depot/projects/wifi/Makefile.inc1#30 integrate .. //depot/projects/wifi/ObsoleteFiles.inc#11 integrate .. //depot/projects/wifi/UPDATING#25 integrate .. //depot/projects/wifi/bin/df/df.1#4 integrate .. //depot/projects/wifi/bin/expr/expr.1#5 integrate .. //depot/projects/wifi/bin/expr/expr.y#3 integrate .. //depot/projects/wifi/bin/kill/kill.1#4 integrate .. //depot/projects/wifi/bin/rcp/rcp.1#5 integrate .. //depot/projects/wifi/bin/setfacl/setfacl.c#5 integrate .. //depot/projects/wifi/contrib/libpcap/pcap-bpf.c#5 integrate .. //depot/projects/wifi/etc/defaults/rc.conf#26 integrate .. //depot/projects/wifi/etc/devd.conf#15 integrate .. //depot/projects/wifi/etc/mtree/BSD.include.dist#14 integrate .. //depot/projects/wifi/etc/mtree/BSD.usr.dist#7 integrate .. //depot/projects/wifi/etc/network.subr#9 integrate .. //depot/projects/wifi/etc/periodic/security/800.loginfail#3 integrate .. //depot/projects/wifi/etc/periodic/weekly/310.locate#2 integrate .. //depot/projects/wifi/etc/rc.d/dhclient#9 integrate .. //depot/projects/wifi/etc/rc.d/hostname#2 integrate .. //depot/projects/wifi/etc/rc.d/netif#8 integrate .. //depot/projects/wifi/etc/rc.d/random#3 integrate .. //depot/projects/wifi/gnu/usr.bin/binutils/Makefile.inc0#2 integrate .. //depot/projects/wifi/gnu/usr.bin/binutils/libbfd/bfd.h#2 integrate .. //depot/projects/wifi/gnu/usr.bin/gdb/kgdb/kgdb.h#4 integrate .. //depot/projects/wifi/gnu/usr.bin/gdb/kgdb/kthr.c#6 integrate .. //depot/projects/wifi/gnu/usr.bin/gdb/kgdb/trgt_i386.c#4 integrate .. //depot/projects/wifi/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#9 integrate .. //depot/projects/wifi/include/Makefile#23 integrate .. //depot/projects/wifi/include/protocols/dumprestore.h#2 integrate .. //depot/projects/wifi/lib/libarchive/Makefile#20 integrate .. //depot/projects/wifi/lib/libarchive/README#3 integrate .. //depot/projects/wifi/lib/libarchive/archive.h.in#13 integrate .. //depot/projects/wifi/lib/libarchive/archive_entry.3#5 integrate .. //depot/projects/wifi/lib/libarchive/archive_entry.c#12 integrate .. //depot/projects/wifi/lib/libarchive/archive_entry.h#8 integrate .. //depot/projects/wifi/lib/libarchive/archive_private.h#10 integrate .. //depot/projects/wifi/lib/libarchive/archive_read.3#13 integrate .. //depot/projects/wifi/lib/libarchive/archive_read.c#11 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_data_into_fd.c#7 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_extract.c#12 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_private.h#1 branch .. //depot/projects/wifi/lib/libarchive/archive_read_support_compression_bzip2.c#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_compression_compress.c#5 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_compression_gzip.c#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_compression_none.c#5 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_cpio.c#9 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_empty.c#2 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_iso9660.c#10 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_tar.c#14 integrate .. //depot/projects/wifi/lib/libarchive/archive_read_support_format_zip.c#7 integrate .. //depot/projects/wifi/lib/libarchive/archive_util.3#5 integrate .. //depot/projects/wifi/lib/libarchive/archive_util.c#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_virtual.c#1 branch .. //depot/projects/wifi/lib/libarchive/archive_write.3#9 integrate .. //depot/projects/wifi/lib/libarchive/archive_write.c#8 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_disk.3#1 branch .. //depot/projects/wifi/lib/libarchive/archive_write_disk.c#1 branch .. //depot/projects/wifi/lib/libarchive/archive_write_disk_private.h#1 branch .. //depot/projects/wifi/lib/libarchive/archive_write_disk_set_standard_lookup.c#1 branch .. //depot/projects/wifi/lib/libarchive/archive_write_private.h#1 branch .. //depot/projects/wifi/lib/libarchive/archive_write_set_compression_bzip2.c#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_compression_gzip.c#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_compression_none.c#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_format_cpio.c#6 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_format_pax.c#16 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_format_shar.c#5 integrate .. //depot/projects/wifi/lib/libarchive/archive_write_set_format_ustar.c#7 integrate .. //depot/projects/wifi/lib/libarchive/test/Makefile#1 branch .. //depot/projects/wifi/lib/libarchive/test/README#1 branch .. //depot/projects/wifi/lib/libarchive/test/main.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test.h#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_archive_api_feature.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_bad_fd.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_data_large.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_extract.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_cpio_bin.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_cpio_bin_Z.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_cpio_bin_bz2.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_cpio_bin_gz.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_cpio_odc.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_cpio_svr4_gzip.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_cpio_svr4c_Z.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_empty.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_gtar_gz.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_iso_gz.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_isorr_bz2.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_pax_bz2.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_tar.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_tbz.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_tgz.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_tz.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_format_zip.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_large.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_position.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_read_truncated.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_write_disk.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_write_disk_perms.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_write_disk_secure.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_write_format_cpio_empty.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_write_format_shar_empty.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_write_format_tar.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_write_format_tar_empty.c#1 branch .. //depot/projects/wifi/lib/libarchive/test/test_write_open_memory.c#1 branch .. //depot/projects/wifi/lib/libc/Makefile#9 integrate .. //depot/projects/wifi/lib/libc/gen/getcap.3#5 integrate .. //depot/projects/wifi/lib/libc/gen/tls.c#6 integrate .. //depot/projects/wifi/lib/libc/net/Makefile.inc#7 integrate .. //depot/projects/wifi/lib/libc/net/Symbol.map#2 integrate .. //depot/projects/wifi/lib/libc/net/addr2ascii.3#3 delete .. //depot/projects/wifi/lib/libc/net/addr2ascii.c#2 delete .. //depot/projects/wifi/lib/libc/net/ascii2addr.c#2 delete .. //depot/projects/wifi/lib/libc/net/getnameinfo.3#6 integrate .. //depot/projects/wifi/lib/libc/net/getnameinfo.c#5 integrate .. //depot/projects/wifi/lib/libc/net/inet.3#5 integrate .. //depot/projects/wifi/lib/libc/net/linkaddr.3#3 integrate .. //depot/projects/wifi/lib/libc/net/sctp_bindx.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_connectx.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_freepaddrs.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_getaddrlen.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_getassocid.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_getpaddrs.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_opt_info.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_recvmsg.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_send.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_sendmsg.3#1 branch .. //depot/projects/wifi/lib/libc/net/sctp_sys_calls.c#2 integrate .. //depot/projects/wifi/lib/libc/posix1e/acl_from_text.c#2 integrate .. //depot/projects/wifi/lib/libc/posix1e/acl_support.c#2 integrate .. //depot/projects/wifi/lib/libc/posix1e/acl_support.h#2 integrate .. //depot/projects/wifi/lib/libc/regex/engine.c#6 integrate .. //depot/projects/wifi/lib/libc/rpc/clnt_dg.c#3 integrate .. //depot/projects/wifi/lib/libc/stdlib/malloc.c#7 integrate .. //depot/projects/wifi/lib/libc/sys/Makefile.inc#7 integrate .. //depot/projects/wifi/lib/libc/sys/kse.2#6 integrate .. //depot/projects/wifi/lib/libc/sys/ntp_adjtime.2#2 integrate .. //depot/projects/wifi/lib/libc/sys/sctp_generic_recvmsg.2#1 branch .. //depot/projects/wifi/lib/libc/sys/sctp_generic_sendmsg.2#1 branch .. //depot/projects/wifi/lib/libc/sys/sctp_peeloff.2#1 branch .. //depot/projects/wifi/lib/libc/yp/yplib.c#5 integrate .. //depot/projects/wifi/lib/libelf/gelf_getehdr.3#2 integrate .. //depot/projects/wifi/lib/libelf/libelf_allocate.c#2 integrate .. //depot/projects/wifi/lib/libkvm/kvm_getswapinfo.c#2 integrate .. //depot/projects/wifi/lib/libncp/ipxsap.h#3 integrate .. //depot/projects/wifi/lib/libwrap/Makefile#6 integrate .. //depot/projects/wifi/lib/libypclnt/Makefile#3 integrate .. //depot/projects/wifi/lib/libypclnt/ypclnt.3#1 branch .. //depot/projects/wifi/libexec/ftpd/ftpd.c#14 integrate .. //depot/projects/wifi/release/Makefile#18 integrate .. //depot/projects/wifi/release/doc/de_DE.ISO8859-1/installation/common/install.sgml#2 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/Makefile#4 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/Makefile.inc#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/amd64/Makefile#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/amd64/article.sgml#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/amd64/proc-amd64.sgml#3 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/article.sgml#1 branch .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/i386/Makefile#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/i386/article.sgml#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/i386/proc-i386.sgml#3 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/ia64/Makefile#3 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/ia64/article.sgml#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/ia64/proc-ia64.sgml#3 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/pc98/Makefile#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/pc98/article.sgml#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/pc98/proc-pc98.sgml#3 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/powerpc/Makefile#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/powerpc/article.sgml#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/powerpc/proc-powerpc.sgml#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/sparc64/Makefile#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/sparc64/article.sgml#2 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#3 delete .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/installation/common/install.sgml#6 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/readme/article.sgml#4 integrate .. //depot/projects/wifi/release/doc/en_US.ISO8859-1/relnotes/article.sgml#3 integrate .. //depot/projects/wifi/release/doc/fr_FR.ISO8859-1/installation/common/install.sgml#2 integrate .. //depot/projects/wifi/release/doc/ru_RU.KOI8-R/installation/common/install.sgml#5 integrate .. //depot/projects/wifi/release/doc/share/examples/Makefile.relnotesng#5 integrate .. //depot/projects/wifi/release/doc/share/misc/man2hwnotes.pl#5 integrate .. //depot/projects/wifi/release/doc/share/mk/doc.relnotes.mk#2 integrate .. //depot/projects/wifi/release/doc/share/sgml/Makefile#2 integrate .. //depot/projects/wifi/release/doc/zh_CN.GB2312/installation/common/install.sgml#6 integrate .. //depot/projects/wifi/sbin/dhclient/clparse.c#4 integrate .. //depot/projects/wifi/sbin/dhclient/dhclient-script#10 integrate .. //depot/projects/wifi/sbin/dhclient/dhclient.c#16 integrate .. //depot/projects/wifi/sbin/dhclient/dhclient.conf#3 integrate .. //depot/projects/wifi/sbin/dhclient/dhcp.h#3 integrate .. //depot/projects/wifi/sbin/dhclient/tables.c#5 integrate .. //depot/projects/wifi/sbin/dump/dump.h#3 integrate .. //depot/projects/wifi/sbin/dump/traverse.c#4 integrate .. //depot/projects/wifi/sbin/ffsinfo/ffsinfo.c#5 integrate .. //depot/projects/wifi/sbin/geom/class/Makefile#9 integrate .. //depot/projects/wifi/sbin/geom/class/eli/geom_eli.c#7 integrate .. //depot/projects/wifi/sbin/geom/class/journal/Makefile#2 integrate .. //depot/projects/wifi/sbin/geom/class/multipath/Makefile#1 branch .. //depot/projects/wifi/sbin/geom/class/multipath/geom_multipath.c#1 branch .. //depot/projects/wifi/sbin/geom/class/multipath/gmultipath.8#1 branch .. //depot/projects/wifi/sbin/ifconfig/af_atalk.c#4 integrate .. //depot/projects/wifi/sbin/ifconfig/af_inet.c#4 integrate .. //depot/projects/wifi/sbin/ifconfig/af_inet6.c#10 integrate .. //depot/projects/wifi/sbin/ifconfig/af_ipx.c#3 integrate .. //depot/projects/wifi/sbin/ifconfig/af_link.c#6 integrate .. //depot/projects/wifi/sbin/ifconfig/ifconfig.8#18 integrate .. //depot/projects/wifi/sbin/ifconfig/ifconfig.c#19 integrate .. //depot/projects/wifi/sbin/ifconfig/ifconfig.h#13 integrate .. //depot/projects/wifi/sbin/ifconfig/ifgroup.c#2 integrate .. //depot/projects/wifi/sbin/ifconfig/ifieee80211.c#62 integrate .. //depot/projects/wifi/sbin/ipfw/ipfw.8#20 integrate .. //depot/projects/wifi/sbin/kldload/kldload.8#6 integrate .. //depot/projects/wifi/sbin/kldstat/kldstat.8#6 integrate .. //depot/projects/wifi/sbin/kldunload/kldunload.8#6 integrate .. //depot/projects/wifi/sbin/mdconfig/mdconfig.8#4 integrate .. //depot/projects/wifi/sbin/mdconfig/mdconfig.c#13 integrate .. //depot/projects/wifi/sbin/mdmfs/mdmfs.8#5 integrate .. //depot/projects/wifi/sbin/mdmfs/mdmfs.c#8 integrate .. //depot/projects/wifi/sbin/mount/mount.c#11 integrate .. //depot/projects/wifi/sbin/mount_unionfs/Makefile#3 integrate .. //depot/projects/wifi/sbin/mount_unionfs/mount_unionfs.c#6 integrate .. //depot/projects/wifi/sbin/newfs/newfs.c#5 integrate .. //depot/projects/wifi/sbin/restore/dirs.c#4 integrate .. //depot/projects/wifi/sbin/restore/extern.h#2 integrate .. //depot/projects/wifi/sbin/restore/restore.h#5 integrate .. //depot/projects/wifi/sbin/restore/tape.c#5 integrate .. //depot/projects/wifi/share/dict/web2a#2 integrate .. //depot/projects/wifi/share/doc/Makefile#3 integrate .. //depot/projects/wifi/share/doc/legal/Makefile#1 branch .. //depot/projects/wifi/share/doc/legal/intel_ipw/Makefile#1 branch .. //depot/projects/wifi/share/doc/legal/intel_iwi/Makefile#1 branch .. //depot/projects/wifi/share/man/man4/Makefile#31 integrate .. //depot/projects/wifi/share/man/man4/altq.4#15 integrate .. //depot/projects/wifi/share/man/man4/ata.4#14 integrate .. //depot/projects/wifi/share/man/man4/bce.4#4 integrate .. //depot/projects/wifi/share/man/man4/bpf.4#7 integrate .. //depot/projects/wifi/share/man/man4/enc.4#3 integrate .. //depot/projects/wifi/share/man/man4/hwpmc.4#12 integrate .. //depot/projects/wifi/share/man/man4/icmp.4#5 integrate .. //depot/projects/wifi/share/man/man4/isp.4#7 integrate .. //depot/projects/wifi/share/man/man4/joy.4#5 integrate .. //depot/projects/wifi/share/man/man4/kame.4#3 delete .. //depot/projects/wifi/share/man/man4/kld.4#3 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/fe.4#8 integrate .. //depot/projects/wifi/share/man/man4/man4.i386/ndis.4#4 integrate .. //depot/projects/wifi/share/man/man4/multicast.4#2 integrate .. //depot/projects/wifi/share/man/man4/ng_bt3c.4#4 integrate .. //depot/projects/wifi/share/man/man4/ng_source.4#9 integrate .. //depot/projects/wifi/share/man/man4/pim.4#2 integrate .. //depot/projects/wifi/share/man/man4/ppbus.4#3 integrate .. //depot/projects/wifi/share/man/man4/sctp.4#1 branch .. //depot/projects/wifi/share/man/man4/snd_hda.4#3 integrate .. //depot/projects/wifi/share/man/man4/snd_sbc.4#8 integrate .. //depot/projects/wifi/share/man/man4/tcp.4#6 integrate .. //depot/projects/wifi/share/man/man4/tun.4#5 integrate .. //depot/projects/wifi/share/man/man4/uark.4#2 integrate .. //depot/projects/wifi/share/man/man4/ubsa.4#3 integrate .. //depot/projects/wifi/share/man/man4/vge.4#7 integrate .. //depot/projects/wifi/share/man/man5/linsysfs.5#4 integrate .. //depot/projects/wifi/share/man/man5/rc.conf.5#26 integrate .. //depot/projects/wifi/share/man/man7/hier.7#8 integrate .. //depot/projects/wifi/share/man/man9/BUS_SETUP_INTR.9#3 integrate .. //depot/projects/wifi/share/man/man9/Makefile#20 integrate .. //depot/projects/wifi/share/man/man9/VFS_VPTOFH.9#2 delete .. //depot/projects/wifi/share/man/man9/VOP_VPTOFH.9#1 branch .. //depot/projects/wifi/share/man/man9/device_set_driver.9#2 integrate .. //depot/projects/wifi/share/man/man9/extattr.9#3 integrate .. //depot/projects/wifi/share/man/man9/firmware.9#3 integrate .. //depot/projects/wifi/share/man/man9/ieee80211_ioctl.9#3 integrate .. //depot/projects/wifi/share/man/man9/mbuf.9#10 integrate .. //depot/projects/wifi/share/man/man9/priv.9#2 integrate .. //depot/projects/wifi/share/man/man9/rwlock.9#3 integrate .. //depot/projects/wifi/share/man/man9/sleep.9#7 integrate .. //depot/projects/wifi/share/man/man9/vfs_getopt.9#1 branch .. //depot/projects/wifi/share/man/man9/vm_page_deactivate.9#2 integrate .. //depot/projects/wifi/share/man/man9/vm_page_unmanage.9#3 delete .. //depot/projects/wifi/share/monetdef/ru_RU.CP1251.src#2 integrate .. //depot/projects/wifi/share/monetdef/ru_RU.CP866.src#2 integrate .. //depot/projects/wifi/share/monetdef/ru_RU.ISO8859-5.src#2 integrate .. //depot/projects/wifi/share/monetdef/ru_RU.KOI8-R.src#2 integrate .. //depot/projects/wifi/share/monetdef/ru_RU.UTF-8.src#2 integrate .. //depot/projects/wifi/share/syscons/keymaps/hr.iso.kbd#2 integrate .. //depot/projects/wifi/sys/amd64/acpica/madt.c#8 integrate .. //depot/projects/wifi/sys/amd64/amd64/intr_machdep.c#12 integrate .. //depot/projects/wifi/sys/amd64/amd64/io_apic.c#9 integrate .. //depot/projects/wifi/sys/amd64/amd64/local_apic.c#12 integrate .. //depot/projects/wifi/sys/amd64/amd64/mp_machdep.c#17 integrate .. //depot/projects/wifi/sys/amd64/amd64/mptable.c#6 integrate .. //depot/projects/wifi/sys/amd64/amd64/msi.c#3 integrate .. //depot/projects/wifi/sys/amd64/amd64/nexus.c#9 integrate .. //depot/projects/wifi/sys/amd64/amd64/pmap.c#15 integrate .. //depot/projects/wifi/sys/amd64/amd64/uma_machdep.c#3 integrate .. //depot/projects/wifi/sys/amd64/conf/GENERIC#17 integrate .. //depot/projects/wifi/sys/amd64/include/apicvar.h#10 integrate .. //depot/projects/wifi/sys/amd64/include/gdb_machdep.h#5 integrate .. //depot/projects/wifi/sys/amd64/include/intr_machdep.h#8 integrate .. //depot/projects/wifi/sys/amd64/include/pcpu.h#4 integrate .. //depot/projects/wifi/sys/amd64/isa/clock.c#11 integrate .. //depot/projects/wifi/sys/amd64/isa/isa.c#4 integrate .. //depot/projects/wifi/sys/amd64/linux32/linux.h#5 integrate .. //depot/projects/wifi/sys/amd64/linux32/linux32_machdep.c#10 integrate .. //depot/projects/wifi/sys/amd64/linux32/linux32_proto.h#7 integrate .. //depot/projects/wifi/sys/amd64/linux32/linux32_syscall.h#7 integrate .. //depot/projects/wifi/sys/amd64/linux32/linux32_sysent.c#7 integrate .. //depot/projects/wifi/sys/amd64/linux32/syscalls.master#7 integrate .. //depot/projects/wifi/sys/arm/arm/busdma_machdep.c#16 integrate .. //depot/projects/wifi/sys/arm/arm/cpufunc.c#9 integrate .. //depot/projects/wifi/sys/arm/arm/db_interface.c#5 integrate .. //depot/projects/wifi/sys/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/wifi/sys/arm/arm/intr.c#12 integrate .. //depot/projects/wifi/sys/arm/arm/locore.S#10 integrate .. //depot/projects/wifi/sys/arm/arm/machdep.c#11 integrate .. //depot/projects/wifi/sys/arm/arm/mem.c#4 integrate .. //depot/projects/wifi/sys/arm/arm/nexus.c#7 integrate .. //depot/projects/wifi/sys/arm/arm/pmap.c#19 integrate .. //depot/projects/wifi/sys/arm/arm/support.S#7 integrate .. //depot/projects/wifi/sys/arm/arm/sys_machdep.c#3 integrate .. //depot/projects/wifi/sys/arm/arm/trap.c#17 integrate .. //depot/projects/wifi/sys/arm/at91/at91.c#3 integrate .. //depot/projects/wifi/sys/arm/at91/at91_mci.c#3 integrate .. //depot/projects/wifi/sys/arm/at91/at91_pio.c#3 integrate .. //depot/projects/wifi/sys/arm/at91/at91_rtc.c#2 integrate .. //depot/projects/wifi/sys/arm/at91/at91_spi.c#3 integrate .. //depot/projects/wifi/sys/arm/at91/at91_ssc.c#3 integrate .. //depot/projects/wifi/sys/arm/at91/at91_st.c#4 integrate .. //depot/projects/wifi/sys/arm/at91/at91_twi.c#3 integrate .. //depot/projects/wifi/sys/arm/at91/if_ate.c#5 integrate .. //depot/projects/wifi/sys/arm/at91/ohci_atmelarm.c#2 integrate .. //depot/projects/wifi/sys/arm/conf/AVILA#2 integrate .. //depot/projects/wifi/sys/arm/conf/EP80219#2 integrate .. //depot/projects/wifi/sys/arm/conf/IQ31244#11 integrate .. //depot/projects/wifi/sys/arm/conf/SIMICS#8 integrate .. //depot/projects/wifi/sys/arm/include/intr.h#5 integrate .. //depot/projects/wifi/sys/arm/sa11x0/sa11x0.c#5 integrate .. //depot/projects/wifi/sys/arm/sa11x0/sa11x0_ost.c#5 integrate .. //depot/projects/wifi/sys/arm/xscale/i80321/i80321_pci.c#9 integrate .. //depot/projects/wifi/sys/arm/xscale/i80321/i80321_timer.c#9 integrate .. //depot/projects/wifi/sys/arm/xscale/i80321/iq80321.c#10 integrate .. //depot/projects/wifi/sys/arm/xscale/ixp425/avila_ata.c#2 integrate .. //depot/projects/wifi/sys/arm/xscale/ixp425/if_npe.c#4 integrate .. //depot/projects/wifi/sys/arm/xscale/ixp425/ixp425.c#3 integrate .. //depot/projects/wifi/sys/arm/xscale/ixp425/ixp425_npe.c#2 integrate .. //depot/projects/wifi/sys/arm/xscale/ixp425/ixp425_pci.c#3 integrate .. //depot/projects/wifi/sys/arm/xscale/ixp425/ixp425_qmgr.c#2 integrate .. //depot/projects/wifi/sys/arm/xscale/ixp425/ixp425_timer.c#2 integrate .. //depot/projects/wifi/sys/boot/i386/cdboot/cdboot.s#3 integrate .. //depot/projects/wifi/sys/boot/pc98/cdboot/cdboot.s#2 integrate .. //depot/projects/wifi/sys/cam/cam_xpt.c#16 integrate .. //depot/projects/wifi/sys/cam/cam_xpt.h#4 integrate .. //depot/projects/wifi/sys/cam/scsi/scsi_da.c#11 integrate .. //depot/projects/wifi/sys/cam/scsi/scsi_target.c#9 integrate .. //depot/projects/wifi/sys/compat/linprocfs/linprocfs.c#12 integrate .. //depot/projects/wifi/sys/compat/linux/linux_emul.c#4 integrate .. //depot/projects/wifi/sys/compat/linux/linux_futex.c#2 integrate .. //depot/projects/wifi/sys/compat/linux/linux_futex.h#2 integrate .. //depot/projects/wifi/sys/compat/linux/linux_misc.c#15 integrate .. //depot/projects/wifi/sys/compat/linux/linux_uid16.c#5 integrate .. //depot/projects/wifi/sys/compat/linux/linux_util.c#7 integrate .. //depot/projects/wifi/sys/compat/ndis/kern_ndis.c#19 integrate .. //depot/projects/wifi/sys/conf/NOTES#33 integrate .. //depot/projects/wifi/sys/conf/files#41 edit .. //depot/projects/wifi/sys/conf/files.powerpc#8 integrate .. //depot/projects/wifi/sys/conf/kmod.mk#21 integrate .. //depot/projects/wifi/sys/conf/options#28 integrate .. //depot/projects/wifi/sys/conf/options.arm#9 integrate .. //depot/projects/wifi/sys/contrib/dev/ipw/LICENSE#1 branch .. //depot/projects/wifi/sys/contrib/dev/ipw/ipw2100-1.3-i.fw.uu#1 branch .. //depot/projects/wifi/sys/contrib/dev/ipw/ipw2100-1.3-p.fw.uu#1 branch .. //depot/projects/wifi/sys/contrib/dev/ipw/ipw2100-1.3.fw.uu#1 branch .. //depot/projects/wifi/sys/contrib/dev/iwi/LICENSE#1 branch .. //depot/projects/wifi/sys/contrib/dev/iwi/ipw2200-bss.fw.uu#1 branch .. //depot/projects/wifi/sys/contrib/dev/iwi/ipw2200-ibss.fw.uu#1 branch .. //depot/projects/wifi/sys/contrib/dev/iwi/ipw2200-sniffer.fw.uu#1 branch .. //depot/projects/wifi/sys/contrib/dev/oltr/if_oltr.c#8 integrate .. //depot/projects/wifi/sys/dev/aac/aac.c#12 integrate .. //depot/projects/wifi/sys/dev/aac/aacvar.h#3 integrate .. //depot/projects/wifi/sys/dev/acpica/Osd/OsdInterrupt.c#5 integrate .. //depot/projects/wifi/sys/dev/acpica/Osd/OsdSchedule.c#9 integrate .. //depot/projects/wifi/sys/dev/acpica/acpi.c#21 integrate .. //depot/projects/wifi/sys/dev/acpica/acpi_ec.c#10 integrate .. //depot/projects/wifi/sys/dev/acpica/acpi_thermal.c#8 integrate .. //depot/projects/wifi/sys/dev/adlink/adlink.c#5 integrate .. //depot/projects/wifi/sys/dev/advansys/adv_eisa.c#6 integrate .. //depot/projects/wifi/sys/dev/advansys/adv_isa.c#5 integrate .. //depot/projects/wifi/sys/dev/advansys/adv_pci.c#8 integrate .. //depot/projects/wifi/sys/dev/advansys/adwcam.c#7 integrate .. //depot/projects/wifi/sys/dev/aha/aha_isa.c#8 integrate .. //depot/projects/wifi/sys/dev/aha/aha_mca.c#5 integrate .. //depot/projects/wifi/sys/dev/ahb/ahb.c#6 integrate .. //depot/projects/wifi/sys/dev/aic/aic_cbus.c#3 integrate .. //depot/projects/wifi/sys/dev/aic/aic_isa.c#3 integrate .. //depot/projects/wifi/sys/dev/aic/aic_pccard.c#5 integrate .. //depot/projects/wifi/sys/dev/aic7xxx/aic79xx.seq#3 integrate .. //depot/projects/wifi/sys/dev/aic7xxx/aic79xx_osm.c#8 integrate .. //depot/projects/wifi/sys/dev/aic7xxx/aic7xxx_osm.c#6 integrate .. //depot/projects/wifi/sys/dev/amd/amd.c#6 integrate .. //depot/projects/wifi/sys/dev/amr/amr_pci.c#13 integrate .. //depot/projects/wifi/sys/dev/an/if_an_isa.c#4 integrate .. //depot/projects/wifi/sys/dev/an/if_an_pccard.c#5 integrate .. //depot/projects/wifi/sys/dev/an/if_an_pci.c#3 integrate .. //depot/projects/wifi/sys/dev/ar/if_ar.c#7 integrate .. //depot/projects/wifi/sys/dev/arcmsr/arcmsr.c#9 integrate .. //depot/projects/wifi/sys/dev/arcmsr/arcmsr.h#3 integrate .. //depot/projects/wifi/sys/dev/arl/if_arl_isa.c#5 integrate .. //depot/projects/wifi/sys/dev/asr/asr.c#9 integrate .. //depot/projects/wifi/sys/dev/ata/ata-all.c#18 integrate .. //depot/projects/wifi/sys/dev/ata/ata-all.h#15 integrate .. //depot/projects/wifi/sys/dev/ata/ata-card.c#11 integrate .. //depot/projects/wifi/sys/dev/ata/ata-cbus.c#8 integrate .. //depot/projects/wifi/sys/dev/ata/ata-chipset.c#24 integrate .. //depot/projects/wifi/sys/dev/ata/ata-disk.c#16 integrate .. //depot/projects/wifi/sys/dev/ata/ata-disk.h#4 integrate .. //depot/projects/wifi/sys/dev/ata/ata-dma.c#12 integrate .. //depot/projects/wifi/sys/dev/ata/ata-isa.c#7 integrate .. //depot/projects/wifi/sys/dev/ata/ata-lowlevel.c#19 integrate .. //depot/projects/wifi/sys/dev/ata/ata-pci.c#16 integrate .. //depot/projects/wifi/sys/dev/ata/ata-pci.h#18 integrate .. //depot/projects/wifi/sys/dev/ata/ata-queue.c#15 integrate .. //depot/projects/wifi/sys/dev/ata/ata-raid.c#18 integrate .. //depot/projects/wifi/sys/dev/ata/ata-raid.h#12 integrate .. //depot/projects/wifi/sys/dev/ata/ata-usb.c#3 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-cam.c#9 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-cd.c#16 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-cd.h#4 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-fd.c#10 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-fd.h#5 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-tape.c#10 integrate .. //depot/projects/wifi/sys/dev/ata/atapi-tape.h#4 integrate .. //depot/projects/wifi/sys/dev/ath/if_ath_pci.c#13 integrate .. //depot/projects/wifi/sys/dev/atkbdc/atkbd_atkbdc.c#2 integrate .. //depot/projects/wifi/sys/dev/atkbdc/psm.c#6 integrate .. //depot/projects/wifi/sys/dev/awi/if_awi_pccard.c#6 integrate .. //depot/projects/wifi/sys/dev/bce/if_bce.c#5 integrate .. //depot/projects/wifi/sys/dev/bfe/if_bfe.c#12 integrate .. //depot/projects/wifi/sys/dev/bge/if_bge.c#21 integrate .. //depot/projects/wifi/sys/dev/bge/if_bgereg.h#13 integrate .. //depot/projects/wifi/sys/dev/bktr/bktr_os.c#7 integrate .. //depot/projects/wifi/sys/dev/buslogic/bt.c#5 integrate .. //depot/projects/wifi/sys/dev/ce/if_ce.c#5 integrate .. //depot/projects/wifi/sys/dev/ciss/ciss.c#15 integrate .. //depot/projects/wifi/sys/dev/cm/if_cm_isa.c#6 integrate .. //depot/projects/wifi/sys/dev/cnw/if_cnw.c#8 integrate .. //depot/projects/wifi/sys/dev/cp/if_cp.c#13 integrate .. //depot/projects/wifi/sys/dev/cs/if_cs_isa.c#3 integrate .. //depot/projects/wifi/sys/dev/cs/if_cs_pccard.c#8 integrate .. //depot/projects/wifi/sys/dev/ct/ct_isa.c#4 integrate .. //depot/projects/wifi/sys/dev/ctau/if_ct.c#14 integrate .. //depot/projects/wifi/sys/dev/cx/if_cx.c#14 integrate .. //depot/projects/wifi/sys/dev/cy/cy.c#3 integrate .. //depot/projects/wifi/sys/dev/cy/cy_isa.c#3 integrate .. //depot/projects/wifi/sys/dev/cy/cy_pci.c#4 integrate .. //depot/projects/wifi/sys/dev/cy/cyvar.h#2 integrate .. //depot/projects/wifi/sys/dev/dc/if_dc.c#6 integrate .. //depot/projects/wifi/sys/dev/de/if_de.c#3 integrate .. //depot/projects/wifi/sys/dev/dpt/dpt_eisa.c#6 integrate .. //depot/projects/wifi/sys/dev/dpt/dpt_pci.c#6 integrate .. //depot/projects/wifi/sys/dev/drm/drm_irq.c#3 integrate .. //depot/projects/wifi/sys/dev/ed/if_ed_cbus.c#11 integrate .. //depot/projects/wifi/sys/dev/ed/if_ed_isa.c#10 integrate .. //depot/projects/wifi/sys/dev/ed/if_ed_pccard.c#14 integrate .. //depot/projects/wifi/sys/dev/ed/if_ed_pci.c#11 integrate .. //depot/projects/wifi/sys/dev/em/if_em.c#20 integrate .. //depot/projects/wifi/sys/dev/en/if_en_pci.c#8 integrate .. //depot/projects/wifi/sys/dev/ep/if_ep_eisa.c#5 integrate .. //depot/projects/wifi/sys/dev/ep/if_ep_isa.c#5 integrate .. //depot/projects/wifi/sys/dev/ep/if_ep_mca.c#4 integrate .. //depot/projects/wifi/sys/dev/ep/if_ep_pccard.c#6 integrate .. //depot/projects/wifi/sys/dev/esp/esp_sbus.c#8 integrate .. //depot/projects/wifi/sys/dev/ex/if_ex_isa.c#3 integrate .. //depot/projects/wifi/sys/dev/ex/if_ex_pccard.c#6 integrate .. //depot/projects/wifi/sys/dev/exca/exca.c#7 integrate .. //depot/projects/wifi/sys/dev/fatm/if_fatm.c#8 integrate .. //depot/projects/wifi/sys/dev/fdc/fdc.c#11 integrate .. //depot/projects/wifi/sys/dev/fe/if_fe.c#10 integrate .. //depot/projects/wifi/sys/dev/firewire/fwohci.c#4 integrate .. //depot/projects/wifi/sys/dev/firewire/fwohci_pci.c#8 integrate .. //depot/projects/wifi/sys/dev/firewire/sbp.c#5 integrate .. //depot/projects/wifi/sys/dev/fxp/if_fxp.c#20 integrate .. //depot/projects/wifi/sys/dev/gem/if_gem_pci.c#6 integrate .. //depot/projects/wifi/sys/dev/hatm/if_hatm.c#7 integrate .. //depot/projects/wifi/sys/dev/hfa/hfa_pci.c#4 integrate .. //depot/projects/wifi/sys/dev/hifn/hifn7751.c#7 integrate .. //depot/projects/wifi/sys/dev/hme/if_hme_pci.c#7 integrate .. //depot/projects/wifi/sys/dev/hme/if_hme_sbus.c#5 integrate .. //depot/projects/wifi/sys/dev/hptmv/entry.c#11 integrate .. //depot/projects/wifi/sys/dev/hptmv/ioctl.c#3 integrate .. //depot/projects/wifi/sys/dev/hwpmc/hwpmc_mod.c#10 integrate .. //depot/projects/wifi/sys/dev/ichsmb/ichsmb.c#9 integrate .. //depot/projects/wifi/sys/dev/ida/ida_eisa.c#5 integrate .. //depot/projects/wifi/sys/dev/ida/ida_pci.c#6 integrate .. //depot/projects/wifi/sys/dev/idt/idt_pci.c#5 integrate .. //depot/projects/wifi/sys/dev/ie/if_ie_isa.c#5 integrate .. //depot/projects/wifi/sys/dev/ieee488/pcii.c#5 integrate .. //depot/projects/wifi/sys/dev/ieee488/tnt4882.c#3 integrate .. //depot/projects/wifi/sys/dev/iir/iir_pci.c#6 integrate .. //depot/projects/wifi/sys/dev/ipmi/ipmi.c#3 integrate .. //depot/projects/wifi/sys/dev/ipmi/ipmi_ssif.c#2 integrate .. //depot/projects/wifi/sys/dev/ips/ips_pci.c#5 integrate .. //depot/projects/wifi/sys/dev/ipw/if_ipw.c#12 integrate .. //depot/projects/wifi/sys/dev/ipw/if_ipwvar.h#4 integrate .. //depot/projects/wifi/sys/dev/isp/isp.c#9 integrate .. //depot/projects/wifi/sys/dev/isp/isp_freebsd.c#10 integrate .. //depot/projects/wifi/sys/dev/isp/isp_freebsd.h#10 integrate .. //depot/projects/wifi/sys/dev/isp/isp_pci.c#11 integrate .. //depot/projects/wifi/sys/dev/isp/isp_sbus.c#6 integrate .. //depot/projects/wifi/sys/dev/isp/ispmbox.h#7 integrate .. //depot/projects/wifi/sys/dev/isp/ispreg.h#6 integrate .. //depot/projects/wifi/sys/dev/iwi/if_iwi.c#22 integrate .. //depot/projects/wifi/sys/dev/iwi/if_iwireg.h#9 integrate .. //depot/projects/wifi/sys/dev/iwi/if_iwivar.h#11 integrate .. //depot/projects/wifi/sys/dev/ixgb/if_ixgb.c#14 integrate .. //depot/projects/wifi/sys/dev/le/if_le_cbus.c#3 integrate .. //depot/projects/wifi/sys/dev/le/if_le_isa.c#3 integrate .. //depot/projects/wifi/sys/dev/le/if_le_lebuffer.c#2 integrate .. //depot/projects/wifi/sys/dev/le/if_le_ledma.c#3 integrate .. //depot/projects/wifi/sys/dev/le/if_le_pci.c#3 integrate .. //depot/projects/wifi/sys/dev/lge/if_lge.c#13 integrate .. //depot/projects/wifi/sys/dev/lmc/if_lmc.c#5 integrate .. //depot/projects/wifi/sys/dev/mfi/mfi.c#4 integrate .. //depot/projects/wifi/sys/dev/mii/brgphy.c#11 integrate .. //depot/projects/wifi/sys/dev/mii/brgphyreg.h#3 integrate .. //depot/projects/wifi/sys/dev/mii/miidevs#7 integrate .. //depot/projects/wifi/sys/dev/mii/rlphy.c#8 integrate .. //depot/projects/wifi/sys/dev/mlx/mlx.c#5 integrate .. //depot/projects/wifi/sys/dev/mly/mly.c#6 integrate .. //depot/projects/wifi/sys/dev/mpt/mpt.h#10 integrate .. //depot/projects/wifi/sys/dev/mpt/mpt_cam.c#8 integrate .. //depot/projects/wifi/sys/dev/mpt/mpt_cam.h#4 integrate .. //depot/projects/wifi/sys/dev/mpt/mpt_pci.c#10 integrate .. //depot/projects/wifi/sys/dev/mse/mse.c#6 integrate .. //depot/projects/wifi/sys/dev/msk/if_msk.c#3 integrate .. //depot/projects/wifi/sys/dev/mxge/if_mxge.c#4 integrate .. //depot/projects/wifi/sys/dev/mxge/if_mxge_var.h#4 integrate .. //depot/projects/wifi/sys/dev/my/if_my.c#12 integrate .. //depot/projects/wifi/sys/dev/ncv/ncr53c500_pccard.c#7 integrate .. //depot/projects/wifi/sys/dev/nfe/if_nfe.c#3 integrate .. //depot/projects/wifi/sys/dev/nge/if_nge.c#15 integrate .. //depot/projects/wifi/sys/dev/nsp/nsp_pccard.c#6 integrate .. //depot/projects/wifi/sys/dev/nve/if_nve.c#12 integrate .. //depot/projects/wifi/sys/dev/patm/if_patm_attach.c#7 integrate .. //depot/projects/wifi/sys/dev/pccard/pccard.c#15 integrate .. //depot/projects/wifi/sys/dev/pccard/pccard_cis.c#11 integrate .. //depot/projects/wifi/sys/dev/pccard/pccarddevs#14 integrate .. //depot/projects/wifi/sys/dev/pccard/pccardvarp.h#3 integrate .. //depot/projects/wifi/sys/dev/pccbb/pccbb.c#13 integrate .. //depot/projects/wifi/sys/dev/pccbb/pccbb_pci.c#12 integrate .. //depot/projects/wifi/sys/dev/pccbb/pccbbvar.h#7 integrate .. //depot/projects/wifi/sys/dev/pcf/envctrl.c#4 integrate .. //depot/projects/wifi/sys/dev/pcf/pcf_ebus.c#4 integrate .. //depot/projects/wifi/sys/dev/pcf/pcf_isa.c#3 integrate .. //depot/projects/wifi/sys/dev/pci/pci.c#25 integrate .. //depot/projects/wifi/sys/dev/pci/pcireg.h#13 integrate .. //depot/projects/wifi/sys/dev/pdq/if_fea.c#4 integrate .. //depot/projects/wifi/sys/dev/pdq/if_fpa.c#5 integrate .. //depot/projects/wifi/sys/dev/ppbus/if_plip.c#7 integrate .. //depot/projects/wifi/sys/dev/ppbus/lpt.c#6 integrate .. //depot/projects/wifi/sys/dev/ppbus/ppbconf.c#3 integrate .. //depot/projects/wifi/sys/dev/ppbus/ppi.c#4 integrate .. //depot/projects/wifi/sys/dev/ppbus/pps.c#7 integrate .. //depot/projects/wifi/sys/dev/ppc/ppc.c#5 integrate .. //depot/projects/wifi/sys/dev/ppc/ppcvar.h#4 integrate .. //depot/projects/wifi/sys/dev/pst/pst-iop.c#2 integrate .. //depot/projects/wifi/sys/dev/puc/puc.c#7 integrate .. //depot/projects/wifi/sys/dev/puc/puc_bfe.h#2 integrate .. //depot/projects/wifi/sys/dev/ral/if_ral_pci.c#6 integrate .. //depot/projects/wifi/sys/dev/random/randomdev_soft.c#8 integrate .. //depot/projects/wifi/sys/dev/ray/if_ray.c#13 integrate .. //depot/projects/wifi/sys/dev/rc/rc.c#4 integrate .. //depot/projects/wifi/sys/dev/re/if_re.c#18 integrate .. //depot/projects/wifi/sys/dev/rr232x/osm_bsd.c#2 integrate .. //depot/projects/wifi/sys/dev/safe/safe.c#4 integrate .. //depot/projects/wifi/sys/dev/sbni/if_sbni_isa.c#4 integrate .. //depot/projects/wifi/sys/dev/sbni/if_sbni_pci.c#2 integrate .. //depot/projects/wifi/sys/dev/sbsh/if_sbsh.c#9 integrate .. //depot/projects/wifi/sys/dev/scc/scc_bfe.h#2 integrate .. //depot/projects/wifi/sys/dev/scc/scc_core.c#2 integrate .. //depot/projects/wifi/sys/dev/scd/scd.c#5 integrate .. //depot/projects/wifi/sys/dev/si/si_eisa.c#3 integrate .. //depot/projects/wifi/sys/dev/si/si_isa.c#3 integrate .. //depot/projects/wifi/sys/dev/si/si_pci.c#4 integrate .. //depot/projects/wifi/sys/dev/sio/sio.c#8 integrate .. //depot/projects/wifi/sys/dev/sk/if_sk.c#4 integrate .. //depot/projects/wifi/sys/dev/sn/if_sn.c#12 integrate .. //depot/projects/wifi/sys/dev/snc/if_snc_cbus.c#3 integrate .. //depot/projects/wifi/sys/dev/snc/if_snc_pccard.c#7 integrate .. //depot/projects/wifi/sys/dev/sound/isa/ad1816.c#7 integrate .. //depot/projects/wifi/sys/dev/sound/isa/ess.c#6 integrate .. //depot/projects/wifi/sys/dev/sound/isa/gusc.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/isa/mss.c#10 integrate .. //depot/projects/wifi/sys/dev/sound/isa/sb16.c#6 integrate .. //depot/projects/wifi/sys/dev/sound/isa/sb8.c#5 integrate .. //depot/projects/wifi/sys/dev/sound/isa/sbc.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/midi/midi.c#3 integrate .. //depot/projects/wifi/sys/dev/sound/midi/midi.h#3 integrate .. //depot/projects/wifi/sys/dev/sound/midi/midiq.h#3 integrate .. //depot/projects/wifi/sys/dev/sound/midi/mpu401.c#3 integrate .. //depot/projects/wifi/sys/dev/sound/midi/mpu401.h#3 integrate .. //depot/projects/wifi/sys/dev/sound/midi/mpu_if.m#3 integrate .. //depot/projects/wifi/sys/dev/sound/midi/mpufoi_if.m#3 integrate .. //depot/projects/wifi/sys/dev/sound/midi/sequencer.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/midi/sequencer.h#3 integrate .. //depot/projects/wifi/sys/dev/sound/midi/synth_if.m#3 integrate .. //depot/projects/wifi/sys/dev/sound/pci/als4000.c#7 integrate .. //depot/projects/wifi/sys/dev/sound/pci/atiixp.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/pci/au88x0.c#3 integrate .. //depot/projects/wifi/sys/dev/sound/pci/aureal.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/pci/cmi.c#9 integrate .. //depot/projects/wifi/sys/dev/sound/pci/cs4281.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/pci/csa.c#6 integrate .. //depot/projects/wifi/sys/dev/sound/pci/csapcm.c#6 integrate .. //depot/projects/wifi/sys/dev/sound/pci/ds1.c#5 integrate .. //depot/projects/wifi/sys/dev/sound/pci/emu10k1.c#7 integrate .. //depot/projects/wifi/sys/dev/sound/pci/emu10kx.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/pci/envy24.c#3 integrate .. //depot/projects/wifi/sys/dev/sound/pci/envy24ht.c#2 integrate .. //depot/projects/wifi/sys/dev/sound/pci/fm801.c#5 integrate .. //depot/projects/wifi/sys/dev/sound/pci/hda/hdac.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/pci/ich.c#11 integrate .. //depot/projects/wifi/sys/dev/sound/pci/maestro.c#8 integrate .. //depot/projects/wifi/sys/dev/sound/pci/maestro3.c#5 integrate .. //depot/projects/wifi/sys/dev/sound/pci/solo.c#6 integrate .. //depot/projects/wifi/sys/dev/sound/pci/spicds.c#2 integrate .. //depot/projects/wifi/sys/dev/sound/pci/t4dwave.c#4 integrate .. //depot/projects/wifi/sys/dev/sound/pci/via8233.c#10 integrate .. //depot/projects/wifi/sys/dev/sound/pci/via82c686.c#6 integrate .. //depot/projects/wifi/sys/dev/sound/pci/vibes.c#5 integrate .. //depot/projects/wifi/sys/dev/sound/pcm/sound.c#9 integrate .. //depot/projects/wifi/sys/dev/sr/if_sr.c#7 integrate .. //depot/projects/wifi/sys/dev/stg/tmc18c30_isa.c#4 integrate .. //depot/projects/wifi/sys/dev/stg/tmc18c30_pccard.c#5 integrate .. //depot/projects/wifi/sys/dev/stg/tmc18c30_pci.c#4 integrate .. //depot/projects/wifi/sys/dev/stge/if_stge.c#4 integrate .. //depot/projects/wifi/sys/dev/sym/sym_hipd.c#10 integrate .. //depot/projects/wifi/sys/dev/syscons/fire/fire_saver.c#2 integrate .. //depot/projects/wifi/sys/dev/syscons/logo/logo_saver.c#2 integrate .. //depot/projects/wifi/sys/dev/syscons/rain/rain_saver.c#2 integrate .. //depot/projects/wifi/sys/dev/syscons/warp/warp_saver.c#2 integrate .. //depot/projects/wifi/sys/dev/ti/if_ti.c#4 integrate .. //depot/projects/wifi/sys/dev/trm/trm.c#7 integrate .. //depot/projects/wifi/sys/dev/twa/tw_osl_freebsd.c#5 integrate .. //depot/projects/wifi/sys/dev/twe/twe_freebsd.c#6 integrate .. //depot/projects/wifi/sys/dev/tx/if_tx.c#10 integrate .. //depot/projects/wifi/sys/dev/txp/if_txp.c#14 integrate .. //depot/projects/wifi/sys/dev/uart/uart_core.c#7 integrate .. //depot/projects/wifi/sys/dev/ubsec/ubsec.c#6 integrate .. //depot/projects/wifi/sys/dev/usb/ehci_pci.c#11 integrate .. //depot/projects/wifi/sys/dev/usb/ohci_pci.c#9 integrate .. //depot/projects/wifi/sys/dev/usb/sl811hs.c#5 integrate .. //depot/projects/wifi/sys/dev/usb/sl811hsvar.h#4 integrate .. //depot/projects/wifi/sys/dev/usb/slhci_pccard.c#3 integrate .. //depot/projects/wifi/sys/dev/usb/ubsa.c#4 integrate .. //depot/projects/wifi/sys/dev/usb/uhci_pci.c#6 integrate .. //depot/projects/wifi/sys/dev/usb/umass.c#11 integrate .. //depot/projects/wifi/sys/dev/usb/usb_subr.c#10 integrate .. //depot/projects/wifi/sys/dev/usb/usbdevs#21 integrate .. //depot/projects/wifi/sys/dev/usb/uvscom.c#6 integrate .. //depot/projects/wifi/sys/dev/vge/if_vge.c#14 integrate .. //depot/projects/wifi/sys/dev/vx/if_vx_eisa.c#4 integrate .. //depot/projects/wifi/sys/dev/vx/if_vx_pci.c#6 integrate .. //depot/projects/wifi/sys/dev/wds/wd7000.c#5 integrate .. //depot/projects/wifi/sys/dev/wi/if_wi.c#30 integrate .. //depot/projects/wifi/sys/dev/wl/if_wl.c#11 integrate .. //depot/projects/wifi/sys/dev/xe/if_xe.c#9 integrate .. //depot/projects/wifi/sys/dev/zs/z8530var.h#2 integrate .. //depot/projects/wifi/sys/dev/zs/zs.c#5 integrate .. //depot/projects/wifi/sys/dev/zs/zs_macio.c#2 integrate .. //depot/projects/wifi/sys/fs/cd9660/TODO#1 branch .. //depot/projects/wifi/sys/fs/cd9660/TODO.hibler#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_bmap.c#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_iconv.c#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_lookup.c#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_mount.h#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_node.c#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_node.h#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_rrip.c#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_rrip.h#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_util.c#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_vfsops.c#1 branch .. //depot/projects/wifi/sys/fs/cd9660/cd9660_vnops.c#1 branch .. //depot/projects/wifi/sys/fs/cd9660/iso.h#1 branch .. //depot/projects/wifi/sys/fs/cd9660/iso_rrip.h#1 branch .. //depot/projects/wifi/sys/fs/fifofs/fifo_vnops.c#14 integrate .. //depot/projects/wifi/sys/fs/hpfs/hpfs_vfsops.c#12 integrate .. //depot/projects/wifi/sys/fs/hpfs/hpfs_vnops.c#13 integrate .. //depot/projects/wifi/sys/fs/msdosfs/msdosfs_vfsops.c#18 integrate .. //depot/projects/wifi/sys/fs/msdosfs/msdosfs_vnops.c#13 integrate .. //depot/projects/wifi/sys/fs/ntfs/ntfs_vfsops.c#17 integrate .. //depot/projects/wifi/sys/fs/ntfs/ntfs_vnops.c#14 integrate .. //depot/projects/wifi/sys/fs/nullfs/null_vfsops.c#13 integrate .. //depot/projects/wifi/sys/fs/nullfs/null_vnops.c#16 integrate .. //depot/projects/wifi/sys/fs/procfs/procfs.c#4 integrate .. //depot/projects/wifi/sys/fs/procfs/procfs_ioctl.c#4 integrate .. //depot/projects/wifi/sys/fs/smbfs/smbfs_smb.c#7 integrate .. //depot/projects/wifi/sys/fs/udf/udf.h#5 integrate .. //depot/projects/wifi/sys/fs/udf/udf_vfsops.c#14 integrate .. //depot/projects/wifi/sys/fs/udf/udf_vnops.c#20 integrate .. //depot/projects/wifi/sys/fs/umapfs/umap_vfsops.c#9 integrate .. //depot/projects/wifi/sys/fs/umapfs/umap_vnops.c#7 integrate .. //depot/projects/wifi/sys/fs/unionfs/union_vfsops.c#10 integrate .. //depot/projects/wifi/sys/fs/unionfs/union_vnops.c#19 integrate .. //depot/projects/wifi/sys/geom/eli/g_eli.c#7 integrate .. //depot/projects/wifi/sys/geom/eli/g_eli_ctl.c#6 integrate .. //depot/projects/wifi/sys/geom/geom_apple.c#3 delete .. //depot/projects/wifi/sys/geom/geom_dev.c#7 integrate .. //depot/projects/wifi/sys/geom/geom_disk.c#10 integrate .. //depot/projects/wifi/sys/geom/geom_gpt.c#9 delete .. //depot/projects/wifi/sys/geom/geom_io.c#8 integrate .. //depot/projects/wifi/sys/geom/multipath/g_multipath.c#1 branch .. //depot/projects/wifi/sys/geom/multipath/g_multipath.h#1 branch .. //depot/projects/wifi/sys/geom/part/g_part.c#1 branch .. //depot/projects/wifi/sys/geom/part/g_part.h#1 branch .. //depot/projects/wifi/sys/geom/part/g_part_apm.c#1 branch .. //depot/projects/wifi/sys/geom/part/g_part_gpt.c#1 branch .. //depot/projects/wifi/sys/geom/part/g_part_if.m#1 branch .. //depot/projects/wifi/sys/gnu/fs/ext2fs/ext2_vfsops.c#7 integrate .. //depot/projects/wifi/sys/gnu/fs/ext2fs/ext2_vnops.c#5 integrate .. //depot/projects/wifi/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#6 integrate .. //depot/projects/wifi/sys/gnu/fs/reiserfs/reiserfs_vnops.c#2 integrate .. //depot/projects/wifi/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#4 integrate .. //depot/projects/wifi/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#3 integrate .. //depot/projects/wifi/sys/i386/acpica/madt.c#8 integrate .. //depot/projects/wifi/sys/i386/conf/GENERIC#15 integrate .. //depot/projects/wifi/sys/i386/i386/db_trace.c#10 integrate .. //depot/projects/wifi/sys/i386/i386/intr_machdep.c#11 integrate .. //depot/projects/wifi/sys/i386/i386/io_apic.c#10 integrate .. //depot/projects/wifi/sys/i386/i386/local_apic.c#15 integrate .. //depot/projects/wifi/sys/i386/i386/machdep.c#20 integrate .. //depot/projects/wifi/sys/i386/i386/mp_machdep.c#20 integrate .. //depot/projects/wifi/sys/i386/i386/mptable.c#8 integrate .. //depot/projects/wifi/sys/i386/i386/msi.c#3 integrate .. //depot/projects/wifi/sys/i386/i386/nexus.c#8 integrate .. //depot/projects/wifi/sys/i386/i386/pmap.c#18 integrate .. //depot/projects/wifi/sys/i386/i386/vm_machdep.c#20 integrate .. //depot/projects/wifi/sys/i386/ibcs2/ibcs2_xenix.c#6 integrate .. //depot/projects/wifi/sys/i386/include/apicvar.h#11 integrate .. //depot/projects/wifi/sys/i386/include/intr_machdep.h#9 integrate .. //depot/projects/wifi/sys/i386/include/pcpu.h#6 integrate .. //depot/projects/wifi/sys/i386/isa/clock.c#11 integrate .. //depot/projects/wifi/sys/i386/isa/isa.c#5 integrate .. //depot/projects/wifi/sys/i386/isa/npx.c#9 integrate .. //depot/projects/wifi/sys/i386/linux/imgact_linux.c#4 integrate .. //depot/projects/wifi/sys/i386/linux/linux.h#6 integrate .. //depot/projects/wifi/sys/i386/linux/linux_machdep.c#10 integrate .. //depot/projects/wifi/sys/i386/linux/linux_proto.h#7 integrate .. //depot/projects/wifi/sys/i386/linux/linux_syscall.h#7 integrate .. //depot/projects/wifi/sys/i386/linux/linux_sysent.c#7 integrate .. //depot/projects/wifi/sys/i386/linux/syscalls.master#7 integrate .. //depot/projects/wifi/sys/i4b/capi/iavc/iavc_isa.c#4 integrate .. //depot/projects/wifi/sys/i4b/capi/iavc/iavc_pci.c#4 integrate .. //depot/projects/wifi/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/ifpi2/i4b_ifpi2_pci.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/ifpnp/i4b_ifpnp_avm.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/ihfc/i4b_ihfc_pnp.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_avm_a1.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_elsa_pcc16.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_elsa_qs1p.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_isic_pnp.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_itk_ix1.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_tel_s016.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_tel_s0163.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_tel_s08.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/isic/i4b_usr_sti.c#3 integrate .. //depot/projects/wifi/sys/i4b/layer1/itjc/i4b_itjc_pci.c#6 integrate .. //depot/projects/wifi/sys/i4b/layer1/iwic/i4b_iwic_pci.c#4 integrate .. //depot/projects/wifi/sys/ia64/conf/DEFAULTS#5 integrate .. //depot/projects/wifi/sys/ia64/conf/GENERIC#9 integrate .. //depot/projects/wifi/sys/ia64/ia64/interrupt.c#10 integrate .. //depot/projects/wifi/sys/ia64/ia64/nexus.c#7 integrate .. //depot/projects/wifi/sys/ia64/ia64/pmap.c#14 integrate .. //depot/projects/wifi/sys/ia64/ia64/uma_machdep.c#3 integrate .. //depot/projects/wifi/sys/ia64/include/intr.h#2 integrate .. //depot/projects/wifi/sys/ia64/isa/isa.c#2 integrate .. //depot/projects/wifi/sys/isa/isa_common.h#4 integrate .. //depot/projects/wifi/sys/isa/syscons_isa.c#4 integrate .. //depot/projects/wifi/sys/isofs/cd9660/TODO#2 delete .. //depot/projects/wifi/sys/isofs/cd9660/TODO.hibler#2 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_bmap.c#4 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_iconv.c#2 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_lookup.c#5 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_mount.h#3 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_node.c#6 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_node.h#5 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_rrip.c#3 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_rrip.h#2 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_util.c#2 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_vfsops.c#14 delete .. //depot/projects/wifi/sys/isofs/cd9660/cd9660_vnops.c#8 delete .. //depot/projects/wifi/sys/isofs/cd9660/iso.h#6 delete .. //depot/projects/wifi/sys/isofs/cd9660/iso_rrip.h#2 delete .. //depot/projects/wifi/sys/kern/Make.tags.inc#3 integrate .. //depot/projects/wifi/sys/kern/bus_if.m#5 integrate .. //depot/projects/wifi/sys/kern/kern_acct.c#9 integrate .. //depot/projects/wifi/sys/kern/kern_acl.c#7 delete .. //depot/projects/wifi/sys/kern/kern_alq.c#7 integrate .. //depot/projects/wifi/sys/kern/kern_context.c#2 integrate .. //depot/projects/wifi/sys/kern/kern_descrip.c#23 integrate .. //depot/projects/wifi/sys/kern/kern_environment.c#11 integrate .. //depot/projects/wifi/sys/kern/kern_event.c#13 integrate .. //depot/projects/wifi/sys/kern/kern_exec.c#20 integrate .. //depot/projects/wifi/sys/kern/kern_exit.c#17 integrate .. //depot/projects/wifi/sys/kern/kern_fork.c#15 integrate .. //depot/projects/wifi/sys/kern/kern_intr.c#15 integrate .. //depot/projects/wifi/sys/kern/kern_jail.c#9 integrate .. //depot/projects/wifi/sys/kern/kern_ktrace.c#10 integrate .. //depot/projects/wifi/sys/kern/kern_linker.c#7 integrate .. //depot/projects/wifi/sys/kern/kern_lock.c#17 integrate .. //depot/projects/wifi/sys/kern/kern_module.c#5 integrate .. //depot/projects/wifi/sys/kern/kern_mutex.c#11 integrate .. //depot/projects/wifi/sys/kern/kern_ntptime.c#8 integrate .. //depot/projects/wifi/sys/kern/kern_prot.c#13 integrate .. //depot/projects/wifi/sys/kern/kern_resource.c#10 integrate .. //depot/projects/wifi/sys/kern/kern_rwlock.c#4 integrate .. //depot/projects/wifi/sys/kern/kern_shutdown.c#9 integrate .. //depot/projects/wifi/sys/kern/kern_sig.c#16 integrate .. //depot/projects/wifi/sys/kern/kern_switch.c#17 integrate .. //depot/projects/wifi/sys/kern/kern_sx.c#6 integrate .. //depot/projects/wifi/sys/kern/kern_synch.c#12 integrate .. //depot/projects/wifi/sys/kern/kern_sysctl.c#10 integrate .. //depot/projects/wifi/sys/kern/kern_time.c#11 integrate .. //depot/projects/wifi/sys/kern/kern_umtx.c#14 integrate .. //depot/projects/wifi/sys/kern/kern_uuid.c#5 integrate .. //depot/projects/wifi/sys/kern/kern_xxx.c#4 integrate .. //depot/projects/wifi/sys/kern/link_elf.c#7 integrate .. //depot/projects/wifi/sys/kern/p1003_1b.c#2 integrate .. //depot/projects/wifi/sys/kern/sched_4bsd.c#14 integrate .. //depot/projects/wifi/sys/kern/sched_ule.c#22 integrate .. //depot/projects/wifi/sys/kern/subr_bus.c#21 integrate .. //depot/projects/wifi/sys/kern/subr_firmware.c#4 integrate .. //depot/projects/wifi/sys/kern/subr_lock.c#3 integrate .. //depot/projects/wifi/sys/kern/subr_prof.c#4 integrate .. //depot/projects/wifi/sys/kern/subr_rman.c#10 integrate .. //depot/projects/wifi/sys/kern/subr_trap.c#9 integrate .. //depot/projects/wifi/sys/kern/subr_witness.c#23 integrate .. //depot/projects/wifi/sys/kern/sys_generic.c#13 integrate .. //depot/projects/wifi/sys/kern/sys_pipe.c#11 integrate .. //depot/projects/wifi/sys/kern/sys_process.c#11 integrate .. //depot/projects/wifi/sys/kern/sys_socket.c#9 integrate .. //depot/projects/wifi/sys/kern/sysv_ipc.c#4 integrate .. //depot/projects/wifi/sys/kern/sysv_msg.c#11 integrate .. //depot/projects/wifi/sys/kern/sysv_sem.c#11 integrate .. //depot/projects/wifi/sys/kern/sysv_shm.c#11 integrate .. //depot/projects/wifi/sys/kern/uipc_debug.c#1 branch .. //depot/projects/wifi/sys/kern/uipc_mqueue.c#4 integrate .. //depot/projects/wifi/sys/kern/uipc_sem.c#10 integrate .. //depot/projects/wifi/sys/kern/uipc_socket.c#25 integrate .. //depot/projects/wifi/sys/kern/uipc_syscalls.c#19 integrate .. //depot/projects/wifi/sys/kern/uipc_usrreq.c#17 integrate .. //depot/projects/wifi/sys/kern/vfs_acl.c#1 branch .. //depot/projects/wifi/sys/kern/vfs_aio.c#16 integrate .. //depot/projects/wifi/sys/kern/vfs_bio.c#21 integrate .. //depot/projects/wifi/sys/kern/vfs_cache.c#10 integrate .. //depot/projects/wifi/sys/kern/vfs_cluster.c#17 integrate .. //depot/projects/wifi/sys/kern/vfs_default.c#24 integrate .. //depot/projects/wifi/sys/kern/vfs_export.c#11 integrate .. //depot/projects/wifi/sys/kern/vfs_init.c#9 integrate .. //depot/projects/wifi/sys/kern/vfs_lookup.c#19 integrate .. //depot/projects/wifi/sys/kern/vfs_mount.c#27 integrate .. //depot/projects/wifi/sys/kern/vfs_syscalls.c#19 integrate .. //depot/projects/wifi/sys/kern/vfs_vnops.c#20 integrate .. //depot/projects/wifi/sys/kern/vnode_if.src#13 integrate .. //depot/projects/wifi/sys/modules/Makefile#34 integrate .. //depot/projects/wifi/sys/modules/cd9660/Makefile#2 integrate .. //depot/projects/wifi/sys/modules/cd9660_iconv/Makefile#2 integrate .. //depot/projects/wifi/sys/modules/geom/Makefile#5 integrate .. //depot/projects/wifi/sys/modules/geom/geom_multipath/Makefile#1 branch .. //depot/projects/wifi/sys/modules/ip_mroute_mod/Makefile#3 integrate .. //depot/projects/wifi/sys/modules/ipwfw/Makefile#1 branch .. //depot/projects/wifi/sys/modules/ipwfw/ipw_bss/Makefile#1 branch .. //depot/projects/wifi/sys/modules/ipwfw/ipw_ibss/Makefile#1 branch .. //depot/projects/wifi/sys/modules/ipwfw/ipw_monitor/Makefile#1 branch .. //depot/projects/wifi/sys/modules/iwifw/Makefile#1 branch .. //depot/projects/wifi/sys/modules/iwifw/iwi_bss/Makefile#1 branch .. //depot/projects/wifi/sys/modules/iwifw/iwi_ibss/Makefile#1 branch .. //depot/projects/wifi/sys/modules/iwifw/iwi_monitor/Makefile#1 branch .. //depot/projects/wifi/sys/net/bpf.c#22 integrate .. //depot/projects/wifi/sys/net/bpf.h#7 integrate .. //depot/projects/wifi/sys/net/bpfdesc.h#8 integrate .. //depot/projects/wifi/sys/net/if.c#25 integrate .. //depot/projects/wifi/sys/net/if_bridge.c#12 integrate .. //depot/projects/wifi/sys/net/if_ethersubr.c#18 integrate .. //depot/projects/wifi/sys/net/if_loop.c#8 integrate .. //depot/projects/wifi/sys/net/if_ppp.c#12 integrate .. //depot/projects/wifi/sys/net/if_tap.c#15 integrate .. //depot/projects/wifi/sys/net/if_tun.c#12 integrate .. //depot/projects/wifi/sys/net/if_vlan_var.h#8 integrate .. //depot/projects/wifi/sys/netatalk/at_control.c#5 integrate .. //depot/projects/wifi/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#9 integrate .. //depot/projects/wifi/sys/netgraph/ng_ksocket.c#8 integrate .. //depot/projects/wifi/sys/netgraph/ng_source.c#9 integrate .. //depot/projects/wifi/sys/netgraph/ng_source.h#6 integrate .. //depot/projects/wifi/sys/netinet/in.h#10 integrate .. //depot/projects/wifi/sys/netinet/in_pcb.c#12 integrate .. //depot/projects/wifi/sys/netinet/in_pcb.h#7 integrate .. //depot/projects/wifi/sys/netinet/in_proto.c#9 integrate .. //depot/projects/wifi/sys/netinet/ip_fastfwd.c#15 integrate .. //depot/projects/wifi/sys/netinet/ip_mroute.c#9 integrate .. //depot/projects/wifi/sys/netinet/ip_mroute.h#5 integrate .. //depot/projects/wifi/sys/netinet/ip_output.c#16 integrate .. //depot/projects/wifi/sys/netinet/sctp_asconf.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_auth.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_auth.h#2 integrate .. //depot/projects/wifi/sys/netinet/sctp_constants.h#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_crc32.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_indata.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_input.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_os.h#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_os_bsd.h#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_output.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_pcb.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_peeloff.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_structs.h#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_timer.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_uio.h#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_usrreq.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctp_var.h#3 integrate .. //depot/projects/wifi/sys/netinet/sctputil.c#3 integrate .. //depot/projects/wifi/sys/netinet/sctputil.h#3 integrate .. //depot/projects/wifi/sys/netinet/tcp_input.c#20 integrate .. //depot/projects/wifi/sys/netinet/tcp_output.c#12 integrate .. //depot/projects/wifi/sys/netinet/tcp_subr.c#24 integrate .. //depot/projects/wifi/sys/netinet/tcp_timer.c#11 integrate .. //depot/projects/wifi/sys/netinet/tcp_timer.h#5 integrate .. //depot/projects/wifi/sys/netinet/tcp_usrreq.c#21 integrate .. //depot/projects/wifi/sys/netinet/tcp_var.h#15 integrate .. //depot/projects/wifi/sys/netinet/udp.h#3 integrate .. //depot/projects/wifi/sys/netinet/udp_usrreq.c#15 integrate .. //depot/projects/wifi/sys/netinet/udp_var.h#3 integrate .. //depot/projects/wifi/sys/netinet6/ah_core.c#7 integrate .. //depot/projects/wifi/sys/netinet6/icmp6.c#15 integrate .. //depot/projects/wifi/sys/netinet6/in6.c#11 integrate .. //depot/projects/wifi/sys/netinet6/in6_proto.c#9 integrate .. //depot/projects/wifi/sys/netinet6/ip6_input.c#10 integrate .. //depot/projects/wifi/sys/netinet6/ip6_mroute.c#10 integrate .. //depot/projects/wifi/sys/netinet6/ip6_mroute.h#5 integrate .. //depot/projects/wifi/sys/netinet6/ip6_var.h#9 integrate .. //depot/projects/wifi/sys/netinet6/raw_ip6.c#11 integrate .. //depot/projects/wifi/sys/netinet6/sctp6_usrreq.c#3 integrate .. //depot/projects/wifi/sys/netinet6/udp6_usrreq.c#8 integrate .. //depot/projects/wifi/sys/netipx/ipx_ip.c#7 integrate .. //depot/projects/wifi/sys/netipx/ipx_ip.h#5 integrate .. //depot/projects/wifi/sys/netncp/ncp_sock.c#5 integrate .. //depot/projects/wifi/sys/netsmb/smb_dev.c#7 integrate .. //depot/projects/wifi/sys/nfsclient/bootp_subr.c#7 integrate .. //depot/projects/wifi/sys/nfsclient/nfs_socket.c#18 integrate .. //depot/projects/wifi/sys/nfsserver/nfs_serv.c#11 integrate .. //depot/projects/wifi/sys/nfsserver/nfs_syscalls.c#7 integrate .. //depot/projects/wifi/sys/pc98/cbus/clock.c#6 integrate .. //depot/projects/wifi/sys/pc98/cbus/fdc.c#7 integrate .. //depot/projects/wifi/sys/pc98/cbus/olpt.c#3 integrate .. //depot/projects/wifi/sys/pc98/cbus/pckbd.c#4 integrate .. //depot/projects/wifi/sys/pc98/cbus/sio.c#7 integrate .. //depot/projects/wifi/sys/pc98/cbus/syscons_cbus.c#3 integrate .. //depot/projects/wifi/sys/pc98/conf/GENERIC#15 integrate .. //depot/projects/wifi/sys/pci/if_mn.c#5 integrate .. //depot/projects/wifi/sys/pci/if_pcn.c#15 integrate .. //depot/projects/wifi/sys/pci/if_rl.c#14 integrate .. //depot/projects/wifi/sys/pci/if_sf.c#14 integrate .. //depot/projects/wifi/sys/pci/if_sis.c#13 integrate .. //depot/projects/wifi/sys/pci/if_sisreg.h#6 integrate .. //depot/projects/wifi/sys/pci/if_ste.c#12 integrate .. //depot/projects/wifi/sys/pci/if_tl.c#12 integrate .. //depot/projects/wifi/sys/pci/if_vr.c#12 integrate .. //depot/projects/wifi/sys/pci/if_wb.c#12 integrate .. //depot/projects/wifi/sys/pci/if_xl.c#17 integrate .. //depot/projects/wifi/sys/pci/intpm.c#6 integrate .. //depot/projects/wifi/sys/pci/ncr.c#6 integrate .. //depot/projects/wifi/sys/powerpc/conf/DEFAULTS#5 integrate .. //depot/projects/wifi/sys/powerpc/conf/GENERIC#10 integrate .. //depot/projects/wifi/sys/powerpc/include/intr_machdep.h#4 integrate .. //depot/projects/wifi/sys/powerpc/include/openpicvar.h#3 integrate .. //depot/projects/wifi/sys/powerpc/powermac/hrowpic.c#4 integrate .. //depot/projects/wifi/sys/powerpc/powermac/pswitch.c#3 integrate .. //depot/projects/wifi/sys/powerpc/powerpc/cpu.c#5 integrate .. //depot/projects/wifi/sys/powerpc/powerpc/intr_machdep.c#4 integrate .. //depot/projects/wifi/sys/powerpc/powerpc/machdep.c#15 integrate .. //depot/projects/wifi/sys/powerpc/powerpc/openpic.c#4 integrate .. //depot/projects/wifi/sys/security/audit/audit.c#3 integrate .. //depot/projects/wifi/sys/security/audit/audit_arg.c#4 integrate .. //depot/projects/wifi/sys/security/audit/audit_syscalls.c#4 integrate .. //depot/projects/wifi/sys/security/mac/mac_framework.h#2 integrate .. //depot/projects/wifi/sys/security/mac/mac_inet.c#3 integrate .. //depot/projects/wifi/sys/security/mac/mac_internal.h#3 integrate .. //depot/projects/wifi/sys/security/mac/mac_label.c#3 integrate .. //depot/projects/wifi/sys/security/mac/mac_pipe.c#3 integrate .. //depot/projects/wifi/sys/security/mac/mac_policy.h#2 integrate .. //depot/projects/wifi/sys/security/mac/mac_posix_sem.c#3 integrate .. //depot/projects/wifi/sys/security/mac/mac_syscalls.c#2 integrate .. //depot/projects/wifi/sys/security/mac/mac_system.c#4 integrate .. //depot/projects/wifi/sys/security/mac/mac_sysv_msg.c#4 integrate .. //depot/projects/wifi/sys/security/mac/mac_sysv_sem.c#4 integrate .. //depot/projects/wifi/sys/security/mac/mac_sysv_shm.c#3 integrate .. //depot/projects/wifi/sys/security/mac/mac_vfs.c#8 integrate .. //depot/projects/wifi/sys/security/mac_biba/mac_biba.c#11 integrate .. //depot/projects/wifi/sys/security/mac_bsdextended/mac_bsdextended.c#7 integrate .. //depot/projects/wifi/sys/security/mac_ifoff/mac_ifoff.c#3 integrate .. //depot/projects/wifi/sys/security/mac_lomac/mac_lomac.c#8 integrate .. //depot/projects/wifi/sys/security/mac_mls/mac_mls.c#9 integrate .. //depot/projects/wifi/sys/security/mac_none/mac_none.c#4 integrate .. //depot/projects/wifi/sys/security/mac_partition/mac_partition.c#4 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Mar 5 23:00:27 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7E2FB16A406; Mon, 5 Mar 2007 23:00:27 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 4A84C16A403 for ; Mon, 5 Mar 2007 23:00:27 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 23B9813C4A5 for ; Mon, 5 Mar 2007 23:00:27 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25N0RNi069856 for ; Mon, 5 Mar 2007 23:00:27 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25N0QJY069853 for perforce@freebsd.org; Mon, 5 Mar 2007 23:00:26 GMT (envelope-from sam@freebsd.org) Date: Mon, 5 Mar 2007 23:00:26 GMT Message-Id: <200703052300.l25N0QJY069853@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 115380 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 23:00:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=115380 Change 115380 by sam@sam_ebb on 2007/03/05 23:00:07 add descriptions for ht+ and ht-; still not sure this is the right way to go but we can now set it from ifconfig Affected files ... .. //depot/projects/wifi/sys/net/if_media.h#8 edit Differences ... ==== //depot/projects/wifi/sys/net/if_media.h#8 (text+ko) ==== @@ -495,6 +495,8 @@ { IFM_IEEE80211_IBSSMASTER, "ibss-master" }, \ { IFM_IEEE80211_TURBO, "turbo" }, \ { IFM_IEEE80211_MONITOR, "monitor" }, \ + { IFM_IEEE80211_HT40MINUS, "ht-" }, \ + { IFM_IEEE80211_HT40PLUS, "ht+" }, \ { 0, NULL }, \ } From owner-p4-projects@FreeBSD.ORG Mon Mar 5 23:01:29 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3FE8116A404; Mon, 5 Mar 2007 23:01:29 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 05B2816A402 for ; Mon, 5 Mar 2007 23:01:29 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id EAA2713C467 for ; Mon, 5 Mar 2007 23:01:28 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25N1S4s070410 for ; Mon, 5 Mar 2007 23:01:28 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25N1SCK070403 for perforce@freebsd.org; Mon, 5 Mar 2007 23:01:28 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 23:01:28 GMT Message-Id: <200703052301.l25N1SCK070403@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115381 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 23:01:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=115381 Change 115381 by piso@piso_newluxor on 2007/03/05 23:01:11 Restore the sos's intendation style. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#7 edit .. //depot/projects/soc2006/intr_filter/dev/scc/scc_core.c#15 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#7 (text+ko) ==== @@ -339,12 +339,12 @@ int ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, - int flags, driver_filter_t *filter, driver_intr_t *function, - void *argument, void **cookiep) + int flags, driver_filter_t *filter, + driver_intr_t *function, void *argument, void **cookiep) { if (ata_legacy(dev)) { - return BUS_SETUP_INTR(device_get_parent(dev), child, irq, - flags, filter, function, argument, cookiep); + return BUS_SETUP_INTR(device_get_parent(dev), child, irq, + flags, filter, function, argument, cookiep); } else { struct ata_pci_controller *controller = device_get_softc(dev); ==== //depot/projects/soc2006/intr_filter/dev/scc/scc_core.c#15 (text) ==== @@ -535,8 +535,8 @@ if (device_get_parent(child) != dev) return (EINVAL); - /* Interrupt handlers must be FAST or MPSAFE. */ - if ((filter == NULL) && !(flags & INTR_MPSAFE)) + /* Interrupt handlers must be FILTER or MPSAFE. */ + if ((ihand != NULL) && !(flags & INTR_MPSAFE)) return (EINVAL); sc = device_get_softc(dev); From owner-p4-projects@FreeBSD.ORG Mon Mar 5 23:06:31 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A8F0B16A403; Mon, 5 Mar 2007 23:06:31 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 4483616A400; Mon, 5 Mar 2007 23:06:31 +0000 (UTC) (envelope-from piso@newluxor.wired.org) Received: from mail.oltrelinux.com (krisma.oltrelinux.com [194.242.226.43]) by mx1.freebsd.org (Postfix) with ESMTP id 0423113C478; Mon, 5 Mar 2007 23:06:30 +0000 (UTC) (envelope-from piso@newluxor.wired.org) Received: from newluxor.wired.org (ip-115-132.sn1.eutelia.it [62.94.115.132]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.oltrelinux.com (Postfix) with ESMTP id E8B1211AE49; Tue, 6 Mar 2007 00:06:28 +0100 (CET) Received: (from piso@localhost) by newluxor.wired.org (8.13.8/8.13.8/Submit) id l25N6Cxb002600; Tue, 6 Mar 2007 00:06:12 +0100 (CET) (envelope-from piso) Date: Tue, 6 Mar 2007 00:06:05 +0100 From: Paolo Pisati To: Paolo Pisati Message-ID: <20070305230605.GA2510@tin.it> References: <200703052301.l25N1SCK070403@repoman.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200703052301.l25N1SCK070403@repoman.freebsd.org> User-Agent: Mutt/1.4.2.2i X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at krisma.oltrelinux.com Cc: Perforce Change Reviews Subject: Re: PERFORCE change 115381 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 23:06:32 -0000 On Mon, Mar 05, 2007 at 11:01:28PM +0000, Paolo Pisati wrote: > http://perforce.freebsd.org/chv.cgi?CH=115381 > > Change 115381 by piso@piso_newluxor on 2007/03/05 23:01:11 > > Restore the sos's intendation style. > > Affected files ... > > .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#7 edit > .. //depot/projects/soc2006/intr_filter/dev/scc/scc_core.c#15 edit > > Differences ... > [snip] > ==== //depot/projects/soc2006/intr_filter/dev/scc/scc_core.c#15 (text) ==== > > @@ -535,8 +535,8 @@ > if (device_get_parent(child) != dev) > return (EINVAL); > > - /* Interrupt handlers must be FAST or MPSAFE. */ > - if ((filter == NULL) && !(flags & INTR_MPSAFE)) > + /* Interrupt handlers must be FILTER or MPSAFE. */ > + if ((ihand != NULL) && !(flags & INTR_MPSAFE)) > return (EINVAL); > > sc = device_get_softc(dev); This should be: o properly check for FILTER or MPSAFE handler. bye, P. From owner-p4-projects@FreeBSD.ORG Mon Mar 5 23:10:41 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EE48616A402; Mon, 5 Mar 2007 23:10:40 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C3A2F16A400 for ; Mon, 5 Mar 2007 23:10:40 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id B503D13C4B4 for ; Mon, 5 Mar 2007 23:10:40 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25NAeuN072508 for ; Mon, 5 Mar 2007 23:10:40 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25NAecP072505 for perforce@freebsd.org; Mon, 5 Mar 2007 23:10:40 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 23:10:40 GMT Message-Id: <200703052310.l25NAecP072505@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115382 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 23:10:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=115382 Change 115382 by piso@piso_newluxor on 2007/03/05 23:10:34 Add a comment to recall i should talk with Marcel about the logic in scc_bfe_filter(). Affected files ... .. //depot/projects/soc2006/intr_filter/dev/scc/scc_core.c#16 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/scc/scc_core.c#16 (text) ==== @@ -108,6 +108,9 @@ // XXX one returns HANDLED | SCHEDULE_THREAD? // XXX what i'm supposed to do? for now, just OR all // XXX the return values. + // XXX i hope to have a chat with Marcel + // XXX about the logic of this wrapper... + m->m_hasihand = 0; if (m->ihf != NULL) { res |= (*m->ihf)(m->ih_arg); From owner-p4-projects@FreeBSD.ORG Mon Mar 5 23:30:06 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1234916A407; Mon, 5 Mar 2007 23:30:06 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id DBFC316A405 for ; Mon, 5 Mar 2007 23:30:05 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id CCA6813C494 for ; Mon, 5 Mar 2007 23:30:05 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l25NU5Xe077178 for ; Mon, 5 Mar 2007 23:30:05 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l25NU5T5077174 for perforce@freebsd.org; Mon, 5 Mar 2007 23:30:05 GMT (envelope-from piso@freebsd.org) Date: Mon, 5 Mar 2007 23:30:05 GMT Message-Id: <200703052330.l25NU5T5077174@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115383 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Mar 2007 23:30:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=115383 Change 115383 by piso@piso_newluxor on 2007/03/05 23:29:17 Wrap at 80 upa_setup_intr(). Affected files ... .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/upa.c#6 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/upa.c#6 (text+ko) ==== @@ -427,8 +427,8 @@ UPA_WRITE(sc, imr, 0x0, intrmap & ~INTMAP_V); (void)UPA_READ(sc, imr, 0x0); - error = bus_generic_setup_intr(dev, child, ires, flags, filt, func, arg, - cookiep); + error = bus_generic_setup_intr(dev, child, ires, flags, filt, + func, arg, cookiep); if (error != 0) return (error); UPA_WRITE(sc, imr, 0x0, INTMAP_ENABLE(intrmap, PCPU_GET(mid))); From owner-p4-projects@FreeBSD.ORG Tue Mar 6 09:45:50 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B57B516A401; Tue, 6 Mar 2007 09:45:49 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 665AA16A403 for ; Tue, 6 Mar 2007 09:45:49 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 54DA313C428 for ; Tue, 6 Mar 2007 09:45:49 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l269jnRv016326 for ; Tue, 6 Mar 2007 09:45:49 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l269jlgj016323 for perforce@freebsd.org; Tue, 6 Mar 2007 09:45:47 GMT (envelope-from piso@freebsd.org) Date: Tue, 6 Mar 2007 09:45:47 GMT Message-Id: <200703060945.l269jlgj016323@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115401 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 09:45:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=115401 Change 115401 by piso@piso_newluxor on 2007/03/06 09:45:07 IFC@115399 Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/acpica/madt.c#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/io_apic.c#4 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/local_apic.c#7 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/mp_machdep.c#6 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/mptable.c#2 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#12 integrate .. //depot/projects/soc2006/intr_filter/amd64/include/apicvar.h#5 integrate .. //depot/projects/soc2006/intr_filter/arm/xscale/ixp425/ixp425_npe.c#3 integrate .. //depot/projects/soc2006/intr_filter/compat/linux/linux_stats.c#5 integrate .. //depot/projects/soc2006/intr_filter/conf/files#15 integrate .. //depot/projects/soc2006/intr_filter/dev/acpica/acpi_thermal.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/arcmsr/arcmsr.c#8 integrate .. //depot/projects/soc2006/intr_filter/dev/arcmsr/arcmsr.h#4 integrate .. //depot/projects/soc2006/intr_filter/dev/ath/if_ath.c#13 integrate .. //depot/projects/soc2006/intr_filter/dev/ath/if_athvar.h#11 integrate .. //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb.c#14 integrate .. //depot/projects/soc2006/intr_filter/dev/pci/pci.c#11 integrate .. //depot/projects/soc2006/intr_filter/dev/pci/pcireg.h#7 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/envy24.c#6 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pcm/ac97.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/sym/sym_hipd.c#5 integrate .. //depot/projects/soc2006/intr_filter/geom/eli/g_eli_ctl.c#4 integrate .. //depot/projects/soc2006/intr_filter/i386/acpica/madt.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/io_apic.c#4 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/local_apic.c#7 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/machdep.c#11 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/mp_machdep.c#6 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/mptable.c#2 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/nexus.c#7 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/pmap.c#11 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/vm_machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/include/apicvar.h#5 integrate .. //depot/projects/soc2006/intr_filter/i386/isa/clock.c#12 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_acl.c#6 delete .. //depot/projects/soc2006/intr_filter/kern/kern_alq.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_context.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_descrip.c#11 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_environment.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_exec.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_exit.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_ktrace.c#9 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_ntptime.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_prot.c#7 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_resource.c#10 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_sig.c#9 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_synch.c#8 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_sysctl.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_time.c#8 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_umtx.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_uuid.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_xxx.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/p1003_1b.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/sys_generic.c#7 integrate .. //depot/projects/soc2006/intr_filter/kern/sys_pipe.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/sysv_msg.c#9 integrate .. //depot/projects/soc2006/intr_filter/kern/sysv_sem.c#9 integrate .. //depot/projects/soc2006/intr_filter/kern/sysv_shm.c#7 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_mqueue.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_sem.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/uipc_syscalls.c#10 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_acl.c#1 branch .. //depot/projects/soc2006/intr_filter/kern/vfs_aio.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_cache.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_cluster.c#4 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_mount.c#7 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_syscalls.c#8 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_ioctl.c#6 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_var.h#6 integrate .. //depot/projects/soc2006/intr_filter/nfsserver/nfs_syscalls.c#6 integrate .. //depot/projects/soc2006/intr_filter/sys/extattr.h#5 integrate .. //depot/projects/soc2006/intr_filter/ufs/ufs/extattr.h#2 integrate .. //depot/projects/soc2006/intr_filter/vm/vm_fault.c#7 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/acpica/madt.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.21 2006/08/11 19:22:55 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.22 2007/03/05 20:35:16 jhb Exp $"); #include #include @@ -336,7 +336,7 @@ { madt = pmap_mapbios(madt_physaddr, madt_length); - lapic_init((uintptr_t)madt->LocalApicAddress); + lapic_init(madt->LocalApicAddress); printf("ACPI APIC Table: <%.*s %.*s>\n", (int)sizeof(madt->OemId), madt->OemId, (int)sizeof(madt->OemTableId), madt->OemTableId); @@ -482,9 +482,8 @@ if (ioapics[apic->IoApicId].io_apic != NULL) panic("%s: Double APIC ID %d", __func__, apic->IoApicId); - ioapics[apic->IoApicId].io_apic = ioapic_create( - (uintptr_t)apic->Address, apic->IoApicId, - apic->Interrupt); + ioapics[apic->IoApicId].io_apic = ioapic_create(apic->Address, + apic->IoApicId, apic->Interrupt); ioapics[apic->IoApicId].io_vector = apic->Interrupt; break; default: ==== //depot/projects/soc2006/intr_filter/amd64/amd64/io_apic.c#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.26 2006/11/17 16:41:03 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.28 2007/03/05 20:35:16 jhb Exp $"); #include "opt_isa.h" @@ -36,11 +36,15 @@ #include #include #include +#include #include -#include +#include #include #include +#include +#include + #include #include @@ -428,7 +432,7 @@ * Create a plain I/O APIC object. */ void * -ioapic_create(uintptr_t addr, int32_t apic_id, int intbase) +ioapic_create(vm_paddr_t addr, int32_t apic_id, int intbase) { struct ioapic *io; struct ioapic_intsrc *intpin; @@ -727,3 +731,46 @@ if (pin->io_irq < NUM_IO_INTS) intr_register_source(&pin->io_intsrc); } + +/* A simple new-bus driver to consume PCI I/O APIC devices. */ +static int +ioapic_pci_probe(device_t dev) +{ + + if (pci_get_class(dev) == PCIC_BASEPERIPH && + pci_get_subclass(dev) == PCIS_BASEPERIPH_PIC) { + switch (pci_get_progif(dev)) { + case PCIP_BASEPERIPH_PIC_IO_APIC: + device_set_desc(dev, "IO APIC"); + break; + case PCIP_BASEPERIPH_PIC_IOX_APIC: + device_set_desc(dev, "IO(x) APIC"); + break; + default: + return (ENXIO); + } + device_quiet(dev); + return (-10000); + } + return (ENXIO); +} + +static int +ioapic_pci_attach(device_t dev) +{ + + return (0); +} + +static device_method_t ioapic_pci_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, ioapic_pci_probe), + DEVMETHOD(device_attach, ioapic_pci_attach), + + { 0, 0 } +}; + +DEFINE_CLASS_0(ioapic, ioapic_pci_driver, ioapic_pci_methods, 0); + +static devclass_t ioapic_devclass; +DRIVER_MODULE(ioapic, pci, ioapic_pci_driver, ioapic_devclass, 0, 0); ==== //depot/projects/soc2006/intr_filter/amd64/amd64/local_apic.c#7 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.34 2006/12/17 06:48:39 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.35 2007/03/05 20:35:16 jhb Exp $"); #include "opt_hwpmc_hooks.h" @@ -205,7 +205,7 @@ * Map the local APIC and setup necessary interrupt vectors. */ void -lapic_init(uintptr_t addr) +lapic_init(vm_paddr_t addr) { /* Map the local APIC and setup the spurious interrupt handler. */ ==== //depot/projects/soc2006/intr_filter/amd64/amd64/mp_machdep.c#6 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.281 2007/02/08 16:49:58 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.282 2007/03/05 21:40:10 alc Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -835,13 +835,16 @@ ncpu = mp_ncpus - 1; /* does not shootdown self */ if (ncpu < 1) return; /* no other cpus */ - mtx_assert(&smp_ipi_mtx, MA_OWNED); + if (!(read_rflags() & PSL_I)) + panic("%s: interrupts disabled", __func__); + mtx_lock_spin(&smp_ipi_mtx); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); ipi_all_but_self(vector); while (smp_tlb_wait < ncpu) ia32_pause(); + mtx_unlock_spin(&smp_ipi_mtx); } static void @@ -869,7 +872,9 @@ if (ncpu < 1) return; } - mtx_assert(&smp_ipi_mtx, MA_OWNED); + if (!(read_rflags() & PSL_I)) + panic("%s: interrupts disabled", __func__); + mtx_lock_spin(&smp_ipi_mtx); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); @@ -879,6 +884,7 @@ ipi_selected(mask, vector); while (smp_tlb_wait < ncpu) ia32_pause(); + mtx_unlock_spin(&smp_ipi_mtx); } void ==== //depot/projects/soc2006/intr_filter/amd64/amd64/mptable.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.237 2005/10/31 15:41:17 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.238 2007/03/05 20:35:16 jhb Exp $"); #include #include @@ -323,7 +323,7 @@ lapic_init(DEFAULT_APIC_BASE); printf("Default Configuration %d", mpfps->config_type); } else { - lapic_init((uintptr_t)mpct->apic_address); + lapic_init(mpct->apic_address); printf("%.*s %.*s", (int)sizeof(mpct->oem_id), mpct->oem_id, (int)sizeof(mpct->product_id), mpct->product_id); } @@ -514,8 +514,8 @@ if (ioapics[apic->apic_id] != NULL) panic("%s: Double APIC ID %d", __func__, apic->apic_id); - ioapics[apic->apic_id] = ioapic_create( - (uintptr_t)apic->apic_address, apic->apic_id, -1); + ioapics[apic->apic_id] = ioapic_create(apic->apic_address, + apic->apic_id, -1); break; default: break; ==== //depot/projects/soc2006/intr_filter/amd64/amd64/pmap.c#12 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.579 2007/02/19 10:55:16 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.580 2007/03/05 21:40:10 alc Exp $"); /* * Manages physical address maps. @@ -752,18 +752,7 @@ u_int cpumask; u_int other_cpus; - if (smp_started) { - if (!(read_rflags() & PSL_I)) - panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_ipi_mtx); - } else - critical_enter(); - /* - * We need to disable interrupt preemption but MUST NOT have - * interrupts disabled here. - * XXX we may need to hold schedlock to get a coherent pm_active - * XXX critical sections disable interrupts again - */ + sched_pin(); if (pmap == kernel_pmap || pmap->pm_active == all_cpus) { invlpg(va); smp_invlpg(va); @@ -775,10 +764,7 @@ if (pmap->pm_active & other_cpus) smp_masked_invlpg(pmap->pm_active & other_cpus, va); } - if (smp_started) - mtx_unlock_spin(&smp_ipi_mtx); - else - critical_exit(); + sched_unpin(); } void @@ -788,18 +774,7 @@ u_int other_cpus; vm_offset_t addr; - if (smp_started) { - if (!(read_rflags() & PSL_I)) - panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_ipi_mtx); - } else - critical_enter(); - /* - * We need to disable interrupt preemption but MUST NOT have - * interrupts disabled here. - * XXX we may need to hold schedlock to get a coherent pm_active - * XXX critical sections disable interrupts again - */ + sched_pin(); if (pmap == kernel_pmap || pmap->pm_active == all_cpus) { for (addr = sva; addr < eva; addr += PAGE_SIZE) invlpg(addr); @@ -814,10 +789,7 @@ smp_masked_invlpg_range(pmap->pm_active & other_cpus, sva, eva); } - if (smp_started) - mtx_unlock_spin(&smp_ipi_mtx); - else - critical_exit(); + sched_unpin(); } void @@ -826,18 +798,7 @@ u_int cpumask; u_int other_cpus; - if (smp_started) { - if (!(read_rflags() & PSL_I)) - panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_ipi_mtx); - } else - critical_enter(); - /* - * We need to disable interrupt preemption but MUST NOT have - * interrupts disabled here. - * XXX we may need to hold schedlock to get a coherent pm_active - * XXX critical sections disable interrupts again - */ + sched_pin(); if (pmap == kernel_pmap || pmap->pm_active == all_cpus) { invltlb(); smp_invltlb(); @@ -849,34 +810,17 @@ if (pmap->pm_active & other_cpus) smp_masked_invltlb(pmap->pm_active & other_cpus); } - if (smp_started) - mtx_unlock_spin(&smp_ipi_mtx); - else - critical_exit(); + sched_unpin(); } void pmap_invalidate_cache(void) { - if (smp_started) { - if (!(read_rflags() & PSL_I)) - panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_ipi_mtx); - } else - critical_enter(); - /* - * We need to disable interrupt preemption but MUST NOT have - * interrupts disabled here. - * XXX we may need to hold schedlock to get a coherent pm_active - * XXX critical sections disable interrupts again - */ + sched_pin(); wbinvd(); smp_cache_flush(); - if (smp_started) - mtx_unlock_spin(&smp_ipi_mtx); - else - critical_exit(); + sched_unpin(); } #else /* !SMP */ /* ==== //depot/projects/soc2006/intr_filter/amd64/include/apicvar.h#5 (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/amd64/include/apicvar.h,v 1.21 2006/12/17 06:48:40 kmacy Exp $ + * $FreeBSD: src/sys/amd64/include/apicvar.h,v 1.22 2007/03/05 20:35:16 jhb Exp $ */ #ifndef _MACHINE_APICVAR_H_ @@ -180,7 +180,7 @@ void apic_free_vector(u_int vector, u_int irq); u_int apic_idt_to_irq(u_int vector); void apic_register_enumerator(struct apic_enumerator *enumerator); -void *ioapic_create(uintptr_t addr, int32_t id, int intbase); +void *ioapic_create(vm_paddr_t addr, int32_t apic_id, int intbase); int ioapic_disable_pin(void *cookie, u_int pin); int ioapic_get_vector(void *cookie, u_int pin); void ioapic_register(void *cookie); @@ -197,7 +197,7 @@ void lapic_dump(const char *str); void lapic_eoi(void); int lapic_id(void); -void lapic_init(uintptr_t addr); +void lapic_init(vm_paddr_t addr); int lapic_intr_pending(u_int vector); void lapic_ipi_raw(register_t icrlo, u_int dest); void lapic_ipi_vectored(u_int vector, int dest); ==== //depot/projects/soc2006/intr_filter/arm/xscale/ixp425/ixp425_npe.c#3 (text+ko) ==== @@ -57,7 +57,7 @@ * SUCH DAMAGE. */ #include -__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425_npe.c,v 1.3 2007/02/23 12:18:28 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425_npe.c,v 1.5 2007/03/06 01:15:28 kevlo Exp $"); /* * Intel XScale Network Processing Engine (NPE) support. ==== //depot/projects/soc2006/intr_filter/compat/linux/linux_stats.c#5 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.86 2006/12/04 22:38:52 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.87 2007/03/06 07:39:12 rwatson Exp $"); #include "opt_compat.h" #include "opt_mac.h" @@ -118,7 +118,6 @@ { struct proc *p = td->td_proc; struct filedesc *fdp = p->p_fd; - struct file *fp; int fd; int temp; @@ -130,9 +129,6 @@ fd = td->td_retval[0]; td->td_retval[0] = temp; translate_fd_major_minor(td, fd, buf); - FILEDESC_LOCK(fdp); - fp = fdp->fd_ofiles[fd]; - FILEDESC_UNLOCK(fdp); fdclose(fdp, fdp->fd_ofiles[fd], fd, td); } ==== //depot/projects/soc2006/intr_filter/conf/files#15 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1180 2007/02/27 04:01:57 mjacob Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1181 2007/03/05 13:24:01 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1325,7 +1325,6 @@ kern/init_sysent.c standard kern/ksched.c optional _kposix_priority_scheduling kern/kern_acct.c standard -kern/kern_acl.c standard kern/kern_alq.c optional alq kern/kern_clock.c standard kern/kern_condvar.c standard @@ -1455,6 +1454,7 @@ kern/uipc_socket2.c standard kern/uipc_syscalls.c standard kern/uipc_usrreq.c standard +kern/vfs_acl.c standard kern/vfs_aio.c optional vfs_aio kern/vfs_bio.c standard kern/vfs_cache.c standard ==== //depot/projects/soc2006/intr_filter/dev/acpica/acpi_thermal.c#5 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_thermal.c,v 1.63 2006/09/03 15:10:04 ume Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_thermal.c,v 1.64 2007/03/05 21:39:53 njl Exp $"); #include "opt_acpi.h" #include @@ -434,10 +434,12 @@ { int temp; ACPI_STATUS status; + static char *tmp_name = "_TMP"; ACPI_FUNCTION_NAME ("acpi_tz_get_temperature"); - status = acpi_GetInteger(sc->tz_handle, "_TMP", &temp); + /* Evaluate the thermal zone's _TMP method. */ + status = acpi_GetInteger(sc->tz_handle, tmp_name, &temp); if (ACPI_FAILURE(status)) { ACPI_VPRINT(sc->tz_dev, acpi_device_get_parent_softc(sc->tz_dev), "error fetching current temperature -- %s\n", @@ -445,6 +447,11 @@ return (FALSE); } + /* Check it for validity. */ + acpi_tz_sanity(sc, &temp, tmp_name); + if (temp == -1) + return (FALSE); + ACPI_DEBUG_PRINT((ACPI_DB_VALUES, "got %d.%dC\n", TZ_KELVTOC(temp))); sc->tz_temperature = temp; return (TRUE); @@ -646,12 +653,12 @@ /* * Sanity-check a temperature value. Assume that setpoints - * should be between 0C and 150C. + * should be between 0C and 200C. */ static void acpi_tz_sanity(struct acpi_tz_softc *sc, int *val, char *what) { - if (*val != -1 && (*val < TZ_ZEROC || *val > TZ_ZEROC + 1500)) { + if (*val != -1 && (*val < TZ_ZEROC || *val > TZ_ZEROC + 2000)) { device_printf(sc->tz_dev, "%s value is absurd, ignored (%d.%dC)\n", what, TZ_KELVTOC(*val)); *val = -1; ==== //depot/projects/soc2006/intr_filter/dev/arcmsr/arcmsr.c#8 (text+ko) ==== @@ -56,7 +56,7 @@ ** and cause g_vfs_done() read write error ****************************************************************************************** -* $FreeBSD: src/sys/dev/arcmsr/arcmsr.c,v 1.17 2007/02/23 12:18:31 piso Exp $ +* $FreeBSD: src/sys/dev/arcmsr/arcmsr.c,v 1.18 2007/03/06 01:12:15 scottl Exp $ */ #include #include @@ -417,7 +417,12 @@ } ARCMSR_LOCK_ACQUIRE(&acb->workingQ_done_lock); if(stand_flag==1) { - atomic_subtract_int(&acb->srboutstandingcount, 1); + atomic_subtract_int(&acb->srboutstandingcount, 1); + if((acb->acb_flags & ACB_F_CAM_DEV_QFRZN) && ( + acb->srboutstandingcount < ARCMSR_RELEASE_SIMQ_LEVEL)) { + acb->acb_flags &= ~ACB_F_CAM_DEV_QFRZN; + pccb->ccb_h.status |= CAM_RELEASE_SIMQ; + } } srb->startdone=ARCMSR_SRB_DONE; srb->srb_flags=0; @@ -1303,7 +1308,8 @@ pccb->ccb_h.status |= CAM_SIM_QUEUED; if(acb->srboutstandingcount >= ARCMSR_MAX_OUTSTANDING_CMD) { pccb->ccb_h.status &= ~CAM_STATUS_MASK; - pccb->ccb_h.status |= CAM_REQUEUE_REQ; + pccb->ccb_h.status |= (CAM_REQUEUE_REQ|CAM_DEV_QFRZN); + acb->acb_flags |= ACB_F_CAM_DEV_QFRZN; arcmsr_srb_complete(srb, 0); return; } ==== //depot/projects/soc2006/intr_filter/dev/arcmsr/arcmsr.h#4 (text+ko) ==== @@ -35,7 +35,7 @@ **(INCLUDING NEGLIGENCE OR OTHERWISE)ARISING IN ANY WAY OUT OF THE USE OF ** THIS SOFTWARE,EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ************************************************************************** -* $FreeBSD: src/sys/dev/arcmsr/arcmsr.h,v 1.3 2007/02/15 15:36:15 scottl Exp $ +* $FreeBSD: src/sys/dev/arcmsr/arcmsr.h,v 1.4 2007/03/06 01:12:15 scottl Exp $ */ #define ARCMSR_DRIVER_VERSION "Driver Version 1.20.00.14 2007-2-05" #define ARCMSR_SCSI_INITIATOR_ID 255 @@ -51,6 +51,7 @@ #define ARCMSR_MAX_QBUFFER 4096 /* ioctl QBUFFER */ #define ARCMSR_MAX_SG_ENTRIES 38 /* max 38*/ #define ARCMSR_MAX_ADAPTER 4 +#define ARCMSR_RELEASE_SIMQ_LEVEL 230 /* ********************************************************************* */ @@ -509,6 +510,7 @@ #define ACB_F_BUS_RESET 0x0080 #define ACB_F_IOP_INITED 0x0100 /* iop init */ #define ACB_F_MAPFREESRB_FAILD 0x0200 /* arcmsr_map_freesrb faild */ +#define ACB_F_CAM_DEV_QFRZN 0x0400 struct CommandControlBlock * psrb_pool[ARCMSR_MAX_FREESRB_NUM]; /* serial srb pointer array */ struct CommandControlBlock * srbworkingQ[ARCMSR_MAX_FREESRB_NUM]; /* working srb pointer array */ ==== //depot/projects/soc2006/intr_filter/dev/ath/if_ath.c#13 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.162 2007/02/24 23:23:29 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.164 2007/03/05 21:56:33 sam Exp $"); /* * Driver for the Atheros Wireless LAN controller. @@ -414,7 +414,8 @@ error = EIO; goto bad2; } - ath_txq_init(sc, &sc->sc_mcastq, -1); /* NB: s/w q, qnum not used */ + /* NB: s/w q, qnum used only by WITNESS */ + ath_txq_init(sc, &sc->sc_mcastq, HAL_NUM_TX_QUEUES+1); /* NB: insure BK queue is the lowest priority h/w queue */ if (!ath_tx_setup(sc, WME_AC_BK, HAL_WME_AC_BK)) { if_printf(ifp, "unable to setup xmit queue for %s traffic!\n", @@ -3170,6 +3171,11 @@ if (ngood) sc->sc_lastrx = tsf; + /* NB: may want to check mgtq too */ + if ((ifp->if_drv_flags & IFF_DRV_OACTIVE) == 0 && + !IFQ_IS_EMPTY(&ifp->if_snd)) + ath_start(ifp); + NET_UNLOCK_GIANT(); /* XXX */ #undef PA2DESC } ==== //depot/projects/soc2006/intr_filter/dev/ath/if_athvar.h#11 (text+ko) ==== @@ -33,7 +33,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.59 2007/02/24 23:12:58 sam Exp $ + * $FreeBSD: src/sys/dev/ath/if_athvar.h,v 1.60 2007/03/05 21:56:33 sam Exp $ */ /* @@ -150,7 +150,7 @@ #define ATH_TXQ_LOCK_INIT(_sc, _tq) do { \ snprintf((_tq)->axq_name, sizeof((_tq)->axq_name), "%s_txq%u", \ device_get_nameunit((_sc)->sc_dev), (_tq)->axq_qnum); \ - mtx_init(&(_tq)->axq_lock, (_tq)->axq_name, "ath_txq", MTX_DEF); \ + mtx_init(&(_tq)->axq_lock, (_tq)->axq_name, NULL, MTX_DEF); \ } while (0) #define ATH_TXQ_LOCK_DESTROY(_tq) mtx_destroy(&(_tq)->axq_lock) #define ATH_TXQ_LOCK(_tq) mtx_lock(&(_tq)->axq_lock) @@ -306,7 +306,7 @@ #define ATH_LOCK_INIT(_sc) \ mtx_init(&(_sc)->sc_mtx, device_get_nameunit((_sc)->sc_dev), \ - MTX_NETWORK_LOCK, MTX_DEF | MTX_RECURSE) + NULL, MTX_DEF | MTX_RECURSE) #define ATH_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->sc_mtx) #define ATH_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) #define ATH_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) @@ -317,7 +317,7 @@ #define ATH_TXBUF_LOCK_INIT(_sc) do { \ snprintf((_sc)->sc_txname, sizeof((_sc)->sc_txname), "%s_buf", \ device_get_nameunit((_sc)->sc_dev)); \ - mtx_init(&(_sc)->sc_txbuflock, (_sc)->sc_txname, "ath_buf", MTX_DEF); \ + mtx_init(&(_sc)->sc_txbuflock, (_sc)->sc_txname, NULL, MTX_DEF); \ } while (0) #define ATH_TXBUF_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->sc_txbuflock) #define ATH_TXBUF_LOCK(_sc) mtx_lock(&(_sc)->sc_txbuflock) ==== //depot/projects/soc2006/intr_filter/dev/pccbb/pccbb.c#14 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.157 2007/03/04 19:33:12 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.158 2007/03/05 05:40:24 imp Exp $"); #include #include @@ -1239,7 +1239,7 @@ DPRINTF(("cbb_pcic_socket_disable\n")); - /* Turn off the card's interrupt and leave it in reset */ + /* Turn off the card's interrupt and leave it in reset, wait 10ms */ exca_putb(&sc->exca[0], EXCA_INTR, 0); pause("cbbP1", hz / 100); @@ -1248,7 +1248,7 @@ exca_putb(&sc->exca[0], EXCA_PWRCTL, 0); /* wait 300ms until power fails (Tpf). */ - pause("cbbP1", hz * 300 / 1000); + pause("cbbP2", hz * 300 / 1000); /* enable CSC interrupts */ exca_putb(&sc->exca[0], EXCA_INTR, EXCA_INTR_ENABLE); ==== //depot/projects/soc2006/intr_filter/dev/pci/pci.c#11 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/pci/pci.c,v 1.343 2007/02/17 16:56:39 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/pci/pci.c,v 1.344 2007/03/05 16:21:59 jhb Exp $"); #include "opt_bus.h" @@ -327,7 +327,7 @@ 0, 0, }; - return maptype[mapreg & 0x0f]; + return (maptype[mapreg & 0x0f]); } /* return log2 of map size decoded for memory or port map */ @@ -624,11 +624,11 @@ KASSERT((reg & 3) == 0, ("VPD register must by 4 byte aligned")); - WREG(cfg->vpd.vpd_reg + 2, reg, 2); - while ((REG(cfg->vpd.vpd_reg + 2, 2) & 0x8000) != 0x8000) + WREG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, reg, 2); + while ((REG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, 2) & 0x8000) != 0x8000) DELAY(1); /* limit looping */ - return REG(cfg->vpd.vpd_reg + 4, 4); + return (REG(cfg->vpd.vpd_reg + PCIR_VPD_DATA, 4)); } #if 0 @@ -637,9 +637,9 @@ { KASSERT((reg & 3) == 0, ("VPD register must by 4 byte aligned")); - WREG(cfg->vpd.vpd_reg + 4, data, 4); - WREG(cfg->vpd.vpd_reg + 2, reg | 0x8000, 2); - while ((REG(cfg->vpd.vpd_reg + 2, 2) & 0x8000) == 0x8000) + WREG(cfg->vpd.vpd_reg + PCIR_VPD_DATA, data, 4); + WREG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, reg | 0x8000, 2); + while ((REG(cfg->vpd.vpd_reg + PCIR_VPD_ADDR, 2) & 0x8000) == 0x8000) DELAY(1); /* limit looping */ return; @@ -673,7 +673,7 @@ } vrs->cksum += byte; - return byte; + return (byte); } static void @@ -918,9 +918,9 @@ *identptr = cfg->vpd.vpd_ident; if (*identptr == NULL) - return ENXIO; + return (ENXIO); - return 0; + return (0); } int @@ -938,10 +938,10 @@ } if (i != cfg->vpd.vpd_rocnt) - return 0; + return (0); *vptr = NULL; - return ENXIO; + return (ENXIO); } /* @@ -3070,7 +3070,7 @@ if ((flags & RF_ACTIVE) && bus_generic_activate_resource(dev, child, type, *rid, rle->res) != 0) - return NULL; + return (NULL); return (rle->res); } } ==== //depot/projects/soc2006/intr_filter/dev/pci/pcireg.h#7 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/pci/pcireg.h,v 1.58 2007/02/02 19:48:25 jhb Exp $ + * $FreeBSD: src/sys/dev/pci/pcireg.h,v 1.59 2007/03/05 16:18:31 jhb Exp $ * */ @@ -252,7 +252,13 @@ #define PCIC_SIMPLECOMM 0x07 #define PCIS_SIMPLECOMM_UART 0x00 +#define PCIP_SIMPLECOMM_UART_8250 0x00 +#define PCIP_SIMPLECOMM_UART_16450A 0x01 #define PCIP_SIMPLECOMM_UART_16550A 0x02 +#define PCIP_SIMPLECOMM_UART_16650A 0x03 +#define PCIP_SIMPLECOMM_UART_16750A 0x04 +#define PCIP_SIMPLECOMM_UART_16850A 0x05 +#define PCIP_SIMPLECOMM_UART_16950A 0x06 #define PCIS_SIMPLECOMM_PAR 0x01 #define PCIS_SIMPLECOMM_MULSER 0x02 #define PCIS_SIMPLECOMM_MODEM 0x03 @@ -260,6 +266,11 @@ #define PCIC_BASEPERIPH 0x08 #define PCIS_BASEPERIPH_PIC 0x00 +#define PCIP_BASEPERIPH_PIC_8259A 0x00 +#define PCIP_BASEPERIPH_PIC_ISA 0x01 +#define PCIP_BASEPERIPH_PIC_EISA 0x02 +#define PCIP_BASEPERIPH_PIC_IO_APIC 0x10 +#define PCIP_BASEPERIPH_PIC_IOX_APIC 0x20 #define PCIS_BASEPERIPH_DMA 0x01 #define PCIS_BASEPERIPH_TIMER 0x02 #define PCIS_BASEPERIPH_RTC 0x03 @@ -339,7 +350,6 @@ #define PCIB_BCR_DISCARD_TIMER_SERREN 0x0800 /* PCI power manangement */ - #define PCIR_POWER_CAP 0x2 #define PCIM_PCAP_SPEC 0x0007 #define PCIM_PCAP_PMEREQCLK 0x0008 @@ -386,6 +396,10 @@ #define PCIR_POWER_DATA 0x7 +/* VPD capability registers */ +#define PCIR_VPD_ADDR 0x2 +#define PCIR_VPD_DATA 0x4 + /* PCI Message Signalled Interrupts (MSI) */ #define PCIR_MSI_CTRL 0x2 #define PCIM_MSICTRL_VECTOR 0x0100 ==== //depot/projects/soc2006/intr_filter/dev/sound/pci/envy24.c#6 (text+ko) ==== @@ -35,7 +35,7 @@ #include "mixer_if.h" -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/envy24.c,v 1.8 2007/02/23 19:41:16 ariff Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/envy24.c,v 1.9 2007/03/05 07:45:38 ariff Exp $"); MALLOC_DEFINE(M_ENVY24, "envy24", "envy24 audio"); @@ -2413,15 +2413,16 @@ mixer_init(dev, &envy24mixer_class, sc); /* set channel information */ - err = pcm_register(dev, sc, 5, 2 + sc->adcn); + err = pcm_register(dev, sc, sc->dacn, sc->adcn); if (err) goto bad; - sc->chnum = 0; - for (i = 0; i < 5; i++) { + sc->chnum = ENVY24_CHAN_PLAY_DAC1; + for (i = 0; i < sc->dacn; i++) { pcm_addchan(dev, PCMDIR_PLAY, &envy24chan_class, sc); sc->chnum++; } - for (i = 0; i < 2 + sc->adcn; i++) { + sc->chnum = ENVY24_CHAN_REC_ADC1; + for (i = 0; i < sc->adcn; i++) { pcm_addchan(dev, PCMDIR_REC, &envy24chan_class, sc); sc->chnum++; } ==== //depot/projects/soc2006/intr_filter/dev/sound/pcm/ac97.c#4 (text+ko) ==== @@ -32,7 +32,7 @@ #include "mixer_if.h" -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pcm/ac97.c,v 1.64 2006/11/26 12:24:05 ariff Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pcm/ac97.c,v 1.65 2007/03/06 02:36:54 ariff Exp $"); MALLOC_DEFINE(M_AC97, "ac97", "ac97 codec"); @@ -538,6 +538,23 @@ static void ac97_fix_tone(struct ac97_info *codec) { + /* + * YMF chips does not indicate tone and 3D enhancement capability + * in the AC97_REG_RESET register. + */ + switch (codec->id) { + case 0x594d4800: /* YMF743 */ + case 0x594d4803: /* YMF753 */ + codec->caps |= AC97_CAP_TONE; + codec->se |= 0x04; + break; + case 0x594d4802: /* YMF752 */ + codec->se |= 0x04; + break; + default: + break; + } + /* Hide treble and bass if they don't exist */ if ((codec->caps & AC97_CAP_TONE) == 0) { bzero(&codec->mix[SOUND_MIXER_BASS], ==== //depot/projects/soc2006/intr_filter/dev/sym/sym_hipd.c#5 (text+ko) ==== @@ -56,7 +56,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/sym/sym_hipd.c,v 1.62 2007/02/23 12:18:55 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/sym/sym_hipd.c,v 1.63 2007/03/05 21:21:03 thomas Exp $"); #define SYM_DRIVER_NAME "sym-1.6.5-20000902" @@ -2206,9 +2206,9 @@ }; } -/*--------------------------------------------------------------------------*/ -/*--------------------------- END OF FIRMARES -----------------------------*/ -/*--------------------------------------------------------------------------*/ +/*---------------------------------------------------------------------------*/ +/*--------------------------- END OF FIRMWARES -----------------------------*/ +/*---------------------------------------------------------------------------*/ /* * Function prototypes. ==== //depot/projects/soc2006/intr_filter/geom/eli/g_eli_ctl.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Tue Mar 6 11:05:30 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0550C16A402; Tue, 6 Mar 2007 11:05:30 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B72A216A400 for ; Tue, 6 Mar 2007 11:05:29 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id A667A13C481 for ; Tue, 6 Mar 2007 11:05:29 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26B5TkJ034733 for ; Tue, 6 Mar 2007 11:05:29 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26B5TXg034730 for perforce@freebsd.org; Tue, 6 Mar 2007 11:05:29 GMT (envelope-from piso@freebsd.org) Date: Tue, 6 Mar 2007 11:05:29 GMT Message-Id: <200703061105.l26B5TXg034730@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115403 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 11:05:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=115403 Change 115403 by piso@piso_newluxor on 2007/03/06 11:04:43 Reduce diff against HEAD. Affected files ... .. //depot/projects/soc2006/intr_filter/arm/arm/nexus.c#6 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/arm/nexus.c#6 (text+ko) ==== @@ -81,8 +81,7 @@ struct resource *); static int nexus_setup_intr(device_t dev, device_t child, struct resource *res, int flags, - driver_filter_t *filter, driver_intr_t *intr, void *arg, - void **cookiep); + driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); From owner-p4-projects@FreeBSD.ORG Tue Mar 6 11:06:31 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B4B3816A404; Tue, 6 Mar 2007 11:06:31 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7B6D416A400 for ; Tue, 6 Mar 2007 11:06:31 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 6CEB213C48D for ; Tue, 6 Mar 2007 11:06:31 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26B6Vto034794 for ; Tue, 6 Mar 2007 11:06:31 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26B6V6L034791 for perforce@freebsd.org; Tue, 6 Mar 2007 11:06:31 GMT (envelope-from piso@freebsd.org) Date: Tue, 6 Mar 2007 11:06:31 GMT Message-Id: <200703061106.l26B6V6L034791@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115404 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 11:06:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=115404 Change 115404 by piso@piso_newluxor on 2007/03/06 11:06:00 Reduce diff against HEAD. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#8 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#8 (text+ko) ==== @@ -339,11 +339,11 @@ int ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, - int flags, driver_filter_t *filter, - driver_intr_t *function, void *argument, void **cookiep) + int flags, driver_filter_t *filter, driver_intr_t *function, + void *argument, void **cookiep) { if (ata_legacy(dev)) { - return BUS_SETUP_INTR(device_get_parent(dev), child, irq, + return BUS_SETUP_INTR(device_get_parent(dev), child, irq, flags, filter, function, argument, cookiep); } else { From owner-p4-projects@FreeBSD.ORG Tue Mar 6 12:42:10 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D645016A405; Tue, 6 Mar 2007 12:42:09 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A5FDC16A402 for ; Tue, 6 Mar 2007 12:42:09 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 7EAA113C4A5 for ; Tue, 6 Mar 2007 12:42:09 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26Cg9pi089711 for ; Tue, 6 Mar 2007 12:42:09 GMT (envelope-from sephe@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26Cg9bn089702 for perforce@freebsd.org; Tue, 6 Mar 2007 12:42:09 GMT (envelope-from sephe@FreeBSD.org) Date: Tue, 6 Mar 2007 12:42:09 GMT Message-Id: <200703061242.l26Cg9bn089702@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sephe@FreeBSD.org using -f From: Sepherosa Ziehau To: Perforce Change Reviews Cc: Subject: PERFORCE change 115410 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 12:42:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=115410 Change 115410 by sephe@sephe_zealot:sam_wifi on 2007/03/06 12:41:39 Correct the unit of TU. Reviewed by: sam@ Affected files ... .. //depot/projects/wifi/sbin/ifconfig/ifconfig.8#19 edit Differences ... ==== //depot/projects/wifi/sbin/ifconfig/ifconfig.8#19 (text+ko) ==== @@ -596,7 +596,7 @@ ad-hoc or ap mode. The .Ar interval -parameter is specified in TU's (1/1024 msecs). +parameter is specified in TU's (1024 usecs). By default beacon frames are transmitted every 100 TU's. .It Cm bmissthreshold Ar count Set the number of consecutive missed beacons at which the station From owner-p4-projects@FreeBSD.ORG Tue Mar 6 13:03:38 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CFE9916A40A; Tue, 6 Mar 2007 13:03:37 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8D53E16A407 for ; Tue, 6 Mar 2007 13:03:37 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 7D64B13C4BF for ; Tue, 6 Mar 2007 13:03:37 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26D3bu2002822 for ; Tue, 6 Mar 2007 13:03:37 GMT (envelope-from sephe@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26D3bUI002819 for perforce@freebsd.org; Tue, 6 Mar 2007 13:03:37 GMT (envelope-from sephe@FreeBSD.org) Date: Tue, 6 Mar 2007 13:03:37 GMT Message-Id: <200703061303.l26D3bUI002819@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sephe@FreeBSD.org using -f From: Sepherosa Ziehau To: Perforce Change Reviews Cc: Subject: PERFORCE change 115412 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 13:03:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=115412 Change 115412 by sephe@sephe_zealot:sam_wifi on 2007/03/06 13:02:38 Correct TU->secs conversion. Reviewed by: sam@ Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_power.c#4 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_power.c#4 (text+ko) ==== @@ -208,8 +208,8 @@ * Frames that sit around too long are reclaimed * using this information. */ - /* XXX handle overflow? */ - age = ((ni->ni_intval * ic->ic_bintval) << 2) / 1024; /* TU -> secs */ + /* TU -> secs. XXX handle overflow? */ + age = IEEE80211_TU_TO_MS((ni->ni_intval * ic->ic_bintval) << 2) / 1000; _IEEE80211_NODE_SAVEQ_ENQUEUE(ni, m, qlen, age); IEEE80211_NODE_SAVEQ_UNLOCK(ni); From owner-p4-projects@FreeBSD.ORG Tue Mar 6 13:13:51 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5BFE516A411; Tue, 6 Mar 2007 13:13:51 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0856816A40F for ; Tue, 6 Mar 2007 13:13:51 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id EA34013C4C2 for ; Tue, 6 Mar 2007 13:13:50 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26DDogB004860 for ; Tue, 6 Mar 2007 13:13:50 GMT (envelope-from sephe@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26DDoZa004851 for perforce@freebsd.org; Tue, 6 Mar 2007 13:13:50 GMT (envelope-from sephe@FreeBSD.org) Date: Tue, 6 Mar 2007 13:13:50 GMT Message-Id: <200703061313.l26DDoZa004851@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sephe@FreeBSD.org using -f From: Sepherosa Ziehau To: Perforce Change Reviews Cc: Subject: PERFORCE change 115413 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 13:13:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=115413 Change 115413 by sephe@sephe_zealot:sam_wifi on 2007/03/06 13:13:25 - ic_bss is in STA table now. - Set ic_des_chan, even if the channel to be set to ic_des_chan is same as ic_bsschan. Reviewed by: sam@ Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#69 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_ioctl.c#69 (text+ko) ==== @@ -230,12 +230,8 @@ if (error != 0) return error; ni = ieee80211_find_node(&ic->ic_sta, macaddr); - if (ni == NULL) { - /* XXX special-case sta-mode until bss is node in ic_sta */ - if (ic->ic_opmode != IEEE80211_M_STA) - return ENOENT; - ni = ieee80211_ref_node(ic->ic_bss); - } + if (ni == NULL) + return EINVAL; if (ireq->i_len > sizeof(struct ieee80211req_sta_stats)) ireq->i_len = sizeof(struct ieee80211req_sta_stats); /* NB: copy out only the statistics */ @@ -682,12 +678,8 @@ ni = NULL; } else { ni = ieee80211_find_node(&ic->ic_sta, macaddr); - if (ni == NULL) { - /* XXX special-case sta-mode until bss is in ic_sta */ - if (ic->ic_opmode != IEEE80211_M_STA) - return EINVAL; /* XXX */ - ni = ieee80211_ref_node(ic->ic_bss); - } + if (ni == NULL) + return EINVAL; } return getstainfo_common(ic, ireq, ni, off); } @@ -1736,9 +1728,9 @@ if (ic->ic_opmode == IEEE80211_M_HOSTAP && !check_mode_consistency(c, ic->ic_des_mode)) return EINVAL; + ic->ic_des_chan = c; if (ic->ic_state == IEEE80211_S_RUN && c == ic->ic_bsschan) return 0; /* NB: nothing to do */ - ic->ic_des_chan = c; } error = 0; if ((ic->ic_opmode == IEEE80211_M_MONITOR || @@ -1787,9 +1779,9 @@ if (ic->ic_opmode == IEEE80211_M_HOSTAP && !check_mode_consistency(c, ic->ic_des_mode)) return EINVAL; + ic->ic_des_chan = c; if (ic->ic_state == IEEE80211_S_RUN && c == ic->ic_bsschan) return 0; /* NB: nothing to do */ - ic->ic_des_chan = c; } error = 0; if ((ic->ic_opmode == IEEE80211_M_MONITOR || From owner-p4-projects@FreeBSD.ORG Tue Mar 6 13:30:13 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3A12D16A40B; Tue, 6 Mar 2007 13:30:13 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CD9C816A404 for ; Tue, 6 Mar 2007 13:30:12 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id BE4C413C48D for ; Tue, 6 Mar 2007 13:30:12 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26DUCi9007469 for ; Tue, 6 Mar 2007 13:30:12 GMT (envelope-from sephe@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26DUCOr007465 for perforce@freebsd.org; Tue, 6 Mar 2007 13:30:12 GMT (envelope-from sephe@FreeBSD.org) Date: Tue, 6 Mar 2007 13:30:12 GMT Message-Id: <200703061330.l26DUCOr007465@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sephe@FreeBSD.org using -f From: Sepherosa Ziehau To: Perforce Change Reviews Cc: Subject: PERFORCE change 115415 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 13:30:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=115415 Change 115415 by sephe@sephe_zealot:sam_wifi on 2007/03/06 13:30:11 Clean up 'arg' usage of ieee80211_new_state(): - Feed error to S_SCAN, if assoc/auth failed, so scan modules can know that error happens when joining current BSS and will choose a better BSS to join next time. - Send assoc req instead of reassoc req, if we receive disassoc. - Send reassoc req instead of assoc req, if we already associated and want to change some configuration. - Move comment near the commented code. Discussed with: sam@ Reviewed by: sam@ Approved by: sam@ Affected files ... .. //depot/projects/wifi/sys/net80211/ieee80211_input.c#93 edit .. //depot/projects/wifi/sys/net80211/ieee80211_node.c#86 edit Differences ... ==== //depot/projects/wifi/sys/net80211/ieee80211_input.c#93 (text+ko) ==== @@ -1044,10 +1044,10 @@ if (ni != ic->ic_bss) ni->ni_fails++; ic->ic_stats.is_rx_auth_fail++; - ieee80211_new_state(ic, IEEE80211_S_SCAN, 0); + ieee80211_new_state(ic, IEEE80211_S_SCAN, + IEEE80211_SCAN_FAIL_STATUS); } else - ieee80211_new_state(ic, IEEE80211_S_ASSOC, - wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK); + ieee80211_new_state(ic, IEEE80211_S_ASSOC, 0); break; } } @@ -1286,8 +1286,7 @@ ic->ic_stats.is_rx_auth_fail++; return; } - ieee80211_new_state(ic, IEEE80211_S_ASSOC, - wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK); + ieee80211_new_state(ic, IEEE80211_S_ASSOC, 0); break; case IEEE80211_AUTH_SHARED_CHALLENGE: if (!alloc_challenge(ic, ni)) @@ -1322,7 +1321,8 @@ * state transition. */ if (ic->ic_state == IEEE80211_S_AUTH) - ieee80211_new_state(ic, IEEE80211_S_SCAN, 0); + ieee80211_new_state(ic, IEEE80211_S_SCAN, + IEEE80211_SCAN_FAIL_STATUS); } } @@ -2790,7 +2790,8 @@ if (ni != ic->ic_bss) /* XXX never true? */ ni->ni_fails++; ic->ic_stats.is_rx_assoc_norate++; - ieee80211_new_state(ic, IEEE80211_S_SCAN, 0); + ieee80211_new_state(ic, IEEE80211_S_SCAN, + IEEE80211_SCAN_FAIL_STATUS); return; } @@ -2913,8 +2914,7 @@ ether_sprintf(ni->ni_macaddr), reason); switch (ic->ic_opmode) { case IEEE80211_M_STA: - ieee80211_new_state(ic, IEEE80211_S_ASSOC, - wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK); + ieee80211_new_state(ic, IEEE80211_S_ASSOC, 0); break; case IEEE80211_M_HOSTAP: if (ni != ic->ic_bss) ==== //depot/projects/wifi/sys/net80211/ieee80211_node.c#86 (text+ko) ==== @@ -581,16 +581,19 @@ ieee80211_wme_initparams(ic); if (ic->ic_opmode == IEEE80211_M_STA) { - /* - * Act as if we received a DEAUTH frame in case we are - * invoked from the RUN state. This will cause us to try - * to re-authenticate if we are operating as a station. - */ - if (canreassoc) - ieee80211_new_state(ic, IEEE80211_S_ASSOC, 0); - else + if (canreassoc) { + /* Reassociate */ + ieee80211_new_state(ic, IEEE80211_S_ASSOC, 1); + } else { + /* + * Act as if we received a DEAUTH frame in case we + * are invoked from the RUN state. This will cause + * us to try to re-authenticate if we are operating + * as a station. + */ ieee80211_new_state(ic, IEEE80211_S_AUTH, IEEE80211_FC0_SUBTYPE_DEAUTH); + } } else ieee80211_new_state(ic, IEEE80211_S_RUN, -1); return 1; From owner-p4-projects@FreeBSD.ORG Tue Mar 6 15:15:24 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 60BCE16A403; Tue, 6 Mar 2007 15:15:24 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1E25E16A400 for ; Tue, 6 Mar 2007 15:15:24 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 02E4D13C428 for ; Tue, 6 Mar 2007 15:15:24 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26FFNrJ047762 for ; Tue, 6 Mar 2007 15:15:23 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26FFNOJ047759 for perforce@freebsd.org; Tue, 6 Mar 2007 15:15:23 GMT (envelope-from piso@freebsd.org) Date: Tue, 6 Mar 2007 15:15:23 GMT Message-Id: <200703061515.l26FFNOJ047759@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115417 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 15:15:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=115417 Change 115417 by piso@piso_newluxor on 2007/03/06 15:14:24 Reduce diff against HEAD. Affected files ... .. //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc.c#7 edit .. //depot/projects/soc2006/intr_filter/sparc64/pci/psycho.c#13 edit .. //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#11 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc.c#7 (text+ko) ==== @@ -208,7 +208,7 @@ int fhc_setup_intr(device_t bus, device_t child, struct resource *r, int flags, - driver_filter_t *filter, driver_intr_t *func, void *arg, void **cookiep) + driver_filter_t *filt, driver_intr_t *func, void *arg, void **cookiep) { struct fhc_softc *sc; struct fhc_clr *fc; @@ -219,7 +219,7 @@ long vec; uint32_t inr; - if (filter != NULL && func != NULL) + if (filt != NULL && func != NULL) return (EINVAL); sc = device_get_softc(bus); @@ -243,7 +243,7 @@ fc = malloc(sizeof(*fc), M_DEVBUF, M_WAITOK | M_ZERO); if (fc == NULL) return (0); - fc->fc_filter = filter; + fc->fc_filter = filt; fc->fc_func = func; fc->fc_arg = arg; fc->fc_bt = bt; ==== //depot/projects/soc2006/intr_filter/sparc64/pci/psycho.c#13 (text+ko) ==== @@ -92,9 +92,7 @@ static int psycho_ue(void *); static int psycho_ce(void *); static int psycho_pci_bus(void *); -static -int -psycho_powerfail(void *); +static int psycho_powerfail(void *); static int psycho_overtemp(void *); #ifdef PSYCHO_MAP_WAKEUP static int psycho_wakeup(void *); @@ -220,6 +218,7 @@ * On UltraII machines, there can be any number of "Psycho+" ICs, each * providing two PCI buses. */ + /* XXX let's hope no one ever create a flag with this value... */ #define FAST 0x66600000 @@ -231,7 +230,6 @@ #define OFW_PCI_TYPE "pci" - struct psycho_desc { const char *pd_string; int pd_mode; @@ -534,7 +532,7 @@ psycho_set_intr(sc, 1, PSR_UE_INT_MAP, FAST, psycho_ue); psycho_set_intr(sc, 2, PSR_CE_INT_MAP, 0, psycho_ce); psycho_set_intr(sc, 3, PSR_POWER_INT_MAP, - PSYCHO_PWRFAIL_INT_FLAGS, psycho_powerfail); + PSYCHO_PWRFAIL_INT_FLAGS, psycho_powerfail); /* Psycho-specific initialization */ if (sc->sc_mode == PSYCHO_MODE_PSYCHO) { /* @@ -546,7 +544,7 @@ * The spare hardware interrupt is used for the * over-temperature interrupt. */ - psycho_set_intr(sc, 4, PSR_SPARE_INT_MAP, FAST, + psycho_set_intr(sc, 4, PSR_SPARE_INT_MAP, FAST, psycho_overtemp); #ifdef PSYCHO_MAP_WAKEUP /* @@ -695,7 +693,7 @@ rid = index; mr = PSYCHO_READ8(sc, map); vec = INTVEC(mr); - sc->sc_irq_res[index] = bus_alloc_resource(sc->sc_dev, SYS_RES_IRQ, + sc->sc_irq_res[index] = bus_alloc_resource(sc->sc_dev, SYS_RES_IRQ, &rid, vec, vec, 1, RF_ACTIVE); if (sc->sc_irq_res[index] == NULL) panic("%s: failed to get interrupt", __func__); @@ -817,8 +815,7 @@ return (FILTER_HANDLED); } -static -int +static int psycho_powerfail(void *arg) { @@ -827,12 +824,11 @@ kdb_enter("powerfail"); PSYCHO_WRITE8(sc, PSR_POWER_INT_CLR, 0); - return (FILTER_HANDLED); #else printf("Power Failure Detected: Shutting down NOW.\n"); shutdown_nice(0); +#endif return (FILTER_HANDLED); -#endif } static int @@ -1012,6 +1008,7 @@ return (ENOENT); } +/* Write to the correct clr register, and call the actual handler. */ static int psycho_filter_stub(void *arg) { @@ -1026,7 +1023,6 @@ return (res); } -/* Write to the correct clr register, and call the actual handler. */ static void psycho_intr_stub(void *arg) { @@ -1042,7 +1038,7 @@ static int psycho_setup_intr(device_t dev, device_t child, struct resource *ires, - int flags, driver_filter_t *filter, driver_intr_t *intr, void *arg, + int flags, driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep) { struct { @@ -1058,7 +1054,7 @@ uint64_t mr; int error, ino; - if (filter != NULL && intr != NULL) + if (filt != NULL && intr != NULL) return (EINVAL); sc = device_get_softc(dev); @@ -1090,7 +1086,7 @@ pc->pci_sc = sc; pc->pci_arg = arg; - pc->pci_filter = filter; + pc->pci_filter = filt; pc->pci_handler = intr; pc->pci_clr = intrclrptr; ==== //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#11 (text+ko) ==== @@ -638,6 +638,7 @@ return (&sdi->sdi_rl); } +/* Write to the correct clr register, and call the actual handler. */ static int sbus_filter_stub(void *arg) { @@ -653,7 +654,6 @@ return (res); } -/* Write to the correct clr register, and call the actual handler. */ static void sbus_intr_stub(void *arg) { From owner-p4-projects@FreeBSD.ORG Tue Mar 6 15:20:35 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B859A16A482; Tue, 6 Mar 2007 15:20:34 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7550816A47E for ; Tue, 6 Mar 2007 15:20:34 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 1B5D713C474 for ; Tue, 6 Mar 2007 15:20:33 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26FKVlu048061 for ; Tue, 6 Mar 2007 15:20:31 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26FKULH048057 for perforce@freebsd.org; Tue, 6 Mar 2007 15:20:30 GMT (envelope-from piso@freebsd.org) Date: Tue, 6 Mar 2007 15:20:30 GMT Message-Id: <200703061520.l26FKULH048057@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115419 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 15:20:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=115419 Change 115419 by piso@piso_newluxor on 2007/03/06 15:20:16 IFC@115411 Affected files ... .. //depot/projects/soc2006/intr_filter/arm/at91/at91.c#10 integrate .. //depot/projects/soc2006/intr_filter/arm/sa11x0/sa11x0.c#7 integrate .. //depot/projects/soc2006/intr_filter/arm/xscale/ixp425/ixp425_pci.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#7 integrate .. //depot/projects/soc2006/intr_filter/dev/ppc/ppc.c#8 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_alq.c#4 integrate .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/upa.c#7 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/arm/at91/at91.c#10 (text) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/at91/at91.c,v 1.12 2007/02/25 14:34:59 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/at91/at91.c,v 1.13 2007/03/06 10:55:57 piso Exp $"); #include #include ==== //depot/projects/soc2006/intr_filter/arm/sa11x0/sa11x0.c#7 (text+ko) ==== @@ -57,7 +57,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/sa11x0/sa11x0.c,v 1.8 2007/02/23 12:18:27 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/sa11x0/sa11x0.c,v 1.9 2007/03/06 10:56:54 piso Exp $"); #include #include ==== //depot/projects/soc2006/intr_filter/arm/xscale/ixp425/ixp425_pci.c#5 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425_pci.c,v 1.3 2007/02/23 12:18:28 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425_pci.c,v 1.4 2007/03/06 10:58:22 piso Exp $"); #include #include ==== //depot/projects/soc2006/intr_filter/dev/ppbus/ppbconf.c#7 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ppbus/ppbconf.c,v 1.25 2007/02/23 12:18:49 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ppbus/ppbconf.c,v 1.26 2007/03/06 11:44:11 piso Exp $"); #include "opt_ppb_1284.h" #include ==== //depot/projects/soc2006/intr_filter/dev/ppc/ppc.c#8 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ppc/ppc.c,v 1.55 2007/02/23 23:05:31 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ppc/ppc.c,v 1.56 2007/03/06 11:36:33 piso Exp $"); #include "opt_ppc.h" ==== //depot/projects/soc2006/intr_filter/kern/kern_alq.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_alq.c,v 1.17 2007/03/04 23:40:35 wkoszek Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_alq.c,v 1.18 2007/03/06 12:08:38 cognet Exp $"); #include "opt_mac.h" @@ -224,7 +224,9 @@ /* Drain IO */ while (alq->aq_flags & (AQ_FLUSHING|AQ_ACTIVE)) { alq->aq_flags |= AQ_WANTED; - msleep(alq, &(alq)->aq_mtx, PWAIT, "aldclose", 0); + ALQ_UNLOCK(alq); + tsleep(alq, PWAIT, "aldclose", 0); + ALQ_LOCK(alq); } ALQ_UNLOCK(alq); @@ -431,7 +433,9 @@ (ale = alq->aq_entfree) == NULL && (waitok & ALQ_WAITOK)) { alq->aq_flags |= AQ_WANTED; - msleep(alq, &(alq)->aq_mtx, PWAIT, "alqget", 0); + ALQ_UNLOCK(alq); + tsleep(alq, PWAIT, "alqget", 0); + ALQ_LOCK(alq); } if (ale != NULL) { ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/upa.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/sparc64/sparc64/upa.c,v 1.6 2007/02/23 12:19:06 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/sparc64/sparc64/upa.c,v 1.7 2007/03/06 12:19:37 piso Exp $"); #include #include From owner-p4-projects@FreeBSD.ORG Tue Mar 6 16:00:27 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D94BB16A407; Tue, 6 Mar 2007 16:00:26 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A6B6416A404; Tue, 6 Mar 2007 16:00:26 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by mx1.freebsd.org (Postfix) with ESMTP id 4F94713C4A6; Tue, 6 Mar 2007 16:00:25 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.8/8.13.8) with ESMTP id l26G0JdD011915; Tue, 6 Mar 2007 11:00:19 -0500 (EST) (envelope-from jhb@freebsd.org) From: John Baldwin To: Paolo Pisati Date: Tue, 6 Mar 2007 10:58:23 -0500 User-Agent: KMail/1.9.1 References: <200703052146.l25LkM0V057457@repoman.freebsd.org> <200703051726.26875.jhb@freebsd.org> In-Reply-To: <200703051726.26875.jhb@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200703061058.24092.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Tue, 06 Mar 2007 11:00:19 -0500 (EST) X-Virus-Scanned: ClamAV 0.88.3/2745/Tue Mar 6 08:59:40 2007 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.1.3 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on server.baldwin.cx Cc: Perforce Change Reviews Subject: Re: PERFORCE change 115367 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 16:00:27 -0000 On Monday 05 March 2007 17:26, John Baldwin wrote: > On Monday 05 March 2007 16:46, Paolo Pisati wrote: > > http://perforce.freebsd.org/chv.cgi?CH=115367 > > > > Change 115367 by piso@piso_newluxor on 2007/03/05 21:45:54 > > > > o Wrap at 80 ata_pci_setup_intr(). > > o Style(9) a bit the indentation. > > You should really preserve the 4-space indent since that's what the rest of > sys/dev/ata/* uses, and consistency is preserved over a mixed bag. s/preserved/preferred/ > > Affected files ... > > > > .. //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#6 edit > > > > Differences ... > > > > ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-pci.c#6 (text+ko) ==== > > > > @@ -339,12 +339,12 @@ > > > > int > > ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, > > - int flags, driver_filter_t *filter, driver_intr_t *function, > > - void *argument, void **cookiep) > > + int flags, driver_filter_t *filter, driver_intr_t *function, > > + void *argument, void **cookiep) > > { > > if (ata_legacy(dev)) { > > - return BUS_SETUP_INTR(device_get_parent(dev), child, irq, > > - flags, filter, function, argument, cookiep); > > + return BUS_SETUP_INTR(device_get_parent(dev), child, irq, > > + flags, filter, function, argument, cookiep); > > } > > else { > > struct ata_pci_controller *controller = device_get_softc(dev); > > > > -- > John Baldwin > -- John Baldwin From owner-p4-projects@FreeBSD.ORG Tue Mar 6 16:31:06 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C3F916A408; Tue, 6 Mar 2007 16:31:06 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2069516A406 for ; Tue, 6 Mar 2007 16:31:06 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id ECCF313C4A3 for ; Tue, 6 Mar 2007 16:31:05 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26GV54j060327 for ; Tue, 6 Mar 2007 16:31:05 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26GV5Eq060318 for perforce@freebsd.org; Tue, 6 Mar 2007 16:31:05 GMT (envelope-from piso@freebsd.org) Date: Tue, 6 Mar 2007 16:31:05 GMT Message-Id: <200703061631.l26GV5Eq060318@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115426 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 16:31:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=115426 Change 115426 by piso@piso_newluxor on 2007/03/06 16:30:28 Restore "p_ih = NULL" in teardown_intr. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/puc/puc.c#13 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/puc/puc.c#13 (text+ko) ==== @@ -676,6 +676,7 @@ return (EINVAL); port->p_hasintr = 0; + port->p_ih = NULL; port->p_iharg = NULL; for (i = 0; i < PUC_ISRCCNT; i++) From owner-p4-projects@FreeBSD.ORG Tue Mar 6 16:45:26 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0BC7316A40B; Tue, 6 Mar 2007 16:45:26 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A927616A408 for ; Tue, 6 Mar 2007 16:45:25 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 5D41713C461 for ; Tue, 6 Mar 2007 16:45:25 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26GjPtk063084 for ; Tue, 6 Mar 2007 16:45:25 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26GjP5M063081 for perforce@freebsd.org; Tue, 6 Mar 2007 16:45:25 GMT (envelope-from piso@freebsd.org) Date: Tue, 6 Mar 2007 16:45:25 GMT Message-Id: <200703061645.l26GjP5M063081@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115429 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 16:45:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=115429 Change 115429 by piso@piso_newluxor on 2007/03/06 16:44:39 Reduce diff against HEAD. Affected files ... .. //depot/projects/soc2006/intr_filter/dev/puc/puc.c#14 edit Differences ... ==== //depot/projects/soc2006/intr_filter/dev/puc/puc.c#14 (text+ko) ==== @@ -59,7 +59,7 @@ int p_hasintr:1; - driver_filter_t *p_ih; + driver_filter_t *p_ih; serdev_intr_t *p_ihsrc[PUC_ISRCCNT]; void *p_iharg; From owner-p4-projects@FreeBSD.ORG Tue Mar 6 21:54:13 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9C45E16A414; Tue, 6 Mar 2007 21:54:13 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 6F9FC16A40A for ; Tue, 6 Mar 2007 21:54:13 +0000 (UTC) (envelope-from jkim@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 5EB9513C4BE for ; Tue, 6 Mar 2007 21:54:13 +0000 (UTC) (envelope-from jkim@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l26LsCZM037370 for ; Tue, 6 Mar 2007 21:54:12 GMT (envelope-from jkim@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l26LsCVY037367 for perforce@freebsd.org; Tue, 6 Mar 2007 21:54:12 GMT (envelope-from jkim@freebsd.org) Date: Tue, 6 Mar 2007 21:54:12 GMT Message-Id: <200703062154.l26LsCVY037367@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jkim@freebsd.org using -f From: Jung-uk Kim To: Perforce Change Reviews Cc: Subject: PERFORCE change 115443 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2007 21:54:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=115443 Change 115443 by jkim@jkim_hammer on 2007/03/06 21:54:06 Add rudimentary sched_getaffinity() support. With this change, Linux JDK 1.5.0 works again in 2.6.16 emulation. Affected files ... .. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_proto.h#20 edit .. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_syscall.h#20 edit .. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_sysent.c#19 edit .. //depot/projects/linuxolator/src/sys/amd64/linux32/syscalls.master#20 edit .. //depot/projects/linuxolator/src/sys/compat/linux/linux_misc.c#62 edit .. //depot/projects/linuxolator/src/sys/i386/linux/linux_proto.h#20 edit .. //depot/projects/linuxolator/src/sys/i386/linux/linux_syscall.h#19 edit .. //depot/projects/linuxolator/src/sys/i386/linux/linux_sysent.c#19 edit .. //depot/projects/linuxolator/src/sys/i386/linux/syscalls.master#19 edit Differences ... ==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_proto.h#20 (text+ko) ==== @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.29 2007/02/15 01:15:31 jkim Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.26 2007/02/15 01:13:36 jkim Exp */ @@ -740,6 +740,11 @@ char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)]; char val3_l_[PADL_(int)]; int val3; char val3_r_[PADR_(int)]; }; +struct linux_sched_getaffinity_args { + char pid_l_[PADL_(l_pid_t)]; l_pid_t pid; char pid_r_[PADR_(l_pid_t)]; + char cpusetsize_l_[PADL_(l_uint)]; l_uint cpusetsize; char cpusetsize_r_[PADR_(l_uint)]; + char mask_l_[PADL_(l_ulong *)]; l_ulong * mask; char mask_r_[PADR_(l_ulong *)]; +}; struct linux_set_thread_area_args { char desc_l_[PADL_(struct l_user_desc *)]; struct l_user_desc * desc; char desc_r_[PADR_(struct l_user_desc *)]; }; @@ -1130,6 +1135,7 @@ int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_tkill(struct thread *, struct linux_tkill_args *); int linux_sys_futex(struct thread *, struct linux_sys_futex_args *); +int linux_sched_getaffinity(struct thread *, struct linux_sched_getaffinity_args *); int linux_set_thread_area(struct thread *, struct linux_set_thread_area_args *); int linux_io_setup(struct thread *, struct linux_io_setup_args *); int linux_io_destroy(struct thread *, struct linux_io_destroy_args *); @@ -1383,6 +1389,7 @@ #define LINUX_SYS_AUE_linux_fremovexattr AUE_NULL #define LINUX_SYS_AUE_linux_tkill AUE_NULL #define LINUX_SYS_AUE_linux_sys_futex AUE_NULL +#define LINUX_SYS_AUE_linux_sched_getaffinity AUE_NULL #define LINUX_SYS_AUE_linux_set_thread_area AUE_NULL #define LINUX_SYS_AUE_linux_io_setup AUE_NULL #define LINUX_SYS_AUE_linux_io_destroy AUE_NULL ==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_syscall.h#20 (text+ko) ==== @@ -2,7 +2,7 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.29 2007/02/15 01:15:31 jkim Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.26 2007/02/15 01:13:36 jkim Exp */ @@ -222,6 +222,7 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_tkill 238 #define LINUX_SYS_linux_sys_futex 240 +#define LINUX_SYS_linux_sched_getaffinity 242 #define LINUX_SYS_linux_set_thread_area 243 #define LINUX_SYS_linux_io_setup 245 #define LINUX_SYS_linux_io_destroy 246 ==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_sysent.c#19 (text+ko) ==== @@ -2,7 +2,7 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.29 2007/02/15 01:15:31 jkim Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.26 2007/02/15 01:13:36 jkim Exp */ @@ -262,7 +262,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 239 = linux_sendfile64 */ { AS(linux_sys_futex_args), (sy_call_t *)linux_sys_futex, AUE_NULL, NULL, 0, 0 }, /* 240 = linux_sys_futex */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 241 = linux_sched_setaffinity */ - { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 242 = linux_sched_getaffinity */ + { AS(linux_sched_getaffinity_args), (sy_call_t *)linux_sched_getaffinity, AUE_NULL, NULL, 0, 0 }, /* 242 = linux_sched_getaffinity */ { AS(linux_set_thread_area_args), (sy_call_t *)linux_set_thread_area, AUE_NULL, NULL, 0, 0 }, /* 243 = linux_set_thread_area */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 244 = linux_get_thread_area */ { AS(linux_io_setup_args), (sy_call_t *)linux_io_setup, AUE_NULL, NULL, 0, 0 }, /* 245 = linux_io_setup */ ==== //depot/projects/linuxolator/src/sys/amd64/linux32/syscalls.master#20 (text+ko) ==== @@ -407,9 +407,10 @@ 238 AUE_NULL STD { int linux_tkill(int tid, int sig); } 239 AUE_SENDFILE UNIMPL linux_sendfile64 240 AUE_NULL STD { int linux_sys_futex(void *uaddr, int op, int val, \ - struct l_timespec *timeout, void *uaddr2, int val3); } + struct l_timespec *timeout, void *uaddr2, int val3); } 241 AUE_NULL UNIMPL linux_sched_setaffinity -242 AUE_NULL UNIMPL linux_sched_getaffinity +242 AUE_NULL STD { int linux_sched_getaffinity(l_pid_t pid, l_uint cpusetsize, \ + l_ulong *mask); } 243 AUE_NULL STD { int linux_set_thread_area(struct l_user_desc *desc); } 244 AUE_NULL UNIMPL linux_get_thread_area 245 AUE_NULL STD { int linux_io_setup(l_uint nr_reqs, linux_aio_context_t *ctxp); } ==== //depot/projects/linuxolator/src/sys/compat/linux/linux_misc.c#62 (text+ko) ==== @@ -55,6 +55,7 @@ #include #include #include +#include #include #include #include @@ -1736,6 +1737,25 @@ } int +linux_sched_getaffinity(struct thread *td, + struct linux_sched_getaffinity_args *args) +{ + l_ulong mask; + int i; + + if (PTRIN(args->mask) == NULL) + return (EFAULT); + if (args->cpusetsize < (l_uint)sizeof(cpumask_t)) + return (EINVAL); + + /* We do not support process affinity yet. Just allow all for now. */ + for (i = mp_ncpus, mask = 0; i > 0; i--) + mask |= 1 << (i - 1); + + return (copyout(&mask, args->mask, sizeof(l_ulong))); +} + +int linux_chroot(struct thread *td, struct linux_chroot_args *args) { return (chroot(td, (struct chroot_args *)args)); ==== //depot/projects/linuxolator/src/sys/i386/linux/linux_proto.h#20 (text+ko) ==== @@ -2,7 +2,7 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_proto.h,v 1.91 2007/02/15 00:57:03 jkim Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.86 2007/02/15 00:54:40 jkim Exp */ @@ -737,6 +737,11 @@ char uaddr2_l_[PADL_(void *)]; void * uaddr2; char uaddr2_r_[PADR_(void *)]; char val3_l_[PADL_(int)]; int val3; char val3_r_[PADR_(int)]; }; +struct linux_sched_getaffinity_args { + char pid_l_[PADL_(l_pid_t)]; l_pid_t pid; char pid_r_[PADR_(l_pid_t)]; + char cpusetsize_l_[PADL_(l_uint)]; l_uint cpusetsize; char cpusetsize_r_[PADR_(l_uint)]; + char mask_l_[PADL_(l_ulong *)]; l_ulong * mask; char mask_r_[PADR_(l_ulong *)]; +}; struct linux_set_thread_area_args { char desc_l_[PADL_(struct l_user_desc *)]; struct l_user_desc * desc; char desc_r_[PADR_(struct l_user_desc *)]; }; @@ -1149,6 +1154,7 @@ int linux_fremovexattr(struct thread *, struct linux_fremovexattr_args *); int linux_tkill(struct thread *, struct linux_tkill_args *); int linux_sys_futex(struct thread *, struct linux_sys_futex_args *); +int linux_sched_getaffinity(struct thread *, struct linux_sched_getaffinity_args *); int linux_set_thread_area(struct thread *, struct linux_set_thread_area_args *); int linux_get_thread_area(struct thread *, struct linux_get_thread_area_args *); int linux_io_setup(struct thread *, struct linux_io_setup_args *); @@ -1403,6 +1409,7 @@ #define LINUX_SYS_AUE_linux_fremovexattr AUE_NULL #define LINUX_SYS_AUE_linux_tkill AUE_NULL #define LINUX_SYS_AUE_linux_sys_futex AUE_NULL +#define LINUX_SYS_AUE_linux_sched_getaffinity AUE_NULL #define LINUX_SYS_AUE_linux_set_thread_area AUE_NULL #define LINUX_SYS_AUE_linux_get_thread_area AUE_NULL #define LINUX_SYS_AUE_linux_io_setup AUE_NULL ==== //depot/projects/linuxolator/src/sys/i386/linux/linux_syscall.h#19 (text+ko) ==== @@ -2,7 +2,7 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_syscall.h,v 1.84 2007/02/15 00:57:04 jkim Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.86 2007/02/15 00:54:40 jkim Exp */ @@ -228,6 +228,7 @@ #define LINUX_SYS_linux_fremovexattr 237 #define LINUX_SYS_linux_tkill 238 #define LINUX_SYS_linux_sys_futex 240 +#define LINUX_SYS_linux_sched_getaffinity 242 #define LINUX_SYS_linux_set_thread_area 243 #define LINUX_SYS_linux_get_thread_area 244 #define LINUX_SYS_linux_io_setup 245 ==== //depot/projects/linuxolator/src/sys/i386/linux/linux_sysent.c#19 (text+ko) ==== @@ -2,7 +2,7 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/i386/linux/linux_sysent.c,v 1.91 2007/02/15 00:57:04 jkim Exp $ + * $FreeBSD$ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.86 2007/02/15 00:54:40 jkim Exp */ @@ -261,7 +261,7 @@ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 239 = linux_sendfile64 */ { AS(linux_sys_futex_args), (sy_call_t *)linux_sys_futex, AUE_NULL, NULL, 0, 0 }, /* 240 = linux_sys_futex */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 241 = linux_sched_setaffinity */ - { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 242 = linux_sched_getaffinity */ + { AS(linux_sched_getaffinity_args), (sy_call_t *)linux_sched_getaffinity, AUE_NULL, NULL, 0, 0 }, /* 242 = linux_sched_getaffinity */ { AS(linux_set_thread_area_args), (sy_call_t *)linux_set_thread_area, AUE_NULL, NULL, 0, 0 }, /* 243 = linux_set_thread_area */ { AS(linux_get_thread_area_args), (sy_call_t *)linux_get_thread_area, AUE_NULL, NULL, 0, 0 }, /* 244 = linux_get_thread_area */ { AS(linux_io_setup_args), (sy_call_t *)linux_io_setup, AUE_NULL, NULL, 0, 0 }, /* 245 = linux_io_setup */ ==== //depot/projects/linuxolator/src/sys/i386/linux/syscalls.master#19 (text+ko) ==== @@ -409,9 +409,10 @@ 238 AUE_NULL STD { int linux_tkill(int tid, int sig); } 239 AUE_SENDFILE UNIMPL linux_sendfile64 240 AUE_NULL STD { int linux_sys_futex(void *uaddr, int op, int val, \ - struct l_timespec *timeout, void *uaddr2, int val3); } + struct l_timespec *timeout, void *uaddr2, int val3); } 241 AUE_NULL UNIMPL linux_sched_setaffinity -242 AUE_NULL UNIMPL linux_sched_getaffinity +242 AUE_NULL STD { int linux_sched_getaffinity(l_pid_t pid, l_uint cpusetsize, \ + l_ulong *mask); } 243 AUE_NULL STD { int linux_set_thread_area(struct l_user_desc *desc); } 244 AUE_NULL STD { int linux_get_thread_area(struct l_user_desc *desc); } 245 AUE_NULL STD { int linux_io_setup(l_uint nr_reqs, linux_aio_context_t *ctxp); } From owner-p4-projects@FreeBSD.ORG Wed Mar 7 01:23:41 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D0EDB16A402; Wed, 7 Mar 2007 01:23:40 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A0D5316A400 for ; Wed, 7 Mar 2007 01:23:40 +0000 (UTC) (envelope-from jkim@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 9227C13C48E for ; Wed, 7 Mar 2007 01:23:40 +0000 (UTC) (envelope-from jkim@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l271NeT9088910 for ; Wed, 7 Mar 2007 01:23:40 GMT (envelope-from jkim@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l271Ne9A088906 for perforce@freebsd.org; Wed, 7 Mar 2007 01:23:40 GMT (envelope-from jkim@freebsd.org) Date: Wed, 7 Mar 2007 01:23:40 GMT Message-Id: <200703070123.l271Ne9A088906@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jkim@freebsd.org using -f From: Jung-uk Kim To: Perforce Change Reviews Cc: Subject: PERFORCE change 115451 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Mar 2007 01:23:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=115451 Change 115451 by jkim@jkim_hammer on 2007/03/07 01:23:36 Add access mask for open(3). Affected files ... .. //depot/projects/linuxolator/src/sys/amd64/linux32/linux.h#25 edit .. //depot/projects/linuxolator/src/sys/compat/linux/linux_file.c#15 edit .. //depot/projects/linuxolator/src/sys/i386/linux/linux.h#21 edit Differences ... ==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux.h#25 (text+ko) ==== @@ -531,6 +531,7 @@ #define LINUX_O_RDONLY 00000000 #define LINUX_O_WRONLY 00000001 #define LINUX_O_RDWR 00000002 +#define LINUX_O_ACCMODE 00000003 #define LINUX_O_CREAT 00000100 #define LINUX_O_EXCL 00000200 #define LINUX_O_NOCTTY 00000400 ==== //depot/projects/linuxolator/src/sys/compat/linux/linux_file.c#15 (text+ko) ==== @@ -96,12 +96,16 @@ int bsd_flags, error; bsd_flags = 0; - if (l_flags & LINUX_O_RDONLY) - bsd_flags |= O_RDONLY; - if (l_flags & LINUX_O_WRONLY) + switch (l_flags & LINUX_O_ACCMODE) { + case LINUX_O_WRONLY: bsd_flags |= O_WRONLY; - if (l_flags & LINUX_O_RDWR) + break; + case LINUX_O_RDWR: bsd_flags |= O_RDWR; + break; + default: + bsd_flags |= O_RDONLY; + } if (l_flags & LINUX_O_NDELAY) bsd_flags |= O_NONBLOCK; if (l_flags & LINUX_O_APPEND) ==== //depot/projects/linuxolator/src/sys/i386/linux/linux.h#21 (text+ko) ==== @@ -502,6 +502,7 @@ #define LINUX_O_RDONLY 00000000 #define LINUX_O_WRONLY 00000001 #define LINUX_O_RDWR 00000002 +#define LINUX_O_ACCMODE 00000003 #define LINUX_O_CREAT 00000100 #define LINUX_O_EXCL 00000200 #define LINUX_O_NOCTTY 00000400 From owner-p4-projects@FreeBSD.ORG Wed Mar 7 19:18:10 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B6C7C16A405; Wed, 7 Mar 2007 19:18:10 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 59E2A16A403 for ; Wed, 7 Mar 2007 19:18:10 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 47D2513C442 for ; Wed, 7 Mar 2007 19:18:10 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l27JIAgD022635 for ; Wed, 7 Mar 2007 19:18:10 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l27JI7Rh022632 for perforce@freebsd.org; Wed, 7 Mar 2007 19:18:07 GMT (envelope-from jhb@freebsd.org) Date: Wed, 7 Mar 2007 19:18:07 GMT Message-Id: <200703071918.l27JI7Rh022632@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 Cc: Subject: PERFORCE change 115480 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Mar 2007 19:18:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=115480 Change 115480 by jhb@jhb_mutex on 2007/03/07 19:17:11 IFC @115477. Affected files ... .. //depot/projects/smpng/sys/amd64/acpica/madt.c#12 integrate .. //depot/projects/smpng/sys/amd64/amd64/busdma_machdep.c#24 integrate .. //depot/projects/smpng/sys/amd64/amd64/intr_machdep.c#25 integrate .. //depot/projects/smpng/sys/amd64/amd64/io_apic.c#19 integrate .. //depot/projects/smpng/sys/amd64/amd64/local_apic.c#27 integrate .. //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#41 integrate .. //depot/projects/smpng/sys/amd64/amd64/mptable.c#10 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#72 integrate .. //depot/projects/smpng/sys/amd64/include/apicvar.h#16 integrate .. //depot/projects/smpng/sys/amd64/include/intr_machdep.h#14 integrate .. //depot/projects/smpng/sys/amd64/include/smp.h#14 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux.h#11 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_machdep.c#20 integrate .. //depot/projects/smpng/sys/arm/at91/at91.c#10 integrate .. //depot/projects/smpng/sys/arm/sa11x0/sa11x0.c#9 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425_npe.c#4 integrate .. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425_pci.c#4 integrate .. //depot/projects/smpng/sys/boot/pc98/cdboot/cdboot.s#2 integrate .. //depot/projects/smpng/sys/compat/linprocfs/linprocfs.c#54 integrate .. //depot/projects/smpng/sys/compat/linux/linux_emul.c#9 integrate .. //depot/projects/smpng/sys/compat/linux/linux_stats.c#36 integrate .. //depot/projects/smpng/sys/conf/files#200 integrate .. //depot/projects/smpng/sys/conf/kmod.mk#63 integrate .. //depot/projects/smpng/sys/contrib/dev/ipw/LICENSE#1 branch .. //depot/projects/smpng/sys/contrib/dev/ipw/ipw2100-1.3-i.fw.uu#1 branch .. //depot/projects/smpng/sys/contrib/dev/ipw/ipw2100-1.3-p.fw.uu#1 branch .. //depot/projects/smpng/sys/contrib/dev/ipw/ipw2100-1.3.fw.uu#1 branch .. //depot/projects/smpng/sys/contrib/dev/iwi/LICENSE#1 branch .. //depot/projects/smpng/sys/contrib/dev/iwi/ipw2200-bss.fw.uu#1 branch .. //depot/projects/smpng/sys/contrib/dev/iwi/ipw2200-ibss.fw.uu#1 branch .. //depot/projects/smpng/sys/contrib/dev/iwi/ipw2200-sniffer.fw.uu#1 branch .. //depot/projects/smpng/sys/dev/acpica/acpi_thermal.c#39 integrate .. //depot/projects/smpng/sys/dev/arcmsr/arcmsr.c#13 integrate .. //depot/projects/smpng/sys/dev/arcmsr/arcmsr.h#4 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#78 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath.c#51 integrate .. //depot/projects/smpng/sys/dev/ath/if_athvar.h#31 integrate .. //depot/projects/smpng/sys/dev/bce/if_bce.c#15 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#89 integrate .. //depot/projects/smpng/sys/dev/ixgb/if_ixgb.c#19 integrate .. //depot/projects/smpng/sys/dev/msk/if_msk.c#5 integrate .. //depot/projects/smpng/sys/dev/nfe/if_nfe.c#8 integrate .. //depot/projects/smpng/sys/dev/nge/if_nge.c#52 integrate .. //depot/projects/smpng/sys/dev/pccbb/pccbb.c#64 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#87 integrate .. //depot/projects/smpng/sys/dev/pci/pcireg.h#21 integrate .. //depot/projects/smpng/sys/dev/ppbus/ppbconf.c#5 integrate .. //depot/projects/smpng/sys/dev/ppc/ppc.c#16 integrate .. //depot/projects/smpng/sys/dev/re/if_re.c#53 integrate .. //depot/projects/smpng/sys/dev/sound/pci/ds1.c#23 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10k1.c#31 integrate .. //depot/projects/smpng/sys/dev/sound/pci/emu10kx-pcm.c#4 integrate .. //depot/projects/smpng/sys/dev/sound/pci/envy24.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#35 integrate .. //depot/projects/smpng/sys/dev/stge/if_stge.c#6 integrate .. //depot/projects/smpng/sys/dev/sym/sym_hipd.c#29 integrate .. //depot/projects/smpng/sys/dev/ti/if_ti.c#8 integrate .. //depot/projects/smpng/sys/dev/txp/if_txp.c#36 integrate .. //depot/projects/smpng/sys/dev/vge/if_vge.c#20 integrate .. //depot/projects/smpng/sys/dev/zs/z8530reg.h#5 delete .. //depot/projects/smpng/sys/dev/zs/z8530var.h#4 delete .. //depot/projects/smpng/sys/dev/zs/zs.c#26 delete .. //depot/projects/smpng/sys/dev/zs/zs_macio.c#7 delete .. //depot/projects/smpng/sys/fs/fifofs/fifo_vnops.c#41 integrate .. //depot/projects/smpng/sys/geom/eli/g_eli.c#19 integrate .. //depot/projects/smpng/sys/geom/eli/g_eli_ctl.c#8 integrate .. //depot/projects/smpng/sys/gnu/fs/ext2fs/ext2_vnops.c#7 integrate .. //depot/projects/smpng/sys/i386/acpica/madt.c#18 integrate .. //depot/projects/smpng/sys/i386/i386/busdma_machdep.c#41 integrate .. //depot/projects/smpng/sys/i386/i386/intr_machdep.c#25 integrate .. //depot/projects/smpng/sys/i386/i386/io_apic.c#21 integrate .. //depot/projects/smpng/sys/i386/i386/local_apic.c#48 integrate .. //depot/projects/smpng/sys/i386/i386/machdep.c#125 integrate .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#106 integrate .. //depot/projects/smpng/sys/i386/i386/mptable.c#18 integrate .. //depot/projects/smpng/sys/i386/i386/nexus.c#25 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#114 integrate .. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#81 integrate .. //depot/projects/smpng/sys/i386/include/apicvar.h#25 integrate .. //depot/projects/smpng/sys/i386/include/intr_machdep.h#16 integrate .. //depot/projects/smpng/sys/i386/include/smp.h#22 integrate .. //depot/projects/smpng/sys/i386/isa/clock.c#53 integrate .. //depot/projects/smpng/sys/i386/linux/linux.h#18 integrate .. //depot/projects/smpng/sys/i386/linux/linux_machdep.c#45 integrate .. //depot/projects/smpng/sys/ia64/ia64/busdma_machdep.c#27 integrate .. //depot/projects/smpng/sys/kern/kern_acct.c#49 integrate .. //depot/projects/smpng/sys/kern/kern_acl.c#29 delete .. //depot/projects/smpng/sys/kern/kern_alq.c#14 integrate .. //depot/projects/smpng/sys/kern/kern_context.c#7 integrate .. //depot/projects/smpng/sys/kern/kern_descrip.c#102 integrate .. //depot/projects/smpng/sys/kern/kern_environment.c#25 integrate .. //depot/projects/smpng/sys/kern/kern_event.c#50 integrate .. //depot/projects/smpng/sys/kern/kern_exec.c#102 integrate .. //depot/projects/smpng/sys/kern/kern_exit.c#120 integrate .. //depot/projects/smpng/sys/kern/kern_fork.c#107 integrate .. //depot/projects/smpng/sys/kern/kern_intr.c#85 integrate .. //depot/projects/smpng/sys/kern/kern_jail.c#46 integrate .. //depot/projects/smpng/sys/kern/kern_ktrace.c#59 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#86 integrate .. //depot/projects/smpng/sys/kern/kern_module.c#24 integrate .. //depot/projects/smpng/sys/kern/kern_mutex.c#142 integrate .. //depot/projects/smpng/sys/kern/kern_ntptime.c#21 integrate .. //depot/projects/smpng/sys/kern/kern_prot.c#102 integrate .. //depot/projects/smpng/sys/kern/kern_resource.c#70 integrate .. //depot/projects/smpng/sys/kern/kern_shutdown.c#66 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#132 integrate .. //depot/projects/smpng/sys/kern/kern_sx.c#42 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#113 integrate .. //depot/projects/smpng/sys/kern/kern_sysctl.c#53 integrate .. //depot/projects/smpng/sys/kern/kern_time.c#50 integrate .. //depot/projects/smpng/sys/kern/kern_umtx.c#31 integrate .. //depot/projects/smpng/sys/kern/kern_uuid.c#12 integrate .. //depot/projects/smpng/sys/kern/kern_xxx.c#19 integrate .. //depot/projects/smpng/sys/kern/p1003_1b.c#2 integrate .. //depot/projects/smpng/sys/kern/subr_prof.c#29 integrate .. //depot/projects/smpng/sys/kern/subr_trap.c#83 integrate .. //depot/projects/smpng/sys/kern/sys_generic.c#48 integrate .. //depot/projects/smpng/sys/kern/sys_pipe.c#58 integrate .. //depot/projects/smpng/sys/kern/sys_process.c#57 integrate .. //depot/projects/smpng/sys/kern/sys_socket.c#26 integrate .. //depot/projects/smpng/sys/kern/sysv_msg.c#36 integrate .. //depot/projects/smpng/sys/kern/sysv_sem.c#45 integrate .. //depot/projects/smpng/sys/kern/sysv_shm.c#38 integrate .. //depot/projects/smpng/sys/kern/uipc_mqueue.c#11 integrate .. //depot/projects/smpng/sys/kern/uipc_sem.c#23 integrate .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#98 integrate .. //depot/projects/smpng/sys/kern/vfs_acl.c#1 branch .. //depot/projects/smpng/sys/kern/vfs_aio.c#77 integrate .. //depot/projects/smpng/sys/kern/vfs_cache.c#33 integrate .. //depot/projects/smpng/sys/kern/vfs_cluster.c#47 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#69 integrate .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#122 integrate .. //depot/projects/smpng/sys/modules/Makefile#135 integrate .. //depot/projects/smpng/sys/modules/ipwfw/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ipwfw/ipw_bss/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ipwfw/ipw_ibss/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ipwfw/ipw_monitor/Makefile#1 branch .. //depot/projects/smpng/sys/modules/iwifw/Makefile#1 branch .. //depot/projects/smpng/sys/modules/iwifw/iwi_bss/Makefile#1 branch .. //depot/projects/smpng/sys/modules/iwifw/iwi_ibss/Makefile#1 branch .. //depot/projects/smpng/sys/modules/iwifw/iwi_monitor/Makefile#1 branch .. //depot/projects/smpng/sys/net/ethernet.h#12 integrate .. //depot/projects/smpng/sys/net80211/_ieee80211.h#8 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_freebsd.h#9 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_input.c#36 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_ioctl.c#31 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_node.c#31 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_proto.c#23 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_proto.h#14 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_var.h#25 integrate .. //depot/projects/smpng/sys/netgraph/ng_source.c#16 integrate .. //depot/projects/smpng/sys/netgraph/ng_source.h#8 integrate .. //depot/projects/smpng/sys/netinet/ip_mroute.c#55 integrate .. //depot/projects/smpng/sys/nfsserver/nfs_syscalls.c#32 integrate .. //depot/projects/smpng/sys/pc98/cbus/clock.c#9 integrate .. //depot/projects/smpng/sys/powerpc/powermac/pswitch.c#5 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/nexus.c#11 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/pic_if.m#3 integrate .. //depot/projects/smpng/sys/security/audit/audit.c#8 integrate .. //depot/projects/smpng/sys/security/audit/audit_syscalls.c#9 integrate .. //depot/projects/smpng/sys/security/mac/mac_syscalls.c#2 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/upa.c#6 integrate .. //depot/projects/smpng/sys/sys/extattr.h#10 integrate .. //depot/projects/smpng/sys/sys/mbuf.h#68 integrate .. //depot/projects/smpng/sys/sys/param.h#111 integrate .. //depot/projects/smpng/sys/sys/priv.h#4 integrate .. //depot/projects/smpng/sys/tools/fw_stub.awk#5 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vnops.c#50 integrate .. //depot/projects/smpng/sys/ufs/ufs/extattr.h#8 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_vnops.c#62 integrate .. //depot/projects/smpng/sys/vm/vm_fault.c#64 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/acpica/madt.c#12 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.21 2006/08/11 19:22:55 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.22 2007/03/05 20:35:16 jhb Exp $"); #include #include @@ -336,7 +336,7 @@ { madt = pmap_mapbios(madt_physaddr, madt_length); - lapic_init((uintptr_t)madt->LocalApicAddress); + lapic_init(madt->LocalApicAddress); printf("ACPI APIC Table: <%.*s %.*s>\n", (int)sizeof(madt->OemId), madt->OemId, (int)sizeof(madt->OemTableId), madt->OemTableId); @@ -482,9 +482,8 @@ if (ioapics[apic->IoApicId].io_apic != NULL) panic("%s: Double APIC ID %d", __func__, apic->IoApicId); - ioapics[apic->IoApicId].io_apic = ioapic_create( - (uintptr_t)apic->Address, apic->IoApicId, - apic->Interrupt); + ioapics[apic->IoApicId].io_apic = ioapic_create(apic->Address, + apic->IoApicId, apic->Interrupt); ioapics[apic->IoApicId].io_vector = apic->Interrupt; break; default: ==== //depot/projects/smpng/sys/amd64/amd64/busdma_machdep.c#24 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.78 2006/10/15 16:52:59 hrs Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.79 2007/03/06 18:28:42 scottl Exp $"); #include #include @@ -906,7 +906,6 @@ * want to add support for invalidating * the caches on broken hardware */ - dmat->bounce_zone->total_bounced++; CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x op 0x%x " "performing bounce", __func__, op, dmat, dmat->flags); @@ -917,6 +916,7 @@ bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } + dmat->bounce_zone->total_bounced++; } if (op & BUS_DMASYNC_POSTREAD) { @@ -926,6 +926,7 @@ bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } + dmat->bounce_zone->total_bounced++; } } } ==== //depot/projects/smpng/sys/amd64/amd64/intr_machdep.c#25 (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/amd64/amd64/intr_machdep.c,v 1.29 2007/02/23 20:03:23 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.30 2007/03/06 17:16:46 jhb Exp $ */ /* @@ -52,6 +52,7 @@ #include #include #include +#include #ifdef DDB #include #endif @@ -429,8 +430,9 @@ * allocate CPUs round-robin. */ -static u_int cpu_apic_ids[MAXCPU]; -static int current_cpu, num_cpus; +/* The BSP is always a valid target. */ +static cpumask_t intr_cpus = (1 << 0); +static int current_cpu, num_cpus = 1; static void intr_assign_next_cpu(struct intsrc *isrc) @@ -443,25 +445,29 @@ */ pic = isrc->is_pic; apic_id = cpu_apic_ids[current_cpu]; - current_cpu++; - if (current_cpu >= num_cpus) - current_cpu = 0; pic->pic_assign_cpu(isrc, apic_id); + do { + current_cpu++; + if (current_cpu >= num_cpus) + current_cpu = 0; + } while (!(intr_cpus & (1 << current_cpu))); } /* - * Add a local APIC ID to our list of valid local APIC IDs that can - * be destinations of interrupts. + * Add a CPU to our mask of valid CPUs that can be destinations of + * interrupts. */ void -intr_add_cpu(u_int apic_id) +intr_add_cpu(u_int cpu) { + if (cpu >= MAXCPU) + panic("%s: Invalid CPU ID", __func__); if (bootverbose) - printf("INTR: Adding local APIC %d as a target\n", apic_id); - if (num_cpus >= MAXCPU) - panic("WARNING: Local APIC IDs exhausted!"); - cpu_apic_ids[num_cpus] = apic_id; + printf("INTR: Adding local APIC %d as a target\n", + cpu_apic_ids[cpu]); + + intr_cpus |= (1 << cpu); num_cpus++; } ==== //depot/projects/smpng/sys/amd64/amd64/io_apic.c#19 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.26 2006/11/17 16:41:03 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.28 2007/03/05 20:35:16 jhb Exp $"); #include "opt_isa.h" @@ -36,11 +36,15 @@ #include #include #include +#include #include -#include +#include #include #include +#include +#include + #include #include @@ -428,7 +432,7 @@ * Create a plain I/O APIC object. */ void * -ioapic_create(uintptr_t addr, int32_t apic_id, int intbase) +ioapic_create(vm_paddr_t addr, int32_t apic_id, int intbase) { struct ioapic *io; struct ioapic_intsrc *intpin; @@ -727,3 +731,46 @@ if (pin->io_irq < NUM_IO_INTS) intr_register_source(&pin->io_intsrc); } + +/* A simple new-bus driver to consume PCI I/O APIC devices. */ +static int +ioapic_pci_probe(device_t dev) +{ + + if (pci_get_class(dev) == PCIC_BASEPERIPH && + pci_get_subclass(dev) == PCIS_BASEPERIPH_PIC) { + switch (pci_get_progif(dev)) { + case PCIP_BASEPERIPH_PIC_IO_APIC: + device_set_desc(dev, "IO APIC"); + break; + case PCIP_BASEPERIPH_PIC_IOX_APIC: + device_set_desc(dev, "IO(x) APIC"); + break; + default: + return (ENXIO); + } + device_quiet(dev); + return (-10000); + } + return (ENXIO); +} + +static int +ioapic_pci_attach(device_t dev) +{ + + return (0); +} + +static device_method_t ioapic_pci_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, ioapic_pci_probe), + DEVMETHOD(device_attach, ioapic_pci_attach), + + { 0, 0 } +}; + +DEFINE_CLASS_0(ioapic, ioapic_pci_driver, ioapic_pci_methods, 0); + +static devclass_t ioapic_devclass; +DRIVER_MODULE(ioapic, pci, ioapic_pci_driver, ioapic_devclass, 0, 0); ==== //depot/projects/smpng/sys/amd64/amd64/local_apic.c#27 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.34 2006/12/17 06:48:39 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.36 2007/03/06 17:16:46 jhb Exp $"); #include "opt_hwpmc_hooks.h" @@ -205,7 +205,7 @@ * Map the local APIC and setup necessary interrupt vectors. */ void -lapic_init(uintptr_t addr) +lapic_init(vm_paddr_t addr) { /* Map the local APIC and setup the spurious interrupt handler. */ @@ -220,7 +220,6 @@ /* Set BSP's per-CPU local APIC ID. */ PCPU_SET(apic_id, lapic_id()); - intr_add_cpu(PCPU_GET(apic_id)); /* Local APIC timer interrupt. */ setidt(APIC_TIMER_INT, IDTVEC(timerint), SDT_SYSIGT, SEL_KPL, 0); ==== //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#41 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.281 2007/02/08 16:49:58 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.283 2007/03/06 17:16:46 jhb Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -152,7 +152,7 @@ int cpu_bsp:1; int cpu_disabled:1; } static cpu_info[MAXCPU]; -static int cpu_apic_ids[MAXCPU]; +int cpu_apic_ids[MAXCPU]; /* Holds pending bitmap based IPIs per CPU */ static volatile u_int cpu_ipi_pending[MAXCPU]; @@ -625,10 +625,11 @@ static void set_interrupt_apic_ids(void) { - u_int apic_id; + u_int i, apic_id; - for (apic_id = 0; apic_id < MAXCPU; apic_id++) { - if (!cpu_info[apic_id].cpu_present) + for (i = 0; i < MAXCPU; i++) { + apic_id = cpu_apic_ids[i]; + if (apic_id == -1) continue; if (cpu_info[apic_id].cpu_bsp) continue; @@ -640,7 +641,7 @@ apic_id % hyperthreading_cpus != 0) continue; - intr_add_cpu(apic_id); + intr_add_cpu(i); } } @@ -835,13 +836,16 @@ ncpu = mp_ncpus - 1; /* does not shootdown self */ if (ncpu < 1) return; /* no other cpus */ - mtx_assert(&smp_ipi_mtx, MA_OWNED); + if (!(read_rflags() & PSL_I)) + panic("%s: interrupts disabled", __func__); + mtx_lock_spin(&smp_ipi_mtx); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); ipi_all_but_self(vector); while (smp_tlb_wait < ncpu) ia32_pause(); + mtx_unlock_spin(&smp_ipi_mtx); } static void @@ -869,7 +873,9 @@ if (ncpu < 1) return; } - mtx_assert(&smp_ipi_mtx, MA_OWNED); + if (!(read_rflags() & PSL_I)) + panic("%s: interrupts disabled", __func__); + mtx_lock_spin(&smp_ipi_mtx); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); @@ -879,6 +885,7 @@ ipi_selected(mask, vector); while (smp_tlb_wait < ncpu) ia32_pause(); + mtx_unlock_spin(&smp_ipi_mtx); } void ==== //depot/projects/smpng/sys/amd64/amd64/mptable.c#10 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.237 2005/10/31 15:41:17 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.238 2007/03/05 20:35:16 jhb Exp $"); #include #include @@ -323,7 +323,7 @@ lapic_init(DEFAULT_APIC_BASE); printf("Default Configuration %d", mpfps->config_type); } else { - lapic_init((uintptr_t)mpct->apic_address); + lapic_init(mpct->apic_address); printf("%.*s %.*s", (int)sizeof(mpct->oem_id), mpct->oem_id, (int)sizeof(mpct->product_id), mpct->product_id); } @@ -514,8 +514,8 @@ if (ioapics[apic->apic_id] != NULL) panic("%s: Double APIC ID %d", __func__, apic->apic_id); - ioapics[apic->apic_id] = ioapic_create( - (uintptr_t)apic->apic_address, apic->apic_id, -1); + ioapics[apic->apic_id] = ioapic_create(apic->apic_address, + apic->apic_id, -1); break; default: break; ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#72 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.579 2007/02/19 10:55:16 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.580 2007/03/05 21:40:10 alc Exp $"); /* * Manages physical address maps. @@ -752,18 +752,7 @@ u_int cpumask; u_int other_cpus; - if (smp_started) { - if (!(read_rflags() & PSL_I)) - panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_ipi_mtx); - } else - critical_enter(); - /* - * We need to disable interrupt preemption but MUST NOT have - * interrupts disabled here. - * XXX we may need to hold schedlock to get a coherent pm_active - * XXX critical sections disable interrupts again - */ + sched_pin(); if (pmap == kernel_pmap || pmap->pm_active == all_cpus) { invlpg(va); smp_invlpg(va); @@ -775,10 +764,7 @@ if (pmap->pm_active & other_cpus) smp_masked_invlpg(pmap->pm_active & other_cpus, va); } - if (smp_started) - mtx_unlock_spin(&smp_ipi_mtx); - else - critical_exit(); + sched_unpin(); } void @@ -788,18 +774,7 @@ u_int other_cpus; vm_offset_t addr; - if (smp_started) { - if (!(read_rflags() & PSL_I)) - panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_ipi_mtx); - } else - critical_enter(); - /* - * We need to disable interrupt preemption but MUST NOT have - * interrupts disabled here. - * XXX we may need to hold schedlock to get a coherent pm_active - * XXX critical sections disable interrupts again - */ + sched_pin(); if (pmap == kernel_pmap || pmap->pm_active == all_cpus) { for (addr = sva; addr < eva; addr += PAGE_SIZE) invlpg(addr); @@ -814,10 +789,7 @@ smp_masked_invlpg_range(pmap->pm_active & other_cpus, sva, eva); } - if (smp_started) - mtx_unlock_spin(&smp_ipi_mtx); - else - critical_exit(); + sched_unpin(); } void @@ -826,18 +798,7 @@ u_int cpumask; u_int other_cpus; - if (smp_started) { - if (!(read_rflags() & PSL_I)) - panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_ipi_mtx); - } else - critical_enter(); - /* - * We need to disable interrupt preemption but MUST NOT have - * interrupts disabled here. - * XXX we may need to hold schedlock to get a coherent pm_active - * XXX critical sections disable interrupts again - */ + sched_pin(); if (pmap == kernel_pmap || pmap->pm_active == all_cpus) { invltlb(); smp_invltlb(); @@ -849,34 +810,17 @@ if (pmap->pm_active & other_cpus) smp_masked_invltlb(pmap->pm_active & other_cpus); } - if (smp_started) - mtx_unlock_spin(&smp_ipi_mtx); - else - critical_exit(); + sched_unpin(); } void pmap_invalidate_cache(void) { - if (smp_started) { - if (!(read_rflags() & PSL_I)) - panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_ipi_mtx); - } else - critical_enter(); - /* - * We need to disable interrupt preemption but MUST NOT have - * interrupts disabled here. - * XXX we may need to hold schedlock to get a coherent pm_active - * XXX critical sections disable interrupts again - */ + sched_pin(); wbinvd(); smp_cache_flush(); - if (smp_started) - mtx_unlock_spin(&smp_ipi_mtx); - else - critical_exit(); + sched_unpin(); } #else /* !SMP */ /* ==== //depot/projects/smpng/sys/amd64/include/apicvar.h#16 (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/amd64/include/apicvar.h,v 1.21 2006/12/17 06:48:40 kmacy Exp $ + * $FreeBSD: src/sys/amd64/include/apicvar.h,v 1.22 2007/03/05 20:35:16 jhb Exp $ */ #ifndef _MACHINE_APICVAR_H_ @@ -180,7 +180,7 @@ void apic_free_vector(u_int vector, u_int irq); u_int apic_idt_to_irq(u_int vector); void apic_register_enumerator(struct apic_enumerator *enumerator); -void *ioapic_create(uintptr_t addr, int32_t id, int intbase); +void *ioapic_create(vm_paddr_t addr, int32_t apic_id, int intbase); int ioapic_disable_pin(void *cookie, u_int pin); int ioapic_get_vector(void *cookie, u_int pin); void ioapic_register(void *cookie); @@ -197,7 +197,7 @@ void lapic_dump(const char *str); void lapic_eoi(void); int lapic_id(void); -void lapic_init(uintptr_t addr); +void lapic_init(vm_paddr_t addr); int lapic_intr_pending(u_int vector); void lapic_ipi_raw(register_t icrlo, u_int dest); void lapic_ipi_vectored(u_int vector, int dest); ==== //depot/projects/smpng/sys/amd64/include/intr_machdep.h#14 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.15 2007/02/23 12:18:26 piso Exp $ + * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.16 2007/03/06 17:16:46 jhb Exp $ */ #ifndef __MACHINE_INTR_MACHDEP_H__ @@ -131,9 +131,7 @@ void elcr_resume(void); void elcr_write_trigger(u_int irq, enum intr_trigger trigger); #ifdef SMP -void intr_add_cpu(u_int apic_id); -#else -#define intr_add_cpu(apic_id) +void intr_add_cpu(u_int cpu); #endif int intr_add_handler(const char *name, int vector, driver_filter_t filter, driver_intr_t handler, void *arg, enum intr_type flags, ==== //depot/projects/smpng/sys/amd64/include/smp.h#14 (text+ko) ==== @@ -6,7 +6,7 @@ * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp * ---------------------------------------------------------------------------- * - * $FreeBSD: src/sys/amd64/include/smp.h,v 1.88 2006/05/01 21:36:47 jhb Exp $ + * $FreeBSD: src/sys/amd64/include/smp.h,v 1.89 2007/03/06 17:16:46 jhb Exp $ * */ @@ -34,6 +34,7 @@ extern int boot_cpu_id; extern struct pcb stoppcbs[]; extern struct mtx smp_tlb_mtx; +extern int cpu_apic_ids[]; /* IPI handlers */ inthand_t ==== //depot/projects/smpng/sys/amd64/linux32/linux.h#11 (text+ko) ==== @@ -8,7 +8,7 @@ * 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 + * notice, this list of conditions and the following disclaimer * in this position and unchanged. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the @@ -27,11 +27,11 @@ * (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/amd64/linux32/linux.h,v 1.13 2007/02/24 16:49:24 netchild Exp $ + * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.14 2007/03/02 00:08:47 jkim Exp $ */ -#ifndef _AMD64_LINUX_LINUX_H_ -#define _AMD64_LINUX_LINUX_H_ +#ifndef _AMD64_LINUX_H_ +#define _AMD64_LINUX_H_ #include @@ -39,20 +39,20 @@ * debugging support */ extern u_char linux_debug_map[]; -#define ldebug(name) isclr(linux_debug_map, LINUX_SYS_linux_ ## name) -#define ARGS(nm, fmt) "linux(%ld): "#nm"("fmt")\n", (long)td->td_proc->p_pid -#define LMSG(fmt) "linux(%ld): "fmt"\n", (long)td->td_proc->p_pid +#define ldebug(name) isclr(linux_debug_map, LINUX_SYS_linux_ ## name) +#define ARGS(nm, fmt) "linux(%ld): "#nm"("fmt")\n", (long)td->td_proc->p_pid +#define LMSG(fmt) "linux(%ld): "fmt"\n", (long)td->td_proc->p_pid #ifdef MALLOC_DECLARE MALLOC_DECLARE(M_LINUX); #endif -#define LINUX32_USRSTACK ((1ul << 32) - PAGE_SIZE) +#define LINUX32_USRSTACK ((1ul << 32) - PAGE_SIZE) /* XXX 16 = sizeof(linux32_ps_strings) */ -#define LINUX32_PS_STRINGS (LINUX32_USRSTACK - 16) -#define LINUX32_MAXDSIZ (512*1024*1024) /* 512MB */ -#define LINUX32_MAXSSIZ (64*1024*1024) /* 64MB */ -#define LINUX32_MAXVMEM 0 /* Unlimited */ +#define LINUX32_PS_STRINGS (LINUX32_USRSTACK - 16) +#define LINUX32_MAXDSIZ (512 * 1024 * 1024) /* 512MB */ +#define LINUX32_MAXSSIZ (64 * 1024 * 1024) /* 64MB */ +#define LINUX32_MAXVMEM 0 /* Unlimited */ #define PTRIN(v) (void *)(uintptr_t)(v) #define PTROUT(v) (l_uintptr_t)(uintptr_t)(v) @@ -132,7 +132,7 @@ #define LINUX_RLIMIT_NPROC 6 #define LINUX_RLIMIT_NOFILE 7 #define LINUX_RLIMIT_MEMLOCK 8 -#define LINUX_RLIMIT_AS 9 /* address space limit */ +#define LINUX_RLIMIT_AS 9 /* Address space limit */ #define LINUX_RLIM_NLIMITS 10 @@ -205,21 +205,21 @@ } __packed; struct l_stat { - l_ushort st_dev; - l_ulong st_ino; - l_ushort st_mode; - l_ushort st_nlink; - l_ushort st_uid; - l_ushort st_gid; - l_ushort st_rdev; - l_long st_size; - struct l_timespec st_atimespec; - struct l_timespec st_mtimespec; - struct l_timespec st_ctimespec; - l_long st_blksize; - l_long st_blocks; - l_ulong st_flags; - l_ulong st_gen; + l_ushort st_dev; + l_ulong st_ino; + l_ushort st_mode; + l_ushort st_nlink; + l_ushort st_uid; + l_ushort st_gid; + l_ushort st_rdev; + l_long st_size; + struct l_timespec st_atimespec; + struct l_timespec st_mtimespec; + struct l_timespec st_ctimespec; + l_long st_blksize; + l_long st_blocks; + l_ulong st_flags; + l_ulong st_gen; }; struct l_stat64 { @@ -315,9 +315,9 @@ #define LINUX_SIGADDSET(set, sig) SIGADDSET(set, sig) /* sigaltstack */ -#define LINUX_MINSIGSTKSZ 2048 -#define LINUX_SS_ONSTACK 1 -#define LINUX_SS_DISABLE 2 +#define LINUX_MINSIGSTKSZ 2048 +#define LINUX_SS_ONSTACK 1 +#define LINUX_SS_DISABLE 2 int linux_to_bsd_sigaltstack(int lsa); int bsd_to_linux_sigaltstack(int bsa); @@ -380,11 +380,11 @@ l_uintptr_t uc_link; l_stack_t uc_stack; struct l_sigcontext uc_mcontext; - l_sigset_t uc_sigmask; + l_sigset_t uc_sigmask; } __packed; -#define LINUX_SI_MAX_SIZE 128 -#define LINUX_SI_PAD_SIZE ((LINUX_SI_MAX_SIZE/sizeof(l_int)) - 3) +#define LINUX_SI_MAX_SIZE 128 +#define LINUX_SI_PAD_SIZE ((LINUX_SI_MAX_SIZE/sizeof(l_int)) - 3) union l_sigval { l_int sival_int; @@ -423,41 +423,41 @@ } __packed _sigchld; struct { - l_uintptr_t _addr; /* faulting insn/memory ref. */ + l_uintptr_t _addr; /* Faulting insn/memory ref. */ } __packed _sigfault; struct { - l_int _band; /* POLL_IN,POLL_OUT,POLL_MSG */ + l_int _band; /* POLL_IN,POLL_OUT,POLL_MSG */ l_int _fd; } __packed _sigpoll; } _sifields; } __packed l_siginfo_t; -#define lsi_pid _sifields._kill._pid -#define lsi_uid _sifields._kill._uid -#define lsi_status _sifields._sigchld._status -#define lsi_utime _sifields._sigchld._utime -#define lsi_stime _sifields._sigchld._stime -#define lsi_value _sifields._rt._sigval -#define lsi_int _sifields._rt._sigval.sival_int -#define lsi_ptr _sifields._rt._sigval.sival_ptr -#define lsi_addr _sifields._sigfault._addr -#define lsi_band _sifields._sigpoll._band -#define lsi_fd _sifields._sigpoll._fd +#define lsi_pid _sifields._kill._pid +#define lsi_uid _sifields._kill._uid +#define lsi_status _sifields._sigchld._status +#define lsi_utime _sifields._sigchld._utime +#define lsi_stime _sifields._sigchld._stime +#define lsi_value _sifields._rt._sigval +#define lsi_int _sifields._rt._sigval.sival_int +#define lsi_ptr _sifields._rt._sigval.sival_ptr +#define lsi_addr _sifields._sigfault._addr +#define lsi_band _sifields._sigpoll._band +#define lsi_fd _sifields._sigpoll._fd struct l_fpreg { - u_int16_t significand[4]; - u_int16_t exponent; + u_int16_t significand[4]; + u_int16_t exponent; } __packed; struct l_fpxreg { - u_int16_t significand[4]; - u_int16_t exponent; - u_int16_t padding[3]; + u_int16_t significand[4]; + u_int16_t exponent; + u_int16_t padding[3]; } __packed; struct l_xmmreg { - u_int32_t element[4]; + u_int32_t element[4]; } __packed; struct l_fpstate { @@ -471,13 +471,13 @@ u_int32_t datasel; struct l_fpreg _st[8]; u_int16_t status; - u_int16_t magic; /* 0xffff = regular FPU data */ + u_int16_t magic; /* 0xffff = regular FPU data */ /* FXSR FPU environment */ - u_int32_t _fxsr_env[6]; /* env is ignored */ + u_int32_t _fxsr_env[6]; /* env is ignored. */ u_int32_t mxcsr; u_int32_t reserved; - struct l_fpxreg _fxsr_st[8]; /* reg data is ignored */ + struct l_fpxreg _fxsr_st[8]; /* reg data is ignored. */ struct l_xmmreg _xmm[8]; u_int32_t padding[56]; } __packed; @@ -528,22 +528,22 @@ /* * open/fcntl flags */ -#define LINUX_O_RDONLY 00 -#define LINUX_O_WRONLY 01 -#define LINUX_O_RDWR 02 -#define LINUX_O_CREAT 0100 -#define LINUX_O_EXCL 0200 -#define LINUX_O_NOCTTY 0400 -#define LINUX_O_TRUNC 01000 -#define LINUX_O_APPEND 02000 -#define LINUX_O_NONBLOCK 04000 +#define LINUX_O_RDONLY 00000000 +#define LINUX_O_WRONLY 00000001 +#define LINUX_O_RDWR 00000002 +#define LINUX_O_CREAT 00000100 +#define LINUX_O_EXCL 00000200 +#define LINUX_O_NOCTTY 00000400 +#define LINUX_O_TRUNC 00001000 +#define LINUX_O_APPEND 00002000 +#define LINUX_O_NONBLOCK 00004000 #define LINUX_O_NDELAY LINUX_O_NONBLOCK -#define LINUX_O_SYNC 010000 -#define LINUX_FASYNC 020000 -#define LINUX_O_DIRECT 040000 /* direct disk access hint */ -#define LINUX_O_LARGEFILE 0100000 -#define LINUX_O_DIRECTORY 0200000 /* must be a directory */ -#define LINUX_O_NOFOLLOW 0400000 /* don't follow links */ +#define LINUX_O_SYNC 00010000 +#define LINUX_FASYNC 00020000 +#define LINUX_O_DIRECT 00040000 /* Direct disk access hint */ +#define LINUX_O_LARGEFILE 00100000 +#define LINUX_O_DIRECTORY 00200000 /* Must be a directory */ +#define LINUX_O_NOFOLLOW 00400000 /* Do not follow links */ #define LINUX_O_NOATIME 01000000 >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Mar 8 04:34:24 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D46A616A412; Thu, 8 Mar 2007 04:34:23 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7865916A40E for ; Thu, 8 Mar 2007 04:34:23 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 6893E13C428 for ; Thu, 8 Mar 2007 04:34:23 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l284YNnB055491 for ; Thu, 8 Mar 2007 04:34:23 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l284YLje055488 for perforce@freebsd.org; Thu, 8 Mar 2007 04:34:21 GMT (envelope-from mjacob@freebsd.org) Date: Thu, 8 Mar 2007 04:34:21 GMT Message-Id: <200703080434.l284YLje055488@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Cc: Subject: PERFORCE change 115507 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 04:34:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=115507 Change 115507 by mjacob@mjexp_6 on 2007/03/08 04:33:37 Integrate from vendor branch. Affected files ... .. //depot/projects/mjexp_6/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/mjexp_6/sys/amd64/conf/SMP#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/busdma_machdep.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/cpufunc.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/elf_trampoline.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/locore.S#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/mem.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/nexus_io.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/trap.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/arm/vm_machdep.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/at91/at91.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/conf/AVILA#1 branch .. //depot/projects/mjexp_6/sys/arm/conf/IQ31244#2 integrate .. //depot/projects/mjexp_6/sys/arm/include/bus.h#2 integrate .. //depot/projects/mjexp_6/sys/arm/include/db_machdep.h#2 integrate .. //depot/projects/mjexp_6/sys/arm/include/elf.h#2 integrate .. //depot/projects/mjexp_6/sys/arm/include/md_var.h#2 integrate .. //depot/projects/mjexp_6/sys/arm/sa11x0/sa11x0_io.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/sa11x0/sa11x0_irqhandler.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/xscale/i80321/i80321_pci.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/xscale/i80321/i80321_space.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/xscale/i80321/i80321_wdog.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/xscale/i80321/obio_space.c#2 integrate .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/avila_ata.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/avila_led.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/avila_machdep.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/files.avila#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/files.ixp425#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/if_npe.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/if_npereg.h#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixdp425_pci.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixdp425reg.h#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_a4x_io.S#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_a4x_space.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_iic.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_intr.h#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_mem.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_npe.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_npereg.h#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_npevar.h#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_pci.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_pci_asm.S#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_pci_space.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_qmgr.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_qmgr.h#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_space.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_timer.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_wdog.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425reg.h#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425var.h#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/std.avila#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/std.ixp425#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/uart_bus_ixp425.c#1 branch .. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/uart_cpu_ixp425.c#1 branch .. //depot/projects/mjexp_6/sys/boot/i386/cdboot/cdboot.s#2 integrate .. //depot/projects/mjexp_6/sys/cam/scsi/scsi_da.c#3 integrate .. //depot/projects/mjexp_6/sys/conf/Makefile.arm#2 integrate .. //depot/projects/mjexp_6/sys/conf/files#5 integrate .. //depot/projects/mjexp_6/sys/conf/files.arm#3 integrate .. //depot/projects/mjexp_6/sys/conf/kern.pre.mk#2 integrate .. //depot/projects/mjexp_6/sys/conf/options.arm#2 integrate .. //depot/projects/mjexp_6/sys/dev/ata/atapi-cam.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/bce/if_bce.c#4 integrate .. //depot/projects/mjexp_6/sys/dev/bge/if_bge.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/em/if_em.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/fdc/fdc.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/hme/if_hme.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/ichwd/ichwd.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/iicbus/ad7418.c#1 branch .. //depot/projects/mjexp_6/sys/dev/iicbus/ds1672.c#1 branch .. //depot/projects/mjexp_6/sys/dev/iicbus/iic.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/iicbus/iicbb.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/iicbus/iicbus.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/iicbus/iicbus_if.m#2 integrate .. //depot/projects/mjexp_6/sys/dev/iicbus/iiconf.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/iicbus/iiconf.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/ipmi/ipmi.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/isp/isp_freebsd.h#5 integrate .. //depot/projects/mjexp_6/sys/dev/iwi/if_iwi.c#4 integrate .. //depot/projects/mjexp_6/sys/dev/iwi/if_iwireg.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/iwi/if_iwivar.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/acphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/acphyreg.h#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/amphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/bmtphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/brgphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/ciphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/exphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/gentbi.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/inphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/ip1000phy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/lxtphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/mii_physubr.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/miidevs#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/miivar.h#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/mlphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/nsgphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/nsphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/pnaphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/qsphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/rgephy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/rlphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/ruephy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/tdkphy.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/mii/tlphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mii/xmphy.c#3 integrate .. //depot/projects/mjexp_6/sys/dev/mk48txx/mk48txx.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/syscons/fire/fire_saver.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/syscons/logo/logo_saver.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/syscons/rain/rain_saver.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/syscons/warp/warp_saver.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/uart/uart_dev_ns8250.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/vge/if_vge.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/watchdog/watchdog.c#2 integrate .. //depot/projects/mjexp_6/sys/dev/wi/if_wi_pccard.c#2 integrate .. //depot/projects/mjexp_6/sys/fs/msdosfs/denode.h#2 integrate .. //depot/projects/mjexp_6/sys/fs/msdosfs/msdosfs_fat.c#2 integrate .. //depot/projects/mjexp_6/sys/geom/geom_disk.c#2 integrate .. //depot/projects/mjexp_6/sys/i386/i386/elan-mmcr.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/kern_clock.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/kern_conf.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/subr_firmware.c#3 integrate .. //depot/projects/mjexp_6/sys/kern/sys_generic.c#2 integrate .. //depot/projects/mjexp_6/sys/kern/uipc_usrreq.c#3 integrate .. //depot/projects/mjexp_6/sys/kern/vfs_lookup.c#3 integrate .. //depot/projects/mjexp_6/sys/kern/vfs_syscalls.c#2 integrate .. //depot/projects/mjexp_6/sys/net/bpf.c#3 integrate .. //depot/projects/mjexp_6/sys/net/ethernet.h#3 integrate .. //depot/projects/mjexp_6/sys/net/if_bridge.c#4 integrate .. //depot/projects/mjexp_6/sys/net/if_ethersubr.c#2 integrate .. //depot/projects/mjexp_6/sys/net/if_loop.c#3 integrate .. //depot/projects/mjexp_6/sys/net/if_tap.c#3 integrate .. //depot/projects/mjexp_6/sys/net/if_tun.c#3 integrate .. //depot/projects/mjexp_6/sys/net/route.c#2 integrate .. //depot/projects/mjexp_6/sys/netgraph/ng_ksocket.c#2 integrate .. //depot/projects/mjexp_6/sys/netinet/ip_mroute.c#2 integrate .. //depot/projects/mjexp_6/sys/netinet/tcp.h#2 integrate .. //depot/projects/mjexp_6/sys/pci/if_pcn.c#3 integrate .. //depot/projects/mjexp_6/sys/pci/if_pcnreg.h#3 integrate .. //depot/projects/mjexp_6/sys/sys/conf.h#2 integrate .. //depot/projects/mjexp_6/sys/sys/firmware.h#2 integrate .. //depot/projects/mjexp_6/sys/sys/param.h#5 integrate .. //depot/projects/mjexp_6/sys/sys/watchdog.h#2 integrate .. //depot/projects/mjexp_6/sys/tools/fw_stub.awk#2 integrate .. //depot/projects/mjexp_6/sys/ufs/ufs/ufs_vnops.c#2 integrate .. //depot/projects/mjexp_6/sys/vm/swap_pager.c#3 integrate .. //depot/projects/mjexp_6/sys/vm/swap_pager.h#2 integrate Differences ... ==== //depot/projects/mjexp_6/sys/amd64/amd64/pmap.c#2 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.516.2.8 2006/09/27 18:10:15 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.516.2.9 2007/02/28 09:27:45 kib Exp $"); /* * Manages physical address maps. @@ -1388,9 +1388,15 @@ while ((*pmap_pde(kernel_pmap, kernel_vm_end) & PG_V) != 0) { kernel_vm_end = (kernel_vm_end + PAGE_SIZE * NPTEPG) & ~(PAGE_SIZE * NPTEPG - 1); nkpt++; + if (kernel_vm_end - 1 >= kernel_map->max_offset) { + kernel_vm_end = kernel_map->max_offset; + break; + } } } addr = roundup2(addr, PAGE_SIZE * NPTEPG); + if (addr - 1 >= kernel_map->max_offset) + addr = kernel_map->max_offset; while (kernel_vm_end < addr) { pde = pmap_pde(kernel_pmap, kernel_vm_end); if (pde == NULL) { @@ -1408,6 +1414,10 @@ } if ((*pde & PG_V) != 0) { kernel_vm_end = (kernel_vm_end + PAGE_SIZE * NPTEPG) & ~(PAGE_SIZE * NPTEPG - 1); + if (kernel_vm_end - 1 >= kernel_map->max_offset) { + kernel_vm_end = kernel_map->max_offset; + break; + } continue; } @@ -1427,6 +1437,10 @@ *pmap_pde(kernel_pmap, kernel_vm_end) = newpdir; kernel_vm_end = (kernel_vm_end + PAGE_SIZE * NPTEPG) & ~(PAGE_SIZE * NPTEPG - 1); + if (kernel_vm_end - 1 >= kernel_map->max_offset) { + kernel_vm_end = kernel_map->max_offset; + break; + } } } ==== //depot/projects/mjexp_6/sys/amd64/conf/SMP#2 (text+ko) ==== @@ -2,8 +2,10 @@ # SMP -- Generic kernel configuration file for FreeBSD/amd64 SMP # Use this for multi-processor machines # -# $FreeBSD: src/sys/amd64/conf/SMP,v 1.1.6.1 2005/09/18 03:37:58 scottl Exp $ +# $FreeBSD: src/sys/amd64/conf/SMP,v 1.1.6.2 2007/03/03 23:19:46 cperciva Exp $ include GENERIC +ident SMP-GENERIC + options SMP ==== //depot/projects/mjexp_6/sys/arm/arm/busdma_machdep.c#2 (text+ko) ==== @@ -29,10 +29,10 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.22.2.2 2006/06/23 17:42:33 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.22.2.3 2007/02/26 23:23:31 cognet Exp $"); /* - * MacPPC bus dma support routines + * ARM bus dma support routines */ #define _ARM32_BUS_DMA_PRIVATE @@ -48,6 +48,7 @@ #include #include #include +#include #include #include @@ -56,7 +57,14 @@ #include #include #include +#include +#define MAX_BPAGES 64 +#define BUS_DMA_COULD_BOUNCE BUS_DMA_BUS3 +#define BUS_DMA_MIN_ALLOC_COMP BUS_DMA_BUS4 + +struct bounce_zone; + struct bus_dma_tag { bus_dma_tag_t parent; bus_size_t alignment; @@ -81,8 +89,47 @@ */ struct arm32_dma_range *ranges; int _nranges; + struct bounce_zone *bounce_zone; +}; + +struct bounce_page { + vm_offset_t vaddr; /* kva of bounce buffer */ + vm_offset_t vaddr_nocache; /* kva of bounce buffer uncached */ + bus_addr_t busaddr; /* Physical address */ + vm_offset_t datavaddr; /* kva of client data */ + bus_size_t datacount; /* client data count */ + STAILQ_ENTRY(bounce_page) links; +}; + +int busdma_swi_pending; + +struct bounce_zone { + STAILQ_ENTRY(bounce_zone) links; + STAILQ_HEAD(bp_list, bounce_page) bounce_page_list; + int total_bpages; + int free_bpages; + int reserved_bpages; + int active_bpages; + int total_bounced; + int total_deferred; + bus_size_t alignment; + bus_size_t boundary; + bus_addr_t lowaddr; + char zoneid[8]; + char lowaddrid[20]; + struct sysctl_ctx_list sysctl_tree; + struct sysctl_oid *sysctl_tree_top; }; +static struct mtx bounce_lock; +static int total_bpages; +static int busdma_zonecount; +static STAILQ_HEAD(, bounce_zone) bounce_zone_list; + +SYSCTL_NODE(_hw, OID_AUTO, busdma, CTLFLAG_RD, 0, "Busdma parameters"); +SYSCTL_INT(_hw_busdma, OID_AUTO, total_bpages, CTLFLAG_RD, &total_bpages, 0, + "Total bounce pages"); + #define DMAMAP_LINEAR 0x1 #define DMAMAP_MBUF 0x2 #define DMAMAP_UIO 0x4 @@ -90,6 +137,9 @@ #define DMAMAP_TYPE_MASK (DMAMAP_LINEAR|DMAMAP_MBUF|DMAMAP_UIO) #define DMAMAP_COHERENT 0x8 struct bus_dmamap { + struct bp_list bpages; + int pagesneeded; + int pagesreserved; bus_dma_tag_t dmat; int flags; void *buffer; @@ -97,8 +147,15 @@ void *allocbuffer; TAILQ_ENTRY(bus_dmamap) freelist; int len; + STAILQ_ENTRY(bus_dmamap) links; + bus_dmamap_callback_t *callback; + void *callback_arg; + }; +static STAILQ_HEAD(, bus_dmamap) bounce_map_waitinglist; +static STAILQ_HEAD(, bus_dmamap) bounce_map_callbacklist; + static TAILQ_HEAD(,bus_dmamap) dmamap_freelist = TAILQ_HEAD_INITIALIZER(dmamap_freelist); @@ -109,6 +166,45 @@ MTX_SYSINIT(busdma_mtx, &busdma_mtx, "busdma lock", MTX_DEF); +static void init_bounce_pages(void *dummy); +static int alloc_bounce_zone(bus_dma_tag_t dmat); +static int alloc_bounce_pages(bus_dma_tag_t dmat, u_int numpages); +static int reserve_bounce_pages(bus_dma_tag_t dmat, bus_dmamap_t map, + int commit); +static bus_addr_t add_bounce_page(bus_dma_tag_t dmat, bus_dmamap_t map, + vm_offset_t vaddr, bus_size_t size); +static void free_bounce_page(bus_dma_tag_t dmat, struct bounce_page *bpage); + +/* Default tag, as most drivers provide no parent tag. */ +bus_dma_tag_t arm_root_dma_tag; + +/* + * Return true if a match is made. + * + * To find a match walk the chain of bus_dma_tag_t's looking for 'paddr'. + * + * If paddr is within the bounds of the dma tag then call the filter callback + * to check for a match, if there is no filter callback then assume a match. + */ +static int +run_filter(bus_dma_tag_t dmat, bus_addr_t paddr) +{ + int retval; + + retval = 0; + + do { + if (((paddr > dmat->lowaddr && paddr <= dmat->highaddr) + || ((paddr & (dmat->alignment - 1)) != 0)) + && (dmat->filter == NULL + || (*dmat->filter)(dmat->filterarg, paddr) != 0)) + retval = 1; + + dmat = dmat->parent; + } while (retval == 0 && dmat != NULL); + return (retval); +} + static void arm_dmamap_freelist_init(void *dummy) { @@ -129,6 +225,19 @@ bus_dmamap_t map, void *buf, bus_size_t buflen, struct pmap *pmap, int flags, vm_offset_t *lastaddrp, int *segp); +static __inline int +_bus_dma_can_bounce(vm_offset_t lowaddr, vm_offset_t highaddr) +{ + int i; + for (i = 0; phys_avail[i] && phys_avail[i + 1]; i += 2) { + if ((lowaddr >= phys_avail[i] && lowaddr <= phys_avail[i + 1]) + || (lowaddr < phys_avail[i] && + highaddr > phys_avail[i])) + return (1); + } + return (0); +} + static __inline struct arm32_dma_range * _bus_dma_inrange(struct arm32_dma_range *ranges, int nranges, bus_addr_t curaddr) @@ -195,11 +304,12 @@ TAILQ_REMOVE(&dmamap_freelist, map, freelist); mtx_unlock(&busdma_mtx); if (!map) { - map = malloc(sizeof(*map), M_DEVBUF, M_NOWAIT); + map = malloc(sizeof(*map), M_DEVBUF, M_NOWAIT | M_ZERO); if (map) map->flags = DMAMAP_ALLOCATED; } else map->flags = 0; + STAILQ_INIT(&map->bpages); return (map); } @@ -232,6 +342,8 @@ int error = 0; /* Return a NULL tag on failure */ *dmat = NULL; + if (!parent) + parent = arm_root_dma_tag; newtag = (bus_dma_tag_t)malloc(sizeof(*newtag), M_DEVBUF, M_NOWAIT); if (newtag == NULL) { @@ -273,6 +385,9 @@ else if (parent->boundary != 0) newtag->boundary = min(parent->boundary, newtag->boundary); + if ((newtag->filter != NULL) || + ((parent->flags & BUS_DMA_COULD_BOUNCE) != 0)) + newtag->flags |= BUS_DMA_COULD_BOUNCE; if (newtag->filter == NULL) { /* * Short circuit looking at our parent directly @@ -285,8 +400,38 @@ if (newtag->parent != NULL) atomic_add_int(&parent->ref_count, 1); } + if (_bus_dma_can_bounce(newtag->lowaddr, newtag->highaddr) + || newtag->alignment > 1) + newtag->flags |= BUS_DMA_COULD_BOUNCE; - *dmat = newtag; + if (((newtag->flags & BUS_DMA_COULD_BOUNCE) != 0) && + (flags & BUS_DMA_ALLOCNOW) != 0) { + struct bounce_zone *bz; + + /* Must bounce */ + + if ((error = alloc_bounce_zone(newtag)) != 0) { + free(newtag, M_DEVBUF); + return (error); + } + bz = newtag->bounce_zone; + + if (ptoa(bz->total_bpages) < maxsize) { + int pages; + + pages = atop(maxsize) - bz->total_bpages; + + /* Add pages to our bounce pool */ + if (alloc_bounce_pages(newtag, pages) < pages) + error = ENOMEM; + } + /* Performed initial allocation */ + newtag->flags |= BUS_DMA_MIN_ALLOC_COMP; + } + if (error != 0) + free(newtag, M_DEVBUF); + else + *dmat = newtag; CTR4(KTR_BUSDMA, "%s returned tag %p tag flags 0x%x error %d", __func__, newtag, (newtag != NULL ? newtag->flags : 0), error); @@ -327,6 +472,7 @@ return (0); } +#include /* * Allocate a handle for mapping from kva/uva/physical * address space into bus device space. @@ -335,9 +481,7 @@ bus_dmamap_create(bus_dma_tag_t dmat, int flags, bus_dmamap_t *mapp) { bus_dmamap_t newmap; -#ifdef KTR int error = 0; -#endif newmap = _busdma_alloc_dmamap(); if (newmap == NULL) { @@ -346,8 +490,55 @@ } *mapp = newmap; newmap->dmat = dmat; + newmap->allocbuffer = NULL; dmat->map_count++; + /* + * Bouncing might be required if the driver asks for an active + * exclusion region, a data alignment that is stricter than 1, and/or + * an active address boundary. + */ + if (dmat->flags & BUS_DMA_COULD_BOUNCE) { + + /* Must bounce */ + struct bounce_zone *bz; + int maxpages; + + if (dmat->bounce_zone == NULL) { + if ((error = alloc_bounce_zone(dmat)) != 0) { + _busdma_free_dmamap(newmap); + *mapp = NULL; + return (error); + } + } + bz = dmat->bounce_zone; + + /* Initialize the new map */ + STAILQ_INIT(&((*mapp)->bpages)); + + /* + * Attempt to add pages to our pool on a per-instance + * basis up to a sane limit. + */ + maxpages = MAX_BPAGES; + if ((dmat->flags & BUS_DMA_MIN_ALLOC_COMP) == 0 + || (dmat->map_count > 0 && bz->total_bpages < maxpages)) { + int pages; + + pages = MAX(atop(dmat->maxsize), 1); + pages = MIN(maxpages - bz->total_bpages, pages); + pages = MAX(pages, 1); + if (alloc_bounce_pages(dmat, pages) < pages) + error = ENOMEM; + + if ((dmat->flags & BUS_DMA_MIN_ALLOC_COMP) == 0) { + if (error == 0) + dmat->flags |= BUS_DMA_MIN_ALLOC_COMP; + } else { + error = 0; + } + } + } CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", __func__, dmat, dmat->flags, error); @@ -363,6 +554,11 @@ { _busdma_free_dmamap(map); + if (STAILQ_FIRST(&map->bpages) != NULL) { + CTR3(KTR_BUSDMA, "%s: tag %p error %d", + __func__, dmat, EBUSY); + return (EBUSY); + } dmat->map_count--; CTR2(KTR_BUSDMA, "%s: tag %p error 0", __func__, dmat); return (0); @@ -398,7 +594,9 @@ *mapp = newmap; newmap->dmat = dmat; - if (dmat->maxsize <= PAGE_SIZE) { + if (dmat->maxsize <= PAGE_SIZE && + (dmat->alignment < dmat->maxsize) && + !_bus_dma_can_bounce(dmat->lowaddr, dmat->highaddr)) { *vaddr = malloc(dmat->maxsize, M_DEVBUF, mflags); } else { /* @@ -451,7 +649,9 @@ vaddr = map->origbuffer; arm_unmap_nocache(map->allocbuffer, dmat->maxsize); } - if (dmat->maxsize <= PAGE_SIZE) + if (dmat->maxsize <= PAGE_SIZE && + dmat->alignment < dmat->maxsize && + !_bus_dma_can_bounce(dmat->lowaddr, dmat->highaddr)) free(vaddr, M_DEVBUF); else { contigfree(vaddr, dmat->maxsize, M_DEVBUF); @@ -461,6 +661,64 @@ CTR3(KTR_BUSDMA, "%s: tag %p flags 0x%x", __func__, dmat, dmat->flags); } +static int +_bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, + bus_size_t buflen, int flags, int *nb) +{ + vm_offset_t vaddr; + vm_offset_t vendaddr; + bus_addr_t paddr; + int needbounce = *nb; + + if ((map->pagesneeded == 0)) { + CTR4(KTR_BUSDMA, "lowaddr= %d Maxmem= %d, boundary= %d, " + "alignment= %d", dmat->lowaddr, ptoa((vm_paddr_t)Maxmem), + dmat->boundary, dmat->alignment); + CTR3(KTR_BUSDMA, "map= %p, nobouncemap= %p, pagesneeded= %d", + map, &nobounce_dmamap, map->pagesneeded); + /* + * Count the number of bounce pages + * needed in order to complete this transfer + */ + vaddr = trunc_page((vm_offset_t)buf); + vendaddr = (vm_offset_t)buf + buflen; + + while (vaddr < vendaddr) { + paddr = pmap_kextract(vaddr); + if (((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) && + run_filter(dmat, paddr) != 0) { + needbounce = 1; + map->pagesneeded++; + } + vaddr += PAGE_SIZE; + } + CTR1(KTR_BUSDMA, "pagesneeded= %d\n", map->pagesneeded); + } + + /* Reserve Necessary Bounce Pages */ + if (map->pagesneeded != 0) { + mtx_lock(&bounce_lock); + if (flags & BUS_DMA_NOWAIT) { + if (reserve_bounce_pages(dmat, map, 0) != 0) { + mtx_unlock(&bounce_lock); + return (ENOMEM); + } + } else { + if (reserve_bounce_pages(dmat, map, 1) != 0) { + /* Queue us for resources */ + STAILQ_INSERT_TAIL(&bounce_map_waitinglist, + map, links); + mtx_unlock(&bounce_lock); + return (EINPROGRESS); + } + } + mtx_unlock(&bounce_lock); + } + + *nb = needbounce; + return (0); +} + /* * Utility function to load a linear buffer. lastaddrp holds state * between invocations (for multiple-buffer loads). segp contains @@ -480,10 +738,17 @@ pd_entry_t *pde; pt_entry_t pte; pt_entry_t *ptep; + int needbounce = 0; lastaddr = *lastaddrp; bmask = ~(dmat->boundary - 1); + if ((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) { + error = _bus_dmamap_count_pages(dmat, map, buf, buflen, flags, + &needbounce); + if (error) + return (error); + } CTR3(KTR_BUSDMA, "lowaddr= %d boundary= %d, " "alignment= %d", dmat->lowaddr, dmat->boundary, dmat->alignment); @@ -530,20 +795,6 @@ map->flags &= ~DMAMAP_COHERENT; } - if (dmat->ranges) { - struct arm32_dma_range *dr; - - dr = _bus_dma_inrange(dmat->ranges, dmat->_nranges, - curaddr); - if (dr == NULL) - return (EINVAL); - /* - * In a valid DMA range. Translate the physical - * memory address to an address in the DMA window. - */ - curaddr = (curaddr - dr->dr_sysbase) + dr->dr_busbase; - - } /* * Compute the segment size, and adjust counts. */ @@ -559,12 +810,30 @@ if (sgsize > (baddr - curaddr)) sgsize = (baddr - curaddr); } + if (((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) && + map->pagesneeded != 0 && run_filter(dmat, curaddr)) + curaddr = add_bounce_page(dmat, map, vaddr, sgsize); + if (dmat->ranges) { + struct arm32_dma_range *dr; + + dr = _bus_dma_inrange(dmat->ranges, dmat->_nranges, + curaddr); + if (dr == NULL) + return (EINVAL); + /* + * In a valid DMA range. Translate the physical + * memory address to an address in the DMA window. + */ + curaddr = (curaddr - dr->dr_sysbase) + dr->dr_busbase; + + } + /* * Insert chunk into a segment, coalescing with * the previous segment if possible. */ - if (seg >= 0 && curaddr == lastaddr && + if (needbounce == 0 && seg >= 0 && curaddr == lastaddr && (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && (dmat->boundary == 0 || (segs[seg].ds_addr & bmask) == @@ -614,6 +883,8 @@ KASSERT(dmat != NULL, ("dmatag is NULL")); KASSERT(map != NULL, ("dmamap is NULL")); + map->callback = callback; + map->callback_arg = callback_arg; map->flags &= ~DMAMAP_TYPE_MASK; map->flags |= DMAMAP_LINEAR|DMAMAP_COHERENT; map->buffer = buf; @@ -621,6 +892,8 @@ error = bus_dmamap_load_buffer(dmat, dm_segments, map, buf, buflen, kernel_pmap, flags, &lastaddr, &nsegs); + if (error == EINPROGRESS) + return (error); if (error) (*callback)(callback_arg, NULL, 0, error); else @@ -796,26 +1069,94 @@ void _bus_dmamap_unload(bus_dma_tag_t dmat, bus_dmamap_t map) { + struct bounce_page *bpage; + map->flags &= ~DMAMAP_TYPE_MASK; + while ((bpage = STAILQ_FIRST(&map->bpages)) != NULL) { + STAILQ_REMOVE_HEAD(&map->bpages, links); + free_bounce_page(dmat, bpage); + } return; } + static __inline void bus_dmamap_sync_buf(void *buf, int len, bus_dmasync_op_t op) { + char _tmp_cl[arm_dcache_align], _tmp_clend[arm_dcache_align]; if (op & BUS_DMASYNC_PREWRITE) cpu_dcache_wb_range((vm_offset_t)buf, len); - if (op & BUS_DMASYNC_PREREAD) { + if (op & BUS_DMASYNC_POSTREAD) { + if ((vm_offset_t)buf & arm_dcache_align_mask) + memcpy(_tmp_cl, (void *)((vm_offset_t)buf & ~ + arm_dcache_align_mask), + (vm_offset_t)buf - ((vm_offset_t)buf &~ + arm_dcache_align_mask)); + if (((vm_offset_t)buf + len) & arm_dcache_align_mask) + memcpy(_tmp_cl, (void *)((vm_offset_t)buf & ~ + arm_dcache_align_mask), + (vm_offset_t)buf - ((vm_offset_t)buf &~ + arm_dcache_align_mask)); + if (((vm_offset_t)buf + len) & arm_dcache_align_mask) + memcpy(_tmp_clend, (void *)(((vm_offset_t)buf + len) & ~ + arm_dcache_align_mask), + (vm_offset_t)buf +len - (((vm_offset_t)buf + len) &~ + arm_dcache_align_mask)); + cpu_dcache_inv_range((vm_offset_t)buf, len); if ((vm_offset_t)buf & arm_dcache_align_mask) - cpu_dcache_wbinv_range((vm_offset_t)buf & - ~arm_dcache_align_mask, arm_dcache_align); + memcpy((void *)((vm_offset_t)buf & + ~arm_dcache_align_mask), + _tmp_cl, + (vm_offset_t)buf - ((vm_offset_t)buf &~ + arm_dcache_align_mask)); if (((vm_offset_t)buf + len) & arm_dcache_align_mask) - cpu_dcache_wbinv_range(((vm_offset_t)buf + len) & - ~arm_dcache_align_mask, arm_dcache_align); + memcpy((void *)(((vm_offset_t)buf + len) & ~ + arm_dcache_align_mask), _tmp_clend, + (vm_offset_t)buf +len - (((vm_offset_t)buf + len) &~ + arm_dcache_align_mask)); + } +} + +static void +_bus_dmamap_sync_bp(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) +{ + struct bounce_page *bpage; + + STAILQ_FOREACH(bpage, &map->bpages, links) { + if (op & BUS_DMASYNC_PREWRITE) { + bcopy((void *)bpage->datavaddr, + (void *)(bpage->vaddr_nocache != 0 ? + bpage->vaddr_nocache : bpage->vaddr), + bpage->datacount); + if (bpage->vaddr_nocache == 0) + cpu_dcache_wb_range(bpage->vaddr, + bpage->datacount); + } + if (op & BUS_DMASYNC_POSTREAD) { + if (bpage->vaddr_nocache == 0) + cpu_dcache_inv_range(bpage->vaddr, + bpage->datacount); + bcopy((void *)(bpage->vaddr_nocache != 0 ? + bpage->vaddr_nocache : bpage->vaddr), + (void *)bpage->datavaddr, bpage->datacount); + } + } +} + +static __inline int +_bus_dma_buf_is_in_bp(bus_dmamap_t map, void *buf, int len) +{ + struct bounce_page *bpage; + + STAILQ_FOREACH(bpage, &map->bpages, links) { + if ((vm_offset_t)buf >= bpage->datavaddr && + (vm_offset_t)buf + len < bpage->datavaddr + + bpage->datacount) + return (1); } - if (op & BUS_DMASYNC_POSTREAD) - cpu_dcache_inv_range((vm_offset_t)buf, len); + return (0); + } void @@ -828,6 +1169,8 @@ if (op == BUS_DMASYNC_POSTWRITE) return; + if (STAILQ_FIRST(&map->bpages)) + _bus_dmamap_sync_bp(dmat, map, op); if (map->flags & DMAMAP_COHERENT) return; if ((op && BUS_DMASYNC_POSTREAD) && (map->len > PAGE_SIZE)) { @@ -837,12 +1180,14 @@ CTR3(KTR_BUSDMA, "%s: op %x flags %x", __func__, op, map->flags); switch(map->flags & DMAMAP_TYPE_MASK) { case DMAMAP_LINEAR: - bus_dmamap_sync_buf(map->buffer, map->len, op); + if (!(_bus_dma_buf_is_in_bp(map, map->buffer, map->len))) + bus_dmamap_sync_buf(map->buffer, map->len, op); break; case DMAMAP_MBUF: m = map->buffer; while (m) { - if (m->m_len > 0) + if (m->m_len > 0 && + !(_bus_dma_buf_is_in_bp(map, m->m_data, m->m_len))) bus_dmamap_sync_buf(m->m_data, m->m_len, op); m = m->m_next; } @@ -855,8 +1200,10 @@ bus_size_t minlen = resid < iov[i].iov_len ? resid : iov[i].iov_len; if (minlen > 0) { - bus_dmamap_sync_buf(iov[i].iov_base, minlen, - op); + if (!_bus_dma_buf_is_in_bp(map, iov[i].iov_base, + minlen)) + bus_dmamap_sync_buf(iov[i].iov_base, + minlen, op); resid -= minlen; } } @@ -866,3 +1213,247 @@ } cpu_drain_writebuf(); } + +static void +init_bounce_pages(void *dummy __unused) +{ + + total_bpages = 0; + STAILQ_INIT(&bounce_zone_list); + STAILQ_INIT(&bounce_map_waitinglist); + STAILQ_INIT(&bounce_map_callbacklist); + mtx_init(&bounce_lock, "bounce pages lock", NULL, MTX_DEF); +} +SYSINIT(bpages, SI_SUB_LOCK, SI_ORDER_ANY, init_bounce_pages, NULL); + +static struct sysctl_ctx_list * +busdma_sysctl_tree(struct bounce_zone *bz) +{ + return (&bz->sysctl_tree); +} + +static struct sysctl_oid * +busdma_sysctl_tree_top(struct bounce_zone *bz) +{ + return (bz->sysctl_tree_top); +} + +static int +alloc_bounce_zone(bus_dma_tag_t dmat) +{ + struct bounce_zone *bz; + + /* Check to see if we already have a suitable zone */ + STAILQ_FOREACH(bz, &bounce_zone_list, links) { + if ((dmat->alignment <= bz->alignment) + && (dmat->boundary <= bz->boundary) + && (dmat->lowaddr >= bz->lowaddr)) { + dmat->bounce_zone = bz; + return (0); + } + } + + if ((bz = (struct bounce_zone *)malloc(sizeof(*bz), M_DEVBUF, + M_NOWAIT | M_ZERO)) == NULL) + return (ENOMEM); + + STAILQ_INIT(&bz->bounce_page_list); + bz->free_bpages = 0; + bz->reserved_bpages = 0; + bz->active_bpages = 0; + bz->lowaddr = dmat->lowaddr; + bz->alignment = dmat->alignment; + bz->boundary = dmat->boundary; + snprintf(bz->zoneid, 8, "zone%d", busdma_zonecount); + busdma_zonecount++; + snprintf(bz->lowaddrid, 18, "%#jx", (uintmax_t)bz->lowaddr); + STAILQ_INSERT_TAIL(&bounce_zone_list, bz, links); + dmat->bounce_zone = bz; + + sysctl_ctx_init(&bz->sysctl_tree); + bz->sysctl_tree_top = SYSCTL_ADD_NODE(&bz->sysctl_tree, + SYSCTL_STATIC_CHILDREN(_hw_busdma), OID_AUTO, bz->zoneid, + CTLFLAG_RD, 0, ""); + if (bz->sysctl_tree_top == NULL) { + sysctl_ctx_free(&bz->sysctl_tree); + return (0); /* XXX error code? */ + } + + SYSCTL_ADD_INT(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "total_bpages", CTLFLAG_RD, &bz->total_bpages, 0, + "Total bounce pages"); + SYSCTL_ADD_INT(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "free_bpages", CTLFLAG_RD, &bz->free_bpages, 0, + "Free bounce pages"); + SYSCTL_ADD_INT(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "reserved_bpages", CTLFLAG_RD, &bz->reserved_bpages, 0, + "Reserved bounce pages"); + SYSCTL_ADD_INT(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "active_bpages", CTLFLAG_RD, &bz->active_bpages, 0, + "Active bounce pages"); + SYSCTL_ADD_INT(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "total_bounced", CTLFLAG_RD, &bz->total_bounced, 0, + "Total bounce requests"); + SYSCTL_ADD_INT(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "total_deferred", CTLFLAG_RD, &bz->total_deferred, 0, + "Total bounce requests that were deferred"); + SYSCTL_ADD_STRING(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "lowaddr", CTLFLAG_RD, bz->lowaddrid, 0, ""); + SYSCTL_ADD_INT(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "alignment", CTLFLAG_RD, &bz->alignment, 0, ""); + SYSCTL_ADD_INT(busdma_sysctl_tree(bz), + SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO, + "boundary", CTLFLAG_RD, &bz->boundary, 0, ""); + + return (0); +} + +static int +alloc_bounce_pages(bus_dma_tag_t dmat, u_int numpages) +{ + struct bounce_zone *bz; + int count; + + bz = dmat->bounce_zone; + count = 0; + while (numpages > 0) { + struct bounce_page *bpage; + + bpage = (struct bounce_page *)malloc(sizeof(*bpage), M_DEVBUF, + M_NOWAIT | M_ZERO); + + if (bpage == NULL) + break; + bpage->vaddr = (vm_offset_t)contigmalloc(PAGE_SIZE, M_DEVBUF, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Mar 8 11:50:34 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 80D9616A405; Thu, 8 Mar 2007 11:50:34 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 40A8816A402 for ; Thu, 8 Mar 2007 11:50:34 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 2CEC713C467 for ; Thu, 8 Mar 2007 11:50:34 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l28BoYaI095987 for ; Thu, 8 Mar 2007 11:50:34 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l28BoWLV095977 for perforce@freebsd.org; Thu, 8 Mar 2007 11:50:32 GMT (envelope-from piso@freebsd.org) Date: Thu, 8 Mar 2007 11:50:32 GMT Message-Id: <200703081150.l28BoWLV095977@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115518 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 11:50:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=115518 Change 115518 by piso@piso_newluxor on 2007/03/08 11:49:43 IFC@115517 Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/busdma_machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#24 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/local_apic.c#8 integrate .. //depot/projects/soc2006/intr_filter/amd64/amd64/mp_machdep.c#7 integrate .. //depot/projects/soc2006/intr_filter/amd64/include/intr_machdep.h#8 integrate .. //depot/projects/soc2006/intr_filter/amd64/include/smp.h#2 integrate .. //depot/projects/soc2006/intr_filter/conf/files.sparc64#6 integrate .. //depot/projects/soc2006/intr_filter/dev/bge/if_bge.c#13 integrate .. //depot/projects/soc2006/intr_filter/dev/fb/creator.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/ds1.c#3 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/emu10k1.c#5 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/emu10kx-pcm.c#4 integrate .. //depot/projects/soc2006/intr_filter/dev/zs/z8530reg.h#2 delete .. //depot/projects/soc2006/intr_filter/dev/zs/z8530var.h#6 delete .. //depot/projects/soc2006/intr_filter/dev/zs/zs.c#7 delete .. //depot/projects/soc2006/intr_filter/dev/zs/zs_macio.c#6 delete .. //depot/projects/soc2006/intr_filter/i386/i386/busdma_machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#31 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/local_apic.c#8 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/mp_machdep.c#7 integrate .. //depot/projects/soc2006/intr_filter/i386/include/intr_machdep.h#8 integrate .. //depot/projects/soc2006/intr_filter/i386/include/smp.h#2 integrate .. //depot/projects/soc2006/intr_filter/ia64/ia64/busdma_machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_clock.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_jail.c#7 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_kse.c#5 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_rwlock.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_synch.c#9 integrate .. //depot/projects/soc2006/intr_filter/kern/sched_core.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/sched_ule.c#11 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_prf.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/subr_smp.c#2 integrate .. //depot/projects/soc2006/intr_filter/kern/vfs_bio.c#9 integrate .. //depot/projects/soc2006/intr_filter/net/ethernet.h#4 integrate .. //depot/projects/soc2006/intr_filter/net80211/_ieee80211.h#5 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_freebsd.h#4 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_input.c#9 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_node.c#5 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_proto.c#5 integrate .. //depot/projects/soc2006/intr_filter/net80211/ieee80211_proto.h#4 integrate .. //depot/projects/soc2006/intr_filter/netinet/tcp_input.c#10 integrate .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/nexus.c#3 integrate .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/pic_if.m#3 integrate .. //depot/projects/soc2006/intr_filter/sparc64/central/central.c#2 integrate .. //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc.c#8 integrate .. //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc_central.c#2 delete .. //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc_nexus.c#2 delete .. //depot/projects/soc2006/intr_filter/sparc64/fhc/fhcvar.h#2 delete .. //depot/projects/soc2006/intr_filter/sparc64/include/bus_private.h#2 integrate .. //depot/projects/soc2006/intr_filter/sparc64/include/iommureg.h#2 integrate .. //depot/projects/soc2006/intr_filter/sparc64/include/nexusvar.h#2 delete .. //depot/projects/soc2006/intr_filter/sparc64/include/ofw_nexus.h#3 integrate .. //depot/projects/soc2006/intr_filter/sparc64/include/ofw_upa.h#2 delete .. //depot/projects/soc2006/intr_filter/sparc64/pci/psycho.c#14 integrate .. //depot/projects/soc2006/intr_filter/sparc64/pci/psychovar.h#2 integrate .. //depot/projects/soc2006/intr_filter/sparc64/sbus/sbus.c#12 integrate .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/bus_machdep.c#3 integrate .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/iommu.c#2 integrate .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/nexus.c#4 integrate .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/sc_machdep.c#2 integrate .. //depot/projects/soc2006/intr_filter/sys/buf.h#4 integrate .. //depot/projects/soc2006/intr_filter/sys/mutex.h#7 integrate .. //depot/projects/soc2006/intr_filter/sys/proc.h#8 integrate .. //depot/projects/soc2006/intr_filter/sys/rwlock.h#6 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/busdma_machdep.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.78 2006/10/15 16:52:59 hrs Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.79 2007/03/06 18:28:42 scottl Exp $"); #include #include @@ -906,7 +906,6 @@ * want to add support for invalidating * the caches on broken hardware */ - dmat->bounce_zone->total_bounced++; CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x op 0x%x " "performing bounce", __func__, op, dmat, dmat->flags); @@ -917,6 +916,7 @@ bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } + dmat->bounce_zone->total_bounced++; } if (op & BUS_DMASYNC_POSTREAD) { @@ -926,6 +926,7 @@ bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } + dmat->bounce_zone->total_bounced++; } } } ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#24 (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/amd64/amd64/intr_machdep.c,v 1.29 2007/02/23 20:03:23 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.30 2007/03/06 17:16:46 jhb Exp $ */ /* @@ -53,6 +53,7 @@ #include #include #include +#include #ifdef DDB #include #endif @@ -449,8 +450,9 @@ * allocate CPUs round-robin. */ -static u_int cpu_apic_ids[MAXCPU]; -static int current_cpu, num_cpus; +/* The BSP is always a valid target. */ +static cpumask_t intr_cpus = (1 << 0); +static int current_cpu, num_cpus = 1; static void intr_assign_next_cpu(struct intsrc *isrc) @@ -463,25 +465,29 @@ */ pic = isrc->is_pic; apic_id = cpu_apic_ids[current_cpu]; - current_cpu++; - if (current_cpu >= num_cpus) - current_cpu = 0; pic->pic_assign_cpu(isrc, apic_id); + do { + current_cpu++; + if (current_cpu >= num_cpus) + current_cpu = 0; + } while (!(intr_cpus & (1 << current_cpu))); } /* - * Add a local APIC ID to our list of valid local APIC IDs that can - * be destinations of interrupts. + * Add a CPU to our mask of valid CPUs that can be destinations of + * interrupts. */ void -intr_add_cpu(u_int apic_id) +intr_add_cpu(u_int cpu) { + if (cpu >= MAXCPU) + panic("%s: Invalid CPU ID", __func__); if (bootverbose) - printf("INTR: Adding local APIC %d as a target\n", apic_id); - if (num_cpus >= MAXCPU) - panic("WARNING: Local APIC IDs exhausted!"); - cpu_apic_ids[num_cpus] = apic_id; + printf("INTR: Adding local APIC %d as a target\n", + cpu_apic_ids[cpu]); + + intr_cpus |= (1 << cpu); num_cpus++; } ==== //depot/projects/soc2006/intr_filter/amd64/amd64/local_apic.c#8 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.35 2007/03/05 20:35:16 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.36 2007/03/06 17:16:46 jhb Exp $"); #include "opt_hwpmc_hooks.h" @@ -220,7 +220,6 @@ /* Set BSP's per-CPU local APIC ID. */ PCPU_SET(apic_id, lapic_id()); - intr_add_cpu(PCPU_GET(apic_id)); /* Local APIC timer interrupt. */ setidt(APIC_TIMER_INT, IDTVEC(timerint), SDT_SYSIGT, SEL_KPL, 0); ==== //depot/projects/soc2006/intr_filter/amd64/amd64/mp_machdep.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.282 2007/03/05 21:40:10 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.283 2007/03/06 17:16:46 jhb Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -152,7 +152,7 @@ int cpu_bsp:1; int cpu_disabled:1; } static cpu_info[MAXCPU]; -static int cpu_apic_ids[MAXCPU]; +int cpu_apic_ids[MAXCPU]; /* Holds pending bitmap based IPIs per CPU */ static volatile u_int cpu_ipi_pending[MAXCPU]; @@ -625,10 +625,11 @@ static void set_interrupt_apic_ids(void) { - u_int apic_id; + u_int i, apic_id; - for (apic_id = 0; apic_id < MAXCPU; apic_id++) { - if (!cpu_info[apic_id].cpu_present) + for (i = 0; i < MAXCPU; i++) { + apic_id = cpu_apic_ids[i]; + if (apic_id == -1) continue; if (cpu_info[apic_id].cpu_bsp) continue; @@ -640,7 +641,7 @@ apic_id % hyperthreading_cpus != 0) continue; - intr_add_cpu(apic_id); + intr_add_cpu(i); } } ==== //depot/projects/soc2006/intr_filter/amd64/include/intr_machdep.h#8 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.15 2007/02/23 12:18:26 piso Exp $ + * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.16 2007/03/06 17:16:46 jhb Exp $ */ #ifndef __MACHINE_INTR_MACHDEP_H__ @@ -131,9 +131,7 @@ void elcr_resume(void); void elcr_write_trigger(u_int irq, enum intr_trigger trigger); #ifdef SMP -void intr_add_cpu(u_int apic_id); -#else -#define intr_add_cpu(apic_id) +void intr_add_cpu(u_int cpu); #endif int intr_add_handler(const char *name, int vector, driver_filter_t filter, driver_intr_t handler, void *arg, enum intr_type flags, ==== //depot/projects/soc2006/intr_filter/amd64/include/smp.h#2 (text+ko) ==== @@ -6,7 +6,7 @@ * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp * ---------------------------------------------------------------------------- * - * $FreeBSD: src/sys/amd64/include/smp.h,v 1.88 2006/05/01 21:36:47 jhb Exp $ + * $FreeBSD: src/sys/amd64/include/smp.h,v 1.89 2007/03/06 17:16:46 jhb Exp $ * */ @@ -34,6 +34,7 @@ extern int boot_cpu_id; extern struct pcb stoppcbs[]; extern struct mtx smp_tlb_mtx; +extern int cpu_apic_ids[]; /* IPI handlers */ inthand_t ==== //depot/projects/soc2006/intr_filter/conf/files.sparc64#6 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.sparc64,v 1.87 2007/01/20 12:53:30 marius Exp $ +# $FreeBSD: src/sys/conf/files.sparc64,v 1.88 2007/03/07 21:13:49 marius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -80,8 +80,6 @@ sparc64/ebus/ebus.c optional ebus sparc64/fhc/clkbrd.c optional clkbrd fhc sparc64/fhc/fhc.c optional fhc -sparc64/fhc/fhc_central.c optional fhc central -sparc64/fhc/fhc_nexus.c optional fhc sparc64/isa/isa.c optional isa sparc64/isa/isa_dma.c optional isa sparc64/isa/ofw_isa.c optional ebus | isa ==== //depot/projects/soc2006/intr_filter/dev/bge/if_bge.c#13 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.179 2007/02/23 12:18:34 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.183 2007/03/08 00:49:26 jkim Exp $"); /* * Broadcom BCM570x family gigabit ethernet driver for FreeBSD. @@ -521,7 +521,7 @@ /* Reset the EEPROM, load the clock period. */ CSR_WRITE_4(sc, BGE_EE_ADDR, - BGE_EEADDR_RESET|BGE_EEHALFCLK(BGE_HALFCLK_384SCL)); + BGE_EEADDR_RESET | BGE_EEHALFCLK(BGE_HALFCLK_384SCL)); DELAY(20); /* Issue the read EEPROM command. */ @@ -594,8 +594,8 @@ DELAY(40); } - CSR_WRITE_4(sc, BGE_MI_COMM, BGE_MICMD_READ|BGE_MICOMM_BUSY| - BGE_MIPHY(phy)|BGE_MIREG(reg)); + CSR_WRITE_4(sc, BGE_MI_COMM, BGE_MICMD_READ | BGE_MICOMM_BUSY | + BGE_MIPHY(phy) | BGE_MIREG(reg)); for (i = 0; i < BGE_TIMEOUT; i++) { val = CSR_READ_4(sc, BGE_MI_COMM); @@ -639,8 +639,8 @@ DELAY(40); } - CSR_WRITE_4(sc, BGE_MI_COMM, BGE_MICMD_WRITE|BGE_MICOMM_BUSY| - BGE_MIPHY(phy)|BGE_MIREG(reg)|val); + CSR_WRITE_4(sc, BGE_MI_COMM, BGE_MICMD_WRITE | BGE_MICOMM_BUSY | + BGE_MIPHY(phy) | BGE_MIREG(reg) | val); for (i = 0; i < BGE_TIMEOUT; i++) { if (!(CSR_READ_4(sc, BGE_MI_COMM) & BGE_MICOMM_BUSY)) @@ -778,7 +778,7 @@ * Fill in the extended RX buffer descriptor. */ r = &sc->bge_ldata.bge_rx_jumbo_ring[i]; - r->bge_flags = BGE_RXBDFLAG_JUMBO_RING|BGE_RXBDFLAG_END; + r->bge_flags = BGE_RXBDFLAG_JUMBO_RING | BGE_RXBDFLAG_END; r->bge_idx = i; r->bge_len3 = r->bge_len2 = r->bge_len1 = 0; switch (nsegs) { @@ -828,7 +828,7 @@ bus_dmamap_sync(sc->bge_cdata.bge_rx_std_ring_tag, sc->bge_cdata.bge_rx_std_ring_map, - BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE); + BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); sc->bge_std = i - 1; CSR_WRITE_4(sc, BGE_MBX_RX_STD_PROD_LO, sc->bge_std); @@ -869,7 +869,7 @@ bus_dmamap_sync(sc->bge_cdata.bge_rx_jumbo_ring_tag, sc->bge_cdata.bge_rx_jumbo_ring_map, - BUS_DMASYNC_PREREAD|BUS_DMASYNC_PREWRITE); + BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); sc->bge_jumbo = i - 1; @@ -1070,7 +1070,7 @@ if (sc->bge_asf_mode) { bge_writemem_ind(sc, BGE_SOFTWARE_GENCOMM_FW, BGE_FW_PAUSE); CSR_WRITE_4(sc, BGE_CPU_EVENT, - CSR_READ_4(sc, BGE_CPU_EVENT) != (1 << 14)); + CSR_READ_4(sc, BGE_CPU_EVENT) | (1 << 14)); for (i = 0; i < 100; i++ ) { if (!(CSR_READ_4(sc, BGE_CPU_EVENT) & (1 << 14))) @@ -1121,19 +1121,19 @@ if (sc->bge_flags & BGE_FLAG_PCIE) { /* PCI Express bus */ dma_rw_ctl = BGE_PCI_READ_CMD | BGE_PCI_WRITE_CMD | - BGE_PCIDMARWCTL_RD_WAT_SHIFT(0xf) | + BGE_PCIDMARWCTL_RD_WAT_SHIFT(0xF) | BGE_PCIDMARWCTL_WR_WAT_SHIFT(0x2); } else if (sc->bge_flags & BGE_FLAG_PCIX) { /* PCI-X bus */ if (BGE_IS_5714_FAMILY(sc)) { - dma_rw_ctl = BGE_PCI_READ_CMD|BGE_PCI_WRITE_CMD; + dma_rw_ctl = BGE_PCI_READ_CMD | BGE_PCI_WRITE_CMD; dma_rw_ctl &= ~BGE_PCIDMARWCTL_ONEDMA_ATONCE; /* XXX */ /* XXX magic values, Broadcom-supplied Linux driver */ + dma_rw_ctl |= (1 << 20) | (1 << 18); if (sc->bge_asicrev == BGE_ASICREV_BCM5780) - dma_rw_ctl |= (1 << 20) | (1 << 18) | - BGE_PCIDMARWCTL_ONEDMA_ATONCE; + dma_rw_ctl |= BGE_PCIDMARWCTL_ONEDMA_ATONCE; else - dma_rw_ctl |= (1 << 20) | (1 << 18) | (1 << 15); + dma_rw_ctl |= 1 << 15; } else if (sc->bge_asicrev == BGE_ASICREV_BCM5704) /* @@ -1147,7 +1147,7 @@ dma_rw_ctl = BGE_PCI_READ_CMD | BGE_PCI_WRITE_CMD | BGE_PCIDMARWCTL_RD_WAT_SHIFT(0x3) | BGE_PCIDMARWCTL_WR_WAT_SHIFT(0x3) | - 0x0f; + 0x0F; /* * 5703 and 5704 need ONEDMA_AT_ONCE as a workaround @@ -1157,7 +1157,7 @@ sc->bge_asicrev == BGE_ASICREV_BCM5704) { uint32_t tmp; - tmp = CSR_READ_4(sc, BGE_PCI_CLKCTL) & 0x1f; + tmp = CSR_READ_4(sc, BGE_PCI_CLKCTL) & 0x1F; if (tmp == 0x6 || tmp == 0x7) dma_rw_ctl |= BGE_PCIDMARWCTL_ONEDMA_ATONCE; } @@ -1166,7 +1166,7 @@ dma_rw_ctl = BGE_PCI_READ_CMD | BGE_PCI_WRITE_CMD | BGE_PCIDMARWCTL_RD_WAT_SHIFT(0x7) | BGE_PCIDMARWCTL_WR_WAT_SHIFT(0x7) | - 0x0f; + 0x0F; if (sc->bge_asicrev == BGE_ASICREV_BCM5703 || sc->bge_asicrev == BGE_ASICREV_BCM5704 || @@ -1177,8 +1177,8 @@ /* * Set up general mode register. */ - CSR_WRITE_4(sc, BGE_MODE_CTL, BGE_DMA_SWAP_OPTIONS| - BGE_MODECTL_MAC_ATTN_INTR|BGE_MODECTL_HOST_SEND_BDS| + CSR_WRITE_4(sc, BGE_MODE_CTL, BGE_DMA_SWAP_OPTIONS | + BGE_MODECTL_MAC_ATTN_INTR | BGE_MODECTL_HOST_SEND_BDS | BGE_MODECTL_TX_NO_PHDR_CSUM); /* @@ -1205,7 +1205,7 @@ #endif /* Set the timer prescaler (always 66Mhz) */ - CSR_WRITE_4(sc, BGE_MISC_CFG, 65 << 1/*BGE_32BITTIME_66MHZ*/); + CSR_WRITE_4(sc, BGE_MISC_CFG, BGE_32BITTIME_66MHZ); return (0); } @@ -1260,7 +1260,7 @@ /* Enable buffer manager */ if (!(BGE_IS_5705_PLUS(sc))) { CSR_WRITE_4(sc, BGE_BMAN_MODE, - BGE_BMANMODE_ENABLE|BGE_BMANMODE_LOMBUF_ATTN); + BGE_BMANMODE_ENABLE | BGE_BMANMODE_LOMBUF_ATTN); /* Poll for buffer manager start indication */ for (i = 0; i < BGE_TIMEOUT; i++) { @@ -1330,7 +1330,7 @@ sc->bge_cdata.bge_rx_jumbo_ring_map, BUS_DMASYNC_PREREAD); rcb->bge_maxlen_flags = BGE_RCB_MAXLEN_FLAGS(0, - BGE_RCB_FLAG_USE_EXT_RX_BD|BGE_RCB_FLAG_RING_DISABLED); + BGE_RCB_FLAG_USE_EXT_RX_BD | BGE_RCB_FLAG_RING_DISABLED); rcb->bge_nicaddr = BGE_JUMBO_RX_RINGS; CSR_WRITE_4(sc, BGE_RX_JUMBO_RCB_HADDR_HI, rcb->bge_hostaddr.bge_addr_hi); @@ -1500,7 +1500,7 @@ /* Turn on RX BD completion state machine and enable attentions */ CSR_WRITE_4(sc, BGE_RBDC_MODE, - BGE_RBDCMODE_ENABLE|BGE_RBDCMODE_ATTN); + BGE_RBDCMODE_ENABLE | BGE_RBDCMODE_ATTN); /* Turn on RX list placement state machine */ CSR_WRITE_4(sc, BGE_RXLP_MODE, BGE_RXLPMODE_ENABLE); @@ -1510,10 +1510,10 @@ CSR_WRITE_4(sc, BGE_RXLS_MODE, BGE_RXLSMODE_ENABLE); /* Turn on DMA, clear stats */ - CSR_WRITE_4(sc, BGE_MAC_MODE, BGE_MACMODE_TXDMA_ENB| - BGE_MACMODE_RXDMA_ENB|BGE_MACMODE_RX_STATS_CLEAR| - BGE_MACMODE_TX_STATS_CLEAR|BGE_MACMODE_RX_STATS_ENB| - BGE_MACMODE_TX_STATS_ENB|BGE_MACMODE_FRMHDR_DMA_ENB| + CSR_WRITE_4(sc, BGE_MAC_MODE, BGE_MACMODE_TXDMA_ENB | + BGE_MACMODE_RXDMA_ENB | BGE_MACMODE_RX_STATS_CLEAR | + BGE_MACMODE_TX_STATS_CLEAR | BGE_MACMODE_RX_STATS_ENB | + BGE_MACMODE_TX_STATS_ENB | BGE_MACMODE_FRMHDR_DMA_ENB | ((sc->bge_flags & BGE_FLAG_TBI) ? BGE_PORTMODE_TBI : BGE_PORTMODE_MII)); @@ -1522,29 +1522,29 @@ #ifdef notdef /* Assert GPIO pins for PHY reset */ - BGE_SETBIT(sc, BGE_MISC_LOCAL_CTL, BGE_MLC_MISCIO_OUT0| - BGE_MLC_MISCIO_OUT1|BGE_MLC_MISCIO_OUT2); - BGE_SETBIT(sc, BGE_MISC_LOCAL_CTL, BGE_MLC_MISCIO_OUTEN0| - BGE_MLC_MISCIO_OUTEN1|BGE_MLC_MISCIO_OUTEN2); + BGE_SETBIT(sc, BGE_MISC_LOCAL_CTL, BGE_MLC_MISCIO_OUT0 | + BGE_MLC_MISCIO_OUT1 | BGE_MLC_MISCIO_OUT2); + BGE_SETBIT(sc, BGE_MISC_LOCAL_CTL, BGE_MLC_MISCIO_OUTEN0 | + BGE_MLC_MISCIO_OUTEN1 | BGE_MLC_MISCIO_OUTEN2); #endif /* Turn on DMA completion state machine */ if (!(BGE_IS_5705_PLUS(sc))) CSR_WRITE_4(sc, BGE_DMAC_MODE, BGE_DMACMODE_ENABLE); - val = BGE_WDMAMODE_ENABLE|BGE_WDMAMODE_ALL_ATTNS; + val = BGE_WDMAMODE_ENABLE | BGE_WDMAMODE_ALL_ATTNS; /* Enable host coalescing bug fix. */ if (sc->bge_asicrev == BGE_ASICREV_BCM5755 || sc->bge_asicrev == BGE_ASICREV_BCM5787) - val |= (1 << 29); + val |= 1 << 29; /* Turn on write DMA state machine */ CSR_WRITE_4(sc, BGE_WDMA_MODE, val); /* Turn on read DMA state machine */ CSR_WRITE_4(sc, BGE_RDMA_MODE, - BGE_RDMAMODE_ENABLE|BGE_RDMAMODE_ALL_ATTNS); + BGE_RDMAMODE_ENABLE | BGE_RDMAMODE_ALL_ATTNS); /* Turn on RX data completion state machine */ CSR_WRITE_4(sc, BGE_RDC_MODE, BGE_RDCMODE_ENABLE); @@ -1576,11 +1576,11 @@ CSR_WRITE_4(sc, BGE_SDI_STATS_ENABLE_MASK, 0x007FFFFF); CSR_WRITE_4(sc, BGE_SDI_STATS_CTL, - BGE_SDISTATSCTL_ENABLE|BGE_SDISTATSCTL_FASTER); + BGE_SDISTATSCTL_ENABLE | BGE_SDISTATSCTL_FASTER); /* ack/clear link change events */ - CSR_WRITE_4(sc, BGE_MAC_STS, BGE_MACSTAT_SYNC_CHANGED| - BGE_MACSTAT_CFG_CHANGED|BGE_MACSTAT_MI_COMPLETE| + CSR_WRITE_4(sc, BGE_MAC_STS, BGE_MACSTAT_SYNC_CHANGED | + BGE_MACSTAT_CFG_CHANGED | BGE_MACSTAT_MI_COMPLETE | BGE_MACSTAT_LINK_CHANGED); CSR_WRITE_4(sc, BGE_MI_STS, 0); @@ -1588,7 +1588,7 @@ if (sc->bge_flags & BGE_FLAG_TBI) { CSR_WRITE_4(sc, BGE_MI_STS, BGE_MISTS_LINK); } else { - BGE_SETBIT(sc, BGE_MI_MODE, BGE_MIMODE_AUTOPOLL|10<<16); + BGE_SETBIT(sc, BGE_MI_MODE, BGE_MIMODE_AUTOPOLL | (10 << 16)); if (sc->bge_asicrev == BGE_ASICREV_BCM5700 && sc->bge_chipid != BGE_CHIPID_BCM5700_B2) CSR_WRITE_4(sc, BGE_MAC_EVT_ENB, @@ -1602,8 +1602,8 @@ * It's not necessary on newer BCM chips - perhaps enabling link * state change attentions implies clearing pending attention. */ - CSR_WRITE_4(sc, BGE_MAC_STS, BGE_MACSTAT_SYNC_CHANGED| - BGE_MACSTAT_CFG_CHANGED|BGE_MACSTAT_MI_COMPLETE| + CSR_WRITE_4(sc, BGE_MAC_STS, BGE_MACSTAT_SYNC_CHANGED | + BGE_MACSTAT_CFG_CHANGED | BGE_MACSTAT_MI_COMPLETE | BGE_MACSTAT_LINK_CHANGED); /* Enable link state change attentions. */ @@ -1668,20 +1668,25 @@ char model[64], buf[96]; const struct bge_revision *br; const struct bge_vendor *v; - const char *pname; uint32_t id; id = pci_read_config(dev, BGE_PCI_MISC_CTL, 4) & BGE_PCIMISCCTL_ASICREV; br = bge_lookup_rev(id); v = bge_lookup_vendor(vid); - if (pci_get_vpd_ident(dev, &pname)) - snprintf(model, 64, "%s %s", - v->v_name, - br != NULL ? br->br_name : - "NetXtreme Ethernet Controller"); - else - snprintf(model, 64, "%s", pname); + { +#if __FreeBSD_version > 700024 + const char *pname; + + if (pci_get_vpd_ident(dev, &pname) == 0) + snprintf(model, 64, "%s", pname); + else +#endif + snprintf(model, 64, "%s %s", + v->v_name, + br != NULL ? br->br_name : + "NetXtreme Ethernet Controller"); + } snprintf(buf, 96, "%s, %sASIC rev. %#04x", model, br != NULL ? "" : "unknown ", id >> 16); device_set_desc_copy(dev, buf); @@ -1823,13 +1828,13 @@ /* * Allocate the parent bus DMA tag appropriate for PCI. */ - error = bus_dma_tag_create(bus_get_dma_tag(sc->bge_dev),/* parent */ + error = bus_dma_tag_create(bus_get_dma_tag(sc->bge_dev), /* parent */ 1, 0, /* alignment, boundary */ BUS_SPACE_MAXADDR, /* lowaddr */ BUS_SPACE_MAXADDR, /* highaddr */ NULL, NULL, /* filter, filterarg */ MAXBSIZE, BGE_NSEG_NEW, /* maxsize, nsegments */ - BUS_SPACE_MAXSIZE_32BIT,/* maxsegsize */ + BUS_SPACE_MAXSIZE_32BIT, /* maxsegsize */ 0, /* flags */ NULL, NULL, /* lockfunc, lockarg */ &sc->bge_cdata.bge_parent_tag); @@ -2104,6 +2109,7 @@ return (0); } +#if __FreeBSD_version > 700025 /* * Return true if this device has more than one port. */ @@ -2151,6 +2157,7 @@ } return (can_use_msi); } +#endif static int bge_attach(device_t dev) @@ -2160,7 +2167,7 @@ uint32_t hwcfg = 0; uint32_t mac_tmp = 0; u_char eaddr[6]; - int error = 0, msicount, rid, trys, reg; + int error = 0, rid, trys, reg; sc = device_get_softc(dev); sc->bge_dev = dev; @@ -2172,7 +2179,7 @@ rid = BGE_PCI_BAR0; sc->bge_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, - RF_ACTIVE|PCI_RF_DENSE); + RF_ACTIVE | PCI_RF_DENSE); if (sc->bge_res == NULL) { device_printf (sc->bge_dev, "couldn't map memory\n"); @@ -2252,7 +2259,7 @@ #else if (BGE_IS_5705_PLUS(sc)) { reg = pci_read_config(dev, BGE_PCIE_CAPID_REG, 4); - if ((reg & 0xff) == BGE_PCIE_CAPID) + if ((reg & 0xFF) == BGE_PCIE_CAPID) sc->bge_flags |= BGE_FLAG_PCIE; } else { /* @@ -2265,22 +2272,30 @@ } #endif - /* - * Allocate the interrupt, using MSI if possible. These devices - * support 8 MSI messages, but only the first one is used in - * normal operation. - */ - if (bge_can_use_msi(sc)) { - msicount = pci_msi_count(dev); - if (msicount > 1) - msicount = 1; - } else - msicount = 0; - if (msicount == 1 && pci_alloc_msi(dev, &msicount) == 0) { - rid = 1; - sc->bge_flags |= BGE_FLAG_MSI; - } else - rid = 0; +#if __FreeBSD_version > 700025 + { + int msicount; + + /* + * Allocate the interrupt, using MSI if possible. These devices + * support 8 MSI messages, but only the first one is used in + * normal operation. + */ + if (bge_can_use_msi(sc)) { + msicount = pci_msi_count(dev); + if (msicount > 1) + msicount = 1; + } else + msicount = 0; + if (msicount == 1 && pci_alloc_msi(dev, &msicount) == 0) { + rid = 1; + sc->bge_flags |= BGE_FLAG_MSI; + } else + rid = 0; + } +#else + rid = 0; +#endif sc->bge_irq = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid, RF_SHAREABLE | RF_ACTIVE); @@ -2337,11 +2352,11 @@ /* * Get station address from the EEPROM. */ - mac_tmp = bge_readmem_ind(sc, 0x0c14); - if ((mac_tmp >> 16) == 0x484b) { + mac_tmp = bge_readmem_ind(sc, 0x0C14); + if ((mac_tmp >> 16) == 0x484B) { eaddr[0] = (u_char)(mac_tmp >> 8); eaddr[1] = (u_char)mac_tmp; - mac_tmp = bge_readmem_ind(sc, 0x0c18); + mac_tmp = bge_readmem_ind(sc, 0x0C18); eaddr[2] = (u_char)(mac_tmp >> 24); eaddr[3] = (u_char)(mac_tmp >> 16); eaddr[4] = (u_char)(mac_tmp >> 8); @@ -2395,7 +2410,10 @@ IFQ_SET_READY(&ifp->if_snd); ifp->if_hwassist = BGE_CSUM_FEATURES; ifp->if_capabilities = IFCAP_HWCSUM | IFCAP_VLAN_HWTAGGING | - IFCAP_VLAN_MTU | IFCAP_VLAN_HWCSUM; + IFCAP_VLAN_MTU; +#ifdef IFCAP_VLAN_HWCSUM + ifp->if_capabilities |= IFCAP_VLAN_HWCSUM; +#endif ifp->if_capenable = ifp->if_capabilities; #ifdef DEVICE_POLLING ifp->if_capabilities |= IFCAP_POLLING; @@ -2441,13 +2459,13 @@ sc->bge_flags |= BGE_FLAG_TBI; if (sc->bge_flags & BGE_FLAG_TBI) { - ifmedia_init(&sc->bge_ifmedia, IFM_IMASK, - bge_ifmedia_upd, bge_ifmedia_sts); - ifmedia_add(&sc->bge_ifmedia, IFM_ETHER|IFM_1000_SX, 0, NULL); - ifmedia_add(&sc->bge_ifmedia, - IFM_ETHER|IFM_1000_SX|IFM_FDX, 0, NULL); - ifmedia_add(&sc->bge_ifmedia, IFM_ETHER|IFM_AUTO, 0, NULL); - ifmedia_set(&sc->bge_ifmedia, IFM_ETHER|IFM_AUTO); + ifmedia_init(&sc->bge_ifmedia, IFM_IMASK, bge_ifmedia_upd, + bge_ifmedia_sts); + ifmedia_add(&sc->bge_ifmedia, IFM_ETHER | IFM_1000_SX, 0, NULL); + ifmedia_add(&sc->bge_ifmedia, IFM_ETHER | IFM_1000_SX | IFM_FDX, + 0, NULL); + ifmedia_add(&sc->bge_ifmedia, IFM_ETHER | IFM_AUTO, 0, NULL); + ifmedia_set(&sc->bge_ifmedia, IFM_ETHER | IFM_AUTO); sc->bge_ifmedia.ifm_media = sc->bge_ifmedia.ifm_cur->ifm_media; } else { /* @@ -2466,7 +2484,8 @@ bge_ifmedia_upd, bge_ifmedia_sts)) { if (trys++ < 4) { device_printf(sc->bge_dev, "Try again\n"); - bge_miibus_writereg(sc->bge_dev, 1, MII_BMCR, BMCR_RESET); + bge_miibus_writereg(sc->bge_dev, 1, MII_BMCR, + BMCR_RESET); goto again; } @@ -2504,8 +2523,13 @@ /* * Hookup IRQ last. */ +#if __FreeBSD_version > 700030 error = bus_setup_intr(dev, sc->bge_irq, INTR_TYPE_NET | INTR_MPSAFE, NULL, bge_intr, sc, &sc->bge_intrhand); +#else + error = bus_setup_intr(dev, sc->bge_irq, INTR_TYPE_NET | INTR_MPSAFE, + bge_intr, sc, &sc->bge_intrhand); +#endif if (error) { bge_detach(dev); @@ -2567,8 +2591,10 @@ bus_release_resource(dev, SYS_RES_IRQ, sc->bge_flags & BGE_FLAG_MSI ? 1 : 0, sc->bge_irq); +#if __FreeBSD_version > 700025 if (sc->bge_flags & BGE_FLAG_MSI) pci_release_msi(dev); +#endif if (sc->bge_res != NULL) bus_release_resource(dev, SYS_RES_MEMORY, @@ -2607,8 +2633,8 @@ pcistate = pci_read_config(dev, BGE_PCI_PCISTATE, 4); pci_write_config(dev, BGE_PCI_MISC_CTL, - BGE_PCIMISCCTL_INDIRECT_ACCESS|BGE_PCIMISCCTL_MASK_PCI_INTR| - BGE_HIF_SWAP_OPTIONS|BGE_PCIMISCCTL_PCISTATE_RW, 4); + BGE_PCIMISCCTL_INDIRECT_ACCESS | BGE_PCIMISCCTL_MASK_PCI_INTR | + BGE_HIF_SWAP_OPTIONS | BGE_PCIMISCCTL_PCISTATE_RW, 4); /* Disable fastboot on controllers that support it. */ if (sc->bge_asicrev == BGE_ASICREV_BCM5752 || @@ -2626,16 +2652,16 @@ */ bge_writemem_ind(sc, BGE_SOFTWARE_GENCOMM, BGE_MAGIC_NUMBER); - reset = BGE_MISCCFG_RESET_CORE_CLOCKS|(65<<1); + reset = BGE_MISCCFG_RESET_CORE_CLOCKS | BGE_32BITTIME_66MHZ; /* XXX: Broadcom Linux driver. */ if (sc->bge_flags & BGE_FLAG_PCIE) { - if (CSR_READ_4(sc, 0x7e2c) == 0x60) /* PCIE 1.0 */ - CSR_WRITE_4(sc, 0x7e2c, 0x20); + if (CSR_READ_4(sc, 0x7E2C) == 0x60) /* PCIE 1.0 */ + CSR_WRITE_4(sc, 0x7E2C, 0x20); if (sc->bge_chipid != BGE_CHIPID_BCM5750_A0) { /* Prevent PCIE link training during global reset */ - CSR_WRITE_4(sc, BGE_MISC_CFG, (1<<29)); - reset |= (1<<29); + CSR_WRITE_4(sc, BGE_MISC_CFG, 1 << 29); + reset |= 1 << 29; } } @@ -2657,23 +2683,23 @@ uint32_t v; DELAY(500000); /* wait for link training to complete */ - v = pci_read_config(dev, 0xc4, 4); - pci_write_config(dev, 0xc4, v | (1<<15), 4); + v = pci_read_config(dev, 0xC4, 4); + pci_write_config(dev, 0xC4, v | (1 << 15), 4); } /* * Set PCIE max payload size to 128 bytes and clear error * status. */ - pci_write_config(dev, 0xd8, 0xf5000, 4); + pci_write_config(dev, 0xD8, 0xF5000, 4); } /* Reset some of the PCI state that got zapped by reset. */ pci_write_config(dev, BGE_PCI_MISC_CTL, - BGE_PCIMISCCTL_INDIRECT_ACCESS|BGE_PCIMISCCTL_MASK_PCI_INTR| - BGE_HIF_SWAP_OPTIONS|BGE_PCIMISCCTL_PCISTATE_RW, 4); + BGE_PCIMISCCTL_INDIRECT_ACCESS | BGE_PCIMISCCTL_MASK_PCI_INTR | + BGE_HIF_SWAP_OPTIONS | BGE_PCIMISCCTL_PCISTATE_RW, 4); pci_write_config(dev, BGE_PCI_CACHESZ, cachesize, 4); pci_write_config(dev, BGE_PCI_CMD, command, 4); - write_op(sc, BGE_MISC_CFG, (65 << 1)); + write_op(sc, BGE_MISC_CFG, BGE_32BITTIME_66MHZ); /* Re-enable MSI, if neccesary, and enable the memory arbiter. */ if (BGE_IS_5714_FAMILY(sc)) { @@ -2725,12 +2751,12 @@ } if (sc->bge_flags & BGE_FLAG_PCIE) { - reset = bge_readmem_ind(sc, 0x7c00); - bge_writemem_ind(sc, 0x7c00, reset | (1 << 25)); + reset = bge_readmem_ind(sc, 0x7C00); + bge_writemem_ind(sc, 0x7C00, reset | (1 << 25)); } /* Fix up byte swapping. */ - CSR_WRITE_4(sc, BGE_MODE_CTL, BGE_DMA_SWAP_OPTIONS| + CSR_WRITE_4(sc, BGE_MODE_CTL, BGE_DMA_SWAP_OPTIONS | BGE_MODECTL_BYTESWAP_DATA); /* Tell the ASF firmware we are up */ @@ -2758,8 +2784,8 @@ sc->bge_chipid != BGE_CHIPID_BCM5750_A0) { uint32_t v; - v = CSR_READ_4(sc, 0x7c00); - CSR_WRITE_4(sc, 0x7c00, v | (1<<25)); + v = CSR_READ_4(sc, 0x7C00); + CSR_WRITE_4(sc, 0x7C00, v | (1 << 25)); } DELAY(10000); @@ -2887,7 +2913,7 @@ if (ifp->if_capenable & IFCAP_RXCSUM) { if (cur_rx->bge_flags & BGE_RXBDFLAG_IP_CSUM) { m->m_pkthdr.csum_flags |= CSUM_IP_CHECKED; - if ((cur_rx->bge_ip_csum ^ 0xffff) == 0) + if ((cur_rx->bge_ip_csum ^ 0xFFFF) == 0) m->m_pkthdr.csum_flags |= CSUM_IP_VALID; } if (cur_rx->bge_flags & BGE_RXBDFLAG_TCP_UDP_CSUM && @@ -2904,8 +2930,14 @@ * attach that information to the packet. */ if (have_tag) { +#if __FreeBSD_version > 700022 m->m_pkthdr.ether_vtag = vlan_tag; m->m_flags |= M_VLANTAG; +#else + VLAN_INPUT_TAG_NEW(ifp, m, vlan_tag); + if (m == NULL) + continue; +#endif } BGE_UNLOCK(sc); @@ -2953,7 +2985,7 @@ bus_dmamap_sync(sc->bge_cdata.bge_tx_ring_tag, sc->bge_cdata.bge_tx_ring_map, - BUS_DMASYNC_POSTREAD|BUS_DMASYNC_POSTWRITE); + BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE); /* * Go through our tx ring and free mbufs for those * frames that have been sent. @@ -3007,7 +3039,7 @@ bus_dmamap_sync(sc->bge_cdata.bge_status_tag, sc->bge_cdata.bge_status_map, BUS_DMASYNC_PREREAD); - /* Note link event. It will be processed by POLL_AND_CHECK_STATUS cmd */ + /* Note link event. It will be processed by POLL_AND_CHECK_STATUS. */ if (statusword & BGE_STATFLAG_LINKSTATE_CHANGED) sc->bge_link_evt++; @@ -3114,7 +3146,7 @@ bge_writemem_ind(sc, BGE_SOFTWARE_GENNCOMM_FW_LEN, 4); bge_writemem_ind(sc, BGE_SOFTWARE_GENNCOMM_FW_DATA, 3); CSR_WRITE_4(sc, BGE_CPU_EVENT, - CSR_READ_4(sc, BGE_CPU_EVENT) != (1 << 14)); + CSR_READ_4(sc, BGE_CPU_EVENT) | (1 << 14)); } } } @@ -3333,12 +3365,24 @@ /* ... and put VLAN tag into first segment. */ d = &sc->bge_ldata.bge_tx_ring[*txidx]; +#if __FreeBSD_version > 700022 if (m->m_flags & M_VLANTAG) { d->bge_flags |= BGE_TXBDFLAG_VLAN_TAG; d->bge_vlan_tag = m->m_pkthdr.ether_vtag; } else d->bge_vlan_tag = 0; +#else + { + struct m_tag *mtag; + if ((mtag = VLAN_OUTPUT_TAG(sc->bge_ifp, m)) != NULL) { + d->bge_flags |= BGE_TXBDFLAG_VLAN_TAG; + d->bge_vlan_tag = VLAN_TAG_VALUE(mtag); + } else + d->bge_vlan_tag = 0; + } +#endif + /* * Insure that the map for this transmission * is placed at the array index of the last descriptor @@ -3420,7 +3464,11 @@ * If there's a BPF listener, bounce a copy of this frame * to him. */ +#ifdef ETHER_BPF_MTAP ETHER_BPF_MTAP(ifp, m_head); +#else + BPF_MTAP(ifp, m_head); +#endif } if (count == 0) @@ -3626,11 +3674,11 @@ uint32_t sgdig; CSR_WRITE_4(sc, BGE_TX_TBI_AUTONEG, 0); sgdig = CSR_READ_4(sc, BGE_SGDIG_CFG); - sgdig |= BGE_SGDIGCFG_AUTO| - BGE_SGDIGCFG_PAUSE_CAP| + sgdig |= BGE_SGDIGCFG_AUTO | + BGE_SGDIGCFG_PAUSE_CAP | BGE_SGDIGCFG_ASYM_PAUSE; CSR_WRITE_4(sc, BGE_SGDIG_CFG, - sgdig|BGE_SGDIGCFG_SEND); + sgdig | BGE_SGDIGCFG_SEND); DELAY(5); CSR_WRITE_4(sc, BGE_SGDIG_CFG, sgdig); } @@ -3805,7 +3853,9 @@ ifp->if_hwassist = BGE_CSUM_FEATURES; else ifp->if_hwassist = 0; +#ifdef VLAN_CAPABILITIES VLAN_CAPABILITIES(ifp); +#endif } break; default: >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Mar 8 13:24:30 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 721DA16A40A; Thu, 8 Mar 2007 13:24:30 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 22DF516A407 for ; Thu, 8 Mar 2007 13:24:30 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id EB12E13C4B3 for ; Thu, 8 Mar 2007 13:24:29 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l28DOTd0077269 for ; Thu, 8 Mar 2007 13:24:29 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l28DOTN7077262 for perforce@freebsd.org; Thu, 8 Mar 2007 13:24:29 GMT (envelope-from piso@freebsd.org) Date: Thu, 8 Mar 2007 13:24:29 GMT Message-Id: <200703081324.l28DOTN7077262@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115520 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 13:24:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=115520 Change 115520 by piso@piso_newluxor on 2007/03/08 13:24:09 Fix fhc compilation. Affected files ... .. //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc.c#9 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sparc64/fhc/fhc.c#9 (text+ko) ==== @@ -87,7 +87,7 @@ static bus_get_resource_list_t fhc_get_resource_list; static ofw_bus_get_devinfo_t fhc_get_devinfo; -static driver_filter_t fhc_filter_stub(void *); +static driver_filter_t fhc_filter_stub; static driver_intr_t fhc_intr_stub; static void fhc_led_func(void *, int); static int fhc_print_res(struct fhc_devinfo *); From owner-p4-projects@FreeBSD.ORG Thu Mar 8 16:23:16 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B185016A405; Thu, 8 Mar 2007 16:23:16 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 4E21A16A404 for ; Thu, 8 Mar 2007 16:23:16 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 3041613C48E for ; Thu, 8 Mar 2007 16:23:16 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l28GNGXc065797 for ; Thu, 8 Mar 2007 16:23:16 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l28GNFG2065787 for perforce@freebsd.org; Thu, 8 Mar 2007 16:23:15 GMT (envelope-from piso@freebsd.org) Date: Thu, 8 Mar 2007 16:23:15 GMT Message-Id: <200703081623.l28GNFG2065787@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115528 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 16:23:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=115528 Change 115528 by piso@piso_newluxor on 2007/03/08 16:22:25 As we didn't reach a consensus about interrupt stray handling: o axe MI interrupt stray code and leave a noisy printf instead o axe the MD stray interrupt code for i386 and amd64 Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#25 edit .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#32 edit .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#35 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#25 (text+ko) ==== @@ -75,11 +75,8 @@ static struct mtx intr_table_lock; static STAILQ_HEAD(, pic) pics; -extern struct callout stray_callout_handle; - static void intr_eoi_src(void *arg); static void intr_disab_eoi_src(void *arg); -void intr_callout_reset(void); static void intr_event_stray(void *cookie); #ifdef SMP @@ -222,33 +219,7 @@ return (isrc->is_pic->pic_config_intr(isrc, trig, pol)); } -/* Stray detection MD code */ -static struct intr_event * -walk_intr_src(void) -{ - struct intsrc *isrc; - static int i = 0; - - while (i < NUM_IO_INTS) { - mtx_lock_spin(&intr_table_lock); - isrc = interrupt_sources[i++]; - mtx_unlock_spin(&intr_table_lock); - if (isrc != NULL && isrc->is_event != NULL) - return (isrc->is_event); - } - i = 0; - return (NULL); -} - void -intr_callout_reset(void) -{ - - callout_reset(&stray_callout_handle, hz, &stray_detection, - &walk_intr_src); -} - -void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) { struct thread *td; @@ -398,7 +369,6 @@ intrcnt_index = 1; STAILQ_INIT(&pics); mtx_init(&intr_table_lock, "intr table", NULL, MTX_SPIN); - callout_init(&stray_callout_handle, 1); } SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL) ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#32 (text+ko) ==== @@ -66,11 +66,8 @@ static struct mtx intr_table_lock; static STAILQ_HEAD(, pic) pics; -extern struct callout stray_callout_handle; - static void intr_eoi_src(void *arg); static void intr_disab_eoi_src(void *arg); -void intr_callout_reset(void); static void intr_event_stray(void *cookie); #ifdef SMP @@ -213,22 +210,6 @@ return (isrc->is_pic->pic_config_intr(isrc, trig, pol)); } -/* Stray detection MD code */ -static struct intr_event * -walk_intrs_src(void) -{ - struct intsrc *isrc; - static int i = 0; - - while (i < NUM_IO_INTS) { - isrc = interrupt_sources[i++]; - if (isrc != NULL && isrc->is_event != NULL) - return (isrc->is_event); - } - i = 0; - return (NULL); -} - void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) { @@ -281,14 +262,6 @@ isrc->is_pic->pic_vector(isrc)); } -void -intr_callout_reset(void) -{ - - callout_reset(&stray_callout_handle, hz, - &stray_detection, &walk_intrs_src); -} - static void intr_eoi_src(void *arg) { @@ -384,8 +357,6 @@ intrcnt_index = 1; STAILQ_INIT(&pics); mtx_init(&intr_table_lock, "intr table", NULL, MTX_SPIN); - callout_init(&stray_callout_handle, 1); - // XXX - we don't drain the callout... } SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL) ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#35 (text+ko) ==== @@ -58,10 +58,6 @@ #include #endif -/* Stray detection */ -struct callout stray_callout_handle; -static int backoff = 1; - /* MD function */ extern void intr_callout_reset(void); @@ -927,46 +923,6 @@ return (FILTER_STRAY); } -/* Stray storm detection */ -void -stray_detection(void *_arg) -{ - struct intr_thread *ithd = NULL; - struct intr_event *ie; - void *(*walk_src)(void) = _arg; - int thread; - - /* analyze all the interrupt sources... */ - while ((ie = walk_src()) != NULL) { - /* is this interrupt marked as being throttled? */ - if (ie != NULL && ie->ie_count == INT_MAX) { - /* and is the interrupt still pending? */ - if (ie->ie_pending(ie->ie_source)) { - /* - * yes, it's still pending: call filters... - */ - thread = intr_filter_loop(ie, NULL /* XXX frame */, &ithd); - if (thread & FILTER_STRAY) { - /* - * no filter claimed the intr, - * backoff with a longer timeout - */ - backoff++; // XXX we need thresholds... - callout_reset(&stray_callout_handle, hz*backoff, - &stray_detection, _arg); - continue; - } - } - /* - * a filter claimed the intr, or the intr was not - * pending anymore: unmask it - */ - ie->ie_count = 0; - ie->ie_enable(ie->ie_source); - } - } -} - /* * Main interrupt handling body. * @@ -1012,15 +968,9 @@ /* Interrupt storm logic */ if (thread & FILTER_STRAY) { - if (ie->ie_enable == NULL || ie->ie_pending == NULL) - printf("Interrupt stray detection not present:" - "check ie_enable and ie_pending\n"); - else { - printf("Interrupt stray detected on \"%s\";" - "throttling interrupt source\n", ie->ie_name); - ie->ie_count = INT_MAX; - intr_callout_reset(); - } + ie->ie_count++; + if (ie->ie_count < intr_storm_threshold) + printf("Interrupt stray detection not present\n"); } /* Schedule an ithread if needed. */ From owner-p4-projects@FreeBSD.ORG Thu Mar 8 16:40:59 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2183A16A405; Thu, 8 Mar 2007 16:40:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id EDE7816A400 for ; Thu, 8 Mar 2007 16:40:58 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id DB3ED13C441 for ; Thu, 8 Mar 2007 16:40:58 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l28Gew0k078116 for ; Thu, 8 Mar 2007 16:40:58 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l28GewAQ078096 for perforce@freebsd.org; Thu, 8 Mar 2007 16:40:58 GMT (envelope-from piso@freebsd.org) Date: Thu, 8 Mar 2007 16:40:58 GMT Message-Id: <200703081640.l28GewAQ078096@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115531 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 16:40:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=115531 Change 115531 by piso@piso_newluxor on 2007/03/08 16:40:44 Axe MD interrupt stray code for arm, ia64, ppc, sparc64 and sun4v. Affected files ... .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#21 edit .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#23 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#29 edit .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#23 edit .. //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#8 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#21 (text+ko) ==== @@ -57,11 +57,8 @@ static int intrcnt_index = 0; static int last_printed = 0; -extern struct callout stray_callout_handle; - void arm_handler_execute(struct trapframe *, int); -void intr_callout_reset(void); static void intr_disab_eoi_src(void *arg); extern struct bus_space i80321_bs_tag; @@ -108,22 +105,6 @@ { } -/* Stray detection MD code */ -static struct intr_event * -walk_intrs_events(void) -{ - struct intr_event *ie; - static int i = 0; - - while (i < NIRQ) { - ie = intr_events[i++]; - if (ie != NULL) - return (ie); - } - i = 0; - return (NULL); -} - static void intr_disab_eoi_src(void *arg) { @@ -146,13 +127,3 @@ intr_event_handle(event, frame); } } - -void -intr_callout_reset(void) -{ - - return; - // XXX missing callout_init_mtx(&stray_callout_handle, ...); - callout_reset(&stray_callout_handle, hz, - &stray_detection, &walk_intrs_events); -} ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#23 (text+ko) ==== @@ -261,10 +261,6 @@ static struct mtx ia64_intrs_lock; static struct ia64_intr *ia64_intrs[IA64_NUMI]; -extern struct callout stray_callout_handle; - -void intr_callout_reset(void); - extern struct sapic *ia64_sapics[]; extern int ia64_sapic_count; @@ -273,7 +269,6 @@ { mtx_init(&ia64_intrs_lock, "intr table", NULL, MTX_SPIN); - callout_init(&stray_callout_handle, 1); } SYSINIT(ithds_init, SI_SUB_INTR, SI_ORDER_SECOND, ithds_init, NULL); @@ -356,32 +351,6 @@ return (intr_event_remove_handler(cookie)); } -/* Stray detection MD code */ -static struct intr_event * -walk_intr_ia64(void) -{ - struct ia64_intr *ia64_i; - static int i = 0; - - while (i < IA64_NUMI) { - mtx_lock_spin(&ia64_intrs_lock); - ia64_i = ia64_intrs[i++]; - mtx_unlock_spin(&ia64_intrs_lock); - if (ia64_i != NULL && ia64_i->event != NULL) - return (ia64_i->event); - } - i = 0; - return (NULL); -} - -void -intr_callout_reset(void) -{ - - callout_reset(&stray_callout_handle, hz, - &stray_detection, &walk_intr_ia64); -} - static void intr_eoi_src(void *arg) { ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#29 (text+ko) ==== @@ -97,8 +97,6 @@ static void (*irq_enable)(uintptr_t); static void intr_eoi_src(void *arg); -extern struct callout stray_callout_handle; -void intr_callout_reset(void); static void intrcnt_setname(const char *name, int index) @@ -123,7 +121,6 @@ panic("intr_init: unable to allocate interrupt handler array"); mtx_init(&ppc_intrs_lock, "intr table", NULL, MTX_SPIN); - callout_init(&stray_callout_handle, 1); irq_enable = irq_e; @@ -197,64 +194,6 @@ return (intr_event_remove_handler(cookie)); } -#if 0 -void -intr_handle_old(u_int irq) -{ - struct ppc_intr *i; - struct intr_event *ie; - struct intr_handler *ih; - int error, sched; - - i = ppc_intrs[irq]; - if (i == NULL) - goto stray; - - atomic_add_long(i->cntp, 1); - - ie = i->event; - KASSERT(ie != NULL, ("%s: interrupt without an event", __func__)); - - if (TAILQ_EMPTY(&ie->ie_handlers)) - goto stray; - - /* - * Execute all fast interrupt handlers directly without Giant. Note - * that this means that any fast interrupt handler must be MP safe. - */ - sched = 0; - critical_enter(); - TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { - if (ih->ih_filter == NULL) { - sched = 1; - continue; - } - CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, - ih->ih_filter, ih->ih_argument, ih->ih_name); - ih->ih_filter(ih->ih_argument); - } - critical_exit(); - - if (sched) { - error = intr_event_schedule_thread(ie); - KASSERT(error == 0, ("%s: impossible stray interrupt", - __func__)); - } else - irq_enable(irq); - return; - -stray: - atomic_add_long(&intrcnt[0], 1); - if (intrcnt[0] <= MAX_STRAY_LOG) { - printf("stray irq %d\n", irq); - if (intrcnt[0] >= MAX_STRAY_LOG) { - printf("got %d stray interrupts, not logging anymore\n", - MAX_STRAY_LOG); - } - } -} -#endif - static void stray_int(u_int irq) { @@ -278,31 +217,6 @@ irq_enable(nb); } -static struct intr_event * -walk_intr_ppc(void) -{ - struct ppc_intr *intr; - static int i = 0; - - while (i < ppc_nintrs) { - mtx_lock_spin(&ppc_intrs_lock); - intr = ppc_intrs[i++]; - mtx_unlock_spin(&ppc_intrs_lock); - if (intr != NULL && intr->event != NULL) - return (intr->event); - } - i = 0; - return (NULL); -} - -void -intr_callout_reset(void) -{ - - callout_reset(&stray_callout_handle, hz, &stray_detection, - &walk_intr_ppc); -} - void intr_handle(u_int irq) { ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#23 (text+ko) ==== @@ -105,10 +105,6 @@ /* protect the intr_vectors table */ static struct mtx intr_table_lock; -extern struct callout stray_callout_handle; - -void intr_callout_reset(void); - static void intr_execute_handlers(void *); static void intr_stray_level(struct trapframe *); static void intr_stray_vector(void *); @@ -234,31 +230,6 @@ { mtx_init(&intr_table_lock, "intr table", NULL, MTX_SPIN); - callout_init(&stray_callout_handle, 1); -} - -/* Stray detection MD code */ -static struct intr_event * -walk_intr_sparc64(void) -{ - struct intr_vector *iv; - static int i = 0; - - while (i < IV_MAX) { - iv = &intr_vectors[i++]; - if (iv != NULL && iv->iv_event != NULL) - return (iv->iv_event); - } - i = 0; - return (NULL); -} - -void -intr_callout_reset(void) -{ - - callout_reset(&stray_callout_handle, hz, - &stray_detection, &walk_intr_sparc64); } static void ==== //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#8 (text+ko) ==== @@ -143,9 +143,6 @@ /* protect the intr_vectors table */ static struct mtx intr_table_lock; -extern struct callout stray_callout_handle; -void intr_callout_reset(void); - static void intr_execute_handlers(void *); static void intr_stray_level(struct trapframe *); static void intr_stray_vector(void *); @@ -153,30 +150,6 @@ static void intrcnt_updatename(int, const char *, int); static void cpu_intrq_alloc(void); -/* Stray detection MD code */ -static struct intr_event * -walk_intr_sun4v(void) -{ - struct intr_vector *iv; - static int i = 0; - - while (i < IV_MAX) { - iv = &intr_vectors[i++]; - if (iv != NULL && iv->iv_event != NULL) - return (iv->iv_event); - } - i = 0; - return (NULL); -} - -void -intr_callout_reset(void) -{ - - callout_reset(&stray_callout_handle, hz, - &stray_detection, &walk_intr_sun4v); -} - /* * not MPSAFE */ From owner-p4-projects@FreeBSD.ORG Thu Mar 8 17:34:08 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B26AC16A401; Thu, 8 Mar 2007 17:34:08 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5B11116A405 for ; Thu, 8 Mar 2007 17:34:08 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 3D0E413C474 for ; Thu, 8 Mar 2007 17:34:08 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l28HY8q9008839 for ; Thu, 8 Mar 2007 17:34:08 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l28HY7F6008829 for perforce@freebsd.org; Thu, 8 Mar 2007 17:34:07 GMT (envelope-from piso@freebsd.org) Date: Thu, 8 Mar 2007 17:34:07 GMT Message-Id: <200703081734.l28HY7F6008829@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115537 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 17:34:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=115537 Change 115537 by piso@piso_newluxor on 2007/03/08 17:33:32 As the stray code went moot, axe ie_pending() cause its not used anymore. Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#26 edit .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#22 edit .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#33 edit .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#24 edit .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#36 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#30 edit .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#24 edit .. //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#9 edit .. //depot/projects/soc2006/intr_filter/sys/interrupt.h#18 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#26 (text+ko) ==== @@ -140,8 +140,7 @@ if (interrupt_sources[vector] != NULL) return (EEXIST); error = intr_event_create(&isrc->is_event, isrc, 0, - (mask_fn)isrc->is_pic->pic_enable_source, - (int (*)(void *))isrc->is_pic->pic_source_pending, + (mask_fn)isrc->is_pic->pic_enable_source, intr_eoi_src, intr_disab_eoi_src, "irq%d:", vector); if (error) return (error); ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#22 (text+ko) ==== @@ -75,7 +75,7 @@ event = intr_events[irq]; if (event == NULL) { error = intr_event_create(&event, (void *)irq, 0, - (void (*)(void *))arm_unmask_irq, NULL, NULL, + (void (*)(void *))arm_unmask_irq, NULL, intr_disab_eoi_src, "intr%d:", irq); if (error) return; ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#33 (text+ko) ==== @@ -131,8 +131,7 @@ if (interrupt_sources[vector] != NULL) return (EEXIST); error = intr_event_create(&isrc->is_event, isrc, 0, - (mask_fn)isrc->is_pic->pic_enable_source, - (int (*)(void *))isrc->is_pic->pic_source_pending, + (mask_fn)isrc->is_pic->pic_enable_source, intr_eoi_src, intr_disab_eoi_src, "irq%d:", vector); if (error) return (error); ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#24 (text+ko) ==== @@ -323,7 +323,7 @@ bcopy(name, intrname, strlen(name)); } errcode = intr_event_create(&i->event, (void *)vector, 0, - (void (*)(void *))ia64_send_eoi, NULL, intr_eoi_src, + (void (*)(void *))ia64_send_eoi, intr_eoi_src, NULL, "intr:"); if (errcode) { free(i, M_DEVBUF); ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#36 (text+ko) ==== @@ -235,8 +235,8 @@ int intr_event_create(struct intr_event **event, void *source, int flags, - void (*enable)(void *), int (*pending)(void *), void (*eoi)(void *), - void (*disab)(void *), const char *fmt, ...) + void (*enable)(void *), void (*eoi)(void *), void (*disab)(void *), + const char *fmt, ...) { struct intr_event *ie; va_list ap; @@ -247,7 +247,6 @@ ie = malloc(sizeof(struct intr_event), M_ITHREAD, M_WAITOK | M_ZERO); ie->ie_source = source; ie->ie_enable = enable; - ie->ie_pending = pending; ie->ie_eoi = eoi; ie->ie_disab = disab; ie->ie_flags = flags; @@ -608,7 +607,7 @@ if (!(ie->ie_flags & IE_SOFT)) return (EINVAL); } else { - error = intr_event_create(&ie, NULL, IE_SOFT, NULL, + error = intr_event_create(&ie, NULL, IE_SOFT, NULL, NULL, NULL, "swi%d:", pri); if (error) return (error); ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#30 (text+ko) ==== @@ -154,7 +154,7 @@ if (i == NULL) return (ENOMEM); error = intr_event_create(&i->event, (void *)irq, 0, - (void (*)(void *))irq_enable, NULL, intr_eoi_src, + (void (*)(void *))irq_enable, intr_eoi_src, NULL, "irq%d:", irq); if (error) { free(i, M_INTR); ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#24 (text+ko) ==== @@ -262,9 +262,8 @@ ie = iv->iv_event; mtx_unlock_spin(&intr_table_lock); if (ie == NULL) { - errcode = intr_event_create(&ie, (void *)(intptr_t)vec, 0, NULL, - NULL, NULL, NULL, "vec%d:", - vec); + errcode = intr_event_create(&ie, (void *)(intptr_t)vec, 0, + NULL, NULL, NULL, "vec%d:", vec); if (errcode) return (errcode); mtx_lock_spin(&intr_table_lock); ==== //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#9 (text+ko) ==== @@ -355,7 +355,7 @@ mtx_unlock_spin(&intr_table_lock); if (ie == NULL) { errcode = intr_event_create(&ie, (void *)(intptr_t)vec, 0, - NULL, NULL, NULL, NULL, "vec%d:", + NULL, NULL, NULL, "vec%d:", vec); if (errcode) return (errcode); ==== //depot/projects/soc2006/intr_filter/sys/interrupt.h#18 (text+ko) ==== @@ -73,7 +73,6 @@ void *ie_source; /* Cookie used by MD code. */ struct intr_thread *ie_thread; /* Thread we are connected to. */ void (*ie_enable)(void *); - int (*ie_pending)(void *); void (*ie_eoi)(void *); void (*ie_disab)(void *); int ie_flags; @@ -125,9 +124,9 @@ driver_filter_t filter, driver_intr_t handler, void *arg, u_char pri, enum intr_type flags, void **cookiep); int intr_event_create(struct intr_event **event, void *source, - int flags, void (*enable)(void *), int (*pending)(void *), - void (*eoi)(void *), void (*disab)(void *), const char *fmt, ...) - __printflike(8, 9); + int flags, void (*enable)(void *), void (*eoi)(void *), + void (*disab)(void *), const char *fmt, ...) + __printflike(7, 8); int intr_event_destroy(struct intr_event *ie); int intr_event_remove_handler(void *cookie); int intr_event_schedule_thread(struct intr_event *ie, struct intr_thread *ithd); From owner-p4-projects@FreeBSD.ORG Thu Mar 8 20:27:49 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EC63516A401; Thu, 8 Mar 2007 20:27:48 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B27EE16A405 for ; Thu, 8 Mar 2007 20:27:48 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id A251613C494 for ; Thu, 8 Mar 2007 20:27:48 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l28KRmFh061963 for ; Thu, 8 Mar 2007 20:27:48 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l28KRmBr061960 for perforce@freebsd.org; Thu, 8 Mar 2007 20:27:48 GMT (envelope-from csjp@freebsd.org) Date: Thu, 8 Mar 2007 20:27:48 GMT Message-Id: <200703082027.l28KRmBr061960@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 115548 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 20:27:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=115548 Change 115548 by csjp@csjp_rnd01 on 2007/03/08 20:27:30 Introduce more cycle counters to measure the various aspects of the new bpf zero copy system: (1) Measure the number of cycles spent waiting for system calls to finish while processing packet data. This will allow us to measure the overhead associated with reads in "regular copy mode". As well as allows us to see how many manual buffer rotations we have done in zero copy mode. (2) Measure the number of cycles spent NOT sleeping. So, this allows us to measure the number of cycles spent from the time select(2) wakes us up, to the time we potentially go back to sleep (or call select(2) again. (3) Measure the number of cycles spent from the time select(2) wakes us up, to the time we signal to the kernel we are done. In the read case, the kernel is notified after the uiomove completes. In the zerocopy case, the kernel is notified when the user generation number is incremented and a packet comes in. (4) Also, add a counter which tells the us how many packets we have indexed in total. This allows us to cross reference between packet generation engines. Affected files ... .. //depot/projects/zcopybpf/utils/bpfnull/bpfnull.c#17 edit Differences ... ==== //depot/projects/zcopybpf/utils/bpfnull/bpfnull.c#17 (text+ko) ==== @@ -52,7 +52,10 @@ int bpf_open(void); void usage(void); -u_int64_t sum; +u_int64_t sum; /* cycles spent processing packet data */ +u_int64_t rsum; /* cycles spent in syscalls after wakeup */ +u_int64_t ssum; /* cycles spent not sleep in event loop */ +u_int64_t psum; /* cycles spent before buffer can be reclaimed */ static struct ifreq ifr; static pcap_dumper_t *dp; @@ -69,14 +72,18 @@ static int pflag; static int Pflag; -/* XXX we need an option to put the interface into promisc mode */ static u_char *bufa, *bufb; static unsigned long packet_count; static int handle_int(int sig __unused) { + putchar('\n'); printf("%lu cycles spent processing packets\n", sum); + printf("%lu cycles spent in a syscall after wakeup\n", rsum); + printf("%lu cycles spent not sleeping\n", ssum); + printf("%lu cycles spent before buffer reclaims\n", psum); + printf("%lu packets processed\n", packet_count); exit(0); } @@ -156,11 +163,11 @@ fd_set s_set, r_set; struct bpf_zbuf bz; char *pbuf; - int processed_data, n; + int n; struct bpf_zbuf_header *bzha, *bzhb; struct timeval tv; void *prev2, *prev; - u_int64_t b, a; + u_int64_t b, a, c, d, e, f; prev2 = prev = NULL; pbuf = malloc(bflag + 1); @@ -172,6 +179,7 @@ for (;;) { r_set = s_set; n = select(fd + 1, &r_set, NULL, NULL, &tv); + e = rdtsc(); if (n < 0) { fprintf(stderr,"owned by select\n"); err(1, "select failed"); @@ -181,9 +189,13 @@ if (n != 0 && !FD_ISSET(fd, &r_set) && vflag) printf("No timeout and fd is not ready!\n"); if (zflag == 0) { + c = rdtsc(); n = read(fd, pbuf, bflag); + d = rdtsc(); if (n < 0) err(1, "read failed"); + psum += d - e; + rsum += d - c; bz.bz_bufa = pbuf; bz.bz_buflen = n; b = rdtsc(); @@ -191,19 +203,23 @@ a = rdtsc(); sum += a - b; } else { - processed_data = 0; bzha = (struct bpf_zbuf_header *)bufa; bzhb = (struct bpf_zbuf_header *)bufb; if (n == 0) { + c = rdtsc(); if (ioctl(fd, BIOCROTZBUF, &bz) < 0) err(1, "ioctl"); + d = rdtsc(); + rsum += d - c; if (bz.bz_bufa == NULL) { if (vflag) printf("timeout no data\n"); continue; } } + assert(bzha->bzh_kernel_gen > bzha->bzh_user_gen || + bzhb->bzh_kernel_gen > bzhb->bzh_user_gen); if (bzha->bzh_kernel_gen > bzha->bzh_user_gen) { bz.bz_bufa = bufa; bz.bz_bufa += sizeof(struct bpf_zbuf_header); @@ -212,8 +228,8 @@ bpf_process_packets(&bz, "A"); a = rdtsc(); sum += a - b; + psum += a - e; bzha->bzh_user_gen++; - processed_data++; } else if (bzhb->bzh_kernel_gen > bzhb->bzh_user_gen) { bz.bz_bufa = bufb; bz.bz_bufa += sizeof(struct bpf_zbuf_header); @@ -222,11 +238,12 @@ bpf_process_packets(&bz, "B"); a = rdtsc(); sum += a - b; + psum += a - e; bzhb->bzh_user_gen++; - processed_data++; } - assert(processed_data != 0); } + f = rdtsc(); + ssum += f - e; } } From owner-p4-projects@FreeBSD.ORG Thu Mar 8 22:28:28 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CDC6216A404; Thu, 8 Mar 2007 22:28:27 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8930016A401 for ; Thu, 8 Mar 2007 22:28:27 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 7A2F713C4A5 for ; Thu, 8 Mar 2007 22:28:27 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l28MSRIM093999 for ; Thu, 8 Mar 2007 22:28:27 GMT (envelope-from gabor@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l28MSR4I093996 for perforce@freebsd.org; Thu, 8 Mar 2007 22:28:27 GMT (envelope-from gabor@freebsd.org) Date: Thu, 8 Mar 2007 22:28:27 GMT Message-Id: <200703082228.l28MSR4I093996@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@freebsd.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 115563 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 22:28:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=115563 Change 115563 by gabor@gabor_server on 2007/03/08 22:28:01 Roll back current DESTDIR implementation, step 3. Affected files ... .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.port.mk#5 edit .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.port.subdir.mk#5 edit Differences ... ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.port.mk#5 (text+ko) ==== @@ -1343,12 +1343,6 @@ LOCALBASE?= /usr/local X11BASE?= /usr/X11R6 LINUXBASE?= /compat/linux -LOCALBASE_REL:= ${LOCALBASE} -X11BASE_REL:= ${X11BASE} -LINUXBASE_REL:= ${LINUXBASE} -LOCALBASE:= ${LOCALBASE_REL} -X11BASE:= ${X11BASE_REL} -LINUXBASE:= ${LINUXBASE_REL} DISTDIR?= ${PORTSDIR}/distfiles _DISTDIR?= ${DISTDIR}/${DIST_SUBDIR} INDEXDIR?= ${PORTSDIR} @@ -1358,8 +1352,6 @@ INDEXFILE?= INDEX .endif -TARGETDIR:= ${PREFIX} - .if defined(USE_LINUX_RPM) .include "${PORTSDIR}/Mk/bsd.linux-rpm.mk" .endif @@ -1927,10 +1919,10 @@ PL_BUILD?= Build CONFIGURE_ARGS+= \ create_packlist=0 \ - install_path=lib="${TARGETDIR}/${SITE_PERL_REL}" \ - install_path=arch="${TARGETDIR}/${SITE_PERL_REL}/${PERL_ARCH}" \ - install_path=script="${TARGETDIR}/bin" \ - install_path=bin="${TARGETDIR}/bin" \ + install_path=lib="${PREFIX}/${SITE_PERL_REL}" \ + install_path=arch="${PREFIX}/${SITE_PERL_REL}/${PERL_ARCH}" \ + install_path=script="${PREFIX}/bin" \ + install_path=bin="${PREFIX}/bin" \ install_path=libdoc="${MAN3PREFIX}/man/man3" \ install_path=bindoc="${MAN1PREFIX}/man/man1" .elif defined(PERL_CONFIGURE) @@ -2280,32 +2272,17 @@ .if (${OSVERSION} < 504105 || (${OSVERSION} >= 600000 && ${OSVERSION} < 600103) || (${OSVERSION} >= 700000 && ${OSVERSION} < 700012)) && ${PKGORIGIN} != "ports-mgmt/pkg_install" EXTRACT_DEPENDS+= ${LOCALBASE}/sbin/pkg_info:${PORTSDIR}/ports-mgmt/pkg_install .endif -.if !defined(DESTDIR) PKG_CMD?= ${LOCALBASE}/sbin/pkg_create PKG_ADD?= ${LOCALBASE}/sbin/pkg_add PKG_DELETE?= ${LOCALBASE}/sbin/pkg_delete PKG_INFO?= ${LOCALBASE}/sbin/pkg_info PKG_VERSION?= ${LOCALBASE}/sbin/pkg_version .else -PKG_CMD?= ${LOCALBASE}/sbin/pkg_create -PKG_ADD?= ${CHROOT} ${DESTDIR} ${LOCALBASE}/sbin/pkg_add -PKG_DELETE?= ${CHROOT} ${DESTDIR} ${LOCALBASE}/sbin/pkg_delete -PKG_INFO?= ${CHROOT} ${DESTDIR} ${LOCALBASE}/sbin/pkg_info -.endif -.else -.if !defined(DESTDIR) PKG_CMD?= /usr/sbin/pkg_create PKG_ADD?= /usr/sbin/pkg_add PKG_DELETE?= /usr/sbin/pkg_delete PKG_INFO?= /usr/sbin/pkg_info PKG_VERSION?= /usr/sbin/pkg_version -.else -PKG_CMD?= /usr/sbin/pkg_create -PKG_ADD?= ${CHROOT} ${DESTDIR} /usr/sbin/pkg_add -PKG_DELETE?= ${CHROOT} ${DESTDIR} /usr/sbin/pkg_delete -PKG_INFO?= ${CHROOT} ${DESTDIR} /usr/sbin/pkg_info -PKG_VERSION?= ${CHROOT} ${DESTDIR} /usr/sbin/pkg_version -.endif .endif # Does the pkg_create tool support conflict checking? @@ -2832,10 +2809,10 @@ PKGLATESTFILE= ${PKGLATESTREPOSITORY}/${LATEST_LINK}${PKG_SUFX} .if defined(PERL_CONFIGURE) -CONFIGURE_ARGS+= CC="${CC}" CCFLAGS="${CFLAGS}" PREFIX="${TARGETDIR}" \ - INSTALLPRIVLIB="${TARGETDIR}/lib" INSTALLARCHLIB="${TARGETDIR}/lib" +CONFIGURE_ARGS+= CC="${CC}" CCFLAGS="${CFLAGS}" PREFIX="${PREFIX}" \ + INSTALLPRIVLIB="${TARGETDIR}/lib" INSTALLARCHLIB="${PREFIX}/lib" CONFIGURE_SCRIPT?= Makefile.PL -MAN3PREFIX?= ${TARGETDIR}/lib/perl5/${PERL_VERSION} +MAN3PREFIX?= ${PREFIX}/lib/perl5/${PERL_VERSION} .undef HAS_CONFIGURE .endif @@ -2870,7 +2847,7 @@ .if ${PREFIX} == /usr MANPREFIX?= /usr/share .else -MANPREFIX?= ${TARGETDIR} +MANPREFIX?= ${PREFIX} .endif .for sect in 1 2 3 4 5 6 7 8 9 @@ -2966,9 +2943,9 @@ .if defined(_MANPAGES) .if defined(NOMANCOMPRESS) -__MANPAGES:= ${_MANPAGES:S%^${TARGETDIR}/%%} +__MANPAGES:= ${_MANPAGES:S%^${PREFIX}/%%} .else -__MANPAGES:= ${_MANPAGES:S%^${TARGETDIR}/%%:S%$%.gz%} +__MANPAGES:= ${_MANPAGES:S%^${PREFIX}/%%:S%$%.gz%} .endif .if ${MANCOMPRESSED} == "yes" @@ -2983,16 +2960,16 @@ INFO_PATH?= info .endif -DOCSDIR?= ${TARGETDIR}/share/doc/${PORTNAME} -EXAMPLESDIR?= ${TARGETDIR}/share/examples/${PORTNAME} -DATADIR?= ${TARGETDIR}/share/${PORTNAME} +DOCSDIR?= ${PREFIX}/share/doc/${PORTNAME} +EXAMPLESDIR?= ${PREFIX}/share/examples/${PORTNAME} +DATADIR?= ${PREFIX}/share/${PORTNAME} -PLIST_SUB+= DOCSDIR="${DOCSDIR:S,^${TARGETDIR}/,,}" \ - EXAMPLESDIR="${EXAMPLESDIR:S,^${TARGETDIR}/,,}" \ - DATADIR="${DATADIR:S,^${TARGETDIR}/,,}" +PLIST_SUB+= DOCSDIR="${DOCSDIR:S,^${PREFIX}/,,}" \ + EXAMPLESDIR="${EXAMPLESDIR:S,^${PREFIX}/,,}" \ + DATADIR="${DATADIR:S,^${PREFIX}/,,}" -DESKTOPDIR?= ${TARGETDIR}/share/applications -_DESKTOPDIR_REL= ${DESKTOPDIR:S,^${TARGETDIR}/,,}/ +DESKTOPDIR?= ${PREFIX}/share/applications +_DESKTOPDIR_REL= ${DESKTOPDIR:S,^${PREFIX}/,,}/ .if ${_DESKTOPDIR_REL} == ${DESKTOPDIR}/ # DESKTOPDIR is not beneath PREFIX @@ -3636,11 +3613,7 @@ done; \ if [ -n "$${conflicts_with}" ]; then \ ${ECHO_MSG}; \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s): "; \ - else \ - ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s) in ${DESTDIR}: "; \ - fi; \ + ${ECHO_MSG} "===> ${PKGNAME} conflicts with installed package(s): "; \ for entry in $${conflicts_with}; do \ ${ECHO_MSG} " $${entry}"; \ done; \ @@ -3768,12 +3741,8 @@ .if !target(check-already-installed) check-already-installed: .if !defined(NO_PKG_REGISTER) && !defined(FORCE_PKG_REGISTER) -.if !defined(DESTDIR) - @${ECHO_MSG} "===> Checking if ${PKGORIGIN} already installed" -.else - @${ECHO_MSG} "===> Checking if ${PKGORIGIN} already installed in ${DESTDIR}" -.endif - @${MKDIR} ${PKG_DBDIR}; \ + @${ECHO_MSG} "===> Checking if ${PKGORIGIN} already installed"; \ + ${MKDIR} ${PKG_DBDIR}; \ already_installed=`${PKG_INFO} -q -O ${PKGORIGIN}`; \ if [ -n "$${already_installed}" ]; then \ for p in $${already_installed}; do \ @@ -3789,17 +3758,9 @@ fi ; \ if [ -d ${PKG_DBDIR}/${PKGNAME} -o -n "$${found_package}" ]; then \ if [ -d ${PKG_DBDIR}/${PKGNAME} ]; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_CMD} "===> ${PKGNAME} is already installed"; \ - else \ - ${ECHO_MSG} "===> ${PKGNAME} is already installed in ${DESTDIR}"; \ - fi; \ + ${ECHO_CMD} "===> ${PKGNAME} is already installed"; \ else \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_CMD} "===> An older version of ${PKGORIGIN} is already installed ($${found_package})"; \ - else \ - ${ECHO_MSG} "===> An older version of ${PKGORIGIN} is already installed in ${DESTDIR} ($${found_package})"; \ - fi; \ + ${ECHO_CMD} "===> An older version of ${PKGORIGIN} is already installed ($${found_package})"; \ fi; \ ${ECHO_CMD} " You may wish to \`\`make deinstall'' and install this port again"; \ ${ECHO_CMD} " by \`\`make reinstall'' to upgrade it properly."; \ @@ -3824,12 +3785,12 @@ .if !target(install-mtree) install-mtree: - @${MKDIR} ${TARGETDIR} + @${MKDIR} ${PREFIX} @if [ `${ID} -u` != 0 ]; then \ - if [ -w ${TARGETDIR}/ ]; then \ + if [ -w ${PREFIX}/ ]; then \ ${ECHO_MSG} "Warning: not superuser, you may get some errors during installation."; \ else \ - ${ECHO_MSG} "Error: ${TARGETDIR}/ not writable."; \ + ${ECHO_MSG} "Error: ${PREFIX}/ not writable."; \ ${FALSE}; \ fi; \ fi @@ -3840,9 +3801,9 @@ ${ECHO_CMD} "Copy it from a suitable location (e.g., /usr/src/etc/mtree) and try again."; \ exit 1; \ else \ - ${MTREE_CMD} ${MTREE_ARGS} ${TARGETDIR}/ >/dev/null; \ + ${MTREE_CMD} ${MTREE_ARGS} ${PREFIX}/ >/dev/null; \ if [ ${MTREE_FILE} = "/etc/mtree/BSD.local.dist" ]; then \ - cd ${TARGETDIR}/share/nls; \ + cd ${PREFIX}/share/nls; \ ${LN} -shf C POSIX; \ ${LN} -shf C en_US.US-ASCII; \ fi; \ @@ -3859,22 +3820,12 @@ .if defined(USE_LDCONFIG) || defined(USE_LDCONFIG32) || defined(INSTALLS_SHLIB) .if defined(USE_LDCONFIG) .if !defined(INSTALL_AS_USER) -.if !defined(DESTDIR) @${ECHO_MSG} "===> Running ldconfig" ${LDCONFIG} -m ${USE_LDCONFIG} .else - @${ECHO_MSG} "===> Running ldconfig in ${DESTDIR}" - ${CHROOT} ${DESTDIR} ${LDCONFIG} -m ${USE_LDCONFIG} -.endif -.else -.if !defined(DESTDIR) @${ECHO_MSG} "===> Running ldconfig (errors are ignored)" -${LDCONFIG} -m ${USE_LDCONFIG} -.else - @${ECHO_MSG} "===> Running ldconfig in ${DESTDIR} (errors are ignored)" - ${CHROOT} ${DESTDIR} -${LDCONFIG} -m ${USE_LDCONFIG} .endif -.endif .if ${USE_LDCONFIG} != "${PREFIX}/lib" @${ECHO_MSG} "===> Installing ldconfig configuration file" .if defined(NO_LDCONFIG_MTREE) @@ -3891,22 +3842,12 @@ .endif .if defined(USE_LDCONFIG32) .if !defined(INSTALL_AS_USER) -.if !defined(DESTDIR) @${ECHO_MSG} "===> Running ldconfig" ${LDCONFIG} -32 -m ${USE_LDCONFIG32} .else - @${ECHO_MSG} "===> Running ldconfig in ${DESTDIR}" - ${CHROOT} ${DESTDIR} ${LDCONFIG} -32 -m ${USE_LDCONFIG32} -.endif -.else -.if !defined(DESTDIR) @${ECHO_MSG} "===> Running ldconfig (errors are ignored)" -${LDCONFIG} -32 -m ${USE_LDCONFIG32} -.else - @${ECHO_MSG} "===> Running ldconfig in ${DESTDIR} (errors are ignored)" - ${CHROOT} ${DESTDIR} -${LDCONFIG} -32 -m ${USE_LDCONFIG32} .endif -.endif @${ECHO_MSG} "===> Installing 32-bit ldconfig configuration file" .if defined(NO_LDCONFIG_MTREE) @${MKDIR} ${PREFIX}/${LDCONFIG_32DIR} @@ -3922,18 +3863,10 @@ # This can be removed once all ports have been converted to USE_LDCONFIG. .if defined(INSTALLS_SHLIB) .if !defined(INSTALL_AS_USER) -.if !defined(DESTDIR) @${ECHO_MSG} "===> Running ldconfig" -.else - @${ECHO_MSG} "===> Running ldconfig in ${DESTDIR}" -.endif ${LDCONFIG_CMD} .else -.if !defined(DESTDIR) @${ECHO_MSG} "===> Running ldconfig (errors are ignored)" -.else - @${ECHO_MSG} "===> Running ldconfig in ${DESTDIR} (errors are ignored)" -.endif -${LDCONFIG_CMD} .endif .endif @@ -4035,57 +3968,30 @@ ${GREP} '^etc/rc.d/' ${TMPPLIST} > ${WRKDIR}/.PLIST.startup; \ if [ -s ${WRKDIR}/.PLIST.setuid -o -s ${WRKDIR}/.PLIST.network -o -s ${WRKDIR}/.PLIST.writable ]; then \ if [ -n "$$PORTS_AUDIT" ]; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> SECURITY REPORT (PARANOID MODE): "; \ - else \ - ${ECHO_MSG} "===> SECURITY REPORT FOR ${DESTDIR} (PARANOID MODE): "; \ - fi; \ + ${ECHO_MSG} "===> SECURITY REPORT (PARANOID MODE): "; \ else \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> SECURITY REPORT: "; \ - else \ - ${ECHO_MSG} "===> SECURITY REPORT FOR ${DESTDIR}: "; \ - fi; \ + ${ECHO_MSG} "===> SECURITY REPORT: "; \ fi; \ if [ -s ${WRKDIR}/.PLIST.setuid ] ; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} " This port has installed the following binaries,"; \ - else \ - ${ECHO_MSG} " This port has installed the following binaries into ${DESTDIR},"; \ - fi; \ + ${ECHO_MSG} " This port has installed the following binaries,"; \ ${ECHO_MSG} " which execute with increased privileges."; \ ${CAT} ${WRKDIR}/.PLIST.setuid; \ ${ECHO_MSG}; \ fi; \ if [ -s ${WRKDIR}/.PLIST.network ] ; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} " This port has installed the following files, which may act as network"; \ - ${ECHO_MSG} " servers and may therefore pose a remote security risk to the system."; \ - else \ - ${ECHO_MSG} " This port has installed the following files into ${DESTDIR}, which may"; \ - ${ECHO_MSG} " act as network servers and may therefore pose a remote security risk to"; \ - ${ECHO_MSG} " the system."; \ - fi; \ + ${ECHO_MSG} " This port has installed the following files, which may act as network"; \ + ${ECHO_MSG} " servers and may therefore pose a remote security risk to the system."; \ ${CAT} ${WRKDIR}/.PLIST.network; \ ${ECHO_MSG}; \ if [ -s ${WRKDIR}/.PLIST.startup ] ; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} " This port has installed the following startup scripts,"; \ - else \ - ${ECHO_MSG} " This port has installed the following startup scripts into ${DESTDIR},"; \ - fi; \ + ${ECHO_MSG} " This port has installed the following startup scripts,"; \ ${ECHO_MSG} " which may cause these network services to be started at boot time."; \ ${SED} s,^,${PREFIX}/, < ${WRKDIR}/.PLIST.startup; \ ${ECHO_MSG}; \ fi; \ fi; \ if [ -s ${WRKDIR}/.PLIST.writable ] ; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} " This port has installed the following world-writable files/directories."; \ - else \ - ${ECHO_MSG} " This port has installed the following world-writable files/directories"; \ - ${ECHO_MSG} " into ${DESTDIR}."; \ - fi; \ + ${ECHO_MSG} " This port has installed the following world-writable files/directories."; \ ${CAT} ${WRKDIR}/.PLIST.writable; \ ${ECHO_MSG}; \ fi; \ @@ -4316,11 +4222,7 @@ if [ "$${check_name}" = "${PKGBASE}" ]; then \ prfx=`${PKG_INFO} -q -p $${p} 2> /dev/null | ${SED} -ne '1s|^@cwd ||p'`; \ if [ "x${PREFIX}" = "x$${prfx}" ]; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> Deinstalling $${p}"; \ - else \ - ${ECHO_MSG} "===> Deinstalling $${p} from ${DESTDIR}"; \ - fi; \ + ${ECHO_MSG} "===> Deinstalling $${p}"; \ ${PKG_DELETE} -f $${p}; \ else \ ${ECHO_MSG} "===> $${p} has a different PREFIX: $${prfx}, skipping"; \ @@ -4328,11 +4230,7 @@ fi; \ done; \ if [ -z "$${found_names}" ]; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> ${PKGBASE} not installed, skipping"; \ - else \ - ${ECHO_MSG} "===> ${PKGBASE} not installed in ${DESTDIR}, skipping"; \ - fi; \ + ${ECHO_MSG} "===> ${PKGBASE} not installed, skipping"; \ fi @${RM} -f ${INSTALL_COOKIE} ${PACKAGE_COOKIE} .endif @@ -4354,19 +4252,11 @@ @deinstall_names=`${PKG_INFO} -q -O ${PKGORIGIN}`; \ if [ -n "$${deinstall_names}" ]; then \ for d in $${deinstall_names}; do \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> Deinstalling $${d}"; \ - else \ - ${ECHO_MSG} "===> Deinstalling $${d} from ${DESTDIR}"; \ - fi; \ + ${ECHO_MSG} "===> Deinstalling $${d}"; \ ${PKG_DELETE} -f $${d}; \ done; \ else \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> ${PKGORIGIN} not installed, skipping"; \ - else \ - ${ECHO_MSG} "===> ${PKGORIGIN} not installed in ${DESTDIR}, skipping"; \ - fi; \ + ${ECHO_MSG} "===> ${PKGORIGIN} not installed, skipping"; \ fi; \ ${RM} -f ${INSTALL_COOKIE} ${PACKAGE_COOKIE} .endif @@ -4759,24 +4649,15 @@ if [ X${USE_PACKAGE_DEPENDS} != "X" ]; then \ subpkgfile=`(cd $$dir; ${MAKE} $$depends_args -V PKGFILE)`; \ if [ -r "$${subpkgfile}" -a "$$target" = "${DEPENDS_TARGET}" ]; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> Installing existing package $${subpkgfile}"; \ - ${PKG_ADD} $${subpkgfile}; \ - else \ - ${ECHO_MSG} "===> Installing existing package $${subpkgfile} into ${DESTDIR}"; \ - ${PKG_ADD} -C ${DESTDIR} $${subpkgfile}; \ - fi; \ + ${ECHO_MSG} "===> Installing existing package $${subpkgfile}"; \ + ${PKG_ADD} $${subpkgfile}; \ else \ (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \ fi; \ else \ (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \ fi; \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> Returning to build of ${PKGNAME}"; \ - else \ - ${ECHO_MSG} "===> Returning to build of ${PKGNAME} for ${DESTDIR}"; \ - fi; + ${ECHO_MSG} "===> Returning to build of ${PKGNAME}" .for deptype in EXTRACT PATCH FETCH BUILD RUN ${deptype:L}-depends: @@ -4798,11 +4679,7 @@ ${ECHO_MSG} "Error: ${NONEXISTENT} exists. Please remove it, and restart the build."; \ ${FALSE}; \ else \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> ${PKGNAME} depends on file: $$prog - found"; \ - else \ - ${ECHO_MSG} "===> ${PKGNAME} depends on file in ${DESTDIR}: $$prog - found"; \ - fi; \ + ${ECHO_MSG} "===> ${PKGNAME} depends on file: $$prog - found"; \ if [ ${_DEPEND_ALWAYS} = 1 ]; then \ ${ECHO_MSG} " (but building it anyway)"; \ notfound=1; \ @@ -4811,11 +4688,7 @@ fi; \ fi; \ else \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> ${PKGNAME} depends on file: $$prog - not found"; \ - else \ - ${ECHO_MSG} "===> ${PKGNAME} depends on file in ${DESTDIR}: $$prog - not found"; \ - fi; \ + ${ECHO_MSG} "===> ${PKGNAME} depends on file: $$prog - not found"; \ notfound=1; \ fi; \ else \ @@ -4825,11 +4698,7 @@ esac; \ if [ "$$pkg" != "" ]; then \ if ${PKG_INFO} "$$prog" > /dev/null 2>&1 ; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> ${PKGNAME} depends on package: $$prog - found"; \ - else \ - ${ECHO_MSG} "===> ${PKGNAME} depends on package in ${DESTDIR}: $$prog - found"; \ - fi; \ + ${ECHO_MSG} "===> ${PKGNAME} depends on package: $$prog - found"; \ if [ ${_DEPEND_ALWAYS} = 1 ]; then \ ${ECHO_MSG} " (but building it anyway)"; \ notfound=1; \ @@ -4837,11 +4706,7 @@ notfound=0; \ fi; \ else \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> ${PKGNAME} depends on package: $$prog - not found"; \ - else \ - ${ECHO_MSG} "===> ${PKGNAME} depends on package in ${DESTDIR}: $$prog - not found"; \ - fi; \ + ${ECHO_MSG} "===> ${PKGNAME} depends on package: $$prog - not found"; \ notfound=1; \ fi; \ if [ $$notfound != 0 ]; then \ @@ -4855,11 +4720,7 @@ fi; \ fi; \ elif ${WHICH} "$$prog" > /dev/null 2>&1 ; then \ - if [ -z "${PREFIX}" ] ; then \ ${ECHO_MSG} "===> ${PKGNAME} depends on executable: $$prog - found"; \ - else \ - ${ECHO_MSG} "===> ${PKGNAME} depends on executable in ${DESTDIR}: $$prog - found"; \ - fi; \ if [ ${_DEPEND_ALWAYS} = 1 ]; then \ ${ECHO_MSG} " (but building it anyway)"; \ notfound=1; \ @@ -4867,11 +4728,7 @@ notfound=0; \ fi; \ else \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> ${PKGNAME} depends on executable: $$prog - not found"; \ - else \ - ${ECHO_MSG} "===> ${PKGNAME} depends on executable in ${DESTDIR}: $$prog - not found"; \ - fi; \ + ${ECHO_MSG} "===> ${PKGNAME} depends on executable: $$prog - not found"; \ notfound=1; \ fi; \ fi; \ @@ -5433,14 +5290,14 @@ @if ${ECHO_CMD} "${x}"| ${AWK} '$$1 ~ /(\*|\||\[|\]|\?|\{|\}|\$$)/ { exit 1};'; then \ if [ ! -e ${DOCSDIR}/${x} ]; then \ ${ECHO_CMD} ${DOCSDIR}/${x} | \ - ${SED} -e 's,^${TARGETDIR}/,,' >> ${TMPPLIST}; \ + ${SED} -e 's,^${PREFIX}/,,' >> ${TMPPLIST}; \ fi;fi .endfor @${FIND} -P ${PORTDOCS:S/^/${DOCSDIR}\//} ! -type d 2>/dev/null | \ - ${SED} -ne 's,^${TARGETDIR}/,,p' >> ${TMPPLIST} + ${SED} -ne 's,^${PREFIX}/,,p' >> ${TMPPLIST} @${FIND} -P -d ${PORTDOCS:S/^/${DOCSDIR}\//} -type d 2>/dev/null | \ - ${SED} -ne 's,^${TARGETDIR}/,@dirrm ,p' >> ${TMPPLIST} - @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${TARGETDIR}/,,}" >> ${TMPPLIST} + ${SED} -ne 's,^${PREFIX}/,@dirrm ,p' >> ${TMPPLIST} + @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}" >> ${TMPPLIST} .else @${DO_NADA} .endif @@ -5451,10 +5308,10 @@ # Process GNU INFO files at package install/deinstall time .if defined(INFO) .for i in ${INFO} - install-info --quiet ${TARGETDIR}/${INFO_PATH}/$i.info ${TARGETDIR}/${INFO_PATH}/dir + install-info --quiet ${PREFIX}/${INFO_PATH}/$i.info ${PREFIX}/${INFO_PATH}/dir @${ECHO_CMD} "@unexec install-info --quiet --delete %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \ >> ${TMPPLIST} - @${LS} ${TARGETDIR}/${INFO_PATH}/$i.info* | ${SED} -e s:${TARGETDIR}/::g >> ${TMPPLIST} + @${LS} ${PREFIX}/${INFO_PATH}/$i.info* | ${SED} -e s:${PREFIX}/::g >> ${TMPPLIST} @${ECHO_CMD} "@exec install-info --quiet %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \ >> ${TMPPLIST} @if [ "`${DIRNAME} $i`" != "." ]; then \ @@ -5488,7 +5345,7 @@ @${ECHO_CMD} "===> Installing early rc.d startup script(s)" @${ECHO_CMD} "@cwd /" >> ${TMPPLIST} @for i in ${USE_RCORDER}; do \ - ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${DESTDIR}/etc/rc.d/$${i%.sh}; \ + ${INSTALL_SCRIPT} ${WRKDIR}/$${i} /etc/rc.d/$${i%.sh}; \ ${ECHO_CMD} "etc/rc.d/$${i%.sh}" >> ${TMPPLIST}; \ done @${ECHO_CMD} "@cwd ${PREFIX}" >> ${TMPPLIST} @@ -5497,7 +5354,7 @@ @${ECHO_CMD} "===> Installing rc.d startup script(s)" @${ECHO_CMD} "@cwd ${PREFIX}" >> ${TMPPLIST} @for i in ${USE_RC_SUBR}; do \ - ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${TARGETDIR}/etc/rc.d/$${i%.sh}${RC_SUBR_SUFFIX}; \ + ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${PREFIX}/etc/rc.d/$${i%.sh}${RC_SUBR_SUFFIX}; \ ${ECHO_CMD} "etc/rc.d/$${i%.sh}${RC_SUBR_SUFFIX}" >> ${TMPPLIST}; \ done .endif @@ -5551,11 +5408,7 @@ @${RM} -rf ${PKG_DBDIR}/${PKGNAME} .endif @if [ ! -d ${PKG_DBDIR}/${PKGNAME} ]; then \ - if [ -z "${DESTDIR}" ] ; then \ - ${ECHO_MSG} "===> Registering installation for ${PKGNAME}"; \ - else \ - ${ECHO_MSG} "===> Registering installation for ${PKGNAME} in ${DESTDIR}"; \ - fi; \ + ${ECHO_MSG} "===> Registering installation for ${PKGNAME}"; \ ${MKDIR} ${PKG_DBDIR}/${PKGNAME}; \ ${PKG_CMD} ${PKG_ARGS} -O ${PKGFILE} > ${PKG_DBDIR}/${PKGNAME}/+CONTENTS; \ ${CP} ${DESCR} ${PKG_DBDIR}/${PKGNAME}/+DESC; \ ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.port.subdir.mk#5 (text+ko) ==== @@ -64,7 +64,6 @@ ID?= /usr/bin/id UID!= ${ID} -u -LOCALBASE?= ${LOCALBASE} .if exists(${LOCALBASE}/sbin/pkg_info) PKG_INFO?= ${LOCALBASE}/sbin/pkg_info .else From owner-p4-projects@FreeBSD.ORG Thu Mar 8 22:30:33 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1A8A216A419; Thu, 8 Mar 2007 22:30:33 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CBAB116A406 for ; Thu, 8 Mar 2007 22:30:32 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 3863A13C4C6 for ; Thu, 8 Mar 2007 22:30:30 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l28MUUl6094132 for ; Thu, 8 Mar 2007 22:30:30 GMT (envelope-from gabor@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l28MUUdh094128 for perforce@freebsd.org; Thu, 8 Mar 2007 22:30:30 GMT (envelope-from gabor@freebsd.org) Date: Thu, 8 Mar 2007 22:30:30 GMT Message-Id: <200703082230.l28MUUdh094128@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@freebsd.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 115564 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Mar 2007 22:30:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=115564 Change 115564 by gabor@gabor_server on 2007/03/08 22:29:58 IFC Affected files ... .. //depot/projects/soc2006/gabor_destdir/CHANGES#3 integrate .. //depot/projects/soc2006/gabor_destdir/MOVED#3 integrate .. //depot/projects/soc2006/gabor_destdir/Makefile#3 integrate .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.gstreamer.mk#3 integrate .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.java.mk#3 integrate .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.php.mk#3 integrate .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.port.mk#6 integrate .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.port.subdir.mk#6 integrate .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.python.mk#4 integrate .. //depot/projects/soc2006/gabor_destdir/Mk/bsd.sites.mk#3 integrate .. //depot/projects/soc2006/gabor_destdir/UPDATING#3 integrate Differences ... ==== //depot/projects/soc2006/gabor_destdir/CHANGES#3 (text+ko) ==== @@ -10,6 +10,17 @@ All ports committers are allowed to commit to this file. +20070306: +AUTHOR: portmgr@FreeBSD.org +The following changes were made to the ports infrastructure: + + * The remainging vestiges of FreeBSD 4.X support were removed. Any + remaining users of 4.X should have stayed with the RELENG_4_EOL tag. + + * It is now possible to include USE_PHP after bsd.port.pre.mk. + + * 'make search' should now work with non-default ${PORTSDIR}. + 20070130: AUTHOR: portmgr@FreeBSD.org The following changes were made to the ports infrastructure: @@ -1272,4 +1283,4 @@ Contact Erwin Lansing if you have any questions about your use of this document. -$FreeBSD: ports/CHANGES,v 1.65 2007/01/31 14:07:23 pav Exp $ +$FreeBSD: ports/CHANGES,v 1.66 2007/03/06 06:21:46 linimon Exp $ ==== //depot/projects/soc2006/gabor_destdir/MOVED#3 (text+ko) ==== @@ -1,7 +1,7 @@ # # MOVED - a list of (recently) moved or removed ports # -# $FreeBSD: ports/MOVED,v 1.1306 2007/02/23 22:50:13 mezz Exp $ +# $FreeBSD: ports/MOVED,v 1.1313 2007/03/08 14:29:11 ahze Exp $ # # Each entry consists of a single line containing the following four # fields in the order named, separated with the pipe (`|') character: @@ -2840,3 +2840,9 @@ lang/tcc||2007-02-19|Has expired: is unusable; tcc -run works, but little else www/p5-HTML||2007-02-23|Has expired: project no longer exists audio/speex-devel|audio/speex|2007-02-23|Merged into audio/speex +www/horde|www/horde-base|2007-02-24|Port renamed for consistency +www/phpip|net-mgmt/phpip|2007-02-26|move to net-mgmt/phpip +www/aolserver-openacs-pg||2007-02-28|Not longer needed. +devel/boost-gcc3|devel/boost|2007-03-07|Removed support for FreeBSD 4. +graphics/jpeg-mmx|graphics/jpeg|2007-03-08|Has expired: no longer needed. +graphics/gstreamer-plugins-jpeg-mmx80|graphics/gstreamer-plugins-jpeg80|2007-03-08|graphics/jpeg-mmx was removed ==== //depot/projects/soc2006/gabor_destdir/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: ports/Makefile,v 1.98 2007/01/31 15:37:18 pav Exp $ +# $FreeBSD: ports/Makefile,v 1.99 2007/02/26 08:54:07 ru Exp $ # SUBDIR += accessibility @@ -72,11 +72,11 @@ @rm -f ${INDEXDIR}/${INDEXFILE} @cd ${.CURDIR} && make ${INDEXDIR}/${INDEXFILE} -fetchindex: ${INDEXDIR}/{INDEXFILE}.bz2 +fetchindex: ${INDEXDIR}/${INDEXFILE}.bz2 @bunzip2 < ${INDEXDIR}/${INDEXFILE}.bz2 > ${INDEXDIR}/${INDEXFILE} && \ chmod a+r ${INDEXDIR}/${INDEXFILE} -${INDEXDIR}/{INDEXFILE}.bz2: .PHONY +${INDEXDIR}/${INDEXFILE}.bz2: .PHONY @${FETCHINDEX} ${INDEXDIR}/${INDEXFILE}.bz2 ${MASTER_SITE_INDEX}${INDEXFILE}.bz2 MASTER_SITE_INDEX?= http://www.FreeBSD.org/ports/ ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.gstreamer.mk#3 (text+ko) ==== @@ -6,7 +6,7 @@ # Created by: Michael Johnson # Date: 4 Oct 2004 # -# $FreeBSD: ports/Mk/bsd.gstreamer.mk,v 1.32 2007/01/25 16:22:42 mezz Exp $ +# $FreeBSD: ports/Mk/bsd.gstreamer.mk,v 1.33 2007/03/08 14:20:01 ahze Exp $ # $MCom: ports/Mk/bsd.gstreamer.mk,v 1.38 2006/10/10 20:22:01 mezz Exp $ .if !defined(_POSTMKINCLUDED) && !defined(Gstreamer_Pre_Include) @@ -69,7 +69,7 @@ _USE_GSTREAMER80_ALL= a52dec aalib artsd audiofile cairo cdaudio cdio cdparanoia \ dts dv dvd esound faac faad ffmpeg flac \ gconf gdkpixbuf gnomevfs gsm hermes ivorbis jack jpeg \ - jpeg-mmx ladspa lame libcaca libfame libmms libmng \ + ladspa lame libcaca libfame libmms libmng \ libpng libvisual mad mikmod mpeg2dec mpeg2enc mplex \ musepack musicbrainz nas sdl shout shout2 sidplay \ smoothwave sndfile speex theora ogg pango polyp \ @@ -178,8 +178,6 @@ jpeg_DEPENDS= graphics/gstreamer-plugins-jpeg -jpeg-mmx_DEPENDS= graphics/gstreamer-plugins-jpeg-mmx - libcaca_DEPENDS= graphics/gstreamer-plugins-libcaca libmng_DEPENDS= graphics/gstreamer-plugins-libmng ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.java.mk#3 (text+ko) ==== @@ -9,7 +9,7 @@ # Please send all suggested changes to the maintainer instead of committing # them to CVS yourself. # -# $FreeBSD: ports/Mk/bsd.java.mk,v 1.75 2007/01/31 14:07:24 pav Exp $ +# $FreeBSD: ports/Mk/bsd.java.mk,v 1.77 2007/03/07 07:44:36 linimon Exp $ # .if !defined(Java_Include) @@ -31,7 +31,7 @@ # for the port. (allowed values: native linux) # # JAVA_VENDOR List of space-separated suitable JDK port vendors for the -# port. (allowed values: freebsd bsdjava sun ibm blackdown) +# port. (allowed values: freebsd bsdjava sun blackdown) # # JAVA_BUILD When set, it means that the selected JDK port should be # added to build dependencies for the port. @@ -169,7 +169,7 @@ __JAVA_VERSION_LIST= 1.1 1.2 1.3 1.4 1.5 _JAVA_VERSION_LIST= ${__JAVA_VERSION_LIST} ${__JAVA_VERSION_LIST:S/$/+/} _JAVA_OS_LIST= native linux -_JAVA_VENDOR_LIST= freebsd bsdjava sun blackdown ibm +_JAVA_VENDOR_LIST= freebsd bsdjava sun blackdown # Set all meta-information about JDK ports: # port location, corresponding JAVA_HOME, JDK version, OS, vendor @@ -191,10 +191,6 @@ VERSION=1.3.1 OS=linux VENDOR=blackdown _JAVA_PORT_LINUX_BLACKDOWN_JDK_1_4_INFO= PORT=java/linux-blackdown-jdk14 HOME=${LOCALBASE}/linux-blackdown-jdk1.4.2 \ VERSION=1.4.2 OS=linux VENDOR=blackdown -_JAVA_PORT_LINUX_IBM_JDK_1_3_INFO= PORT=java/linux-ibm-jdk13 HOME=${LOCALBASE}/linux-ibm-jdk1.3.1 \ - VERSION=1.3.1 OS=linux VENDOR=ibm -_JAVA_PORT_LINUX_IBM_JDK_1_4_INFO= PORT=java/linux-ibm-jdk14 HOME=${LOCALBASE}/linux-ibm-jdk1.4.2 \ - VERSION=1.4.1 OS=linux VENDOR=ibm _JAVA_PORT_LINUX_SUN_JDK_1_2_INFO= PORT=java/linux-sun-jdk12 HOME=${LOCALBASE}/linux-sun-jdk1.2.2 \ VERSION=1.2.2 OS=linux VENDOR=sun _JAVA_PORT_LINUX_SUN_JDK_1_3_INFO= PORT=java/linux-sun-jdk13 HOME=${LOCALBASE}/linux-sun-jdk1.3.1 \ @@ -208,7 +204,6 @@ _JAVA_VENDOR_freebsd= "FreeBSD Foundation" _JAVA_VENDOR_bsdjava= "BSD Java Porting Team" _JAVA_VENDOR_blackdown= Blackdown -_JAVA_VENDOR_ibm= IBM _JAVA_VENDOR_sun= Sun # Verbose description for each OS @@ -236,9 +231,7 @@ JAVA_PORT_LINUX_SUN_JDK_1_2 \ JAVA_PORT_LINUX_BLACKDOWN_JDK_1_4 \ JAVA_PORT_LINUX_BLACKDOWN_JDK_1_3 \ - JAVA_PORT_LINUX_BLACKDOWN_JDK_1_2 \ - JAVA_PORT_LINUX_IBM_JDK_1_4 \ - JAVA_PORT_LINUX_IBM_JDK_1_3 + JAVA_PORT_LINUX_BLACKDOWN_JDK_1_2 _JAVA_PORTS_ALL= ${JAVA_PREFERRED_PORTS} \ ${_JAVA_PREFERRED_PORTS} \ ${__JAVA_PORTS_ALL} ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.php.mk#3 (text+ko) ==== @@ -7,7 +7,7 @@ # Please send all suggested changes to the maintainer instead of committing # them to CVS yourself. # -# $FreeBSD: ports/Mk/bsd.php.mk,v 1.39 2007/02/18 19:56:53 ale Exp $ +# $FreeBSD: ports/Mk/bsd.php.mk,v 1.41 2007/03/08 07:17:32 ale Exp $ # # Adding 'USE_PHP=yes' to a port includes this Makefile after bsd.ports.pre.mk. # If the port requires a predefined set of PHP extensions, they can be @@ -31,8 +31,12 @@ # Don't specify any WANT_PHP_* knob if your port will work with every PHP SAPI. # +.if !defined(_PHPMKINCLUDED) + PHP_Include_MAINTAINER= ale@FreeBSD.org +_PHPMKINCLUDED= yes + .if exists(${LOCALBASE}/etc/php.conf) .include "${LOCALBASE}/etc/php.conf" PHP_EXT_DIR!= ${LOCALBASE}/bin/php-config --extension-dir | ${SED} -ne 's,^${LOCALBASE}/lib/php/\(.*\),\1,p' @@ -224,8 +228,10 @@ @${ECHO_CMD} "****************************************************************************" .endif +.endif + # Extensions -.if ${USE_PHP:L} != "yes" +.if defined(_POSTMKINCLUDED) && ${USE_PHP:L} != "yes" # non-version specific components _USE_PHP_ALL= bcmath bz2 calendar ctype curl dba dbase \ exif fileinfo fribidi ftp gd gettext gmp \ @@ -238,7 +244,7 @@ # version specific components _USE_PHP_VER4= ${_USE_PHP_ALL} crack dbx dio domxml filepro mcal mcve \ mnogosearch oracle overload pfpro xslt yp -_USE_PHP_VER5= ${_USE_PHP_ALL} dom filter ming mysqli pdo pdo_sqlite \ +_USE_PHP_VER5= ${_USE_PHP_ALL} dom filter ming mysqli oci8 pdo pdo_sqlite \ simplexml soap spl sqlite tidy xmlreader xmlwriter xsl bcmath_DEPENDS= math/php${PHP_VER}-bcmath @@ -279,6 +285,7 @@ mysql_DEPENDS= databases/php${PHP_VER}-mysql mysqli_DEPENDS= databases/php${PHP_VER}-mysqli ncurses_DEPENDS=devel/php${PHP_VER}-ncurses +oci8_DEPENDS= databases/php${PHP_VER}-oci8 odbc_DEPENDS= databases/php${PHP_VER}-odbc openssl_DEPENDS=security/php${PHP_VER}-openssl oracle_DEPENDS= databases/php${PHP_VER}-oracle ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.port.mk#6 (text+ko) ==== @@ -1,7 +1,7 @@ #-*- mode: makefile; tab-width: 4; -*- # ex:ts=4 # -# $FreeBSD: ports/Mk/bsd.port.mk,v 1.554 2007/02/21 05:40:11 delphij Exp $ +# $FreeBSD: ports/Mk/bsd.port.mk,v 1.555 2007/03/06 06:21:46 linimon Exp $ # $NetBSD: $ # # bsd.port.mk - 940820 Jordan K. Hubbard. @@ -310,10 +310,7 @@ # Default: gmake ## # USE_GETOPT_LONG -# - If set, this port uses getopt_long. If OSVERSION -# less than 500041, automatically adds devel/libgnugeopt -# to LIB_DEPENDS, and pass adjusted values of -# CPPFLAGS and LDFLAGS in CONFIGURE_ENV. +# - If set, this port uses getopt_long. May be obsolete. ## # USE_ICONV - If set, this port uses libiconv. # USE_GETTEXT - If set, this port uses GNU gettext (libintl). @@ -1298,15 +1295,6 @@ _PREMKINCLUDED= yes -# check for old, crufty, makefile types, part 1: -.if !defined(PORTNAME) || !( defined(PORTVERSION) || defined (DISTVERSION) ) || defined(PKGNAME) -check-makefile:: - @${ECHO_CMD} "Makefile error: you need to define PORTNAME and PORTVERSION instead of PKGNAME." - @${ECHO_CMD} "(This port is too old for your bsd.port.mk, please update it to match" - @${ECHO_CMD} " your bsd.port.mk.)" - @${FALSE} -.endif - .if defined(PORTVERSION) .if ${PORTVERSION:M*[-_,]*}x != x IGNORE= PORTVERSION ${PORTVERSION} may not contain '-' '_' or ',' @@ -1326,14 +1314,8 @@ _SUF2= ,${PORTEPOCH} .endif -# check for old, crufty, makefile types, part 2. The "else" case -# should have been handled in part 1, above. -.if !defined(PKGVERSION) PKGVERSION= ${PORTVERSION:C/[-_,]/./g}${_SUF1}${_SUF2} -.endif -.if !defined(PKGNAME) PKGNAME= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${PKGVERSION} -.endif DISTNAME?= ${PORTNAME}-${DISTVERSIONPREFIX}${DISTVERSION:C/:(.)/\1/g}${DISTVERSIONSUFFIX} # These need to be absolute since we don't know how deep in the ports @@ -1346,11 +1328,7 @@ DISTDIR?= ${PORTSDIR}/distfiles _DISTDIR?= ${DISTDIR}/${DIST_SUBDIR} INDEXDIR?= ${PORTSDIR} -.if ${OSVERSION} >= 500036 INDEXFILE?= INDEX-${OSVERSION:C/([0-9]).*/\1/} -.else -INDEXFILE?= INDEX -.endif .if defined(USE_LINUX_RPM) .include "${PORTSDIR}/Mk/bsd.linux-rpm.mk" @@ -1366,12 +1344,6 @@ PACKAGES?= ${PORTSDIR}/packages TEMPLATES?= ${PORTSDIR}/Templates -.if (!defined(PKGDIR) && exists(${MASTERDIR}/pkg/DESCR)) || \ - (!defined(MD5_FILE) && exists(${MASTERDIR}/files/md5)) -check-makefile:: - @${ECHO_CMD} "Makefile error: your port uses an old layout. Please update it to match this bsd.port.mk. If you have updated your ports collection via cvsup and are still getting this error, see Q12 and Q13 in the cvsup FAQ on http://www.polstra.com for further information." - @${FALSE} -.endif PATCHDIR?= ${MASTERDIR}/files FILESDIR?= ${MASTERDIR}/files SCRIPTDIR?= ${MASTERDIR}/scripts @@ -1407,23 +1379,8 @@ PKGCOMPATDIR?= ${LOCALBASE}/lib/compat/pkg -.if ${OSVERSION} >= 500036 PERL_VERSION?= 5.8.8 PERL_VER?= 5.8.8 -.else -.if ${OSVERSION} >= 500032 -PERL_VERSION?= 5.6.1 -PERL_VER?= 5.6.1 -.else -.if ${OSVERSION} >= 500007 -PERL_VERSION?= 5.6.0 -PERL_VER?= 5.6.0 -.else -PERL_VERSION?= 5.00503 -PERL_VER?= 5.005 -.endif -.endif -.endif .if !defined(PERL_LEVEL) && defined(PERL_VERSION) perl_major= ${PERL_VERSION:C|^([1-9]+).*|\1|} @@ -1441,11 +1398,7 @@ PERL_LEVEL=0 .endif # !defined(PERL_LEVEL) && defined(PERL_VERSION) -.if ${PERL_LEVEL} >= 500600 PERL_ARCH?= mach -.else -PERL_ARCH?= ${ARCH}-freebsd -.endif .if ${PERL_LEVEL} >= 500800 PERL_PORT?= perl5.8 @@ -1456,13 +1409,8 @@ SITE_PERL_REL?= lib/perl5/site_perl/${PERL_VER} SITE_PERL?= ${LOCALBASE}/${SITE_PERL_REL} -.if ${PERL_LEVEL} < 500600 -PERL5= /usr/bin/perl${PERL_VERSION} -PERL= /usr/bin/perl -.else PERL5= ${LOCALBASE}/bin/perl${PERL_VERSION} PERL= ${LOCALBASE}/bin/perl -.endif .if defined(USE_LOCAL_MK) .include "${PORTSDIR}/Mk/bsd.local.mk" @@ -1564,11 +1512,7 @@ .endif .endif -.if ${OSVERSION} >= 502123 X_WINDOW_SYSTEM ?= xorg -.else -X_WINDOW_SYSTEM ?= xfree86-4 -.endif # Location of mounted CDROM(s) to search for files CD_MOUNTPTS?= /cdrom ${CD_MOUNTPT} @@ -1735,22 +1679,8 @@ .endif .endif # USE_FAM -.if defined(USE_GETOPT_LONG) -.if ${OSVERSION} < 500041 -LIB_DEPENDS+= gnugetopt.1:${PORTSDIR}/devel/libgnugetopt -CPPFLAGS+= -I${LOCALBASE}/include -LDFLAGS+= -L${LOCALBASE}/lib -lgnugetopt -CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}" -.endif -.endif - .if defined(USE_RC_SUBR) || defined(USE_RCORDER) -.if ${OSVERSION} < 500037 -RUN_DEPENDS+= ${LOCALBASE}/etc/rc.subr:${PORTSDIR}/sysutils/rc_subr -RC_SUBR= ${LOCALBASE}/etc/rc.subr -.else RC_SUBR= /etc/rc.subr -.endif SUB_LIST+= RC_SUBR=${RC_SUBR} .if defined(USE_RC_SUBR) && ${USE_RC_SUBR:U} != "YES" SUB_FILES+= ${USE_RC_SUBR} @@ -1776,7 +1706,7 @@ USE_LDCONFIG= ${PREFIX}/lib .endif .if defined(USE_LDCONFIG32) && ${USE_LDCONFIG32:L} == "yes" -IGNORE= has USE_LDCONFIG set to yes, which is not correct +IGNORE= has USE_LDCONFIG32 set to yes, which is not correct .endif .endif @@ -1936,7 +1866,6 @@ .endif .endif -.if ${PERL_LEVEL} >= 500600 .if defined(USE_PERL5) || defined(USE_PERL5_BUILD) EXTRACT_DEPENDS+=${PERL5}:${PORTSDIR}/lang/${PERL_PORT} PATCH_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT} @@ -1945,7 +1874,6 @@ .if defined(USE_PERL5) || defined(USE_PERL5_RUN) RUN_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT} .endif -.endif .if defined(USE_LOCAL_MK) .include "${PORTSDIR}/Mk/bsd.local.mk" @@ -1977,6 +1905,10 @@ .include "${PORTSDIR}/Mk/bsd.sdl.mk" .endif +.if defined(USE_PHP) +.include "${PORTSDIR}/Mk/bsd.php.mk" +.endif + .if defined(USE_PYTHON) .include "${PORTSDIR}/Mk/bsd.python.mk" .endif @@ -2108,22 +2040,13 @@ MOTIFLIB="${MOTIFLIB}" LIBDIR="${LIBDIR}" CFLAGS="${CFLAGS}" \ CXXFLAGS="${CXXFLAGS}" MANPREFIX="${MANPREFIX}" -.if ${OSVERSION} < 500016 -PTHREAD_CFLAGS?= -D_THREAD_SAFE -PTHREAD_LIBS?= -pthread -.elif ${OSVERSION} < 502102 -PTHREAD_CFLAGS?= -D_THREAD_SAFE -PTHREAD_LIBS?= -lc_r -.else PTHREAD_CFLAGS?= PTHREAD_LIBS?= -pthread -.endif .if exists(/usr/bin/fetch) FETCH_CMD?= /usr/bin/fetch -ApRr FETCH_REGET?= 1 -.if ${OSVERSION} >= 480000 && !defined(DISABLE_SIZE) -# Avoid -S for 4.7 and earlier since it causes fetch errors +.if !defined(DISABLE_SIZE) FETCH_BEFORE_ARGS+= $${CKSIZE:+-S $$CKSIZE} .endif .else @@ -2135,11 +2058,7 @@ .if exists(/usr/games/random) RANDOM_CMD?= /usr/games/random RANDOM_ARGS?= "-w -f -" -.if ( ${OSVERSION} > 480000 && ${OSVERSION} < 500000 ) || ${OSVERSION} > 500100 _RANDOMIZE_SITES= " |${RANDOM_CMD} ${RANDOM_ARGS}" -.else -_RANDOMIZE_SITES= '' -.endif .endif .endif @@ -2308,11 +2227,7 @@ .if defined(PKG_NOCOMPRESS) PKG_SUFX?= .tar .else -.if ${OSVERSION} >= 500039 PKG_SUFX?= .tbz -.else -PKG_SUFX?= .tgz -.endif .endif # where pkg_add records its dirty deeds. PKG_DBDIR?= /var/db/pkg @@ -2322,25 +2237,6 @@ ALL_TARGET?= all INSTALL_TARGET?= install -# This is a mid-term solution patch while pkg-comment files are -# phased out. -# The final simpler patch will come afterwards -.if !defined(COMMENT) -check-makevars:: - @${ECHO_CMD} 'Makefile error: there is no COMMENT variable defined' - @${ECHO_CMD} 'for this port. Please, rectify this.' - @${FALSE} -.else -.if exists(${COMMENTFILE}) -check-makevars:: - @${ECHO_CMD} 'Makefile error: There is a COMMENTFILE in this port.' - @${ECHO_CMD} 'COMMENTFILEs have been deprecated in' - @${ECHO_CMD} 'favor of COMMENT variables.' - @${ECHO_CMD} 'Please, rectify this.' - @${FALSE} -.endif -.endif - # Popular master sites .include "bsd.sites.mk" @@ -3569,10 +3465,6 @@ .if !defined(PERL_MODBUILD) @cd ${CONFIGURE_WRKSRC} && \ ${PERL5} -pi -e 's/ doc_(perl|site|\$$\(INSTALLDIRS\))_install$$//' Makefile -.if ${PERL_LEVEL} <= 500503 - @cd ${CONFIGURE_WRKSRC} && \ - ${PERL5} -pi -e 's/^(INSTALLSITELIB|INSTALLSITEARCH|SITELIBEXP|SITEARCHEXP|INSTALLMAN1DIR|INSTALLMAN3DIR) = \/usr\/local/$$1 = \$$(PREFIX)/' Makefile -.endif .endif .endif .if defined(USE_IMAKE) ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.port.subdir.mk#6 (text+ko) ==== @@ -1,5 +1,5 @@ # from: @(#)bsd.subdir.mk 5.9 (Berkeley) 2/1/91 -# $FreeBSD: ports/Mk/bsd.port.subdir.mk,v 1.67 2007/02/04 20:23:37 kris Exp $ +# $FreeBSD: ports/Mk/bsd.port.subdir.mk,v 1.68 2007/03/06 06:58:35 linimon Exp $ # # The include file contains the default targets # for building ports subdirectories. @@ -415,6 +415,8 @@ } \ } \ { \ + if (match($$2, "^/usr/ports/[^/]*/[^/]*$$") > 0) \ + sub("^/usr/ports", "${PORTSDIR}", $$2); \ if (substr($$2, 1, therelen) != there) \ next; \ for (i in parms) \ ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.python.mk#4 (text+ko) ==== @@ -1,7 +1,7 @@ # -*- mode: Makefile; tab-width: 4; -*- # ex: ts=4 # -# $FreeBSD: ports/Mk/bsd.python.mk,v 1.94 2007/02/14 06:07:28 delphij Exp $ +# $FreeBSD: ports/Mk/bsd.python.mk,v 1.95 2007/02/26 07:32:02 alexbl Exp $ # .if !defined(_POSTMKINCLUDED) && !defined(Python_Pre_Include) @@ -386,6 +386,9 @@ PYDISTUTILS_BUILDARGS?= PYDISTUTILS_INSTALLARGS?= -c -O1 --prefix=${PREFIX} +# Fix for programs that build python from a GNU auto* enviornment +CONFIGURE_ENV+= PYTHON="${PYTHON_CMD}" + # Zope-related variables .if defined(USE_ZOPE) .if ${ZOPE_VERSION} == "3.2" ==== //depot/projects/soc2006/gabor_destdir/Mk/bsd.sites.mk#3 (text+ko) ==== @@ -20,7 +20,7 @@ # # Note: all entries should terminate with a slash. # -# $FreeBSD: ports/Mk/bsd.sites.mk,v 1.412 2007/02/12 23:23:31 sat Exp $ +# $FreeBSD: ports/Mk/bsd.sites.mk,v 1.413 2007/03/07 12:46:20 sat Exp $ # # Where to put distfiles that don't have any other master site @@ -109,6 +109,13 @@ http://download2.berlios.de/%SUBDIR%/ .endif +.if !defined(IGNORE_MASTER_SITE_CENKES) +MASTER_SITE_CENKES+= \ + http://bsd.cenkes.org/%SUBDIR%/ \ + http://bsd2.cenkes.org/%SUBDIR%/ \ + http://bsd3.cenkes.org/%SUBDIR%/ +.endif + .if !defined(IGNORE_MASTER_SITE_COMP_SOURCES) MASTER_SITE_COMP_SOURCES+= \ ftp://gatekeeper.dec.com/pub/usenet/comp.sources.%SUBDIR%/ \ @@ -116,10 +123,7 @@ .endif .if !defined(IGNORE_MASTER_SITE_CSME) -MASTER_SITE_CSME+= \ - http://bsd1.csme.ru/%SUBDIR%/ \ - http://bsd2.csme.ru/%SUBDIR%/ \ - http://bsd3.csme.ru/%SUBDIR%/ +MASTER_SITE_CSME+= ${MASTER_SITE_CENKES} .endif .if !defined(IGNORE_MASTER_SITE_DEBIAN) @@ -1326,6 +1330,7 @@ MASTER_SITES_SUBDIRS= \ APACHE_JAKARTA:${PORTNAME:S,-,/,}/source \ BERLIOS:${PORTNAME:L} \ + CENKES:myports \ CSME:myports \ DEBIAN:pool/main/${PORTNAME:C/^((lib)?.).*$/\1/}/${PORTNAME} \ GCC:releases/${DISTNAME} \ ==== //depot/projects/soc2006/gabor_destdir/UPDATING#3 (text+ko) ==== @@ -6,6 +6,51 @@ time you update your ports collection, before attempting any port upgrades. +20070205: + AFFECTS: all users of FreeBSD 4.X + AUTHOR: portmgr@FreeBSD.org + + The remnants of FreeBSD 4.X support have been removed from bsd.port.mk. + Any remaining users should _not_ get this or any subsequent updates. + +20070301: + AFFECTS: users of ports-mgmt/portupgrade* + AUTHOR: sem@FreeBSD.org + + Because of a bug in previous version, it's recomended you fill ALT_PKGDEP + section in pkgtools.conf file for portupgrade be aware of alternative + dependencies you use, and run pkgdb -L to restore dependencies that was + lost. + + Example of ALT_PKGDEP section: + ALT_PKGDEP = { + 'www/apache13' => 'www/apache13-modssl', + 'print/ghostscript-afpl' => 'print/ghostscript-gnu', + } + + Note also, portupgrade knows nothing how to handle ports with different + suffixes (E.g. -nox11). So you should define explicitly variables + (E.g. WITHOUT_X11=yes) for the ports in /etc/make.conf or pkgtools.conf + (MAKE_ARGS section) files. + +20070227: + AFFECTS: users of net-im/jabber* + AUTHOR: martin@matuska.org + + With update to version 1.6.0 the name of the jabber daemon has been + changed to bin/jabberd14 to avoid conflicts with other jabber daemons. + The port now supports WITH_MYSQL and WITH_POSTGRESQL knobs. + + If you are using one of the following ports please recompile it due + to changes in the library. + + net-im/jabber-conference + net-im/jabber-jud + net-im/jabber-yahoo + + Some configuration directives have changed, too. Please see example + configuration files and README.jabberd14 files in the ports above. + 20070223: AFFECTS: users of audio/speex and any port that depends on it AUTHOR: mezz@FreeBSD.org @@ -4826,4 +4871,4 @@ 2) Update all p5-* modules. portupgrade -f p5-\* -$FreeBSD: ports/UPDATING,v 1.471 2007/02/23 22:50:13 mezz Exp $ +$FreeBSD: ports/UPDATING,v 1.475 2007/03/06 06:21:46 linimon Exp $ From owner-p4-projects@FreeBSD.ORG Fri Mar 9 01:01:43 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B36B516A409; Fri, 9 Mar 2007 01:01:43 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 71DEE16A405 for ; Fri, 9 Mar 2007 01:01:43 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 4D94913C4AA for ; Fri, 9 Mar 2007 01:01:43 +0000 (UTC) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l2911h3F029313 for ; Fri, 9 Mar 2007 01:01:43 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l2911hlv029310 for perforce@freebsd.org; Fri, 9 Mar 2007 01:01:43 GMT (envelope-from csjp@freebsd.org) Date: Fri, 9 Mar 2007 01:01:43 GMT Message-Id: <200703090101.l2911hlv029310@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 115572 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 01:01:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=115572 Change 115572 by csjp@csjp_rnd01 on 2007/03/09 01:01:18 Minor cosmetic nits Affected files ... .. //depot/projects/zcopybpf/utils/bpfnull/bpfnull.c#18 edit Differences ... ==== //depot/projects/zcopybpf/utils/bpfnull/bpfnull.c#18 (text+ko) ==== @@ -74,6 +74,7 @@ static u_char *bufa, *bufb; static unsigned long packet_count; + static int handle_int(int sig __unused) { @@ -205,7 +206,6 @@ } else { bzha = (struct bpf_zbuf_header *)bufa; bzhb = (struct bpf_zbuf_header *)bufb; - if (n == 0) { c = rdtsc(); if (ioctl(fd, BIOCROTZBUF, &bz) < 0) From owner-p4-projects@FreeBSD.ORG Fri Mar 9 05:50:21 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0509216A407; Fri, 9 Mar 2007 05:50:21 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id AF17F16A401 for ; Fri, 9 Mar 2007 05:50:20 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 9956C13C4B6 for ; Fri, 9 Mar 2007 05:50:15 +0000 (UTC) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l295oFMg032566 for ; Fri, 9 Mar 2007 05:50:15 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l295nmb6032482 for perforce@freebsd.org; Fri, 9 Mar 2007 05:49:48 GMT (envelope-from imp@freebsd.org) Date: Fri, 9 Mar 2007 05:49:48 GMT Message-Id: <200703090549.l295nmb6032482@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 115584 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 05:50:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=115584 Change 115584 by imp@imp_paco-paco on 2007/03/09 05:49:22 IFC @115581 Affected files ... .. //depot/projects/arm/src/Makefile.inc1#22 integrate .. //depot/projects/arm/src/ObsoleteFiles.inc#16 integrate .. //depot/projects/arm/src/UPDATING#11 integrate .. //depot/projects/arm/src/bin/df/df.1#2 integrate .. //depot/projects/arm/src/bin/df/df.c#4 integrate .. //depot/projects/arm/src/bin/expr/expr.1#2 integrate .. //depot/projects/arm/src/bin/expr/expr.y#2 integrate .. //depot/projects/arm/src/bin/kill/kill.1#2 integrate .. //depot/projects/arm/src/bin/rcp/rcp.1#2 integrate .. //depot/projects/arm/src/bin/setfacl/setfacl.c#2 integrate .. //depot/projects/arm/src/contrib/libpcap/pcap-bpf.c#3 integrate .. //depot/projects/arm/src/etc/defaults/rc.conf#11 integrate .. //depot/projects/arm/src/etc/devd.conf#4 integrate .. //depot/projects/arm/src/etc/mtree/BSD.include.dist#6 integrate .. //depot/projects/arm/src/etc/mtree/BSD.usr.dist#8 integrate .. //depot/projects/arm/src/etc/network.subr#6 integrate .. //depot/projects/arm/src/etc/periodic/security/800.loginfail#3 integrate .. //depot/projects/arm/src/etc/periodic/weekly/310.locate#2 integrate .. //depot/projects/arm/src/etc/rc.d/dhclient#4 integrate .. //depot/projects/arm/src/etc/rc.d/hostname#2 integrate .. //depot/projects/arm/src/etc/rc.d/netif#3 integrate .. //depot/projects/arm/src/etc/rc.d/random#2 integrate .. //depot/projects/arm/src/gnu/usr.bin/binutils/Makefile.inc0#5 integrate .. //depot/projects/arm/src/gnu/usr.bin/binutils/libbfd/bfd.h#2 integrate .. //depot/projects/arm/src/gnu/usr.bin/gdb/kgdb/kgdb.h#2 integrate .. //depot/projects/arm/src/gnu/usr.bin/gdb/kgdb/kthr.c#5 integrate .. //depot/projects/arm/src/gnu/usr.bin/gdb/kgdb/trgt_i386.c#2 integrate .. //depot/projects/arm/src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#2 integrate .. //depot/projects/arm/src/include/Makefile#8 integrate .. //depot/projects/arm/src/include/protocols/dumprestore.h#2 integrate .. //depot/projects/arm/src/lib/libarchive/Makefile#7 integrate .. //depot/projects/arm/src/lib/libarchive/README#2 integrate .. //depot/projects/arm/src/lib/libarchive/archive.h.in#9 integrate .. //depot/projects/arm/src/lib/libarchive/archive_entry.3#3 integrate .. //depot/projects/arm/src/lib/libarchive/archive_entry.c#4 integrate .. //depot/projects/arm/src/lib/libarchive/archive_entry.h#3 integrate .. //depot/projects/arm/src/lib/libarchive/archive_private.h#7 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read.3#8 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read.c#9 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_data_into_fd.c#4 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_extract.c#6 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_private.h#1 branch .. //depot/projects/arm/src/lib/libarchive/archive_read_support_compression_bzip2.c#6 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_support_compression_compress.c#5 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_support_compression_gzip.c#5 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_support_compression_none.c#8 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_support_format_cpio.c#6 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_support_format_empty.c#2 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_support_format_iso9660.c#6 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_support_format_tar.c#7 integrate .. //depot/projects/arm/src/lib/libarchive/archive_read_support_format_zip.c#4 integrate .. //depot/projects/arm/src/lib/libarchive/archive_util.3#3 integrate .. //depot/projects/arm/src/lib/libarchive/archive_util.c#4 integrate .. //depot/projects/arm/src/lib/libarchive/archive_virtual.c#1 branch .. //depot/projects/arm/src/lib/libarchive/archive_write.3#7 integrate .. //depot/projects/arm/src/lib/libarchive/archive_write.c#8 integrate .. //depot/projects/arm/src/lib/libarchive/archive_write_disk.3#1 branch .. //depot/projects/arm/src/lib/libarchive/archive_write_disk.c#1 branch .. //depot/projects/arm/src/lib/libarchive/archive_write_disk_private.h#1 branch .. //depot/projects/arm/src/lib/libarchive/archive_write_disk_set_standard_lookup.c#1 branch .. //depot/projects/arm/src/lib/libarchive/archive_write_private.h#1 branch .. //depot/projects/arm/src/lib/libarchive/archive_write_set_compression_bzip2.c#4 integrate .. //depot/projects/arm/src/lib/libarchive/archive_write_set_compression_gzip.c#4 integrate .. //depot/projects/arm/src/lib/libarchive/archive_write_set_compression_none.c#5 integrate .. //depot/projects/arm/src/lib/libarchive/archive_write_set_format_cpio.c#5 integrate .. //depot/projects/arm/src/lib/libarchive/archive_write_set_format_pax.c#6 integrate .. //depot/projects/arm/src/lib/libarchive/archive_write_set_format_shar.c#5 integrate .. //depot/projects/arm/src/lib/libarchive/archive_write_set_format_ustar.c#6 integrate .. //depot/projects/arm/src/lib/libarchive/test/Makefile#1 branch .. //depot/projects/arm/src/lib/libarchive/test/README#1 branch .. //depot/projects/arm/src/lib/libarchive/test/main.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test.h#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_acl_basic.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_acl_pax.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_archive_api_feature.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_bad_fd.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_data_large.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_extract.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_cpio_bin.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_cpio_bin_Z.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_cpio_bin_bz2.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_cpio_bin_gz.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_cpio_odc.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_cpio_svr4_gzip.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_cpio_svr4c_Z.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_empty.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_gtar_gz.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_iso_gz.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_isorr_bz2.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_pax_bz2.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_tar.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_tbz.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_tgz.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_tz.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_format_zip.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_large.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_position.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_read_truncated.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_write_disk.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_write_disk_perms.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_write_disk_secure.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_write_format_cpio_empty.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_write_format_shar_empty.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_write_format_tar.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_write_format_tar_empty.c#1 branch .. //depot/projects/arm/src/lib/libarchive/test/test_write_open_memory.c#1 branch .. //depot/projects/arm/src/lib/libc/Makefile#4 integrate .. //depot/projects/arm/src/lib/libc/gen/getcap.3#3 integrate .. //depot/projects/arm/src/lib/libc/gen/tls.c#5 integrate .. //depot/projects/arm/src/lib/libc/net/Makefile.inc#5 integrate .. //depot/projects/arm/src/lib/libc/net/Symbol.map#2 integrate .. //depot/projects/arm/src/lib/libc/net/addr2ascii.3#2 delete .. //depot/projects/arm/src/lib/libc/net/addr2ascii.c#2 delete .. //depot/projects/arm/src/lib/libc/net/ascii2addr.c#2 delete .. //depot/projects/arm/src/lib/libc/net/getnameinfo.3#2 integrate .. //depot/projects/arm/src/lib/libc/net/getnameinfo.c#2 integrate .. //depot/projects/arm/src/lib/libc/net/inet.3#4 integrate .. //depot/projects/arm/src/lib/libc/net/linkaddr.3#3 integrate .. //depot/projects/arm/src/lib/libc/net/sctp_bindx.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_connectx.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_freepaddrs.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_getaddrlen.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_getassocid.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_getpaddrs.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_opt_info.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_recvmsg.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_send.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_sendmsg.3#1 branch .. //depot/projects/arm/src/lib/libc/net/sctp_sys_calls.c#2 integrate .. //depot/projects/arm/src/lib/libc/posix1e/acl_from_text.c#2 integrate .. //depot/projects/arm/src/lib/libc/posix1e/acl_support.c#2 integrate .. //depot/projects/arm/src/lib/libc/posix1e/acl_support.h#2 integrate .. //depot/projects/arm/src/lib/libc/regex/engine.c#3 integrate .. //depot/projects/arm/src/lib/libc/regex/grot/tests#2 integrate .. //depot/projects/arm/src/lib/libc/resolv/res_send.c#6 integrate .. //depot/projects/arm/src/lib/libc/rpc/clnt_dg.c#2 integrate .. //depot/projects/arm/src/lib/libc/stdlib/malloc.c#10 integrate .. //depot/projects/arm/src/lib/libc/sys/Makefile.inc#3 integrate .. //depot/projects/arm/src/lib/libc/sys/getsockopt.2#4 integrate .. //depot/projects/arm/src/lib/libc/sys/kse.2#4 integrate .. //depot/projects/arm/src/lib/libc/sys/ntp_adjtime.2#2 integrate .. //depot/projects/arm/src/lib/libc/sys/sctp_generic_recvmsg.2#1 branch .. //depot/projects/arm/src/lib/libc/sys/sctp_generic_sendmsg.2#1 branch .. //depot/projects/arm/src/lib/libc/sys/sctp_peeloff.2#1 branch .. //depot/projects/arm/src/lib/libc/sys/shutdown.2#3 integrate .. //depot/projects/arm/src/lib/libc/yp/yplib.c#2 integrate .. //depot/projects/arm/src/lib/libelf/gelf.h#3 integrate .. //depot/projects/arm/src/lib/libelf/gelf_getehdr.3#3 integrate .. //depot/projects/arm/src/lib/libelf/libelf_allocate.c#2 integrate .. //depot/projects/arm/src/lib/libkvm/kvm_getswapinfo.c#2 integrate .. //depot/projects/arm/src/lib/libncp/ipxsap.h#3 integrate .. //depot/projects/arm/src/lib/libpthread/thread/thr_kern.c#3 integrate .. //depot/projects/arm/src/lib/libwrap/Makefile#2 integrate .. //depot/projects/arm/src/lib/libypclnt/Makefile#2 integrate .. //depot/projects/arm/src/lib/libypclnt/ypclnt.3#1 branch .. //depot/projects/arm/src/libexec/ftpd/ftpd.c#2 integrate .. //depot/projects/arm/src/release/Makefile#10 integrate .. //depot/projects/arm/src/release/doc/de_DE.ISO8859-1/installation/common/install.sgml#2 integrate .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/Makefile#3 integrate .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/Makefile.inc#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/amd64/Makefile#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/amd64/article.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/amd64/proc-amd64.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/article.sgml#1 branch .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/i386/Makefile#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/i386/article.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/i386/proc-i386.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/ia64/Makefile#3 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/ia64/article.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/ia64/proc-ia64.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/pc98/Makefile#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/pc98/article.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/pc98/proc-pc98.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/powerpc/Makefile#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/powerpc/article.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/powerpc/proc-powerpc.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/sparc64/Makefile#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/sparc64/article.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/hardware/sparc64/proc-sparc64.sgml#2 delete .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/installation/common/install.sgml#2 integrate .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/readme/article.sgml#3 integrate .. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/article.sgml#4 integrate .. //depot/projects/arm/src/release/doc/fr_FR.ISO8859-1/installation/common/install.sgml#2 integrate .. //depot/projects/arm/src/release/doc/ru_RU.KOI8-R/installation/common/install.sgml#2 integrate .. //depot/projects/arm/src/release/doc/share/examples/Makefile.relnotesng#4 integrate .. //depot/projects/arm/src/release/doc/share/misc/man2hwnotes.pl#3 integrate .. //depot/projects/arm/src/release/doc/share/mk/doc.relnotes.mk#2 integrate .. //depot/projects/arm/src/release/doc/share/sgml/Makefile#2 integrate .. //depot/projects/arm/src/release/doc/zh_CN.GB2312/installation/common/install.sgml#3 integrate .. //depot/projects/arm/src/sbin/dhclient/clparse.c#2 integrate .. //depot/projects/arm/src/sbin/dhclient/dhclient-script#2 integrate .. //depot/projects/arm/src/sbin/dhclient/dhclient.c#5 integrate .. //depot/projects/arm/src/sbin/dhclient/dhclient.conf#2 integrate .. //depot/projects/arm/src/sbin/dhclient/dhcp.h#2 integrate .. //depot/projects/arm/src/sbin/dhclient/tables.c#2 integrate .. //depot/projects/arm/src/sbin/dump/dump.h#2 integrate .. //depot/projects/arm/src/sbin/dump/traverse.c#2 integrate .. //depot/projects/arm/src/sbin/ffsinfo/ffsinfo.c#2 integrate .. //depot/projects/arm/src/sbin/geom/class/Makefile#4 integrate .. //depot/projects/arm/src/sbin/geom/class/eli/geli.8#4 integrate .. //depot/projects/arm/src/sbin/geom/class/eli/geom_eli.c#6 integrate .. //depot/projects/arm/src/sbin/geom/class/journal/Makefile#2 integrate .. //depot/projects/arm/src/sbin/geom/class/multipath/Makefile#1 branch .. //depot/projects/arm/src/sbin/geom/class/multipath/geom_multipath.c#1 branch .. //depot/projects/arm/src/sbin/geom/class/multipath/gmultipath.8#1 branch .. //depot/projects/arm/src/sbin/ifconfig/af_atalk.c#2 integrate .. //depot/projects/arm/src/sbin/ifconfig/af_inet.c#2 integrate .. //depot/projects/arm/src/sbin/ifconfig/af_inet6.c#4 integrate .. //depot/projects/arm/src/sbin/ifconfig/af_ipx.c#2 integrate .. //depot/projects/arm/src/sbin/ifconfig/af_link.c#2 integrate .. //depot/projects/arm/src/sbin/ifconfig/ifconfig.c#6 integrate .. //depot/projects/arm/src/sbin/ifconfig/ifconfig.h#2 integrate .. //depot/projects/arm/src/sbin/ifconfig/ifgroup.c#2 integrate .. //depot/projects/arm/src/sbin/ifconfig/ifieee80211.c#7 integrate .. //depot/projects/arm/src/sbin/ipfw/ipfw.8#7 integrate .. //depot/projects/arm/src/sbin/kldload/kldload.8#3 integrate .. //depot/projects/arm/src/sbin/kldstat/kldstat.8#2 integrate .. //depot/projects/arm/src/sbin/kldunload/kldunload.8#2 integrate .. //depot/projects/arm/src/sbin/mdconfig/mdconfig.8#2 integrate .. //depot/projects/arm/src/sbin/mdconfig/mdconfig.c#2 integrate .. //depot/projects/arm/src/sbin/mdmfs/mdmfs.8#5 integrate .. //depot/projects/arm/src/sbin/mdmfs/mdmfs.c#3 integrate .. //depot/projects/arm/src/sbin/mount/mount.c#6 integrate .. //depot/projects/arm/src/sbin/mount_nfs/mount_nfs.8#4 integrate .. //depot/projects/arm/src/sbin/mount_nfs/mount_nfs.c#5 integrate .. //depot/projects/arm/src/sbin/mount_unionfs/Makefile#3 integrate .. //depot/projects/arm/src/sbin/mount_unionfs/mount_unionfs.c#4 integrate .. //depot/projects/arm/src/sbin/newfs/newfs.c#3 integrate .. //depot/projects/arm/src/sbin/restore/dirs.c#2 integrate .. //depot/projects/arm/src/sbin/restore/extern.h#2 integrate .. //depot/projects/arm/src/sbin/restore/restore.h#3 integrate .. //depot/projects/arm/src/sbin/restore/tape.c#4 integrate .. //depot/projects/arm/src/share/dict/web2a#2 integrate .. //depot/projects/arm/src/share/doc/Makefile#2 integrate .. //depot/projects/arm/src/share/doc/legal/Makefile#1 branch .. //depot/projects/arm/src/share/doc/legal/intel_ipw/Makefile#1 branch .. //depot/projects/arm/src/share/doc/legal/intel_iwi/Makefile#1 branch .. //depot/projects/arm/src/share/man/man4/Makefile#7 integrate .. //depot/projects/arm/src/share/man/man4/altq.4#5 integrate .. //depot/projects/arm/src/share/man/man4/ata.4#6 integrate .. //depot/projects/arm/src/share/man/man4/bce.4#6 integrate .. //depot/projects/arm/src/share/man/man4/bpf.4#2 integrate .. //depot/projects/arm/src/share/man/man4/enc.4#3 integrate .. //depot/projects/arm/src/share/man/man4/hwpmc.4#2 integrate .. //depot/projects/arm/src/share/man/man4/icmp.4#2 integrate .. //depot/projects/arm/src/share/man/man4/ipw.4#4 integrate .. //depot/projects/arm/src/share/man/man4/isp.4#3 integrate .. //depot/projects/arm/src/share/man/man4/iwi.4#3 integrate .. //depot/projects/arm/src/share/man/man4/joy.4#3 integrate .. //depot/projects/arm/src/share/man/man4/kame.4#2 delete .. //depot/projects/arm/src/share/man/man4/kld.4#2 integrate .. //depot/projects/arm/src/share/man/man4/man4.i386/fe.4#2 integrate .. //depot/projects/arm/src/share/man/man4/man4.i386/ndis.4#3 integrate .. //depot/projects/arm/src/share/man/man4/multicast.4#2 integrate .. //depot/projects/arm/src/share/man/man4/ng_bt3c.4#2 integrate .. //depot/projects/arm/src/share/man/man4/ng_source.4#3 integrate .. //depot/projects/arm/src/share/man/man4/pim.4#2 integrate .. //depot/projects/arm/src/share/man/man4/ppbus.4#2 integrate .. //depot/projects/arm/src/share/man/man4/sctp.4#1 branch .. //depot/projects/arm/src/share/man/man4/snd_hda.4#6 integrate .. //depot/projects/arm/src/share/man/man4/snd_sbc.4#2 integrate .. //depot/projects/arm/src/share/man/man4/tcp.4#4 integrate .. //depot/projects/arm/src/share/man/man4/uark.4#2 integrate .. //depot/projects/arm/src/share/man/man4/ubsa.4#4 integrate .. //depot/projects/arm/src/share/man/man4/vge.4#2 integrate .. //depot/projects/arm/src/share/man/man5/fs.5#3 integrate .. //depot/projects/arm/src/share/man/man5/linsysfs.5#5 integrate .. //depot/projects/arm/src/share/man/man5/rc.conf.5#8 integrate .. //depot/projects/arm/src/share/man/man7/hier.7#6 integrate .. //depot/projects/arm/src/share/man/man9/BUS_SETUP_INTR.9#2 integrate .. //depot/projects/arm/src/share/man/man9/Makefile#8 integrate .. //depot/projects/arm/src/share/man/man9/VFS_VPTOFH.9#2 delete .. //depot/projects/arm/src/share/man/man9/VOP_VPTOFH.9#1 branch .. //depot/projects/arm/src/share/man/man9/bus_dma.9#6 integrate .. //depot/projects/arm/src/share/man/man9/device_set_driver.9#2 integrate .. //depot/projects/arm/src/share/man/man9/extattr.9#2 integrate .. //depot/projects/arm/src/share/man/man9/firmware.9#3 integrate .. //depot/projects/arm/src/share/man/man9/ieee80211_ioctl.9#2 integrate .. //depot/projects/arm/src/share/man/man9/mbuf.9#3 integrate .. //depot/projects/arm/src/share/man/man9/priv.9#3 integrate .. //depot/projects/arm/src/share/man/man9/rwlock.9#3 integrate .. //depot/projects/arm/src/share/man/man9/sleep.9#3 integrate .. //depot/projects/arm/src/share/man/man9/vfs_getopt.9#1 branch .. //depot/projects/arm/src/share/man/man9/vm_page_deactivate.9#2 integrate .. //depot/projects/arm/src/share/man/man9/vm_page_unmanage.9#2 delete .. //depot/projects/arm/src/share/monetdef/ru_RU.CP1251.src#2 integrate .. //depot/projects/arm/src/share/monetdef/ru_RU.CP866.src#2 integrate .. //depot/projects/arm/src/share/monetdef/ru_RU.ISO8859-5.src#2 integrate .. //depot/projects/arm/src/share/monetdef/ru_RU.KOI8-R.src#2 integrate .. //depot/projects/arm/src/share/monetdef/ru_RU.UTF-8.src#2 integrate .. //depot/projects/arm/src/sys/amd64/acpica/madt.c#6 integrate .. //depot/projects/arm/src/sys/amd64/amd64/busdma_machdep.c#11 integrate .. //depot/projects/arm/src/sys/amd64/amd64/intr_machdep.c#10 integrate .. //depot/projects/arm/src/sys/amd64/amd64/io_apic.c#10 integrate .. //depot/projects/arm/src/sys/amd64/amd64/local_apic.c#17 integrate .. //depot/projects/arm/src/sys/amd64/amd64/mp_machdep.c#15 integrate .. //depot/projects/arm/src/sys/amd64/amd64/mptable.c#4 integrate .. //depot/projects/arm/src/sys/amd64/amd64/msi.c#3 integrate .. //depot/projects/arm/src/sys/amd64/amd64/nexus.c#8 integrate .. //depot/projects/arm/src/sys/amd64/amd64/pmap.c#29 integrate .. //depot/projects/arm/src/sys/amd64/amd64/trap.c#16 integrate .. //depot/projects/arm/src/sys/amd64/amd64/uma_machdep.c#3 integrate .. //depot/projects/arm/src/sys/amd64/conf/GENERIC#19 integrate .. //depot/projects/arm/src/sys/amd64/include/apicvar.h#11 integrate .. //depot/projects/arm/src/sys/amd64/include/gdb_machdep.h#3 integrate .. //depot/projects/arm/src/sys/amd64/include/intr_machdep.h#9 integrate .. //depot/projects/arm/src/sys/amd64/include/pcpu.h#4 integrate .. //depot/projects/arm/src/sys/amd64/include/smp.h#7 integrate .. //depot/projects/arm/src/sys/amd64/isa/clock.c#10 integrate .. //depot/projects/arm/src/sys/amd64/isa/isa.c#2 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux.h#10 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_machdep.c#13 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_proto.h#18 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_syscall.h#18 integrate .. //depot/projects/arm/src/sys/amd64/linux32/linux32_sysent.c#18 integrate .. //depot/projects/arm/src/sys/amd64/linux32/syscalls.master#17 integrate .. //depot/projects/arm/src/sys/arm/arm/busdma_machdep.c#11 integrate .. //depot/projects/arm/src/sys/arm/arm/cpufunc.c#15 integrate .. //depot/projects/arm/src/sys/arm/arm/db_interface.c#3 integrate .. //depot/projects/arm/src/sys/arm/arm/elf_trampoline.c#15 integrate .. //depot/projects/arm/src/sys/arm/arm/intr.c#10 integrate .. //depot/projects/arm/src/sys/arm/arm/locore.S#23 integrate .. //depot/projects/arm/src/sys/arm/arm/machdep.c#8 integrate .. //depot/projects/arm/src/sys/arm/arm/mem.c#5 integrate .. //depot/projects/arm/src/sys/arm/arm/nexus.c#6 integrate .. //depot/projects/arm/src/sys/arm/arm/support.S#4 integrate .. //depot/projects/arm/src/sys/arm/arm/sys_machdep.c#3 integrate .. //depot/projects/arm/src/sys/arm/arm/trap.c#14 integrate .. //depot/projects/arm/src/sys/arm/at91/at91.c#27 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_mci.c#31 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_pio.c#27 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_rtc.c#7 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_spi.c#17 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_ssc.c#22 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_st.c#17 integrate .. //depot/projects/arm/src/sys/arm/at91/at91_twi.c#41 integrate .. //depot/projects/arm/src/sys/arm/at91/if_ate.c#70 integrate .. //depot/projects/arm/src/sys/arm/at91/ohci_atmelarm.c#14 integrate .. //depot/projects/arm/src/sys/arm/conf/AVILA#13 integrate .. //depot/projects/arm/src/sys/arm/conf/EP80219#3 integrate .. //depot/projects/arm/src/sys/arm/conf/IQ31244#6 integrate .. //depot/projects/arm/src/sys/arm/conf/SIMICS#6 integrate .. //depot/projects/arm/src/sys/arm/include/intr.h#5 integrate .. //depot/projects/arm/src/sys/arm/sa11x0/sa11x0.c#5 integrate .. //depot/projects/arm/src/sys/arm/sa11x0/sa11x0_ost.c#4 integrate .. //depot/projects/arm/src/sys/arm/xscale/i80321/i80321_pci.c#7 integrate .. //depot/projects/arm/src/sys/arm/xscale/i80321/i80321_timer.c#7 integrate .. //depot/projects/arm/src/sys/arm/xscale/i80321/iq80321.c#9 integrate .. //depot/projects/arm/src/sys/arm/xscale/ixp425/avila_ata.c#14 integrate .. //depot/projects/arm/src/sys/arm/xscale/ixp425/if_npe.c#29 integrate .. //depot/projects/arm/src/sys/arm/xscale/ixp425/ixp425.c#23 integrate .. //depot/projects/arm/src/sys/arm/xscale/ixp425/ixp425_npe.c#10 integrate .. //depot/projects/arm/src/sys/arm/xscale/ixp425/ixp425_pci.c#19 integrate .. //depot/projects/arm/src/sys/arm/xscale/ixp425/ixp425_qmgr.c#5 integrate .. //depot/projects/arm/src/sys/arm/xscale/ixp425/ixp425_timer.c#6 integrate .. //depot/projects/arm/src/sys/boot/i386/cdboot/cdboot.s#3 integrate .. //depot/projects/arm/src/sys/boot/pc98/cdboot/cdboot.s#2 integrate .. //depot/projects/arm/src/sys/cam/cam_xpt.c#15 integrate .. //depot/projects/arm/src/sys/cam/cam_xpt.h#3 integrate .. //depot/projects/arm/src/sys/cam/scsi/scsi_da.c#16 integrate .. //depot/projects/arm/src/sys/cam/scsi/scsi_target.c#5 integrate .. //depot/projects/arm/src/sys/compat/linprocfs/linprocfs.c#14 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_emul.c#11 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_futex.c#5 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_futex.h#2 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_misc.c#24 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_stats.c#12 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_uid16.c#4 integrate .. //depot/projects/arm/src/sys/compat/linux/linux_util.c#5 integrate .. //depot/projects/arm/src/sys/compat/ndis/kern_ndis.c#6 integrate .. //depot/projects/arm/src/sys/conf/NOTES#42 integrate .. //depot/projects/arm/src/sys/conf/files#63 integrate .. //depot/projects/arm/src/sys/conf/files.powerpc#14 integrate .. //depot/projects/arm/src/sys/conf/files.sparc64#11 integrate .. //depot/projects/arm/src/sys/conf/kmod.mk#15 integrate .. //depot/projects/arm/src/sys/conf/options#40 integrate .. //depot/projects/arm/src/sys/conf/options.arm#21 integrate .. //depot/projects/arm/src/sys/contrib/dev/ipw/LICENSE#1 branch .. //depot/projects/arm/src/sys/contrib/dev/ipw/ipw2100-1.3-i.fw.uu#1 branch .. //depot/projects/arm/src/sys/contrib/dev/ipw/ipw2100-1.3-p.fw.uu#1 branch .. //depot/projects/arm/src/sys/contrib/dev/ipw/ipw2100-1.3.fw.uu#1 branch .. //depot/projects/arm/src/sys/contrib/dev/iwi/LICENSE#1 branch .. //depot/projects/arm/src/sys/contrib/dev/iwi/ipw2200-bss.fw.uu#1 branch .. //depot/projects/arm/src/sys/contrib/dev/iwi/ipw2200-ibss.fw.uu#1 branch .. //depot/projects/arm/src/sys/contrib/dev/iwi/ipw2200-sniffer.fw.uu#1 branch .. //depot/projects/arm/src/sys/contrib/dev/oltr/if_oltr.c#4 integrate .. //depot/projects/arm/src/sys/dev/aac/aac.c#5 integrate .. //depot/projects/arm/src/sys/dev/aac/aacvar.h#3 integrate .. //depot/projects/arm/src/sys/dev/acpica/Osd/OsdInterrupt.c#3 integrate .. //depot/projects/arm/src/sys/dev/acpica/Osd/OsdSchedule.c#6 integrate .. //depot/projects/arm/src/sys/dev/acpica/acpi.c#16 integrate .. //depot/projects/arm/src/sys/dev/acpica/acpi_ec.c#5 integrate .. //depot/projects/arm/src/sys/dev/acpica/acpi_thermal.c#7 integrate .. //depot/projects/arm/src/sys/dev/adlink/adlink.c#4 integrate .. //depot/projects/arm/src/sys/dev/advansys/adv_eisa.c#5 integrate .. //depot/projects/arm/src/sys/dev/advansys/adv_isa.c#4 integrate .. //depot/projects/arm/src/sys/dev/advansys/adv_pci.c#7 integrate .. //depot/projects/arm/src/sys/dev/advansys/adwcam.c#6 integrate .. //depot/projects/arm/src/sys/dev/aha/aha_isa.c#5 integrate .. //depot/projects/arm/src/sys/dev/aha/aha_mca.c#4 integrate .. //depot/projects/arm/src/sys/dev/ahb/ahb.c#6 integrate .. //depot/projects/arm/src/sys/dev/aic/aic_cbus.c#3 integrate .. //depot/projects/arm/src/sys/dev/aic/aic_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/aic/aic_pccard.c#4 integrate .. //depot/projects/arm/src/sys/dev/aic7xxx/aic79xx.seq#2 integrate .. //depot/projects/arm/src/sys/dev/aic7xxx/aic79xx_osm.c#6 integrate .. //depot/projects/arm/src/sys/dev/aic7xxx/aic7xxx_osm.c#6 integrate .. //depot/projects/arm/src/sys/dev/amd/amd.c#6 integrate .. //depot/projects/arm/src/sys/dev/amr/amr_pci.c#8 integrate .. //depot/projects/arm/src/sys/dev/an/if_an_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/an/if_an_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/an/if_an_pci.c#3 integrate .. //depot/projects/arm/src/sys/dev/ar/if_ar.c#4 integrate .. //depot/projects/arm/src/sys/dev/arcmsr/arcmsr.c#8 integrate .. //depot/projects/arm/src/sys/dev/arcmsr/arcmsr.h#3 integrate .. //depot/projects/arm/src/sys/dev/arl/if_arl_isa.c#4 integrate .. //depot/projects/arm/src/sys/dev/asr/asr.c#12 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-all.c#17 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-all.h#14 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-card.c#4 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-cbus.c#4 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-chipset.c#33 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-disk.c#11 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-disk.h#4 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-dma.c#6 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-isa.c#4 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-lowlevel.c#10 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-pci.c#10 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-pci.h#19 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-queue.c#16 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-raid.c#14 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-raid.h#10 integrate .. //depot/projects/arm/src/sys/dev/ata/ata-usb.c#5 integrate .. //depot/projects/arm/src/sys/dev/ata/atapi-cam.c#5 integrate .. //depot/projects/arm/src/sys/dev/ata/atapi-cd.c#8 integrate .. //depot/projects/arm/src/sys/dev/ata/atapi-cd.h#4 integrate .. //depot/projects/arm/src/sys/dev/ata/atapi-fd.c#7 integrate .. //depot/projects/arm/src/sys/dev/ata/atapi-fd.h#5 integrate .. //depot/projects/arm/src/sys/dev/ata/atapi-tape.c#5 integrate .. //depot/projects/arm/src/sys/dev/ata/atapi-tape.h#4 integrate .. //depot/projects/arm/src/sys/dev/ath/if_ath.c#24 integrate .. //depot/projects/arm/src/sys/dev/ath/if_ath_pci.c#7 integrate .. //depot/projects/arm/src/sys/dev/ath/if_athvar.h#16 integrate .. //depot/projects/arm/src/sys/dev/atkbdc/atkbd_atkbdc.c#2 integrate .. //depot/projects/arm/src/sys/dev/atkbdc/psm.c#7 integrate .. //depot/projects/arm/src/sys/dev/awi/if_awi_pccard.c#4 integrate .. //depot/projects/arm/src/sys/dev/bce/if_bce.c#16 integrate .. //depot/projects/arm/src/sys/dev/bfe/if_bfe.c#9 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bge.c#29 integrate .. //depot/projects/arm/src/sys/dev/bge/if_bgereg.h#22 integrate .. //depot/projects/arm/src/sys/dev/bktr/bktr_os.c#6 integrate .. //depot/projects/arm/src/sys/dev/buslogic/bt.c#5 integrate .. //depot/projects/arm/src/sys/dev/ce/if_ce.c#6 integrate .. //depot/projects/arm/src/sys/dev/ciss/ciss.c#11 integrate .. //depot/projects/arm/src/sys/dev/cm/if_cm_isa.c#4 integrate .. //depot/projects/arm/src/sys/dev/cnw/if_cnw.c#5 integrate .. //depot/projects/arm/src/sys/dev/cp/if_cp.c#7 integrate .. //depot/projects/arm/src/sys/dev/cs/if_cs_isa.c#2 integrate .. //depot/projects/arm/src/sys/dev/cs/if_cs_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/ct/ct_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/ctau/if_ct.c#7 integrate .. //depot/projects/arm/src/sys/dev/cx/if_cx.c#6 integrate .. //depot/projects/arm/src/sys/dev/cy/cy.c#3 integrate .. //depot/projects/arm/src/sys/dev/cy/cy_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/cy/cy_pci.c#3 integrate .. //depot/projects/arm/src/sys/dev/cy/cyvar.h#2 integrate .. //depot/projects/arm/src/sys/dev/dc/if_dc.c#13 integrate .. //depot/projects/arm/src/sys/dev/de/if_de.c#4 integrate .. //depot/projects/arm/src/sys/dev/dpt/dpt_eisa.c#6 integrate .. //depot/projects/arm/src/sys/dev/dpt/dpt_pci.c#6 integrate .. //depot/projects/arm/src/sys/dev/drm/drm_irq.c#3 integrate .. //depot/projects/arm/src/sys/dev/ed/if_ed_cbus.c#6 integrate .. //depot/projects/arm/src/sys/dev/ed/if_ed_isa.c#5 integrate .. //depot/projects/arm/src/sys/dev/ed/if_ed_pccard.c#5 integrate .. //depot/projects/arm/src/sys/dev/ed/if_ed_pci.c#5 integrate .. //depot/projects/arm/src/sys/dev/em/if_em.c#35 integrate .. //depot/projects/arm/src/sys/dev/en/if_en_pci.c#5 integrate .. //depot/projects/arm/src/sys/dev/ep/if_ep_eisa.c#3 integrate .. //depot/projects/arm/src/sys/dev/ep/if_ep_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/ep/if_ep_mca.c#3 integrate .. //depot/projects/arm/src/sys/dev/ep/if_ep_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/esp/esp_sbus.c#6 integrate .. //depot/projects/arm/src/sys/dev/ex/if_ex_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/ex/if_ex_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/exca/exca.c#5 integrate .. //depot/projects/arm/src/sys/dev/fatm/if_fatm.c#5 integrate .. //depot/projects/arm/src/sys/dev/fb/creator.c#5 integrate .. //depot/projects/arm/src/sys/dev/fdc/fdc.c#9 integrate .. //depot/projects/arm/src/sys/dev/fe/if_fe.c#5 integrate .. //depot/projects/arm/src/sys/dev/firewire/fwohci.c#3 integrate .. //depot/projects/arm/src/sys/dev/firewire/fwohci_pci.c#6 integrate .. //depot/projects/arm/src/sys/dev/firewire/sbp.c#4 integrate .. //depot/projects/arm/src/sys/dev/fxp/if_fxp.c#16 integrate .. //depot/projects/arm/src/sys/dev/gem/if_gem_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/hatm/if_hatm.c#4 integrate .. //depot/projects/arm/src/sys/dev/hfa/hfa_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/hifn/hifn7751.c#7 integrate .. //depot/projects/arm/src/sys/dev/hme/if_hme_pci.c#5 integrate .. //depot/projects/arm/src/sys/dev/hme/if_hme_sbus.c#3 integrate .. //depot/projects/arm/src/sys/dev/hptmv/entry.c#7 integrate .. //depot/projects/arm/src/sys/dev/hptmv/ioctl.c#4 integrate .. //depot/projects/arm/src/sys/dev/hwpmc/hwpmc_mod.c#12 integrate .. //depot/projects/arm/src/sys/dev/ichsmb/ichsmb.c#7 integrate .. //depot/projects/arm/src/sys/dev/ida/ida_eisa.c#3 integrate .. //depot/projects/arm/src/sys/dev/ida/ida_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/idt/idt_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/ie/if_ie_isa.c#5 integrate .. //depot/projects/arm/src/sys/dev/ieee488/pcii.c#4 integrate .. //depot/projects/arm/src/sys/dev/ieee488/tnt4882.c#2 integrate .. //depot/projects/arm/src/sys/dev/iir/iir_pci.c#7 integrate .. //depot/projects/arm/src/sys/dev/ipmi/ipmi.c#8 integrate .. //depot/projects/arm/src/sys/dev/ipmi/ipmi_ssif.c#2 integrate .. //depot/projects/arm/src/sys/dev/ips/ips_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/ipw/if_ipw.c#7 integrate .. //depot/projects/arm/src/sys/dev/ipw/if_ipwvar.h#4 integrate .. //depot/projects/arm/src/sys/dev/isp/isp.c#18 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_freebsd.c#22 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_freebsd.h#17 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_pci.c#21 integrate .. //depot/projects/arm/src/sys/dev/isp/isp_sbus.c#13 integrate .. //depot/projects/arm/src/sys/dev/isp/ispmbox.h#11 integrate .. //depot/projects/arm/src/sys/dev/isp/ispreg.h#6 integrate .. //depot/projects/arm/src/sys/dev/iwi/if_iwi.c#14 integrate .. //depot/projects/arm/src/sys/dev/iwi/if_iwireg.h#7 integrate .. //depot/projects/arm/src/sys/dev/iwi/if_iwivar.h#5 integrate .. //depot/projects/arm/src/sys/dev/ixgb/if_ixgb.c#7 integrate .. //depot/projects/arm/src/sys/dev/le/if_le_cbus.c#4 integrate .. //depot/projects/arm/src/sys/dev/le/if_le_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/le/if_le_lebuffer.c#2 integrate .. //depot/projects/arm/src/sys/dev/le/if_le_ledma.c#4 integrate .. //depot/projects/arm/src/sys/dev/le/if_le_pci.c#5 integrate .. //depot/projects/arm/src/sys/dev/lge/if_lge.c#8 integrate .. //depot/projects/arm/src/sys/dev/lmc/if_lmc.c#6 integrate .. //depot/projects/arm/src/sys/dev/mfi/mfi.c#14 integrate .. //depot/projects/arm/src/sys/dev/mii/brgphy.c#15 integrate .. //depot/projects/arm/src/sys/dev/mii/brgphyreg.h#2 integrate .. //depot/projects/arm/src/sys/dev/mii/miidevs#14 integrate .. //depot/projects/arm/src/sys/dev/mii/rlphy.c#7 integrate .. //depot/projects/arm/src/sys/dev/mlx/mlx.c#3 integrate .. //depot/projects/arm/src/sys/dev/mly/mly.c#6 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt.h#24 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt_cam.c#33 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt_cam.h#4 integrate .. //depot/projects/arm/src/sys/dev/mpt/mpt_pci.c#22 integrate .. //depot/projects/arm/src/sys/dev/mse/mse.c#5 integrate .. //depot/projects/arm/src/sys/dev/msk/if_msk.c#3 integrate .. //depot/projects/arm/src/sys/dev/mxge/eth_z8e.dat.gz.uu#4 integrate .. //depot/projects/arm/src/sys/dev/mxge/ethp_z8e.dat.gz.uu#4 integrate .. //depot/projects/arm/src/sys/dev/mxge/if_mxge.c#11 integrate .. //depot/projects/arm/src/sys/dev/mxge/if_mxge_var.h#6 integrate .. //depot/projects/arm/src/sys/dev/my/if_my.c#9 integrate .. //depot/projects/arm/src/sys/dev/ncv/ncr53c500_pccard.c#4 integrate .. //depot/projects/arm/src/sys/dev/nfe/if_nfe.c#9 integrate .. //depot/projects/arm/src/sys/dev/nge/if_nge.c#8 integrate .. //depot/projects/arm/src/sys/dev/nsp/nsp_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/nve/if_nve.c#7 integrate .. //depot/projects/arm/src/sys/dev/patm/if_patm_attach.c#5 integrate .. //depot/projects/arm/src/sys/dev/pccard/pccard.c#6 integrate .. //depot/projects/arm/src/sys/dev/pccard/pccard_cis.c#4 integrate .. //depot/projects/arm/src/sys/dev/pccard/pccarddevs#6 integrate .. //depot/projects/arm/src/sys/dev/pccard/pccardvarp.h#2 integrate .. //depot/projects/arm/src/sys/dev/pccbb/pccbb.c#15 integrate .. //depot/projects/arm/src/sys/dev/pccbb/pccbb_pci.c#9 integrate .. //depot/projects/arm/src/sys/dev/pccbb/pccbbvar.h#5 integrate .. //depot/projects/arm/src/sys/dev/pcf/envctrl.c#4 integrate .. //depot/projects/arm/src/sys/dev/pcf/pcf_ebus.c#4 integrate .. //depot/projects/arm/src/sys/dev/pcf/pcf_isa.c#4 integrate .. //depot/projects/arm/src/sys/dev/pci/pci.c#22 integrate .. //depot/projects/arm/src/sys/dev/pci/pcireg.h#9 integrate .. //depot/projects/arm/src/sys/dev/pdq/if_fea.c#3 integrate .. //depot/projects/arm/src/sys/dev/pdq/if_fpa.c#4 integrate .. //depot/projects/arm/src/sys/dev/ppbus/if_plip.c#7 integrate .. //depot/projects/arm/src/sys/dev/ppbus/lpt.c#6 integrate .. //depot/projects/arm/src/sys/dev/ppbus/ppbconf.c#3 integrate .. //depot/projects/arm/src/sys/dev/ppbus/ppi.c#4 integrate .. //depot/projects/arm/src/sys/dev/ppbus/pps.c#7 integrate .. //depot/projects/arm/src/sys/dev/ppc/ppc.c#8 integrate .. //depot/projects/arm/src/sys/dev/ppc/ppcvar.h#4 integrate .. //depot/projects/arm/src/sys/dev/pst/pst-iop.c#2 integrate .. //depot/projects/arm/src/sys/dev/puc/puc.c#9 integrate .. //depot/projects/arm/src/sys/dev/puc/puc_bfe.h#2 integrate .. //depot/projects/arm/src/sys/dev/ral/if_ral_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/random/randomdev_soft.c#5 integrate .. //depot/projects/arm/src/sys/dev/ray/if_ray.c#4 integrate .. //depot/projects/arm/src/sys/dev/rc/rc.c#3 integrate .. //depot/projects/arm/src/sys/dev/re/if_re.c#22 integrate .. //depot/projects/arm/src/sys/dev/rr232x/osm_bsd.c#2 integrate .. //depot/projects/arm/src/sys/dev/safe/safe.c#7 integrate .. //depot/projects/arm/src/sys/dev/sbni/if_sbni_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/sbni/if_sbni_pci.c#2 integrate .. //depot/projects/arm/src/sys/dev/sbsh/if_sbsh.c#6 integrate .. //depot/projects/arm/src/sys/dev/scc/scc_bfe.h#2 integrate .. //depot/projects/arm/src/sys/dev/scc/scc_core.c#4 integrate .. //depot/projects/arm/src/sys/dev/scd/scd.c#3 integrate .. //depot/projects/arm/src/sys/dev/si/si_eisa.c#2 integrate .. //depot/projects/arm/src/sys/dev/si/si_isa.c#2 integrate .. //depot/projects/arm/src/sys/dev/si/si_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/sio/sio.c#8 integrate .. //depot/projects/arm/src/sys/dev/sk/if_sk.c#11 integrate .. //depot/projects/arm/src/sys/dev/sn/if_sn.c#5 integrate .. //depot/projects/arm/src/sys/dev/snc/if_snc_cbus.c#2 integrate .. //depot/projects/arm/src/sys/dev/snc/if_snc_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/isa/ad1816.c#6 integrate .. //depot/projects/arm/src/sys/dev/sound/isa/ess.c#5 integrate .. //depot/projects/arm/src/sys/dev/sound/isa/gusc.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/isa/mss.c#6 integrate .. //depot/projects/arm/src/sys/dev/sound/isa/sb16.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/isa/sb8.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/isa/sbc.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/midi.c#5 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/midi.h#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/midiq.h#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/mpu401.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/mpu401.h#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/mpu_if.m#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/mpufoi_if.m#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/sequencer.c#8 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/sequencer.h#3 integrate .. //depot/projects/arm/src/sys/dev/sound/midi/synth_if.m#3 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/als4000.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/atiixp.c#9 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/au88x0.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/aureal.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/cmi.c#9 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/cs4281.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/csa.c#5 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/csapcm.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/ds1.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/emu10k1.c#8 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/emu10kx-pcm.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/emu10kx.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/envy24.c#5 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/envy24ht.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/fm801.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/hda/hdac.c#8 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/ich.c#15 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/maestro.c#6 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/maestro3.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/solo.c#6 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/spicds.c#2 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/t4dwave.c#3 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/via8233.c#8 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/via82c686.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pci/vibes.c#4 integrate .. //depot/projects/arm/src/sys/dev/sound/pcm/ac97.c#9 integrate .. //depot/projects/arm/src/sys/dev/sound/pcm/sound.c#12 integrate .. //depot/projects/arm/src/sys/dev/sr/if_sr.c#4 integrate .. //depot/projects/arm/src/sys/dev/stg/tmc18c30_isa.c#3 integrate .. //depot/projects/arm/src/sys/dev/stg/tmc18c30_pccard.c#3 integrate .. //depot/projects/arm/src/sys/dev/stg/tmc18c30_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/stge/if_stge.c#5 integrate .. //depot/projects/arm/src/sys/dev/sym/sym_hipd.c#9 integrate .. //depot/projects/arm/src/sys/dev/syscons/fire/fire_saver.c#2 integrate .. //depot/projects/arm/src/sys/dev/syscons/logo/logo_saver.c#2 integrate .. //depot/projects/arm/src/sys/dev/syscons/rain/rain_saver.c#2 integrate .. //depot/projects/arm/src/sys/dev/syscons/warp/warp_saver.c#2 integrate .. //depot/projects/arm/src/sys/dev/ti/if_ti.c#8 integrate .. //depot/projects/arm/src/sys/dev/trm/trm.c#7 integrate .. //depot/projects/arm/src/sys/dev/twa/tw_osl_freebsd.c#3 integrate .. //depot/projects/arm/src/sys/dev/twe/twe_freebsd.c#5 integrate .. //depot/projects/arm/src/sys/dev/tx/if_tx.c#7 integrate .. //depot/projects/arm/src/sys/dev/txp/if_txp.c#7 integrate .. //depot/projects/arm/src/sys/dev/uart/uart_core.c#10 integrate .. //depot/projects/arm/src/sys/dev/ubsec/ubsec.c#10 integrate .. //depot/projects/arm/src/sys/dev/usb/ehci_pci.c#8 integrate .. //depot/projects/arm/src/sys/dev/usb/ohci_pci.c#9 integrate .. //depot/projects/arm/src/sys/dev/usb/sl811hs.c#5 integrate .. //depot/projects/arm/src/sys/dev/usb/sl811hsvar.h#4 integrate .. //depot/projects/arm/src/sys/dev/usb/slhci_pccard.c#2 integrate .. //depot/projects/arm/src/sys/dev/usb/ubsa.c#5 integrate .. //depot/projects/arm/src/sys/dev/usb/uhci_pci.c#5 integrate .. //depot/projects/arm/src/sys/dev/usb/umass.c#14 integrate .. //depot/projects/arm/src/sys/dev/usb/usb_subr.c#13 integrate .. //depot/projects/arm/src/sys/dev/usb/usbdevs#26 integrate .. //depot/projects/arm/src/sys/dev/usb/uvscom.c#5 integrate .. //depot/projects/arm/src/sys/dev/vge/if_vge.c#9 integrate .. //depot/projects/arm/src/sys/dev/vx/if_vx_eisa.c#3 integrate .. //depot/projects/arm/src/sys/dev/vx/if_vx_pci.c#4 integrate .. //depot/projects/arm/src/sys/dev/wds/wd7000.c#4 integrate .. //depot/projects/arm/src/sys/dev/wi/if_wi.c#11 integrate .. //depot/projects/arm/src/sys/dev/wl/if_wl.c#5 integrate .. //depot/projects/arm/src/sys/dev/xe/if_xe.c#4 integrate .. //depot/projects/arm/src/sys/dev/zs/z8530reg.h#2 delete .. //depot/projects/arm/src/sys/dev/zs/z8530var.h#2 delete .. //depot/projects/arm/src/sys/dev/zs/zs.c#5 delete .. //depot/projects/arm/src/sys/dev/zs/zs_macio.c#2 delete .. //depot/projects/arm/src/sys/fs/cd9660/TODO#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/TODO.hibler#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_bmap.c#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_iconv.c#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_lookup.c#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_mount.h#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_node.c#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_node.h#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_rrip.c#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_rrip.h#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_util.c#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_vfsops.c#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/cd9660_vnops.c#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/iso.h#1 branch .. //depot/projects/arm/src/sys/fs/cd9660/iso_rrip.h#1 branch .. //depot/projects/arm/src/sys/fs/fifofs/fifo_vnops.c#5 integrate .. //depot/projects/arm/src/sys/fs/hpfs/hpfs_vfsops.c#6 integrate .. //depot/projects/arm/src/sys/fs/hpfs/hpfs_vnops.c#8 integrate .. //depot/projects/arm/src/sys/fs/msdosfs/msdosfs_vfsops.c#15 integrate .. //depot/projects/arm/src/sys/fs/msdosfs/msdosfs_vnops.c#9 integrate .. //depot/projects/arm/src/sys/fs/ntfs/ntfs_vfsops.c#5 integrate .. //depot/projects/arm/src/sys/fs/ntfs/ntfs_vnops.c#8 integrate .. //depot/projects/arm/src/sys/fs/nullfs/null_vfsops.c#8 integrate .. //depot/projects/arm/src/sys/fs/nullfs/null_vnops.c#7 integrate .. //depot/projects/arm/src/sys/fs/procfs/procfs.c#4 integrate .. //depot/projects/arm/src/sys/fs/procfs/procfs_ioctl.c#6 integrate .. //depot/projects/arm/src/sys/fs/smbfs/smbfs_smb.c#5 integrate .. //depot/projects/arm/src/sys/fs/udf/udf.h#5 integrate .. //depot/projects/arm/src/sys/fs/udf/udf_vfsops.c#12 integrate .. //depot/projects/arm/src/sys/fs/udf/udf_vnops.c#9 integrate .. //depot/projects/arm/src/sys/fs/umapfs/umap_vfsops.c#5 integrate .. //depot/projects/arm/src/sys/fs/umapfs/umap_vnops.c#3 integrate .. //depot/projects/arm/src/sys/fs/unionfs/union_vfsops.c#7 integrate .. //depot/projects/arm/src/sys/fs/unionfs/union_vnops.c#8 integrate .. //depot/projects/arm/src/sys/geom/eli/g_eli.c#16 integrate .. //depot/projects/arm/src/sys/geom/eli/g_eli_ctl.c#7 integrate .. //depot/projects/arm/src/sys/geom/geom_apple.c#3 delete .. //depot/projects/arm/src/sys/geom/geom_dev.c#5 integrate .. //depot/projects/arm/src/sys/geom/geom_disk.c#6 integrate .. //depot/projects/arm/src/sys/geom/geom_gpt.c#10 delete .. //depot/projects/arm/src/sys/geom/geom_io.c#8 integrate .. //depot/projects/arm/src/sys/geom/multipath/g_multipath.c#1 branch .. //depot/projects/arm/src/sys/geom/multipath/g_multipath.h#1 branch .. //depot/projects/arm/src/sys/geom/part/g_part.c#1 branch .. //depot/projects/arm/src/sys/geom/part/g_part.h#1 branch .. //depot/projects/arm/src/sys/geom/part/g_part_apm.c#1 branch .. //depot/projects/arm/src/sys/geom/part/g_part_gpt.c#1 branch .. //depot/projects/arm/src/sys/geom/part/g_part_if.m#1 branch .. //depot/projects/arm/src/sys/gnu/fs/ext2fs/ext2_vfsops.c#7 integrate .. //depot/projects/arm/src/sys/gnu/fs/ext2fs/ext2_vnops.c#4 integrate .. //depot/projects/arm/src/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#5 integrate .. //depot/projects/arm/src/sys/gnu/fs/reiserfs/reiserfs_vnops.c#2 integrate .. //depot/projects/arm/src/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#8 integrate .. //depot/projects/arm/src/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c#5 integrate .. //depot/projects/arm/src/sys/i386/acpica/madt.c#6 integrate .. //depot/projects/arm/src/sys/i386/conf/GENERIC#18 integrate .. //depot/projects/arm/src/sys/i386/i386/busdma_machdep.c#12 integrate .. //depot/projects/arm/src/sys/i386/i386/db_trace.c#10 integrate .. //depot/projects/arm/src/sys/i386/i386/intr_machdep.c#10 integrate .. //depot/projects/arm/src/sys/i386/i386/io_apic.c#9 integrate .. //depot/projects/arm/src/sys/i386/i386/local_apic.c#16 integrate .. //depot/projects/arm/src/sys/i386/i386/machdep.c#26 integrate .. //depot/projects/arm/src/sys/i386/i386/mp_machdep.c#14 integrate .. //depot/projects/arm/src/sys/i386/i386/mptable.c#3 integrate .. //depot/projects/arm/src/sys/i386/i386/msi.c#3 integrate .. //depot/projects/arm/src/sys/i386/i386/nexus.c#8 integrate .. //depot/projects/arm/src/sys/i386/i386/pmap.c#27 integrate .. //depot/projects/arm/src/sys/i386/i386/trap.c#12 integrate .. //depot/projects/arm/src/sys/i386/i386/vm_machdep.c#7 integrate .. //depot/projects/arm/src/sys/i386/ibcs2/ibcs2_xenix.c#7 integrate .. //depot/projects/arm/src/sys/i386/include/apicvar.h#10 integrate .. //depot/projects/arm/src/sys/i386/include/intr_machdep.h#9 integrate .. //depot/projects/arm/src/sys/i386/include/pcpu.h#6 integrate .. //depot/projects/arm/src/sys/i386/include/smp.h#7 integrate .. //depot/projects/arm/src/sys/i386/isa/clock.c#10 integrate .. //depot/projects/arm/src/sys/i386/isa/isa.c#3 integrate .. //depot/projects/arm/src/sys/i386/isa/npx.c#10 integrate .. //depot/projects/arm/src/sys/i386/linux/imgact_linux.c#3 integrate .. //depot/projects/arm/src/sys/i386/linux/linux.h#10 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_machdep.c#13 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_proto.h#21 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_syscall.h#20 integrate .. //depot/projects/arm/src/sys/i386/linux/linux_sysent.c#20 integrate .. //depot/projects/arm/src/sys/i386/linux/syscalls.master#20 integrate .. //depot/projects/arm/src/sys/i4b/capi/iavc/iavc_isa.c#3 integrate .. //depot/projects/arm/src/sys/i4b/capi/iavc/iavc_pci.c#3 integrate .. //depot/projects/arm/src/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/ifpi2/i4b_ifpi2_pci.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/ifpnp/i4b_ifpnp_avm.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/ihfc/i4b_ihfc_pnp.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_avm_a1.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_elsa_pcc16.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_elsa_qs1p.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_isic_pnp.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_itk_ix1.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_tel_s016.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_tel_s0163.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_tel_s08.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/isic/i4b_usr_sti.c#2 integrate .. //depot/projects/arm/src/sys/i4b/layer1/itjc/i4b_itjc_pci.c#5 integrate .. //depot/projects/arm/src/sys/i4b/layer1/iwic/i4b_iwic_pci.c#3 integrate .. //depot/projects/arm/src/sys/ia64/conf/DEFAULTS#7 integrate .. //depot/projects/arm/src/sys/ia64/conf/GENERIC#12 integrate .. //depot/projects/arm/src/sys/ia64/ia64/busdma_machdep.c#5 integrate .. //depot/projects/arm/src/sys/ia64/ia64/interrupt.c#6 integrate .. //depot/projects/arm/src/sys/ia64/ia64/nexus.c#6 integrate .. //depot/projects/arm/src/sys/ia64/ia64/pmap.c#12 integrate .. //depot/projects/arm/src/sys/ia64/ia64/trap.c#9 integrate .. //depot/projects/arm/src/sys/ia64/ia64/uma_machdep.c#2 integrate .. //depot/projects/arm/src/sys/ia64/include/intr.h#2 integrate .. //depot/projects/arm/src/sys/ia64/isa/isa.c#2 integrate .. //depot/projects/arm/src/sys/isa/isa_common.h#3 integrate .. //depot/projects/arm/src/sys/isa/syscons_isa.c#4 integrate .. //depot/projects/arm/src/sys/isofs/cd9660/TODO#2 delete .. //depot/projects/arm/src/sys/isofs/cd9660/TODO.hibler#2 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_bmap.c#2 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_iconv.c#2 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_lookup.c#3 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_mount.h#2 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_node.c#4 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_node.h#6 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_rrip.c#3 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_rrip.h#2 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_util.c#2 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_vfsops.c#8 delete .. //depot/projects/arm/src/sys/isofs/cd9660/cd9660_vnops.c#6 delete .. //depot/projects/arm/src/sys/isofs/cd9660/iso.h#4 delete .. //depot/projects/arm/src/sys/isofs/cd9660/iso_rrip.h#2 delete .. //depot/projects/arm/src/sys/kern/Make.tags.inc#3 integrate .. //depot/projects/arm/src/sys/kern/bus_if.m#8 integrate .. //depot/projects/arm/src/sys/kern/kern_acct.c#13 integrate .. //depot/projects/arm/src/sys/kern/kern_acl.c#6 delete .. //depot/projects/arm/src/sys/kern/kern_alq.c#6 integrate .. //depot/projects/arm/src/sys/kern/kern_clock.c#12 integrate .. //depot/projects/arm/src/sys/kern/kern_context.c#2 integrate .. //depot/projects/arm/src/sys/kern/kern_descrip.c#17 integrate .. //depot/projects/arm/src/sys/kern/kern_environment.c#9 integrate .. //depot/projects/arm/src/sys/kern/kern_event.c#11 integrate .. //depot/projects/arm/src/sys/kern/kern_exec.c#15 integrate .. //depot/projects/arm/src/sys/kern/kern_exit.c#20 integrate .. //depot/projects/arm/src/sys/kern/kern_fork.c#16 integrate .. //depot/projects/arm/src/sys/kern/kern_intr.c#11 integrate .. //depot/projects/arm/src/sys/kern/kern_jail.c#6 integrate .. //depot/projects/arm/src/sys/kern/kern_kse.c#11 integrate .. //depot/projects/arm/src/sys/kern/kern_ktrace.c#12 integrate .. //depot/projects/arm/src/sys/kern/kern_linker.c#10 integrate .. //depot/projects/arm/src/sys/kern/kern_lock.c#9 integrate .. //depot/projects/arm/src/sys/kern/kern_module.c#6 integrate .. //depot/projects/arm/src/sys/kern/kern_mutex.c#12 integrate .. //depot/projects/arm/src/sys/kern/kern_ntptime.c#6 integrate .. //depot/projects/arm/src/sys/kern/kern_prot.c#10 integrate .. //depot/projects/arm/src/sys/kern/kern_resource.c#15 integrate .. //depot/projects/arm/src/sys/kern/kern_rwlock.c#7 integrate .. //depot/projects/arm/src/sys/kern/kern_shutdown.c#7 integrate .. //depot/projects/arm/src/sys/kern/kern_sig.c#20 integrate .. //depot/projects/arm/src/sys/kern/kern_switch.c#11 integrate .. //depot/projects/arm/src/sys/kern/kern_sx.c#7 integrate .. //depot/projects/arm/src/sys/kern/kern_synch.c#17 integrate .. //depot/projects/arm/src/sys/kern/kern_sysctl.c#8 integrate .. //depot/projects/arm/src/sys/kern/kern_thread.c#15 integrate .. //depot/projects/arm/src/sys/kern/kern_time.c#14 integrate .. //depot/projects/arm/src/sys/kern/kern_umtx.c#16 integrate .. //depot/projects/arm/src/sys/kern/kern_uuid.c#4 integrate .. //depot/projects/arm/src/sys/kern/kern_xxx.c#3 integrate .. //depot/projects/arm/src/sys/kern/link_elf.c#7 integrate .. //depot/projects/arm/src/sys/kern/p1003_1b.c#2 integrate .. //depot/projects/arm/src/sys/kern/sched_4bsd.c#16 integrate .. //depot/projects/arm/src/sys/kern/sched_core.c#7 integrate .. //depot/projects/arm/src/sys/kern/sched_ule.c#15 integrate .. //depot/projects/arm/src/sys/kern/subr_bus.c#19 integrate .. //depot/projects/arm/src/sys/kern/subr_firmware.c#9 integrate .. //depot/projects/arm/src/sys/kern/subr_lock.c#5 integrate .. //depot/projects/arm/src/sys/kern/subr_prf.c#10 integrate .. //depot/projects/arm/src/sys/kern/subr_prof.c#4 integrate .. //depot/projects/arm/src/sys/kern/subr_rman.c#12 integrate .. //depot/projects/arm/src/sys/kern/subr_smp.c#3 integrate .. //depot/projects/arm/src/sys/kern/subr_trap.c#9 integrate .. //depot/projects/arm/src/sys/kern/subr_witness.c#15 integrate .. //depot/projects/arm/src/sys/kern/sys_generic.c#8 integrate .. //depot/projects/arm/src/sys/kern/sys_pipe.c#8 integrate .. //depot/projects/arm/src/sys/kern/sys_process.c#10 integrate .. //depot/projects/arm/src/sys/kern/sys_socket.c#6 integrate .. //depot/projects/arm/src/sys/kern/sysv_ipc.c#4 integrate .. //depot/projects/arm/src/sys/kern/sysv_msg.c#8 integrate .. //depot/projects/arm/src/sys/kern/sysv_sem.c#8 integrate .. //depot/projects/arm/src/sys/kern/sysv_shm.c#7 integrate .. //depot/projects/arm/src/sys/kern/uipc_debug.c#1 branch .. //depot/projects/arm/src/sys/kern/uipc_mqueue.c#10 integrate .. //depot/projects/arm/src/sys/kern/uipc_sem.c#9 integrate .. //depot/projects/arm/src/sys/kern/uipc_socket.c#32 integrate .. //depot/projects/arm/src/sys/kern/uipc_syscalls.c#20 integrate .. //depot/projects/arm/src/sys/kern/uipc_usrreq.c#22 integrate .. //depot/projects/arm/src/sys/kern/vfs_acl.c#1 branch .. //depot/projects/arm/src/sys/kern/vfs_aio.c#15 integrate .. //depot/projects/arm/src/sys/kern/vfs_bio.c#17 integrate .. //depot/projects/arm/src/sys/kern/vfs_cache.c#6 integrate .. //depot/projects/arm/src/sys/kern/vfs_cluster.c#7 integrate .. //depot/projects/arm/src/sys/kern/vfs_default.c#11 integrate .. //depot/projects/arm/src/sys/kern/vfs_export.c#7 integrate .. //depot/projects/arm/src/sys/kern/vfs_init.c#5 integrate .. //depot/projects/arm/src/sys/kern/vfs_lookup.c#14 integrate .. //depot/projects/arm/src/sys/kern/vfs_mount.c#24 integrate .. //depot/projects/arm/src/sys/kern/vfs_syscalls.c#24 integrate .. //depot/projects/arm/src/sys/kern/vfs_vnops.c#14 integrate .. //depot/projects/arm/src/sys/kern/vnode_if.src#8 integrate .. //depot/projects/arm/src/sys/modules/Makefile#36 integrate .. //depot/projects/arm/src/sys/modules/cd9660/Makefile#2 integrate .. //depot/projects/arm/src/sys/modules/cd9660_iconv/Makefile#2 integrate .. //depot/projects/arm/src/sys/modules/geom/Makefile#5 integrate .. //depot/projects/arm/src/sys/modules/geom/geom_multipath/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ip_mroute_mod/Makefile#3 integrate .. //depot/projects/arm/src/sys/modules/ipwfw/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ipwfw/ipw_bss/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ipwfw/ipw_ibss/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/ipwfw/ipw_monitor/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/iwifw/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/iwifw/iwi_bss/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/iwifw/iwi_ibss/Makefile#1 branch .. //depot/projects/arm/src/sys/modules/iwifw/iwi_monitor/Makefile#1 branch .. //depot/projects/arm/src/sys/net/bpf.c#17 integrate .. //depot/projects/arm/src/sys/net/bpf.h#7 integrate .. //depot/projects/arm/src/sys/net/bpfdesc.h#6 integrate .. //depot/projects/arm/src/sys/net/ethernet.h#7 integrate .. //depot/projects/arm/src/sys/net/if.c#18 integrate .. //depot/projects/arm/src/sys/net/if_bridge.c#30 integrate .. //depot/projects/arm/src/sys/net/if_ethersubr.c#19 integrate .. //depot/projects/arm/src/sys/net/if_loop.c#9 integrate .. //depot/projects/arm/src/sys/net/if_ppp.c#11 integrate .. //depot/projects/arm/src/sys/net/if_vlan_var.h#7 integrate .. //depot/projects/arm/src/sys/net80211/_ieee80211.h#6 integrate .. //depot/projects/arm/src/sys/net80211/ieee80211_freebsd.h#5 integrate .. //depot/projects/arm/src/sys/net80211/ieee80211_input.c#15 integrate .. //depot/projects/arm/src/sys/net80211/ieee80211_ioctl.c#14 integrate .. //depot/projects/arm/src/sys/net80211/ieee80211_node.c#14 integrate .. //depot/projects/arm/src/sys/net80211/ieee80211_proto.c#11 integrate .. //depot/projects/arm/src/sys/net80211/ieee80211_proto.h#7 integrate .. //depot/projects/arm/src/sys/net80211/ieee80211_var.h#13 integrate .. //depot/projects/arm/src/sys/netatalk/at_control.c#4 integrate .. //depot/projects/arm/src/sys/netgraph/bluetooth/drivers/bt3c/ng_bt3c_pccard.c#4 integrate .. //depot/projects/arm/src/sys/netgraph/ng_eiface.c#8 integrate .. //depot/projects/arm/src/sys/netgraph/ng_ksocket.c#6 integrate .. //depot/projects/arm/src/sys/netgraph/ng_source.c#6 integrate .. //depot/projects/arm/src/sys/netgraph/ng_source.h#5 integrate .. //depot/projects/arm/src/sys/netinet/in.h#8 integrate .. //depot/projects/arm/src/sys/netinet/in_pcb.c#17 integrate .. //depot/projects/arm/src/sys/netinet/in_pcb.h#7 integrate .. //depot/projects/arm/src/sys/netinet/in_proto.c#6 integrate .. //depot/projects/arm/src/sys/netinet/ip_mroute.c#11 integrate .. //depot/projects/arm/src/sys/netinet/ip_mroute.h#4 integrate .. //depot/projects/arm/src/sys/netinet/ip_output.c#20 integrate .. //depot/projects/arm/src/sys/netinet/sctp_asconf.c#5 integrate .. //depot/projects/arm/src/sys/netinet/sctp_auth.c#4 integrate .. //depot/projects/arm/src/sys/netinet/sctp_auth.h#2 integrate .. //depot/projects/arm/src/sys/netinet/sctp_constants.h#5 integrate .. //depot/projects/arm/src/sys/netinet/sctp_crc32.c#4 integrate .. //depot/projects/arm/src/sys/netinet/sctp_indata.c#6 integrate .. //depot/projects/arm/src/sys/netinet/sctp_input.c#6 integrate .. //depot/projects/arm/src/sys/netinet/sctp_os.h#4 integrate .. //depot/projects/arm/src/sys/netinet/sctp_os_bsd.h#4 integrate .. //depot/projects/arm/src/sys/netinet/sctp_output.c#6 integrate .. //depot/projects/arm/src/sys/netinet/sctp_pcb.c#6 integrate .. //depot/projects/arm/src/sys/netinet/sctp_peeloff.c#4 integrate .. //depot/projects/arm/src/sys/netinet/sctp_structs.h#6 integrate .. //depot/projects/arm/src/sys/netinet/sctp_timer.c#4 integrate .. //depot/projects/arm/src/sys/netinet/sctp_uio.h#6 integrate .. //depot/projects/arm/src/sys/netinet/sctp_usrreq.c#6 integrate .. //depot/projects/arm/src/sys/netinet/sctp_var.h#4 integrate .. //depot/projects/arm/src/sys/netinet/sctputil.c#6 integrate .. //depot/projects/arm/src/sys/netinet/sctputil.h#6 integrate .. //depot/projects/arm/src/sys/netinet/tcp_input.c#22 integrate .. //depot/projects/arm/src/sys/netinet/tcp_output.c#10 integrate .. //depot/projects/arm/src/sys/netinet/tcp_subr.c#17 integrate .. //depot/projects/arm/src/sys/netinet/tcp_timer.c#9 integrate .. //depot/projects/arm/src/sys/netinet/tcp_timer.h#6 integrate .. //depot/projects/arm/src/sys/netinet/tcp_usrreq.c#14 integrate .. //depot/projects/arm/src/sys/netinet/tcp_var.h#12 integrate .. //depot/projects/arm/src/sys/netinet/udp.h#2 integrate .. //depot/projects/arm/src/sys/netinet/udp_usrreq.c#17 integrate .. //depot/projects/arm/src/sys/netinet/udp_var.h#2 integrate .. //depot/projects/arm/src/sys/netinet6/icmp6.c#10 integrate .. //depot/projects/arm/src/sys/netinet6/in6.c#11 integrate .. //depot/projects/arm/src/sys/netinet6/in6_proto.c#7 integrate .. //depot/projects/arm/src/sys/netinet6/ip6_input.c#9 integrate .. //depot/projects/arm/src/sys/netinet6/ip6_mroute.c#8 integrate .. //depot/projects/arm/src/sys/netinet6/ip6_mroute.h#4 integrate .. //depot/projects/arm/src/sys/netinet6/ip6_var.h#3 integrate .. //depot/projects/arm/src/sys/netinet6/raw_ip6.c#7 integrate .. //depot/projects/arm/src/sys/netinet6/sctp6_usrreq.c#6 integrate .. //depot/projects/arm/src/sys/netinet6/udp6_usrreq.c#12 integrate .. //depot/projects/arm/src/sys/netipx/ipx_ip.c#6 integrate .. //depot/projects/arm/src/sys/netipx/ipx_ip.h#4 integrate .. //depot/projects/arm/src/sys/netncp/ncp_sock.c#4 integrate .. //depot/projects/arm/src/sys/netsmb/smb_dev.c#4 integrate .. //depot/projects/arm/src/sys/nfsclient/bootp_subr.c#6 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_socket.c#18 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_subs.c#7 integrate .. //depot/projects/arm/src/sys/nfsclient/nfs_vnops.c#16 integrate .. //depot/projects/arm/src/sys/nfsclient/nfsnode.h#6 integrate .. //depot/projects/arm/src/sys/nfsserver/nfs_serv.c#12 integrate .. //depot/projects/arm/src/sys/nfsserver/nfs_syscalls.c#8 integrate .. //depot/projects/arm/src/sys/pc98/cbus/clock.c#5 integrate .. //depot/projects/arm/src/sys/pc98/cbus/fdc.c#7 integrate .. //depot/projects/arm/src/sys/pc98/cbus/olpt.c#3 integrate .. //depot/projects/arm/src/sys/pc98/cbus/pckbd.c#4 integrate .. //depot/projects/arm/src/sys/pc98/cbus/sio.c#6 integrate .. //depot/projects/arm/src/sys/pc98/cbus/syscons_cbus.c#3 integrate .. //depot/projects/arm/src/sys/pc98/conf/GENERIC#11 integrate .. //depot/projects/arm/src/sys/pci/if_mn.c#4 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Mar 9 10:57:46 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9237C16A405; Fri, 9 Mar 2007 10:57:46 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 6848016A403 for ; Fri, 9 Mar 2007 10:57:46 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 4F41E13C491 for ; Fri, 9 Mar 2007 10:57:46 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29Avkld008994 for ; Fri, 9 Mar 2007 10:57:46 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29Avj42008991 for perforce@freebsd.org; Fri, 9 Mar 2007 10:57:45 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 10:57:45 GMT Message-Id: <200703091057.l29Avj42008991@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115591 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 10:57:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=115591 Change 115591 by piso@piso_newluxor on 2007/03/09 10:56:46 IFC@115590 Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/trap.c#8 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-all.h#4 integrate .. //depot/projects/soc2006/intr_filter/dev/ata/ata-chipset.c#13 integrate .. //depot/projects/soc2006/intr_filter/dev/bge/if_bge.c#14 integrate .. //depot/projects/soc2006/intr_filter/dev/bge/if_bgereg.h#12 integrate .. //depot/projects/soc2006/intr_filter/dev/mxge/eth_z8e.dat.gz.uu#3 integrate .. //depot/projects/soc2006/intr_filter/dev/mxge/ethp_z8e.dat.gz.uu#3 integrate .. //depot/projects/soc2006/intr_filter/dev/sound/pci/maestro3.c#3 integrate .. //depot/projects/soc2006/intr_filter/i386/i386/trap.c#7 integrate .. //depot/projects/soc2006/intr_filter/ia64/ia64/trap.c#6 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_jail.c#8 integrate .. //depot/projects/soc2006/intr_filter/kern/kern_thread.c#7 integrate .. //depot/projects/soc2006/intr_filter/netgraph/ng_eiface.c#3 integrate .. //depot/projects/soc2006/intr_filter/netinet/udp_usrreq.c#8 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_socket.c#9 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_subs.c#3 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfs_vnops.c#7 integrate .. //depot/projects/soc2006/intr_filter/nfsclient/nfsnode.h#3 integrate .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/trap.c#5 integrate .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/trap.c#4 integrate .. //depot/projects/soc2006/intr_filter/sun4v/sun4v/hcall.S#4 integrate .. //depot/projects/soc2006/intr_filter/sys/proc.h#9 integrate Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/trap.c#8 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.313 2006/12/17 06:48:39 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.314 2007/03/09 04:02:36 mohans Exp $"); /* * AMD64 Trap and System call handling @@ -813,6 +813,8 @@ CTR4(KTR_SYSC, "syscall enter thread %p pid %d proc %s code %d", td, td->td_proc->p_pid, td->td_proc->p_comm, code); + td->td_syscalls++; + if (error == 0) { td->td_retval[0] = 0; td->td_retval[1] = frame->tf_rdx; ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-all.h#4 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.120 2007/02/21 19:07:18 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.121 2007/03/08 16:39:25 sos Exp $ */ /* ATA register defines */ @@ -491,6 +491,7 @@ #define ATA_ATA_SLAVE 0x02 #define ATA_ATAPI_MASTER 0x04 #define ATA_ATAPI_SLAVE 0x08 +#define ATA_PORTMULTIPLIER 0x10 struct mtx state_mtx; /* state lock */ int state; /* ATA channel state */ ==== //depot/projects/soc2006/intr_filter/dev/ata/ata-chipset.c#13 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.186 2007/03/01 21:18:27 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.188 2007/03/08 20:21:42 sos Exp $"); #include "opt_ata.h" #include @@ -55,10 +55,11 @@ static int ata_generic_chipinit(device_t dev); static void ata_generic_intr(void *data); static void ata_generic_setmode(device_t dev, int mode); -static void ata_sata_phy_reset(device_t dev); +static int ata_sata_phy_reset(device_t dev); static void ata_sata_phy_event(void *context, int dummy); static int ata_sata_connect(struct ata_channel *ch); static void ata_sata_setmode(device_t dev, int mode); +static int ata_request2fis_h2d(struct ata_request *request, u_int8_t *fis); static int ata_ahci_chipinit(device_t dev); static int ata_ahci_allocate(device_t dev); static int ata_ahci_status(device_t dev); @@ -97,6 +98,7 @@ static int ata_intel_31244_allocate(device_t dev); static int ata_intel_31244_status(device_t dev); static int ata_intel_31244_command(struct ata_request *request); +static void ata_intel_31244_reset(device_t dev); static int ata_ite_chipinit(device_t dev); static void ata_ite_setmode(device_t dev, int mode); static int ata_jmicron_chipinit(device_t dev); @@ -122,6 +124,7 @@ static int ata_nvidia_chipinit(device_t dev); static int ata_nvidia_allocate(device_t dev); static int ata_nvidia_status(device_t dev); +static void ata_nvidia_reset(device_t dev); static int ata_promise_chipinit(device_t dev); static int ata_promise_allocate(device_t dev); static int ata_promise_status(device_t dev); @@ -157,6 +160,7 @@ static void ata_sii_setmode(device_t dev, int mode); static int ata_sis_chipinit(device_t dev); static int ata_sis_allocate(device_t dev); +static void ata_sis_reset(device_t dev); static void ata_sis_setmode(device_t dev, int mode); static int ata_via_chipinit(device_t dev); static int ata_via_allocate(device_t dev); @@ -227,39 +231,6 @@ * SATA support functions */ static void -ata_sata_phy_reset(device_t dev) -{ - struct ata_channel *ch = device_get_softc(dev); - int loop, retry; - - if ((ATA_IDX_INL(ch, ATA_SCONTROL) & ATA_SC_DET_MASK) == ATA_SC_DET_IDLE) { - ata_sata_connect(ch); - return; - } - - for (retry = 0; retry < 10; retry++) { - for (loop = 0; loop < 10; loop++) { - ATA_IDX_OUTL(ch, ATA_SCONTROL, ATA_SC_DET_RESET); - ata_udelay(100); - if ((ATA_IDX_INL(ch, ATA_SCONTROL) & - ATA_SC_DET_MASK) == ATA_SC_DET_RESET) - break; - } - ata_udelay(5000); - for (loop = 0; loop < 10; loop++) { - ATA_IDX_OUTL(ch, ATA_SCONTROL, ATA_SC_DET_IDLE | - ATA_SC_IPM_DIS_PARTIAL | - ATA_SC_IPM_DIS_SLUMBER); - ata_udelay(100); - if ((ATA_IDX_INL(ch, ATA_SCONTROL) & ATA_SC_DET_MASK) == 0) { - ata_sata_connect(ch); - return; - } - } - } -} - -static void ata_sata_phy_event(void *context, int dummy) { struct ata_connect_task *tp = (struct ata_connect_task *)context; @@ -271,7 +242,7 @@ if (tp->action == ATA_C_ATTACH) { if (bootverbose) device_printf(tp->dev, "CONNECTED\n"); - ata_sata_connect(ch); + ATA_RESET(tp->dev); ata_identify(tp->dev); } if (tp->action == ATA_C_DETACH) { @@ -292,6 +263,36 @@ } static int +ata_sata_phy_reset(device_t dev) +{ + struct ata_channel *ch = device_get_softc(dev); + int loop, retry; + + if ((ATA_IDX_INL(ch, ATA_SCONTROL) & ATA_SC_DET_MASK) == ATA_SC_DET_IDLE) + return ata_sata_connect(ch); + + for (retry = 0; retry < 10; retry++) { + for (loop = 0; loop < 10; loop++) { + ATA_IDX_OUTL(ch, ATA_SCONTROL, ATA_SC_DET_RESET); + ata_udelay(100); + if ((ATA_IDX_INL(ch, ATA_SCONTROL) & + ATA_SC_DET_MASK) == ATA_SC_DET_RESET) + break; + } + ata_udelay(5000); + for (loop = 0; loop < 10; loop++) { + ATA_IDX_OUTL(ch, ATA_SCONTROL, ATA_SC_DET_IDLE | + ATA_SC_IPM_DIS_PARTIAL | + ATA_SC_IPM_DIS_SLUMBER); + ata_udelay(100); + if ((ATA_IDX_INL(ch, ATA_SCONTROL) & ATA_SC_DET_MASK) == 0) + return ata_sata_connect(ch); + } + } + return 0; +} + +static int ata_sata_connect(struct ata_channel *ch) { u_int32_t status; @@ -310,37 +311,12 @@ device_printf(ch->dev, "SATA connect status=%08x\n", status); return 0; } + if (bootverbose) + device_printf(ch->dev, "SATA connect time=%dms\n", timeout * 10); /* clear SATA error register */ ATA_IDX_OUTL(ch, ATA_SERROR, ATA_IDX_INL(ch, ATA_SERROR)); - /* poll 31 seconds for device ready */ - /* XXX SOS 10 secs for now as I have little patience */ - for (timeout = 0; timeout < 1000; timeout++) { - if (ATA_IDX_INB(ch, ATA_STATUS) & ATA_S_BUSY) - DELAY(10000); - else - break; - } - if (bootverbose) - device_printf(ch->dev, "SATA connect ready time=%dms\n", timeout * 10); - - /* if we have legacy resources an old fashioned reset might be needed */ - if (ch->r_io[ATA_DATA].res) - ata_generic_reset(ch->dev); - - /* register device type from signature */ - ch->devices = 0; - if (timeout < 1000) { - if ((ATA_IDX_INB(ch, ATA_CYL_LSB) == ATAPI_MAGIC_LSB) && - (ATA_IDX_INB(ch, ATA_CYL_MSB) == ATAPI_MAGIC_MSB)) - ch->devices = ATA_ATAPI_MASTER; - else - ch->devices = ATA_ATA_MASTER; - } - if (bootverbose) - device_printf(ch->dev, "sata_connect devices=0x%b\n", - ch->devices, "\20\3ATAPI_MASTER\1ATA_MASTER"); return 1; } @@ -378,6 +354,49 @@ } } +static int +ata_request2fis_h2d(struct ata_request *request, u_int8_t *fis) +{ + struct ata_device *atadev = device_get_softc(request->dev); + + if (request->flags & ATA_R_ATAPI) { + fis[0] = 0x27; /* host to device */ + fis[1] = 0x80; /* command FIS (note PM goes here) */ + fis[2] = ATA_PACKET_CMD; + if (request->flags & ATA_R_DMA) + fis[3] = ATA_F_DMA; + else { + fis[5] = request->transfersize; + fis[6] = request->transfersize >> 8; + } + fis[7] = ATA_D_LBA | atadev->unit; + fis[15] = ATA_A_4BIT; + return 20; + } + else { + ata_modify_if_48bit(request); + fis[0] = 0x27; /* host to device */ + fis[1] = 0x80; /* command FIS (note PM goes here) */ + fis[2] = request->u.ata.command; + fis[3] = request->u.ata.feature; + fis[4] = request->u.ata.lba; + fis[5] = request->u.ata.lba >> 8; + fis[6] = request->u.ata.lba >> 16; + fis[7] = ATA_D_LBA | atadev->unit; + if (!(atadev->flags & ATA_D_48BIT_ACTIVE)) + fis[7] |= (request->u.ata.lba >> 24 & 0x0f); + fis[8] = request->u.ata.lba >> 24; + fis[9] = request->u.ata.lba >> 32; + fis[10] = request->u.ata.lba >> 40; + fis[11] = request->u.ata.feature >> 8; + fis[12] = request->u.ata.count; + fis[13] = request->u.ata.count >> 8; + fis[15] = ATA_A_4BIT; + return 20; + } + return 0; +} + /* * AHCI v1.x compliant SATA chipset support functions @@ -440,17 +459,6 @@ struct ata_channel *ch = device_get_softc(dev); int offset = ch->unit << 7; - /* setup legacy cruft we need */ - ch->r_io[ATA_DATA].res = NULL; - ch->r_io[ATA_CYL_LSB].res = ctlr->r_res2; - ch->r_io[ATA_CYL_LSB].offset = ATA_AHCI_P_SIG + 2 + offset; - ch->r_io[ATA_CYL_MSB].res = ctlr->r_res2; - ch->r_io[ATA_CYL_MSB].offset = ATA_AHCI_P_SIG + 3 + offset; - ch->r_io[ATA_STATUS].res = ctlr->r_res2; - ch->r_io[ATA_STATUS].offset = ATA_AHCI_P_TFD + offset; - ch->r_io[ATA_ALTSTAT].res = ctlr->r_res2; - ch->r_io[ATA_ALTSTAT].offset = ATA_AHCI_P_TFD + offset; - /* set the SATA resources */ ch->r_io[ATA_SSTATUS].res = ctlr->r_res2; ch->r_io[ATA_SSTATUS].offset = ATA_AHCI_P_SSTS + offset; @@ -495,62 +503,48 @@ { struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(dev)); struct ata_channel *ch = device_get_softc(dev); - struct ata_connect_task *tp; - u_int32_t action, istatus, sstatus, error, issued; + u_int32_t action = ATA_INL(ctlr->r_res2, ATA_AHCI_IS); int offset = ch->unit << 7; int tag = 0; - action = ATA_INL(ctlr->r_res2, ATA_AHCI_IS); if (action & (1 << ch->unit)) { - istatus = ATA_INL(ctlr->r_res2, ATA_AHCI_P_IS + offset); - issued = ATA_INL(ctlr->r_res2, ATA_AHCI_P_CI + offset); - sstatus = ATA_INL(ctlr->r_res2, ATA_AHCI_P_SSTS + offset); - error = ATA_INL(ctlr->r_res2, ATA_AHCI_P_SERR + offset); + u_int32_t istatus = ATA_INL(ctlr->r_res2, ATA_AHCI_P_IS + offset); + u_int32_t status = ATA_IDX_INL(ch, ATA_SSTATUS); + u_int32_t error = ATA_IDX_INL(ch, ATA_SERROR); /* clear interrupt(s) */ - ATA_OUTL(ctlr->r_res2, ATA_AHCI_IS, action); + ATA_OUTL(ctlr->r_res2, ATA_AHCI_IS, action & (1 << ch->unit)); ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_IS + offset, istatus); - ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_SERR + offset, error); + ATA_IDX_OUTL(ch, ATA_SERROR, error); - /* do we have cold connect surprise */ - if (istatus & ATA_AHCI_P_IX_CPD) { - printf("ata_ahci_status status=%08x sstatus=%08x error=%08x\n", - istatus, sstatus, error); - } + if (error) { + struct ata_connect_task *tp; - /* check for and handle connect events */ - if ((istatus & ATA_AHCI_P_IX_PC) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { + /* if we have a connection event deal with it */ + if ((error & ATA_SE_PHY_CHANGED) && + (tp = (struct ata_connect_task *) + malloc(sizeof(struct ata_connect_task), + M_ATA, M_NOWAIT | M_ZERO))) { - if (bootverbose) - device_printf(ch->dev, "CONNECT requested\n"); - tp->action = ATA_C_ATTACH; - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); + if (((status & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN1) || + ((status & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN2)) { + if (bootverbose) + device_printf(ch->dev, "CONNECT requested\n"); + tp->action = ATA_C_ATTACH; + } + else { + if (bootverbose) + device_printf(ch->dev, "DISCONNECT requested\n"); + tp->action = ATA_C_DETACH; + } + tp->dev = ch->dev; + TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); + taskqueue_enqueue(taskqueue_thread, &tp->task); + } } - /* check for and handle disconnect events */ - else if ((istatus & ATA_AHCI_P_IX_PRC) && - !((sstatus & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN1 || - (sstatus & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN2) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { - - if (bootverbose) - device_printf(ch->dev, "DISCONNECT requested\n"); - tp->action = ATA_C_DETACH; - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); - } - /* do we have any device action ? */ - if (!(issued & (1 << tag))) - return 1; + return (!(ATA_INL(ctlr->r_res2, ATA_AHCI_P_CI + offset) & (1 << tag))); } return 0; } @@ -667,8 +661,9 @@ if (!(ATA_INL(ctlr->r_res2, ATA_AHCI_PI) & (1 << ch->unit))) { device_printf(dev, "port not implemented\n"); - ch->devices = 0; + return; } + ch->devices = 0; /* kill off all activity on this channel */ cmd = ATA_INL(ctlr->r_res2, ATA_AHCI_P_CMD + offset); @@ -704,12 +699,22 @@ ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_CMD + offset, ATA_AHCI_P_CMD_SUD); /* enable interface */ - ata_sata_phy_reset(dev); - - /* no ATAPI yet */ - if (ch->devices & ATA_ATAPI_MASTER) { - device_printf(ch->dev, "AHCI SATA ATAPI devices not supported yet\n"); - ch->devices = 0; + if (ata_sata_phy_reset(dev)) { + switch (ATA_INL(ctlr->r_res2, ATA_AHCI_P_SIG + offset)) { + case 0xeb140101: + ch->devices = ATA_ATAPI_MASTER; + device_printf(ch->dev, "SATA ATAPI devices not supported yet\n"); + ch->devices = 0; + break; + case 0x96690101: + ch->devices = ATA_PORTMULTIPLIER; + device_printf(ch->dev, "Portmultipliers not supported yet\n"); + ch->devices = 0; + break; + case 0x00000101: + ch->devices = ATA_ATA_MASTER; + break; + } } /* clear any interrupts pending on this channel */ @@ -754,47 +759,12 @@ static int ata_ahci_setup_fis(struct ata_ahci_cmd_tab *ctp, struct ata_request *request) { - struct ata_device *atadev = device_get_softc(request->dev); - bzero(ctp->cfis, 64); if (request->flags & ATA_R_ATAPI) { - ctp->cfis[0] = 0x27; /* host to device */ - ctp->cfis[1] = 0x80; /* command FIS (note PM goes here) */ - ctp->cfis[2] = ATA_PACKET_CMD; - if (request->flags & ATA_R_DMA) - ctp->cfis[3] = ATA_F_DMA; - else { - ctp->cfis[5] = request->transfersize; - ctp->cfis[6] = request->transfersize >> 8; - } - ctp->cfis[7] = ATA_D_LBA | atadev->unit; - ctp->cfis[15] = ATA_A_4BIT; bzero(ctp->acmd, 32); bcopy(request->u.atapi.ccb, ctp->acmd, 12); - return 20; } - else { - ata_modify_if_48bit(request); - ctp->cfis[0] = 0x27; /* host to device */ - ctp->cfis[1] = 0x80; /* command FIS (note PM goes here) */ - ctp->cfis[2] = request->u.ata.command; - ctp->cfis[3] = request->u.ata.feature; - ctp->cfis[4] = request->u.ata.lba; - ctp->cfis[5] = request->u.ata.lba >> 8; - ctp->cfis[6] = request->u.ata.lba >> 16; - ctp->cfis[7] = ATA_D_LBA | atadev->unit; - if (!(atadev->flags & ATA_D_48BIT_ACTIVE)) - ctp->cfis[7] |= (request->u.ata.lba >> 24 & 0x0f); - ctp->cfis[8] = request->u.ata.lba >> 24; - ctp->cfis[9] = request->u.ata.lba >> 32; - ctp->cfis[10] = request->u.ata.lba >> 40; - ctp->cfis[11] = request->u.ata.feature >> 8; - ctp->cfis[12] = request->u.ata.count; - ctp->cfis[13] = request->u.ata.count >> 8; - ctp->cfis[15] = ATA_A_4BIT; - return 20; - } - return 0; + return ata_request2fis_h2d(request, &ctp->cfis[0]); } @@ -1362,6 +1332,7 @@ } } + /* * Cyrix chipset support functions */ @@ -1751,7 +1722,7 @@ return ENXIO; ctlr->channels = 4; ctlr->allocate = ata_intel_31244_allocate; - ctlr->reset = ata_sata_phy_reset; + ctlr->reset = ata_intel_31244_reset; } ctlr->setmode = ata_sata_setmode; } @@ -2042,6 +2013,13 @@ return 0; } +static void +ata_intel_31244_reset(device_t dev) +{ + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); +} + /* * Integrated Technology Express Inc. (ITE) chipset support functions @@ -2694,9 +2672,6 @@ u_int32_t rsp_in, rsp_out; int slot; - /* unload SG list */ - ch->dma->unload(ch->dev); - /* stop timeout */ callout_stop(&request->callout); @@ -2720,6 +2695,10 @@ if (!(request->status & ATA_S_ERROR) && !(request->flags & ATA_R_TIMEOUT)) request->donecount = request->bytecount; + + /* unload SG list */ + ch->dma->unload(ch->dev); + res = ATA_OP_FINISHED; } @@ -2754,7 +2733,8 @@ ATA_OUTL(ctlr->r_res1, 0x0200c + ATA_MV_EDMA_BASE(ch), ~0x0); /* enable channel and test for devices */ - ata_sata_phy_reset(dev); + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); /* enable EDMA machinery */ ATA_OUTL(ctlr->r_res1, 0x02028 + ATA_MV_EDMA_BASE(ch), 0x00000001); @@ -2773,8 +2753,8 @@ for (i = 0; i < nsegs; i++) { prd[i].addrlo = htole32(segs[i].ds_addr); - prd[i].addrhi = 0; prd[i].count = htole32(segs[i].ds_len); + prd[i].addrhi = htole32((u_int64_t)segs[i].ds_addr >> 32); } prd[i - 1].count |= htole32(ATA_DMA_EOT); } @@ -2866,6 +2846,7 @@ } } + /* * NetCell chipset support functions */ @@ -2909,6 +2890,7 @@ return 0; } + /* * nVidia chipset support functions */ @@ -2971,7 +2953,7 @@ int offset = ctlr->chip->cfg2 & NV4 ? 0x0440 : 0x0010; ctlr->allocate = ata_nvidia_allocate; - ctlr->reset = ata_sata_phy_reset; + ctlr->reset = ata_nvidia_reset; /* enable control access */ pci_write_config(dev, 0x50, pci_read_config(dev, 0x50, 1) | 0x04,1); @@ -3086,6 +3068,13 @@ return (status & (0x01 << shift)); } +static void +ata_nvidia_reset(device_t dev) +{ + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); +} + /* * Promise chipset support functions @@ -3755,7 +3744,8 @@ if ((ctlr->chip->cfg2 == PRSATA) || ((ctlr->chip->cfg2 == PRCMBO) && (ch->unit < 2))) { - ata_sata_phy_reset(dev); + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); /* reset and enable plug/unplug intr */ ATA_OUTL(ctlr->r_res2, 0x06c, (0x00000011 << ch->unit)); @@ -3790,7 +3780,8 @@ (ATA_INL(ctlr->r_res2, 0x414 + (ch->unit << 8)) & ~0x00000003) | 0x00000001); - ata_sata_phy_reset(dev); + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); /* reset and enable plug/unplug intr */ ATA_OUTL(ctlr->r_res2, 0x060, (0x00000011 << ch->unit)); @@ -4527,7 +4518,8 @@ ATA_OUTL(ctlr->r_res2, 0x48, ATA_INL(ctlr->r_res2, 0x48) & ~(0xc0 >> ch->unit)); - ata_sata_phy_reset(dev); + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); /* enable PHY state change interrupt */ ATA_OUTL(ctlr->r_res2, 0x148 + offset, (1 << 16)); @@ -4713,7 +4705,7 @@ if ((ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2, &ctlr->r_rid2, RF_ACTIVE))) { ctlr->allocate = ata_sis_allocate; - ctlr->reset = ata_sata_phy_reset; + ctlr->reset = ata_sis_reset; /* enable PCI interrupt */ pci_write_config(dev, PCIR_COMMAND, @@ -4753,6 +4745,13 @@ } static void +ata_sis_reset(device_t dev) +{ + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); +} + +static void ata_sis_setmode(device_t dev, int mode) { device_t gparent = GRANDPARENT(dev); @@ -5008,9 +5007,10 @@ struct ata_channel *ch = device_get_softc(dev); if ((ctlr->chip->cfg2 & VIABAR) && (ch->unit > 1)) - ata_generic_reset(dev); + ata_generic_reset(dev); else - ata_sata_phy_reset(dev); + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); } static void ==== //depot/projects/soc2006/intr_filter/dev/bge/if_bge.c#14 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.183 2007/03/08 00:49:26 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.184 2007/03/09 01:30:23 jkim Exp $"); /* * Broadcom BCM570x family gigabit ethernet driver for FreeBSD. @@ -256,6 +256,10 @@ { BGE_CHIPID_BCM5714_B3, "BCM5714 B3" }, { BGE_CHIPID_BCM5715_A0, "BCM5715 A0" }, { BGE_CHIPID_BCM5715_A1, "BCM5715 A1" }, + { BGE_CHIPID_BCM5715_A3, "BCM5715 A3" }, + { BGE_CHIPID_BCM5755_A0, "BCM5755 A0" }, + { BGE_CHIPID_BCM5755_A1, "BCM5755 A1" }, + { BGE_CHIPID_BCM5755_A2, "BCM5755 A2" }, /* 5754 and 5787 share the same ASIC ID */ { BGE_CHIPID_BCM5787_A0, "BCM5754/5787 A0" }, { BGE_CHIPID_BCM5787_A1, "BCM5754/5787 A1" }, ==== //depot/projects/soc2006/intr_filter/dev/bge/if_bgereg.h#12 (text+ko) ==== @@ -30,7 +30,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/bge/if_bgereg.h,v 1.70 2007/02/12 23:58:52 jkim Exp $ + * $FreeBSD: src/sys/dev/bge/if_bgereg.h,v 1.71 2007/03/09 01:30:23 jkim Exp $ */ /* @@ -273,6 +273,7 @@ #define BGE_CHIPID_BCM5714_B3 0x80030000 #define BGE_CHIPID_BCM5715_A0 0x90000000 #define BGE_CHIPID_BCM5715_A1 0x90010000 +#define BGE_CHIPID_BCM5715_A3 0x90030000 #define BGE_CHIPID_BCM5755_A0 0xa0000000 #define BGE_CHIPID_BCM5755_A1 0xa0010000 #define BGE_CHIPID_BCM5755_A2 0xa0020000 ==== //depot/projects/soc2006/intr_filter/dev/mxge/eth_z8e.dat.gz.uu#3 (text+ko) ==== @@ -29,866 +29,986 @@ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -$FreeBSD: src/sys/dev/mxge/eth_z8e.dat.gz.uu,v 1.3 2006/09/15 19:24:45 gallatin Exp $ +$FreeBSD: src/sys/dev/mxge/eth_z8e.dat.gz.uu,v 1.4 2007/03/08 17:49:06 gallatin Exp $ ***************************************************************************/ begin 644 eth_z8e.dat.gz -M'XL("-3I"D4``V5T:%]Z.&4N9&%T`.Q:?6Q45W8_\V:,QQ.6F1@#8V-@,#;8 -MQH`#5H(JLW%WC4I4B"D?K5?0X%3.UDEI,DF\=&"-9WAX*QL1[!(KH0W@62V1 -MVHALJ,I*J43*9/%*J01^1*(J*Z7*K,M:LY%))GC`@_WFW?[.>_/LF?$SR6XB -M]1]&NGKOWGO.N>?KGG/N?4/T#7Z2^YM@/_P]_#W\/?P]_#W\/?S]/_WN2`[Z -M91_1N.ST1NF=^C=?%RJ&;5%R>OF9;G02XU(?.5_U"BU83`YQ3-JHR8*40))\ -M)10<)F<@(1&=.$3.H%\DE<`H#<5'*1@7,46]2YUWR:FHMZGS9?(.=OR6CBP$ -MO2(B^0V1-&EKDJ!@*>/>HJ'3MRAX.ALWN(2\U]`7,KG;3PEMT*>2ZI(V=KQ- -MCN!RDJZU1LBWDGDI:&!>NEX@Y\]^&)'$,=?>\DI:.?D>.*MY&N>#\AY=0F -M4A(JG7B!YEY)U)/2I1'34_;7XWD7,*/D>X5HA`IJ^T$G:M"TC2H\Q#GM<7BE$!'H[B.;!0Q%;T4Q'@/<#OB-HFDXS?B_%U_>2YV!EW]+XA -M1MT!LOD.49Y;)1MD>'8`8RN*=)P+4=IRD7'$HCU?:HOVQ+4W]]P1;^X92[VY -M)Q$\2,[4HCUWA_RZKCQ#?N@J1<[#M\GSS,NPD?H_=/AY\FH%SKBB_A<]TT%" -M*RC(LL&.S7^^B;;]\?0KY-U\LAF]@O( -MEAB374[(Y1B77;NB-M6;EBNAA(FNH-D#Y#!P7)<,^5U3\L.'6A+!-CO3P7@_ -M\*,F_F"@@=QAL@WPNC_;8DO3J#=\\Y'&C/6_DU[_AKG^T?3ZF"MT>\WU']'Y -MO!)@7W^$8,^M#!LE5Q?3PEB1B7_BC0S^VZ?X[P*^"W#U)O^,FR@H;+#R@0FI -MZ$/(][V)8"5-RN3$>\.DJ"31+6U?C6>S()X9+\BKJ?]J4DAFE1?XRY8])+.HQ+>E'O=TLAX93\:T*4SW)HT*VB -M8E^IOZ6F@W'!LBB!&S3O",>(JQC_@.8ER"T*F/8HTPV!UN$TK3#@XCS/M$PZ -M3"/Y72$87E&[&">L%DA]:!?0HN#I#NL7=.*3DZQ;.][MG@GL2UVW*ZTNPS'[N@E=%OM:0S;[&AY79E1(CU"WV'0'N[$F@D46!O40OL?N#*JLZ/O6_"H-L+&GO'F9[3W@4#S@F;P -M]]ZJ$`72_%W7G/;H.O+;,GU*MX'N2[=)Z[;',>9A'V+_>3HAU*$$S]?1TWZ5 -M)F0*[5.=-.1_FU).>T11$S24Z$?_79V_H40KX.)'4MWV"\"]##ZU9_P.^M,\ -M$1_R)YA>$&.I;6TB.OGW1-?:K@&';2`FW3;5[@Z$\JZ-7L38!S3WB%#9;Z^U -MM:(!]Z[JOC;Z`3WC]]/<6T'XJ?B"_5C,"]&VVYH8\E\%S*2`/JYSC-OV_)AX -M^NZXV'8[8DOUV"^D"NP1K<`>U7KL<7',T0)]%>@Z=SGV&?9U/(.Q4L,.#K_H -M=L"''"$EL!^V<^B^+GH)^+]ZZFJLM"ZZZ/0:_CO.>%7,=[HF%\O,TIQBOG"I?KK)CT -M*_[.ZSIQ@&K<"7(.R%JS^XB'D*^* -M^%W(N[H'[I&#\YA6@/4";B%>K:2!5Q#_9*H -M0YTI6M)T<)E01D5$"=RF`5W0^,_%58*5"O19:J_%[%]L0^"(UA/W"MP'D6M5UR7"XL -MC9(WH.=ASH/J9MX;H5GH%TW37^!-T^P3SL*N3H/O9&="Q)AVI/,.W0(,ZHBX -MZ"X,<(Z-')C@L6+XAC#X6E`\)M$BY/]XY-`$C720G6L@\(3Z9\T-YFE,IG?& -MI-V[,388I;5Z'@;.`O1O3,&`!OJW,G!VCTG5[V`LF8TSWYF-,]]K]L'?J.\` -MRU7T:^"'T4+&NO/K9T9\_+A=-R<^V1GX1H$/!P^R##K^1=^_2JQTB"1_P`WZC2=_T -M'1W>\)^8X3]%>Z=@4#X,^A($7<9@TU$EL9E0W[).P^Q3YIKN#L-ON(XUUXS" -M5S@F9_CG+5XKO4;$7`.T;['_Z+4[Z*?QTK8JBF7KHRB9K8\%SDP='H5O1FG^ -M5?9CRWWIM(>#]VEI4!/#\-4S\'L[/R&#O2D)>9WSKO*Y1^FXRS4!P\X'["W` -MO):&Y:-.++0 -M\Z`X`MM$P*\T0@L/LPV&:6$;RX-FP]@/Q#VQ%S;@.(%]NK`?SXC>9&I)]R\` -M;HO`.8+',=8B9!O'L$M8^WB4*LBHIQ+C`YRF.(Z!UU]=I8S[^4X\Y -MH#4@&3E*`Z]G9:T-^:A-.^8)Z^_I.>9#P_J6]*=BT**?IN-86',Z(NGX&X.L -M!<.T*(R^)*1%C3_7XM*'[7K"QOEX4=BB[4?K0.M.]_MU&<9:<7Y9%-904W`? -M[^UBK%PRWP>^Y+/,HC!T$9[5'E.\>O\R@]<+&;PZA\F[-\UK/)M7[UZT2K0& -MM.WI?F8K&I>]/JQ?:MB$Q[`&Z^)+G-$GF_5ZDL=9GSRNH79`OP[S'O:57LWP -MA>S:QKJNX1SU.L!U[N!^QYDJI -MCAN;RF5\'I<-_[E%Q9M8)LXS'+>X7L$9/6Z<#8LS\Q_'K<3%0TD'X_.YW,#W -MJK/%"/`Q%_FM;>@TT9`/=?#I!N3<"6+>AJFX2_?A%R>(WY6./R(%,$9,++XT -MB/4Y)@[Z[^#L"AN_PKY>_+LK'7'FZV+4EO(:-BF.\?ICW84M9UD&EC>QD6$0 -M_[T14]X3"SF>%??E\KIY\YKG6S?Y:@,5`5?FW0YX]QIQL<27GIW3.3CG!_NOB?N@=0KPT,/BG/R_."?_+^[+Z'O0#V?(X+%[R0;_B6'\?7.< -MZR?P&POJ=V,-?`=7.$R+W^9:*TWS5J:>TG+EU#^E.?5/J3=#KH3["/V96]WQ -M`Z[%(%><:R+XB!/U@1?K>OCN;Z2=[$H@1@.%J#4+7$DA%2?P#KN4MD9M$X[< -M&+;]^T^MV=&TS;?_N16Z>2@W%`HTBO4T'O"O8Y<)I- -M',#J..YVPK:S)UFO2RZ9>HVFZ6G=A?"GTAOP:\O8:)E#)'+WRMI- -M14OPNJJ1'UT!(5]N1NZ\:5US+$7]MR1NU'^N`/Q\8H26?HSG))Z_,&E&.IGF -M4IPS;3N95LYX&_QJPJV&FBWFNH1LWV$Q?AJQ>R)*2Z\SCQGC%X4\;Q?#1WD] -MX%C7#J[`J\7D!9_W1VC9\Z@A8P;/RS[(7F>9PYKG9:7@^;XUS\LVZKJ3P+;X5]@"^E]N8YQL&7W=UC;PA6L;^"Y9^XWOACA)5K2X%IADN[`=9NI_ -M^5Q3_U\A0PJPOYCVIS);#IU=UK(LWP]94M:R+.^VEF5Y&#RG9OK2\O+Z/IO02^@<.U9*1S/3$_(SZ2'J0/R/\%:'RH2;9S -MABY6O)R];EF+M2[*`M#%%]:Z*.NWUD79>=XNW]HFU?N2K -M%'EPQG0:<*,,-^I.&O;UO4+.SZGL$]"QB;?VB'EQRF=X)?!%1$&$Y=HK>XT5 -ME=9[#UI,=YL?+-8<3Q[SZ[P3^L;N@%.QO>V![8'VZ#\64/_Y9MS^(A: -MZW]%6K<5NZ#;3ZUU6^&?/6]4'(?\G\[T[XIS!@X=91SC^^3*!0QC^'%%BN?9 -MYS-P;H)6\[2O5]Q(T\BDJ[KC5CZ]LDBGE^!OL]1\EM<\0/0YK7R>X7A\A3?3 -MIU*M-F*X'-II^?-W#J3A&2X'IM_8.RMO9N^=E>>S\QWT#SQ- -MMIW#>SEX^-K^\H"]!'NO>M>P]ZI_R.9K58VUO5VE5@&T=I57G -ML_?2JK[IO83U]+U$C_X^>P&UPJQ[S]Q?7U'$`_T$ -M,?[O?-XV=%7UHVSY*INM=57IAZZ"UKJJ/&ZMJTK4/Q2+F -MYU3U'3W^C^T3\#N+^%\Y'?]+>$]4ZO64&$/\/T7YG`NF.],>U5N_7AZN;L_.P]6M7S\/5U^PMD'U1]8VJ(X:-EA=E&V# -MZN2T#:IBW]0&&MO@``V,T.J/\83^UQS)YF-UF[7^5X>@_P%K_:\^/7NN6/V^ -M?@:4:4`SZMG"G1W1G'IV]2>FKL#3>R-4\[=IWI[+AJMQ&.O8=LYD4-\WUFCYS_P(92D -MRO[0W([SB@7_4OTM@GN&S95BSU?"U -M->%L7UO3.NUK-8X6##?DY\RW6^W5M8!9Z?88.UPYFZW#M/T_K$/Q_.SI21FC= -M84-'M<]F\['.:ZVC=;70D6*MHW5;9]^OZ[#_29D9,]>%@F?T.P%][^U4$4MD -MLT87-H -M\AV?,.&,NXA03NRH]5K;K;;6VFZU6PR[U8:R[5;;DNW?T.OO8;MVGXA;VN_H -MGIO^3EKZ&3VV1*>/_KPC-OY?AB2._LU--]X'9)'LE<3U7EE<5]0[7*?,'Z;: -MVP9_(FGHHO86PX[+CY6:=URSK0U%Z -MK/(!W^V=YK<,P)[/I'/4&(N8W\SP?O4K:)G\)++Y6>]`OALT:*SW/(@&V\GP -M+[;C^LJONAOA.X,1VE!L[*?U.?7'^C;C[LO(,<^HN?ZVOMN=L/*W]6'3WU"S -M,=U?Y\Q'#+_;X!TKR*RCU^OUKR@T]E44<#EXR6R_7-_VH'O$M&S_:LA6EW,N -MV-#X8-DVM%K+MJ$C6[:ZG+N3#7K^'YN10S=<-.LL7QG73W5Y>KTUL$^4^ZSJ -MK0VWINHM'7Z#<18<0+T5SJU[&^B*FEMSU96[3UOQ7U>?CG][Y3E^5%:T5N5^%YS+,4E(CSOYV\[KA69,>7R+^2V"[X!AGR?Y?X/PH468 -M:_VPX[!^OOR-$TO.DG\Y)H\5;*SE;W>B9U,?\$Y'Z?'2!]P?AU+'"J]CG_#_ -M5*1_.W13XN^RG7@_(8N/^!U\".;C/^[+MX[$9?K'D=MAA%Y(0 -MPB:,'SG2+W8T2=AT3=G!??XWJ>N&[%_VNR\/,W2,VUR1/\$4GO342E>0FRH1Z7^'^6P_3$XFYZ7UH'[Q=4XP44=>P"0B[._?SSGR_[+)9 -M4E/[G-M[G_O'/-_O_'[GG7?>>6?FG7=2?T?MZX1_%CP7`"^,RL'X=99_P;2* -MOKGV4Y;Z1:KXQ0T*O/(=/6XPUJD7T]CJCQK6;G^5IQN+[M93&6`%_$5]L],,_";^,3XF(3PZ+;T5\ -M#N*9$M^*^-6(9V'QV1'Q*R+BET?$9T;$9T3$IZOQ8T5\S;CC!X?4>7HFWB_J -M'V(_Z!3MT[CF&8O+U#;,DVTL4]LP3[9Q1GQR6/SELHUE*@R7RS:6L;#X[(CX -M%1'QRR/B,R/B,R+BT]5XV<8?-L[>QA\V*6V$/)NAMH')-F:H;6"RC3/BD\/B -M3;*-&2H,)MG&#!86GQT1OR(B?GE$?&9$?$9$?+H:+]OXH\+9V_BCXDC>E+WL -MUILLCVZU/%DPXVP\'N6\Z6&_E'I?I/-5Q!AX8B?M76>A%-(-%3RP!F%QJ8UP -M_:3C==,_E'/DG9C63XVY;UC)IZ'[-K3'DEL,]H=\/.:QX7%'^B(/2Y7W,1QB -M_6R7O"A]?T+%][Z7X/O>]]J$+)J^PL/2#BGZ?O9VK9AO2:[NIS-PTD43>[LQ -M]PVX_:C'/DGZ9RZJMP_^+'!1TJE%G0-4#WBC72G93OM$/'/.Q'A[Z9)'@SVJUALMU+[A'E@D;H3@3: -MI#L_0<(AZO;&?#L/:R+-"%MB -M)=B5?HXG>IBFC=KX#J,&[24=[F*T21O6)FW04^]`F[1H$_J&X',7?TCS^GRA -M?RSF_NLSH[?O^O71V@>9F$GZN?X'%%^OP$EG!*-LB5_`4V$GVET&WMY(,*NP -M1NLON6ZC\I;JD2\/\)R8!9XSY\?W]>]0?H(%M*0W^B$\`$^`P1FMW@1-AZ9- -M&SV.TWBT2=ULC"6.\D]2%VKIL(?=W$CU>N,, -M'5)?:BE&^FW.D/Y41KR'="W*KEAH3.$/U+ -M77^55I!_172\9SQ^?KQGW$#QA/=S^6&&W`.LO.QYBTW`8248/"RC%S"O0)TN -MM5T>H$#H-\GP@6D^`?H1^N_:'S4;`TR3Y6>DHR1XQ+CC!J;*K=RQ)`Y]?9#J -M.WNMF8T!!WNTP8,$]]G*!0=W7<-T;R]8RPJ^RY(JKM.QC].8EMJB1=G1^/6Z -MS=LV77GE#)ZM$W`X;EC>+O1W;BA5ZZ8RX*\#?@[,OM^PX,95Y23?W7@5W6GD -MEX'_.2Z2^YH!1K*O,0O\%3SB#,ER2*?I:YY@?+*XQF=GUVPA -M7:D;.KL*&?KDQD6BO'TY6M#.(N2[,D;S`8LQZS!7W6B!O"STS,YSQQ'R;D(_ -MZ3.?9)EVJ6MZXYJ9NJ8W8HUW8QUCR]8QEKD0SJ[4L1UU5*EU>!"NCFGPK801 -M=N-^8X6%]FWL2`?YYX9F2HK]B!N'U7$7(;,:AMB-HZ1_#)D5-+S,I.ZGH.R#]4$AGPZ3/C7\A^I1GNT, -MNXQD5;K/@#HZ;`7\3WT%PXSTJ(-Q"2=D?$U"?U@]Q>'U4!LP -MAQ]J.(NUS'9V&?IP..A,.$%W16A.JP++D`H+\5JAPX8T=$>+\E)Z6D]XXQ+ZL_SC7-[A('A3 -M^PENDA="_9'Y'6/%E4I_9*;_]?V16:S"Y&'+2&=<%XVV$BJT3*YI,G_7#:HA -M.)[5!O.?=<#A2W-L:*[B$PKL)[I1)_CJQ&QZN;2.D3KG=$]@NA_L#;*_![$V -M&0`=Z^C."?5]_6E&9P>GLK8OY0BC^W-!NO>#--\0\R#2K,)\W.?[D/(/M'VJ -MMO.F/+6=8]_U*B&`X;!!M2[ -MFV0GE$GRG>UQ]@W2%\P*+.5T+](VRH<@-WEI;J;T[:<%'0V0[$-DM3TI^,J<"]9Q0^0G^/1YF$+K28[%IH-F;O9@OBN6\ -M$-M(.*(U.-:8=$^OD71;Y5VDY2_Q.$,S-VC3&B9!+^"/A6>86)_+?;];5G0U -M@R[H?E+12:2_Q8RY&KQC^4',K\U5)4R/,2CN>X\[;EEWM%3>$Z=[WJ0[ZV&W -M+!;SFM-P@&0;P'0"\]$!J9=*]T-N[J;V<+HO#-D5Z0Z1G!R,,ZARVR&,UUX: -ML_SL)QT8<[2>]B94>""S&)J(;A)\5W#PDGFY?A-3[](0?[+R:XB,:)3Q!N7$6DYW[S[^C>,B_ZI+,>XUC(+;;P]B^W`BX3M4-I -MUT$%SH/CCN60?^=F*_3B5>$&GAJ]!"NM4P"WT6_D[F)_V)VVY2TA'B'+)=Q& -MHY%`$>_%_,7J1QC=*?7&#QGICEQ\GZ\7ZX$`:QL1\YMFE<]KQ/CLI[$=%JYM -M4,8OPA=F;2L9P8@A'IDZ;3CN7HZ'XSU1L6-B>K -M&'E1GQHV[KBU\/QW;-*'7;9[06.W+:*[FP']7-.UPTQC`\]Q%?T!X;?^RNT# -M/PIRR$.W=LX;A:PX2OM,.>&&:]]C^P7K_;_N9IKT[N[^@@`]SZ -M6XHK'^;!W$`'\?'HLB7F`_"X/TI^>MLBF@MH'O@+\);R6L->SLTL6#O?"UBP -MT+2R:TMH_7';:M!,AE+N9TJYI>9,Z$"K:4:XUB#S%80_N'2ZS> -MN/0)N7]F>"-L[RSF4W;[]VGOC.L-52VTIHE+VFEDFR47';F]QQA6M,G^BZRVP'S=T^[-%<=T*1 -M1\3]V]GV8?D^L\&-0C#?)XVP5?=,0GZ9`N^9U#(3QD-\_0*6@K@%(VS%$BR1 -MDN!,WLORXU!N!LGPQT^3K+*B5&!6P1K1L09LT-8`T1MG:H -M7,"29]:[8I$\*U@ES@RV>=DW"JZGNW8KS=P1PR'[:N5=F94:8[.DP02L&8GV -M:!VKK$\@ZQLYU@L=?,JJ%6%8YQ*?%G`H=YD#E=^F\VAQASGW0;FVH7O.'K9" -M[,74/<_BGWJ>F8X_3.U:F2+R:'6,X`TZ:_>9+;D!N\`AP3N]9E3:X3XMRAMTYV%N4]JD -MXEK2UZI+75L.,.H?2@^_WCV*M)_,[!=*@[@?H-Q4VA.A.+EF#:5I07N`J])] -MP)'+-D)M?HE@];"5!]R%?XB^;PL^`+JOZ!/K]E5[5OF#7-ZQS5H>%')GUG+B -M"X*W7$/W*K)N-6ID_U);D#PP+@.\I,Y/TQQM1 -M[@^4^L;BY"_D.,U/WV#%^S;GR+,%*_`KK\4Y)FUG+E;RC<@[/PEQM -M&(W:WACP(`=8-MI#N;;..NAA -M_RCNO',]<(=U.=USI3TS6M_G3C`[R2.^N'0OCTOMEV,C:]`;M\0B\%@CVX)R -M(/^D"IGN0M:XLZ[[U':)MO@9]1=DCECU#LTIEOWTA:ZG/>S.?(G7=*]K`95Q -MY]?%F1#Z`[SADA&6/<1CJSO^NC*76/;071SE_MXI=D<`/-TB9&74!]H(XT%W -M-%$?77.(94@:O*.F3=ZU@BQ]1QIH7JX;IL]B-.(L)IR__E4P&J[K\+`[K"2S -M$[S;_"KON\.JKJ_$OM)VD]AC;A=[KW=,W_\7][,XV?"M%J+1.U>$XR3+'RR7O.:.Y7(M>YZT%^;V!C0DZT50QOF;F;9P.@.FC;7Q[1(-X]_9(U7 -MY1&NC[&332F$F;@C@[YZT*F)]E-)9P;^Q+[B(;(;DV=[@E&<&>M\+>UUEF'Z -M[2OL8?=#S@I\9$T(Q"4>@`SC!Q],PMK&#)DZ*5B3"%DVL4FV^S-E#2WA)O@E -M+U-MX@P68`C,1O:#_O,VNB@.\SJYYL<^`;C_`DS/F-@(?T?C5\ -ML]44C$L\&/S,FH#O`92?B?@F^L+?&/7,[S66AGK>H+V93IM7N_,UEOQ5QS^M -MQ:DKNS3.+]JN7\+V';O%;I0Y?5[(:>!]W>924\///.`CVUM1?]^ -MPN:Y_2NQ%D]A;5C[\#%KXK/HQU!?Q/`^'_)LM9H:]JHRV8]7EH(F+)O$_XI, -M"_DDDR1K]I'$7-9,=,&QLR&W5M8,N@DQ>B5<[/DS3\N!7PF -MQ6:*2;&9D@):TBGQAP.03T6Y6]BBEM/@*9C7;=^C8;[8@XQW-XL]4#W\K.D9IB.=[>X.N2_:A9'?;:9Q_Q.L -M_U=WS[Y.27-=*^;,--=7[2\JB_K];U6>L%7FE+)U,!9ROW?<)??0[A;VW4+R -M]$\^H#@*(QMP&:*?[[:2C*VL57YCF0Z3:Q7:"VB7]X,3QAUW9WA8OFK#S2?O -MC=^]VJ-)FQ5OZOUTL3WJ,[HL/2QY_]R%U -MW\58D2'H@/83A"RK!;_?*^ZPCTI>?UKA]7>_$U;/Z#0?1QUT+YS*E_/@W1U4 -M!\GPDK_?W3';^@#P6PFW067=XA[]2.*VF,52]Y -M;/Q;B/]6$[...W(Z/9I4(0>)^FN79%R+N-LE/+G/2N[4&OK7GZB;3[O'W?<8_&PN_/$ -MWBG\@J9(_JHF6?\CUVZDHSV!W&*6(67%U'[,!:ZP]O\;QFK4O4W(WDSDJ4DE -M.5S':Y9VX`L9,JT'WWB$T]>$KPM?S`%+[$236"N1/*H?B[MN8C;=$J)_VCMP -M5_V$9!D-[6&,L/L.'<=Z@Z3,K7X^:?D&N^@DPKCVWOCR5J:=N5]_+WKIW@RX -M)KANQNY#\'THY;Y#<'GCCGLA_]R3+V6%^\0=G`:2K>/F]\NV+&'PZWGL)U9JA,:AO6SP.$)_[-71TJKB@= -M\NDH71!ER#D6Z5&&FGX:KPO([A'Z"^EV`QY5'P?P3QS-9TR%WX>\P"O&[GTF -M]=Z[VJY*M(?BVH3<=U_*M+T9^"E?PVFQ1T?[G_%4#_PF27OW'9;KA'OM]TM8DV=;4SE/LWE&"_ZOR1]N5D&U:/+2WDAZL -M3?42WW4O]#%W2Y`=GQAFJX+<=8JM6S"9-C[Q7F=N_2[PI;%I^S^[6ZO -M.&>A?W$>3/OVRER9WZ;,E\$2.K.4MEKK+EN^*^!O]S//_7&73=,\E*# -M;8Y^60MWC1E2P8/O3SE:+.GFKRF7VMZFM-W#UHB]MVN;Q3H>_OOS9]V3`1W0 -M_(CYZ`L%%T?4^>BKS[W394_)LA](^EN6#3ZDZ[,1GW^@=,NS"/IP -MI@Y(_IP7-^FXWSOE7,+$_2\ML[L'_GVT/EF2 -M0K@E&6V?Q+V@J3[?N\R]IH>Y_3T8ATM2P*=8$#RJ?(@'!`X@NUG6TIW35`O- -M78I]B^FUQ;B#98^/Y>LA-\9C_=\2V)%C*1OBP96C,5RL4"M\*^?`T2U9E0Z&#<0+_D`,#->G#^Q39;U^8 -M[$>RB["GM]E*^\DS9+\P'JJ[4#ZAXMJO3V53SJ4=O:.,H;^PKLS5`>=-T?I7 -M/8LC.5C=#SJZ2,XA*"_[/#*$/K2WD_>+"U\KK]7+?9$\%V2M)+GF3'-U?S-` -MY=GE65K>H(>ME^M11[G8+^%%GW0TE0A;>(V2UA_\LSAG<1J:CA?3V=DGG6+O -MU\'L^,;3.5E?*2.[HAD-DPS".=.XOGF2M9]ANB'VH(7V$L7]R1'3&N">[)0( -MF0C^;`X>>S941WE)CM"\Q#6$>^?M:C -M[9I@3-H"6_MH:`]\[56A\X.`L@Y>6R?GZ+5U8AUET[9C\)Z?MT_DSR/_ROP_QS5C7\S_I]4_B_#__W*_P+\WZ3\ -M?PW_5RO_2?C_NO+_C1'V4$#YGX__#Y7_2_%_7-G#U9]BZWID.Q]"_^>MDWT\ -M'3;@83_I5O=B/.RA3LJ#54IV2-?5>5BV-2Q-CI+W -M@(=EK0X+7Z&$O^EA^\/;DG&A?"1:WRZ*9WG1PC7-T<-I/4TVI,3YM-"#>'@) -MW=4T5GO_)\^>%Y%$;C3NCG"'M#Z\5>Z;7%=EI?>NOE -M&>PHR6`AFT3K_XW&(95#:SUWH;3'1',7AC2RUE?J(0'$;XX+#QO=IE%F\WU6OO46>[S -MG^43]?\+<#\L;$1^(^#4-I*."]DS]1=Q+\:N#N%S5_F\;%7!.-^-N;?/=X;U -M%018^2C93S=RTNLL^X3%DXWAMHU5+ -M>X9DI_$#X$",*;K;A;7606,%`VT_@GGR.H]T2P_.U@XY)A_)D+PMALFQ_D@& -M?X'TIQ[)!']KAGP?]6RZ#&LK/_',3UU:R0_S4X):?06M(^D\@-<:NE_]=$)[ -MO&2([;B4F==,:)'FD7].*"3]]M0.K'.U/]\TH?WU)I?6+_AH?HI8/T#N(%G# -M/1`@'9YXKCR.]SCN?[F;OX#\RVA?HE?R>=*9'M -M,*0WC;#\/<8)IH73N#:0?)#_,LVK:/N^!M;#2:?.6/NW6ACDQ-C&/M]25^YVVAOX!#06 -M:^\Z3?J-&[P\+J:_H(1H9H-7V6]/&7<\6JK.?1XE'&45N`N7NJ0^ZX;?'2\D -M&3:F/P`:0-TZJAMIR+Z5IJ]XJ8OK8_,$39'M-?^'X!%#LKZ:V&S9_@W?H38@ -M'=T9O<+=(LZ,/*2+$#S;R%Q;!'Q7\[C8#CH;P[^87^0:/K93KDMC77(-'TM[ -M#Z:QN%B/Q,N&)RT;L)X&?!*W&[SE?X8?M$Y[";+^1S=V#3.FC*%+1N#/#62@ -M+Q_=2#:?4<8O4(8&7WGV-9U.E@6\K*#RE#HP!C?#:,`BZ]&`-8+"1CC;HFO03>!S":PP> -M*D/1U??9MK/$H-,P!/ZW`/F'P1,_Z!,VZ#Q8CQB&I%V7C>`O!A_I']*9#N@H -M9H0]-BS*(7W!8OXG\('+R$:3>(-#Z`]M_#[AYR3;2/O)1FD;[[$S"LX@`VS, -MRPI@@),M>'S)3^\&(-]52(OU\V/#:MJP>'N$/R/";U'L"UK&'1MSU'U1#WOL -M`,$.VHUZ;Y?V0VG>)%V/4^SQ_;T+&=M-^R)Z0TM"!2M`O\:@;1^2C=F^X5&2 -M\XSZ$4 -M.;178'N.D;VK^>B;(:[]/LU!HR].#L]Q^__`"D#/(^SQ([I2IFLXQ4QTSM/E >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Mar 9 11:45:47 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1495816A416; Fri, 9 Mar 2007 11:45:47 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 9FD8D16A412 for ; Fri, 9 Mar 2007 11:45:46 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 87EB113C48E for ; Fri, 9 Mar 2007 11:45:46 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29BjkXC018017 for ; Fri, 9 Mar 2007 11:45:46 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29Bjkr4018014 for perforce@freebsd.org; Fri, 9 Mar 2007 11:45:46 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 11:45:46 GMT Message-Id: <200703091145.l29Bjkr4018014@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115592 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 11:45:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=115592 Change 115592 by piso@piso_newluxor on 2007/03/09 11:45:31 Remove inclusion of sys/limits.h as we don't need them anymore. Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#27 edit .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#34 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#27 (text+ko) ==== @@ -46,7 +46,6 @@ #include #include #include -#include #include #include #include ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#34 (text+ko) ==== @@ -45,7 +45,6 @@ #include #include #include -#include #include #include #include From owner-p4-projects@FreeBSD.ORG Fri Mar 9 11:56:01 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 100CA16A406; Fri, 9 Mar 2007 11:56:01 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D220316A401 for ; Fri, 9 Mar 2007 11:56:00 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id BA39213C47E for ; Fri, 9 Mar 2007 11:56:00 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29Bu0aK019601 for ; Fri, 9 Mar 2007 11:56:00 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29Bu03V019593 for perforce@freebsd.org; Fri, 9 Mar 2007 11:56:00 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 11:56:00 GMT Message-Id: <200703091156.l29Bu03V019593@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115593 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 11:56:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=115593 Change 115593 by piso@piso_newluxor on 2007/03/09 11:55:59 Remove inclusion of sys/limits.h and expand IA64_NUMI as we don't need it in more than one place. Affected files ... .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#25 edit Differences ... ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#25 (text+ko) ==== @@ -43,7 +43,6 @@ #include #include #include -#include #include #include #include @@ -257,9 +256,8 @@ volatile long *cntp; /* interrupt counter */ }; -#define IA64_NUMI 256 static struct mtx ia64_intrs_lock; -static struct ia64_intr *ia64_intrs[IA64_NUMI]; +static struct ia64_intr *ia64_intrs[256]; extern struct sapic *ia64_sapics[]; extern int ia64_sapic_count; From owner-p4-projects@FreeBSD.ORG Fri Mar 9 12:02:09 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5FD2416A40F; Fri, 9 Mar 2007 12:02:09 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1E80A16A407 for ; Fri, 9 Mar 2007 12:02:09 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 0699013C48E for ; Fri, 9 Mar 2007 12:02:09 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29C285x020693 for ; Fri, 9 Mar 2007 12:02:08 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29C28uL020690 for perforce@freebsd.org; Fri, 9 Mar 2007 12:02:08 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 12:02:08 GMT Message-Id: <200703091202.l29C28uL020690@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115594 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 12:02:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=115594 Change 115594 by piso@piso_newluxor on 2007/03/09 12:01:39 o Remove inclusion of sys/limits.h. o Reduce diff against HEAD. o Remove a stale comment. Affected files ... .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#25 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#25 (text+ko) ==== @@ -70,7 +70,6 @@ #include #include #include -#include #include #include #include @@ -245,7 +244,7 @@ } int -inthand_add(const char *name, int vec, driver_filter_t *filter, +inthand_add(const char *name, int vec, driver_filter_t *filt, void (*handler)(void *), void *arg, int flags, void **cookiep) { struct intr_vector *iv; @@ -278,16 +277,11 @@ } } - errcode = intr_event_add_handler(ie, name, filter, handler, arg, + errcode = intr_event_add_handler(ie, name, filt, handler, arg, intr_priority(flags), flags, cookiep); if (errcode) return (errcode); - /* - * XXX Fast handlers are called from an asm routine(intr_fast), - * instead from intr_execute_handlers: with interrupt filters in - * place, they won't work, to be fixed. - */ intr_setup((handler == NULL) ? PIL_FAST : PIL_ITHREAD, intr_fast, vec, intr_execute_handlers, iv); From owner-p4-projects@FreeBSD.ORG Fri Mar 9 12:10:20 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D421716A407; Fri, 9 Mar 2007 12:10:19 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A4CDE16A405 for ; Fri, 9 Mar 2007 12:10:19 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 8CC7813C4B3 for ; Fri, 9 Mar 2007 12:10:19 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29CAJxY022588 for ; Fri, 9 Mar 2007 12:10:19 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29CAJk3022585 for perforce@freebsd.org; Fri, 9 Mar 2007 12:10:19 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 12:10:19 GMT Message-Id: <200703091210.l29CAJk3022585@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115595 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 12:10:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=115595 Change 115595 by piso@piso_newluxor on 2007/03/09 12:10:01 o Reduce diff against HEAD. o Spacing. Affected files ... .. //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#10 edit Differences ... ==== //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#10 (text+ko) ==== @@ -275,7 +275,6 @@ } SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL); - #if 0 static void intr_execute_handlers(void *cookie) @@ -335,7 +334,7 @@ } int -inthand_add(const char *name, int vec, driver_filter_t *filter, +inthand_add(const char *name, int vec, driver_filter_t *filt, void (*handler)(void *), void *arg, int flags, void **cookiep) { struct intr_vector *iv; @@ -343,7 +342,7 @@ struct intr_event *orphan; int errcode; - if (filter != NULL && handler != NULL) + if (filt != NULL && handler != NULL) return (EINVAL); /* * Work around a race where more than one CPU may be registering @@ -371,13 +370,13 @@ } } - errcode = intr_event_add_handler(ie, name, filter, handler, arg, + errcode = intr_event_add_handler(ie, name, filt, handler, arg, intr_priority(flags), flags, cookiep); if (errcode) return (errcode); - intr_setup((handler == NULL) ? PIL_FAST : PIL_ITHREAD, intr_fast, vec, - intr_execute_handlers, iv); + intr_setup((handler == NULL) ? PIL_FAST : PIL_ITHREAD, intr_fast, + vec, intr_execute_handlers, iv); intr_stray_count[vec] = 0; From owner-p4-projects@FreeBSD.ORG Fri Mar 9 13:21:51 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BA85916A405; Fri, 9 Mar 2007 13:21:50 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 60F4916A400 for ; Fri, 9 Mar 2007 13:21:50 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 3C77C13C481 for ; Fri, 9 Mar 2007 13:21:50 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29DLoeB044147 for ; Fri, 9 Mar 2007 13:21:50 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29DLoro044144 for perforce@freebsd.org; Fri, 9 Mar 2007 13:21:50 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 13:21:50 GMT Message-Id: <200703091321.l29DLoro044144@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115598 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 13:21:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=115598 Change 115598 by piso@piso_newluxor on 2007/03/09 13:21:09 Bring back old MD interrupt handling code, merge it with new interrupt filtering code, and appropriately #ifdef ... #endif both worlds. Affected files ... .. //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#35 edit Differences ... ==== //depot/projects/soc2006/intr_filter/i386/i386/intr_machdep.c#35 (text+ko) ==== @@ -65,9 +65,11 @@ static struct mtx intr_table_lock; static STAILQ_HEAD(, pic) pics; +#ifdef INTR_FILTER static void intr_eoi_src(void *arg); static void intr_disab_eoi_src(void *arg); static void intr_event_stray(void *cookie); +#endif #ifdef SMP static int assign_cpu; @@ -129,9 +131,14 @@ vector = isrc->is_pic->pic_vector(isrc); if (interrupt_sources[vector] != NULL) return (EEXIST); +#ifdef INTR_FILTER error = intr_event_create(&isrc->is_event, isrc, 0, (mask_fn)isrc->is_pic->pic_enable_source, intr_eoi_src, intr_disab_eoi_src, "irq%d:", vector); +#else + error = intr_event_create(&isrc->is_event, isrc, 0, + (mask_fn)isrc->is_pic->pic_enable_source, "irq%d:", vector); +#endif if (error) return (error); mtx_lock_spin(&intr_table_lock); @@ -208,6 +215,7 @@ return (isrc->is_pic->pic_config_intr(isrc, trig, pol)); } +#ifdef INTR_FILTER void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) { @@ -277,6 +285,94 @@ isrc = arg; isrc->is_pic->pic_disable_source(isrc, PIC_EOI); } +#else +void +intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) +{ + struct thread *td; + struct intr_event *ie; + struct intr_handler *ih; + int error, vector, thread; + + td = curthread; + + /* + * We count software interrupts when we process them. The + * code here follows previous practice, but there's an + * argument for counting hardware interrupts when they're + * processed too. + */ + (*isrc->is_count)++; + PCPU_LAZY_INC(cnt.v_intr); + + ie = isrc->is_event; + + /* + * XXX: We assume that IRQ 0 is only used for the ISA timer + * device (clk). + */ + vector = isrc->is_pic->pic_vector(isrc); + if (vector == 0) + clkintr_pending = 1; + + /* + * For stray interrupts, mask and EOI the source, bump the + * stray count, and log the condition. + */ + if (ie == NULL || TAILQ_EMPTY(&ie->ie_handlers)) { + isrc->is_pic->pic_disable_source(isrc, PIC_EOI); + (*isrc->is_straycount)++; + if (*isrc->is_straycount < MAX_STRAY_LOG) + log(LOG_ERR, "stray irq%d\n", vector); + else if (*isrc->is_straycount == MAX_STRAY_LOG) + log(LOG_CRIT, + "too many stray irq %d's: not logging anymore\n", + vector); + return; + } + + /* + * Execute fast interrupt handlers directly. + * To support clock handlers, if a handler registers + * with a NULL argument, then we pass it a pointer to + * a trapframe as its argument. + */ + td->td_intr_nesting_level++; + thread = 0; + critical_enter(); + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + if (ih->ih_filter == NULL) { + thread = 1; + continue; + } + CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, + ih->ih_filter, ih->ih_argument == NULL ? frame : + ih->ih_argument, ih->ih_name); + if (ih->ih_argument == NULL) + ih->ih_filter(frame); + else + ih->ih_filter(ih->ih_argument); + } + + /* + * If there are any threaded handlers that need to run, + * mask the source as well as sending it an EOI. Otherwise, + * just send it an EOI but leave it unmasked. + */ + if (thread) + isrc->is_pic->pic_disable_source(isrc, PIC_EOI); + else + isrc->is_pic->pic_eoi_source(isrc); + critical_exit(); + + /* Schedule the ithread if needed. */ + if (thread) { + error = intr_event_schedule_thread(ie); + KASSERT(error == 0, ("bad stray interrupt")); + } + td->td_intr_nesting_level--; +} +#endif void intr_resume(void) From owner-p4-projects@FreeBSD.ORG Fri Mar 9 14:37:38 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4486D16A402; Fri, 9 Mar 2007 14:37:38 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 16C2416A401 for ; Fri, 9 Mar 2007 14:37:38 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id F29BF13C4A7 for ; Fri, 9 Mar 2007 14:37:37 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29EbbE1057813 for ; Fri, 9 Mar 2007 14:37:37 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29EbbW5057810 for perforce@freebsd.org; Fri, 9 Mar 2007 14:37:37 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 14:37:37 GMT Message-Id: <200703091437.l29EbbW5057810@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115603 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 14:37:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=115603 Change 115603 by piso@piso_newluxor on 2007/03/09 14:37:29 o Remove the last vestige of interrupt stray handling. o Style and spacing. o Reduce diff against HEAD. Affected files ... .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#37 edit Differences ... ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#37 (text+ko) ==== @@ -58,9 +58,6 @@ #include #endif -/* MD function */ -extern void intr_callout_reset(void); - /* * Describe an interrupt thread. There is one of these per interrupt event. */ @@ -96,11 +93,12 @@ static void intr_event_update(struct intr_event *ie); static struct intr_thread *ithread_create(const char *name, - struct intr_handler *ih); + struct intr_handler *ih); static void ithread_destroy(struct intr_thread *ithread); -static void ithread_execute_handlers(struct proc *p, struct intr_event *ie); +static void ithread_execute_handlers(struct proc *p, + struct intr_event *ie); static void priv_ithread_execute_handler(struct proc *p, - struct intr_handler *ih); + struct intr_handler *ih); static void ithread_loop(void *); static void ithread_update(struct intr_thread *ithd); static void start_softintr(void *); @@ -718,21 +716,21 @@ continue; /* - * For software interrupt threads, we only execute - * handlers that have their need flag set. Hardware - * interrupt threads always invoke all of their handlers. - */ - if (ie->ie_flags & IE_SOFT) { - if (!ih->ih_need) - continue; - else - atomic_store_rel_int(&ih->ih_need, 0); - } + * For software interrupt threads, we only execute + * handlers that have their need flag set. Hardware + * interrupt threads always invoke all of their handlers. + */ + if (ie->ie_flags & IE_SOFT) { + if (!ih->ih_need) + continue; + else + atomic_store_rel_int(&ih->ih_need, 0); + } /* Execute this handler. */ CTR6(KTR_INTR, "%s: pid %d exec %p(%p) for %s flg=%x", - __func__, p->p_pid, (void *)ih->ih_handler, ih->ih_argument, - ih->ih_name, ih->ih_flags); + __func__, p->p_pid, (void *)ih->ih_handler, + ih->ih_argument, ih->ih_name, ih->ih_flags); if (!(ih->ih_flags & IH_MPSAFE)) mtx_lock(&Giant); From owner-p4-projects@FreeBSD.ORG Fri Mar 9 16:11:45 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7BF6916A474; Fri, 9 Mar 2007 16:11:45 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5612216A420 for ; Fri, 9 Mar 2007 16:11:45 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 435D613C4A7 for ; Fri, 9 Mar 2007 16:11:45 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29GBjqJ075487 for ; Fri, 9 Mar 2007 16:11:45 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29GBipK075479 for perforce@freebsd.org; Fri, 9 Mar 2007 16:11:44 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 16:11:44 GMT Message-Id: <200703091611.l29GBipK075479@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115609 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 16:11:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=115609 Change 115609 by piso@piso_newluxor on 2007/03/09 16:11:39 Bring back the old MI interrupt handling code, merge it with the new interrupt filtering code, and appropriately #ifdef ... #endif both worlds. While here, axe a stale reference to stray_detection() that is no more. Affected files ... .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#38 edit .. //depot/projects/soc2006/intr_filter/sys/interrupt.h#19 edit Differences ... ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#38 (text+ko) ==== @@ -92,13 +92,19 @@ TAILQ_HEAD_INITIALIZER(event_list); static void intr_event_update(struct intr_event *ie); -static struct intr_thread *ithread_create(const char *name, +#ifdef INTR_FILTER +static struct intr_thread *ithread_create(const char *name, struct intr_handler *ih); +#else +static struct intr_thread *ithread_create(const char *name); +#endif static void ithread_destroy(struct intr_thread *ithread); static void ithread_execute_handlers(struct proc *p, struct intr_event *ie); +#ifdef INTR_FILTER static void priv_ithread_execute_handler(struct proc *p, struct intr_handler *ih); +#endif static void ithread_loop(void *); static void ithread_update(struct intr_thread *ithd); static void start_softintr(void *); @@ -231,6 +237,37 @@ CTR2(KTR_INTR, "%s: updated %s", __func__, ie->ie_fullname); } +#ifndef INTR_FILTER +int +intr_event_create(struct intr_event **event, void *source, int flags, + void (*enable)(void *), const char *fmt, ...) +{ + struct intr_event *ie; + va_list ap; + + /* The only valid flag during creation is IE_SOFT. */ + if ((flags & ~IE_SOFT) != 0) + return (EINVAL); + ie = malloc(sizeof(struct intr_event), M_ITHREAD, M_WAITOK | M_ZERO); + ie->ie_source = source; + ie->ie_enable = enable; + ie->ie_flags = flags; + TAILQ_INIT(&ie->ie_handlers); + mtx_init(&ie->ie_lock, "intr event", NULL, MTX_DEF); + + va_start(ap, fmt); + vsnprintf(ie->ie_name, sizeof(ie->ie_name), fmt, ap); + va_end(ap); + strlcpy(ie->ie_fullname, ie->ie_name, sizeof(ie->ie_fullname)); + mtx_pool_lock(mtxpool_sleep, &event_list); + TAILQ_INSERT_TAIL(&event_list, ie, ie_list); + mtx_pool_unlock(mtxpool_sleep, &event_list); + if (event != NULL) + *event = ie; + CTR2(KTR_INTR, "%s: created %s", __func__, ie->ie_name); + return (0); +} +#else int intr_event_create(struct intr_event **event, void *source, int flags, void (*enable)(void *), void (*eoi)(void *), void (*disab)(void *), @@ -263,6 +300,7 @@ CTR2(KTR_INTR, "%s: created %s", __func__, ie->ie_name); return (0); } +#endif int intr_event_destroy(struct intr_event *ie) @@ -288,7 +326,33 @@ return (0); } +#ifndef INTR_FILTER static struct intr_thread * +ithread_create(const char *name) +{ + struct intr_thread *ithd; + struct thread *td; + struct proc *p; + int error; + + ithd = malloc(sizeof(struct intr_thread), M_ITHREAD, M_WAITOK | M_ZERO); + + error = kthread_create(ithread_loop, ithd, &p, RFSTOPPED | RFHIGHPID, + 0, "%s", name); + if (error) + panic("kthread_create() failed with %d", error); + td = FIRST_THREAD_IN_PROC(p); /* XXXKSE */ + mtx_lock_spin(&sched_lock); + sched_class(td, PRI_ITHD); + TD_SET_IWAIT(td); + mtx_unlock_spin(&sched_lock); + td->td_pflags |= TDP_ITHREAD; + ithd->it_thread = td; + CTR2(KTR_INTR, "%s: created %s", __func__, name); + return (ithd); +} +#else +static struct intr_thread * ithread_create(const char *name, struct intr_handler *ih) { struct intr_thread *ithd; @@ -312,6 +376,7 @@ CTR2(KTR_INTR, "%s: created %s", __func__, name); return (ithd); } +#endif static void ithread_destroy(struct intr_thread *ithread) @@ -329,6 +394,7 @@ mtx_unlock_spin(&sched_lock); } +#ifndef INTR_FILTER int intr_event_add_handler(struct intr_event *ie, const char *name, driver_filter_t filter, driver_intr_t handler, void *arg, u_char pri, @@ -377,6 +443,79 @@ TAILQ_INSERT_BEFORE(temp_ih, ih, ih_next); intr_event_update(ie); + /* Create a thread if we need one. */ + while (ie->ie_thread == NULL && handler != NULL) { + if (ie->ie_flags & IE_ADDING_THREAD) + msleep(ie, &ie->ie_lock, 0, "ithread", 0); + else { + ie->ie_flags |= IE_ADDING_THREAD; + mtx_unlock(&ie->ie_lock); + it = ithread_create("intr: newborn"); + mtx_lock(&ie->ie_lock); + ie->ie_flags &= ~IE_ADDING_THREAD; + ie->ie_thread = it; + it->it_event = ie; + ithread_update(it); + wakeup(ie); + } + } + CTR3(KTR_INTR, "%s: added %s to %s", __func__, ih->ih_name, + ie->ie_name); + mtx_unlock(&ie->ie_lock); + + if (cookiep != NULL) + *cookiep = ih; + return (0); +} +#else +int +intr_event_add_handler(struct intr_event *ie, const char *name, + driver_filter_t filter, driver_intr_t handler, void *arg, u_char pri, + enum intr_type flags, void **cookiep) +{ + struct intr_handler *ih, *temp_ih; + struct intr_thread *it; + + if (ie == NULL || name == NULL || (handler == NULL && filter == NULL)) + return (EINVAL); + + /* Allocate and populate an interrupt handler structure. */ + ih = malloc(sizeof(struct intr_handler), M_ITHREAD, M_WAITOK | M_ZERO); + ih->ih_filter = filter; + ih->ih_handler = handler; + ih->ih_argument = arg; + ih->ih_name = name; + ih->ih_event = ie; + ih->ih_pri = pri; + if (flags & INTR_EXCL) + ih->ih_flags = IH_EXCLUSIVE; + if (flags & INTR_MPSAFE) + ih->ih_flags |= IH_MPSAFE; + if (flags & INTR_ENTROPY) + ih->ih_flags |= IH_ENTROPY; + + /* We can only have one exclusive handler in a event. */ + mtx_lock(&ie->ie_lock); + if (!TAILQ_EMPTY(&ie->ie_handlers)) { + if ((flags & INTR_EXCL) || + (TAILQ_FIRST(&ie->ie_handlers)->ih_flags & IH_EXCLUSIVE)) { + mtx_unlock(&ie->ie_lock); + free(ih, M_ITHREAD); + return (EINVAL); + } + } + + /* Add the new handler to the event in priority order. */ + TAILQ_FOREACH(temp_ih, &ie->ie_handlers, ih_next) { + if (temp_ih->ih_pri > ih->ih_pri) + break; + } + if (temp_ih == NULL) + TAILQ_INSERT_TAIL(&ie->ie_handlers, ih, ih_next); + else + TAILQ_INSERT_BEFORE(temp_ih, ih, ih_next); + intr_event_update(ie); + /* For filtered handlers, create a private ithread to run on. */ if (filter != NULL && handler != NULL) { mtx_unlock(&ie->ie_lock); @@ -410,6 +549,7 @@ *cookiep = ih; return (0); } +#endif /* * Return the ie_source field from the intr_event an intr_handler is @@ -431,11 +571,158 @@ return (ie->ie_source); } +#ifndef INTR_FILTER int intr_event_remove_handler(void *cookie) { struct intr_handler *handler = (struct intr_handler *)cookie; struct intr_event *ie; +#ifdef INVARIANTS + struct intr_handler *ih; +#endif +#ifdef notyet + int dead; +#endif + + if (handler == NULL) + return (EINVAL); + ie = handler->ih_event; + KASSERT(ie != NULL, + ("interrupt handler \"%s\" has a NULL interrupt event", + handler->ih_name)); + mtx_lock(&ie->ie_lock); + CTR3(KTR_INTR, "%s: removing %s from %s", __func__, handler->ih_name, + ie->ie_name); +#ifdef INVARIANTS + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) + if (ih == handler) + goto ok; + mtx_unlock(&ie->ie_lock); + panic("interrupt handler \"%s\" not found in interrupt event \"%s\"", + ih->ih_name, ie->ie_name); +ok: +#endif + /* + * If there is no ithread, then just remove the handler and return. + * XXX: Note that an INTR_FAST handler might be running on another + * CPU! + */ + if (ie->ie_thread == NULL) { + TAILQ_REMOVE(&ie->ie_handlers, handler, ih_next); + mtx_unlock(&ie->ie_lock); + free(handler, M_ITHREAD); + return (0); + } + + /* + * If the interrupt thread is already running, then just mark this + * handler as being dead and let the ithread do the actual removal. + * + * During a cold boot while cold is set, msleep() does not sleep, + * so we have to remove the handler here rather than letting the + * thread do it. + */ + mtx_lock_spin(&sched_lock); + if (!TD_AWAITING_INTR(ie->ie_thread->it_thread) && !cold) { + handler->ih_flags |= IH_DEAD; + + /* + * Ensure that the thread will process the handler list + * again and remove this handler if it has already passed + * it on the list. + */ + ie->ie_thread->it_need = 1; + } else + TAILQ_REMOVE(&ie->ie_handlers, handler, ih_next); + mtx_unlock_spin(&sched_lock); + while (handler->ih_flags & IH_DEAD) + msleep(handler, &ie->ie_lock, 0, "iev_rmh", 0); + intr_event_update(ie); +#ifdef notyet + /* + * XXX: This could be bad in the case of ppbus(8). Also, I think + * this could lead to races of stale data when servicing an + * interrupt. + */ + dead = 1; + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + if (!(ih->ih_flags & IH_FAST)) { + dead = 0; + break; + } + } + if (dead) { + ithread_destroy(ie->ie_thread); + ie->ie_thread = NULL; + } +#endif + mtx_unlock(&ie->ie_lock); + free(handler, M_ITHREAD); + return (0); +} + +int +intr_event_schedule_thread(struct intr_event *ie) +{ + struct intr_entropy entropy; + struct intr_thread *it; + struct thread *td; + struct thread *ctd; + struct proc *p; + + /* + * If no ithread or no handlers, then we have a stray interrupt. + */ + if (ie == NULL || TAILQ_EMPTY(&ie->ie_handlers) || + ie->ie_thread == NULL) + return (EINVAL); + + ctd = curthread; + it = ie->ie_thread; + td = it->it_thread; + p = td->td_proc; + + /* + * If any of the handlers for this ithread claim to be good + * sources of entropy, then gather some. + */ + if (harvest.interrupt && ie->ie_flags & IE_ENTROPY) { + CTR3(KTR_INTR, "%s: pid %d (%s) gathering entropy", __func__, + p->p_pid, p->p_comm); + entropy.event = (uintptr_t)ie; + entropy.td = ctd; + random_harvest(&entropy, sizeof(entropy), 2, 0, + RANDOM_INTERRUPT); + } + + KASSERT(p != NULL, ("ithread %s has no process", ie->ie_name)); + + /* + * Set it_need to tell the thread to keep running if it is already + * running. Then, grab sched_lock and see if we actually need to + * put this thread on the runqueue. + */ + it->it_need = 1; + mtx_lock_spin(&sched_lock); + if (TD_AWAITING_INTR(td)) { + CTR3(KTR_INTR, "%s: schedule pid %d (%s)", __func__, p->p_pid, + p->p_comm); + TD_CLR_IWAIT(td); + sched_add(td, SRQ_INTR); + } else { + CTR5(KTR_INTR, "%s: pid %d (%s): it_need %d, state %d", + __func__, p->p_pid, p->p_comm, it->it_need, td->td_state); + } + mtx_unlock_spin(&sched_lock); + + return (0); +} +#else +int +intr_event_remove_handler(void *cookie) +{ + struct intr_handler *handler = (struct intr_handler *)cookie; + struct intr_event *ie; struct intr_thread *it; #ifdef INVARIANTS struct intr_handler *ih; @@ -584,6 +871,7 @@ return (0); } +#endif /* * Add a software interrupt handler to a specified event. If a given event @@ -657,6 +945,7 @@ return (intr_event_remove_handler(cookie)); } +#ifdef INTR_FILTER static void priv_ithread_execute_handler(struct proc *p, struct intr_handler *ih) { @@ -687,6 +976,7 @@ if (!(ih->ih_flags & IH_MPSAFE)) mtx_unlock(&Giant); } +#endif static void ithread_execute_handlers(struct proc *p, struct intr_event *ie) @@ -771,6 +1061,74 @@ ie->ie_enable(ie->ie_source); } +#ifndef INTR_FILTER +/* + * This is the main code for interrupt threads. + */ +static void +ithread_loop(void *arg) +{ + struct intr_thread *ithd; + struct intr_event *ie; + struct thread *td; + struct proc *p; + + td = curthread; + p = td->td_proc; + ithd = (struct intr_thread *)arg; + KASSERT(ithd->it_thread == td, + ("%s: ithread and proc linkage out of sync", __func__)); + ie = ithd->it_event; + ie->ie_count = 0; + + /* + * As long as we have interrupts outstanding, go through the + * list of handlers, giving each one a go at it. + */ + for (;;) { + /* + * If we are an orphaned thread, then just die. + */ + if (ithd->it_flags & IT_DEAD) { + CTR3(KTR_INTR, "%s: pid %d (%s) exiting", __func__, + p->p_pid, p->p_comm); + free(ithd, M_ITHREAD); + kthread_exit(0); + } + + /* + * Service interrupts. If another interrupt arrives while + * we are running, it will set it_need to note that we + * should make another pass. + */ + while (ithd->it_need) { + /* + * This might need a full read and write barrier + * to make sure that this write posts before any + * of the memory or device accesses in the + * handlers. + */ + atomic_store_rel_int(&ithd->it_need, 0); + ithread_execute_handlers(p, ie); + } + WITNESS_WARN(WARN_PANIC, NULL, "suspending ithread"); + mtx_assert(&Giant, MA_NOTOWNED); + + /* + * Processed all our interrupts. Now get the sched + * lock. This may take a while and it_need may get + * set again, so we have to check it again. + */ + mtx_lock_spin(&sched_lock); + if (!ithd->it_need && !(ithd->it_flags & IT_DEAD)) { + TD_SET_IWAIT(td); + ie->ie_count = 0; + mi_switch(SW_VOL, NULL); + } + mtx_unlock_spin(&sched_lock); + } +} +#else /* * This is the main code for interrupt threads. */ @@ -978,6 +1336,7 @@ td->td_intr_nesting_level--; return (0); } +#endif #ifdef DDB /* ==== //depot/projects/soc2006/intr_filter/sys/interrupt.h#19 (text+ko) ==== @@ -73,8 +73,10 @@ void *ie_source; /* Cookie used by MD code. */ struct intr_thread *ie_thread; /* Thread we are connected to. */ void (*ie_enable)(void *); +#ifdef INTR_FILTER void (*ie_eoi)(void *); void (*ie_disab)(void *); +#endif int ie_flags; int ie_count; /* Loop counter. */ int ie_warned; /* Warned about interrupt storm. */ @@ -115,21 +117,33 @@ #ifdef DDB void db_dump_intr_event(struct intr_event *ie, int handlers); #endif +#ifdef INTR_FILTER int intr_filter_loop(struct intr_event *ie, struct trapframe *frame, struct intr_thread **ithd); -void stray_detection(void *_arg); int intr_event_handle(struct intr_event *ie, struct trapframe *frame); +#endif u_char intr_priority(enum intr_type flags); int intr_event_add_handler(struct intr_event *ie, const char *name, driver_filter_t filter, driver_intr_t handler, void *arg, u_char pri, enum intr_type flags, void **cookiep); +#ifndef INTR_FILTER +int intr_event_create(struct intr_event **event, void *source, + int flags, void (*enable)(void *), const char *fmt, ...) + __printflike(5, 6); +#else int intr_event_create(struct intr_event **event, void *source, int flags, void (*enable)(void *), void (*eoi)(void *), void (*disab)(void *), const char *fmt, ...) __printflike(7, 8); +#endif int intr_event_destroy(struct intr_event *ie); int intr_event_remove_handler(void *cookie); -int intr_event_schedule_thread(struct intr_event *ie, struct intr_thread *ithd); +#ifndef INTR_FILTER +int intr_event_schedule_thread(struct intr_event *ie); +#else +int intr_event_schedule_thread(struct intr_event *ie, + struct intr_thread *ithd); +#endif void *intr_handler_source(void *cookie); int swi_add(struct intr_event **eventp, const char *name, driver_intr_t handler, void *arg, int pri, enum intr_type flags, From owner-p4-projects@FreeBSD.ORG Fri Mar 9 16:13:53 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 405A716A405; Fri, 9 Mar 2007 16:13:53 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 132FF16A402 for ; Fri, 9 Mar 2007 16:13:53 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 013BE13C4A8 for ; Fri, 9 Mar 2007 16:13:53 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29GDmtF076018 for ; Fri, 9 Mar 2007 16:13:48 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29GDmm3076015 for perforce@freebsd.org; Fri, 9 Mar 2007 16:13:48 GMT (envelope-from jhb@freebsd.org) Date: Fri, 9 Mar 2007 16:13:48 GMT Message-Id: <200703091613.l29GDmm3076015@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 Cc: Subject: PERFORCE change 115610 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 16:13:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=115610 Change 115610 by jhb@jhb_zion on 2007/03/09 16:13:46 Use pause(). Affected files ... .. //depot/projects/smpng/sys/modules/crash/crash.c#36 integrate .. //depot/projects/smpng/sys/modules/crash2/crash2.c#20 integrate Differences ... ==== //depot/projects/smpng/sys/modules/crash/crash.c#36 (text+ko) ==== @@ -239,7 +239,7 @@ { rw_init(&baz, "baz"); rw_rlock(&baz); - tsleep(&baz, 0, "-", 1); + pause("-", 1); rw_runlock(&baz); rw_destroy(&baz); } @@ -753,7 +753,7 @@ printf("Should panic\n"); THREAD_NO_SLEEPING(); - tsleep(&test1_mtx, 0, "sleep", 1); + pause("sleep", 1); THREAD_SLEEPING_OK(); } CRASH_EVENT("sleep while sleeping is prohibited", test_no_sleeping); ==== //depot/projects/smpng/sys/modules/crash2/crash2.c#20 (text+ko) ==== @@ -138,7 +138,7 @@ sx_xlock(sxs[thread % 4]); else lockmgr(locks[thread % 4], LK_EXCLUSIVE, NULL, curthread); - tsleep(sxs, 0, "slp_dead", hz/10); + pause("slp_dead", hz/10); if (thread % 2) lockmgr(locks[(thread + 1) % 4], LK_SHARED, NULL, curthread); else @@ -152,7 +152,7 @@ { lockmgr(locks[thread % 4], LK_EXCLUSIVE, NULL, curthread); - tsleep(locks, 0, "lk_dead", hz/10); + pause("lk_dead", hz/10); lockmgr(locks[(thread + 1) % 4], LK_EXCLUSIVE, NULL, curthread); } CRASH2_EVENT("lockmgr cycle", lockmgr_deadlock, lockmgr_deadlock, @@ -163,7 +163,7 @@ { sx_xlock(sxs[thread % 4]); - tsleep(sxs, 0, "sx_dead", hz/10); + pause("sx_dead", hz/10); sx_xlock(sxs[(thread + 1) % 4]); } CRASH2_EVENT("sx cycle", sx_deadlock, sx_deadlock, sx_deadlock, sx_deadlock); @@ -226,7 +226,7 @@ { mtx_lock(&bar); - tsleep(&bar, 0, "bar", hz/100); + pause("bar", hz/100); mtx_unlock(&bar); } CRASH2_EVENT("sleep holding bar", bar_sleep, bar_sleep, bar_sleep, bar_sleep); From owner-p4-projects@FreeBSD.ORG Fri Mar 9 16:19:57 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5CBFE16A409; Fri, 9 Mar 2007 16:19:57 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3AB7116A401 for ; Fri, 9 Mar 2007 16:19:57 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 2943013C4B8 for ; Fri, 9 Mar 2007 16:19:57 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29GJvZp076403 for ; Fri, 9 Mar 2007 16:19:57 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29GJuu6076400 for perforce@freebsd.org; Fri, 9 Mar 2007 16:19:56 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 16:19:56 GMT Message-Id: <200703091619.l29GJuu6076400@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115612 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 16:19:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=115612 Change 115612 by piso@piso_newluxor on 2007/03/09 16:18:59 Bring back old MD interrupt handling code, merge it with new interrupt filtering code, and appropriately #ifdef ... #endif both worlds. Affected files ... .. //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#28 edit Differences ... ==== //depot/projects/soc2006/intr_filter/amd64/amd64/intr_machdep.c#28 (text+ko) ==== @@ -74,9 +74,11 @@ static struct mtx intr_table_lock; static STAILQ_HEAD(, pic) pics; +#ifdef INTR_FILTER static void intr_eoi_src(void *arg); static void intr_disab_eoi_src(void *arg); static void intr_event_stray(void *cookie); +#endif #ifdef SMP static int assign_cpu; @@ -138,9 +140,14 @@ vector = isrc->is_pic->pic_vector(isrc); if (interrupt_sources[vector] != NULL) return (EEXIST); +#ifdef INTR_FILTER error = intr_event_create(&isrc->is_event, isrc, 0, (mask_fn)isrc->is_pic->pic_enable_source, intr_eoi_src, intr_disab_eoi_src, "irq%d:", vector); +#else + error = intr_event_create(&isrc->is_event, isrc, 0, + (mask_fn)isrc->is_pic->pic_enable_source, "irq%d:", vector); +#endif if (error) return (error); mtx_lock_spin(&intr_table_lock); @@ -217,6 +224,7 @@ return (isrc->is_pic->pic_config_intr(isrc, trig, pol)); } +#ifdef INTR_FILTER void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) { @@ -286,6 +294,94 @@ isrc = arg; isrc->is_pic->pic_disable_source(isrc, PIC_EOI); } +#else +void +intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) +{ + struct thread *td; + struct intr_event *ie; + struct intr_handler *ih; + int error, vector, thread; + + td = curthread; + + /* + * We count software interrupts when we process them. The + * code here follows previous practice, but there's an + * argument for counting hardware interrupts when they're + * processed too. + */ + (*isrc->is_count)++; + PCPU_LAZY_INC(cnt.v_intr); + + ie = isrc->is_event; + + /* + * XXX: We assume that IRQ 0 is only used for the ISA timer + * device (clk). + */ + vector = isrc->is_pic->pic_vector(isrc); + if (vector == 0) + clkintr_pending = 1; + + /* + * For stray interrupts, mask and EOI the source, bump the + * stray count, and log the condition. + */ + if (ie == NULL || TAILQ_EMPTY(&ie->ie_handlers)) { + isrc->is_pic->pic_disable_source(isrc, PIC_EOI); + (*isrc->is_straycount)++; + if (*isrc->is_straycount < MAX_STRAY_LOG) + log(LOG_ERR, "stray irq%d\n", vector); + else if (*isrc->is_straycount == MAX_STRAY_LOG) + log(LOG_CRIT, + "too many stray irq %d's: not logging anymore\n", + vector); + return; + } + + /* + * Execute fast interrupt handlers directly. + * To support clock handlers, if a handler registers + * with a NULL argument, then we pass it a pointer to + * a trapframe as its argument. + */ + td->td_intr_nesting_level++; + thread = 0; + critical_enter(); + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + if (ih->ih_filter == NULL) { + thread = 1; + continue; + } + CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, + ih->ih_filter, ih->ih_argument == NULL ? frame : + ih->ih_argument, ih->ih_name); + if (ih->ih_argument == NULL) + ih->ih_filter(frame); + else + ih->ih_filter(ih->ih_argument); + } + + /* + * If there are any threaded handlers that need to run, + * mask the source as well as sending it an EOI. Otherwise, + * just send it an EOI but leave it unmasked. + */ + if (thread) + isrc->is_pic->pic_disable_source(isrc, PIC_EOI); + else + isrc->is_pic->pic_eoi_source(isrc); + critical_exit(); + + /* Schedule the ithread if needed. */ + if (thread) { + error = intr_event_schedule_thread(ie); + KASSERT(error == 0, ("bad stray interrupt")); + } + td->td_intr_nesting_level--; +} +#endif void intr_resume(void) From owner-p4-projects@FreeBSD.ORG Fri Mar 9 17:01:50 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9825716A407; Fri, 9 Mar 2007 17:01:50 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 316CF16A400 for ; Fri, 9 Mar 2007 17:01:50 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 210C213C428 for ; Fri, 9 Mar 2007 17:01:50 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29H1nCp092204 for ; Fri, 9 Mar 2007 17:01:49 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29H1nCN092201 for perforce@freebsd.org; Fri, 9 Mar 2007 17:01:49 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 17:01:49 GMT Message-Id: <200703091701.l29H1nCN092201@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115615 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 17:01:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=115615 Change 115615 by piso@piso_newluxor on 2007/03/09 17:01:12 Bring back old MD interrupt handling code, merge it with new interrupt filtering code, and appropriately #ifdef ... #endif both worlds. Affected files ... .. //depot/projects/soc2006/intr_filter/arm/arm/intr.c#23 edit .. //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#26 edit .. //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#31 edit .. //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#26 edit .. //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#11 edit Differences ... ==== //depot/projects/soc2006/intr_filter/arm/arm/intr.c#23 (text+ko) ==== @@ -59,7 +59,9 @@ void arm_handler_execute(struct trapframe *, int); +#ifdef INTR_FILTER static void intr_disab_eoi_src(void *arg); +#endif extern struct bus_space i80321_bs_tag; @@ -74,9 +76,14 @@ return; event = intr_events[irq]; if (event == NULL) { +#ifdef INTR_FILTER error = intr_event_create(&event, (void *)irq, 0, (void (*)(void *))arm_unmask_irq, NULL, intr_disab_eoi_src, "intr%d:", irq); +#else + error = intr_event_create(&event, (void *)irq, 0, + (void (*)(void *))arm_unmask_irq, "intr%d:", irq); +#endif if (error) return; intr_events[irq] = event; @@ -105,6 +112,7 @@ { } +#ifdef INTR_FILTER static void intr_disab_eoi_src(void *arg) { @@ -127,3 +135,40 @@ intr_event_handle(event, frame); } } +#else +void +arm_handler_execute(struct trapframe *frame, int irqnb) +{ + struct intr_event *event; + struct intr_handler *ih; + struct thread *td = curthread; + int i, thread; + + PCPU_LAZY_INC(cnt.v_intr); + td->td_intr_nesting_level++; + while ((i = arm_get_next_irq()) != -1) { + arm_mask_irq(i); + intrcnt[intrcnt_tab[i]]++; + event = intr_events[i]; + if (!event || TAILQ_EMPTY(&event->ie_handlers)) + continue; + + /* Execute fast handlers. */ + thread = 0; + TAILQ_FOREACH(ih, &event->ie_handlers, ih_next) { + if (ih->ih_filter == NULL) + thread = 1; + else + ih->ih_filter(ih->ih_argument ? + ih->ih_argument : frame); + } + + /* Schedule thread if needed. */ + if (thread) + intr_event_schedule_thread(event); + else + arm_unmask_irq(i); + } + td->td_intr_nesting_level--; +} +#endif ==== //depot/projects/soc2006/intr_filter/ia64/ia64/interrupt.c#26 (text+ko) ==== @@ -77,7 +77,9 @@ #endif volatile int mc_expected, mc_received; +#ifdef INTR_FILTER static void intr_eoi_src(void *arg); +#endif static void dummy_perf(unsigned long vector, struct trapframe *tf) @@ -320,9 +322,14 @@ memset(intrname, ' ', INTRNAME_LEN - 1); bcopy(name, intrname, strlen(name)); } +#ifdef INTR_FILTER errcode = intr_event_create(&i->event, (void *)vector, 0, (void (*)(void *))ia64_send_eoi, intr_eoi_src, NULL, "intr:"); +#else + errcode = intr_event_create(&i->event, (void *)vector, 0, + (void (*)(void *))ia64_send_eoi, "intr:"); +#endif if (errcode) { free(i, M_DEVBUF); return errcode; @@ -349,6 +356,7 @@ return (intr_event_remove_handler(cookie)); } +#ifdef INTR_FILTER static void intr_eoi_src(void *arg) { @@ -375,6 +383,59 @@ if (intr_event_handle(i->event, frame) != 0) panic("Interrupt vector without an event\n"); } +#else +void +ia64_dispatch_intr(void *frame, unsigned long vector) +{ + struct ia64_intr *i; + struct intr_event *ie; /* our interrupt event */ + struct intr_handler *ih; + int error, thread; + + /* + * Find the interrupt thread for this vector. + */ + i = ia64_intrs[vector]; + if (i == NULL) + return; /* no event for this vector */ + + if (i->cntp) + atomic_add_long(i->cntp, 1); + + ie = i->event; + KASSERT(ie != NULL, ("interrupt vector without an event")); + + /* + * As an optimization, if an event has no handlers, don't + * schedule it to run. + */ + if (TAILQ_EMPTY(&ie->ie_handlers)) + return; + + /* + * Execute all fast interrupt handlers directly without Giant. Note + * that this means that any fast interrupt handler must be MP safe. + */ + thread = 0; + critical_enter(); + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + if (ih->ih_filter == NULL) { + thread = 1; + continue; + } + CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, + ih->ih_filter, ih->ih_argument, ih->ih_name); + ih->ih_filter(ih->ih_argument); + } + critical_exit(); + + if (thread) { + error = intr_event_schedule_thread(ie); + KASSERT(error == 0, ("got an impossible stray interrupt")); + } else + ia64_send_eoi(vector); +} +#endif #ifdef DDB ==== //depot/projects/soc2006/intr_filter/powerpc/powerpc/intr_machdep.c#31 (text+ko) ==== @@ -96,7 +96,9 @@ static int intrcnt_index; static void (*irq_enable)(uintptr_t); +#ifdef INTR_FILTER static void intr_eoi_src(void *arg); +#endif static void intrcnt_setname(const char *name, int index) @@ -153,9 +155,14 @@ i = malloc(sizeof(*i), M_INTR, M_NOWAIT); if (i == NULL) return (ENOMEM); +#ifdef INTR_FILTER error = intr_event_create(&i->event, (void *)irq, 0, (void (*)(void *))irq_enable, intr_eoi_src, NULL, "irq%d:", irq); +#else + error = intr_event_create(&i->event, (void *)irq, 0, + (void (*)(void *))irq_enable, "irq%d:", irq); +#endif if (error) { free(i, M_INTR); return (error); @@ -194,6 +201,7 @@ return (intr_event_remove_handler(cookie)); } +#ifdef INTR_FILTER static void stray_int(u_int irq) { @@ -237,3 +245,60 @@ if (intr_event_handle(ie, NULL) != 0) stray_int(irq); } +#else +void +intr_handle(u_int irq) +{ + struct ppc_intr *i; + struct intr_event *ie; + struct intr_handler *ih; + int error, sched; + + i = ppc_intrs[irq]; + if (i == NULL) + goto stray; + + atomic_add_long(i->cntp, 1); + + ie = i->event; + KASSERT(ie != NULL, ("%s: interrupt without an event", __func__)); + + if (TAILQ_EMPTY(&ie->ie_handlers)) + goto stray; + + /* + * Execute all fast interrupt handlers directly without Giant. Note + * that this means that any fast interrupt handler must be MP safe. + */ + sched = 0; + critical_enter(); + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + if (ih->ih_filter == NULL) { + sched = 1; + continue; + } + CTR4(KTR_INTR, "%s: exec %p(%p) for %s", __func__, + ih->ih_filter, ih->ih_argument, ih->ih_name); + ih->ih_filter(ih->ih_argument); + } + critical_exit(); + + if (sched) { + error = intr_event_schedule_thread(ie); + KASSERT(error == 0, ("%s: impossible stray interrupt", + __func__)); + } else + irq_enable(irq); + return; + +stray: + atomic_add_long(&intrcnt[0], 1); + if (intrcnt[0] <= MAX_STRAY_LOG) { + printf("stray irq %d\n", irq); + if (intrcnt[0] >= MAX_STRAY_LOG) { + printf("got %d stray interrupts, not logging anymore\n", + MAX_STRAY_LOG); + } + } +} +#endif ==== //depot/projects/soc2006/intr_filter/sparc64/sparc64/intr_machdep.c#26 (text+ko) ==== @@ -231,6 +231,7 @@ mtx_init(&intr_table_lock, "intr table", NULL, MTX_SPIN); } +#ifdef INTR_FILTER static void intr_execute_handlers(void *cookie) { @@ -242,6 +243,46 @@ if (intr_event_handle(ie, NULL) != 0) intr_stray_vector(iv); } +#else +static void +intr_execute_handlers(void *cookie) +{ + struct intr_vector *iv; + struct intr_event *ie; + struct intr_handler *ih; + int error, thread; + + iv = cookie; + ie = iv->iv_event; + if (ie == NULL) { + intr_stray_vector(iv); + return; + } + + /* Execute fast interrupt handlers directly. */ + thread = 0; + TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { + if (ih->ih_filter == NULL) { + thread = 1; + continue; + } + MPASS(ih->ih_filter != NULL && ih->ih_argument != NULL); + CTR3(KTR_INTR, "%s: executing handler %p(%p)", __func__, + ih->ih_filter, ih->ih_argument); + ih->ih_filter(ih->ih_argument); + } + + /* Schedule a heavyweight interrupt process. */ + if (thread) + error = intr_event_schedule_thread(ie); + else if (TAILQ_EMPTY(&ie->ie_handlers)) + error = EINVAL; + else + error = 0; + if (error == EINVAL) + intr_stray_vector(iv); +} +#endif int inthand_add(const char *name, int vec, driver_filter_t *filt, @@ -261,8 +302,13 @@ ie = iv->iv_event; mtx_unlock_spin(&intr_table_lock); if (ie == NULL) { +#ifdef INTR_FILTER errcode = intr_event_create(&ie, (void *)(intptr_t)vec, 0, NULL, NULL, NULL, "vec%d:", vec); +#else + errcode = intr_event_create(&ie, (void *)(intptr_t)vec, 0, + NULL, "vec%d:", vec); +#endif if (errcode) return (errcode); mtx_lock_spin(&intr_table_lock); ==== //depot/projects/soc2006/intr_filter/sun4v/sun4v/intr_machdep.c#11 (text+ko) ==== @@ -275,7 +275,8 @@ } SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL); -#if 0 + +#ifndef INTR_FILTER static void intr_execute_handlers(void *cookie) { @@ -313,8 +314,7 @@ hv_intr_setstate(iv->iv_vec, HV_INTR_IDLE_STATE); } } -#endif - +#else static void intr_execute_handlers(void *cookie) { @@ -332,6 +332,7 @@ * hv_intr_setstate(iv->iv_vec, HV_INTR_IDLE_STATE); */ } +#endif int inthand_add(const char *name, int vec, driver_filter_t *filt, @@ -353,9 +354,13 @@ ie = iv->iv_event; mtx_unlock_spin(&intr_table_lock); if (ie == NULL) { +#ifdef INTR_FILTER errcode = intr_event_create(&ie, (void *)(intptr_t)vec, 0, - NULL, NULL, NULL, "vec%d:", - vec); + NULL, NULL, NULL, "vec%d:", vec); +#else + errcode = intr_event_create(&ie, (void *)(intptr_t)vec, 0, + NULL, "vec%d:", vec); +#endif if (errcode) return (errcode); mtx_lock_spin(&intr_table_lock); From owner-p4-projects@FreeBSD.ORG Fri Mar 9 17:08:59 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C311C16A404; Fri, 9 Mar 2007 17:08:59 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 9A06C16A400 for ; Fri, 9 Mar 2007 17:08:59 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 8B49413C491 for ; Fri, 9 Mar 2007 17:08:59 +0000 (UTC) (envelope-from piso@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29H8x9h094163 for ; Fri, 9 Mar 2007 17:08:59 GMT (envelope-from piso@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29H8xai094160 for perforce@freebsd.org; Fri, 9 Mar 2007 17:08:59 GMT (envelope-from piso@freebsd.org) Date: Fri, 9 Mar 2007 17:08:59 GMT Message-Id: <200703091708.l29H8xai094160@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to piso@freebsd.org using -f From: Paolo Pisati To: Perforce Change Reviews Cc: Subject: PERFORCE change 115616 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 17:09:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=115616 Change 115616 by piso@piso_newluxor on 2007/03/09 17:08:38 Fix compilation for non-INTR_FILTER case. Affected files ... .. //depot/projects/soc2006/intr_filter/kern/kern_intr.c#39 edit Differences ... ==== //depot/projects/soc2006/intr_filter/kern/kern_intr.c#39 (text+ko) ==== @@ -893,8 +893,13 @@ if (!(ie->ie_flags & IE_SOFT)) return (EINVAL); } else { +#ifdef INTR_FILTER error = intr_event_create(&ie, NULL, IE_SOFT, NULL, NULL, NULL, "swi%d:", pri); +#else + error = intr_event_create(&ie, NULL, IE_SOFT, + NULL, "swi%d:", pri); +#endif if (error) return (error); if (eventp != NULL) @@ -927,7 +932,11 @@ if (!(flags & SWI_DELAY)) { PCPU_LAZY_INC(cnt.v_soft); +#ifdef INTR_FILTER error = intr_event_schedule_thread(ie, ie->ie_thread); +#else + error = intr_event_schedule_thread(ie); +#endif KASSERT(error == 0, ("stray software interrupt")); } } From owner-p4-projects@FreeBSD.ORG Fri Mar 9 22:52:20 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F14E916A407; Fri, 9 Mar 2007 22:52:19 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id AE73616A405 for ; Fri, 9 Mar 2007 22:52:19 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 9C8E713C4A8 for ; Fri, 9 Mar 2007 22:52:19 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l29MqJan065031 for ; Fri, 9 Mar 2007 22:52:19 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l29MqIL3065028 for perforce@freebsd.org; Fri, 9 Mar 2007 22:52:18 GMT (envelope-from jhb@freebsd.org) Date: Fri, 9 Mar 2007 22:52:18 GMT Message-Id: <200703092252.l29MqIL3065028@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 Cc: Subject: PERFORCE change 115634 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2007 22:52:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=115634 Change 115634 by jhb@jhb_zion on 2007/03/09 22:52:10 IFC @115633. Affected files ... .. //depot/projects/smpng/sys/amd64/amd64/mptable.c#11 integrate .. //depot/projects/smpng/sys/amd64/amd64/trap.c#58 integrate .. //depot/projects/smpng/sys/conf/files.sparc64#62 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.h#51 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#79 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#51 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#90 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#53 integrate .. //depot/projects/smpng/sys/dev/fb/creator.c#12 integrate .. //depot/projects/smpng/sys/dev/mxge/eth_z8e.dat.gz.uu#4 integrate .. //depot/projects/smpng/sys/dev/mxge/ethp_z8e.dat.gz.uu#4 integrate .. //depot/projects/smpng/sys/dev/sound/pci/maestro3.c#24 integrate .. //depot/projects/smpng/sys/i386/i386/mptable.c#19 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#105 integrate .. //depot/projects/smpng/sys/ia64/ia64/trap.c#92 integrate .. //depot/projects/smpng/sys/kern/kern_clock.c#55 integrate .. //depot/projects/smpng/sys/kern/kern_jail.c#47 integrate .. //depot/projects/smpng/sys/kern/kern_kse.c#36 integrate .. //depot/projects/smpng/sys/kern/kern_lock.c#59 integrate .. //depot/projects/smpng/sys/kern/kern_mutex.c#143 integrate .. //depot/projects/smpng/sys/kern/kern_rwlock.c#11 integrate .. //depot/projects/smpng/sys/kern/kern_sx.c#43 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#114 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#99 integrate .. //depot/projects/smpng/sys/kern/sched_core.c#7 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#75 integrate .. //depot/projects/smpng/sys/kern/subr_prf.c#51 integrate .. //depot/projects/smpng/sys/kern/subr_smp.c#44 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#101 integrate .. //depot/projects/smpng/sys/net/bridgestp.c#19 integrate .. //depot/projects/smpng/sys/net/bridgestp.h#8 integrate .. //depot/projects/smpng/sys/net/if_bridge.c#44 integrate .. //depot/projects/smpng/sys/netgraph/ng_base.c#46 integrate .. //depot/projects/smpng/sys/netgraph/ng_eiface.c#26 integrate .. //depot/projects/smpng/sys/netinet/tcp_input.c#97 integrate .. //depot/projects/smpng/sys/netinet/udp_usrreq.c#75 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_socket.c#50 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_subs.c#30 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#65 integrate .. //depot/projects/smpng/sys/nfsclient/nfsnode.h#19 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/trap.c#61 integrate .. //depot/projects/smpng/sys/sparc64/central/central.c#8 integrate .. //depot/projects/smpng/sys/sparc64/fhc/fhc.c#9 integrate .. //depot/projects/smpng/sys/sparc64/fhc/fhc_central.c#8 delete .. //depot/projects/smpng/sys/sparc64/fhc/fhc_nexus.c#8 delete .. //depot/projects/smpng/sys/sparc64/fhc/fhcvar.h#5 delete .. //depot/projects/smpng/sys/sparc64/include/bus_private.h#7 integrate .. //depot/projects/smpng/sys/sparc64/include/iommureg.h#7 integrate .. //depot/projects/smpng/sys/sparc64/include/nexusvar.h#4 delete .. //depot/projects/smpng/sys/sparc64/include/ofw_nexus.h#3 integrate .. //depot/projects/smpng/sys/sparc64/include/ofw_upa.h#5 delete .. //depot/projects/smpng/sys/sparc64/pci/psycho.c#42 integrate .. //depot/projects/smpng/sys/sparc64/pci/psychovar.h#14 integrate .. //depot/projects/smpng/sys/sparc64/sbus/sbus.c#28 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/bus_machdep.c#30 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/iommu.c#30 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/nexus.c#17 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/sc_machdep.c#3 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/trap.c#76 integrate .. //depot/projects/smpng/sys/sys/buf.h#46 integrate .. //depot/projects/smpng/sys/sys/lock.h#43 integrate .. //depot/projects/smpng/sys/sys/mutex.h#70 integrate .. //depot/projects/smpng/sys/sys/param.h#112 integrate .. //depot/projects/smpng/sys/sys/proc.h#178 integrate .. //depot/projects/smpng/sys/sys/rwlock.h#7 integrate .. //depot/projects/smpng/sys/sys/sleepqueue.h#11 integrate .. //depot/projects/smpng/sys/sys/sx.h#23 integrate .. //depot/projects/smpng/sys/sys/systm.h#81 integrate Differences ... ==== //depot/projects/smpng/sys/amd64/amd64/mptable.c#11 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.238 2007/03/05 20:35:16 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.239 2007/03/09 15:49:57 jhb Exp $"); #include #include @@ -316,18 +316,20 @@ static int mptable_setup_local(void) { + vm_paddr_t addr; /* Is this a pre-defined config? */ printf("MPTable: <"); if (mpfps->config_type != 0) { - lapic_init(DEFAULT_APIC_BASE); + addr = DEFAULT_APIC_BASE; printf("Default Configuration %d", mpfps->config_type); } else { - lapic_init(mpct->apic_address); + addr = mpct->apic_address; printf("%.*s %.*s", (int)sizeof(mpct->oem_id), mpct->oem_id, (int)sizeof(mpct->product_id), mpct->product_id); } printf(">\n"); + lapic_init(addr); return (0); } ==== //depot/projects/smpng/sys/amd64/amd64/trap.c#58 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.313 2006/12/17 06:48:39 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.314 2007/03/09 04:02:36 mohans Exp $"); /* * AMD64 Trap and System call handling @@ -813,6 +813,8 @@ CTR4(KTR_SYSC, "syscall enter thread %p pid %d proc %s code %d", td, td->td_proc->p_pid, td->td_proc->p_comm, code); + td->td_syscalls++; + if (error == 0) { td->td_retval[0] = 0; td->td_retval[1] = frame->tf_rdx; ==== //depot/projects/smpng/sys/conf/files.sparc64#62 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.sparc64,v 1.87 2007/01/20 12:53:30 marius Exp $ +# $FreeBSD: src/sys/conf/files.sparc64,v 1.88 2007/03/07 21:13:49 marius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -80,8 +80,6 @@ sparc64/ebus/ebus.c optional ebus sparc64/fhc/clkbrd.c optional clkbrd fhc sparc64/fhc/fhc.c optional fhc -sparc64/fhc/fhc_central.c optional fhc central -sparc64/fhc/fhc_nexus.c optional fhc sparc64/isa/isa.c optional isa sparc64/isa/isa_dma.c optional isa sparc64/isa/ofw_isa.c optional ebus | isa ==== //depot/projects/smpng/sys/dev/ata/ata-all.h#51 (text+ko) ==== @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.120 2007/02/21 19:07:18 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.121 2007/03/08 16:39:25 sos Exp $ */ /* ATA register defines */ @@ -491,6 +491,7 @@ #define ATA_ATA_SLAVE 0x02 #define ATA_ATAPI_MASTER 0x04 #define ATA_ATAPI_SLAVE 0x08 +#define ATA_PORTMULTIPLIER 0x10 struct mtx state_mtx; /* state lock */ int state; /* ATA channel state */ ==== //depot/projects/smpng/sys/dev/ata/ata-chipset.c#79 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.186 2007/03/01 21:18:27 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.190 2007/03/09 22:23:39 sos Exp $"); #include "opt_ata.h" #include @@ -55,10 +55,12 @@ static int ata_generic_chipinit(device_t dev); static void ata_generic_intr(void *data); static void ata_generic_setmode(device_t dev, int mode); -static void ata_sata_phy_reset(device_t dev); +static void ata_sata_phy_check_events(device_t dev); static void ata_sata_phy_event(void *context, int dummy); +static int ata_sata_phy_reset(device_t dev); static int ata_sata_connect(struct ata_channel *ch); static void ata_sata_setmode(device_t dev, int mode); +static int ata_request2fis_h2d(struct ata_request *request, u_int8_t *fis); static int ata_ahci_chipinit(device_t dev); static int ata_ahci_allocate(device_t dev); static int ata_ahci_status(device_t dev); @@ -97,6 +99,7 @@ static int ata_intel_31244_allocate(device_t dev); static int ata_intel_31244_status(device_t dev); static int ata_intel_31244_command(struct ata_request *request); +static void ata_intel_31244_reset(device_t dev); static int ata_ite_chipinit(device_t dev); static void ata_ite_setmode(device_t dev, int mode); static int ata_jmicron_chipinit(device_t dev); @@ -122,6 +125,7 @@ static int ata_nvidia_chipinit(device_t dev); static int ata_nvidia_allocate(device_t dev); static int ata_nvidia_status(device_t dev); +static void ata_nvidia_reset(device_t dev); static int ata_promise_chipinit(device_t dev); static int ata_promise_allocate(device_t dev); static int ata_promise_status(device_t dev); @@ -155,8 +159,16 @@ static int ata_sii_status(device_t dev); static void ata_sii_reset(device_t dev); static void ata_sii_setmode(device_t dev, int mode); +static int ata_siiprb_allocate(device_t dev); +static int ata_siiprb_status(device_t dev); +static int ata_siiprb_begin_transaction(struct ata_request *request); +static int ata_siiprb_end_transaction(struct ata_request *request); +static void ata_siiprb_reset(device_t dev); +static void ata_siiprb_dmasetprd(void *xsc, bus_dma_segment_t *segs, int nsegs, int error); +static void ata_siiprb_dmainit(device_t dev); static int ata_sis_chipinit(device_t dev); static int ata_sis_allocate(device_t dev); +static void ata_sis_reset(device_t dev); static void ata_sis_setmode(device_t dev, int mode); static int ata_via_chipinit(device_t dev); static int ata_via_allocate(device_t dev); @@ -227,34 +239,39 @@ * SATA support functions */ static void -ata_sata_phy_reset(device_t dev) +ata_sata_phy_check_events(device_t dev) { struct ata_channel *ch = device_get_softc(dev); - int loop, retry; + u_int32_t error = ATA_IDX_INL(ch, ATA_SERROR); + + /* clear error bits/interrupt */ + ATA_IDX_OUTL(ch, ATA_SERROR, error); + + /* do we have any events flagged ? */ + if (error) { + struct ata_connect_task *tp; + u_int32_t status = ATA_IDX_INL(ch, ATA_SSTATUS); - if ((ATA_IDX_INL(ch, ATA_SCONTROL) & ATA_SC_DET_MASK) == ATA_SC_DET_IDLE) { - ata_sata_connect(ch); - return; - } + /* if we have a connection event deal with it */ + if ((error & ATA_SE_PHY_CHANGED) && + (tp = (struct ata_connect_task *) + malloc(sizeof(struct ata_connect_task), + M_ATA, M_NOWAIT | M_ZERO))) { - for (retry = 0; retry < 10; retry++) { - for (loop = 0; loop < 10; loop++) { - ATA_IDX_OUTL(ch, ATA_SCONTROL, ATA_SC_DET_RESET); - ata_udelay(100); - if ((ATA_IDX_INL(ch, ATA_SCONTROL) & - ATA_SC_DET_MASK) == ATA_SC_DET_RESET) - break; - } - ata_udelay(5000); - for (loop = 0; loop < 10; loop++) { - ATA_IDX_OUTL(ch, ATA_SCONTROL, ATA_SC_DET_IDLE | - ATA_SC_IPM_DIS_PARTIAL | - ATA_SC_IPM_DIS_SLUMBER); - ata_udelay(100); - if ((ATA_IDX_INL(ch, ATA_SCONTROL) & ATA_SC_DET_MASK) == 0) { - ata_sata_connect(ch); - return; + if (((status & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN1) || + ((status & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN2)) { + if (bootverbose) + device_printf(ch->dev, "CONNECT requested\n"); + tp->action = ATA_C_ATTACH; + } + else { + if (bootverbose) + device_printf(ch->dev, "DISCONNECT requested\n"); + tp->action = ATA_C_DETACH; } + tp->dev = ch->dev; + TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); + taskqueue_enqueue(taskqueue_thread, &tp->task); } } } @@ -271,7 +288,7 @@ if (tp->action == ATA_C_ATTACH) { if (bootverbose) device_printf(tp->dev, "CONNECTED\n"); - ata_sata_connect(ch); + ATA_RESET(tp->dev); ata_identify(tp->dev); } if (tp->action == ATA_C_DETACH) { @@ -292,6 +309,36 @@ } static int +ata_sata_phy_reset(device_t dev) +{ + struct ata_channel *ch = device_get_softc(dev); + int loop, retry; + + if ((ATA_IDX_INL(ch, ATA_SCONTROL) & ATA_SC_DET_MASK) == ATA_SC_DET_IDLE) + return ata_sata_connect(ch); + + for (retry = 0; retry < 10; retry++) { + for (loop = 0; loop < 10; loop++) { + ATA_IDX_OUTL(ch, ATA_SCONTROL, ATA_SC_DET_RESET); + ata_udelay(100); + if ((ATA_IDX_INL(ch, ATA_SCONTROL) & + ATA_SC_DET_MASK) == ATA_SC_DET_RESET) + break; + } + ata_udelay(5000); + for (loop = 0; loop < 10; loop++) { + ATA_IDX_OUTL(ch, ATA_SCONTROL, ATA_SC_DET_IDLE | + ATA_SC_IPM_DIS_PARTIAL | + ATA_SC_IPM_DIS_SLUMBER); + ata_udelay(100); + if ((ATA_IDX_INL(ch, ATA_SCONTROL) & ATA_SC_DET_MASK) == 0) + return ata_sata_connect(ch); + } + } + return 0; +} + +static int ata_sata_connect(struct ata_channel *ch) { u_int32_t status; @@ -310,37 +357,12 @@ device_printf(ch->dev, "SATA connect status=%08x\n", status); return 0; } + if (bootverbose) + device_printf(ch->dev, "SATA connect time=%dms\n", timeout * 10); /* clear SATA error register */ ATA_IDX_OUTL(ch, ATA_SERROR, ATA_IDX_INL(ch, ATA_SERROR)); - /* poll 31 seconds for device ready */ - /* XXX SOS 10 secs for now as I have little patience */ - for (timeout = 0; timeout < 1000; timeout++) { - if (ATA_IDX_INB(ch, ATA_STATUS) & ATA_S_BUSY) - DELAY(10000); - else - break; - } - if (bootverbose) - device_printf(ch->dev, "SATA connect ready time=%dms\n", timeout * 10); - - /* if we have legacy resources an old fashioned reset might be needed */ - if (ch->r_io[ATA_DATA].res) - ata_generic_reset(ch->dev); - - /* register device type from signature */ - ch->devices = 0; - if (timeout < 1000) { - if ((ATA_IDX_INB(ch, ATA_CYL_LSB) == ATAPI_MAGIC_LSB) && - (ATA_IDX_INB(ch, ATA_CYL_MSB) == ATAPI_MAGIC_MSB)) - ch->devices = ATA_ATAPI_MASTER; - else - ch->devices = ATA_ATA_MASTER; - } - if (bootverbose) - device_printf(ch->dev, "sata_connect devices=0x%b\n", - ch->devices, "\20\3ATAPI_MASTER\1ATA_MASTER"); return 1; } @@ -378,6 +400,49 @@ } } +static int +ata_request2fis_h2d(struct ata_request *request, u_int8_t *fis) +{ + struct ata_device *atadev = device_get_softc(request->dev); + + if (request->flags & ATA_R_ATAPI) { + fis[0] = 0x27; /* host to device */ + fis[1] = 0x80; /* command FIS (note PM goes here) */ + fis[2] = ATA_PACKET_CMD; + if (request->flags & ATA_R_DMA) + fis[3] = ATA_F_DMA; + else { + fis[5] = request->transfersize; + fis[6] = request->transfersize >> 8; + } + fis[7] = ATA_D_LBA | atadev->unit; + fis[15] = ATA_A_4BIT; + return 20; + } + else { + ata_modify_if_48bit(request); + fis[0] = 0x27; /* host to device */ + fis[1] = 0x80; /* command FIS (note PM goes here) */ + fis[2] = request->u.ata.command; + fis[3] = request->u.ata.feature; + fis[4] = request->u.ata.lba; + fis[5] = request->u.ata.lba >> 8; + fis[6] = request->u.ata.lba >> 16; + fis[7] = ATA_D_LBA | atadev->unit; + if (!(atadev->flags & ATA_D_48BIT_ACTIVE)) + fis[7] |= (request->u.ata.lba >> 24 & 0x0f); + fis[8] = request->u.ata.lba >> 24; + fis[9] = request->u.ata.lba >> 32; + fis[10] = request->u.ata.lba >> 40; + fis[11] = request->u.ata.feature >> 8; + fis[12] = request->u.ata.count; + fis[13] = request->u.ata.count >> 8; + fis[15] = ATA_A_4BIT; + return 20; + } + return 0; +} + /* * AHCI v1.x compliant SATA chipset support functions @@ -440,17 +505,6 @@ struct ata_channel *ch = device_get_softc(dev); int offset = ch->unit << 7; - /* setup legacy cruft we need */ - ch->r_io[ATA_DATA].res = NULL; - ch->r_io[ATA_CYL_LSB].res = ctlr->r_res2; - ch->r_io[ATA_CYL_LSB].offset = ATA_AHCI_P_SIG + 2 + offset; - ch->r_io[ATA_CYL_MSB].res = ctlr->r_res2; - ch->r_io[ATA_CYL_MSB].offset = ATA_AHCI_P_SIG + 3 + offset; - ch->r_io[ATA_STATUS].res = ctlr->r_res2; - ch->r_io[ATA_STATUS].offset = ATA_AHCI_P_TFD + offset; - ch->r_io[ATA_ALTSTAT].res = ctlr->r_res2; - ch->r_io[ATA_ALTSTAT].offset = ATA_AHCI_P_TFD + offset; - /* set the SATA resources */ ch->r_io[ATA_SSTATUS].res = ctlr->r_res2; ch->r_io[ATA_SSTATUS].offset = ATA_AHCI_P_SSTS + offset; @@ -495,62 +549,22 @@ { struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(dev)); struct ata_channel *ch = device_get_softc(dev); - struct ata_connect_task *tp; - u_int32_t action, istatus, sstatus, error, issued; + u_int32_t action = ATA_INL(ctlr->r_res2, ATA_AHCI_IS); int offset = ch->unit << 7; int tag = 0; - action = ATA_INL(ctlr->r_res2, ATA_AHCI_IS); if (action & (1 << ch->unit)) { - istatus = ATA_INL(ctlr->r_res2, ATA_AHCI_P_IS + offset); - issued = ATA_INL(ctlr->r_res2, ATA_AHCI_P_CI + offset); - sstatus = ATA_INL(ctlr->r_res2, ATA_AHCI_P_SSTS + offset); - error = ATA_INL(ctlr->r_res2, ATA_AHCI_P_SERR + offset); + u_int32_t istatus = ATA_INL(ctlr->r_res2, ATA_AHCI_P_IS + offset); /* clear interrupt(s) */ - ATA_OUTL(ctlr->r_res2, ATA_AHCI_IS, action); + ATA_OUTL(ctlr->r_res2, ATA_AHCI_IS, action & (1 << ch->unit)); ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_IS + offset, istatus); - ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_SERR + offset, error); - /* do we have cold connect surprise */ - if (istatus & ATA_AHCI_P_IX_CPD) { - printf("ata_ahci_status status=%08x sstatus=%08x error=%08x\n", - istatus, sstatus, error); - } - - /* check for and handle connect events */ - if ((istatus & ATA_AHCI_P_IX_PC) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { - - if (bootverbose) - device_printf(ch->dev, "CONNECT requested\n"); - tp->action = ATA_C_ATTACH; - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); - } - - /* check for and handle disconnect events */ - else if ((istatus & ATA_AHCI_P_IX_PRC) && - !((sstatus & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN1 || - (sstatus & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN2) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { - - if (bootverbose) - device_printf(ch->dev, "DISCONNECT requested\n"); - tp->action = ATA_C_DETACH; - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); - } + /* do we have any PHY events ? */ + ata_sata_phy_check_events(dev); /* do we have any device action ? */ - if (!(issued & (1 << tag))) - return 1; + return (!(ATA_INL(ctlr->r_res2, ATA_AHCI_P_CI + offset) & (1 << tag))); } return 0; } @@ -667,8 +681,9 @@ if (!(ATA_INL(ctlr->r_res2, ATA_AHCI_PI) & (1 << ch->unit))) { device_printf(dev, "port not implemented\n"); - ch->devices = 0; + return; } + ch->devices = 0; /* kill off all activity on this channel */ cmd = ATA_INL(ctlr->r_res2, ATA_AHCI_P_CMD + offset); @@ -704,12 +719,22 @@ ATA_OUTL(ctlr->r_res2, ATA_AHCI_P_CMD + offset, ATA_AHCI_P_CMD_SUD); /* enable interface */ - ata_sata_phy_reset(dev); - - /* no ATAPI yet */ - if (ch->devices & ATA_ATAPI_MASTER) { - device_printf(ch->dev, "AHCI SATA ATAPI devices not supported yet\n"); - ch->devices = 0; + if (ata_sata_phy_reset(dev)) { + switch (ATA_INL(ctlr->r_res2, ATA_AHCI_P_SIG + offset)) { + case 0xeb140101: + ch->devices = ATA_ATAPI_MASTER; + device_printf(ch->dev, "SATA ATAPI devices not supported yet\n"); + ch->devices = 0; + break; + case 0x96690101: + ch->devices = ATA_PORTMULTIPLIER; + device_printf(ch->dev, "Portmultipliers not supported yet\n"); + ch->devices = 0; + break; + case 0x00000101: + ch->devices = ATA_ATA_MASTER; + break; + } } /* clear any interrupts pending on this channel */ @@ -754,47 +779,12 @@ static int ata_ahci_setup_fis(struct ata_ahci_cmd_tab *ctp, struct ata_request *request) { - struct ata_device *atadev = device_get_softc(request->dev); - bzero(ctp->cfis, 64); if (request->flags & ATA_R_ATAPI) { - ctp->cfis[0] = 0x27; /* host to device */ - ctp->cfis[1] = 0x80; /* command FIS (note PM goes here) */ - ctp->cfis[2] = ATA_PACKET_CMD; - if (request->flags & ATA_R_DMA) - ctp->cfis[3] = ATA_F_DMA; - else { - ctp->cfis[5] = request->transfersize; - ctp->cfis[6] = request->transfersize >> 8; - } - ctp->cfis[7] = ATA_D_LBA | atadev->unit; - ctp->cfis[15] = ATA_A_4BIT; bzero(ctp->acmd, 32); bcopy(request->u.atapi.ccb, ctp->acmd, 12); - return 20; } - else { - ata_modify_if_48bit(request); - ctp->cfis[0] = 0x27; /* host to device */ - ctp->cfis[1] = 0x80; /* command FIS (note PM goes here) */ - ctp->cfis[2] = request->u.ata.command; - ctp->cfis[3] = request->u.ata.feature; - ctp->cfis[4] = request->u.ata.lba; - ctp->cfis[5] = request->u.ata.lba >> 8; - ctp->cfis[6] = request->u.ata.lba >> 16; - ctp->cfis[7] = ATA_D_LBA | atadev->unit; - if (!(atadev->flags & ATA_D_48BIT_ACTIVE)) - ctp->cfis[7] |= (request->u.ata.lba >> 24 & 0x0f); - ctp->cfis[8] = request->u.ata.lba >> 24; - ctp->cfis[9] = request->u.ata.lba >> 32; - ctp->cfis[10] = request->u.ata.lba >> 40; - ctp->cfis[11] = request->u.ata.feature >> 8; - ctp->cfis[12] = request->u.ata.count; - ctp->cfis[13] = request->u.ata.count >> 8; - ctp->cfis[15] = ATA_A_4BIT; - return 20; - } - return 0; + return ata_request2fis_h2d(request, &ctp->cfis[0]); } @@ -1362,6 +1352,7 @@ } } + /* * Cyrix chipset support functions */ @@ -1751,7 +1742,7 @@ return ENXIO; ctlr->channels = 4; ctlr->allocate = ata_intel_31244_allocate; - ctlr->reset = ata_sata_phy_reset; + ctlr->reset = ata_intel_31244_reset; } ctlr->setmode = ata_sata_setmode; } @@ -1978,37 +1969,8 @@ static int ata_intel_31244_status(device_t dev) { - struct ata_channel *ch = device_get_softc(dev); - u_int32_t status = ATA_IDX_INL(ch, ATA_SSTATUS); - u_int32_t error = ATA_IDX_INL(ch, ATA_SERROR); - struct ata_connect_task *tp; - - /* check for PHY related interrupts on SATA capable HW */ - if (error) { - /* clear error bits/interrupt */ - ATA_IDX_OUTL(ch, ATA_SERROR, error); - - /* if we have a connection event deal with it */ - if ((error & ATA_SE_PHY_CHANGED) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { - - if ((status & ATA_SS_CONWELL_MASK) == ATA_SS_CONWELL_GEN1) { - if (bootverbose) - device_printf(ch->dev, "CONNECT requested\n"); - tp->action = ATA_C_ATTACH; - } - else { - if (bootverbose) - device_printf(ch->dev, "DISCONNECT requested\n"); - tp->action = ATA_C_DETACH; - } - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); - } - } + /* do we have any PHY events ? */ + ata_sata_phy_check_events(dev); /* any drive action to take care of ? */ return ata_pci_status(dev); @@ -2042,6 +2004,13 @@ return 0; } +static void +ata_intel_31244_reset(device_t dev) +{ + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); +} + /* * Integrated Technology Express Inc. (ITE) chipset support functions @@ -2541,45 +2510,13 @@ u_int32_t cause = ATA_INL(ctlr->r_res1, 0x01d60); int shift = (ch->unit << 1) + (ch->unit > 3); - /* do we have any errors flagged ? */ if (cause & (1 << shift)) { - struct ata_connect_task *tp; - u_int32_t error = - ATA_INL(ctlr->r_res1, 0x02008 + ATA_MV_EDMA_BASE(ch)); - /* check for and handle disconnect events */ - if ((error & 0x00000008) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { + /* clear interrupt(s) */ + ATA_OUTL(ctlr->r_res1, 0x02008 + ATA_MV_EDMA_BASE(ch), 0x0); - if (bootverbose) - device_printf(ch->dev, "DISCONNECT requested\n"); - tp->action = ATA_C_DETACH; - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); - } - - /* check for and handle connect events */ - if ((error & 0x00000010) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { - - if (bootverbose) - device_printf(ch->dev, "CONNECT requested\n"); - tp->action = ATA_C_ATTACH; - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); - } - - /* clear SATA error register */ - ATA_IDX_OUTL(ch, ATA_SERROR, ATA_IDX_INL(ch, ATA_SERROR)); - - /* clear any outstanding error interrupts */ - ATA_OUTL(ctlr->r_res1, 0x02008 + ATA_MV_EDMA_BASE(ch), 0x0); + /* do we have any PHY events ? */ + ata_sata_phy_check_events(dev); } /* do we have any device action ? */ @@ -2694,9 +2631,6 @@ u_int32_t rsp_in, rsp_out; int slot; - /* unload SG list */ - ch->dma->unload(ch->dev); - /* stop timeout */ callout_stop(&request->callout); @@ -2720,6 +2654,10 @@ if (!(request->status & ATA_S_ERROR) && !(request->flags & ATA_R_TIMEOUT)) request->donecount = request->bytecount; + + /* unload SG list */ + ch->dma->unload(ch->dev); + res = ATA_OP_FINISHED; } @@ -2754,7 +2692,8 @@ ATA_OUTL(ctlr->r_res1, 0x0200c + ATA_MV_EDMA_BASE(ch), ~0x0); /* enable channel and test for devices */ - ata_sata_phy_reset(dev); + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); /* enable EDMA machinery */ ATA_OUTL(ctlr->r_res1, 0x02028 + ATA_MV_EDMA_BASE(ch), 0x00000001); @@ -2773,8 +2712,8 @@ for (i = 0; i < nsegs; i++) { prd[i].addrlo = htole32(segs[i].ds_addr); - prd[i].addrhi = 0; prd[i].count = htole32(segs[i].ds_len); + prd[i].addrhi = htole32((u_int64_t)segs[i].ds_addr >> 32); } prd[i - 1].count |= htole32(ATA_DMA_EOT); } @@ -2866,6 +2805,7 @@ } } + /* * NetCell chipset support functions */ @@ -2909,6 +2849,7 @@ return 0; } + /* * nVidia chipset support functions */ @@ -2971,7 +2912,7 @@ int offset = ctlr->chip->cfg2 & NV4 ? 0x0440 : 0x0010; ctlr->allocate = ata_nvidia_allocate; - ctlr->reset = ata_sata_phy_reset; + ctlr->reset = ata_nvidia_reset; /* enable control access */ pci_write_config(dev, 0x50, pci_read_config(dev, 0x50, 1) | 0x04,1); @@ -3039,51 +2980,26 @@ struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(dev)); struct ata_channel *ch = device_get_softc(dev); int offset = ctlr->chip->cfg2 & NV4 ? 0x0440 : 0x0010; - struct ata_connect_task *tp; int shift = ch->unit << (ctlr->chip->cfg2 & NVQ ? 4 : 2); - u_int32_t status; + u_int32_t istatus = ATA_INL(ctlr->r_res2, offset); - /* get and clear interrupt status */ - if (ctlr->chip->cfg2 & NVQ) { - status = ATA_INL(ctlr->r_res2, offset); - ATA_OUTL(ctlr->r_res2, offset, (0x0f << shift) | 0x00f000f0); - } - else { - status = ATA_INB(ctlr->r_res2, offset); - ATA_OUTB(ctlr->r_res2, offset, (0x0f << shift)); - } + /* do we have any PHY events ? */ + if (istatus & (0x0c << shift)) + ata_sata_phy_check_events(dev); - /* check for and handle connect events */ - if (((status & (0x0c << shift)) == (0x04 << shift)) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { + /* clear interrupt(s) */ + ATA_OUTB(ctlr->r_res2, offset, + (0x0f << shift) | (ctlr->chip->cfg2 & NVQ ? 0x00f000f0 : 0)); - if (bootverbose) - device_printf(ch->dev, "CONNECT requested\n"); - tp->action = ATA_C_ATTACH; - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); - } + /* do we have any device action ? */ + return (istatus & (0x01 << shift)); +} - /* check for and handle disconnect events */ - if ((status & (0x08 << shift)) && - !((status & (0x04 << shift) && ATA_IDX_INL(ch, ATA_SSTATUS))) && - (tp = (struct ata_connect_task *) - malloc(sizeof(struct ata_connect_task), - M_ATA, M_NOWAIT | M_ZERO))) { - - if (bootverbose) - device_printf(ch->dev, "DISCONNECT requested\n"); - tp->action = ATA_C_DETACH; - tp->dev = ch->dev; - TASK_INIT(&tp->task, 0, ata_sata_phy_event, tp); - taskqueue_enqueue(taskqueue_thread, &tp->task); - } - - /* do we have any device action ? */ - return (status & (0x01 << shift)); +static void +ata_nvidia_reset(device_t dev) +{ + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); } @@ -3755,7 +3671,8 @@ if ((ctlr->chip->cfg2 == PRSATA) || ((ctlr->chip->cfg2 == PRCMBO) && (ch->unit < 2))) { - ata_sata_phy_reset(dev); + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); /* reset and enable plug/unplug intr */ ATA_OUTL(ctlr->r_res2, 0x06c, (0x00000011 << ch->unit)); @@ -3790,7 +3707,8 @@ (ATA_INL(ctlr->r_res2, 0x414 + (ch->unit << 8)) & ~0x00000003) | 0x00000001); - ata_sata_phy_reset(dev); + if (ata_sata_phy_reset(dev)) + ata_generic_reset(dev); /* reset and enable plug/unplug intr */ ATA_OUTL(ctlr->r_res2, 0x060, (0x00000011 << ch->unit)); @@ -4250,6 +4168,8 @@ { ATA_SII3512, 0x00, SIIMEMIO, SIIBUG, ATA_SA150, "SiI 3512" }, { ATA_SII3112, 0x00, SIIMEMIO, SIIBUG, ATA_SA150, "SiI 3112" }, { ATA_SII3112_1, 0x00, SIIMEMIO, SIIBUG, ATA_SA150, "SiI 3112" }, + { ATA_SII3124, 0x00, SIIPRBIO, SII4CH, ATA_SA300, "SiI 3124" }, + { ATA_SII3132, 0x00, SIIPRBIO, 0, ATA_SA300, "SiI 3132" }, { ATA_SII0680, 0x00, SIIMEMIO, SIISETCLK, ATA_UDMA6, "SiI 0680" }, { ATA_CMD649, 0x00, 0, SIIINTR, ATA_UDMA5, "CMD 649" }, { ATA_CMD648, 0x00, 0, SIIINTR, ATA_UDMA4, "CMD 648" }, @@ -4276,7 +4196,38 @@ if (ata_setup_interrupt(dev)) return ENXIO; - if (ctlr->chip->cfg1 == SIIMEMIO) { + switch (ctlr->chip->cfg1) { + case SIIPRBIO: + ctlr->r_type1 = SYS_RES_MEMORY; + ctlr->r_rid1 = PCIR_BAR(0); + if (!(ctlr->r_res1 = bus_alloc_resource_any(dev, ctlr->r_type1, + &ctlr->r_rid1, RF_ACTIVE))) + return ENXIO; + + ctlr->r_rid2 = PCIR_BAR(2); + ctlr->r_type2 = SYS_RES_MEMORY; + if (!(ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2, + &ctlr->r_rid2, RF_ACTIVE))){ + bus_release_resource(dev, ctlr->r_type1, ctlr->r_rid1,ctlr->r_res1); + return ENXIO; + } + ctlr->allocate = ata_siiprb_allocate; + ctlr->reset = ata_siiprb_reset; + ctlr->dmainit = ata_siiprb_dmainit; + ctlr->setmode = ata_sata_setmode; + ctlr->channels = (ctlr->chip->cfg2 == SII4CH) ? 4 : 2; + + /* reset controller */ + ATA_OUTL(ctlr->r_res1, 0x0040, 0x80000000); + DELAY(10000); + ATA_OUTL(ctlr->r_res1, 0x0040, 0x0000000f); + + /* enable PCI interrupt */ + pci_write_config(dev, PCIR_COMMAND, + pci_read_config(dev, PCIR_COMMAND, 2) & ~0x0400, 2); + break; + + case SIIMEMIO: ctlr->r_type2 = SYS_RES_MEMORY; ctlr->r_rid2 = PCIR_BAR(5); if (!(ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2, @@ -4298,13 +4249,13 @@ ctlr->channels = 4; } - /* enable PCI interrupt as BIOS might not */ - pci_write_config(dev, 0x8a, (pci_read_config(dev, 0x8a, 1) & 0x3f), 1); - /* dont block interrupts from any channel */ pci_write_config(dev, 0x48, (pci_read_config(dev, 0x48, 4) & ~0x03c00000), 4); + /* enable PCI interrupt as BIOS might not */ + pci_write_config(dev, 0x8a, (pci_read_config(dev, 0x8a, 1) & 0x3f), 1); + ctlr->allocate = ata_sii_allocate; if (ctlr->chip->max_dma >= ATA_SA150) { ctlr->reset = ata_sii_reset; @@ -4312,8 +4263,9 @@ } else ctlr->setmode = ata_sii_setmode; - } - else { + break; + + default: if ((pci_read_config(dev, 0x51, 1) & 0x08) != 0x08) { device_printf(dev, "HW has secondary channel disabled\n"); ctlr->channels = 1; @@ -4324,6 +4276,7 @@ ctlr->allocate = ata_cmd_allocate; ctlr->setmode = ata_cmd_setmode; + break; } return 0; } @@ -4437,8 +4390,6 @@ ch->r_io[ATA_BMSTAT_PORT].offset = 0x02 + (unit01 << 3) + (unit10 << 8); ch->r_io[ATA_BMDTP_PORT].res = ctlr->r_res2; ch->r_io[ATA_BMDTP_PORT].offset = 0x04 + (unit01 << 3) + (unit10 << 8); - ch->r_io[ATA_BMDEVSPEC_0].res = ctlr->r_res2; - ch->r_io[ATA_BMDEVSPEC_0].offset = 0xa1 + (unit01 << 6) + (unit10 << 8); if (ctlr->chip->max_dma >= ATA_SA150) { ch->r_io[ATA_SSTATUS].res = ctlr->r_res2; @@ -4469,68 +4420,25 @@ { struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(dev)); struct ata_channel *ch = device_get_softc(dev); + int offset0 = ((ch->unit & 1) << 3) + ((ch->unit & 2) << 8); + int offset1 = ((ch->unit & 1) << 6) + ((ch->unit & 2) << 8); - /* check for PHY related interrupts on SATA capable HW */ - if (ctlr->chip->max_dma >= ATA_SA150) { - u_int32_t status = ATA_IDX_INL(ch, ATA_SSTATUS); - u_int32_t error = ATA_IDX_INL(ch, ATA_SERROR); - struct ata_connect_task *tp; + /* do we have any PHY events ? */ + if (ctlr->chip->max_dma >= ATA_SA150 && + (ATA_INL(ctlr->r_res2, 0x10 + offset0) & 0x00000010)) + ata_sata_phy_check_events(dev); - if (error) { - /* clear error bits/interrupt */ - ATA_IDX_OUTL(ch, ATA_SERROR, error); - - /* if we have a connection event deal with it */ - if ((error & ATA_SE_PHY_CHANGED) && - (tp = (struct ata_connect_task *) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Mar 10 02:26:09 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 56CC416A407; Sat, 10 Mar 2007 02:26:09 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2B9D316A401 for ; Sat, 10 Mar 2007 02:26:09 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 1CD1813C46B for ; Sat, 10 Mar 2007 02:26:09 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l2A2Q8Lu012513 for ; Sat, 10 Mar 2007 02:26:08 GMT (envelope-from sephe@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l2A2Q8wc012510 for perforce@freebsd.org; Sat, 10 Mar 2007 02:26:08 GMT (envelope-from sephe@FreeBSD.org) Date: Sat, 10 Mar 2007 02:26:08 GMT Message-Id: <200703100226.l2A2Q8wc012510@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sephe@FreeBSD.org using -f From: Sepherosa Ziehau To: Perforce Change Reviews Cc: Subject: PERFORCE change 115647 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 10 Mar 2007 02:26:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=115647 Change 115647 by sephe@sephe_zealot:sam_wifi on 2007/03/10 02:25:26 Correct unit of assoc/reassoc request listen interval field, which should be number of beacons instead of TUs. Reviewed by: sam@ Affected files ... .. //depot/projects/wifi/sbin/ifconfig/ifconfig.8#20 edit .. //depot/projects/wifi/sys/net80211/ieee80211_output.c#67 edit Differences ... ==== //depot/projects/wifi/sbin/ifconfig/ifconfig.8#20 (text+ko) ==== @@ -814,7 +814,8 @@ .Fl powersave to disable powersave operation. .It Cm powersavesleep Ar sleep -Set the desired max powersave sleep time in milliseconds. +Set the desired max powersave sleep time in TU's (1024 usecs). +By default the max powersave sleep time is 100 TU's. .It Cm protmode Ar technique For interfaces operating in 802.11g, use the specified .Ar technique ==== //depot/projects/wifi/sys/net80211/ieee80211_output.c#67 (text+ko) ==== @@ -1771,7 +1771,10 @@ *(u_int16_t *)frm = htole16(capinfo); frm += 2; - *(u_int16_t *)frm = htole16(ic->ic_lintval); + KASSERT(ic->ic_bss->ni_intval != 0, + ("beacon interval is zero!")); + *(u_int16_t *)frm = htole16(howmany(ic->ic_lintval, + ic->ic_bss->ni_intval)); frm += 2; if (type == IEEE80211_FC0_SUBTYPE_REASSOC_REQ) { From owner-p4-projects@FreeBSD.ORG Sat Mar 10 03:01:25 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2A5F916A406; Sat, 10 Mar 2007 03:01:25 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id B828C16A400 for ; Sat, 10 Mar 2007 03:01:24 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id A6E5F13C467 for ; Sat, 10 Mar 2007 03:01:24 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l2A31OFs017964 for ; Sat, 10 Mar 2007 03:01:24 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l2A31EMY017880 for perforce@freebsd.org; Sat, 10 Mar 2007 03:01:14 GMT (envelope-from mjacob@freebsd.org) Date: Sat, 10 Mar 2007 03:01:14 GMT Message-Id: <200703100301.l2A31EMY017880@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Cc: Subject: PERFORCE change 115650 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 10 Mar 2007 03:01:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=115650 Change 115650 by mjacob@mjexp on 2007/03/10 03:01:09 IFC Affected files ... .. //depot/projects/mjexp/Makefile.inc1#6 integrate .. //depot/projects/mjexp/bin/df/df.c#2 integrate .. //depot/projects/mjexp/etc/defaults/rc.conf#7 integrate .. //depot/projects/mjexp/lib/libarchive/archive_entry.c#5 integrate .. //depot/projects/mjexp/lib/libarchive/test/Makefile#2 integrate .. //depot/projects/mjexp/lib/libarchive/test/test_acl_basic.c#1 branch .. //depot/projects/mjexp/lib/libarchive/test/test_acl_pax.c#1 branch .. //depot/projects/mjexp/lib/libc/regex/engine.c#4 integrate .. //depot/projects/mjexp/lib/libc/regex/grot/tests#2 integrate .. //depot/projects/mjexp/lib/libc/resolv/res_send.c#5 integrate .. //depot/projects/mjexp/lib/libc/sys/getsockopt.2#3 integrate .. //depot/projects/mjexp/lib/libc/sys/shutdown.2#3 integrate .. //depot/projects/mjexp/lib/libelf/gelf.h#3 integrate .. //depot/projects/mjexp/lib/libpthread/thread/thr_kern.c#3 integrate .. //depot/projects/mjexp/lib/ncurses/Makefile#2 integrate .. //depot/projects/mjexp/lib/ncurses/Makefile.inc#2 integrate .. //depot/projects/mjexp/lib/ncurses/config.mk#2 integrate .. //depot/projects/mjexp/lib/ncurses/form/Makefile#3 integrate .. //depot/projects/mjexp/lib/ncurses/formw/Makefile#1 branch .. //depot/projects/mjexp/lib/ncurses/menu/Makefile#3 integrate .. //depot/projects/mjexp/lib/ncurses/menuw/Makefile#1 branch .. //depot/projects/mjexp/lib/ncurses/ncurses/Makefile#4 integrate .. //depot/projects/mjexp/lib/ncurses/ncurses/ncurses_cfg.h#3 integrate .. //depot/projects/mjexp/lib/ncurses/ncursesw/Makefile#1 branch .. //depot/projects/mjexp/lib/ncurses/panel/Makefile#3 integrate .. //depot/projects/mjexp/lib/ncurses/panelw/Makefile#1 branch .. //depot/projects/mjexp/release/doc/en_US.ISO8859-1/relnotes/article.sgml#7 integrate .. //depot/projects/mjexp/sbin/geom/class/eli/geli.8#2 integrate .. //depot/projects/mjexp/sbin/geom/class/eli/geom_eli.c#4 integrate .. //depot/projects/mjexp/sbin/ifconfig/af_ipx.c#3 integrate .. //depot/projects/mjexp/sbin/mdmfs/mdmfs.c#4 integrate .. //depot/projects/mjexp/sbin/mount_nfs/mount_nfs.8#4 integrate .. //depot/projects/mjexp/sbin/mount_nfs/mount_nfs.c#4 integrate .. //depot/projects/mjexp/sbin/restore/tape.c#4 integrate .. //depot/projects/mjexp/share/man/man4/ipw.4#3 integrate .. //depot/projects/mjexp/share/man/man4/iwi.4#3 integrate .. //depot/projects/mjexp/share/man/man5/fs.5#3 integrate .. //depot/projects/mjexp/share/man/man5/rc.conf.5#8 integrate .. //depot/projects/mjexp/share/man/man9/Makefile#12 integrate .. //depot/projects/mjexp/share/man/man9/bus_dma.9#3 integrate .. //depot/projects/mjexp/share/man/man9/condvar.9#2 integrate .. //depot/projects/mjexp/share/man/man9/extattr.9#3 integrate .. //depot/projects/mjexp/share/man/man9/lock.9#2 integrate .. //depot/projects/mjexp/share/man/man9/mi_switch.9#2 integrate .. //depot/projects/mjexp/share/man/man9/mtx_pool.9#2 integrate .. //depot/projects/mjexp/share/man/man9/mutex.9#4 integrate .. //depot/projects/mjexp/share/man/man9/rwlock.9#3 integrate .. //depot/projects/mjexp/share/man/man9/sleep.9#5 integrate .. //depot/projects/mjexp/share/man/man9/sleepqueue.9#3 integrate .. //depot/projects/mjexp/share/man/man9/sx.9#2 integrate .. //depot/projects/mjexp/share/man/man9/thread_exit.9#2 integrate .. //depot/projects/mjexp/share/mk/bsd.libnames.mk#3 integrate .. //depot/projects/mjexp/sys/amd64/acpica/madt.c#2 integrate .. //depot/projects/mjexp/sys/amd64/amd64/busdma_machdep.c#3 integrate .. //depot/projects/mjexp/sys/amd64/amd64/intr_machdep.c#6 integrate .. //depot/projects/mjexp/sys/amd64/amd64/io_apic.c#5 integrate .. //depot/projects/mjexp/sys/amd64/amd64/local_apic.c#5 integrate .. //depot/projects/mjexp/sys/amd64/amd64/mp_machdep.c#6 integrate .. //depot/projects/mjexp/sys/amd64/amd64/mptable.c#2 integrate .. //depot/projects/mjexp/sys/amd64/amd64/pmap.c#6 integrate .. //depot/projects/mjexp/sys/amd64/amd64/trap.c#5 integrate .. //depot/projects/mjexp/sys/amd64/include/apicvar.h#5 integrate .. //depot/projects/mjexp/sys/amd64/include/intr_machdep.h#7 integrate .. //depot/projects/mjexp/sys/amd64/include/smp.h#2 integrate .. //depot/projects/mjexp/sys/arm/at91/at91.c#5 integrate .. //depot/projects/mjexp/sys/arm/sa11x0/sa11x0.c#4 integrate .. //depot/projects/mjexp/sys/arm/xscale/ixp425/ixp425_npe.c#5 integrate .. //depot/projects/mjexp/sys/arm/xscale/ixp425/ixp425_pci.c#4 integrate .. //depot/projects/mjexp/sys/compat/linux/linux_stats.c#4 integrate .. //depot/projects/mjexp/sys/conf/files.sparc64#7 integrate .. //depot/projects/mjexp/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/mjexp/sys/dev/arcmsr/arcmsr.c#7 integrate .. //depot/projects/mjexp/sys/dev/arcmsr/arcmsr.h#4 integrate .. //depot/projects/mjexp/sys/dev/ata/ata-all.h#4 integrate .. //depot/projects/mjexp/sys/dev/ata/ata-chipset.c#9 integrate .. //depot/projects/mjexp/sys/dev/ata/ata-pci.h#5 integrate .. //depot/projects/mjexp/sys/dev/ath/if_ath.c#7 integrate .. //depot/projects/mjexp/sys/dev/ath/if_athvar.h#6 integrate .. //depot/projects/mjexp/sys/dev/bge/if_bge.c#10 integrate .. //depot/projects/mjexp/sys/dev/bge/if_bgereg.h#7 integrate .. //depot/projects/mjexp/sys/dev/fb/creator.c#3 integrate .. //depot/projects/mjexp/sys/dev/isp/isp.c#15 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_freebsd.c#12 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_ioctl.h#2 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_library.c#3 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_library.h#3 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_pci.c#16 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_stds.h#2 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_target.c#7 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_target.h#5 integrate .. //depot/projects/mjexp/sys/dev/isp/isp_tpublic.h#5 integrate .. //depot/projects/mjexp/sys/dev/isp/ispmbox.h#7 integrate .. //depot/projects/mjexp/sys/dev/isp/ispreg.h#5 integrate .. //depot/projects/mjexp/sys/dev/isp/ispvar.h#6 integrate .. //depot/projects/mjexp/sys/dev/mxge/eth_z8e.dat.gz.uu#2 integrate .. //depot/projects/mjexp/sys/dev/mxge/ethp_z8e.dat.gz.uu#2 integrate .. //depot/projects/mjexp/sys/dev/ppbus/ppbconf.c#3 integrate .. //depot/projects/mjexp/sys/dev/ppc/ppc.c#3 integrate .. //depot/projects/mjexp/sys/dev/sound/pci/ds1.c#3 integrate .. //depot/projects/mjexp/sys/dev/sound/pci/emu10k1.c#3 integrate .. //depot/projects/mjexp/sys/dev/sound/pci/emu10kx-pcm.c#3 integrate .. //depot/projects/mjexp/sys/dev/sound/pci/maestro3.c#3 integrate .. //depot/projects/mjexp/sys/dev/sound/pcm/ac97.c#4 integrate .. //depot/projects/mjexp/sys/dev/sym/sym_hipd.c#5 integrate .. //depot/projects/mjexp/sys/dev/zs/z8530reg.h#2 delete .. //depot/projects/mjexp/sys/dev/zs/z8530var.h#3 delete .. //depot/projects/mjexp/sys/dev/zs/zs.c#4 delete .. //depot/projects/mjexp/sys/dev/zs/zs_macio.c#3 delete .. //depot/projects/mjexp/sys/i386/acpica/madt.c#2 integrate .. //depot/projects/mjexp/sys/i386/i386/busdma_machdep.c#2 integrate .. //depot/projects/mjexp/sys/i386/i386/intr_machdep.c#6 integrate .. //depot/projects/mjexp/sys/i386/i386/io_apic.c#5 integrate .. //depot/projects/mjexp/sys/i386/i386/local_apic.c#5 integrate .. //depot/projects/mjexp/sys/i386/i386/machdep.c#9 integrate .. //depot/projects/mjexp/sys/i386/i386/mp_machdep.c#6 integrate .. //depot/projects/mjexp/sys/i386/i386/mptable.c#2 integrate .. //depot/projects/mjexp/sys/i386/i386/nexus.c#6 integrate .. //depot/projects/mjexp/sys/i386/i386/pmap.c#6 integrate .. //depot/projects/mjexp/sys/i386/i386/trap.c#4 integrate .. //depot/projects/mjexp/sys/i386/i386/vm_machdep.c#3 integrate .. //depot/projects/mjexp/sys/i386/include/apicvar.h#5 integrate .. //depot/projects/mjexp/sys/i386/include/intr_machdep.h#7 integrate .. //depot/projects/mjexp/sys/i386/include/smp.h#2 integrate .. //depot/projects/mjexp/sys/ia64/ia64/busdma_machdep.c#3 integrate .. //depot/projects/mjexp/sys/ia64/ia64/trap.c#3 integrate .. //depot/projects/mjexp/sys/kern/kern_acct.c#6 integrate .. //depot/projects/mjexp/sys/kern/kern_alq.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_clock.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_jail.c#7 integrate .. //depot/projects/mjexp/sys/kern/kern_kse.c#6 integrate .. //depot/projects/mjexp/sys/kern/kern_lock.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_mutex.c#5 integrate .. //depot/projects/mjexp/sys/kern/kern_rwlock.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_sx.c#4 integrate .. //depot/projects/mjexp/sys/kern/kern_synch.c#10 integrate .. //depot/projects/mjexp/sys/kern/kern_thread.c#6 integrate .. //depot/projects/mjexp/sys/kern/sched_core.c#4 integrate .. //depot/projects/mjexp/sys/kern/sched_ule.c#12 integrate .. //depot/projects/mjexp/sys/kern/subr_prf.c#4 integrate .. //depot/projects/mjexp/sys/kern/subr_smp.c#2 integrate .. //depot/projects/mjexp/sys/kern/vfs_bio.c#8 integrate .. //depot/projects/mjexp/sys/net/bridgestp.c#6 integrate .. //depot/projects/mjexp/sys/net/bridgestp.h#5 integrate .. //depot/projects/mjexp/sys/net/ethernet.h#5 integrate .. //depot/projects/mjexp/sys/net/if_bridge.c#7 integrate .. //depot/projects/mjexp/sys/net80211/_ieee80211.h#5 integrate .. //depot/projects/mjexp/sys/net80211/ieee80211_freebsd.h#3 integrate .. //depot/projects/mjexp/sys/net80211/ieee80211_input.c#5 integrate .. //depot/projects/mjexp/sys/net80211/ieee80211_ioctl.c#3 integrate .. //depot/projects/mjexp/sys/net80211/ieee80211_node.c#4 integrate .. //depot/projects/mjexp/sys/net80211/ieee80211_proto.c#4 integrate .. //depot/projects/mjexp/sys/net80211/ieee80211_proto.h#3 integrate .. //depot/projects/mjexp/sys/net80211/ieee80211_var.h#5 integrate .. //depot/projects/mjexp/sys/netgraph/ng_base.c#3 integrate .. //depot/projects/mjexp/sys/netgraph/ng_eiface.c#2 integrate .. //depot/projects/mjexp/sys/netinet/tcp_input.c#7 integrate .. //depot/projects/mjexp/sys/netinet/udp_usrreq.c#8 integrate .. //depot/projects/mjexp/sys/nfsclient/nfs_socket.c#6 integrate .. //depot/projects/mjexp/sys/nfsclient/nfs_subs.c#2 integrate .. //depot/projects/mjexp/sys/nfsclient/nfs_vnops.c#6 integrate .. //depot/projects/mjexp/sys/nfsclient/nfsnode.h#2 integrate .. //depot/projects/mjexp/sys/powerpc/powerpc/nexus.c#2 integrate .. //depot/projects/mjexp/sys/powerpc/powerpc/pic_if.m#2 integrate .. //depot/projects/mjexp/sys/powerpc/powerpc/trap.c#3 integrate .. //depot/projects/mjexp/sys/sparc64/central/central.c#2 integrate .. //depot/projects/mjexp/sys/sparc64/fhc/fhc.c#3 integrate .. //depot/projects/mjexp/sys/sparc64/fhc/fhc_central.c#2 delete .. //depot/projects/mjexp/sys/sparc64/fhc/fhc_nexus.c#2 delete .. //depot/projects/mjexp/sys/sparc64/fhc/fhcvar.h#2 delete .. //depot/projects/mjexp/sys/sparc64/include/bus_private.h#2 integrate .. //depot/projects/mjexp/sys/sparc64/include/iommureg.h#2 integrate .. //depot/projects/mjexp/sys/sparc64/include/nexusvar.h#2 delete .. //depot/projects/mjexp/sys/sparc64/include/ofw_nexus.h#2 integrate .. //depot/projects/mjexp/sys/sparc64/include/ofw_upa.h#2 delete .. //depot/projects/mjexp/sys/sparc64/pci/psycho.c#4 integrate .. //depot/projects/mjexp/sys/sparc64/pci/psychovar.h#2 integrate .. //depot/projects/mjexp/sys/sparc64/sbus/sbus.c#4 integrate .. //depot/projects/mjexp/sys/sparc64/sparc64/bus_machdep.c#3 integrate .. //depot/projects/mjexp/sys/sparc64/sparc64/iommu.c#2 integrate .. //depot/projects/mjexp/sys/sparc64/sparc64/nexus.c#3 integrate .. //depot/projects/mjexp/sys/sparc64/sparc64/sc_machdep.c#2 integrate .. //depot/projects/mjexp/sys/sparc64/sparc64/trap.c#3 integrate .. //depot/projects/mjexp/sys/sparc64/sparc64/upa.c#4 integrate .. //depot/projects/mjexp/sys/sys/buf.h#4 integrate .. //depot/projects/mjexp/sys/sys/extattr.h#3 integrate .. //depot/projects/mjexp/sys/sys/lock.h#5 integrate .. //depot/projects/mjexp/sys/sys/mutex.h#5 integrate .. //depot/projects/mjexp/sys/sys/param.h#11 integrate .. //depot/projects/mjexp/sys/sys/proc.h#9 integrate .. //depot/projects/mjexp/sys/sys/rwlock.h#4 integrate .. //depot/projects/mjexp/sys/sys/sleepqueue.h#5 integrate .. //depot/projects/mjexp/sys/sys/sx.h#2 integrate .. //depot/projects/mjexp/sys/sys/systm.h#9 integrate .. //depot/projects/mjexp/sys/ufs/ufs/extattr.h#2 integrate .. //depot/projects/mjexp/sys/vm/vm_fault.c#4 integrate .. //depot/projects/mjexp/tools/regression/netinet/ipbroadcast/ipbroadcast.c#2 integrate .. //depot/projects/mjexp/usr.bin/brandelf/brandelf.1#2 integrate .. //depot/projects/mjexp/usr.bin/calendar/calendars/calendar.freebsd#6 integrate .. //depot/projects/mjexp/usr.bin/fstat/fstat.c#2 integrate .. //depot/projects/mjexp/usr.bin/ipcrm/ipcrm.1#2 integrate .. //depot/projects/mjexp/usr.bin/make/globals.h#2 integrate .. //depot/projects/mjexp/usr.bin/make/job.c#2 integrate .. //depot/projects/mjexp/usr.bin/make/job.h#2 integrate .. //depot/projects/mjexp/usr.bin/make/main.c#2 integrate .. //depot/projects/mjexp/usr.bin/make/make.1#3 integrate .. //depot/projects/mjexp/usr.bin/make/make.h#2 integrate .. //depot/projects/mjexp/usr.bin/make/parse.c#2 integrate .. //depot/projects/mjexp/usr.bin/mkuzip/mkuzip.c#2 integrate .. //depot/projects/mjexp/usr.bin/tar/bsdtar_platform.h#3 integrate .. //depot/projects/mjexp/usr.sbin/arp/arp.c#3 integrate .. //depot/projects/mjexp/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_device_tbl.c#2 integrate .. //depot/projects/mjexp/usr.sbin/cron/lib/entry.c#2 integrate .. //depot/projects/mjexp/usr.sbin/crunch/crunchide/crunchide.c#2 integrate .. //depot/projects/mjexp/usr.sbin/daemon/daemon.8#2 integrate .. //depot/projects/mjexp/usr.sbin/daemon/daemon.c#2 integrate .. //depot/projects/mjexp/usr.sbin/kbdmap/kbdmap.c#2 integrate .. //depot/projects/mjexp/usr.sbin/lpr/lpd/recvjob.c#2 integrate .. //depot/projects/mjexp/usr.sbin/mtest/Makefile#2 integrate .. //depot/projects/mjexp/usr.sbin/mtest/mtest.8#2 integrate .. //depot/projects/mjexp/usr.sbin/mtest/mtest.c#2 integrate .. //depot/projects/mjexp/usr.sbin/ndp/ndp.c#3 integrate .. //depot/projects/mjexp/usr.sbin/pkg_install/lib/url.c#2 integrate .. //depot/projects/mjexp/usr.sbin/sade/termcap.c#2 integrate .. //depot/projects/mjexp/usr.sbin/sysinstall/termcap.c#2 integrate .. //depot/projects/mjexp/usr.sbin/traceroute6/traceroute6.c#2 integrate Differences ... ==== //depot/projects/mjexp/Makefile.inc1#6 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.569 2007/03/01 15:42:23 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.570 2007/03/09 12:11:56 rafan Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -441,7 +441,7 @@ .for _dir in usr.bin/lex/lib cd ${.CURDIR}/${_dir}; ${LIB32WMAKE} obj .endfor -.for _dir in lib/ncurses/ncurses lib/libmagic +.for _dir in lib/ncurses/ncurses lib/ncurses/ncursesw lib/libmagic cd ${.CURDIR}/${_dir}; \ MAKEOBJDIRPREFIX=${OBJTREE}/lib32 ${MAKE} DESTDIR= build-tools .endfor @@ -921,6 +921,7 @@ bin/sh \ ${_rescue} \ lib/ncurses/ncurses \ + lib/ncurses/ncursesw \ ${_share} \ ${_aicasm} \ usr.bin/awk \ @@ -1008,7 +1009,8 @@ lib/libbz2 lib/libcom_err lib/libcrypt lib/libexpat \ ${_lib_libgssapi} ${_lib_libipx} \ lib/libkiconv lib/libkvm lib/libmd \ - lib/ncurses/ncurses lib/libopie lib/libpam \ + lib/ncurses/ncurses lib/ncurses/ncursesw \ + lib/libopie lib/libpam \ lib/libradius lib/libsbuf lib/libtacplus lib/libutil \ ${_lib_libypclnt} lib/libz lib/msun \ ${_secure_lib_libcrypto} ${_secure_lib_libssh} \ ==== //depot/projects/mjexp/bin/df/df.c#2 (text+ko) ==== @@ -44,7 +44,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.66 2006/09/20 20:55:02 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.67 2007/03/08 06:10:17 will Exp $"); #include #include @@ -93,7 +93,7 @@ return (a > b ? a : b); } -static int aflag = 0, cflag, hflag, iflag, kflag, nflag; +static int aflag = 0, cflag, hflag, iflag, kflag, lflag = 0, nflag; static struct ufs_args mdev; int @@ -159,6 +159,7 @@ if (vfslist != NULL) errx(1, "-l and -t are mutually exclusive."); vfslist = makevfslist(makenetvfslist()); + lflag = 1; break; case 'm': putenv("BLOCKSIZE=1m"); @@ -168,6 +169,8 @@ nflag = 1; break; case 't': + if (lflag) + errx(1, "-l and -t are mutually exclusive."); if (vfslist != NULL) errx(1, "only one -t option may be specified"); fstype = optarg; ==== //depot/projects/mjexp/etc/defaults/rc.conf#7 (text+ko) ==== @@ -15,7 +15,7 @@ # For a more detailed explanation of all the rc.conf variables, please # refer to the rc.conf(5) manual page. # -# $FreeBSD: src/etc/defaults/rc.conf,v 1.305 2007/03/03 06:36:32 ume Exp $ +# $FreeBSD: src/etc/defaults/rc.conf,v 1.306 2007/03/06 13:13:53 yar Exp $ ############################################################## ### Important initial Boot-time options #################### @@ -42,10 +42,10 @@ powerd_flags="" # Flags to powerd (if enabled). tmpmfs="AUTO" # Set to YES to always create an mfs /tmp, NO to never tmpsize="20m" # Size of mfs /tmp if created -tmpmfs_flags="-S -M" # Extra mdmfs options for the mfs /tmp +tmpmfs_flags="-S" # Extra mdmfs options for the mfs /tmp varmfs="AUTO" # Set to YES to always create an mfs /var, NO to never varsize="32m" # Size of mfs /var if created -varmfs_flags="-S -M" # Extra mount options for the mfs /var +varmfs_flags="-S" # Extra mount options for the mfs /var populate_var="AUTO" # Set to YES to always (re)populate /var, NO to never cleanvar_enable="YES" # Clean the /var directory local_startup="/usr/local/etc/rc.d /usr/X11R6/etc/rc.d" # startup script dirs. ==== //depot/projects/mjexp/lib/libarchive/archive_entry.c#5 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry.c,v 1.38 2007/03/01 06:22:34 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry.c,v 1.39 2007/03/08 06:07:07 kientzle Exp $"); #ifdef HAVE_SYS_STAT_H #include @@ -1032,7 +1032,7 @@ entry->acl_p = entry->acl_p->next; if (entry->acl_p == NULL) { entry->acl_state = 0; - return (ARCHIVE_WARN); + return (ARCHIVE_EOF); /* End of ACL entries. */ } *type = entry->acl_p->type; *permset = entry->acl_p->permset; ==== //depot/projects/mjexp/lib/libarchive/test/Makefile#2 (text+ko) ==== @@ -1,6 +1,8 @@ -# $FreeBSD: src/lib/libarchive/test/Makefile,v 1.1 2007/03/03 07:37:37 kientzle Exp $ +# $FreeBSD: src/lib/libarchive/test/Makefile,v 1.2 2007/03/08 06:09:27 kientzle Exp $ TESTS= \ + test_acl_basic.c \ + test_acl_pax.c \ test_archive_api_feature.c \ test_bad_fd.c \ test_read_data_large.c \ ==== //depot/projects/mjexp/lib/libc/regex/engine.c#4 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/regex/engine.c,v 1.19 2007/03/05 03:07:36 delphij Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/regex/engine.c,v 1.20 2007/03/05 09:43:55 delphij Exp $"); /* * The matching engine and friends. This file is #included by regexec.c @@ -103,10 +103,11 @@ /* === engine.c === */ static int matcher(struct re_guts *g, char *string, size_t nmatch, regmatch_t pmatch[], int eflags); static char *dissect(struct match *m, char *start, char *stop, sopno startst, sopno stopst); -static char *backref(struct match *m, char *start, char *stop, sopno startst, sopno stopst, sopno lev); +static char *backref(struct match *m, char *start, char *stop, sopno startst, sopno stopst, sopno lev, int); static char *fast(struct match *m, char *start, char *stop, sopno startst, sopno stopst); static char *slow(struct match *m, char *start, char *stop, sopno startst, sopno stopst); static states step(struct re_guts *g, sopno start, sopno stop, states bef, wint_t ch, states aft); +#define MAX_RECURSION 100 #define BOL (OUT-1) #define EOL (BOL-1) #define BOLEOL (BOL-2) @@ -298,7 +299,7 @@ return(REG_ESPACE); } NOTE("backref dissect"); - dp = backref(m, m->coldp, endp, gf, gl, (sopno)0); + dp = backref(m, m->coldp, endp, gf, gl, (sopno)0, 0); } if (dp != NULL) break; @@ -321,7 +322,7 @@ } #endif NOTE("backoff dissect"); - dp = backref(m, m->coldp, endp, gf, gl, (sopno)0); + dp = backref(m, m->coldp, endp, gf, gl, (sopno)0, 0); } assert(dp == NULL || dp == endp); if (dp != NULL) /* found a shorter one */ @@ -553,13 +554,14 @@ == char *stop, sopno startst, sopno stopst, sopno lev); */ static char * /* == stop (success) or NULL (failure) */ -backref(m, start, stop, startst, stopst, lev) +backref(m, start, stop, startst, stopst, lev, rec) struct match *m; char *start; char *stop; sopno startst; sopno stopst; sopno lev; /* PLUS nesting level */ +int rec; { int i; sopno ss; /* start sop of current subRE */ @@ -674,7 +676,7 @@ return(NULL); assert(m->pmatch[i].rm_so != -1); len = m->pmatch[i].rm_eo - m->pmatch[i].rm_so; - if (len == 0) + if (len == 0 && rec++ > MAX_RECURSION) return(NULL); assert(stop - m->beginp >= len); if (sp > stop - len) @@ -684,28 +686,28 @@ return(NULL); while (m->g->strip[ss] != SOP(O_BACK, i)) ss++; - return(backref(m, sp+len, stop, ss+1, stopst, lev)); + return(backref(m, sp+len, stop, ss+1, stopst, lev, rec)); break; case OQUEST_: /* to null or not */ - dp = backref(m, sp, stop, ss+1, stopst, lev); + dp = backref(m, sp, stop, ss+1, stopst, lev, rec); if (dp != NULL) return(dp); /* not */ - return(backref(m, sp, stop, ss+OPND(s)+1, stopst, lev)); + return(backref(m, sp, stop, ss+OPND(s)+1, stopst, lev, rec)); break; case OPLUS_: assert(m->lastpos != NULL); assert(lev+1 <= m->g->nplus); m->lastpos[lev+1] = sp; - return(backref(m, sp, stop, ss+1, stopst, lev+1)); + return(backref(m, sp, stop, ss+1, stopst, lev+1, rec)); break; case O_PLUS: if (sp == m->lastpos[lev]) /* last pass matched null */ - return(backref(m, sp, stop, ss+1, stopst, lev-1)); + return(backref(m, sp, stop, ss+1, stopst, lev-1, rec)); /* try another pass */ m->lastpos[lev] = sp; - dp = backref(m, sp, stop, ss-OPND(s)+1, stopst, lev); + dp = backref(m, sp, stop, ss-OPND(s)+1, stopst, lev, rec); if (dp == NULL) - return(backref(m, sp, stop, ss+1, stopst, lev-1)); + return(backref(m, sp, stop, ss+1, stopst, lev-1, rec)); else return(dp); break; @@ -714,7 +716,7 @@ esub = ss + OPND(s) - 1; assert(OP(m->g->strip[esub]) == OOR1); for (;;) { /* find first matching branch */ - dp = backref(m, sp, stop, ssub, esub, lev); + dp = backref(m, sp, stop, ssub, esub, lev, rec); if (dp != NULL) return(dp); /* that one missed, try next one */ @@ -735,7 +737,7 @@ assert(0 < i && i <= m->g->nsub); offsave = m->pmatch[i].rm_so; m->pmatch[i].rm_so = sp - m->offp; - dp = backref(m, sp, stop, ss+1, stopst, lev); + dp = backref(m, sp, stop, ss+1, stopst, lev, rec); if (dp != NULL) return(dp); m->pmatch[i].rm_so = offsave; @@ -746,7 +748,7 @@ assert(0 < i && i <= m->g->nsub); offsave = m->pmatch[i].rm_eo; m->pmatch[i].rm_eo = sp - m->offp; - dp = backref(m, sp, stop, ss+1, stopst, lev); + dp = backref(m, sp, stop, ss+1, stopst, lev, rec); if (dp != NULL) return(dp); m->pmatch[i].rm_eo = offsave; ==== //depot/projects/mjexp/lib/libc/regex/grot/tests#2 (text+ko) ==== @@ -1,5 +1,5 @@ # regular expression test set -# $FreeBSD: src/lib/libc/regex/grot/tests,v 1.2 2000/07/09 18:14:39 dcs Exp $ +# $FreeBSD: src/lib/libc/regex/grot/tests,v 1.3 2007/03/05 09:44:41 delphij Exp $ # Lines are at least three fields, separated by one or more tabs. "" stands # for an empty field. First field is an RE. Second field is flags. If # C flag given, regcomp() is expected to fail, and the third field is the @@ -165,6 +165,30 @@ \(a\)\1bc*d b aabcccd aabcccd \(a\)\1bc*[ce]d b aabcccd aabcccd ^\(a\)\1b\(c\)*cd$ b aabcccd aabcccd +\(b*\)\(a*\1\)* b ab a +\([^_]*\)\(_*\1\)* b foo_foo_bar_bar_bar_baz foo_foo foo,_foo +\([^_]*\)\(_*\1\)* b bar_bar_bar_baz bar_bar_bar bar,_bar +\([^_]*\)\(_*\1\)* b foo_bar_baz foo foo +\(.*\)\1 b "" "" +\(.*\)\1 b a "" +\(.*\)\1 b aa aa +\(.*\)\1 b aaa aa +\(.*\)\1 b aaaa aaaa +\([^_]*\)\1 b "" "" +\([^_]*\)\1 b a "" +\([^_]*\)\1 b aa aa +\([^_]*\)\1 b aaa aa +\([^_]*\)\1 b aaaa aaaa +foo\(.*\)bar\1 b foolbarl foolbarl l +foo\(.*\)bar\1 b foobar foobar "" +\(\(.\)b\)*\1 b aba +\(\(.\)b\)*\1 b abba +\(\(.\)b\)*\1 b abbba +\(\(.\)b\)*\1 b abbbba bbbb bb,b +\(\(.\)b\)*\1 b abbbbba abbbbb bb,b +\(\(.\)b\)*\1 b abbbbbba abbbbb bb,b +\(\(.\)b\)*\1 b abbbbbbbbbbbbbba abbbbbbbbbbbbb bb,b +\(\(.\)b\)*\1 b abbbbbbbbbbbbbbba abbbbbbbbbbbbbbb bb,b # ordinary repetitions ab*c & abc abc ==== //depot/projects/mjexp/lib/libc/resolv/res_send.c#5 (text) ==== @@ -69,7 +69,7 @@ static const char rcsid[] = "$Id: res_send.c,v 1.5.2.2.4.9 2006/10/16 23:00:50 marka Exp $"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/resolv/res_send.c,v 1.6 2007/01/09 00:28:04 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/resolv/res_send.c,v 1.7 2007/03/05 19:39:51 jhb Exp $"); /* * Send query to name server and wait for reply. @@ -124,10 +124,8 @@ #define EXT(res) ((res)->_u._ext) -#ifndef USE_POLL +#if !defined(USE_POLL) && !defined(USE_KQUEUE) static const int highestFD = FD_SETSIZE - 1; -#else -static int highestFD = 0; #endif /* Forward. */ @@ -305,10 +303,6 @@ #endif char abuf[NI_MAXHOST]; -#ifdef USE_POLL - highestFD = sysconf(_SC_OPEN_MAX) - 1; -#endif - /* No name servers or res_init() failure */ if (statp->nscount == 0 || EXT(statp).ext == NULL) { errno = ESRCH; @@ -659,10 +653,12 @@ res_nclose(statp); statp->_vcsock = _socket(nsap->sa_family, SOCK_STREAM, 0); +#if !defined(USE_POLL) && !defined(USE_KQUEUE) if (statp->_vcsock > highestFD) { res_nclose(statp); errno = ENOTSOCK; } +#endif if (statp->_vcsock < 0) { switch (errno) { case EPROTONOSUPPORT: @@ -837,10 +833,12 @@ if (EXT(statp).nssocks[ns] == -1) { EXT(statp).nssocks[ns] = _socket(nsap->sa_family, SOCK_DGRAM, 0); +#if !defined(USE_POLL) && !defined(USE_KQUEUE) if (EXT(statp).nssocks[ns] > highestFD) { res_nclose(statp); errno = ENOTSOCK; } +#endif if (EXT(statp).nssocks[ns] < 0) { switch (errno) { case EPROTONOSUPPORT: ==== //depot/projects/mjexp/lib/libc/sys/getsockopt.2#3 (text+ko) ==== @@ -26,9 +26,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)getsockopt.2 8.4 (Berkeley) 5/2/95 -.\" $FreeBSD: src/lib/libc/sys/getsockopt.2,v 1.36 2007/01/11 18:45:41 maxim Exp $ +.\" $FreeBSD: src/lib/libc/sys/getsockopt.2,v 1.38 2007/03/09 19:43:42 bms Exp $ .\" -.Dd January 11, 2007 +.Dd March 8, 2007 .Dt GETSOCKOPT 2 .Os .Sh NAME @@ -165,6 +165,7 @@ for the socket .It Dv SO_TIMESTAMP Ta "enables reception of a timestamp with datagrams" .It Dv SO_BINTIME Ta "enables reception of a timestamp with datagrams" +.It Dv SO_ACCEPTCONN Ta "get listening status of the socket (get only)" .It Dv SO_TYPE Ta "get the type of the socket (get only)" .It Dv SO_ERROR Ta "get and clear error on the socket (get only)" .El @@ -408,11 +409,17 @@ .Ed .Pp Finally, +.Dv SO_ACCEPTCONN , .Dv SO_TYPE and .Dv SO_ERROR are options used only with .Fn getsockopt . +.Dv SO_ACCEPTCONN +returns whether the socket is currently accepting connections, +that is, whether or not the +.Xr listen 2 +system call was invoked on the socket. .Dv SO_TYPE returns the type of the socket, such as .Dv SOCK_STREAM ; @@ -453,6 +460,7 @@ .El .Sh SEE ALSO .Xr ioctl 2 , +.Xr listen 2 , .Xr recvmsg 2 , .Xr socket 2 , .Xr getprotoent 3 , ==== //depot/projects/mjexp/lib/libc/sys/shutdown.2#3 (text+ko) ==== @@ -1,3 +1,4 @@ +.\" Copyright (c) 2007 Bruce M. Simpson. .\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" @@ -26,14 +27,14 @@ .\" SUCH DAMAGE. .\" .\" @(#)shutdown.2 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/sys/shutdown.2,v 1.16 2007/01/09 00:28:15 imp Exp $ +.\" $FreeBSD: src/lib/libc/sys/shutdown.2,v 1.22 2007/03/07 13:34:49 bms Exp $ .\" -.Dd February 27, 2001 +.Dd March 5, 2007 .Dt SHUTDOWN 2 .Os .Sh NAME .Nm shutdown -.Nd shut down part of a full-duplex connection +.Nd disable sends and/or receives on a socket .Sh LIBRARY .Lb libc .Sh SYNOPSIS @@ -44,22 +45,77 @@ .Sh DESCRIPTION The .Fn shutdown -system call causes all or part of a full-duplex connection on -the socket associated with the file descriptor -.Fa s -to be shut down. +system call disables sends or receives on a socket. The .Fa how argument specifies the type of shutdown. Possible values are: -.Bl -tag -width SHUT_RDWR +.Bl -tag -width ".Dv SHUT_RDWR" .It Dv SHUT_RD -further receives will be disallowed. +Further receives will be disallowed. .It Dv SHUT_WR -further sends will be disallowed. +Further sends will be disallowed. +This may cause actions specific to the protocol family of the socket +.Fa s +to happen; see +.Sx IMPLEMENTATION NOTES . .It Dv SHUT_RDWR -further sends and receives will be disallowed. +Further sends and receives will be disallowed. +Implies +.Dv SHUT_WR . +.El +.Pp +If the file descriptor +.Fa s +is associated with a +.Dv SOCK_STREAM +socket, all or part of the full-duplex connection will be shut down. +.\" +.Sh IMPLEMENTATION NOTES +The following protocol specific actions apply to the use of +.Dv SHUT_WR +(and potentially also +.Dv SHUT_RDWR ) , +based on the properties of the socket associated with the file descriptor +.Fa s . +.Bl -column ".Dv PF_INET6" ".Dv SOCK_STREAM" ".Dv IPPROTO_SCTP" +.It Sy Domain Ta Sy Type Ta Sy Protocol Ta Sy Return value and action +.It Dv PF_INET Ta Dv SOCK_DGRAM Ta Dv IPPROTO_SCTP Ta +Return \-1. +The global variable +.Va errno +will be set to +.Er EOPNOTSUPP . +.It Dv PF_INET Ta Dv SOCK_DGRAM Ta Dv IPPROTO_UDP Ta +Return 0. +ICMP messages will +.Em not +be generated. +.It Dv PF_INET Ta Dv SOCK_STREAM Ta Dv IPPROTO_SCTP Ta +Return 0. +Send queued data and tear down association. +.It Dv PF_INET Ta Dv SOCK_STREAM Ta Dv IPPROTO_TCP Ta +Return 0. +Send queued data, wait for ACK, then send FIN. +.It Dv PF_INET6 Ta Dv SOCK_DGRAM Ta Dv IPPROTO_SCTP Ta +Return \-1. +The global variable +.Va errno +will be set to +.Er EOPNOTSUPP . +.It Dv PF_INET6 Ta Dv SOCK_DGRAM Ta Dv IPPROTO_UDP Ta +Return 0. +ICMP messages will +.Em not +be generated. +.It Dv PF_INET6 Ta Dv SOCK_STREAM Ta Dv IPPROTO_SCTP Ta +Return 0. +Send queued data and tear down association. +.It Dv PF_INET6 Ta Dv SOCK_STREAM Ta Dv IPPROTO_TCP Ta +Return 0. +Send queued data, wait for ACK, then send FIN. .El +.\" .Sh RETURN VALUES .Rv -std shutdown .Sh ERRORS @@ -75,8 +131,16 @@ The .Fa how argument is invalid. +.It Bq Er EOPNOTSUPP +The socket associated with the file descriptor +.Fa s +does not support this operation. .It Bq Er ENOTCONN -The socket is not connected. +The +.Fa s +argument specifies a +.Dv SOCK_STREAM +socket which is not connected. .It Bq Er ENOTSOCK The .Fa s @@ -84,7 +148,9 @@ .El .Sh SEE ALSO .Xr connect 2 , -.Xr socket 2 +.Xr socket 2 , +.Xr inet 4 , +.Xr inet6 4 .Sh STANDARDS The .Fn shutdown @@ -102,3 +168,24 @@ .Dv SHUT_RDWR constants appeared in .St -p1003.1g-2000 . +.Sh AUTHORS +.An -nosplit +This manual page was updated by +.An Bruce M. Simpson Aq bms@FreeBSD.org +to reflect how +.Fn shutdown +behaves with +.Dv PF_INET +and +.Dv PF_INET6 +sockets. +.Sh BUGS +The ICMP +.Dq Li "port unreachable" +message should be generated in response to +datagrams received on a local port to which +.Fa s +is bound +after +.Fn shutdown +is called. ==== //depot/projects/mjexp/lib/libelf/gelf.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libelf/gelf.h,v 1.2 2006/12/18 05:40:01 jkoshy Exp $ + * $FreeBSD: src/lib/libelf/gelf.h,v 1.3 2007/03/08 04:01:30 jkoshy Exp $ */ #ifndef _GELF_H_ @@ -56,6 +56,22 @@ typedef Elf64_Syminfo GElf_Syminfo; /* Symbol information */ #endif +#define GELF_M_INFO ELF64_M_INFO +#define GELF_M_SIZE ELF64_M_SIZE +#define GELF_M_SYM ELF64_M_SYM + +#define GELF_R_INFO ELF64_R_INFO +#define GELF_R_SYM ELF64_R_SYM +#define GELF_R_TYPE ELF64_R_TYPE +#define GELF_R_TYPE_DATA ELF64_R_TYPE_DATA +#define GELF_R_TYPE_ID ELF64_R_TYPE_ID +#define GELF_R_TYPE_INFO ELF64_R_TYPE_INFO + +#define GELF_ST_BIND ELF64_ST_BIND +#define GELF_ST_INFO ELF64_ST_INFO +#define GELF_ST_TYPE ELF64_ST_TYPE +#define GELF_ST_VISIBILITY ELF64_ST_VISIBILITY + __BEGIN_DECLS long gelf_checksum(Elf *_elf); size_t gelf_fsize(Elf *_elf, Elf_Type _type, size_t _count, ==== //depot/projects/mjexp/lib/libpthread/thread/thr_kern.c#3 (text+ko) ==== @@ -33,7 +33,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.122 2006/12/18 17:08:07 peadar Exp $"); +__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.124 2007/03/05 19:00:49 brian Exp $"); #include #include @@ -228,6 +228,10 @@ __sys_sigprocmask(SIG_SETMASK, &curthread->sigmask, NULL); _thread_active_threads = 1; + curthread->kse->k_kcb->kcb_kmbx.km_curthread = NULL; + curthread->attr.flags &= ~PTHREAD_SCOPE_PROCESS; + curthread->attr.flags |= PTHREAD_SCOPE_SYSTEM; + /* * Enter a loop to remove and free all threads other than * the running thread from the active thread list: @@ -310,13 +314,6 @@ inited = 0; } - /* - * After a fork(), the leftover thread goes back to being - * scope process. - */ - curthread->attr.flags &= ~PTHREAD_SCOPE_SYSTEM; - curthread->attr.flags |= PTHREAD_SCOPE_PROCESS; - /* We're no longer part of any lists */ curthread->tlflags = 0; ==== //depot/projects/mjexp/lib/ncurses/Makefile#2 (text+ko) ==== @@ -1,5 +1,6 @@ -# $FreeBSD: src/lib/ncurses/Makefile,v 1.1 2007/01/20 07:46:44 rafan Exp $ +# $FreeBSD: src/lib/ncurses/Makefile,v 1.2 2007/03/09 12:11:56 rafan Exp $ -SUBDIR= ncurses form menu panel +SUBDIR= ncurses form menu panel \ + ncursesw formw menuw panelw .include ==== //depot/projects/mjexp/lib/ncurses/Makefile.inc#2 (text+ko) ==== @@ -1,4 +1,5 @@ +# $FreeBSD: src/lib/ncurses/Makefile.inc,v 1.2 2007/03/09 09:54:07 rafan Exp $ + # This is to include src/lib/Makefile.inc -# $FreeBSD: src/lib/ncurses/Makefile.inc,v 1.1 2007/01/20 07:46:44 rafan Exp $ .include "../Makefile.inc" ==== //depot/projects/mjexp/lib/ncurses/config.mk#2 (text+ko) ==== @@ -1,10 +1,17 @@ +# $FreeBSD: src/lib/ncurses/config.mk,v 1.3 2007/03/09 12:11:56 rafan Exp $ + # This Makefile is shared by libncurses, libform, libmenu, libpanel. -# -# $FreeBSD: src/lib/ncurses/config.mk,v 1.1 2007/01/20 07:46:44 rafan Exp $ NCURSES_DIR= ${.CURDIR}/../../../contrib/ncurses +.if defined(ENABLE_WIDEC) +LIB_SUFFIX= w +CFLAGS+= -D_XOPEN_SOURCE_EXTENDED -DENABLE_WIDEC +NCURSES_CFG_H= ${.CURDIR}/../ncurses/ncurses_cfg.h +.else +LIB_SUFFIX= NCURSES_CFG_H= ${.CURDIR}/ncurses_cfg.h +.endif CFLAGS+= -I. .if exists(${.OBJDIR}/../ncurses${LIB_SUFFIX}) ==== //depot/projects/mjexp/lib/ncurses/form/Makefile#3 (text+ko) ==== @@ -1,165 +1,164 @@ -# Makefile for libform -# $FreeBSD: src/lib/ncurses/form/Makefile,v 1.11 2007/01/20 07:46:44 rafan Exp $ +# $FreeBSD: src/lib/ncurses/form/Makefile,v 1.13 2007/03/09 12:11:56 rafan Exp $ + +.include "${.CURDIR}/../config.mk" -.include "${.CURDIR}/../config.mk" +SRCDIR= ${NCURSES_DIR}/form -SRCDIR= ${NCURSES_DIR}/form +LIB= form${LIB_SUFFIX} -LIB= form -DPADD= ${LIBNCURSES} -LDADD= -lncurses +.PATH: ${SRCDIR} +SRCS= \ + ncurses_def.h \ + fld_arg.c \ + fld_attr.c \ + fld_current.c \ + fld_def.c \ + fld_dup.c \ + fld_ftchoice.c \ + fld_ftlink.c \ + fld_info.c \ + fld_just.c \ + fld_link.c \ + fld_max.c \ + fld_move.c \ + fld_newftyp.c \ + fld_opts.c \ + fld_pad.c \ + fld_page.c \ + fld_stat.c \ + fld_type.c \ + fld_user.c \ + frm_cursor.c \ + frm_data.c \ + frm_def.c \ + frm_driver.c \ + frm_hook.c \ + frm_opts.c \ + frm_page.c \ + frm_post.c \ + frm_req_name.c \ + frm_scale.c \ + frm_sub.c \ + frm_user.c \ + frm_win.c \ + fty_alnum.c \ + fty_alpha.c \ + fty_enum.c \ + fty_int.c \ + fty_ipv4.c \ + fty_num.c \ + fty_regex.c -.PATH: ${SRCDIR} -SRCS= \ - ncurses_def.h \ - fld_arg.c \ - fld_attr.c \ - fld_current.c \ >>> TRUNCATED FOR MAIL (1000 lines) <<<