Merge master.kernel.org:/pub/scm/linux/kernel/git/acme/net-2.6
authorLinus Torvalds <torvalds@g5.osdl.org>
Mon, 7 Nov 2005 16:05:11 +0000 (08:05 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 7 Nov 2005 16:05:11 +0000 (08:05 -0800)
1232 files changed:
Documentation/Changes
Documentation/DocBook/Makefile
Documentation/DocBook/journal-api.tmpl
Documentation/DocBook/kernel-api.tmpl
Documentation/DocBook/rapidio.tmpl [new file with mode: 0644]
Documentation/MSI-HOWTO.txt
Documentation/RCU/whatisRCU.txt
Documentation/arm/README
Documentation/device-mapper/snapshot.txt
Documentation/fb/vesafb.txt
Documentation/feature-removal-schedule.txt
Documentation/filesystems/dentry-locking.txt [new file with mode: 0644]
Documentation/filesystems/devfs/README
Documentation/filesystems/ramfs-rootfs-initramfs.txt [new file with mode: 0644]
Documentation/filesystems/vfs.txt
Documentation/hpet.txt
Documentation/magic-number.txt
Documentation/networking/decnet.txt
Documentation/networking/s2io.txt
Documentation/oops-tracing.txt
Documentation/power/video.txt
Documentation/s390/driver-model.txt
Documentation/scsi/LICENSE.qla2xxx [new file with mode: 0644]
Documentation/sparse.txt
Documentation/video4linux/bttv/README.freeze
Documentation/vm/hugetlbpage.txt
MAINTAINERS
Makefile
arch/arm/kernel/entry-armv.S
arch/arm/kernel/ptrace.c
arch/arm/kernel/setup.c
arch/arm/mach-aaec2000/clock.c
arch/arm/mach-epxa10db/mm.c
arch/arm/mach-integrator/impd1.c
arch/arm/mach-ixp2000/uengine.c
arch/arm/mach-ixp4xx/common-pci.c
arch/arm/mach-pxa/Kconfig
arch/arm/mach-pxa/Makefile
arch/arm/mach-pxa/corgi_lcd.c
arch/arm/mach-pxa/pm.c
arch/arm/mach-pxa/tosa.c [new file with mode: 0644]
arch/arm26/kernel/ptrace.c
arch/cris/arch-v10/README.mm
arch/cris/arch-v10/kernel/ptrace.c
arch/cris/arch-v10/kernel/signal.c
arch/cris/arch-v32/drivers/cryptocop.c
arch/cris/arch-v32/kernel/ptrace.c
arch/cris/arch-v32/kernel/signal.c
arch/cris/mm/ioremap.c
arch/frv/kernel/ptrace.c
arch/h8300/kernel/ptrace.c
arch/i386/Kconfig
arch/i386/Kconfig.debug
arch/i386/kernel/apic.c
arch/i386/kernel/apm.c
arch/i386/kernel/cpu/common.c
arch/i386/kernel/cpu/cpufreq/speedstep-centrino.c
arch/i386/kernel/cpu/mcheck/k7.c
arch/i386/kernel/cpu/mcheck/mce.c
arch/i386/kernel/cpu/mcheck/p4.c
arch/i386/kernel/cpu/mcheck/p5.c
arch/i386/kernel/cpu/mcheck/p6.c
arch/i386/kernel/cpu/mcheck/winchip.c
arch/i386/kernel/ioport.c
arch/i386/kernel/kprobes.c
arch/i386/kernel/ldt.c
arch/i386/kernel/mca.c
arch/i386/kernel/ptrace.c
arch/i386/kernel/reboot_fixups.c
arch/i386/kernel/scx200.c
arch/i386/kernel/smpboot.c
arch/i386/oprofile/Kconfig
arch/i386/power/cpu.c
arch/ia64/Kconfig
arch/ia64/Kconfig.debug
arch/ia64/hp/sim/simserial.c
arch/ia64/kernel/kprobes.c
arch/ia64/kernel/perfmon.c
arch/ia64/kernel/setup.c
arch/ia64/oprofile/Kconfig
arch/m68k/atari/time.c
arch/m68k/kernel/ptrace.c
arch/m68knommu/Kconfig
arch/m68knommu/Makefile
arch/m68knommu/kernel/asm-offsets.c
arch/m68knommu/kernel/ptrace.c
arch/m68knommu/kernel/setup.c
arch/m68knommu/kernel/vmlinux.lds.S
arch/m68knommu/platform/520x/Makefile [new file with mode: 0644]
arch/m68knommu/platform/520x/config.c [new file with mode: 0644]
arch/m68knommu/platform/5307/Makefile
arch/m68knommu/platform/5307/head.S
arch/m68knommu/platform/5307/ints.c
arch/m68knommu/platform/5307/pit.c
arch/mips/kernel/ptrace.c
arch/parisc/kernel/ptrace.c
arch/powerpc/Kconfig
arch/powerpc/Kconfig.debug
arch/powerpc/Makefile
arch/powerpc/configs/cell_defconfig [new file with mode: 0644]
arch/powerpc/configs/g5_defconfig [new file with mode: 0644]
arch/powerpc/configs/iseries_defconfig [new file with mode: 0644]
arch/powerpc/configs/maple_defconfig [new file with mode: 0644]
arch/powerpc/configs/pseries_defconfig [new file with mode: 0644]
arch/powerpc/kernel/Makefile
arch/powerpc/kernel/asm-offsets.c
arch/powerpc/kernel/cputable.c
arch/powerpc/kernel/head_64.S
arch/powerpc/kernel/lparmap.c
arch/powerpc/kernel/ppc32.h [moved from include/asm-ppc64/ppc32.h with 86% similarity]
arch/powerpc/kernel/ppc_ksyms.c
arch/powerpc/kernel/process.c
arch/powerpc/kernel/prom.c
arch/powerpc/kernel/prom_init.c
arch/powerpc/kernel/ptrace.c
arch/powerpc/kernel/rtas-proc.c [moved from arch/ppc64/kernel/rtas-proc.c with 100% similarity]
arch/powerpc/kernel/rtas.c
arch/powerpc/kernel/rtas_flash.c [moved from arch/ppc64/kernel/rtas_flash.c with 83% similarity]
arch/powerpc/kernel/setup-common.c
arch/powerpc/kernel/setup_32.c
arch/powerpc/kernel/setup_64.c
arch/powerpc/kernel/signal_32.c
arch/powerpc/kernel/signal_64.c [moved from arch/ppc64/kernel/signal.c with 100% similarity]
arch/powerpc/kernel/smp-tbsync.c [moved from arch/ppc64/kernel/smp-tbsync.c with 52% similarity]
arch/powerpc/kernel/smp.c [moved from arch/ppc64/kernel/smp.c with 94% similarity]
arch/powerpc/kernel/time.c
arch/powerpc/kernel/traps.c
arch/powerpc/kernel/vmlinux.lds.S
arch/powerpc/lib/Makefile
arch/powerpc/lib/bitops.c [moved from arch/ppc64/kernel/bitops.c with 66% similarity]
arch/powerpc/lib/copypage_64.S
arch/powerpc/lib/copyuser_64.S
arch/powerpc/lib/locks.c
arch/powerpc/mm/hash_low_64.S
arch/powerpc/mm/hash_native_64.c
arch/powerpc/mm/hash_utils_64.c
arch/powerpc/mm/hugetlbpage.c
arch/powerpc/mm/init_64.c
arch/powerpc/mm/mem.c
arch/powerpc/mm/pgtable_64.c
arch/powerpc/mm/ppc_mmu_32.c
arch/powerpc/mm/slb.c
arch/powerpc/mm/slb_low.S
arch/powerpc/mm/stab.c
arch/powerpc/mm/tlb_64.c
arch/powerpc/oprofile/Kconfig
arch/powerpc/platforms/Makefile
arch/powerpc/platforms/cell/Makefile [new file with mode: 0644]
arch/powerpc/platforms/cell/interrupt.c [moved from arch/ppc64/kernel/bpa_iic.c with 97% similarity]
arch/powerpc/platforms/cell/interrupt.h [moved from arch/ppc64/kernel/bpa_iic.h with 92% similarity]
arch/powerpc/platforms/cell/iommu.c [moved from arch/ppc64/kernel/bpa_iommu.c with 89% similarity]
arch/powerpc/platforms/cell/iommu.h [moved from arch/ppc64/kernel/bpa_iommu.h with 92% similarity]
arch/powerpc/platforms/cell/setup.c [moved from arch/ppc64/kernel/bpa_setup.c with 74% similarity]
arch/powerpc/platforms/cell/smp.c [new file with mode: 0644]
arch/powerpc/platforms/cell/spider-pic.c [moved from arch/ppc64/kernel/spider-pic.c with 99% similarity]
arch/powerpc/platforms/chrp/nvram.c
arch/powerpc/platforms/chrp/pegasos_eth.c
arch/powerpc/platforms/chrp/smp.c
arch/powerpc/platforms/iseries/call_hpt.h
arch/powerpc/platforms/iseries/call_pci.h
arch/powerpc/platforms/iseries/call_sm.h
arch/powerpc/platforms/iseries/htab.c
arch/powerpc/platforms/iseries/hvlog.c
arch/powerpc/platforms/iseries/hvlpconfig.c
arch/powerpc/platforms/iseries/iommu.c
arch/powerpc/platforms/iseries/irq.c
arch/powerpc/platforms/iseries/ksyms.c
arch/powerpc/platforms/iseries/lpardata.c
arch/powerpc/platforms/iseries/lpevents.c
arch/powerpc/platforms/iseries/mf.c
arch/powerpc/platforms/iseries/naca.h [moved from include/asm-ppc64/naca.h with 85% similarity]
arch/powerpc/platforms/iseries/pci.c
arch/powerpc/platforms/iseries/proc.c
arch/powerpc/platforms/iseries/release_data.h
arch/powerpc/platforms/iseries/setup.c
arch/powerpc/platforms/iseries/smp.c
arch/powerpc/platforms/iseries/vio.c
arch/powerpc/platforms/iseries/viopath.c
arch/powerpc/platforms/iseries/vpdinfo.c
arch/powerpc/platforms/powermac/pic.c
arch/powerpc/platforms/powermac/setup.c
arch/powerpc/platforms/pseries/Kconfig
arch/powerpc/platforms/pseries/Makefile
arch/powerpc/platforms/pseries/iommu.c
arch/powerpc/platforms/pseries/lpar.c
arch/powerpc/platforms/pseries/plpar_wrappers.h [new file with mode: 0644]
arch/powerpc/platforms/pseries/reconfig.c
arch/powerpc/platforms/pseries/rtas-fw.c [deleted file]
arch/powerpc/platforms/pseries/rtas-fw.h [deleted file]
arch/powerpc/platforms/pseries/rtasd.c [moved from arch/ppc64/kernel/rtasd.c with 100% similarity]
arch/powerpc/platforms/pseries/setup.c
arch/powerpc/platforms/pseries/smp.c
arch/powerpc/sysdev/Makefile
arch/powerpc/sysdev/dart.h [moved from include/asm-ppc64/dart.h with 94% similarity]
arch/powerpc/sysdev/mmio_nvram.c [moved from arch/ppc64/kernel/bpa_nvram.c with 56% similarity]
arch/powerpc/sysdev/u3_iommu.c
arch/ppc/4xx_io/serial_sicc.c
arch/ppc/8260_io/fcc_enet.c
arch/ppc/8xx_io/commproc.c
arch/ppc/8xx_io/cs4218_tdm.c
arch/ppc/Kconfig
arch/ppc/Makefile
arch/ppc/boot/simple/Makefile
arch/ppc/boot/simple/misc.c
arch/ppc/boot/simple/openbios.c
arch/ppc/configs/ev64360_defconfig
arch/ppc/configs/stx_gp3_defconfig
arch/ppc/kernel/Makefile
arch/ppc/kernel/bitops.c [deleted file]
arch/ppc/kernel/head_44x.S
arch/ppc/kernel/irq.c
arch/ppc/kernel/machine_kexec.c
arch/ppc/kernel/ppc_ksyms.c
arch/ppc/kernel/rio.c [new file with mode: 0644]
arch/ppc/kernel/traps.c
arch/ppc/platforms/4xx/Kconfig
arch/ppc/platforms/4xx/Makefile
arch/ppc/platforms/4xx/bubinga.c
arch/ppc/platforms/4xx/bubinga.h
arch/ppc/platforms/4xx/ebony.h
arch/ppc/platforms/4xx/ppc440spe.c [new file with mode: 0644]
arch/ppc/platforms/4xx/ppc440spe.h [new file with mode: 0644]
arch/ppc/platforms/4xx/sycamore.c
arch/ppc/platforms/4xx/sycamore.h
arch/ppc/platforms/4xx/walnut.c
arch/ppc/platforms/4xx/walnut.h
arch/ppc/platforms/4xx/yucca.c [new file with mode: 0644]
arch/ppc/platforms/4xx/yucca.h [new file with mode: 0644]
arch/ppc/platforms/85xx/mpc85xx_ads_common.c
arch/ppc/platforms/85xx/stx_gp3.c
arch/ppc/platforms/ev64360.c
arch/ppc/syslib/Makefile
arch/ppc/syslib/ibm440sp_common.c
arch/ppc/syslib/ibm44x_common.c
arch/ppc/syslib/m8xx_setup.c
arch/ppc/syslib/ppc405_pci.c
arch/ppc/syslib/ppc440spe_pcie.c [new file with mode: 0644]
arch/ppc/syslib/ppc440spe_pcie.h [new file with mode: 0644]
arch/ppc/syslib/ppc4xx_pic.c
arch/ppc/syslib/ppc85xx_rio.c [new file with mode: 0644]
arch/ppc/syslib/ppc85xx_rio.h [new file with mode: 0644]
arch/ppc/syslib/ppc_sys.c
arch/ppc/syslib/prom.c
arch/ppc64/Kconfig
arch/ppc64/Makefile
arch/ppc64/boot/main.c
arch/ppc64/kernel/Makefile
arch/ppc64/kernel/asm-offsets.c
arch/ppc64/kernel/head.S
arch/ppc64/kernel/irq.c
arch/ppc64/kernel/kprobes.c
arch/ppc64/kernel/lparcfg.c
arch/ppc64/kernel/machine_kexec.c
arch/ppc64/kernel/pacaData.c
arch/ppc64/kernel/pci_dn.c
arch/ppc64/kernel/proc_ppc64.c
arch/ppc64/kernel/prom.c
arch/ppc64/kernel/prom_init.c
arch/ppc64/kernel/scanlog.c
arch/ppc64/kernel/sysfs.c
arch/ppc64/kernel/udbg_scc.c
arch/ppc64/lib/Makefile [deleted file]
arch/ppc64/lib/string.S [deleted file]
arch/s390/Makefile
arch/s390/kernel/Makefile
arch/s390/kernel/entry.S
arch/s390/kernel/entry64.S
arch/s390/kernel/head.S
arch/s390/kernel/head31.S [new file with mode: 0644]
arch/s390/kernel/head64.S
arch/s390/kernel/time.c
arch/s390/kernel/traps.c
arch/s390/mm/extmem.c
arch/s390/mm/fault.c
arch/sh/Kconfig
arch/sh/Makefile
arch/sh/drivers/Makefile
arch/sh/drivers/superhyway/Makefile [new file with mode: 0644]
arch/sh/drivers/superhyway/ops-sh4-202.c [new file with mode: 0644]
arch/sh/kernel/ptrace.c
arch/sh/kernel/setup.c
arch/sh/mm/init.c
arch/sh/mm/tlb-sh3.c
arch/sh/ramdisk/Makefile [deleted file]
arch/sh/ramdisk/ld.script [deleted file]
arch/sh64/kernel/ptrace.c
arch/sh64/kernel/syscalls.S
arch/sparc64/Kconfig
arch/sparc64/Kconfig.debug
arch/sparc64/kernel/kprobes.c
arch/sparc64/kernel/us2e_cpufreq.c
arch/sparc64/kernel/us3_cpufreq.c
arch/sparc64/oprofile/Kconfig
arch/um/Kconfig
arch/um/Makefile
arch/um/Makefile-i386
arch/um/drivers/chan_user.c
arch/um/drivers/harddog_kern.c
arch/um/drivers/harddog_user.c
arch/um/drivers/net_kern.c
arch/um/drivers/net_user.c
arch/um/drivers/port_user.c
arch/um/drivers/random.c
arch/um/drivers/slip_user.c
arch/um/drivers/slirp_user.c
arch/um/drivers/xterm.c
arch/um/include/helper.h [deleted file]
arch/um/include/mem_user.h
arch/um/include/net_user.h
arch/um/include/os.h
arch/um/include/sysdep-i386/stub.h
arch/um/include/sysdep-x86_64/stub.h
arch/um/include/uml_uaccess.h
arch/um/kernel/Makefile
arch/um/kernel/ksyms.c
arch/um/kernel/mem.c
arch/um/kernel/physmem.c
arch/um/kernel/ptrace.c
arch/um/kernel/sigio_user.c
arch/um/kernel/skas/include/mmu-skas.h
arch/um/kernel/skas/include/skas.h
arch/um/kernel/skas/mem.c
arch/um/kernel/skas/mmu.c
arch/um/kernel/skas/process.c
arch/um/kernel/skas/process_kern.c
arch/um/kernel/tt/uaccess_user.c
arch/um/kernel/uaccess.c [new file with mode: 0644]
arch/um/kernel/uaccess_user.c [deleted file]
arch/um/kernel/um_arch.c
arch/um/kernel/user_util.c
arch/um/os-Linux/Makefile
arch/um/os-Linux/aio.c
arch/um/os-Linux/drivers/ethertap_user.c
arch/um/os-Linux/drivers/tuntap_user.c
arch/um/os-Linux/helper.c [moved from arch/um/kernel/helper.c with 93% similarity]
arch/um/os-Linux/main.c [moved from arch/um/kernel/main.c with 82% similarity]
arch/um/os-Linux/mem.c
arch/um/os-Linux/start_up.c
arch/um/os-Linux/uaccess.c [new file with mode: 0644]
arch/um/scripts/Makefile.rules
arch/um/sys-i386/ldt.c
arch/um/sys-x86_64/Makefile
arch/um/sys-x86_64/syscalls.c
arch/v850/kernel/ptrace.c
arch/x86_64/Kconfig
arch/x86_64/Kconfig.debug
arch/x86_64/kernel/kprobes.c
arch/x86_64/kernel/ptrace.c
arch/x86_64/kernel/smpboot.c
arch/x86_64/oprofile/Kconfig
arch/xtensa/kernel/ptrace.c
drivers/Makefile
drivers/acpi/container.c
drivers/acpi/osl.c
drivers/acpi/scan.c
drivers/acpi/video.c
drivers/base/platform.c
drivers/base/power/sysfs.c
drivers/block/DAC960.c
drivers/block/as-iosched.c
drivers/block/cciss.c
drivers/block/ll_rw_blk.c
drivers/block/viodasd.c
drivers/bluetooth/bcm203x.c
drivers/bluetooth/bfusb.c
drivers/bluetooth/bluecard_cs.c
drivers/bluetooth/bpa10x.c
drivers/bluetooth/bt3c_cs.c
drivers/bluetooth/btuart_cs.c
drivers/bluetooth/dtl1_cs.c
drivers/bluetooth/hci_bcsp.c
drivers/bluetooth/hci_h4.c
drivers/bluetooth/hci_ldisc.c
drivers/bluetooth/hci_usb.c
drivers/bluetooth/hci_vhci.c
drivers/cdrom/mcdx.c
drivers/cdrom/viocd.c
drivers/char/agp/amd64-agp.c
drivers/char/consolemap.c
drivers/char/drm/ffb_context.c
drivers/char/drm/ffb_drv.c
drivers/char/ip2/i2ellis.c
drivers/char/ipmi/ipmi_bt_sm.c
drivers/char/ipmi/ipmi_kcs_sm.c
drivers/char/ipmi/ipmi_msghandler.c
drivers/char/ipmi/ipmi_poweroff.c
drivers/char/ipmi/ipmi_si_intf.c
drivers/char/ipmi/ipmi_si_sm.h
drivers/char/ipmi/ipmi_smic_sm.c
drivers/char/ipmi/ipmi_watchdog.c
drivers/char/istallion.c
drivers/char/mxser.c
drivers/char/n_hdlc.c
drivers/char/pcmcia/synclink_cs.c
drivers/char/rocket.c
drivers/char/selection.c
drivers/char/stallion.c
drivers/char/synclink.c
drivers/char/synclinkmp.c
drivers/char/tpm/tpm_nsc.c
drivers/char/tty_io.c
drivers/char/viocons.c
drivers/char/viotape.c
drivers/char/vt_ioctl.c
drivers/connector/Kconfig
drivers/connector/Makefile
drivers/connector/cn_proc.c [new file with mode: 0644]
drivers/dio/dio.c
drivers/eisa/eisa-bus.c
drivers/fc4/fc.c
drivers/fc4/soc.c
drivers/fc4/socal.c
drivers/firmware/dell_rbu.c
drivers/firmware/edd.c
drivers/firmware/efivars.c
drivers/hwmon/hwmon.c
drivers/hwmon/max1619.c
drivers/hwmon/w83781d.c
drivers/i2c/busses/i2c-amd756-s4882.c
drivers/ide/ide-cd.c
drivers/ide/ide-disk.c
drivers/ide/ide-floppy.c
drivers/ide/ide-probe.c
drivers/ide/ide-tape.c
drivers/ide/ide-taskfile.c
drivers/ide/ide.c
drivers/ide/legacy/ide-cs.c
drivers/ide/pci/hpt366.c
drivers/ide/pci/it821x.c
drivers/ieee1394/amdtp.c
drivers/infiniband/Kconfig
drivers/infiniband/Makefile
drivers/infiniband/core/agent.c
drivers/infiniband/core/cm.c
drivers/infiniband/core/device.c
drivers/infiniband/core/mad.c
drivers/infiniband/core/packer.c
drivers/infiniband/core/sysfs.c
drivers/infiniband/core/ucm.c
drivers/infiniband/core/ud_header.c
drivers/infiniband/core/user_mad.c
drivers/infiniband/core/uverbs.h
drivers/infiniband/core/uverbs_cmd.c
drivers/infiniband/core/uverbs_main.c
drivers/infiniband/core/verbs.c
drivers/infiniband/hw/mthca/mthca_catas.c
drivers/infiniband/hw/mthca/mthca_cq.c
drivers/infiniband/hw/mthca/mthca_dev.h
drivers/infiniband/hw/mthca/mthca_eq.c
drivers/infiniband/hw/mthca/mthca_main.c
drivers/infiniband/hw/mthca/mthca_mr.c
drivers/infiniband/hw/mthca/mthca_profile.c
drivers/infiniband/hw/mthca/mthca_provider.c
drivers/infiniband/hw/mthca/mthca_qp.c
drivers/infiniband/hw/mthca/mthca_srq.c
drivers/infiniband/ulp/ipoib/ipoib.h
drivers/infiniband/ulp/ipoib/ipoib_ib.c
drivers/infiniband/ulp/ipoib/ipoib_main.c
drivers/infiniband/ulp/ipoib/ipoib_multicast.c
drivers/infiniband/ulp/ipoib/ipoib_verbs.c
drivers/infiniband/ulp/srp/Kbuild [new file with mode: 0644]
drivers/infiniband/ulp/srp/Kconfig [new file with mode: 0644]
drivers/infiniband/ulp/srp/ib_srp.c [new file with mode: 0644]
drivers/infiniband/ulp/srp/ib_srp.h [new file with mode: 0644]
drivers/input/misc/uinput.c
drivers/isdn/hardware/avm/avm_cs.c
drivers/isdn/hisax/avm_pci.c
drivers/isdn/hisax/avma1_cs.c
drivers/isdn/hisax/config.c
drivers/isdn/hisax/hfc_2bds0.c
drivers/isdn/hisax/hfc_2bs0.c
drivers/isdn/hisax/hfc_usb.c
drivers/isdn/hisax/hfc_usb.h
drivers/isdn/hisax/hscx.c
drivers/isdn/hisax/icc.c
drivers/isdn/hisax/ipacx.c
drivers/isdn/hisax/isac.c
drivers/isdn/hisax/isar.c
drivers/isdn/hisax/jade.c
drivers/isdn/hisax/netjet.c
drivers/isdn/hisax/st5481_usb.c
drivers/isdn/hisax/w6692.c
drivers/isdn/hysdn/hysdn_procconf.c
drivers/isdn/i4l/isdn_ppp.c
drivers/isdn/i4l/isdn_tty.c
drivers/isdn/icn/icn.c
drivers/isdn/isdnloop/isdnloop.c
drivers/isdn/pcbit/drv.c
drivers/isdn/sc/init.c
drivers/isdn/sc/message.c
drivers/macintosh/adbhid.c
drivers/macintosh/therm_pm72.c
drivers/macintosh/via-pmu.c
drivers/md/raid5.c
drivers/md/raid6main.c
drivers/media/dvb/bt8xx/dst.c
drivers/media/dvb/frontends/cx24110.c
drivers/media/dvb/frontends/dvb_dummy_fe.c
drivers/media/dvb/frontends/l64781.c
drivers/media/dvb/frontends/lgdt330x.c
drivers/media/dvb/frontends/mt312.c
drivers/media/dvb/frontends/or51132.c
drivers/media/video/arv.c
drivers/media/video/bttv-driver.c
drivers/media/video/msp3400.c
drivers/media/video/saa7134/saa7134-tvaudio.c
drivers/media/video/v4l1-compat.c
drivers/media/video/videocodec.c
drivers/media/video/videodev.c
drivers/media/video/zoran_card.c
drivers/media/video/zoran_driver.c
drivers/message/fusion/mptbase.h
drivers/message/fusion/mptlan.c
drivers/message/fusion/mptsas.c
drivers/message/fusion/mptscsih.c
drivers/message/i2o/exec-osm.c
drivers/message/i2o/iop.c
drivers/mfd/mcp-core.c
drivers/mmc/mmc_block.c
drivers/mmc/wbsd.c
drivers/mtd/chips/cfi_cmdset_0001.c
drivers/mtd/chips/cfi_cmdset_0002.c
drivers/mtd/devices/blkmtd.c
drivers/mtd/inftlcore.c
drivers/mtd/inftlmount.c
drivers/mtd/maps/amd76xrom.c
drivers/mtd/maps/bast-flash.c
drivers/mtd/maps/ceiva.c
drivers/mtd/maps/ichxrom.c
drivers/mtd/maps/integrator-flash.c
drivers/mtd/maps/ipaq-flash.c
drivers/mtd/maps/iq80310.c
drivers/mtd/maps/ixp2000.c
drivers/mtd/maps/ixp4xx.c
drivers/mtd/maps/lubbock-flash.c
drivers/mtd/maps/omap-toto-flash.c
drivers/mtd/maps/sa1100-flash.c
drivers/mtd/maps/sun_uflash.c
drivers/mtd/maps/tqm8xxl.c
drivers/mtd/nand/nand_base.c
drivers/mtd/nftlcore.c
drivers/net/3c59x.c
drivers/net/Kconfig
drivers/net/bnx2.c
drivers/net/bnx2.h
drivers/net/bnx2_fw.h
drivers/net/depca.c
drivers/net/e1000/e1000_ethtool.c
drivers/net/e1000/e1000_hw.c
drivers/net/e1000/e1000_hw.h
drivers/net/e1000/e1000_main.c
drivers/net/fec.c
drivers/net/fec.h
drivers/net/fec_8xx/Kconfig
drivers/net/fec_8xx/fec_mii.c
drivers/net/fs_enet/fs_enet-main.c
drivers/net/hamradio/dmascc.c
drivers/net/ibm_emac/ibm_emac.h
drivers/net/ibm_emac/ibm_emac_core.c
drivers/net/ibm_emac/ibm_emac_mal.h
drivers/net/ibm_emac/ibm_emac_phy.c
drivers/net/iseries_veth.c
drivers/net/ixgb/ixgb_ethtool.c
drivers/net/ixgb/ixgb_hw.c
drivers/net/ixgb/ixgb_hw.h
drivers/net/ixgb/ixgb_main.c
drivers/net/jazzsonic.c
drivers/net/macsonic.c
drivers/net/pcnet32.c
drivers/net/phy/cicada.c
drivers/net/phy/davicom.c
drivers/net/phy/lxt.c
drivers/net/phy/marvell.c
drivers/net/phy/mdio_bus.c
drivers/net/phy/phy.c
drivers/net/phy/phy_device.c
drivers/net/phy/qsemi.c
drivers/net/s2io.c
drivers/net/s2io.h
drivers/net/wireless/airo.c
drivers/net/wireless/airo.h [new file with mode: 0644]
drivers/net/wireless/airo_cs.c
drivers/net/wireless/prism54/islpci_eth.c
drivers/parport/probe.c
drivers/parport/share.c
drivers/pci/hotplug/cpqphp_pci.c
drivers/pci/hotplug/pciehprm_nonacpi.c
drivers/pci/pci-driver.c
drivers/pcmcia/cistpl.c
drivers/pcmcia/cs.c
drivers/pnp/card.c
drivers/pnp/core.c
drivers/pnp/driver.c
drivers/pnp/isapnp/core.c
drivers/pnp/manager.c
drivers/pnp/pnpacpi/core.c
drivers/pnp/resource.c
drivers/rapidio/Kconfig [new file with mode: 0644]
drivers/rapidio/Makefile [new file with mode: 0644]
drivers/rapidio/rio-access.c [new file with mode: 0644]
drivers/rapidio/rio-driver.c [new file with mode: 0644]
drivers/rapidio/rio-scan.c [new file with mode: 0644]
drivers/rapidio/rio-sysfs.c [new file with mode: 0644]
drivers/rapidio/rio.c [new file with mode: 0644]
drivers/rapidio/rio.h [new file with mode: 0644]
drivers/rapidio/switches/Makefile [new file with mode: 0644]
drivers/rapidio/switches/tsi500.c [new file with mode: 0644]
drivers/s390/block/dasd.c
drivers/s390/block/dasd_devmap.c
drivers/s390/block/dasd_diag.c
drivers/s390/block/dasd_diag.h
drivers/s390/char/con3215.c
drivers/s390/char/keyboard.c
drivers/s390/char/raw3270.c
drivers/s390/char/tape_core.c
drivers/s390/char/vmcp.c
drivers/s390/cio/ccwgroup.c
drivers/s390/cio/cmf.c
drivers/s390/cio/device_ops.c
drivers/s390/cio/qdio.c
drivers/s390/crypto/z90main.c
drivers/s390/net/claw.c
drivers/s390/net/fsm.c
drivers/s390/net/iucv.c
drivers/s390/net/lcs.c
drivers/s390/net/qeth_eddp.c
drivers/s390/scsi/zfcp_aux.c
drivers/sbus/char/envctrl.c
drivers/scsi/3w-9xxx.c
drivers/scsi/3w-xxxx.c
drivers/scsi/53c700.c
drivers/scsi/53c700.h
drivers/scsi/Kconfig
drivers/scsi/Makefile
drivers/scsi/NCR5380.c
drivers/scsi/NCR53C9x.c
drivers/scsi/NCR53c406a.c
drivers/scsi/a100u2w.c
drivers/scsi/aacraid/README
drivers/scsi/aacraid/TODO
drivers/scsi/aacraid/aachba.c
drivers/scsi/aacraid/aacraid.h
drivers/scsi/aacraid/commctrl.c
drivers/scsi/aacraid/comminit.c
drivers/scsi/aacraid/commsup.c
drivers/scsi/aacraid/dpcsup.c
drivers/scsi/aacraid/linit.c
drivers/scsi/aacraid/rkt.c
drivers/scsi/aacraid/rx.c
drivers/scsi/aacraid/sa.c
drivers/scsi/advansys.c
drivers/scsi/aha152x.c
drivers/scsi/aha1542.c
drivers/scsi/aha1740.c
drivers/scsi/ahci.c
drivers/scsi/aic7xxx/aic79xx_osm.c
drivers/scsi/aic7xxx/aic7xxx_osm.c
drivers/scsi/aic7xxx_old.c
drivers/scsi/arm/queue.c
drivers/scsi/atari_dma_emul.c
drivers/scsi/atp870u.c
drivers/scsi/ch.c
drivers/scsi/constants.c
drivers/scsi/cpqfcTS.h [deleted file]
drivers/scsi/cpqfcTSchip.h [deleted file]
drivers/scsi/cpqfcTScontrol.c [deleted file]
drivers/scsi/cpqfcTSi2c.c [deleted file]
drivers/scsi/cpqfcTSinit.c [deleted file]
drivers/scsi/cpqfcTSioctl.h [deleted file]
drivers/scsi/cpqfcTSstructs.h [deleted file]
drivers/scsi/cpqfcTStrigger.c [deleted file]
drivers/scsi/cpqfcTStrigger.h [deleted file]
drivers/scsi/cpqfcTSworker.c [deleted file]
drivers/scsi/dc395x.c
drivers/scsi/dec_esp.c
drivers/scsi/dpt_i2o.c
drivers/scsi/eata.c
drivers/scsi/eata_pio.c
drivers/scsi/fd_mcs.c
drivers/scsi/fdomain.c
drivers/scsi/hosts.c
drivers/scsi/ibmmca.c
drivers/scsi/ibmvscsi/iseries_vscsi.c
drivers/scsi/ide-scsi.c
drivers/scsi/imm.c
drivers/scsi/in2000.c
drivers/scsi/ipr.h
drivers/scsi/ips.c
drivers/scsi/iscsi_tcp.c [new file with mode: 0644]
drivers/scsi/iscsi_tcp.h [new file with mode: 0644]
drivers/scsi/libata-core.c
drivers/scsi/libata-scsi.c
drivers/scsi/lpfc/lpfc.h
drivers/scsi/lpfc/lpfc_attr.c
drivers/scsi/lpfc/lpfc_crtn.h
drivers/scsi/lpfc/lpfc_ct.c
drivers/scsi/lpfc/lpfc_disc.h
drivers/scsi/lpfc/lpfc_els.c
drivers/scsi/lpfc/lpfc_hbadisc.c
drivers/scsi/lpfc/lpfc_init.c
drivers/scsi/lpfc/lpfc_mbox.c
drivers/scsi/lpfc/lpfc_nportdisc.c
drivers/scsi/lpfc/lpfc_scsi.c
drivers/scsi/lpfc/lpfc_sli.c
drivers/scsi/lpfc/lpfc_sli.h
drivers/scsi/lpfc/lpfc_version.h
drivers/scsi/megaraid/megaraid_mbox.c
drivers/scsi/megaraid/megaraid_mm.c
drivers/scsi/megaraid/megaraid_sas.c
drivers/scsi/ncr53c8xx.c
drivers/scsi/nsp32.c
drivers/scsi/osst.c
drivers/scsi/pcmcia/nsp_cs.c
drivers/scsi/pcmcia/sym53c500_cs.c
drivers/scsi/pdc_adma.c
drivers/scsi/ppa.c
drivers/scsi/psi240i.c
drivers/scsi/qla2xxx/ql2100.c
drivers/scsi/qla2xxx/ql2100_fw.c
drivers/scsi/qla2xxx/ql2200.c
drivers/scsi/qla2xxx/ql2200_fw.c
drivers/scsi/qla2xxx/ql2300.c
drivers/scsi/qla2xxx/ql2300_fw.c
drivers/scsi/qla2xxx/ql2322.c
drivers/scsi/qla2xxx/ql2322_fw.c
drivers/scsi/qla2xxx/ql6312.c
drivers/scsi/qla2xxx/ql6312_fw.c
drivers/scsi/qla2xxx/qla_attr.c
drivers/scsi/qla2xxx/qla_dbg.c
drivers/scsi/qla2xxx/qla_dbg.h
drivers/scsi/qla2xxx/qla_def.h
drivers/scsi/qla2xxx/qla_fw.h
drivers/scsi/qla2xxx/qla_gbl.h
drivers/scsi/qla2xxx/qla_gs.c
drivers/scsi/qla2xxx/qla_init.c
drivers/scsi/qla2xxx/qla_inline.h
drivers/scsi/qla2xxx/qla_iocb.c
drivers/scsi/qla2xxx/qla_isr.c
drivers/scsi/qla2xxx/qla_mbx.c
drivers/scsi/qla2xxx/qla_os.c
drivers/scsi/qla2xxx/qla_rscn.c
drivers/scsi/qla2xxx/qla_settings.h
drivers/scsi/qla2xxx/qla_sup.c
drivers/scsi/qla2xxx/qla_version.h
drivers/scsi/qlogicfas408.c
drivers/scsi/raid_class.c
drivers/scsi/sata_mv.c
drivers/scsi/sata_qstor.c
drivers/scsi/sata_sil24.c
drivers/scsi/sata_sx4.c
drivers/scsi/scsi.c
drivers/scsi/scsi_debug.c
drivers/scsi/scsi_error.c
drivers/scsi/scsi_ioctl.c
drivers/scsi/scsi_lib.c
drivers/scsi/scsi_scan.c
drivers/scsi/scsi_transport_fc.c
drivers/scsi/scsi_transport_iscsi.c
drivers/scsi/scsi_transport_sas.c
drivers/scsi/scsi_transport_spi.c
drivers/scsi/sd.c
drivers/scsi/sg.c
drivers/scsi/sgiwd93.c
drivers/scsi/sgiwd93.h [deleted file]
drivers/scsi/sr.c
drivers/scsi/st.c
drivers/scsi/sym53c416.c
drivers/scsi/sym53c8xx_2/sym_hipd.c
drivers/scsi/sym53c8xx_defs.h
drivers/scsi/tmscsim.c
drivers/scsi/u14-34f.c
drivers/serial/8250.c
drivers/serial/8250.h
drivers/serial/8250_au1x00.c [new file with mode: 0644]
drivers/serial/Kconfig
drivers/serial/Makefile
drivers/serial/crisv10.c
drivers/serial/mcfserial.c
drivers/serial/serial_core.c
drivers/sh/superhyway/superhyway-sysfs.c
drivers/sh/superhyway/superhyway.c
drivers/video/68328fb.c
drivers/video/Kconfig
drivers/video/Makefile
drivers/video/acornfb.c
drivers/video/amba-clcd.c
drivers/video/amifb.c
drivers/video/arcfb.c
drivers/video/asiliantfb.c
drivers/video/aty/ati_ids.h
drivers/video/aty/aty128fb.c
drivers/video/aty/atyfb_base.c
drivers/video/aty/radeon_base.c
drivers/video/aty/radeonfb.h
drivers/video/bw2.c
drivers/video/cfbcopyarea.c
drivers/video/cfbfillrect.c
drivers/video/cfbimgblt.c
drivers/video/cg14.c
drivers/video/cg3.c
drivers/video/cg6.c
drivers/video/chipsfb.c
drivers/video/cirrusfb.c
drivers/video/clps711xfb.c
drivers/video/console/Kconfig
drivers/video/console/Makefile
drivers/video/console/bitblit.c
drivers/video/console/fbcon.c
drivers/video/console/fbcon.h
drivers/video/console/font_rl.c [new file with mode: 0644]
drivers/video/console/fonts.c
drivers/video/console/softcursor.c [moved from drivers/video/softcursor.c with 97% similarity]
drivers/video/console/vgacon.c
drivers/video/controlfb.c
drivers/video/cyber2000fb.c
drivers/video/cyblafb.c
drivers/video/dnfb.c
drivers/video/epson1355fb.c
drivers/video/fbmon.c
drivers/video/ffb.c
drivers/video/fm2fb.c
drivers/video/gbefb.c
drivers/video/geode/Kconfig
drivers/video/geode/gx1fb_core.c
drivers/video/hitfb.c
drivers/video/hpfb.c
drivers/video/i810/i810-i2c.c
drivers/video/i810/i810.h
drivers/video/i810/i810_main.c
drivers/video/i810/i810_regs.h
drivers/video/imsttfb.c
drivers/video/imxfb.c
drivers/video/intelfb/intelfb.h
drivers/video/intelfb/intelfbdrv.c
drivers/video/intelfb/intelfbhw.c
drivers/video/kyro/fbdev.c
drivers/video/leo.c
drivers/video/logo/Kconfig
drivers/video/macfb.c
drivers/video/matrox/matroxfb_DAC1064.c
drivers/video/matrox/matroxfb_accel.c
drivers/video/matrox/matroxfb_base.c
drivers/video/matrox/matroxfb_base.h
drivers/video/matrox/matroxfb_crtc2.c
drivers/video/maxinefb.c
drivers/video/modedb.c
drivers/video/neofb.c
drivers/video/nvidia/nv_local.h
drivers/video/nvidia/nv_of.c
drivers/video/nvidia/nv_proto.h
drivers/video/nvidia/nv_setup.c
drivers/video/nvidia/nvidia.c
drivers/video/offb.c
drivers/video/p9100.c
drivers/video/platinumfb.c
drivers/video/pm2fb.c
drivers/video/pmag-ba-fb.c
drivers/video/pmagb-b-fb.c
drivers/video/pvr2fb.c
drivers/video/pxafb.c
drivers/video/q40fb.c
drivers/video/radeonfb.c
drivers/video/s1d13xxxfb.c
drivers/video/s3c2410fb.c
drivers/video/sa1100fb.c
drivers/video/savage/savagefb.h
drivers/video/savage/savagefb_driver.c
drivers/video/sgivwfb.c
drivers/video/sis/sis_main.c
drivers/video/skeletonfb.c
drivers/video/sstfb.c
drivers/video/stifb.c
drivers/video/tcx.c
drivers/video/tdfxfb.c
drivers/video/tgafb.c
drivers/video/tridentfb.c
drivers/video/tx3912fb.c
drivers/video/valkyriefb.c
drivers/video/vesafb.c
drivers/video/vfb.c
drivers/video/vga16fb.c
drivers/video/w100fb.c
drivers/w1/w1_ds2433.c
fs/9p/error.c
fs/9p/trans_sock.c
fs/9p/v9fs.c
fs/9p/vfs_inode.c
fs/Kconfig
fs/affs/file.c
fs/affs/super.c
fs/afs/file.c
fs/afs/inode.c
fs/afs/internal.h
fs/aio.c
fs/autofs/waitq.c
fs/autofs4/inode.c
fs/autofs4/waitq.c
fs/befs/linuxvfs.c
fs/binfmt_elf.c
fs/binfmt_elf_fdpic.c
fs/buffer.c
fs/cifs/asn1.c
fs/cifs/connect.c
fs/cifs/link.c
fs/cifs/misc.c
fs/cifs/xattr.c
fs/compat_ioctl.c
fs/dcache.c
fs/devfs/base.c
fs/dquot.c
fs/exec.c
fs/ext2/acl.c
fs/file_table.c
fs/freevxfs/vxfs_extern.h
fs/freevxfs/vxfs_inode.c
fs/fs-writeback.c
fs/fuse/dev.c
fs/fuse/dir.c
fs/fuse/file.c
fs/fuse/fuse_i.h
fs/hostfs/hostfs_kern.c
fs/hpfs/dnode.c
fs/hpfs/super.c
fs/isofs/inode.c
fs/jbd/commit.c
fs/jbd/recovery.c
fs/jbd/transaction.c
fs/jffs/intrep.c
fs/jffs2/readinode.c
fs/jffs2/wbuf.c
fs/lockd/clntproc.c
fs/mbcache.c
fs/namei.c
fs/nfs/delegation.c
fs/nfs/inode.c
fs/nfs/nfs4state.c
fs/nfs/unlink.c
fs/nfsd/export.c
fs/nfsd/nfs3xdr.c
fs/nfsd/nfs4xdr.c
fs/nfsd/nfscache.c
fs/nfsd/nfsctl.c
fs/nfsd/nfssvc.c
fs/nfsd/vfs.c
fs/open.c
fs/openpromfs/inode.c
fs/partitions/ibm.c
fs/quota.c
fs/smbfs/request.c
fs/smbfs/symlink.c
fs/super.c
fs/udf/udf_sb.h
fs/ufs/super.c
fs/xattr.c
fs/xfs/linux-2.6/kmem.h
include/asm-alpha/pgtable.h
include/asm-alpha/ptrace.h
include/asm-arm/arch-iop3xx/iop331.h
include/asm-arm/arch-pxa/pm.h [new file with mode: 0644]
include/asm-arm/arch-pxa/tosa.h [new file with mode: 0644]
include/asm-arm/mmu_context.h
include/asm-cris/arch-v10/byteorder.h
include/asm-cris/arch-v10/checksum.h
include/asm-cris/arch-v10/delay.h
include/asm-cris/arch-v10/ide.h
include/asm-cris/arch-v10/system.h
include/asm-cris/arch-v10/thread_info.h
include/asm-cris/arch-v10/timex.h
include/asm-cris/arch-v10/uaccess.h
include/asm-cris/arch-v32/bitops.h
include/asm-cris/arch-v32/byteorder.h
include/asm-cris/arch-v32/checksum.h
include/asm-cris/arch-v32/delay.h
include/asm-cris/arch-v32/ide.h
include/asm-cris/arch-v32/io.h
include/asm-cris/arch-v32/system.h
include/asm-cris/arch-v32/thread_info.h
include/asm-cris/arch-v32/timex.h
include/asm-cris/arch-v32/uaccess.h
include/asm-cris/atomic.h
include/asm-cris/bitops.h
include/asm-cris/checksum.h
include/asm-cris/current.h
include/asm-cris/delay.h
include/asm-cris/io.h
include/asm-cris/irq.h
include/asm-cris/pgalloc.h
include/asm-cris/pgtable.h
include/asm-cris/processor.h
include/asm-cris/semaphore.h
include/asm-cris/system.h
include/asm-cris/timex.h
include/asm-cris/tlbflush.h
include/asm-cris/uaccess.h
include/asm-cris/unistd.h
include/asm-frv/pgtable.h
include/asm-generic/pgtable.h
include/asm-generic/vmlinux.lds.h
include/asm-i386/elf.h
include/asm-i386/kprobes.h
include/asm-i386/pgtable.h
include/asm-i386/processor.h
include/asm-ia64/dma-mapping.h
include/asm-ia64/kprobes.h
include/asm-ia64/pgtable.h
include/asm-ia64/ptrace.h
include/asm-m32r/pgtable.h
include/asm-m32r/ptrace.h
include/asm-m68knommu/cacheflush.h
include/asm-m68knommu/irq.h
include/asm-m68knommu/irqnode.h [new file with mode: 0644]
include/asm-mips/elf.h
include/asm-mips/pgtable.h
include/asm-parisc/pgtable.h
include/asm-powerpc/bitops.h [new file with mode: 0644]
include/asm-powerpc/bug.h
include/asm-powerpc/cputable.h
include/asm-powerpc/elf.h
include/asm-powerpc/futex.h [moved from include/asm-ppc64/futex.h with 71% similarity]
include/asm-powerpc/ioctls.h
include/asm-powerpc/iommu.h
include/asm-powerpc/ipcbuf.h [new file with mode: 0644]
include/asm-powerpc/irq.h
include/asm-powerpc/iseries/hv_call.h [moved from include/asm-ppc64/iSeries/HvCall.h with 95% similarity]
include/asm-powerpc/iseries/hv_call_event.h [moved from include/asm-ppc64/iSeries/HvCallEvent.h with 97% similarity]
include/asm-powerpc/iseries/hv_call_sc.h [moved from include/asm-ppc64/iSeries/HvCallSc.h with 93% similarity]
include/asm-powerpc/iseries/hv_call_xm.h [moved from include/asm-ppc64/iSeries/HvCallXm.h with 91% similarity]
include/asm-powerpc/iseries/hv_lp_config.h [moved from include/asm-ppc64/iSeries/HvLpConfig.h with 93% similarity]
include/asm-powerpc/iseries/hv_lp_event.h [moved from include/asm-ppc64/iSeries/HvLpEvent.h with 95% similarity]
include/asm-powerpc/iseries/hv_types.h [moved from include/asm-ppc64/iSeries/HvTypes.h with 96% similarity]
include/asm-powerpc/iseries/iseries_io.h [moved from include/asm-ppc64/iSeries/iSeries_io.h with 93% similarity]
include/asm-powerpc/iseries/it_exp_vpd_panel.h [moved from include/asm-ppc64/iSeries/ItExtVpdPanel.h with 90% similarity]
include/asm-powerpc/iseries/it_lp_naca.h [moved from include/asm-ppc64/iSeries/ItLpNaca.h with 96% similarity]
include/asm-powerpc/iseries/it_lp_queue.h [moved from include/asm-ppc64/iSeries/ItLpQueue.h with 95% similarity]
include/asm-powerpc/iseries/it_lp_reg_save.h [moved from include/asm-ppc64/iSeries/ItLpRegSave.h with 97% similarity]
include/asm-powerpc/iseries/lpar_map.h [moved from include/asm-ppc64/iSeries/LparMap.h with 95% similarity]
include/asm-powerpc/iseries/mf.h [moved from include/asm-ppc64/iSeries/mf.h with 91% similarity]
include/asm-powerpc/iseries/vio.h [moved from include/asm-ppc64/iSeries/vio.h with 95% similarity]
include/asm-powerpc/kexec.h [new file with mode: 0644]
include/asm-powerpc/kprobes.h
include/asm-powerpc/machdep.h
include/asm-powerpc/numnodes.h [new file with mode: 0644]
include/asm-powerpc/ppc_asm.h
include/asm-powerpc/processor.h
include/asm-powerpc/prom.h
include/asm-powerpc/ptrace.h [moved from include/asm-ppc64/ptrace.h with 66% similarity]
include/asm-powerpc/rtas.h
include/asm-powerpc/sigcontext.h [moved from include/asm-ppc64/sigcontext.h with 82% similarity]
include/asm-powerpc/smp.h [moved from include/asm-ppc64/smp.h with 73% similarity]
include/asm-powerpc/sparsemem.h [moved from include/asm-ppc64/sparsemem.h with 77% similarity]
include/asm-powerpc/stat.h [new file with mode: 0644]
include/asm-powerpc/system.h
include/asm-powerpc/termios.h
include/asm-powerpc/thread_info.h
include/asm-powerpc/time.h
include/asm-powerpc/tlb.h [moved from include/asm-ppc/tlb.h with 68% similarity]
include/asm-powerpc/tlbflush.h [new file with mode: 0644]
include/asm-powerpc/uaccess.h [new file with mode: 0644]
include/asm-powerpc/ucontext.h [new file with mode: 0644]
include/asm-ppc/bitops.h [deleted file]
include/asm-ppc/commproc.h
include/asm-ppc/futex.h [deleted file]
include/asm-ppc/ibm44x.h
include/asm-ppc/ibm4xx.h
include/asm-ppc/ibm_ocp.h
include/asm-ppc/ipcbuf.h [deleted file]
include/asm-ppc/kexec.h [deleted file]
include/asm-ppc/pgtable.h
include/asm-ppc/ppcboot.h
include/asm-ppc/ptrace.h [deleted file]
include/asm-ppc/rio.h [new file with mode: 0644]
include/asm-ppc/sigcontext.h [deleted file]
include/asm-ppc/stat.h [deleted file]
include/asm-ppc/tlbflush.h [deleted file]
include/asm-ppc/uaccess.h [deleted file]
include/asm-ppc/ucontext.h [deleted file]
include/asm-ppc64/bitops.h [deleted file]
include/asm-ppc64/io.h
include/asm-ppc64/ipcbuf.h [deleted file]
include/asm-ppc64/kexec.h [deleted file]
include/asm-ppc64/mmu.h
include/asm-ppc64/mmu_context.h
include/asm-ppc64/numnodes.h [deleted file]
include/asm-ppc64/nvram.h
include/asm-ppc64/paca.h
include/asm-ppc64/page.h
include/asm-ppc64/pgalloc.h
include/asm-ppc64/pgtable-4k.h [new file with mode: 0644]
include/asm-ppc64/pgtable-64k.h [new file with mode: 0644]
include/asm-ppc64/pgtable.h
include/asm-ppc64/plpar_wrappers.h [deleted file]
include/asm-ppc64/prom.h
include/asm-ppc64/spinlock.h
include/asm-ppc64/stat.h [deleted file]
include/asm-ppc64/system.h
include/asm-ppc64/tlb.h [deleted file]
include/asm-ppc64/tlbflush.h [deleted file]
include/asm-ppc64/uaccess.h [deleted file]
include/asm-ppc64/ucontext.h [deleted file]
include/asm-s390/bitops.h
include/asm-s390/elf.h
include/asm-s390/pgtable.h
include/asm-s390/ptrace.h
include/asm-s390/uaccess.h
include/asm-s390/vtoc.h
include/asm-sh/elf.h
include/asm-sh/mmzone.h [deleted file]
include/asm-sh/page.h
include/asm-sh/pgtable.h
include/asm-sh64/pgtable.h
include/asm-sparc/ptrace.h
include/asm-sparc64/kprobes.h
include/asm-sparc64/ptrace.h
include/asm-um/ldt-i386.h [new file with mode: 0644]
include/asm-um/ldt.h
include/asm-um/mmu_context.h
include/asm-v850/atomic.h
include/asm-v850/bitops.h
include/asm-v850/delay.h
include/asm-v850/hw_irq.h
include/asm-v850/processor.h
include/asm-v850/semaphore.h
include/asm-v850/system.h
include/asm-v850/tlbflush.h
include/asm-v850/uaccess.h
include/asm-v850/unaligned.h
include/asm-x86_64/elf.h
include/asm-x86_64/kprobes.h
include/asm-x86_64/pgtable.h
include/asm-xtensa/elf.h
include/asm-xtensa/pgtable.h
include/asm-xtensa/semaphore.h
include/linux/aio.h
include/linux/cn_proc.h [new file with mode: 0644]
include/linux/config.h
include/linux/connector.h
include/linux/console_struct.h
include/linux/ethtool.h
include/linux/fb.h
include/linux/file.h
include/linux/font.h
include/linux/fs.h
include/linux/fuse.h
include/linux/ioport.h
include/linux/ipmi.h
include/linux/irq.h
include/linux/jbd.h
include/linux/kernel.h
include/linux/kernel_stat.h
include/linux/kprobes.h
include/linux/libata.h
include/linux/list.h
include/linux/memory.h
include/linux/mm.h
include/linux/net.h
include/linux/nfsd/nfsd.h
include/linux/nfsd/syscall.h
include/linux/nfsd/xdr3.h
include/linux/pci_ids.h
include/linux/phy.h
include/linux/platform_device.h
include/linux/pnp.h
include/linux/ptrace.h
include/linux/quotaops.h
include/linux/radix-tree.h
include/linux/rio.h [new file with mode: 0644]
include/linux/rio_drv.h [new file with mode: 0644]
include/linux/rio_ids.h [new file with mode: 0644]
include/linux/rio_regs.h [new file with mode: 0644]
include/linux/sem.h
include/linux/serial_8250.h
include/linux/serial_core.h
include/linux/shm.h
include/linux/slab.h
include/linux/sunrpc/svc.h
include/linux/superhyway.h
include/linux/wait.h
include/rdma/ib_user_cm.h
include/scsi/iscsi_if.h [new file with mode: 0644]
include/scsi/iscsi_proto.h [new file with mode: 0644]
include/scsi/scsi_device.h
include/scsi/scsi_host.h
include/scsi/scsi_transport_fc.h
include/scsi/scsi_transport_iscsi.h
include/scsi/scsi_transport_sas.h
include/scsi/srp.h [new file with mode: 0644]
ipc/shm.c
ipc/util.c
kernel/exit.c
kernel/fork.c
kernel/futex.c
kernel/irq/manage.c
kernel/kprobes.c
kernel/module.c
kernel/posix-cpu-timers.c
kernel/power/snapshot.c
kernel/power/swsusp.c
kernel/printk.c
kernel/ptrace.c
kernel/sched.c
kernel/softirq.c
kernel/softlockup.c
kernel/sys.c
kernel/sysctl.c
kernel/workqueue.c
lib/radix-tree.c
mm/Kconfig
mm/hugetlb.c
mm/mmap.c
mm/nommu.c
mm/page-writeback.c
mm/page_alloc.c
mm/readahead.c
mm/slab.c
mm/swap.c
mm/swap_state.c
mm/swapfile.c
mm/vmalloc.c
net/ieee80211/ieee80211_crypt.c
net/ieee80211/ieee80211_crypt_ccmp.c
net/ieee80211/ieee80211_crypt_tkip.c
net/ieee80211/ieee80211_crypt_wep.c
net/ieee80211/ieee80211_geo.c
net/ieee80211/ieee80211_module.c
net/ieee80211/ieee80211_rx.c
net/ieee80211/ieee80211_tx.c
net/sunrpc/svc.c
scripts/kconfig/Makefile
security/keys/key.c
security/keys/keyring.c
security/selinux/ss/policydb.c
sound/oss/sequencer_syms.c

index 783ddc3ce4e821a8b8c2a04881e494ab4f503c2c..86b86399d61d7237aab919f87867bd984dddaa25 100644 (file)
@@ -139,9 +139,14 @@ You'll probably want to upgrade.
 Ksymoops
 --------
 
-If the unthinkable happens and your kernel oopses, you'll need a 2.4
-version of ksymoops to decode the report; see REPORTING-BUGS in the
-root of the Linux source for more information.
+If the unthinkable happens and your kernel oopses, you may need the
+ksymoops tool to decode it, but in most cases you don't.
+In the 2.6 kernel it is generally preferred to build the kernel with
+CONFIG_KALLSYMS so that it produces readable dumps that can be used as-is
+(this also produces better output than ksymoops).
+If for some reason your kernel is not build with CONFIG_KALLSYMS and
+you have no way to rebuild and reproduce the Oops with that option, then
+you can still decode that Oops with ksymoops.
 
 Module-Init-Tools
 -----------------
index fa3e29ad8a463855c48241fb49ebfd3fd8ba86bb..7018f5c6a447b392a8ccd316d49380ce5307e936 100644 (file)
@@ -10,7 +10,7 @@ DOCBOOKS := wanbook.xml z8530book.xml mcabook.xml videobook.xml \
            kernel-hacking.xml kernel-locking.xml deviceiobook.xml \
            procfs-guide.xml writing_usb_driver.xml \
            sis900.xml kernel-api.xml journal-api.xml lsm.xml usb.xml \
-           gadget.xml libata.xml mtdnand.xml librs.xml
+           gadget.xml libata.xml mtdnand.xml librs.xml rapidio.xml
 
 ###
 # The build process is as follows (targets):
index 341aaa4ce481a5a9af1f85d17be35e83e2b8b075..2077f9a28c191bdba263271e649f015485052926 100644 (file)
@@ -306,7 +306,7 @@ an example.
 </para>
        <sect1><title>Journal Level</title>
 !Efs/jbd/journal.c
-!Efs/jbd/recovery.c
+!Ifs/jbd/recovery.c
        </sect1>
        <sect1><title>Transasction Level</title>
 !Efs/jbd/transaction.c 
index ec474e5a25ed39db151790e83bfe6e882fc34ffa..a8316b1a3e3d45e3368a1a4b3dddb732bab65b32 100644 (file)
@@ -118,7 +118,7 @@ X!Ilib/string.c
      </sect1>
      <sect1><title>User Space Memory Access</title>
 !Iinclude/asm-i386/uaccess.h
-!Iarch/i386/lib/usercopy.c
+!Earch/i386/lib/usercopy.c
      </sect1>
      <sect1><title>More Memory Management Functions</title>
 !Iinclude/linux/rmap.h
@@ -174,7 +174,6 @@ X!Ilib/string.c
      <title>The Linux VFS</title>
      <sect1><title>The Filesystem types</title>
 !Iinclude/linux/fs.h
-!Einclude/linux/fs.h
      </sect1>
      <sect1><title>The Directory Cache</title>
 !Efs/dcache.c
@@ -266,7 +265,7 @@ X!Ekernel/module.c
   <chapter id="hardware">
      <title>Hardware Interfaces</title>
      <sect1><title>Interrupt Handling</title>
-!Ikernel/irq/manage.c
+!Ekernel/irq/manage.c
      </sect1>
 
      <sect1><title>Resources Management</title>
@@ -501,7 +500,7 @@ KAO -->
 !Edrivers/video/modedb.c
      </sect1>
      <sect1><title>Frame Buffer Macintosh Video Mode Database</title>
-!Idrivers/video/macmodes.c
+!Edrivers/video/macmodes.c
      </sect1>
      <sect1><title>Frame Buffer Fonts</title>
         <para>
diff --git a/Documentation/DocBook/rapidio.tmpl b/Documentation/DocBook/rapidio.tmpl
new file mode 100644 (file)
index 0000000..1becf27
--- /dev/null
@@ -0,0 +1,160 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+        "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
+       <!ENTITY rapidio SYSTEM "rapidio.xml">
+       ]>
+
+<book id="RapidIO-Guide">
+ <bookinfo>
+  <title>RapidIO Subsystem Guide</title>
+
+  <authorgroup>
+   <author>
+    <firstname>Matt</firstname>
+    <surname>Porter</surname>
+    <affiliation>
+     <address>
+      <email>mporter@kernel.crashing.org</email>
+      <email>mporter@mvista.com</email>
+     </address>
+    </affiliation>
+   </author>
+  </authorgroup>
+
+  <copyright>
+   <year>2005</year>
+   <holder>MontaVista Software, Inc.</holder>
+  </copyright>
+
+  <legalnotice>
+   <para>
+     This documentation is free software; you can redistribute
+     it and/or modify it under the terms of the GNU General Public
+     License version 2 as published by the Free Software Foundation.
+   </para>
+
+   <para>
+     This program is distributed in the hope that it will be
+     useful, but WITHOUT ANY WARRANTY; without even the implied
+     warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+     See the GNU General Public License for more details.
+   </para>
+
+   <para>
+     You should have received a copy of the GNU General Public
+     License along with this program; if not, write to the Free
+     Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+     MA 02111-1307 USA
+   </para>
+
+   <para>
+     For more details see the file COPYING in the source
+     distribution of Linux.
+   </para>
+  </legalnotice>
+ </bookinfo>
+
+<toc></toc>
+
+  <chapter id="intro">
+      <title>Introduction</title>
+  <para>
+       RapidIO is a high speed switched fabric interconnect with
+       features aimed at the embedded market.  RapidIO provides
+       support for memory-mapped I/O as well as message-based
+       transactions over the switched fabric network. RapidIO has
+       a standardized discovery mechanism not unlike the PCI bus
+       standard that allows simple detection of devices in a
+       network.
+  </para>
+  <para>
+       This documentation is provided for developers intending
+       to support RapidIO on new architectures, write new drivers,
+       or to understand the subsystem internals.
+  </para>
+  </chapter>
+
+  <chapter id="bugs">
+     <title>Known Bugs and Limitations</title>
+
+     <sect1>
+       <title>Bugs</title>
+         <para>None. ;)</para>
+     </sect1>
+     <sect1>
+       <title>Limitations</title>
+         <para>
+           <orderedlist>
+             <listitem><para>Access/management of RapidIO memory regions is not supported</para></listitem>
+             <listitem><para>Multiple host enumeration is not supported</para></listitem>
+           </orderedlist>
+        </para>
+     </sect1>
+  </chapter>
+
+  <chapter id="drivers">
+       <title>RapidIO driver interface</title>
+       <para>
+               Drivers are provided a set of calls in order
+               to interface with the subsystem to gather info
+               on devices, request/map memory region resources,
+               and manage mailboxes/doorbells.
+       </para>
+       <sect1>
+               <title>Functions</title>
+!Iinclude/linux/rio_drv.h
+!Edrivers/rapidio/rio-driver.c
+!Edrivers/rapidio/rio.c
+       </sect1>
+  </chapter>
+
+  <chapter id="internals">
+     <title>Internals</title>
+
+     <para>
+     This chapter contains the autogenerated documentation of the RapidIO
+     subsystem.
+     </para>
+
+     <sect1><title>Structures</title>
+!Iinclude/linux/rio.h
+     </sect1>
+     <sect1><title>Enumeration and Discovery</title>
+!Idrivers/rapidio/rio-scan.c
+     </sect1>
+     <sect1><title>Driver functionality</title>
+!Idrivers/rapidio/rio.c
+!Idrivers/rapidio/rio-access.c
+     </sect1>
+     <sect1><title>Device model support</title>
+!Idrivers/rapidio/rio-driver.c
+     </sect1>
+     <sect1><title>Sysfs support</title>
+!Idrivers/rapidio/rio-sysfs.c
+     </sect1>
+     <sect1><title>PPC32 support</title>
+!Iarch/ppc/kernel/rio.c
+!Earch/ppc/syslib/ppc85xx_rio.c
+!Iarch/ppc/syslib/ppc85xx_rio.c
+     </sect1>
+  </chapter>
+
+  <chapter id="credits">
+     <title>Credits</title>
+       <para>
+               The following people have contributed to the RapidIO
+               subsystem directly or indirectly:
+               <orderedlist>
+                       <listitem><para>Matt Porter<email>mporter@kernel.crashing.org</email></para></listitem>
+                       <listitem><para>Randy Vinson<email>rvinson@mvista.com</email></para></listitem>
+                       <listitem><para>Dan Malek<email>dan@embeddedalley.com</email></para></listitem>
+               </orderedlist>
+       </para>
+       <para>
+               The following people have contributed to this document:
+               <orderedlist>
+                       <listitem><para>Matt Porter<email>mporter@kernel.crashing.org</email></para></listitem>
+               </orderedlist>
+       </para>
+  </chapter>
+</book>
index 63edc5f847c45a4b1771c4e35872317ca2bbcbc7..3ec6c720b0166b4a76c576391414c795898d47b5 100644 (file)
 This guide describes the basics of Message Signaled Interrupts (MSI),
 the advantages of using MSI over traditional interrupt mechanisms,
 and how to enable your driver to use MSI or MSI-X. Also included is
-a Frequently Asked Questions.
+a Frequently Asked Questions (FAQ) section.
+
+1.1 Terminology
+
+PCI devices can be single-function or multi-function.  In either case,
+when this text talks about enabling or disabling MSI on a "device
+function," it is referring to one specific PCI device and function and
+not to all functions on a PCI device (unless the PCI device has only
+one function).
 
 2. Copyright 2003 Intel Corporation
 
 3. What is MSI/MSI-X?
 
 Message Signaled Interrupt (MSI), as described in the PCI Local Bus
-Specification Revision 2.3 or latest, is an optional feature, and a
+Specification Revision 2.3 or later, is an optional feature, and a
 required feature for PCI Express devices. MSI enables a device function
 to request service by sending an Inbound Memory Write on its PCI bus to
 the FSB as a Message Signal Interrupt transaction. Because MSI is
@@ -27,7 +35,7 @@ supported.
 
 A PCI device that supports MSI must also support pin IRQ assertion
 interrupt mechanism to provide backward compatibility for systems that
-do not support MSI. In Systems, which support MSI, the bus driver is
+do not support MSI. In systems which support MSI, the bus driver is
 responsible for initializing the message address and message data of
 the device function's MSI/MSI-X capability structure during device
 initial configuration.
@@ -61,17 +69,17 @@ over the MSI capability structure as described below.
 
         - MSI and MSI-X both support per-vector masking. Per-vector
        masking is an optional extension of MSI but a required
-       feature for MSI-X. Per-vector masking provides the kernel
-       the ability to mask/unmask MSI when servicing its software
-       interrupt service routing handler. If per-vector masking is
+       feature for MSI-X. Per-vector masking provides the kernel the
+       ability to mask/unmask a single MSI while running its
+       interrupt service routine. If per-vector masking is
        not supported, then the device driver should provide the
        hardware/software synchronization to ensure that the device
        generates MSI when the driver wants it to do so.
 
 4. Why use MSI?
 
-As a benefit the simplification of board design, MSI allows board
-designers to remove out of band interrupt routing. MSI is another
+As a benefit to the simplification of board design, MSI allows board
+designers to remove out-of-band interrupt routing. MSI is another
 step towards a legacy-free environment.
 
 Due to increasing pressure on chipset and processor packages to
@@ -87,7 +95,7 @@ support. As a result, the PCI Express technology requires MSI
 support for better interrupt performance.
 
 Using MSI enables the device functions to support two or more
-vectors, which can be configured to target different CPU's to
+vectors, which can be configured to target different CPUs to
 increase scalability.
 
 5. Configuring a driver to use MSI/MSI-X
@@ -119,13 +127,13 @@ pci_enable_msi() explicitly.
 
 int pci_enable_msi(struct pci_dev *dev)
 
-With this new API, any existing device driver, which like to have
-MSI enabled on its device function, must call this API to enable MSI
+With this new API, a device driver that wants to have MSI
+enabled on its device function must call this API to enable MSI.
 A successful call will initialize the MSI capability structure
 with ONE vector, regardless of whether a device function is
 capable of supporting multiple messages. This vector replaces the
-pre-assigned dev->irq with a new MSI vector. To avoid the conflict
-of new assigned vector with existing pre-assigned vector requires
+pre-assigned dev->irq with a new MSI vector. To avoid a conflict
+of the new assigned vector with existing pre-assigned vector requires
 a device driver to call this API before calling request_irq().
 
 5.2.2 API pci_disable_msi
@@ -137,14 +145,14 @@ when a device driver is unloading. This API restores dev->irq with
 the pre-assigned IOAPIC vector and switches a device's interrupt
 mode to PCI pin-irq assertion/INTx emulation mode.
 
-Note that a device driver should always call free_irq() on MSI vector
-it has done request_irq() on before calling this API. Failure to do
-so results a BUG_ON() and a device will be left with MSI enabled and
+Note that a device driver should always call free_irq() on the MSI vector
+that it has done request_irq() on before calling this API. Failure to do
+so results in a BUG_ON() and a device will be left with MSI enabled and
 leaks its vector.
 
 5.2.3 MSI mode vs. legacy mode diagram
 
-The below diagram shows the events, which switches the interrupt
+The below diagram shows the events which switch the interrupt
 mode on the MSI-capable device function between MSI mode and
 PIN-IRQ assertion mode.
 
@@ -155,9 +163,9 @@ PIN-IRQ assertion mode.
         ------------   pci_disable_msi  ------------------------
 
 
-Figure 1.0 MSI Mode vs. Legacy Mode
+Figure 1. MSI Mode vs. Legacy Mode
 
-In Figure 1.0, a device operates by default in legacy mode. Legacy
+In Figure 1, a device operates by default in legacy mode. Legacy
 in this context means PCI pin-irq assertion or PCI-Express INTx
 emulation. A successful MSI request (using pci_enable_msi()) switches
 a device's interrupt mode to MSI mode. A pre-assigned IOAPIC vector
@@ -166,11 +174,11 @@ assigned MSI vector will replace dev->irq.
 
 To return back to its default mode, a device driver should always call
 pci_disable_msi() to undo the effect of pci_enable_msi(). Note that a
-device driver should always call free_irq() on MSI vector it has done
-request_irq() on before calling pci_disable_msi(). Failure to do so
-results a BUG_ON() and a device will be left with MSI enabled and
+device driver should always call free_irq() on the MSI vector it has
+done request_irq() on before calling pci_disable_msi(). Failure to do
+so results in a BUG_ON() and a device will be left with MSI enabled and
 leaks its vector. Otherwise, the PCI subsystem restores a device's
-dev->irq with a pre-assigned IOAPIC vector and marks released
+dev->irq with a pre-assigned IOAPIC vector and marks the released
 MSI vector as unused.
 
 Once being marked as unused, there is no guarantee that the PCI
@@ -178,8 +186,8 @@ subsystem will reserve this MSI vector for a device. Depending on
 the availability of current PCI vector resources and the number of
 MSI/MSI-X requests from other drivers, this MSI may be re-assigned.
 
-For the case where the PCI subsystem re-assigned this MSI vector
-another driver, a request to switching back to MSI mode may result
+For the case where the PCI subsystem re-assigns this MSI vector to
+another driver, a request to switch back to MSI mode may result
 in being assigned a different MSI vector or a failure if no more
 vectors are available.
 
@@ -208,12 +216,12 @@ Unlike the function pci_enable_msi(), the function pci_enable_msix()
 does not replace the pre-assigned IOAPIC dev->irq with a new MSI
 vector because the PCI subsystem writes the 1:1 vector-to-entry mapping
 into the field vector of each element contained in a second argument.
-Note that the pre-assigned IO-APIC dev->irq is valid only if the device
-operates in PIN-IRQ assertion mode. In MSI-X mode, any attempt of
+Note that the pre-assigned IOAPIC dev->irq is valid only if the device
+operates in PIN-IRQ assertion mode. In MSI-X mode, any attempt at
 using dev->irq by the device driver to request for interrupt service
 may result unpredictabe behavior.
 
-For each MSI-X vector granted, a device driver is responsible to call
+For each MSI-X vector granted, a device driver is responsible for calling
 other functions like request_irq(), enable_irq(), etc. to enable
 this vector with its corresponding interrupt service handler. It is
 a device driver's choice to assign all vectors with the same
@@ -224,13 +232,13 @@ service handler.
 
 The PCI 3.0 specification has implementation notes that MMIO address
 space for a device's MSI-X structure should be isolated so that the
-software system can set different page for controlling accesses to
-the MSI-X structure. The implementation of MSI patch requires the PCI
+software system can set different pages for controlling accesses to the
+MSI-X structure. The implementation of MSI support requires the PCI
 subsystem, not a device driver, to maintain full control of the MSI-X
-table/MSI-X PBA and MMIO address space of the MSI-X table/MSI-X PBA.
-A device driver is prohibited from requesting the MMIO address space
-of the MSI-X table/MSI-X PBA. Otherwise, the PCI subsystem will fail
-enabling MSI-X on its hardware device when it calls the function
+table/MSI-X PBA (Pending Bit Array) and MMIO address space of the MSI-X
+table/MSI-X PBA.  A device driver is prohibited from requesting the MMIO
+address space of the MSI-X table/MSI-X PBA. Otherwise, the PCI subsystem
+will fail enabling MSI-X on its hardware device when it calls the function
 pci_enable_msix().
 
 5.3.2 Handling MSI-X allocation
@@ -274,9 +282,9 @@ For the case where fewer MSI-X vectors are allocated to a function
 than requested, the function pci_enable_msix() will return the
 maximum number of MSI-X vectors available to the caller. A device
 driver may re-send its request with fewer or equal vectors indicated
-in a return. For example, if a device driver requests 5 vectors, but
-the number of available vectors is 3 vectors, a value of 3 will be a
-return as a result of pci_enable_msix() call. A function could be
+in the return. For example, if a device driver requests 5 vectors, but
+the number of available vectors is 3 vectors, a value of 3 will be
+returned as a result of pci_enable_msix() call. A function could be
 designed for its driver to use only 3 MSI-X table entries as
 different combinations as ABC--, A-B-C, A--CB, etc. Note that this
 patch does not support multiple entries with the same vector. Such
@@ -285,49 +293,46 @@ as ABBCC, AABCC, BCCBA, etc will result as a failure by the function
 pci_enable_msix(). Below are the reasons why supporting multiple
 entries with the same vector is an undesirable solution.
 
-       - The PCI subsystem can not determine which entry, which
-         generated the message, to mask/unmask MSI while handling
+       - The PCI subsystem cannot determine the entry that
+         generated the message to mask/unmask MSI while handling
          software driver ISR. Attempting to walk through all MSI-X
          table entries (2048 max) to mask/unmask any match vector
          is an undesirable solution.
 
-       - Walk through all MSI-X table entries (2048 max) to handle
+       - Walking through all MSI-X table entries (2048 max) to handle
          SMP affinity of any match vector is an undesirable solution.
 
 5.3.4 API pci_enable_msix
 
-int pci_enable_msix(struct pci_dev *dev, u32 *entries, int nvec)
+int pci_enable_msix(struct pci_dev *dev, struct msix_entry *entries, int nvec)
 
 This API enables a device driver to request the PCI subsystem
-for enabling MSI-X messages on its hardware device. Depending on
+to enable MSI-X messages on its hardware device. Depending on
 the availability of PCI vectors resources, the PCI subsystem enables
-either all or nothing.
+either all or none of the requested vectors.
 
-Argument dev points to the device (pci_dev) structure.
+Argument 'dev' points to the device (pci_dev) structure.
 
-Argument entries is a pointer of unsigned integer type. The number of
-elements is indicated in argument nvec. The content of each element
-will be mapped to the following struct defined in /driver/pci/msi.h.
+Argument 'entries' is a pointer to an array of msix_entry structs.
+The number of entries is indicated in argument 'nvec'.
+struct msix_entry is defined in /driver/pci/msi.h:
 
 struct msix_entry {
        u16     vector; /* kernel uses to write alloc vector */
        u16     entry; /* driver uses to specify entry */
 };
 
-A device driver is responsible for initializing the field entry of
-each element with unique entry supported by MSI-X table. Otherwise,
+A device driver is responsible for initializing the field 'entry' of
+each element with unique entry supported by MSI-X table. Otherwise,
 -EINVAL will be returned as a result. A successful return of zero
-indicates the PCI subsystem completes initializing each of requested
+indicates the PCI subsystem completed initializing each of the requested
 entries of the MSI-X table with message address and message data.
 Last but not least, the PCI subsystem will write the 1:1
-vector-to-entry mapping into the field vector of each element. A
-device driver is responsible of keeping track of allocated MSI-X
+vector-to-entry mapping into the field 'vector' of each element. A
+device driver is responsible for keeping track of allocated MSI-X
 vectors in its internal data structure.
 
-Argument nvec is an integer indicating the number of messages
-requested.
-
-A return of zero indicates that the number of MSI-X vectors is
+A return of zero indicates that the number of MSI-X vectors was
 successfully allocated. A return of greater than zero indicates
 MSI-X vector shortage. Or a return of less than zero indicates
 a failure. This failure may be a result of duplicate entries
@@ -341,12 +346,12 @@ void pci_disable_msix(struct pci_dev *dev)
 This API should always be used to undo the effect of pci_enable_msix()
 when a device driver is unloading. Note that a device driver should
 always call free_irq() on all MSI-X vectors it has done request_irq()
-on before calling this API. Failure to do so results a BUG_ON() and
+on before calling this API. Failure to do so results in a BUG_ON() and
 a device will be left with MSI-X enabled and leaks its vectors.
 
 5.3.6 MSI-X mode vs. legacy mode diagram
 
-The below diagram shows the events, which switches the interrupt
+The below diagram shows the events which switch the interrupt
 mode on the MSI-X capable device function between MSI-X mode and
 PIN-IRQ assertion mode (legacy).
 
@@ -356,22 +361,22 @@ PIN-IRQ assertion mode (legacy).
        |            | ===============>     |                        |
         ------------   pci_disable_msix     ------------------------
 
-Figure 2.0 MSI-X Mode vs. Legacy Mode
+Figure 2. MSI-X Mode vs. Legacy Mode
 
-In Figure 2.0, a device operates by default in legacy mode. A
+In Figure 2, a device operates by default in legacy mode. A
 successful MSI-X request (using pci_enable_msix()) switches a
 device's interrupt mode to MSI-X mode. A pre-assigned IOAPIC vector
 stored in dev->irq will be saved by the PCI subsystem; however,
 unlike MSI mode, the PCI subsystem will not replace dev->irq with
 assigned MSI-X vector because the PCI subsystem already writes the 1:1
-vector-to-entry mapping into the field vector of each element
+vector-to-entry mapping into the field 'vector' of each element
 specified in second argument.
 
 To return back to its default mode, a device driver should always call
 pci_disable_msix() to undo the effect of pci_enable_msix(). Note that
 a device driver should always call free_irq() on all MSI-X vectors it
 has done request_irq() on before calling pci_disable_msix(). Failure
-to do so results a BUG_ON() and a device will be left with MSI-X
+to do so results in a BUG_ON() and a device will be left with MSI-X
 enabled and leaks its vectors. Otherwise, the PCI subsystem switches a
 device function's interrupt mode from MSI-X mode to legacy mode and
 marks all allocated MSI-X vectors as unused.
@@ -383,53 +388,56 @@ MSI/MSI-X requests from other drivers, these MSI-X vectors may be
 re-assigned.
 
 For the case where the PCI subsystem re-assigned these MSI-X vectors
-to other driver, a request to switching back to MSI-X mode may result
+to other drivers, a request to switch back to MSI-X mode may result
 being assigned with another set of MSI-X vectors or a failure if no
 more vectors are available.
 
-5.4 Handling function implementng both MSI and MSI-X capabilities
+5.4 Handling function implementing both MSI and MSI-X capabilities
 
 For the case where a function implements both MSI and MSI-X
 capabilities, the PCI subsystem enables a device to run either in MSI
 mode or MSI-X mode but not both. A device driver determines whether it
 wants MSI or MSI-X enabled on its hardware device. Once a device
-driver requests for MSI, for example, it is prohibited to request for
+driver requests for MSI, for example, it is prohibited from requesting
 MSI-X; in other words, a device driver is not permitted to ping-pong
 between MSI mod MSI-X mode during a run-time.
 
 5.5 Hardware requirements for MSI/MSI-X support
+
 MSI/MSI-X support requires support from both system hardware and
 individual hardware device functions.
 
 5.5.1 System hardware support
+
 Since the target of MSI address is the local APIC CPU, enabling
-MSI/MSI-X support in Linux kernel is dependent on whether existing
-system hardware supports local APIC. Users should verify their
-system whether it runs when CONFIG_X86_LOCAL_APIC=y.
+MSI/MSI-X support in the Linux kernel is dependent on whether existing
+system hardware supports local APIC. Users should verify that their
+system supports local APIC operation by testing that it runs when
+CONFIG_X86_LOCAL_APIC=y.
 
 In SMP environment, CONFIG_X86_LOCAL_APIC is automatically set;
 however, in UP environment, users must manually set
 CONFIG_X86_LOCAL_APIC. Once CONFIG_X86_LOCAL_APIC=y, setting
-CONFIG_PCI_MSI enables the VECTOR based scheme and
-the option for MSI-capable device drivers to selectively enable
-MSI/MSI-X.
+CONFIG_PCI_MSI enables the VECTOR based scheme and the option for
+MSI-capable device drivers to selectively enable MSI/MSI-X.
 
 Note that CONFIG_X86_IO_APIC setting is irrelevant because MSI/MSI-X
 vector is allocated new during runtime and MSI/MSI-X support does not
 depend on BIOS support. This key independency enables MSI/MSI-X
-support on future IOxAPIC free platform.
+support on future IOxAPIC free platforms.
 
 5.5.2 Device hardware support
+
 The hardware device function supports MSI by indicating the
 MSI/MSI-X capability structure on its PCI capability list. By
 default, this capability structure will not be initialized by
 the kernel to enable MSI during the system boot. In other words,
 the device function is running on its default pin assertion mode.
 Note that in many cases the hardware supporting MSI have bugs,
-which may result in system hang. The software driver of specific
-MSI-capable hardware is responsible for whether calling
+which may result in system hangs. The software driver of specific
+MSI-capable hardware is responsible for deciding whether to call
 pci_enable_msi or not. A return of zero indicates the kernel
-successfully initializes the MSI/MSI-X capability structure of the
+successfully initialized the MSI/MSI-X capability structure of the
 device function. The device function is now running on MSI/MSI-X mode.
 
 5.6 How to tell whether MSI/MSI-X is enabled on device function
@@ -439,10 +447,10 @@ pci_enable_msi()/pci_enable_msix() indicates to a device driver that
 its device function is initialized successfully and ready to run in
 MSI/MSI-X mode.
 
-At the user level, users can use command 'cat /proc/interrupts'
-to display the vector allocated for a device and its interrupt
-MSI/MSI-X mode ("PCI MSI"/"PCI MSIX"). Below shows below MSI mode is
-enabled on a SCSI Adaptec 39320D Ultra320.
+At the user level, users can use the command 'cat /proc/interrupts'
+to display the vectors allocated for devices and their interrupt
+MSI/MSI-X modes ("PCI-MSI"/"PCI-MSI-X"). Below shows MSI mode is
+enabled on a SCSI Adaptec 39320D Ultra320 controller.
 
            CPU0       CPU1
   0:     324639          0    IO-APIC-edge  timer
@@ -453,8 +461,8 @@ enabled on a SCSI Adaptec 39320D Ultra320.
  15:          1          0    IO-APIC-edge  ide1
 169:          0          0   IO-APIC-level  uhci-hcd
 185:          0          0   IO-APIC-level  uhci-hcd
-193:        138         10         PCI MSI  aic79xx
-201:         30          0         PCI MSI  aic79xx
+193:        138         10         PCI-MSI  aic79xx
+201:         30          0         PCI-MSI  aic79xx
 225:         30          0   IO-APIC-level  aic7xxx
 233:         30          0   IO-APIC-level  aic7xxx
 NMI:          0          0
@@ -490,8 +498,8 @@ target address set as 0xfeexxxxx, as conformed to PCI
 specification 2.3 or latest, then it should work.
 
 Q4. From the driver point of view, if the MSI is lost because
-of the errors occur during inbound memory write, then it may
-wait for ever. Is there a mechanism for it to recover?
+of errors occurring during inbound memory write, then it may
+wait forever. Is there a mechanism for it to recover?
 
 A4. Since the target of the transaction is an inbound memory
 write, all transaction termination conditions (Retry,
index 354d89c783777489408967d012ff4d4f55392adf..15da16861fa3d6bfbec2e3f192ece4a22ace5b7f 100644 (file)
@@ -772,8 +772,6 @@ RCU pointer/list traversal:
        list_for_each_entry_rcu
        list_for_each_continue_rcu      (to be deprecated in favor of new
                                         list_for_each_entry_continue_rcu)
-       hlist_for_each_rcu              (to be deprecated in favor of
-                                        hlist_for_each_entry_rcu)
        hlist_for_each_entry_rcu
 
 RCU pointer update:
index a6f718e90a86874b33b0ecf0c4acaa9cfa6e6908..5ed6f3530b869fea639028a576fb33d364873a66 100644 (file)
@@ -8,10 +8,9 @@ Compilation of kernel
 ---------------------
 
   In order to compile ARM Linux, you will need a compiler capable of
-  generating ARM ELF code with GNU extensions.  GCC 2.95.1, EGCS
-  1.1.2, and GCC 3.3 are known to be good compilers.  Fortunately, you
-  needn't guess.  The kernel will report an error if your compiler is
-  a recognized offender.
+  generating ARM ELF code with GNU extensions.  GCC 3.3 is known to be
+  a good compiler.  Fortunately, you needn't guess.  The kernel will report
+  an error if your compiler is a recognized offender.
 
   To build ARM Linux natively, you shouldn't have to alter the ARCH = line
   in the top level Makefile.  However, if you don't have the ARM Linux ELF
index dca274ff40052e31cd3a0d6badd23003648a37a7..a5009c8300f3364a98e8982c9697f1dee789346f 100644 (file)
@@ -19,7 +19,6 @@ There are two dm targets available: snapshot and snapshot-origin.
 *) snapshot-origin <origin>
 
 which will normally have one or more snapshots based on it.
-You must create the snapshot-origin device before you can create snapshots.
 Reads will be mapped directly to the backing device. For each write, the
 original data will be saved in the <COW device> of each snapshot to keep
 its visible content unchanged, at least until the <COW device> fills up.
@@ -27,7 +26,7 @@ its visible content unchanged, at least until the <COW device> fills up.
 
 *) snapshot <origin> <COW device> <persistent?> <chunksize>
 
-A snapshot is created of the <origin> block device. Changed chunks of
+A snapshot of the <origin> block device is created. Changed chunks of
 <chunksize> sectors will be stored on the <COW device>.  Writes will
 only go to the <COW device>.  Reads will come from the <COW device> or
 from <origin> for unchanged data.  <COW device> will often be
@@ -37,6 +36,8 @@ the amount of free space and expand the <COW device> before it fills up.
 
 <persistent?> is P (Persistent) or N (Not persistent - will not survive
 after reboot).
+The difference is that for transient snapshots less metadata must be
+saved on disk - they can be kept in memory by the kernel.
 
 
 How this is used by LVM2
index 62db6758d1c1050db42b638ad4d42dc06809c68b..ee277dd204b0f575165b02f0dfc1fcb27c8d0bf8 100644 (file)
@@ -146,10 +146,10 @@ pmipal    Use the protected mode interface for palette changes.
 
 mtrr:n setup memory type range registers for the vesafb framebuffer
        where n:
-             0 - disabled (equivalent to nomtrr)
+             0 - disabled (equivalent to nomtrr) (default)
              1 - uncachable
              2 - write-back
-             3 - write-combining (default)
+             3 - write-combining
              4 - write-through
 
        If you see the following in dmesg, choose the type that matches the
index b67189a8d8d471789629ae23e4c1b6e9e2b713da..decdf9917e0ddd4d809a673ef0dc5538f741b34f 100644 (file)
@@ -69,6 +69,22 @@ Who: Grant Coady <gcoady@gmail.com>
 
 ---------------------------
 
+What:  remove EXPORT_SYMBOL(panic_timeout)
+When:  April 2006
+Files: kernel/panic.c
+Why:   No modular usage in the kernel.
+Who:   Adrian Bunk <bunk@stusta.de>
+
+---------------------------
+
+What:  remove EXPORT_SYMBOL(insert_resource)
+When:  April 2006
+Files: kernel/resource.c
+Why:   No modular usage in the kernel.
+Who:   Adrian Bunk <bunk@stusta.de>
+
+---------------------------
+
 What:  PCMCIA control ioctl (needed for pcmcia-cs [cardmgr, cardctl])
 When:  November 2005
 Files: drivers/pcmcia/: pcmcia_ioctl.c
diff --git a/Documentation/filesystems/dentry-locking.txt b/Documentation/filesystems/dentry-locking.txt
new file mode 100644 (file)
index 0000000..4c0c575
--- /dev/null
@@ -0,0 +1,173 @@
+RCU-based dcache locking model
+==============================
+
+On many workloads, the most common operation on dcache is to look up a
+dentry, given a parent dentry and the name of the child. Typically,
+for every open(), stat() etc., the dentry corresponding to the
+pathname will be looked up by walking the tree starting with the first
+component of the pathname and using that dentry along with the next
+component to look up the next level and so on. Since it is a frequent
+operation for workloads like multiuser environments and web servers,
+it is important to optimize this path.
+
+Prior to 2.5.10, dcache_lock was acquired in d_lookup and thus in
+every component during path look-up. Since 2.5.10 onwards, fast-walk
+algorithm changed this by holding the dcache_lock at the beginning and
+walking as many cached path component dentries as possible. This
+significantly decreases the number of acquisition of
+dcache_lock. However it also increases the lock hold time
+significantly and affects performance in large SMP machines. Since
+2.5.62 kernel, dcache has been using a new locking model that uses RCU
+to make dcache look-up lock-free.
+
+The current dcache locking model is not very different from the
+existing dcache locking model. Prior to 2.5.62 kernel, dcache_lock
+protected the hash chain, d_child, d_alias, d_lru lists as well as
+d_inode and several other things like mount look-up. RCU-based changes
+affect only the way the hash chain is protected. For everything else
+the dcache_lock must be taken for both traversing as well as
+updating. The hash chain updates too take the dcache_lock.  The
+significant change is the way d_lookup traverses the hash chain, it
+doesn't acquire the dcache_lock for this and rely on RCU to ensure
+that the dentry has not been *freed*.
+
+
+Dcache locking details
+======================
+
+For many multi-user workloads, open() and stat() on files are very
+frequently occurring operations. Both involve walking of path names to
+find the dentry corresponding to the concerned file. In 2.4 kernel,
+dcache_lock was held during look-up of each path component. Contention
+and cache-line bouncing of this global lock caused significant
+scalability problems. With the introduction of RCU in Linux kernel,
+this was worked around by making the look-up of path components during
+path walking lock-free.
+
+
+Safe lock-free look-up of dcache hash table
+===========================================
+
+Dcache is a complex data structure with the hash table entries also
+linked together in other lists. In 2.4 kernel, dcache_lock protected
+all the lists. We applied RCU only on hash chain walking. The rest of
+the lists are still protected by dcache_lock.  Some of the important
+changes are :
+
+1. The deletion from hash chain is done using hlist_del_rcu() macro
+   which doesn't initialize next pointer of the deleted dentry and
+   this allows us to walk safely lock-free while a deletion is
+   happening.
+
+2. Insertion of a dentry into the hash table is done using
+   hlist_add_head_rcu() which take care of ordering the writes - the
+   writes to the dentry must be visible before the dentry is
+   inserted. This works in conjunction with hlist_for_each_rcu() while
+   walking the hash chain. The only requirement is that all
+   initialization to the dentry must be done before
+   hlist_add_head_rcu() since we don't have dcache_lock protection
+   while traversing the hash chain. This isn't different from the
+   existing code.
+
+3. The dentry looked up without holding dcache_lock by cannot be
+   returned for walking if it is unhashed. It then may have a NULL
+   d_inode or other bogosity since RCU doesn't protect the other
+   fields in the dentry. We therefore use a flag DCACHE_UNHASHED to
+   indicate unhashed dentries and use this in conjunction with a
+   per-dentry lock (d_lock). Once looked up without the dcache_lock,
+   we acquire the per-dentry lock (d_lock) and check if the dentry is
+   unhashed. If so, the look-up is failed. If not, the reference count
+   of the dentry is increased and the dentry is returned.
+
+4. Once a dentry is looked up, it must be ensured during the path walk
+   for that component it doesn't go away. In pre-2.5.10 code, this was
+   done holding a reference to the dentry. dcache_rcu does the same.
+   In some sense, dcache_rcu path walking looks like the pre-2.5.10
+   version.
+
+5. All dentry hash chain updates must take the dcache_lock as well as
+   the per-dentry lock in that order. dput() does this to ensure that
+   a dentry that has just been looked up in another CPU doesn't get
+   deleted before dget() can be done on it.
+
+6. There are several ways to do reference counting of RCU protected
+   objects. One such example is in ipv4 route cache where deferred
+   freeing (using call_rcu()) is done as soon as the reference count
+   goes to zero. This cannot be done in the case of dentries because
+   tearing down of dentries require blocking (dentry_iput()) which
+   isn't supported from RCU callbacks. Instead, tearing down of
+   dentries happen synchronously in dput(), but actual freeing happens
+   later when RCU grace period is over. This allows safe lock-free
+   walking of the hash chains, but a matched dentry may have been
+   partially torn down. The checking of DCACHE_UNHASHED flag with
+   d_lock held detects such dentries and prevents them from being
+   returned from look-up.
+
+
+Maintaining POSIX rename semantics
+==================================
+
+Since look-up of dentries is lock-free, it can race against a
+concurrent rename operation. For example, during rename of file A to
+B, look-up of either A or B must succeed.  So, if look-up of B happens
+after A has been removed from the hash chain but not added to the new
+hash chain, it may fail.  Also, a comparison while the name is being
+written concurrently by a rename may result in false positive matches
+violating rename semantics.  Issues related to race with rename are
+handled as described below :
+
+1. Look-up can be done in two ways - d_lookup() which is safe from
+   simultaneous renames and __d_lookup() which is not.  If
+   __d_lookup() fails, it must be followed up by a d_lookup() to
+   correctly determine whether a dentry is in the hash table or
+   not. d_lookup() protects look-ups using a sequence lock
+   (rename_lock).
+
+2. The name associated with a dentry (d_name) may be changed if a
+   rename is allowed to happen simultaneously. To avoid memcmp() in
+   __d_lookup() go out of bounds due to a rename and false positive
+   comparison, the name comparison is done while holding the
+   per-dentry lock. This prevents concurrent renames during this
+   operation.
+
+3. Hash table walking during look-up may move to a different bucket as
+   the current dentry is moved to a different bucket due to rename.
+   But we use hlists in dcache hash table and they are
+   null-terminated.  So, even if a dentry moves to a different bucket,
+   hash chain walk will terminate. [with a list_head list, it may not
+   since termination is when the list_head in the original bucket is
+&nb