Disintegrate and kill asm/system.h
[Sent again, this time with a subject line]
Hi Linus,
Here are a bunch of patches to disintegrate asm/system.h into a set of separate bits to relieve the problem of circular inclusion dependencies.
The following changes since commit 437538267b672f9320833907f1b5acbb2605f4be:
Merge tag 'fbdev-updates-for-3.4' of git://github.com/schandinat/linux-2.6 (2012-03-22 20:43:40 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system.git split-asm-system_h
A signed tag is here:
http://git.kernel.org/?p=linux/kernel/git/dhowells/linux-asm_system.git;a=tag;h=refs/tags/split-asm_system_h-for-linus-20120328
Can you apply this after pulling the arch trees please? Note that some of the arch-specific patches may well come to you via their arch trees before you apply this patch series (the Blackfin has, for instance, and I've eliminated it from my tree). There's also a chance that the penultimate patch won't apply by the time you get to it - it's generated by a one-line script to simply remove all #inclusions of asm/system.h.
I've built all the working defconfigs from all the arches that I can and made sure that they don't break.
The reason for these patches is that I recently encountered a circular dependency problem that came about when I produced some patches to optimise get_order() by rewriting it to use ilog2(). This uses bitops - and on the SH arch asm/bitops.h drags in asm-generic/get_order.h by a circuituous route involving asm/system.h.
The main difficulty seems to be asm/system.h. It holds a number of low level bits with no/few dependencies that are commonly used (eg. memory barriers) and a number of bits with more dependencies that aren't used in many places (eg. switch_to()).
These patches break asm/system.h up into the following core pieces:
(1) asm/barrier.h
Move memory barriers here. This already done for MIPS and Alpha.
(2) asm/switch_to.h
Move switch_to() and related stuff here.
(3) asm/exec.h
Move arch_align_stack() here. Other process execution related bits could perhaps go here from asm/processor.h.
(4) asm/cmpxchg.h
Move xchg() and cmpxchg() here as they're full word atomic ops and frequently used by atomic_xchg() and atomic_cmpxchg().
(5) asm/bug.h
Move die() and related bits.
(6) asm/auxvec.h
Move AT_VECTOR_SIZE_ARCH here.
Other arch headers are created as needed on a per-arch basis.
---
David Howells (36):
ARM: Fix missing linux/types.h #inclusion in asm/hardware/iop3xx.h
SELinux: selinux/xfrm.h needs net/flow.h
Disintegrate asm/system.h for X86
Disintegrate asm/system.h for Alpha
Disintegrate asm/system.h for ARM
Disintegrate asm/system.h for AVR32
Disintegrate asm/system.h for C6X
Disintegrate asm/system.h for CRIS
Disintegrate asm/system.h for FRV
Disintegrate asm/system.h for H8300
Disintegrate asm/system.h for Hexagon
Disintegrate asm/system.h for IA64
Disintegrate asm/system.h for M32R
m68k: Fix xchg/cmpxchg to fail to link if given an inappropriate pointer Disintegrate asm/system.h for M68K
Disintegrate asm/system.h for Microblaze
Disintegrate asm/system.h for MIPS
Disintegrate asm/system.h for MN10300
Disintegrate asm/system.h for PA-RISC
Disintegrate asm/system.h for PowerPC
Disintegrate asm/system.h for S390
Disintegrate asm/system.h for Score
Disintegrate asm/system.h for SH
Disintegrate asm/system.h for Sparc
Disintegrate asm/system.h for Tile
Disintegrate asm/system.h for Xtensa
Make asm-generic/cmpxchg.h #include asm-generic/cmpxchg-local.h Create asm-generic/barrier.h
Move the asm-generic/system.h xchg() implementation to asm-generic/cmpxchg.h Split the switch_to() wrapper out of asm-generic/system.h
Split arch_align_stack() out from asm-generic/system.h Disintegrate asm/system.h for OpenRISC
Move all declarations of free_initmem() to linux/mm.h
Add #includes needed to permit the removal of asm/system.h Remove all #inclusions of asm/system.h
Delete all instances of asm/system.h
Guan Xuetao (1):
Disintegrate asm/system.h for Unicore32 [based on ver #3, changed by gxt]
Russell King (1):
ARM: move CP15 definitions to separate header file
arch/alpha/boot/bootp.c | 1 -
arch/alpha/boot/bootpz.c | 1 -
arch/alpha/boot/head.S | 1 -
arch/alpha/boot/main.c | 1 -
arch/alpha/include/asm/atomic.h | 68 +++-
arch/alpha/include/asm/auxvec.h | 2 +
arch/alpha/include/asm/core_lca.h | 2 +-
arch/alpha/include/asm/core_mcpcia.h | 1 +
arch/alpha/include/asm/core_t2.h | 1 -
arch/alpha/include/asm/elf.h | 1 +
arch/alpha/include/asm/exec.h | 6 +
arch/alpha/include/asm/fpu.h | 2 +
arch/alpha/include/asm/io.h | 1 -
arch/alpha/include/asm/irqflags.h | 2 +-
arch/alpha/include/asm/mce.h | 83 +++
arch/alpha/include/asm/mmu_context.h | 1 -
arch/alpha/include/asm/pal.h | 112 ++++
arch/alpha/include/asm/pgtable.h | 1 +
arch/alpha/include/asm/setup.h | 36 ++
arch/alpha/include/asm/special_insns.h | 41 ++
arch/alpha/include/asm/spinlock.h | 1 -
arch/alpha/include/asm/switch_to.h | 14 +
arch/alpha/include/asm/system.h | 354 ------------
arch/alpha/include/asm/xchg.h | 2 +-
arch/alpha/kernel/core_apecs.c | 1 +
arch/alpha/kernel/core_cia.c | 1 +
arch/alpha/kernel/core_t2.c | 1 +
arch/alpha/kernel/err_impl.h | 2 +
arch/alpha/kernel/head.S | 6 +-
arch/alpha/kernel/irq.c | 1 -
arch/alpha/kernel/irq_alpha.c | 1 +
arch/alpha/kernel/osf_sys.c | 1 -
arch/alpha/kernel/process.c | 1 -
arch/alpha/kernel/ptrace.c | 1 -
arch/alpha/kernel/setup.c | 1 -
arch/alpha/kernel/sys_alcor.c | 1 -
arch/alpha/kernel/sys_cabriolet.c | 1 -
arch/alpha/kernel/sys_dp264.c | 1 -
arch/alpha/kernel/sys_eb64p.c | 1 -
arch/alpha/kernel/sys_eiger.c | 1 -
arch/alpha/kernel/sys_jensen.c | 1 -
arch/alpha/kernel/sys_marvel.c | 1 -
arch/alpha/kernel/sys_miata.c | 1 -
arch/alpha/kernel/sys_mikasa.c | 2 +-
arch/alpha/kernel/sys_nautilus.c | 1 -
arch/alpha/kernel/sys_noritake.c | 2 +-
arch/alpha/kernel/sys_rawhide.c | 1 -
arch/alpha/kernel/sys_ruffian.c | 1 -
arch/alpha/kernel/sys_rx164.c | 1 -
arch/alpha/kernel/sys_sable.c | 1 -
arch/alpha/kernel/sys_sio.c | 1 -
arch/alpha/kernel/sys_sx164.c | 2 +-
arch/alpha/kernel/sys_takara.c | 1 -
arch/alpha/kernel/sys_titan.c | 1 -
arch/alpha/kernel/sys_wildfire.c | 1 -
arch/alpha/kernel/traps.c | 1 +
arch/alpha/kernel/vmlinux.lds.S | 2 +
arch/alpha/lib/stacktrace.c | 1 -
arch/alpha/mm/fault.c | 1 -
arch/alpha/mm/init.c | 2 +-
arch/alpha/oprofile/common.c | 1 -
arch/alpha/oprofile/op_model_ev4.c | 1 -
arch/alpha/oprofile/op_model_ev5.c | 1 -
arch/alpha/oprofile/op_model_ev6.c | 1 -
arch/alpha/oprofile/op_model_ev67.c | 1 -
arch/arm/common/via82c505.c | 1 -
arch/arm/include/asm/atomic.h | 4 +-
arch/arm/include/asm/barrier.h | 69 +++
arch/arm/include/asm/bitops.h | 2 +-
arch/arm/include/asm/bug.h | 30 +
arch/arm/include/asm/cmpxchg.h | 295 ++++++++++
arch/arm/include/asm/compiler.h | 15 +
arch/arm/include/asm/cp15.h | 87 +++
arch/arm/include/asm/div64.h | 2 +-
arch/arm/include/asm/dma.h | 1 -
arch/arm/include/asm/domain.h | 4 +
arch/arm/include/asm/exec.h | 6 +
arch/arm/include/asm/hardware/iop3xx.h | 3 +
arch/arm/include/asm/io.h | 2 +-
arch/arm/include/asm/mmu.h | 7 +
arch/arm/include/asm/processor.h | 3 +-
arch/arm/include/asm/switch_to.h | 18 +
arch/arm/include/asm/system.h | 551 +------------------
arch/arm/include/asm/system_info.h | 27 +
arch/arm/include/asm/system_misc.h | 28 +
arch/arm/include/asm/uaccess.h | 2 +-
arch/arm/kernel/armksyms.c | 1 -
arch/arm/kernel/elf.c | 1 +
arch/arm/kernel/entry-armv.S | 2 +-
arch/arm/kernel/fiq.c | 2 +-
arch/arm/kernel/head-nommu.S | 2 +-
arch/arm/kernel/head.S | 2 +-
arch/arm/kernel/hw_breakpoint.c | 1 -
arch/arm/kernel/irq.c | 1 -
arch/arm/kernel/kprobes-common.c | 1 +
arch/arm/kernel/machine_kexec.c | 2 +-
arch/arm/kernel/process.c | 1 -
arch/arm/kernel/ptrace.c | 1 -
arch/arm/kernel/setup.c | 4 +-
arch/arm/kernel/sleep.S | 1 -
arch/arm/kernel/tcm.c | 1 +
arch/arm/kernel/thumbee.c | 1 +
arch/arm/kernel/traps.c | 2 +-
arch/arm/mach-at91/at91cap9.c | 2 +
arch/arm/mach-at91/at91rm9200.c | 1 +
arch/arm/mach-at91/at91sam9260.c | 1 +
arch/arm/mach-at91/at91sam9261.c | 1 +
arch/arm/mach-at91/at91sam9263.c | 1 +
arch/arm/mach-at91/at91sam9g45.c | 1 +
arch/arm/mach-at91/at91sam9rl.c | 1 +
arch/arm/mach-at91/include/mach/system_rev.h | 2 +
arch/arm/mach-clps711x/common.c | 1 +
arch/arm/mach-clps711x/p720t-leds.c | 1 -
arch/arm/mach-davinci/board-da850-evm.c | 1 +
arch/arm/mach-ebsa110/core.c | 2 +-
arch/arm/mach-ebsa110/leds.c | 1 -
arch/arm/mach-exynos/hotplug.c | 1 +
arch/arm/mach-footbridge/common.c | 1 +
arch/arm/mach-footbridge/dc21285-timer.c | 1 +
arch/arm/mach-footbridge/dc21285.c | 1 -
arch/arm/mach-footbridge/ebsa285-leds.c | 1 -
arch/arm/mach-footbridge/netwinder-hw.c | 1 +
arch/arm/mach-footbridge/netwinder-leds.c | 1 -
arch/arm/mach-imx/dma-v1.c | 1 -
arch/arm/mach-imx/mach-imx6q.c | 1 +
arch/arm/mach-imx/mach-mx51_efikamx.c | 1 +
arch/arm/mach-imx/mach-mx51_efikasb.c | 1 +
arch/arm/mach-integrator/core.c | 1 -
arch/arm/mach-integrator/leds.c | 1 -
arch/arm/mach-integrator/pci.c | 1 -
arch/arm/mach-integrator/pci_v3.c | 1 -
arch/arm/mach-iop33x/uart.c | 1 -
arch/arm/mach-ixp2000/core.c | 1 -
arch/arm/mach-ixp2000/enp2611.c | 1 -
arch/arm/mach-ixp2000/ixdp2400.c | 1 -
arch/arm/mach-ixp2000/ixdp2800.c | 1 -
arch/arm/mach-ixp2000/ixdp2x00.c | 1 -
arch/arm/mach-ixp2000/ixdp2x01.c | 1 -
arch/arm/mach-ixp2000/pci.c | 1 -
arch/arm/mach-ixp23xx/core.c | 1 -
arch/arm/mach-ixp23xx/espresso.c | 1 -
arch/arm/mach-ixp23xx/ixdp2351.c | 1 -
arch/arm/mach-ixp23xx/pci.c | 1 -
arch/arm/mach-ixp23xx/roadrunner.c | 1 -
arch/arm/mach-ixp4xx/common-pci.c | 1 -
arch/arm/mach-ixp4xx/goramo_mlr.c | 1 -
arch/arm/mach-ks8695/time.c | 1 +
arch/arm/mach-mmp/common.c | 1 +
arch/arm/mach-mmp/pxa168.c | 1 +
arch/arm/mach-msm/board-sapphire.c | 1 -
arch/arm/mach-mxs/system.c | 2 +-
arch/arm/mach-omap1/id.c | 1 +
arch/arm/mach-omap1/leds-h2p2-debug.c | 1 -
arch/arm/mach-omap1/leds-innovator.c | 1 -
arch/arm/mach-omap1/leds-osk.c | 1 -
arch/arm/mach-omap1/mux.c | 1 -
arch/arm/mach-omap1/time.c | 1 -
arch/arm/mach-omap1/timer32k.c | 1 -
arch/arm/mach-omap2/board-omap3touchbook.c | 1 +
arch/arm/mach-omap2/board-rx51-peripherals.c | 1 +
arch/arm/mach-omap2/mux.c | 1 -
arch/arm/mach-omap2/omap-mpuss-lowpower.c | 1 -
arch/arm/mach-omap2/pm24xx.c | 1 +
arch/arm/mach-omap2/pm34xx.c | 1 +
arch/arm/mach-omap2/pm44xx.c | 1 +
arch/arm/mach-omap2/sleep44xx.S | 1 -
arch/arm/mach-orion5x/common.c | 1 +
arch/arm/mach-orion5x/dns323-setup.c | 1 +
arch/arm/mach-orion5x/ls-chl-setup.c | 1 -
arch/arm/mach-orion5x/ls_hgl-setup.c | 1 -
arch/arm/mach-orion5x/lsmini-setup.c | 1 -
arch/arm/mach-pnx4008/core.c | 2 +-
arch/arm/mach-pnx4008/dma.c | 1 -
arch/arm/mach-pnx4008/irq.c | 1 -
arch/arm/mach-pnx4008/time.c | 1 -
arch/arm/mach-pxa/cm-x300.c | 1 +
arch/arm/mach-pxa/colibri-pxa3xx.c | 1 +
arch/arm/mach-pxa/corgi.c | 1 -
arch/arm/mach-pxa/generic.c | 1 -
arch/arm/mach-pxa/leds-idp.c | 1 -
arch/arm/mach-pxa/leds-lubbock.c | 1 -
arch/arm/mach-pxa/leds-mainstone.c | 1 -
arch/arm/mach-pxa/magician.c | 1 +
arch/arm/mach-pxa/poodle.c | 1 -
arch/arm/mach-pxa/reset.c | 1 +
arch/arm/mach-pxa/viper.c | 1 +
arch/arm/mach-pxa/zeus.c | 1 +
arch/arm/mach-realview/core.c | 1 -
arch/arm/mach-realview/hotplug.c | 1 +
arch/arm/mach-rpc/riscpc.c | 1 +
arch/arm/mach-s3c2410/s3c2410.c | 1 +
arch/arm/mach-s3c2412/s3c2412.c | 1 +
arch/arm/mach-s3c2416/s3c2416.c | 1 +
arch/arm/mach-s3c2440/s3c244x.c | 1 +
arch/arm/mach-s3c2443/s3c2443.c | 1 +
arch/arm/mach-s3c64xx/common.c | 1 +
arch/arm/mach-s5p64x0/common.c | 1 +
arch/arm/mach-s5pc100/common.c | 1 +
arch/arm/mach-sa1100/dma.c | 1 -
arch/arm/mach-sa1100/generic.c | 2 +-
arch/arm/mach-sa1100/leds-assabet.c | 1 -
arch/arm/mach-sa1100/leds-badge4.c | 1 -
arch/arm/mach-sa1100/leds-cerf.c | 1 -
arch/arm/mach-sa1100/leds-hackkit.c | 1 -
arch/arm/mach-sa1100/leds-lart.c | 1 -
arch/arm/mach-sa1100/pm.c | 1 -
arch/arm/mach-shark/leds.c | 1 -
arch/arm/mach-shmobile/cpuidle.c | 1 -
arch/arm/mach-shmobile/include/mach/system.h | 2 +
arch/arm/mach-shmobile/pm-r8a7779.c | 1 -
arch/arm/mach-shmobile/pm-sh7372.c | 1 -
arch/arm/mach-shmobile/suspend.c | 2 +-
arch/arm/mach-tegra/cpu-tegra.c | 1 -
arch/arm/mach-tegra/hotplug.c | 1 +
arch/arm/mach-versatile/core.c | 1 -
arch/arm/mach-versatile/pci.c | 1 -
arch/arm/mach-vexpress/hotplug.c | 2 +-
arch/arm/mach-w90x900/cpu.c | 1 +
arch/arm/mm/alignment.c | 3 +-
arch/arm/mm/cache-feroceon-l2.c | 1 +
arch/arm/mm/cache-tauros2.c | 1 +
arch/arm/mm/cache-xsc3l2.c | 2 +-
arch/arm/mm/fault.c | 3 +-
arch/arm/mm/flush.c | 1 -
arch/arm/mm/idmap.c | 1 +
arch/arm/mm/ioremap.c | 2 +
arch/arm/mm/mmu.c | 2 +
arch/arm/mm/pgd.c | 1 +
arch/arm/mm/proc-fa526.S | 1 -
arch/arm/nwfpe/fpa11.c | 1 -
arch/arm/plat-iop/i2c.c | 1 -
arch/arm/plat-iop/pci.c | 1 -
arch/arm/plat-iop/restart.c | 1 +
arch/arm/plat-mxc/system.c | 2 +-
arch/arm/plat-omap/debug-leds.c | 1 -
arch/arm/plat-omap/dma.c | 1 -
arch/arm/plat-omap/mux.c | 1 -
arch/arm/plat-pxa/dma.c | 1 -
arch/arm/plat-s3c24xx/cpu.c | 1 +
arch/arm/plat-s3c24xx/dma.c | 1 -
arch/arm/plat-samsung/cpu.c | 1 -
arch/arm/plat-samsung/time.c | 1 -
arch/arm/plat-spear/restart.c | 1 +
arch/arm/vfp/vfpmodule.c | 2 +
arch/avr32/include/asm/atomic.h | 2 +-
arch/avr32/include/asm/barrier.h | 27 +
arch/avr32/include/asm/bitops.h | 1 -
arch/avr32/include/asm/bug.h | 5 +
arch/avr32/include/asm/{system.h => cmpxchg.h} | 79 +---
arch/avr32/include/asm/exec.h | 13 +
arch/avr32/include/asm/special_insns.h | 13 +
arch/avr32/include/asm/switch_to.h | 46 ++
arch/avr32/mach-at32ap/cpufreq.c | 1 -
arch/avr32/oprofile/op_model_avr32.c | 1 -
arch/blackfin/include/asm/system.h | 5 -
arch/c6x/include/asm/Kbuild | 1 -
arch/c6x/include/asm/barrier.h | 27 +
arch/c6x/include/asm/bitops.h | 1 -
arch/c6x/include/asm/bug.h | 23 +
arch/c6x/include/asm/cmpxchg.h | 68 +++
arch/c6x/include/asm/exec.h | 6 +
arch/c6x/include/asm/processor.h | 9 +
arch/c6x/include/asm/setup.h | 1 +
arch/c6x/include/asm/special_insns.h | 63 ++
arch/c6x/include/asm/switch_to.h | 33 ++
arch/c6x/include/asm/system.h | 168 ------
arch/c6x/kernel/irq.c | 1 +
arch/c6x/kernel/setup.c | 1 +
arch/c6x/kernel/soc.c | 1 -
arch/c6x/kernel/time.c | 1 +
arch/c6x/kernel/traps.c | 1 +
arch/c6x/platforms/timer64.c | 1 +
arch/cris/arch-v10/drivers/ds1302.c | 1 -
arch/cris/arch-v10/drivers/gpio.c | 1 -
arch/cris/arch-v10/drivers/i2c.c | 1 -
arch/cris/arch-v10/drivers/pcf8563.c | 1 -
arch/cris/arch-v10/drivers/sync_serial.c | 1 -
arch/cris/arch-v10/kernel/debugport.c | 1 -
arch/cris/arch-v10/kernel/dma.c | 1 +
arch/cris/arch-v10/kernel/io_interface_mux.c | 1 +
arch/cris/arch-v10/kernel/process.c | 1 +
arch/cris/arch-v10/kernel/ptrace.c | 1 -
arch/cris/arch-v10/kernel/setup.c | 1 +
arch/cris/arch-v10/kernel/signal.c | 1 +
arch/cris/arch-v10/kernel/traps.c | 1 +
arch/cris/arch-v32/drivers/i2c.c | 1 -
arch/cris/arch-v32/drivers/mach-a3/gpio.c | 1 -
arch/cris/arch-v32/drivers/mach-fs/gpio.c | 1 -
arch/cris/arch-v32/kernel/debugport.c | 1 -
arch/cris/arch-v32/kernel/fasttimer.c | 1 -
arch/cris/arch-v32/kernel/ptrace.c | 1 -
arch/cris/arch-v32/mach-a3/dma.c | 1 -
arch/cris/arch-v32/mach-fs/dma.c | 1 -
arch/cris/include/arch-v10/arch/elf.h | 2 +
arch/cris/include/arch-v32/arch/elf.h | 2 +
arch/cris/include/arch-v32/arch/system.h | 10 -
arch/cris/include/asm/atomic.h | 2 +-
arch/cris/include/asm/barrier.h | 25 +
arch/cris/include/asm/bitops.h | 1 -
arch/cris/include/asm/{system.h => cmpxchg.h} | 52 +--
arch/cris/include/asm/exec.h | 6 +
arch/cris/include/asm/processor.h | 11 +-
arch/cris/include/asm/switch_to.h | 12 +
arch/cris/kernel/irq.c | 1 +
arch/cris/kernel/process.c | 1 -
arch/cris/kernel/ptrace.c | 1 -
arch/cris/kernel/setup.c | 1 +
arch/cris/kernel/traps.c | 1 +
arch/cris/mm/fault.c | 1 +
arch/frv/include/asm/atomic.h | 57 +--
arch/frv/include/asm/barrier.h | 29 +
arch/frv/include/asm/bug.h | 2 +
arch/frv/include/asm/{system.h => cmpxchg.h} | 98 ++--
arch/frv/include/asm/exec.h | 17 +
arch/frv/include/asm/switch_to.h | 35 ++
arch/frv/kernel/debug-stub.c | 1 -
arch/frv/kernel/gdb-io.c | 1 -
arch/frv/kernel/gdb-stub.c | 1 -
arch/frv/kernel/irq-mb93091.c | 1 -
arch/frv/kernel/irq-mb93093.c | 1 -
arch/frv/kernel/irq-mb93493.c | 1 -
arch/frv/kernel/irq.c | 1 -
arch/frv/kernel/process.c | 1 -
arch/frv/kernel/ptrace.c | 1 -
arch/frv/kernel/traps.c | 1 -
arch/frv/mm/fault.c | 1 -
arch/frv/mm/init.c | 1 -
arch/frv/mm/kmap.c | 1 -
arch/h8300/include/asm/atomic.h | 4 +-
arch/h8300/include/asm/barrier.h | 27 +
arch/h8300/include/asm/bitops.h | 1 -
arch/h8300/include/asm/bug.h | 4 +
arch/h8300/include/asm/cmpxchg.h | 60 ++
arch/h8300/include/asm/exec.h | 6 +
arch/h8300/include/asm/processor.h | 5 +
arch/h8300/include/asm/switch_to.h | 50 ++
arch/h8300/include/asm/system.h | 140 -----
arch/h8300/kernel/irq.c | 1 -
arch/h8300/kernel/process.c | 1 -
arch/h8300/kernel/ptrace.c | 1 -
arch/h8300/kernel/traps.c | 1 -
arch/h8300/mm/fault.c | 1 -
arch/h8300/mm/init.c | 1 -
arch/h8300/mm/kmap.c | 1 -
arch/h8300/mm/memory.c | 1 -
arch/hexagon/include/asm/atomic.h | 1 +
arch/hexagon/include/asm/barrier.h | 41 ++
arch/hexagon/include/asm/bitops.h | 1 -
arch/hexagon/include/asm/{system.h => cmpxchg.h} | 46 +--
arch/hexagon/include/asm/exec.h | 28 +
arch/hexagon/include/asm/switch_to.h | 34 ++
arch/hexagon/kernel/ptrace.c | 1 -
arch/hexagon/kernel/smp.c | 1 -
arch/hexagon/kernel/vm_events.c | 1 -
arch/ia64/dig/setup.c | 2 +-
arch/ia64/hp/common/sba_iommu.c | 1 -
arch/ia64/hp/sim/boot/bootloader.c | 1 -
arch/ia64/hp/sim/boot/fw-emu.c | 1 +
arch/ia64/hp/sim/simeth.c | 1 -
arch/ia64/include/asm/acpi.h | 1 -
arch/ia64/include/asm/atomic.h | 1 -
arch/ia64/include/asm/auxvec.h | 2 +
arch/ia64/include/asm/barrier.h | 68 +++
arch/ia64/include/asm/exec.h | 14 +
arch/ia64/include/asm/futex.h | 1 -
arch/ia64/include/asm/io.h | 1 -
arch/ia64/include/asm/irqflags.h | 2 +
arch/ia64/include/asm/kexec.h | 1 +
arch/ia64/include/asm/mca_asm.h | 2 +
arch/ia64/include/asm/page.h | 10 +
arch/ia64/include/asm/pci.h | 8 +
arch/ia64/include/asm/pgtable.h | 1 -
arch/ia64/include/asm/processor.h | 8 +
arch/ia64/include/asm/sal.h | 1 -
arch/ia64/include/asm/setup.h | 18 +
arch/ia64/include/asm/sn/pda.h | 1 -
arch/ia64/include/asm/spinlock.h | 1 -
arch/ia64/include/asm/switch_to.h | 87 +++
arch/ia64/include/asm/system.h | 203 -------
arch/ia64/include/asm/uv/uv.h | 1 -
arch/ia64/kernel/acpi.c | 1 -
arch/ia64/kernel/efi.c | 1 +
arch/ia64/kernel/fsys.S | 1 -
arch/ia64/kernel/gate.S | 3 +-
arch/ia64/kernel/gate.lds.S | 3 +-
arch/ia64/kernel/head.S | 1 -
arch/ia64/kernel/iosapic.c | 1 -
arch/ia64/kernel/irq_ia64.c | 1 -
arch/ia64/kernel/ivt.S | 1 -
arch/ia64/kernel/machvec.c | 1 -
arch/ia64/kernel/mca.c | 1 -
arch/ia64/kernel/mca_drv.c | 1 -
arch/ia64/kernel/patch.c | 1 -
arch/ia64/kernel/pci-dma.c | 1 -
arch/ia64/kernel/perfmon.c | 1 -
arch/ia64/kernel/ptrace.c | 1 -
arch/ia64/kernel/setup.c | 1 -
arch/ia64/kernel/smp.c | 1 -
arch/ia64/kernel/smpboot.c | 1 -
arch/ia64/kernel/time.c | 1 -
arch/ia64/kernel/traps.c | 1 +
arch/ia64/kernel/uncached.c | 1 -
arch/ia64/kernel/unwind.c | 1 -
arch/ia64/kernel/vmlinux.lds.S | 1 -
arch/ia64/mm/fault.c | 1 -
arch/ia64/mm/init.c | 1 -
arch/ia64/oprofile/backtrace.c | 1 -
arch/ia64/pci/pci.c | 1 -
arch/ia64/sn/kernel/setup.c | 2 +-
arch/ia64/sn/kernel/sn2/prominfo_proc.c | 1 -
arch/ia64/sn/kernel/sn2/sn2_smp.c | 1 -
arch/ia64/sn/kernel/sn2/timer.c | 1 -
arch/ia64/sn/kernel/tiocx.c | 1 -
arch/ia64/xen/xensetup.S | 1 -
arch/m32r/include/asm/atomic.h | 3 +-
arch/m32r/include/asm/barrier.h | 94 +++
arch/m32r/include/asm/bitops.h | 3 +-
arch/m32r/include/asm/cmpxchg.h | 221 ++++++++
arch/m32r/include/asm/dcache_clear.h | 29 +
arch/m32r/include/asm/exec.h | 14 +
arch/m32r/include/asm/local.h | 1 -
arch/m32r/include/asm/spinlock.h | 1 +
arch/m32r/include/asm/switch_to.h | 51 ++
arch/m32r/include/asm/system.h | 367 ------------
arch/m32r/kernel/ptrace.c | 1 -
arch/m32r/kernel/traps.c | 1 -
arch/m32r/mm/fault-nommu.c | 1 -
arch/m32r/mm/fault.c | 1 -
arch/m32r/platforms/m32104ut/setup.c | 1 -
arch/m32r/platforms/m32700ut/setup.c | 1 -
arch/m32r/platforms/mappi/setup.c | 1 -
arch/m32r/platforms/mappi2/setup.c | 1 -
arch/m32r/platforms/mappi3/setup.c | 1 -
arch/m32r/platforms/oaks32r/setup.c | 1 -
arch/m32r/platforms/opsput/setup.c | 1 -
arch/m32r/platforms/usrv/setup.c | 1 -
arch/m68k/amiga/amisound.c | 1 -
arch/m68k/amiga/config.c | 1 -
arch/m68k/apollo/config.c | 1 -
arch/m68k/atari/ataints.c | 1 -
arch/m68k/atari/atasound.c | 1 -
arch/m68k/atari/config.c | 1 -
arch/m68k/bvme6000/config.c | 1 -
arch/m68k/bvme6000/rtc.c | 1 -
arch/m68k/hp300/time.c | 1 -
arch/m68k/include/asm/atomic.h | 2 +-
arch/m68k/include/asm/barrier.h | 20 +
arch/m68k/include/asm/{system.h => cmpxchg.h} | 94 +---
arch/m68k/include/asm/exec.h | 6 +
arch/m68k/include/asm/sun3xflop.h | 1 -
arch/m68k/include/asm/switch_to.h | 41 ++
arch/m68k/kernel/ints.c | 1 -
arch/m68k/kernel/irq.c | 1 -
arch/m68k/kernel/process.c | 1 -
arch/m68k/kernel/ptrace.c | 1 -
arch/m68k/kernel/traps.c | 1 -
arch/m68k/kernel/vectors.c | 1 -
arch/m68k/mac/config.c | 1 -
arch/m68k/mac/misc.c | 1 -
arch/m68k/mm/fault.c | 1 -
arch/m68k/mm/init_mm.c | 1 -
arch/m68k/mm/init_no.c | 1 -
arch/m68k/mm/kmap.c | 1 -
arch/m68k/mm/memory.c | 1 -
arch/m68k/mm/motorola.c | 1 -
arch/m68k/mm/sun3mmu.c | 1 -
arch/m68k/mvme147/config.c | 1 -
arch/m68k/mvme16x/config.c | 1 -
arch/m68k/mvme16x/rtc.c | 1 -
arch/m68k/platform/68328/config.c | 1 -
arch/m68k/platform/68328/timers.c | 1 -
arch/m68k/platform/68360/config.c | 1 -
arch/m68k/platform/68EZ328/config.c | 1 -
arch/m68k/platform/68VZ328/config.c | 1 -
arch/m68k/q40/config.c | 1 -
arch/m68k/q40/q40ints.c | 1 -
arch/m68k/sun3/intersil.c | 1 -
arch/m68k/sun3/mmu_emu.c | 1 -
arch/m68k/sun3/prom/console.c | 1 -
arch/m68k/sun3x/config.c | 1 -
arch/m68k/sun3x/time.c | 1 -
arch/microblaze/include/asm/atomic.h | 1 +
arch/microblaze/include/asm/barrier.h | 27 +
arch/microblaze/include/asm/cmpxchg.h | 40 ++
arch/microblaze/include/asm/exec.h | 14 +
arch/microblaze/include/asm/processor.h | 11 +-
arch/microblaze/include/asm/setup.h | 6 +
arch/microblaze/include/asm/switch_to.h | 24 +
arch/microblaze/include/asm/system.h | 97 ----
arch/microblaze/kernel/cpu/pvr.c | 1 -
arch/microblaze/kernel/microblaze_ksyms.c | 1 -
arch/microblaze/kernel/process.c | 1 -
arch/microblaze/kernel/prom.c | 1 -
arch/microblaze/kernel/setup.c | 1 -
arch/microblaze/kernel/timer.c | 1 -
arch/microblaze/kernel/traps.c | 1 -
arch/microblaze/lib/memcpy.c | 1 -
arch/microblaze/mm/fault.c | 1 -
arch/mips/cavium-octeon/setup.c | 1 -
arch/mips/cavium-octeon/smp.c | 2 +-
arch/mips/dec/ecc-berr.c | 1 -
arch/mips/dec/kn01-berr.c | 1 -
arch/mips/dec/kn02xa-berr.c | 1 -
arch/mips/dec/wbflush.c | 2 +-
arch/mips/emma/markeins/irq.c | 1 -
arch/mips/fw/arc/misc.c | 1 -
arch/mips/include/asm/atomic.h | 2 +-
arch/mips/include/asm/barrier.h | 2 +
arch/mips/include/asm/cmpxchg.h | 124 ++++
arch/mips/include/asm/dma.h | 1 -
arch/mips/include/asm/exec.h | 17 +
arch/mips/include/asm/mach-au1x00/au1000_dma.h | 1 -
arch/mips/include/asm/processor.h | 7 +-
arch/mips/include/asm/setup.h | 11 +
arch/mips/include/asm/switch_to.h | 85 +++
arch/mips/include/asm/system.h | 235 --------
arch/mips/include/asm/txx9/jmr3927.h | 1 -
arch/mips/kernel/cpu-bugs64.c | 2 +-
arch/mips/kernel/cpu-probe.c | 1 -
arch/mips/kernel/irq-rm7000.c | 1 -
arch/mips/kernel/irq-rm9000.c | 1 -
arch/mips/kernel/irq.c | 1 -
arch/mips/kernel/irq_cpu.c | 1 -
arch/mips/kernel/mips-mt.c | 1 -
arch/mips/kernel/process.c | 1 -
arch/mips/kernel/ptrace.c | 1 -
arch/mips/kernel/ptrace32.c | 1 -
arch/mips/kernel/rtlx.c | 1 -
arch/mips/kernel/setup.c | 1 -
arch/mips/kernel/signal.c | 1 +
arch/mips/kernel/signal32.c | 2 +-
arch/mips/kernel/signal_n32.c | 1 -
arch/mips/kernel/smp-bmips.c | 1 -
arch/mips/kernel/smp-cmp.c | 1 -
arch/mips/kernel/smp-mt.c | 1 -
arch/mips/kernel/smp.c | 2 +-
arch/mips/kernel/smtc-proc.c | 1 -
arch/mips/kernel/smtc.c | 1 -
arch/mips/kernel/spram.c | 1 -
arch/mips/kernel/syscall.c | 1 +
arch/mips/kernel/traps.c | 1 -
arch/mips/kernel/unaligned.c | 1 -
arch/mips/kernel/vpe.c | 1 -
arch/mips/lasat/reset.c | 1 -
arch/mips/math-emu/dsemul.c | 1 -
arch/mips/mipssim/sim_smtc.c | 1 -
arch/mips/mipssim/sim_time.c | 1 +
arch/mips/mm/c-octeon.c | 1 -
arch/mips/mm/c-r3k.c | 1 -
arch/mips/mm/c-r4k.c | 1 -
arch/mips/mm/c-tx39.c | 1 -
arch/mips/mm/fault.c | 1 -
arch/mips/mm/page.c | 1 -
arch/mips/mm/sc-ip22.c | 1 -
arch/mips/mm/sc-mips.c | 1 -
arch/mips/mm/sc-r5k.c | 1 -
arch/mips/mm/tlb-r3k.c | 1 -
arch/mips/mm/tlb-r4k.c | 1 -
arch/mips/mm/tlb-r8k.c | 1 -
arch/mips/mm/tlbex.c | 1 +
arch/mips/mti-malta/malta-init.c | 1 -
arch/mips/mti-malta/malta-int.c | 1 +
arch/mips/mti-malta/malta-time.c | 1 +
arch/mips/netlogic/common/irq.c | 1 -
arch/mips/pmc-sierra/msp71xx/msp_irq_cic.c | 1 -
arch/mips/pmc-sierra/msp71xx/msp_irq_per.c | 1 -
arch/mips/pmc-sierra/msp71xx/msp_irq_slp.c | 1 -
arch/mips/pmc-sierra/yosemite/irq.c | 1 -
arch/mips/pmc-sierra/yosemite/prom.c | 1 -
arch/mips/pnx833x/common/interrupts.c | 1 +
arch/mips/powertv/asic/asic_int.c | 1 +
arch/mips/powertv/asic/irq_asic.c | 1 -
arch/mips/powertv/init.c | 1 -
arch/mips/rb532/irq.c | 1 -
arch/mips/sgi-ip22/ip22-berr.c | 1 -
arch/mips/sgi-ip22/ip22-reset.c | 1 -
arch/mips/sgi-ip22/ip28-berr.c | 1 -
arch/mips/sgi-ip27/ip27-irq.c | 1 -
arch/mips/sgi-ip27/ip27-reset.c | 1 -
arch/mips/sgi-ip32/ip32-irq.c | 1 -
arch/mips/sgi-ip32/ip32-reset.c | 1 -
arch/mips/sibyte/bcm1480/irq.c | 1 -
arch/mips/sibyte/common/sb_tbprof.c | 1 -
arch/mips/sibyte/sb1250/bus_watcher.c | 1 -
arch/mips/sibyte/sb1250/irq.c | 1 -
arch/mips/sni/reset.c | 1 -
arch/mips/vr41xx/common/irq.c | 1 -
arch/mips/vr41xx/common/pmu.c | 1 -
arch/mn10300/include/asm/atomic.h | 109 +----
arch/mn10300/include/asm/barrier.h | 37 ++
arch/mn10300/include/asm/cmpxchg.h | 115 ++++
arch/mn10300/include/asm/dma.h | 1 -
arch/mn10300/include/asm/exec.h | 16 +
arch/mn10300/include/asm/switch_to.h | 49 ++
arch/mn10300/include/asm/system.h | 102 ----
arch/mn10300/kernel/entry.S | 1 -
arch/mn10300/kernel/fpu.c | 1 -
arch/mn10300/kernel/gdb-io-serial.c | 1 -
arch/mn10300/kernel/gdb-io-ttysm.c | 1 -
arch/mn10300/kernel/gdb-stub.c | 1 -
arch/mn10300/kernel/mn10300-serial.c | 1 -
arch/mn10300/kernel/mn10300-watchdog.c | 1 -
arch/mn10300/kernel/process.c | 1 -
arch/mn10300/kernel/ptrace.c | 1 -
arch/mn10300/kernel/setup.c | 1 -
arch/mn10300/kernel/smp-low.S | 2 +-
arch/mn10300/kernel/smp.c | 1 -
arch/mn10300/kernel/traps.c | 1 -
arch/mn10300/lib/bitops.c | 1 -
arch/mn10300/mm/fault.c | 1 -
arch/mn10300/mm/init.c | 1 -
arch/mn10300/mm/misalignment.c | 1 -
arch/mn10300/mm/pgtable.c | 1 -
arch/mn10300/mm/tlb-smp.c | 1 -
arch/mn10300/proc-mn2ws0050/proc-init.c | 1 -
arch/openrisc/include/asm/Kbuild | 3 +
arch/openrisc/include/asm/system.h | 35 --
arch/openrisc/kernel/idle.c | 1 -
arch/openrisc/kernel/process.c | 1 -
arch/openrisc/kernel/prom.c | 1 -
arch/openrisc/kernel/ptrace.c | 1 -
arch/openrisc/kernel/setup.c | 1 -
arch/openrisc/kernel/traps.c | 1 -
arch/openrisc/mm/init.c | 1 -
arch/openrisc/mm/tlb.c | 1 -
arch/parisc/include/asm/atomic.h | 1 -
arch/parisc/include/asm/barrier.h | 35 ++
arch/parisc/include/asm/delay.h | 2 +-
arch/parisc/include/asm/dma.h | 1 -
arch/parisc/include/asm/exec.h | 6 +
arch/parisc/include/asm/ldcw.h | 48 ++
arch/parisc/include/asm/processor.h | 2 +-
arch/parisc/include/asm/psw.h | 41 ++
arch/parisc/include/asm/special_insns.h | 40 ++
arch/parisc/include/asm/spinlock.h | 1 -
arch/parisc/include/asm/switch_to.h | 12 +
arch/parisc/include/asm/system.h | 165 ------
arch/parisc/include/asm/thread_info.h | 1 +
arch/parisc/include/asm/timex.h | 1 -
arch/parisc/include/asm/uaccess.h | 1 -
arch/parisc/kernel/cache.c | 1 -
arch/parisc/kernel/firmware.c | 1 -
arch/parisc/kernel/pci.c | 1 -
arch/parisc/kernel/ptrace.c | 1 -
arch/parisc/kernel/smp.c | 1 -
arch/parisc/kernel/traps.c | 1 -
arch/parisc/lib/bitops.c | 1 -
arch/powerpc/include/asm/atomic.h | 8 +-
arch/powerpc/include/asm/auxvec.h | 2 +
arch/powerpc/include/asm/barrier.h | 68 +++
arch/powerpc/include/asm/bug.h | 11 +
arch/powerpc/include/asm/cache.h | 16 +
arch/powerpc/include/asm/cmpxchg.h | 309 ++++++++++
arch/powerpc/include/asm/debug.h | 56 ++
arch/powerpc/include/asm/dma.h | 1 -
arch/powerpc/include/asm/exec.h | 9 +
arch/powerpc/include/asm/hw_breakpoint.h | 2 +-
arch/powerpc/include/asm/processor.h | 30 +
arch/powerpc/include/asm/reg_booke.h | 5 +
arch/powerpc/include/asm/rtas.h | 2 +
arch/powerpc/include/asm/runlatch.h | 45 ++
arch/powerpc/include/asm/setup.h | 24 +-
arch/powerpc/include/asm/switch_to.h | 65 +++
arch/powerpc/include/asm/system.h | 592 --------------------
arch/powerpc/kernel/align.c | 2 +-
arch/powerpc/kernel/cputable.c | 1 +
arch/powerpc/kernel/crash.c | 2 +-
arch/powerpc/kernel/idle.c | 2 +-
arch/powerpc/kernel/irq.c | 2 +-
arch/powerpc/kernel/kprobes.c | 1 -
arch/powerpc/kernel/lparcfg.c | 1 -
arch/powerpc/kernel/ppc_ksyms.c | 2 +-
arch/powerpc/kernel/process.c | 4 +-
arch/powerpc/kernel/prom.c | 1 -
arch/powerpc/kernel/prom_init.c | 1 -
arch/powerpc/kernel/ptrace.c | 2 +-
arch/powerpc/kernel/ptrace32.c | 2 +-
arch/powerpc/kernel/rtas.c | 1 -
arch/powerpc/kernel/setup-common.c | 1 -
arch/powerpc/kernel/setup_32.c | 1 -
arch/powerpc/kernel/setup_64.c | 1 -
arch/powerpc/kernel/signal.c | 1 +
arch/powerpc/kernel/signal_32.c | 1 +
arch/powerpc/kernel/signal_64.c | 1 +
arch/powerpc/kernel/smp.c | 2 +-
arch/powerpc/kernel/softemu8xx.c | 1 -
arch/powerpc/kernel/swsusp.c | 2 +-
arch/powerpc/kernel/swsusp_64.c | 1 -
arch/powerpc/kernel/sys_ppc32.c | 1 +
arch/powerpc/kernel/sysfs.c | 1 -
arch/powerpc/kernel/traps.c | 3 +-
arch/powerpc/kernel/vdso.c | 1 -
arch/powerpc/kvm/book3s_hv.c | 1 +
arch/powerpc/lib/alloc.c | 2 +-
arch/powerpc/lib/copyuser_power7_vmx.c | 1 +
arch/powerpc/mm/44x_mmu.c | 1 -
arch/powerpc/mm/fault.c | 2 +-
arch/powerpc/mm/hash_utils_64.c | 1 -
arch/powerpc/mm/init_32.c | 1 -
arch/powerpc/mm/init_64.c | 1 -
arch/powerpc/mm/numa.c | 2 +-
arch/powerpc/mm/pgtable_32.c | 1 +
arch/powerpc/mm/pgtable_64.c | 1 -
arch/powerpc/oprofile/common.c | 1 -
arch/powerpc/oprofile/op_model_7450.c | 1 -
arch/powerpc/oprofile/op_model_cell.c | 1 -
arch/powerpc/oprofile/op_model_fsl_emb.c | 1 -
arch/powerpc/oprofile/op_model_power4.c | 1 -
arch/powerpc/oprofile/op_model_rs64.c | 1 -
arch/powerpc/platforms/52xx/lite5200_pm.c | 1 +
arch/powerpc/platforms/82xx/pq2.c | 1 -
arch/powerpc/platforms/83xx/km83xx.c | 1 -
arch/powerpc/platforms/83xx/mpc832x_mds.c | 1 -
arch/powerpc/platforms/83xx/mpc834x_itx.c | 1 -
arch/powerpc/platforms/83xx/mpc834x_mds.c | 1 -
arch/powerpc/platforms/83xx/mpc836x_mds.c | 1 -
arch/powerpc/platforms/83xx/sbc834x.c | 1 -
arch/powerpc/platforms/83xx/suspend.c | 1 +
arch/powerpc/platforms/85xx/corenet_ds.c | 1 -
arch/powerpc/platforms/85xx/ge_imp3a.c | 1 -
arch/powerpc/platforms/85xx/ksi8560.c | 1 -
arch/powerpc/platforms/85xx/mpc8536_ds.c | 1 -
arch/powerpc/platforms/85xx/mpc85xx_ads.c | 1 -
arch/powerpc/platforms/85xx/mpc85xx_cds.c | 1 -
arch/powerpc/platforms/85xx/mpc85xx_ds.c | 1 -
arch/powerpc/platforms/85xx/mpc85xx_mds.c | 1 -
arch/powerpc/platforms/85xx/mpc85xx_rdb.c | 1 -
arch/powerpc/platforms/85xx/p1010rdb.c | 1 -
arch/powerpc/platforms/85xx/p1023_rds.c | 1 -
arch/powerpc/platforms/85xx/p2041_rdb.c | 1 -
arch/powerpc/platforms/85xx/p3041_ds.c | 1 -
arch/powerpc/platforms/85xx/p4080_ds.c | 1 -
arch/powerpc/platforms/85xx/p5020_ds.c | 1 -
arch/powerpc/platforms/85xx/sbc8548.c | 1 -
arch/powerpc/platforms/85xx/sbc8560.c | 1 -
arch/powerpc/platforms/85xx/socrates.c | 1 -
arch/powerpc/platforms/85xx/stx_gp3.c | 1 -
arch/powerpc/platforms/85xx/tqm85xx.c | 1 -
arch/powerpc/platforms/85xx/xes_mpc85xx.c | 1 -
arch/powerpc/platforms/86xx/gef_ppc9a.c | 1 -
arch/powerpc/platforms/86xx/gef_sbc310.c | 1 -
arch/powerpc/platforms/86xx/gef_sbc610.c | 1 -
arch/powerpc/platforms/86xx/mpc8610_hpcd.c | 1 -
arch/powerpc/platforms/86xx/mpc86xx_hpcn.c | 1 -
arch/powerpc/platforms/86xx/pic.c | 1 -
arch/powerpc/platforms/86xx/sbc8641d.c | 1 -
arch/powerpc/platforms/8xx/mpc86xads_setup.c | 1 -
arch/powerpc/platforms/8xx/mpc885ads_setup.c | 1 -
arch/powerpc/platforms/8xx/tqm8xx_setup.c | 1 -
arch/powerpc/platforms/cell/smp.c | 1 -
arch/powerpc/platforms/embedded6xx/c2k.c | 1 -
arch/powerpc/platforms/embedded6xx/holly.c | 1 -
arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c | 1 -
arch/powerpc/platforms/embedded6xx/prpmc2800.c | 1 -
arch/powerpc/platforms/embedded6xx/storcenter.c | 1 -
arch/powerpc/platforms/fsl_uli1575.c | 1 -
arch/powerpc/platforms/maple/setup.c | 1 -
arch/powerpc/platforms/maple/time.c | 1 -
arch/powerpc/platforms/pasemi/setup.c | 2 +-
arch/powerpc/platforms/powermac/bootx_init.c | 1 +
arch/powerpc/platforms/powermac/cpufreq_32.c | 2 +-
arch/powerpc/platforms/powermac/nvram.c | 1 -
arch/powerpc/platforms/powermac/setup.c | 1 -
arch/powerpc/platforms/powermac/time.c | 1 -
arch/powerpc/platforms/powernv/smp.c | 1 -
arch/powerpc/platforms/ps3/mm.c | 1 +
arch/powerpc/platforms/pseries/dtl.c | 2 +-
arch/powerpc/platforms/pseries/hotplug-cpu.c | 1 -
arch/powerpc/platforms/pseries/processor_idle.c | 2 +-
arch/powerpc/platforms/pseries/ras.c | 1 -
arch/powerpc/platforms/pseries/smp.c | 1 -
arch/powerpc/platforms/wsp/chroma.c | 1 -
arch/powerpc/platforms/wsp/psr2.c | 1 -
arch/powerpc/platforms/wsp/wsp_pci.c | 1 +
arch/powerpc/sysdev/cpm_common.c | 1 -
arch/powerpc/sysdev/fsl_soc.c | 1 -
arch/powerpc/sysdev/msi_bitmap.c | 1 +
arch/powerpc/sysdev/tsi108_dev.c | 1 -
arch/powerpc/xmon/xmon.c | 1 +
arch/s390/crypto/crypt_s390.h | 1 +
arch/s390/include/asm/atomic.h | 2 +-
arch/s390/include/asm/barrier.h | 35 ++
arch/s390/include/asm/ctl_reg.h | 76 +++
arch/s390/include/asm/elf.h | 1 -
arch/s390/include/asm/exec.h | 12 +
arch/s390/include/asm/facility.h | 63 ++
arch/s390/include/asm/mmu.h | 14 +
arch/s390/include/asm/mmu_context.h | 1 +
arch/s390/include/asm/processor.h | 24 +
arch/s390/include/asm/setup.h | 14 +
arch/s390/include/asm/smp.h | 2 +-
arch/s390/include/asm/switch_to.h | 100 ++++
arch/s390/include/asm/system.h | 315 -----------
arch/s390/include/asm/uaccess.h | 6 +
arch/s390/kernel/asm-offsets.c | 1 -
arch/s390/kernel/compat_signal.c | 1 +
arch/s390/kernel/cpcmd.c | 1 -
arch/s390/kernel/dis.c | 1 -
arch/s390/kernel/early.c | 2 +-
arch/s390/kernel/lgr.c | 1 -
arch/s390/kernel/machine_kexec.c | 1 -
arch/s390/kernel/os_info.c | 1 -
arch/s390/kernel/process.c | 2 +-
arch/s390/kernel/ptrace.c | 2 +-
arch/s390/kernel/setup.c | 1 -
arch/s390/kernel/signal.c | 1 +
arch/s390/kernel/suspend.c | 2 +-
arch/s390/kernel/traps.c | 1 -
arch/s390/kernel/vdso.c | 2 +-
arch/s390/kvm/kvm-s390.c | 2 +-
arch/s390/mm/fault.c | 2 +-
arch/s390/mm/init.c | 2 +-
arch/s390/mm/maccess.c | 2 +-
arch/s390/mm/pgtable.c | 1 -
arch/s390/oprofile/hwsampler.c | 1 +
arch/score/include/asm/atomic.h | 1 +
arch/score/include/asm/barrier.h | 16 +
arch/score/include/asm/bitops.h | 1 -
arch/score/include/asm/bug.h | 11 +
arch/score/include/asm/cmpxchg.h | 49 ++
arch/score/include/asm/exec.h | 6 +
arch/score/include/asm/switch_to.h | 13 +
arch/score/include/asm/system.h | 90 ---
arch/sh/boards/mach-microdev/irq.c | 1 -
arch/sh/include/asm/atomic-irq.h | 2 +
arch/sh/include/asm/atomic.h | 2 +-
arch/sh/include/asm/auxvec.h | 2 +
arch/sh/include/asm/barrier.h | 54 ++
arch/sh/include/asm/bitops.h | 1 -
arch/sh/include/asm/bl_bit.h | 10 +
arch/sh/include/asm/bl_bit_32.h | 33 ++
arch/sh/include/asm/bl_bit_64.h | 40 ++
arch/sh/include/asm/bug.h | 5 +
arch/sh/include/asm/cache_insns.h | 11 +
arch/sh/include/asm/cache_insns_32.h | 21 +
arch/sh/include/asm/cache_insns_64.h | 23 +
arch/sh/include/asm/cmpxchg-irq.h | 2 +
arch/sh/include/asm/cmpxchg.h | 70 +++
arch/sh/include/asm/exec.h | 10 +
arch/sh/include/asm/futex-irq.h | 1 -
arch/sh/include/asm/io.h | 1 -
arch/sh/include/asm/processor.h | 15 +
arch/sh/include/asm/ptrace.h | 1 -
arch/sh/include/asm/setup.h | 1 +
arch/sh/include/asm/switch_to.h | 19 +
.../sh/include/asm/{system_32.h => switch_to_32.h} | 108 +----
arch/sh/include/asm/switch_to_64.h | 35 ++
arch/sh/include/asm/system.h | 184 ------
arch/sh/include/asm/system_64.h | 79 ---
arch/sh/include/asm/traps.h | 21 +
arch/sh/include/asm/traps_32.h | 68 +++
arch/sh/include/asm/traps_64.h | 24 +
arch/sh/include/asm/uaccess.h | 14 +
arch/sh/kernel/cpu/init.c | 2 +-
arch/sh/kernel/cpu/irq/imask.c | 1 -
arch/sh/kernel/cpu/sh2a/opcode_helper.c | 1 -
arch/sh/kernel/cpu/sh4/fpu.c | 1 -
arch/sh/kernel/hw_breakpoint.c | 1 +
arch/sh/kernel/idle.c | 2 +-
arch/sh/kernel/io_trapped.c | 1 -
arch/sh/kernel/process_32.c | 1 -
arch/sh/kernel/process_64.c | 1 +
arch/sh/kernel/ptrace_32.c | 1 -
arch/sh/kernel/ptrace_64.c | 2 +-
arch/sh/kernel/reboot.c | 2 +-
arch/sh/kernel/signal_32.c | 1 -
arch/sh/kernel/smp.c | 1 -
arch/sh/kernel/traps.c | 2 +-
arch/sh/kernel/traps_32.c | 3 +-
arch/sh/kernel/traps_64.c | 1 -
arch/sh/math-emu/math.c | 1 -
arch/sh/mm/fault_32.c | 2 +-
arch/sh/mm/fault_64.c | 1 -
arch/sh/mm/flush-sh4.c | 1 +
arch/sh/mm/pmb.c | 1 -
arch/sh/mm/tlb-pteaex.c | 1 -
arch/sh/mm/tlb-sh3.c | 1 -
arch/sh/mm/tlb-sh4.c | 1 -
arch/sh/mm/tlbflush_64.c | 1 -
arch/sparc/include/asm/atomic_32.h | 2 +-
arch/sparc/include/asm/atomic_64.h | 3 +-
arch/sparc/include/asm/auxio_32.h | 1 -
arch/sparc/include/asm/barrier.h | 8 +
arch/sparc/include/asm/barrier_32.h | 15 +
arch/sparc/include/asm/barrier_64.h | 56 ++
arch/sparc/include/asm/bug.h | 3 +
arch/sparc/include/asm/cacheflush_32.h | 9 +
arch/sparc/include/asm/cacheflush_64.h | 10 +
arch/sparc/include/asm/cmpxchg.h | 8 +
arch/sparc/include/asm/cmpxchg_32.h | 112 ++++
arch/sparc/include/asm/cmpxchg_64.h | 145 +++++
arch/sparc/include/asm/cpu_type.h | 34 ++
arch/sparc/include/asm/exec.h | 6 +
arch/sparc/include/asm/floppy_32.h | 1 -
arch/sparc/include/asm/futex_64.h | 1 -
arch/sparc/include/asm/io_32.h | 1 -
arch/sparc/include/asm/io_64.h | 1 -
arch/sparc/include/asm/irqflags_32.h | 1 +
arch/sparc/include/asm/mmu_context_64.h | 1 -
arch/sparc/include/asm/ns87303.h | 1 -
arch/sparc/include/asm/perfctr.h | 23 +
arch/sparc/include/asm/pgtable_32.h | 2 +-
arch/sparc/include/asm/pgtable_64.h | 1 -
arch/sparc/include/asm/processor.h | 3 +
arch/sparc/include/asm/processor_64.h | 3 +
arch/sparc/include/asm/ptrace.h | 5 +-
arch/sparc/include/asm/setup.h | 16 +
arch/sparc/include/asm/switch_to.h | 8 +
arch/sparc/include/asm/switch_to_32.h | 106 ++++
arch/sparc/include/asm/switch_to_64.h | 72 +++
arch/sparc/include/asm/system.h | 8 -
arch/sparc/include/asm/system_32.h | 284 ----------
arch/sparc/include/asm/system_64.h | 331 -----------
arch/sparc/include/asm/timer_32.h | 3 +-
arch/sparc/include/asm/uaccess_64.h | 1 -
arch/sparc/kernel/auxio_32.c | 1 +
arch/sparc/kernel/devices.c | 2 +-
arch/sparc/kernel/irq.h | 1 +
arch/sparc/kernel/irq_64.c | 1 -
arch/sparc/kernel/kgdb_32.c | 1 +
arch/sparc/kernel/module.c | 1 +
arch/sparc/kernel/muldiv.c | 1 -
arch/sparc/kernel/nmi.c | 1 +
arch/sparc/kernel/pcr.c | 1 +
arch/sparc/kernel/perf_event.c | 2 +
arch/sparc/kernel/process_32.c | 2 +-
arch/sparc/kernel/process_64.c | 1 -
arch/sparc/kernel/ptrace_32.c | 2 +-
arch/sparc/kernel/ptrace_64.c | 1 -
arch/sparc/kernel/reboot.c | 2 +-
arch/sparc/kernel/setup_32.c | 2 +-
arch/sparc/kernel/setup_64.c | 2 +-
arch/sparc/kernel/signal32.c | 1 +
arch/sparc/kernel/signal_32.c | 1 +
arch/sparc/kernel/signal_64.c | 2 +
arch/sparc/kernel/sigutil_32.c | 1 +
arch/sparc/kernel/sigutil_64.c | 1 +
arch/sparc/kernel/sparc_ksyms_64.c | 2 +-
arch/sparc/kernel/time_32.c | 1 -
arch/sparc/kernel/traps_32.c | 1 -
arch/sparc/kernel/traps_64.c | 2 +-
arch/sparc/kernel/unaligned_32.c | 1 -
arch/sparc/kernel/unaligned_64.c | 2 +-
arch/sparc/kernel/visemul.c | 2 +-
arch/sparc/math-emu/math_64.c | 1 +
arch/sparc/mm/btfixup.c | 1 -
arch/sparc/mm/fault_32.c | 1 -
arch/sparc/mm/init_32.c | 1 -
arch/sparc/mm/init_64.c | 1 -
arch/sparc/mm/init_64.h | 2 -
arch/sparc/mm/loadmmu.c | 1 -
arch/sparc/mm/tsb.c | 1 -
arch/sparc/prom/console_32.c | 1 -
arch/sparc/prom/console_64.c | 1 -
arch/sparc/prom/misc_32.c | 1 -
arch/sparc/prom/misc_64.c | 1 -
arch/sparc/prom/p1275.c | 1 -
arch/sparc/prom/ranges.c | 1 -
arch/tile/include/asm/atomic.h | 2 +-
arch/tile/include/asm/atomic_32.h | 1 +
arch/tile/include/asm/atomic_64.h | 1 +
arch/tile/include/asm/{system.h => barrier.h} | 121 +----
arch/tile/include/asm/bitops_32.h | 1 -
arch/tile/include/asm/bitops_64.h | 1 -
arch/tile/include/asm/cacheflush.h | 11 +-
arch/tile/include/asm/exec.h | 20 +
arch/tile/include/asm/pgtable.h | 1 -
arch/tile/include/asm/setup.h | 22 +
arch/tile/include/asm/spinlock_32.h | 1 -
arch/tile/include/asm/switch_to.h | 76 +++
arch/tile/include/asm/timex.h | 2 +
arch/tile/include/asm/unaligned.h | 15 +
arch/tile/kernel/early_printk.c | 1 +
arch/tile/kernel/proc.c | 1 +
arch/tile/kernel/process.c | 3 +-
arch/tile/kernel/regs_32.S | 2 +-
arch/tile/kernel/regs_64.S | 2 +-
arch/tile/kernel/single_step.c | 1 +
arch/tile/kernel/traps.c | 1 +
arch/tile/mm/elf.c | 1 +
arch/tile/mm/fault.c | 1 -
arch/tile/mm/init.c | 1 -
arch/tile/mm/pgtable.c | 1 -
arch/um/include/asm/fixmap.h | 1 -
arch/unicore32/include/asm/Kbuild | 1 -
arch/unicore32/include/asm/barrier.h | 28 +
arch/unicore32/include/asm/bug.h | 27 +
arch/unicore32/include/asm/cmpxchg.h | 61 ++
arch/unicore32/include/asm/exec.h | 15 +
arch/unicore32/include/asm/hwdef-copro.h | 48 ++
arch/unicore32/include/asm/io.h | 1 -
arch/unicore32/include/asm/switch_to.h | 30 +
arch/unicore32/include/asm/system.h | 161 ------
arch/unicore32/include/asm/uaccess.h | 1 -
arch/unicore32/kernel/dma.c | 1 -
arch/unicore32/kernel/head.S | 2 +-
arch/unicore32/kernel/hibernate.c | 1 -
arch/unicore32/kernel/irq.c | 1 -
arch/unicore32/kernel/ksyms.c | 1 -
arch/unicore32/kernel/process.c | 1 -
arch/unicore32/kernel/setup.h | 3 +
arch/unicore32/kernel/traps.c | 1 -
arch/unicore32/mm/alignment.c | 2 +
arch/unicore32/mm/fault.c | 1 -
arch/unicore32/mm/flush.c | 1 -
arch/unicore32/mm/mm.h | 5 +
arch/x86/ia32/ia32_aout.c | 1 -
arch/x86/include/asm/apic.h | 1 -
arch/x86/include/asm/auxvec.h | 7 +
arch/x86/include/asm/barrier.h | 116 ++++
arch/x86/include/asm/bug.h | 4 +
arch/x86/include/asm/cacheflush.h | 1 +
arch/x86/include/asm/elf.h | 1 -
arch/x86/include/asm/exec.h | 1 +
arch/x86/include/asm/futex.h | 1 -
arch/x86/include/asm/i387.h | 1 -
arch/x86/include/asm/local.h | 1 -
arch/x86/include/asm/mc146818rtc.h | 1 -
arch/x86/include/asm/page_types.h | 1 -
arch/x86/include/asm/processor.h | 31 +-
arch/x86/include/asm/segment.h | 58 ++-
arch/x86/include/asm/special_insns.h | 199 +++++++
arch/x86/include/asm/stackprotector.h | 1 -
arch/x86/include/asm/switch_to.h | 129 +++++
arch/x86/include/asm/system.h | 523 -----------------
arch/x86/include/asm/tlbflush.h | 2 +-
arch/x86/include/asm/virtext.h | 1 -
arch/x86/kernel/acpi/cstate.c | 1 +
arch/x86/kernel/apm_32.c | 1 -
arch/x86/kernel/cpu/mcheck/p5.c | 1 -
arch/x86/kernel/cpu/mcheck/therm_throt.c | 1 -
arch/x86/kernel/cpu/mcheck/winchip.c | 1 -
arch/x86/kernel/cpu/mtrr/generic.c | 1 -
arch/x86/kernel/cpuid.c | 1 -
arch/x86/kernel/i8259.c | 1 -
arch/x86/kernel/irqinit.c | 1 -
arch/x86/kernel/kgdb.c | 1 -
arch/x86/kernel/ldt.c | 1 -
arch/x86/kernel/machine_kexec_32.c | 1 -
arch/x86/kernel/mca_32.c | 1 -
arch/x86/kernel/module.c | 1 -
arch/x86/kernel/msr.c | 1 -
arch/x86/kernel/paravirt.c | 1 +
arch/x86/kernel/pci-calgary_64.c | 1 -
arch/x86/kernel/process.c | 1 -
arch/x86/kernel/process_32.c | 2 +-
arch/x86/kernel/process_64.c | 2 +-
arch/x86/kernel/ptrace.c | 1 -
arch/x86/kernel/setup.c | 1 -
arch/x86/kernel/tce_64.c | 1 +
arch/x86/kernel/tls.c | 1 -
arch/x86/kernel/traps.c | 1 -
arch/x86/mm/init.c | 1 -
arch/x86/mm/init_32.c | 1 -
arch/x86/mm/init_64.c | 1 -
arch/x86/mm/pgtable_32.c | 1 -
arch/x86/power/hibernate_32.c | 1 -
arch/xtensa/include/asm/atomic.h | 2 +-
arch/xtensa/include/asm/barrier.h | 29 +
arch/xtensa/include/asm/bitops.h | 1 -
arch/xtensa/include/asm/{system.h => cmpxchg.h} | 67 +--
arch/xtensa/include/asm/exec.h | 14 +
arch/xtensa/include/asm/setup.h | 2 +
arch/xtensa/include/asm/switch_to.h | 22 +
arch/xtensa/include/asm/uaccess.h | 2 +
arch/xtensa/kernel/process.c | 1 -
arch/xtensa/kernel/ptrace.c | 1 -
arch/xtensa/kernel/setup.c | 1 -
arch/xtensa/kernel/traps.c | 19 +
arch/xtensa/mm/fault.c | 1 -
arch/xtensa/mm/tlb.c | 1 -
drivers/acpi/processor_driver.c | 1 -
drivers/atm/eni.c | 1 -
drivers/atm/firestream.c | 1 -
drivers/atm/horizon.c | 1 -
drivers/atm/idt77105.c | 1 -
drivers/atm/iphase.c | 1 -
drivers/atm/suni.c | 1 -
drivers/atm/zatm.c | 1 -
drivers/block/floppy.c | 1 -
drivers/block/hd.c | 1 -
drivers/block/nbd.c | 1 -
drivers/block/xd.c | 1 -
drivers/bluetooth/bt3c_cs.c | 1 -
drivers/bluetooth/btuart_cs.c | 1 -
drivers/bluetooth/dtl1_cs.c | 1 -
drivers/char/apm-emulation.c | 1 -
drivers/char/ds1302.c | 1 -
drivers/char/efirtc.c | 1 -
drivers/char/genrtc.c | 1 -
drivers/char/hpet.c | 1 -
drivers/char/ipmi/ipmi_devintf.c | 1 -
drivers/char/ipmi/ipmi_msghandler.c | 1 -
drivers/char/ipmi/ipmi_si_intf.c | 1 -
drivers/char/lp.c | 1 -
drivers/char/mbcs.c | 1 -
drivers/char/mspec.c | 1 -
drivers/char/mwave/3780i.c | 1 -
drivers/char/nvram.c | 1 -
drivers/char/nwflash.c | 1 -
drivers/char/pcmcia/synclink_cs.c | 1 -
drivers/char/rtc.c | 1 -
drivers/char/sonypi.c | 1 -
drivers/char/xilinx_hwicap/xilinx_hwicap.c | 1 -
drivers/cpufreq/omap-cpufreq.c | 1 -
drivers/cpufreq/powernow-k7.c | 1 -
drivers/firewire/core-cdev.c | 1 -
drivers/firewire/core-device.c | 1 -
drivers/firewire/core-topology.c | 1 -
drivers/firewire/ohci.c | 1 -
drivers/firewire/sbp2.c | 1 -
drivers/i2c/busses/i2c-acorn.c | 1 -
drivers/ide/ide-cs.c | 1 -
drivers/ide/qd65xx.c | 1 -
drivers/infiniband/hw/ehca/ehca_reqs.c | 1 -
drivers/input/joydev.c | 1 -
drivers/input/joystick/amijoy.c | 1 -
drivers/input/mouse/amimouse.c | 1 -
drivers/input/mouse/atarimouse.c | 1 -
drivers/input/serio/hp_sdc.c | 1 -
drivers/input/serio/maceps2.c | 1 -
drivers/input/serio/rpckbd.c | 1 -
drivers/input/serio/sa1111ps2.c | 1 -
drivers/isdn/hardware/avm/avm_cs.c | 1 -
drivers/isdn/hisax/avma1_cs.c | 1 -
drivers/isdn/hisax/elsa_cs.c | 1 -
drivers/isdn/hisax/sedlbauer_cs.c | 1 -
drivers/isdn/hisax/teles_cs.c | 1 -
drivers/isdn/i4l/isdn_bsdcomp.c | 1 -
drivers/isdn/pcbit/layer2.c | 1 -
drivers/macintosh/macio-adb.c | 1 -
drivers/macintosh/therm_adt746x.c | 1 -
drivers/macintosh/therm_pm72.c | 1 -
drivers/macintosh/therm_windtunnel.c | 1 -
drivers/macintosh/via-cuda.c | 1 -
drivers/macintosh/via-macii.c | 1 -
drivers/macintosh/via-pmu.c | 1 -
drivers/macintosh/via-pmu68k.c | 1 -
drivers/macintosh/windfarm_lm75_sensor.c | 1 -
drivers/macintosh/windfarm_pm121.c | 1 -
drivers/macintosh/windfarm_pm81.c | 1 -
drivers/macintosh/windfarm_pm91.c | 1 -
drivers/macintosh/windfarm_smu_controls.c | 1 -
drivers/macintosh/windfarm_smu_sensors.c | 1 -
drivers/media/dvb/dvb-core/dmxdev.c | 1 -
drivers/media/dvb/firewire/firedtv-fw.c | 1 -
drivers/media/dvb/ttpci/av7110.c | 1 -
drivers/media/media-devnode.c | 1 -
drivers/media/video/ivtv/ivtv-driver.h | 1 -
drivers/media/video/v4l2-common.c | 1 -
drivers/media/video/v4l2-dev.c | 1 -
drivers/message/i2o/i2o_scsi.c | 1 -
drivers/mfd/mcp-core.c | 1 -
drivers/mfd/mcp-sa11x0.c | 1 -
drivers/misc/sgi-gru/gru_instructions.h | 1 +
drivers/misc/sgi-xp/xp.h | 1 -
drivers/mmc/card/block.c | 1 -
drivers/mtd/devices/pmc551.c | 1 -
drivers/mtd/devices/slram.c | 1 -
drivers/mtd/maps/pcmciamtd.c | 1 -
drivers/mtd/nand/bcm_umi_nand.c | 1 -
drivers/net/appletalk/cops.c | 1 -
drivers/net/appletalk/ltpc.c | 1 -
drivers/net/arcnet/com20020_cs.c | 1 -
drivers/net/bonding/bond_main.c | 1 -
drivers/net/can/slcan.c | 1 -
drivers/net/cris/eth_v10.c | 1 -
drivers/net/ethernet/3com/3c574_cs.c | 1 -
drivers/net/ethernet/3com/3c589_cs.c | 1 -
drivers/net/ethernet/8390/3c503.c | 1 -
drivers/net/ethernet/8390/ac3200.c | 1 -
drivers/net/ethernet/8390/apne.c | 1 -
drivers/net/ethernet/8390/ax88796.c | 1 -
drivers/net/ethernet/8390/axnet_cs.c | 1 -
drivers/net/ethernet/8390/e2100.c | 1 -
drivers/net/ethernet/8390/es3210.c | 1 -
drivers/net/ethernet/8390/etherh.c | 2 +-
drivers/net/ethernet/8390/hp-plus.c | 1 -
drivers/net/ethernet/8390/hp.c | 1 -
drivers/net/ethernet/8390/lib8390.c | 1 -
drivers/net/ethernet/8390/lne390.c | 1 -
drivers/net/ethernet/8390/mac8390.c | 1 -
drivers/net/ethernet/8390/ne-h8300.c | 1 -
drivers/net/ethernet/8390/ne.c | 1 -
drivers/net/ethernet/8390/ne2.c | 1 -
drivers/net/ethernet/8390/ne2k-pci.c | 1 -
drivers/net/ethernet/8390/ne3210.c | 1 -
drivers/net/ethernet/8390/pcnet_cs.c | 1 -
drivers/net/ethernet/8390/smc-mca.c | 1 -
drivers/net/ethernet/8390/smc-ultra.c | 1 -
drivers/net/ethernet/8390/smc-ultra32.c | 1 -
drivers/net/ethernet/8390/stnic.c | 1 -
drivers/net/ethernet/8390/wd.c | 1 -
drivers/net/ethernet/8390/zorro8390.c | 1 -
drivers/net/ethernet/alteon/acenic.c | 1 -
drivers/net/ethernet/amd/7990.c | 1 -
drivers/net/ethernet/amd/am79c961a.c | 1 -
drivers/net/ethernet/amd/amd8111e.c | 1 -
drivers/net/ethernet/amd/declance.c | 1 -
drivers/net/ethernet/amd/hplance.c | 1 -
drivers/net/ethernet/amd/mvme147.c | 1 -
drivers/net/ethernet/amd/nmclan_cs.c | 1 -
drivers/net/ethernet/amd/sunlance.c | 1 -
drivers/net/ethernet/broadcom/tg3.c | 1 -
drivers/net/ethernet/cirrus/cs89x0.c | 1 -
drivers/net/ethernet/cirrus/mac89x0.c | 1 -
drivers/net/ethernet/dlink/de600.c | 1 -
drivers/net/ethernet/dlink/de620.c | 1 -
drivers/net/ethernet/fujitsu/at1700.c | 1 -
drivers/net/ethernet/fujitsu/eth16i.c | 1 -
drivers/net/ethernet/fujitsu/fmvj18x_cs.c | 1 -
drivers/net/ethernet/i825xx/3c507.c | 1 -
drivers/net/ethernet/i825xx/3c527.c | 1 -
drivers/net/ethernet/i825xx/eepro.c | 1 -
drivers/net/ethernet/i825xx/eexpress.c | 1 -
drivers/net/ethernet/i825xx/ether1.c | 1 -
drivers/net/ethernet/i825xx/znet.c | 1 -
drivers/net/ethernet/korina.c | 1 -
drivers/net/ethernet/marvell/mv643xx_eth.c | 1 -
drivers/net/ethernet/marvell/pxa168_eth.c | 1 -
drivers/net/ethernet/natsemi/jazzsonic.c | 1 -
drivers/net/ethernet/natsemi/macsonic.c | 1 -
drivers/net/ethernet/natsemi/ns83820.c | 1 -
drivers/net/ethernet/neterion/s2io.c | 1 -
drivers/net/ethernet/nvidia/forcedeth.c | 1 -
drivers/net/ethernet/realtek/atp.c | 1 -
drivers/net/ethernet/realtek/r8169.c | 1 -
drivers/net/ethernet/seeq/ether3.c | 1 -
drivers/net/ethernet/seeq/seeq8005.c | 1 -
drivers/net/ethernet/smsc/smc91c92_cs.c | 1 -
drivers/net/ethernet/sun/cassini.c | 1 -
drivers/net/ethernet/sun/sunbmac.c | 1 -
drivers/net/ethernet/sun/sungem.c | 1 -
drivers/net/ethernet/sun/sunhme.c | 1 -
drivers/net/ethernet/sun/sunqe.c | 1 -
drivers/net/ethernet/tundra/tsi108_eth.c | 1 -
drivers/net/ethernet/xircom/xirc2ps_cs.c | 1 -
drivers/net/hamradio/6pack.c | 1 -
drivers/net/hamradio/baycom_par.c | 1 -
drivers/net/hamradio/bpqether.c | 1 -
drivers/net/hamradio/mkiss.c | 1 -
drivers/net/hamradio/scc.c | 1 -
drivers/net/hamradio/yam.c | 1 -
drivers/net/hippi/rrunner.c | 1 -
drivers/net/irda/donauboe.c | 1 -
drivers/net/loopback.c | 1 -
drivers/net/plip/plip.c | 1 -
drivers/net/slip/slhc.c | 1 -
drivers/net/slip/slip.c | 1 -
drivers/net/tokenring/3c359.c | 1 -
drivers/net/tokenring/abyss.c | 1 -
drivers/net/tokenring/ibmtr_cs.c | 1 -
drivers/net/tokenring/lanstreamer.c | 1 -
drivers/net/tokenring/madgemc.c | 1 -
drivers/net/tokenring/olympic.c | 1 -
drivers/net/tokenring/proteon.c | 1 -
drivers/net/tokenring/skisa.c | 1 -
drivers/net/tokenring/smctr.c | 1 -
drivers/net/tokenring/tms380tr.c | 1 -
drivers/net/tokenring/tmspci.c | 1 -
drivers/net/tun.c | 1 -
drivers/net/wan/dlci.c | 1 -
drivers/net/wan/dscc4.c | 1 -
drivers/net/wan/hd64570.c | 1 -
drivers/net/wan/hd64572.c | 1 -
drivers/net/wan/lapbether.c | 1 -
drivers/net/wan/sdla.c | 1 -
drivers/net/wan/x25_asy.c | 1 -
drivers/net/wireless/airo.c | 1 -
drivers/net/wireless/airo_cs.c | 1 -
drivers/net/wireless/atmel.c | 1 -
drivers/net/wireless/atmel_cs.c | 1 -
drivers/net/wireless/prism54/islpci_mgt.c | 1 -
drivers/net/wireless/ray_cs.c | 1 -
drivers/net/wireless/wl3501_cs.c | 1 -
drivers/nubus/nubus.c | 1 -
drivers/parisc/dino.c | 1 -
drivers/parisc/iosapic.c | 1 -
drivers/parisc/lba_pci.c | 1 -
drivers/pcmcia/cs.c | 1 -
drivers/pcmcia/i82092.c | 1 -
drivers/pcmcia/i82365.c | 1 -
drivers/pcmcia/m32r_cfc.c | 1 -
drivers/pcmcia/m32r_pcc.c | 1 -
drivers/pcmcia/m8xx_pcmcia.c | 1 -
drivers/pcmcia/pd6729.c | 1 -
drivers/pcmcia/pxa2xx_base.c | 1 -
drivers/pcmcia/sa11xx_base.c | 1 -
drivers/pcmcia/soc_common.c | 1 -
drivers/pcmcia/socket_sysfs.c | 1 -
drivers/pcmcia/tcic.c | 1 -
drivers/pcmcia/xxs1500_ss.c | 1 -
drivers/pnp/pnpbios/bioscalls.c | 1 -
drivers/pnp/pnpbios/core.c | 1 -
drivers/s390/char/sclp_cmd.c | 1 +
drivers/s390/cio/crw.c | 1 +
drivers/s390/crypto/ap_bus.c | 2 +-
drivers/sbus/char/flash.c | 1 -
drivers/sbus/char/openprom.c | 1 -
drivers/sbus/char/uctrl.c | 1 -
drivers/scsi/53c700.c | 1 -
drivers/scsi/BusLogic.c | 1 -
drivers/scsi/advansys.c | 1 -
drivers/scsi/aha152x.c | 1 -
drivers/scsi/aha1542.c | 1 -
drivers/scsi/aha1740.c | 1 -
drivers/scsi/arcmsr/arcmsr_hba.c | 1 -
drivers/scsi/arm/acornscsi.c | 1 -
drivers/scsi/arm/cumana_1.c | 1 -
drivers/scsi/arm/oak.c | 1 -
drivers/scsi/atp870u.c | 1 -
drivers/scsi/dtc.c | 1 -
drivers/scsi/fd_mcs.c | 1 -
drivers/scsi/fdomain.c | 1 -
drivers/scsi/g_NCR5380.c | 1 -
drivers/scsi/gdth.c | 1 -
drivers/scsi/ibmmca.c | 1 -
drivers/scsi/in2000.c | 1 -
drivers/scsi/mac53c94.c | 1 -
drivers/scsi/mac_scsi.c | 1 -
drivers/scsi/mesh.c | 1 -
drivers/scsi/ncr53c8xx.c | 1 -
drivers/scsi/nsp32.c | 1 -
drivers/scsi/osst.c | 1 -
drivers/scsi/pas16.c | 1 -
drivers/scsi/qla1280.c | 1 -
drivers/scsi/qlogicpti.c | 1 -
drivers/scsi/st.c | 1 -
drivers/scsi/sun3_scsi.c | 1 -
drivers/scsi/sun3_scsi_vme.c | 1 -
drivers/scsi/sym53c416.c | 1 -
drivers/scsi/t128.c | 1 -
drivers/scsi/u14-34f.c | 1 -
drivers/scsi/ultrastor.c | 1 -
drivers/scsi/wd7000.c | 1 -
drivers/spi/spi-omap-uwire.c | 1 -
drivers/staging/comedi/drivers.c | 1 -
drivers/staging/comedi/drivers/cb_pcidas64.c | 1 -
drivers/staging/comedi/drivers/mite.c | 1 -
drivers/staging/crystalhd/bc_dts_defs.h | 2 +
drivers/staging/crystalhd/crystalhd.h | 1 -
drivers/staging/crystalhd/crystalhd_lnx.h | 1 -
drivers/staging/crystalhd/crystalhd_misc.h | 1 +
drivers/staging/et131x/et131x.c | 1 -
drivers/staging/ft1000/ft1000-pcmcia/ft1000_hw.c | 1 -
drivers/staging/media/go7007/go7007-driver.c | 1 -
drivers/staging/media/go7007/go7007-i2c.c | 1 -
drivers/staging/media/go7007/go7007-v4l2.c | 1 -
drivers/staging/media/go7007/snd-go7007.c | 1 -
drivers/staging/media/lirc/lirc_serial.c | 1 -
drivers/staging/media/lirc/lirc_sir.c | 1 -
drivers/staging/panel/panel.c | 1 -
drivers/staging/sbe-2t3e3/io.c | 1 -
drivers/staging/telephony/phonedev.c | 1 -
.../tidspbridge/include/dspbridge/host_os.h | 1 -
drivers/staging/wlags49_h2/wl_cs.c | 1 -
drivers/staging/wlags49_h2/wl_main.c | 3 +-
drivers/staging/wlags49_h2/wl_netdev.c | 3 +-
drivers/staging/wlags49_h2/wl_pci.c | 1 -
drivers/staging/wlags49_h2/wl_util.c | 3 +-
drivers/tty/amiserial.c | 1 -
drivers/tty/isicom.c | 1 -
drivers/tty/moxa.c | 1 -
drivers/tty/mxser.c | 1 -
drivers/tty/n_hdlc.c | 1 -
drivers/tty/n_tty.c | 1 -
drivers/tty/pty.c | 1 -
drivers/tty/serial/21285.c | 1 +
drivers/tty/serial/68328serial.c | 1 -
drivers/tty/serial/8250/serial_cs.c | 1 -
drivers/tty/serial/crisv10.c | 2 +-
drivers/tty/serial/dz.c | 1 -
drivers/tty/serial/icom.c | 1 -
drivers/tty/serial/msm_serial_hs.c | 1 -
drivers/tty/serial/sunhv.c | 1 +
drivers/tty/serial/sunsab.c | 1 +
drivers/tty/serial/sunsu.c | 1 +
drivers/tty/serial/sunzilog.c | 1 +
drivers/tty/serial/zs.c | 1 -
drivers/tty/synclink.c | 1 -
drivers/tty/synclink_gt.c | 1 -
drivers/tty/synclinkmp.c | 1 -
drivers/tty/tty_io.c | 1 -
drivers/tty/tty_ioctl.c | 1 -
drivers/tty/vt/vt.c | 1 -
drivers/usb/gadget/amd5536udc.c | 1 -
drivers/usb/gadget/at91_udc.c | 1 -
drivers/usb/gadget/dummy_hcd.c | 1 -
drivers/usb/gadget/fsl_udc_core.c | 1 -
drivers/usb/gadget/goku_udc.c | 1 -
drivers/usb/gadget/langwell_udc.c | 1 -
drivers/usb/gadget/mv_udc_core.c | 1 -
drivers/usb/gadget/net2272.c | 1 -
drivers/usb/gadget/net2280.c | 1 -
drivers/usb/gadget/omap_udc.c | 1 -
drivers/usb/gadget/printer.c | 1 -
drivers/usb/gadget/pxa25x_udc.c | 1 -
drivers/usb/gadget/rndis.c | 1 -
drivers/usb/gadget/s3c2410_udc.c | 1 -
drivers/usb/host/ehci-hcd.c | 1 -
drivers/usb/host/isp116x-hcd.c | 1 -
drivers/usb/host/isp1362-hcd.c | 1 -
drivers/usb/host/ohci-hcd.c | 1 -
drivers/usb/host/oxu210hp-hcd.c | 1 -
drivers/usb/host/sl811-hcd.c | 1 -
drivers/usb/host/u132-hcd.c | 1 -
drivers/usb/host/uhci-hcd.c | 1 -
drivers/video/amifb.c | 1 -
drivers/video/bt431.h | 1 -
drivers/video/bt455.h | 1 -
drivers/video/console/fbcon.c | 1 -
drivers/video/console/newport_con.c | 1 -
drivers/video/cyber2000fb.c | 1 -
drivers/video/dnfb.c | 1 -
drivers/video/neofb.c | 1 -
drivers/video/pmag-ba-fb.c | 1 -
drivers/video/pmagb-b-fb.c | 1 -
drivers/video/q40fb.c | 1 -
drivers/video/savage/savagefb_driver.c | 1 -
drivers/virtio/config.c | 1 -
drivers/watchdog/advantechwdt.c | 1 -
drivers/watchdog/alim7101_wdt.c | 1 -
drivers/watchdog/booke_wdt.c | 1 -
drivers/watchdog/eurotechwdt.c | 1 -
drivers/watchdog/ib700wdt.c | 1 -
drivers/watchdog/it87_wdt.c | 1 -
drivers/watchdog/machzwd.c | 1 -
drivers/watchdog/pc87413_wdt.c | 1 -
drivers/watchdog/sbc60xxwdt.c | 1 -
drivers/watchdog/sbc7240_wdt.c | 1 -
drivers/watchdog/sbc8360.c | 1 -
drivers/watchdog/sbc_fitpc2_wdt.c | 1 -
drivers/watchdog/sc520_wdt.c | 1 -
drivers/watchdog/smsc37b787_wdt.c | 1 -
drivers/watchdog/w83627hf_wdt.c | 1 -
drivers/watchdog/w83697hf_wdt.c | 1 -
drivers/watchdog/w83697ug_wdt.c | 1 -
drivers/watchdog/w83877f_wdt.c | 1 -
drivers/watchdog/w83977f_wdt.c | 1 -
drivers/watchdog/wdt.c | 1 -
drivers/watchdog/wdt285.c | 1 +
drivers/watchdog/wdt977.c | 1 -
drivers/watchdog/wdt_pci.c | 1 -
fs/binfmt_aout.c | 1 -
fs/binfmt_elf.c | 1 +
fs/binfmt_elf_fdpic.c | 1 +
fs/binfmt_flat.c | 1 -
fs/coda/inode.c | 1 -
fs/coda/psdev.c | 1 -
fs/coda/upcall.c | 1 -
fs/eventpoll.c | 1 -
fs/exec.c | 1 +
fs/jbd2/commit.c | 1 -
fs/jbd2/journal.c | 1 -
fs/ncpfs/file.c | 1 -
fs/ncpfs/inode.c | 1 -
fs/ncpfs/mmap.c | 1 -
fs/nfs/client.c | 1 -
fs/nfs/direct.c | 1 -
fs/nfs/file.c | 1 -
fs/nfs/getroot.c | 1 -
fs/nfs/inode.c | 1 -
fs/nfs/read.c | 1 -
fs/nfs/super.c | 1 -
fs/proc/inode.c | 1 -
fs/reiserfs/journal.c | 1 -
fs/ufs/inode.c | 1 -
fs/ufs/super.c | 1 -
fs/xfs/xfs_buf.h | 1 -
include/acpi/platform/aclinux.h | 1 -
include/asm-generic/atomic.h | 3 +-
include/asm-generic/barrier.h | 50 ++
include/asm-generic/bitops/atomic.h | 2 +-
include/asm-generic/cmpxchg.h | 87 +++-
include/asm-generic/exec.h | 19 +
include/asm-generic/switch_to.h | 30 +
include/asm-generic/system.h | 141 -----
include/linux/cnt32_to_63.h | 1 -
include/linux/debug_locks.h | 1 -
include/linux/efi.h | 1 -
include/linux/ide.h | 1 -
include/linux/interrupt.h | 1 -
include/linux/llist.h | 3 +-
include/linux/lsm_audit.h | 1 -
include/linux/mm.h | 2 +
include/linux/mtd/map.h | 2 +-
include/linux/parport.h | 1 -
include/linux/rwsem.h | 1 -
include/linux/sched.h | 1 -
include/linux/skbuff.h | 1 -
include/linux/spinlock.h | 2 +-
include/linux/stop_machine.h | 1 -
include/linux/tty.h | 1 -
include/linux/wait.h | 1 -
include/xen/xen-ops.h | 1 +
init/main.c | 1 -
kernel/debug/debug_core.c | 1 -
kernel/debug/kdb/kdb_bt.c | 1 -
kernel/dma.c | 1 -
kernel/kexec.c | 1 -
kernel/rwsem.c | 1 -
kernel/sched/core.c | 1 +
kernel/signal.c | 1 +
kernel/sysctl.c | 4 +-
lib/llist.c | 1 -
lib/raid6/altivec.uc | 2 +-
net/802/fc.c | 1 -
net/802/fddi.c | 1 -
net/802/hippi.c | 1 -
net/802/tr.c | 1 -
net/atm/clip.c | 1 -
net/ax25/af_ax25.c | 1 -
net/ax25/ax25_addr.c | 1 -
net/ax25/ax25_dev.c | 1 -
net/ax25/ax25_ds_in.c | 1 -
net/ax25/ax25_ds_subr.c | 1 -
net/ax25/ax25_ds_timer.c | 1 -
net/ax25/ax25_iface.c | 1 -
net/ax25/ax25_in.c | 1 -
net/ax25/ax25_ip.c | 1 -
net/ax25/ax25_out.c | 1 -
net/ax25/ax25_route.c | 1 -
net/ax25/ax25_std_in.c | 1 -
net/ax25/ax25_std_subr.c | 1 -
net/ax25/ax25_std_timer.c | 1 -
net/ax25/ax25_subr.c | 1 -
net/ax25/ax25_timer.c | 1 -
net/ax25/ax25_uid.c | 1 -
net/bluetooth/bnep/sock.c | 1 -
net/bluetooth/cmtp/sock.c | 1 -
net/bluetooth/hci_conn.c | 1 -
net/bluetooth/hci_core.c | 1 -
net/bluetooth/hci_event.c | 1 -
net/bluetooth/hci_sock.c | 1 -
net/bluetooth/l2cap_core.c | 1 -
net/bluetooth/rfcomm/sock.c | 1 -
net/bluetooth/sco.c | 1 -
net/core/datagram.c | 1 -
net/core/dev.c | 1 -
net/core/filter.c | 1 -
net/core/gen_estimator.c | 1 -
net/core/rtnetlink.c | 1 -
net/core/scm.c | 1 -
net/core/skbuff.c | 1 -
net/core/sock.c | 1 -
net/core/utils.c | 1 -
net/decnet/af_decnet.c | 1 -
net/decnet/dn_dev.c | 1 -
net/decnet/dn_nsp_in.c | 1 -
net/decnet/dn_nsp_out.c | 1 -
net/econet/af_econet.c | 1 -
net/ethernet/eth.c | 1 -
net/ipv4/af_inet.c | 1 -
net/ipv4/arp.c | 1 -
net/ipv4/devinet.c | 1 -
net/ipv4/fib_frontend.c | 1 -
net/ipv4/fib_semantics.c | 1 -
net/ipv4/fib_trie.c | 1 -
net/ipv4/icmp.c | 1 -
net/ipv4/igmp.c | 1 -
net/ipv4/ip_input.c | 1 -
net/ipv4/ip_output.c | 1 -
net/ipv4/ipmr.c | 1 -
net/ipv4/ping.c | 1 -
net/ipv4/route.c | 1 -
net/ipv4/udp.c | 1 -
net/ipv6/af_inet6.c | 1 -
net/ipv6/icmp.c | 1 -
net/ipv6/ip6mr.c | 1 -
net/irda/irlan/irlan_client.c | 1 -
net/irda/irlan/irlan_common.c | 1 -
net/irda/irlan/irlan_provider.c | 1 -
net/irda/timer.c | 1 -
net/lapb/lapb_iface.c | 1 -
net/lapb/lapb_in.c | 1 -
net/lapb/lapb_out.c | 1 -
net/lapb/lapb_subr.c | 1 -
net/lapb/lapb_timer.c | 1 -
net/netfilter/ipvs/ip_vs_app.c | 1 -
net/netfilter/ipvs/ip_vs_proto.c | 1 -
net/netfilter/nfnetlink.c | 1 -
net/netrom/af_netrom.c | 1 -
net/netrom/nr_dev.c | 1 -
net/netrom/nr_in.c | 1 -
net/netrom/nr_out.c | 1 -
net/netrom/nr_route.c | 1 -
net/netrom/nr_subr.c | 1 -
net/netrom/nr_timer.c | 1 -
net/openvswitch/datapath.c | 1 -
net/packet/af_packet.c | 1 -
net/rose/af_rose.c | 1 -
net/rose/rose_dev.c | 1 -
net/rose/rose_in.c | 1 -
net/rose/rose_link.c | 1 -
net/rose/rose_out.c | 1 -
net/rose/rose_route.c | 1 -
net/rose/rose_subr.c | 1 -
net/rose/rose_timer.c | 1 -
net/sunrpc/clnt.c | 1 -
security/selinux/include/avc.h | 1 -
security/selinux/include/xfrm.h | 2 +
sound/oss/os.h | 1 -
sound/oss/vidc.c | 1 -
sound/oss/waveartist.c | 1 -
sound/pci/asihpi/hpios.h | 1 -
sound/pci/aw2/aw2-saa7146.c | 1 -
1606 files changed, 6971 insertions(+), 7089 deletions(-)
create mode 100644 arch/alpha/include/asm/exec.h
create mode 100644 arch/alpha/include/asm/mce.h
create mode 100644 arch/alpha/include/asm/special_insns.h
create mode 100644 arch/alpha/include/asm/switch_to.h
delete mode 100644 arch/alpha/include/asm/system.h
create mode 100644 arch/arm/include/asm/barrier.h
create mode 100644 arch/arm/include/asm/cmpxchg.h
create mode 100644 arch/arm/include/asm/compiler.h
create mode 100644 arch/arm/include/asm/cp15.h
create mode 100644 arch/arm/include/asm/exec.h
create mode 100644 arch/arm/include/asm/switch_to.h
create mode 100644 arch/arm/include/asm/system_info.h
create mode 100644 arch/arm/include/asm/system_misc.h
create mode 100644 arch/avr32/include/asm/barrier.h
rename arch/avr32/include/asm/{system.h => cmpxchg.h} (57%)
create mode 100644 arch/avr32/include/asm/exec.h
create mode 100644 arch/avr32/include/asm/special_insns.h
create mode 100644 arch/avr32/include/asm/switch_to.h
delete mode 100644 arch/blackfin/include/asm/system.h
create mode 100644 arch/c6x/include/asm/barrier.h
create mode 100644 arch/c6x/include/asm/bug.h
create mode 100644 arch/c6x/include/asm/cmpxchg.h
create mode 100644 arch/c6x/include/asm/exec.h
create mode 100644 arch/c6x/include/asm/special_insns.h
create mode 100644 arch/c6x/include/asm/switch_to.h
delete mode 100644 arch/c6x/include/asm/system.h
create mode 100644 arch/cris/include/asm/barrier.h
rename arch/cris/include/asm/{system.h => cmpxchg.h} (52%)
create mode 100644 arch/cris/include/asm/exec.h
create mode 100644 arch/cris/include/asm/switch_to.h
create mode 100644 arch/frv/include/asm/barrier.h
rename arch/frv/include/asm/{system.h => cmpxchg.h} (66%)
create mode 100644 arch/frv/include/asm/exec.h
create mode 100644 arch/frv/include/asm/switch_to.h
create mode 100644 arch/h8300/include/asm/barrier.h
create mode 100644 arch/h8300/include/asm/cmpxchg.h
create mode 100644 arch/h8300/include/asm/exec.h
create mode 100644 arch/h8300/include/asm/switch_to.h
delete mode 100644 arch/h8300/include/asm/system.h
create mode 100644 arch/hexagon/include/asm/barrier.h
rename arch/hexagon/include/asm/{system.h => cmpxchg.h} (68%)
create mode 100644 arch/hexagon/include/asm/exec.h
create mode 100644 arch/hexagon/include/asm/switch_to.h
create mode 100644 arch/ia64/include/asm/barrier.h
create mode 100644 arch/ia64/include/asm/exec.h
create mode 100644 arch/ia64/include/asm/switch_to.h
delete mode 100644 arch/ia64/include/asm/system.h
create mode 100644 arch/m32r/include/asm/barrier.h
create mode 100644 arch/m32r/include/asm/cmpxchg.h
create mode 100644 arch/m32r/include/asm/dcache_clear.h
create mode 100644 arch/m32r/include/asm/exec.h
create mode 100644 arch/m32r/include/asm/switch_to.h
delete mode 100644 arch/m32r/include/asm/system.h
create mode 100644 arch/m68k/include/asm/barrier.h
rename arch/m68k/include/asm/{system.h => cmpxchg.h} (56%)
create mode 100644 arch/m68k/include/asm/exec.h
create mode 100644 arch/m68k/include/asm/switch_to.h
create mode 100644 arch/microblaze/include/asm/barrier.h
create mode 100644 arch/microblaze/include/asm/cmpxchg.h
create mode 100644 arch/microblaze/include/asm/exec.h
create mode 100644 arch/microblaze/include/asm/switch_to.h
delete mode 100644 arch/microblaze/include/asm/system.h
create mode 100644 arch/mips/include/asm/exec.h
create mode 100644 arch/mips/include/asm/switch_to.h
delete mode 100644 arch/mips/include/asm/system.h
create mode 100644 arch/mn10300/include/asm/barrier.h
create mode 100644 arch/mn10300/include/asm/cmpxchg.h
create mode 100644 arch/mn10300/include/asm/exec.h
create mode 100644 arch/mn10300/include/asm/switch_to.h
delete mode 100644 arch/mn10300/include/asm/system.h
delete mode 100644 arch/openrisc/include/asm/system.h
create mode 100644 arch/parisc/include/asm/barrier.h
create mode 100644 arch/parisc/include/asm/exec.h
create mode 100644 arch/parisc/include/asm/ldcw.h
create mode 100644 arch/parisc/include/asm/special_insns.h
create mode 100644 arch/parisc/include/asm/switch_to.h
delete mode 100644 arch/parisc/include/asm/system.h
create mode 100644 arch/powerpc/include/asm/barrier.h
create mode 100644 arch/powerpc/include/asm/cmpxchg.h
create mode 100644 arch/powerpc/include/asm/debug.h
create mode 100644 arch/powerpc/include/asm/exec.h
create mode 100644 arch/powerpc/include/asm/runlatch.h
create mode 100644 arch/powerpc/include/asm/switch_to.h
delete mode 100644 arch/powerpc/include/asm/system.h
create mode 100644 arch/s390/include/asm/barrier.h
create mode 100644 arch/s390/include/asm/ctl_reg.h
create mode 100644 arch/s390/include/asm/exec.h
create mode 100644 arch/s390/include/asm/facility.h
create mode 100644 arch/s390/include/asm/switch_to.h
delete mode 100644 arch/s390/include/asm/system.h
create mode 100644 arch/score/include/asm/barrier.h
create mode 100644 arch/score/include/asm/cmpxchg.h
create mode 100644 arch/score/include/asm/exec.h
create mode 100644 arch/score/include/asm/switch_to.h
delete mode 100644 arch/score/include/asm/system.h
create mode 100644 arch/sh/include/asm/barrier.h
create mode 100644 arch/sh/include/asm/bl_bit.h
create mode 100644 arch/sh/include/asm/bl_bit_32.h
create mode 100644 arch/sh/include/asm/bl_bit_64.h
create mode 100644 arch/sh/include/asm/cache_insns.h
create mode 100644 arch/sh/include/asm/cache_insns_32.h
create mode 100644 arch/sh/include/asm/cache_insns_64.h
create mode 100644 arch/sh/include/asm/cmpxchg.h
create mode 100644 arch/sh/include/asm/exec.h
create mode 100644 arch/sh/include/asm/switch_to.h
rename arch/sh/include/asm/{system_32.h => switch_to_32.h} (58%)
create mode 100644 arch/sh/include/asm/switch_to_64.h
delete mode 100644 arch/sh/include/asm/system.h
delete mode 100644 arch/sh/include/asm/system_64.h
create mode 100644 arch/sh/include/asm/traps.h
create mode 100644 arch/sh/include/asm/traps_32.h
create mode 100644 arch/sh/include/asm/traps_64.h
create mode 100644 arch/sparc/include/asm/barrier.h
create mode 100644 arch/sparc/include/asm/barrier_32.h
create mode 100644 arch/sparc/include/asm/barrier_64.h
create mode 100644 arch/sparc/include/asm/cmpxchg.h
create mode 100644 arch/sparc/include/asm/cmpxchg_32.h
create mode 100644 arch/sparc/include/asm/cmpxchg_64.h
create mode 100644 arch/sparc/include/asm/cpu_type.h
create mode 100644 arch/sparc/include/asm/exec.h
create mode 100644 arch/sparc/include/asm/switch_to.h
create mode 100644 arch/sparc/include/asm/switch_to_32.h
create mode 100644 arch/sparc/include/asm/switch_to_64.h
delete mode 100644 arch/sparc/include/asm/system.h
delete mode 100644 arch/sparc/include/asm/system_32.h
delete mode 100644 arch/sparc/include/asm/system_64.h
rename arch/tile/include/asm/{system.h => barrier.h} (51%)
create mode 100644 arch/tile/include/asm/exec.h
create mode 100644 arch/tile/include/asm/switch_to.h
create mode 100644 arch/unicore32/include/asm/barrier.h
create mode 100644 arch/unicore32/include/asm/bug.h
create mode 100644 arch/unicore32/include/asm/cmpxchg.h
create mode 100644 arch/unicore32/include/asm/exec.h
create mode 100644 arch/unicore32/include/asm/hwdef-copro.h
create mode 100644 arch/unicore32/include/asm/switch_to.h
delete mode 100644 arch/unicore32/include/asm/system.h
create mode 100644 arch/x86/include/asm/barrier.h
create mode 100644 arch/x86/include/asm/exec.h
create mode 100644 arch/x86/include/asm/special_insns.h
create mode 100644 arch/x86/include/asm/switch_to.h
delete mode 100644 arch/x86/include/asm/system.h
create mode 100644 arch/xtensa/include/asm/barrier.h
rename arch/xtensa/include/asm/{system.h => cmpxchg.h} (70%)
create mode 100644 arch/xtensa/include/asm/exec.h
create mode 100644 arch/xtensa/include/asm/switch_to.h
create mode 100644 include/asm-generic/barrier.h
create mode 100644 include/asm-generic/exec.h
create mode 100644 include/asm-generic/switch_to.h
delete mode 100644 include/asm-generic/system.hQuoted 10 lines
Here are a bunch of patches to disintegrate
asm/system.hinto a set of separate bits to relieve the problem of circular inclusion dependencies.The following changes since commit
437538267b672f9320833907f1b5acbb2605f4be:Merge tag 'fbdev-updates-for-3.4' of
git://github.com/schandinat/linux-2.6(2012-03-22 20:43:40 -0700)are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system.gitsplit-asm-system_h
It would have been nice to have this in linux-next for a day or two to sort out the merge issues, hence....
This seems to have broken linus tree when compiling a pseries_defconfig
We are currently getting:kernel/irq/irqdomain.c: In function 'irq_debugfs_init':kernel/irq/irqdomain.c:698:63: error: 'powerpc_debugfs_root' undeclared (first use in this function) kernel/irq/irqdomain.c:698:63: note: each undeclared identifier is reported only once for each function it appears in
ae3a197 Disintegrate asm/system.h for PowerPC
is conflicting with
cc79ca6 irq_domain: Move irq_domain code from powerpc to kernel/irq
from Grant's tree.
Adding the following patch fixes it for pseries_defconfig, although I'm not sure it's the right fix.
Grant: why does powerpc_debugfs_root appear in generic code? This seems very bogus.
Mikey
kernel/irq/irqdomain.c +1 -0
@@ -12,6 +12,7 @@#include <linux/slab.h> #include <linux/smp.h> #include <linux/fs.h> +#include <asm/debug.h> #define IRQ_DOMAIN_MAP_LEGACY 0/* driver allocated fixed range of irqs. * ie. legacy 8259, gets irqs 1..15 */
Quoted 6 lines · On Thu, 29 Mar 2012 13:50:44 +1100 Michael Neuling <[email protected]> wrote:
Quoted 6 lines
Here are a bunch of patches to disintegrate
asm/system.hinto a set of separate bits to relieve the problem of circular inclusion dependencies.The following changes since commit
437538267b672f9320833907f1b5acbb2605f4be:
Quoted 8 lines
Quoted 5 lines
Merge tag 'fbdev-updates-for-3.4' of
git://github.com/schandinat/linux-2.6(2012-03-22 20:43:40 -0700)are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system.gitsplit-asm-system_hIt would have been nice to have this in linux-next for a day or two to sort out the merge issues, hence....
Um, what can I say but "yeah, it would have been nice" :-(
Signature · 2 lines
Cheers, Stephen Rothwell [email protected]
Hi all,
Quoted 10 lines · On Thu, 29 Mar 2012 13:55:55 +1100 Stephen Rothwell <[email protected]>…
Quoted 8 lines · On Thu, 29 Mar 2012 13:50:44 +1100 Michael Neuling <[email protected]> wrote:
Quoted 8 lines
Here are a bunch of patches to disintegrate
asm/system.hinto a set of separate bits to relieve the problem of circular inclusion dependencies.The following changes since commit
437538267b672f9320833907f1b5acbb2605f4be:Merge tag 'fbdev-updates-for-3.4' of
git://github.com/schandinat/linux-2.6(2012-03-22 20:43:40 -0700)
Quoted 8 lines
Quoted 6 lines
Quoted 3 lines
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system.gitsplit-asm-system_hIt would have been nice to have this in linux-next for a day or two to sort out the merge issues, hence....
Um, what can I say but "yeah, it would have been nice" :-(
The following patch fixes (as much as possible) a powerpc allyesconfig build.
From: Stephen Rothwell <[email protected]>
Date: Thu, 29 Mar 2012 14:58:10 +1100
Subject: [PATCH] powerpc: fix fallout from system.h split up
--- arch/powerpc/kernel/fadump.c | 2 ++ arch/powerpc/kernel/kgdb.c | 1 + kernel/irq/irqdomain.c | 3 +++ 3 files changed, 6 insertions(+), 0 deletions(-)
arch/powerpc/kernel/fadump.c +2 -0
@@ -40,6 +40,8 @@#include <asm/prom.h> #include <asm/rtas.h> #include <asm/fadump.h> +#include <asm/debug.h> +#include <asm/setup.h> static struct fw_dump fw_dump;static struct fadump_mem_struct fdm;
arch/powerpc/kernel/kgdb.c +1 -0
@@ -24,6 +24,7 @@#include <asm/current.h> #include <asm/processor.h> #include <asm/machdep.h> +#include <asm/debug.h> /* * This table contains the mapping between PowerPC hardware trap types, and
kernel/irq/irqdomain.c +3 -0
@@ -12,6 +12,9 @@#include <linux/slab.h> #include <linux/smp.h> #include <linux/fs.h> +#ifdef CONFIG_VIRQ_DEBUG +#include <asm/debug.h> +#endif #define IRQ_DOMAIN_MAP_LEGACY 0/* driver allocated fixed range of irqs. * ie. legacy 8259, gets irqs 1..15 */
Signature · 5 lines
1.7.9.1 -- Cheers, Stephen Rothwell [email protected]
Michael Neuling
Acked-byIn message <[email protected]> you wrote :
Quoted 33 lines
--Signature=_Thu__29_Mar_2012_15_15_44_+1100_WbAuFOESkuBxVlHq
Content-Type: text/plain; charset=US-ASCII
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printableHi all,
Quoted 2 lines · On Thu, 29 Mar 2012 13:55:55 +1100 Stephen Rothwell <[email protected]> =…
On Thu, 29 Mar 2012 13:50:44 +1100 Michael Neuling <[email protected]> wr=
ote:
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Here are a bunch of patches to disintegrate
asm/system.hinto a set o=f separate
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
bits to relieve the problem of circular inclusion dependencies. =20
The following changes since commit 437538267b672f9320833907f1b5acbb26=05f4be:
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
=20
Merge tag 'fbdev-updates-for-3.4' ofgit://github.com/schandinat/li=nux-2.6 (2012-03-22 20:43:40 -0700)
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
=20
are available in the git repository at:
=20
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_sy=stem.git split-asm-system_h
Quoted 5 lines
Quoted 3 lines
=20
It would have been nice to have this in linux-next for a day or two to sort out the merge issues, hence....=20
Um, what can I say but "yeah, it would have been nice" :-(
Quoted 7 lines
The following patch fixes (as much as possible) a powerpc allyesconfig build.
From: Stephen Rothwell <[email protected]>
Date: Thu, 29 Mar 2012 14:58:10 +1100
Subject: [PATCH] powerpc: fix fallout fromsystem.hsplit upSigned-off-by Stephen Rothwell <[email protected]>
Thanks, this is much better than my crappy fix.
Mikey
Quoted 75 lines
--- arch/powerpc/kernel/fadump.c | 2 ++ arch/powerpc/kernel/kgdb.c | 1 + kernel/irq/irqdomain.c | 3 +++ 3 files changed, 6 insertions(+), 0 deletions(-)arch/powerpc/kernel/fadump.c +2
-0@@ -40,6 +40,8 @@#include <asm/prom.h> #include <asm/rtas.h> #include <asm/fadump.h> +#include <asm/debug.h> +#include <asm/setup.h> =20
static structfw_dumpfw_dump;
static structfadump_mem_structfdm;arch/powerpc/kernel/kgdb.c +1
-0@@ -24,6 +24,7 @@#include <asm/current.h> #include <asm/processor.h> #include <asm/machdep.h> +#include <asm/debug.h> =20
/*
* This table contains the mapping between PowerPC hardware trap types, andkernel/irq/irqdomain.c +3
-0@@ -12,6 +12,9 @@#include <linux/slab.h> #include <linux/smp.h> #include <linux/fs.h> +#ifdef CONFIG_VIRQ_DEBUG +#include <asm/debug.h> +#endif =20
#defineIRQ_DOMAIN_MAP_LEGACY0 /* driver allocated fixed range of irqs.
* ie. legacy 8259, gets irqs 1..15 */
--=20
1.7.9.1--=20
Cheers,
Stephen Rothwell [email protected]--Signature=_Thu__29_Mar_2012_15_15_44_+1100_WbAuFOESkuBxVlHq
Content-Type: application/pgp-signature-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)iQIcBAEBCAAGBQJPc+HwAAoJEECxmPOUX5FET2oP/2slayQM3wN4DhXAE/v+JeBU bEmqlZE5DgrAK6Pu65YrlZlYVvfvOsivTwu/tfQ+FLlJHGiPHbVu7zKv/em+cRtz dTMQSuYolSyRzAyk+QBD4lUN+SZ8OFfs9XbVxhyTCBe+1qdUUdyul4ajrvo9vMiw +0eHw1WlozwGOdWcYy/9BdHXPVUiJGjWksmGmAQz0aTbTY5DVfKjiEsHIRS+lJ0f nsrKfWOk5z+4yT2AjteEYcPScxxO2F73VZEr/xBEn5R3siuEgZF6P1n96gTxe/3l jdKQG6R2QHfKBpx8kphL3qAom5ehese2YaYkufDn4u+/QXtrDoYE/F2a646I7dc3 LN2SCiLLiaba11uW06cfdiwpkrlF05nHJR3CnEUt8dSQbS/vEjxlRHa9V3cl7Y9/ c2rK6z3YQwZXL53LTO4YMv5yaYDathWPKwanGJSocWICq6gbtWl4XevoLRwmkRo1 TuMAj1jy69mxFdiQQA5LO+JRkQN4POo2+vBUb+0RncNrR/tIpp5xB9np30bwIdNI +VS0I2IQD4VntQp+CF/O/y8SEfyqo/7BWPpZhneRy6LMKC9aOe1RpSgKDa4ZvWYh BW60vTDNnc5CNSjOtfOtW55m+JH/eY2/Hidy/Yt7PjLXGi+6KKy0eY7Kl6G0PuS1 3/KLLW8Vu3GxBLUWiXZv
=1Nhy
-----END PGP SIGNATURE-------Signature=_Thu__29_Mar_2012_15_15_44_+1100_WbAuFOESkuBxVlHq--
Quoted 2 lines · Stephen Rothwell
The following patch fixes (as much as possible) a powerpc allyesconfig build.
Ugh:
kernel/irq/irqdomain.c line 17
Quoted 11 lines
kernel/irq/irqdomain.c +3
-0@@ -12,6 +12,9 @@ #include <linux/slab.h> #include <linux/smp.h> #include <linux/fs.h> +#ifdef CONFIG_VIRQ_DEBUG +#include <asm/debug.h> +#endif
Can we please move that abortion into arch/powerpc/? Instead of making generic code even uglier..
Linus
Hi Linus,
Quoted 7 lines · On Wed, 28 Mar 2012 21:24:41 -0700 Linus Torvalds…
Quoted 2 lines · Stephen Rothwell
The following patch fixes (as much as possible) a powerpc allyesconfig build.
Ugh:
Quoted 14 lines
kernel/irq/irqdomain.c line 17
Quoted 11 lines
kernel/irq/irqdomain.c +3
-0@@ -12,6 +12,9 @@ #include <linux/slab.h> #include <linux/smp.h> #include <linux/fs.h> +#ifdef CONFIG_VIRQ_DEBUG +#include <asm/debug.h> +#endif Can we please move that abortion into
arch/powerpc/? Instead of making generic code even uglier..
How about this (build tested on powerpc allyesconfig):
From: Stephen Rothwell <[email protected]>
Date: Thu, 29 Mar 2012 14:58:10 +1100
Subject: [PATCH] powerpc: fix fallout from system.h split up
--- arch/powerpc/kernel/fadump.c | 2 + arch/powerpc/kernel/irq.c | 72 ++++++++++++++++++++++++++++++++++++++++++ arch/powerpc/kernel/kgdb.c | 1 + kernel/irq/irqdomain.c | 72 ------------------------------------------ 4 files changed, 75 insertions(+), 72 deletions(-)
arch/powerpc/kernel/fadump.c +2 -0
@@ -40,6 +40,8 @@#include <asm/prom.h> #include <asm/rtas.h> #include <asm/fadump.h> +#include <asm/debug.h> +#include <asm/setup.h> static struct fw_dump fw_dump;static struct fadump_mem_struct fdm;
arch/powerpc/kernel/irq.c +72 -0
75 lines not on this page · raw message
arch/powerpc/kernel/kgdb.c +1 -0
@@ -24,6 +24,7 @@#include <asm/current.h> #include <asm/processor.h> #include <asm/machdep.h> +#include <asm/debug.h> /* * This table contains the mapping between PowerPC hardware trap types, and
kernel/irq/irqdomain.c +0 -72
78 lines not on this page · raw message
Signature · 7 lines
1.7.9.1 -- Cheers, Stephen Rothwell [email protected] http://www.canb.auug.org.au/~sfr/
Michael Neuling
Acked-byQuoted 10 lines
Quoted 2 lines
Can we please move that abortion into
arch/powerpc/? Instead of making generic code even uglier..How about this (build tested on powerpc allyesconfig):
From: Stephen Rothwell <[email protected]>
Date: Thu, 29 Mar 2012 14:58:10 +1100
Subject: [PATCH] powerpc: fix fallout fromsystem.hsplit upSigned-off-by Stephen Rothwell <[email protected]>
FWIW.. this works for me too..
Mikey
Quoted 59 lines
--- arch/powerpc/kernel/fadump.c | 2 + arch/powerpc/kernel/irq.c | 72 ++++++++++++++++++++++++++++++++++++++= ++++ arch/powerpc/kernel/kgdb.c | 1 + kernel/irq/irqdomain.c | 72 --------------------------------------= ---- 4 files changed, 75 insertions(+), 72 deletions(-)arch/powerpc/kernel/fadump.c +2
-0@@ -40,6 +40,8 @@#include <asm/prom.h> #include <asm/rtas.h> #include <asm/fadump.h> +#include <asm/debug.h> +#include <asm/setup.h> =20
static structfw_dumpfw_dump;
static structfadump_mem_structfdm;arch/powerpc/kernel/irq.c +0
-0@@ -623,3 +623,75 @@ static int __init setup_noirqdistrib(char *str)=20
__setup("noirqdistrib", setup_noirqdistrib);
#endif /*CONFIG_PPC64*/arch/powerpc/kernel/irq.c +29
-0+ +#ifdef CONFIG_VIRQ_DEBUG +static int virq_debug_show (struct seq_file *m,void *private) +{ +unsigned long flags; +struct irq_desc *desc; +const char *p; + static const char none[] =3D "none"; +void *data; +int i; + +seq_printf (m,"%-5s %-7s %-15s %-18s %s\n" ,"virq" ,"hwirq" , +"chip name" ,"chip data" ,"domain name" ); + + for (i =3D 1; i < nr_irqs; i++) { + desc =3D irq_to_desc(i); +if (!desc) +continue ; + +raw_spin_lock_irqsave (&desc->lock, flags); + +if (desc->action && desc->action->handler) { +struct irq_chip *chip; + +seq_printf (m,"%5d " , i); +seq_printf (m,"0x%05lx " , desc->irq_data.hwirq); + + chip =3D irq_desc_get_chip(desc); +if (chip && chip->name)
arch/powerpc/kernel/irq.c static int __init setup_noirqdistrib(char *str)
Quoted 10 lines
arch/powerpc/kernel/irq.c +10
-0+ p =3D chip->name; + else + p =3D none; +seq_printf (m,"%-15s " , p); + + data =3D irq_desc_get_chip_data(desc); +seq_printf (m,"0x%16p " , data); + +if (desc->irq_data.domain->of_node) + p =3D desc->irq_data.domain->of_node->full_name
;
Quoted 82 lines
arch/powerpc/kernel/irq.c +33
-0+ else + p =3D none; + seq_printf(m, "%s\n", p); + } + +raw_spin_unlock_irqrestore (&desc->lock, flags); + } + +return 0 ; +} + +static int virq_debug_open (struct inode *inode,struct file *file) +{ +return single_open (file, virq_debug_show, inode->i_private); +} + +static const struct file_operations virq_debug_fops =3D { + .open =3D virq_debug_open, + .read =3D seq_read, + .llseek =3D seq_lseek, + .release =3D single_release, +}; + +static int __init irq_debugfs_init (void ) +{ +if (debugfs_create_file ("virq_mapping" ,S_IRUGO , powerpc_debugfs_root, + NULL, &virq_debug_fops) =3D=3D NULL) +return -ENOMEM ; + +return 0 ; +} +__initcall (irq_debugfs_init); +#endif /* CONFIG_VIRQ_DEBUG */ arch/powerpc/kernel/kgdb.c +1
-0@@ -24,6 +24,7 @@#include <asm/current.h> #include <asm/processor.h> #include <asm/machdep.h> +#include <asm/debug.h> =20
/*
* This table contains the mapping between PowerPC hardware trap types, andkernel/irq/irqdomain.c +0
-0@@ -632,78 +632,6 @@ unsigned int irq_linear_revmap(struct irq_domain *doma= in, return revmap[hwirq]; }=20
kernel/irq/irqdomain.c +0
-28-#ifdef CONFIG_VIRQ_DEBUG -static int virq_debug_show (struct seq_file *m,void *private) -{ -unsigned long flags; -struct irq_desc *desc; -const char *p; - static const char none[] =3D "none"; -void *data; -int i; - -seq_printf (m,"%-5s %-7s %-15s %-18s %s\n" ,"virq" ,"hwirq" , -"chip name" ,"chip data" ,"domain name" ); - - for (i =3D 1; i < nr_irqs; i++) { - desc =3D irq_to_desc(i); -if (!desc) -continue ; - -raw_spin_lock_irqsave (&desc->lock, flags); - -if (desc->action && desc->action->handler) { -struct irq_chip *chip; - -seq_printf (m,"%5d " , i); -seq_printf (m,"0x%05lx " , desc->irq_data.hwirq); - - chip =3D irq_desc_get_chip(desc); -if (chip && chip->name)
kernel/irq/irqdomain.c unsigned int irq_linear_revmap(struct irq_domain *domain,
Quoted 10 lines
kernel/irq/irqdomain.c +0
-10- p =3D chip->name; - else - p =3D none; -seq_printf (m,"%-15s " , p); - - data =3D irq_desc_get_chip_data(desc); -seq_printf (m,"0x%16p " , data); - -if (desc->irq_data.domain->of_node) - p =3D desc->irq_data.domain->of_node->full_name
;
Quoted 45 lines
kernel/irq/irqdomain.c +0
-35- else - p =3D none; - seq_printf(m, "%s\n", p); - } - -raw_spin_unlock_irqrestore (&desc->lock, flags); - } - -return 0 ; -} - -static int virq_debug_open (struct inode *inode,struct file *file) -{ -return single_open (file, virq_debug_show, inode->i_private); -} - -static const struct file_operations virq_debug_fops =3D { - .open =3D virq_debug_open, - .read =3D seq_read, - .llseek =3D seq_lseek, - .release =3D single_release, -}; - -static int __init irq_debugfs_init (void ) -{ -if (debugfs_create_file ("virq_mapping" ,S_IRUGO , powerpc_debugfs_root, - NULL, &virq_debug_fops) =3D=3D NULL) -return -ENOMEM ; - -return 0 ; -} -__initcall (irq_debugfs_init); -#endif /* CONFIG_VIRQ_DEBUG */ -int irq_domain_simple_map (struct irq_domain *d,unsigned int irq,irq_hw_number_t hwirq) { --=201.7.9.1
--=20
Cheers,
Stephen Rothwell [email protected]
http://www.canb.auug.org.au/~sfr/
Quoted 2 lines · Stephen Rothwell
How about this (build tested on powerpc allyesconfig):
Looks better.
Grant - what's the plan about that CONFIG_VIRQ_DEBUG thing? In theory something like it could be useful as a generic thing, but at least right now it is clearly powerpc-specific (not just that the config option only exists for powerpc: it has that whole 'powerpc_debugfs_root' thing in it)?
Stephen's patch very much looks like the right thing, but if there was some plan to actually make this generic ...
Linus
Quoted 6 lines · Linus Torvalds
Quoted 2 lines · Stephen Rothwell
How about this (build tested on powerpc allyesconfig):
Looks better.
Quoted 8 lines
Grant - what's the plan about that
CONFIG_VIRQ_DEBUGthing? In theory something like it could be useful as a generic thing, but at least right now it is clearly powerpc-specific (not just that the config option only exists for powerpc: it has that whole 'powerpc_debugfs_root' thing in it)?Stephen's patch very much looks like the right thing, but if there was some plan to actually make this generic ...
Yes, as I said earlier I think Grant should make it generic, there's no reason to keep that powerpc specific, it's fairly useful and nothing in userspace relies on the existing location of the debugfs file that I know about.
Another option is to put the mapping information in /proc/interrupts but worry that changing anything in there (like adding a column) will break countless userspace tools.
Cheers,
Ben.
Quoted 16 lines · Benjamin Herrenschmidt
Quoted 6 lines · Linus Torvalds
Quoted 2 lines · Stephen Rothwell
How about this (build tested on powerpc allyesconfig):
Looks better.
Quoted 8 lines
Grant - what's the plan about that
CONFIG_VIRQ_DEBUGthing? In theory something like it could be useful as a generic thing, but at least right now it is clearly powerpc-specific (not just that the config option only exists for powerpc: it has that whole 'powerpc_debugfs_root' thing in it)?Stephen's patch very much looks like the right thing, but if there was some plan to actually make this generic ...
Quoted 8 lines
Yes, as I said earlier I think Grant should make it generic, there's no reason to keep that powerpc specific, it's fairly useful and nothing in userspace relies on the existing location of the debugfs file that I know about.
Another option is to put the mapping information in
/proc/interruptsbut worry that changing anything in there (like adding a column) will break countless userspace tools.
I posted an RFC patch that does exactly that, but I'm similarly nervous for the same reason:
http://www.mail-archive.com/[email protected]/msg56368.html
The rightmost fields of /proc/interrupts are a weird set of conditional outputs that don't really have any parsable formatting to them. It may be safe to apply my patch because it adds another field in the middle of a section of conditional outputs* anyway so tools already won't know what those fields mean. But, regardless, I'm not going to take responsibility for applying that patch unless encouraged by several other maintainers to do so.
*It's added to the middle instead of the end purely for aesthetic reasons. The rightmost field is a freeform string without a field width, so if put at the end they would never line up. Suggestions for a better layout are welcome.
g.
Quoted 8 lines · Grant Likely
On Thu, Mar 29, 2012 at 2:11 AM, Benjamin Herrenschmidt
The rightmost fields of/proc/interruptsare a weird set of conditional outputs that don't really have any parsable formatting to them. It may be safe to apply my patch because it adds another field in the middle of a section of conditional outputs* anyway so tools already won't know what those fields mean. But, regardless, I'm not going to take responsibility for applying that patch unless encouraged by several other maintainers to do so.
Go ahead. We changed that output several times in the last years without causing the end of the universe.
Thanks,
tglx
Quoted 10 lines · Thomas Gleixner
Quoted 8 lines · Grant Likely
On Thu, Mar 29, 2012 at 2:11 AM, Benjamin Herrenschmidt
The rightmost fields of/proc/interruptsare a weird set of conditional outputs that don't really have any parsable formatting to them. It may be safe to apply my patch because it adds another field in the middle of a section of conditional outputs* anyway so tools already won't know what those fields mean. But, regardless, I'm not going to take responsibility for applying that patch unless encouraged by several other maintainers to do so.
Quoted 2 lines
Go ahead. We changed that output several times in the last years without causing the end of the universe.
Okay, RFC patch sent. I'm okay to wait for v3.5 for this, but it can go into v3.4 if anyone really wants it faster.
g.
Quoted 7 lines · Michael Neuling
Quoted 7 lines
Here are a bunch of patches to disintegrate
asm/system.hinto a set of separate bits to relieve the problem of circular inclusion dependencies.The following changes since commit
437538267b672f9320833907f1b5acbb2605f4be:Merge tag 'fbdev-updates-for-3.4' of
git://github.com/schandinat/linux-2.6(2012-03-22 20:43:40 -0700)
Quoted 8 lines
Quoted 3 lines
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-asm_system.gitsplit-asm-system_hIt would have been nice to have this in linux-next for a day or two to sort out the merge issues, hence....
This seems to have broken linus tree when compiling a
pseries_defconfig
Ah yes, I also saw that, I was hoping you would give me today to run through my test builds.
Quoted 5 lines
We are currently getting:
kernel/irq/irqdomain.c: In function 'irq_debugfs_init':kernel/irq/irqdomain.c:698:63: error: 'powerpc_debugfs_root' undeclared (first use in this function)kernel/irq/irqdomain.c:698:63: note: each undeclared identifier is reported only once for each function it appears in
Quoted 7 lines
ae3a197 Disintegrate
asm/system.hfor PowerPC
is conflicting with
cc79ca6irq_domain: Moveirq_domaincode from powerpc to kernel/irq
from Grant's tree.Adding the following patch fixes it for
pseries_defconfig, although I'm not sure it's the right fix.
That will do as a quick fix (Linus, can you take it now ?), however..
Quoted 2 lines
Grant: why does
powerpc_debugfs_rootappear in generic code? This seems very bogus.
Yes, Grant, you should move that to a different (generic) debugfs file, the mapping information is valuable debug data for all architectures that use the remapper, not just powerpc and it's not an ABI (no tool I know of rely on the location of that debugfs file) so feel free to move it around.
Cheers,
Ben.
Quoted 9 lines · Benjamin Herrenschmidt
Quoted 2 lines · Michael Neuling
Grant: why does
powerpc_debugfs_rootappear in generic code? This seems very bogus.Yes, Grant, you should move that to a different (generic) debugfs file, the mapping information is valuable debug data for all architectures that use the remapper, not just powerpc and it's not an ABI (no tool I know of rely on the location of that debugfs file) so feel free to move it around.
I could simply drop the powerpc_debugfs_root argument from debugfs_create_file() and replace it with NULL. As you say, this is not an ABI and this will solve the problem.
Quoted 8 lines · Linus Torvalds
Grant - what's the plan about that
CONFIG_VIRQ_DEBUGthing? In theory something like it could be useful as a generic thing, but at least right now it is clearly powerpc-specific (not just that the config option only exists for powerpc: it has that whole 'powerpc_debugfs_root' thing in it)?Stephen's patch very much looks like the right thing, but if there was some plan to actually make this generic ...
The plan is to make it generic. I just ran out of time for this cycle to generalize it. I moved all of irqdomain out of arch/powerpc wholesale, which included the debug bits, and then generalized it in place. That was the safest way to transition without causing breakage.
Moving it back into powerpc land is a step backwards. I've attached a patch that makes it generic instead. It has been tested on ARM.
I've pushed it out to the following branch:
git://git.secretlab.ca/git/linux-2.6 irqdomain/merge
---
[PATCH] irqdomain: Remove powerpc dependency from debugfs file
The debugfs code is really generic for all platforms. This patch removes the powerpc-specific directory reference and makes it available to all architectures.
--- arch/powerpc/Kconfig.debug | 10 ---------- kernel/irq/Kconfig | 10 ++++++++++ kernel/irq/irqdomain.c | 8 ++++---- 3 files changed, 14 insertions(+), 14 deletions(-)
arch/powerpc/Kconfig.debug +0 -10
@@ -114,16 +114,6 @@ config DEBUGGER depends on KGDB || XMON default y -config VIRQ_DEBUG - bool "Expose hardware/virtual IRQ mapping via debugfs" - depends on DEBUG_FS - help - This option will show the mapping relationship between hardware irq - numbers and virtual irq numbers. The mapping is exposed via debugfs - in the file powerpc/virq_mapping. - - If you don't know what this means you don't need it. - config BDI_SWITCH bool "Include BDI-2000 user context switcher" depends on DEBUG_KERNEL && PPC32
kernel/irq/Kconfig +10 -0
@@ -56,6 +56,16 @@ config GENERIC_IRQ_CHIP config IRQ_DOMAIN bool +config IRQ_DOMAIN_DEBUG + bool "Expose hardware/virtual IRQ mapping via debugfs" + depends on IRQ_DOMAIN && DEBUG_FS + help + This option will show the mapping relationship between hardware irq + numbers and Linux irq numbers. The mapping is exposed via debugfs + in the file "virq_mapping". + + If you don't know what this means you don't need it. + # Support forced irq threading config IRQ_FORCED_THREADING bool
kernel/irq/irqdomain.c +4 -4
@@ -632,7 +632,7 @@ unsigned int irq_linear_revmap(struct irq_domain *domain,return revmap[hwirq]; } -#ifdef CONFIG_VIRQ_DEBUG +#ifdef CONFIG_IRQ_DOMAIN_DEBUG static int virq_debug_show (struct seq_file *m,void *private) {unsigned long flags;
@@ -668,7 +668,7 @@ static int virq_debug_show(struct seq_file *m, void *private) data =irq_desc_get_chip_data (desc);seq_printf (m,"0x%16p " , data); -if (desc->irq_data.domain->of_node) +if (desc->irq_data.domain && desc->irq_data.domain->of_node) p = desc->irq_data.domain->of_node->full_name;else p = none;
@@ -695,14 +695,14 @@ static const struct file_operations virq_debug_fops = {static int __init irq_debugfs_init (void ) { -if (debugfs_create_file ("virq_mapping" ,S_IRUGO , powerpc_debugfs_root, +if (debugfs_create_file ("irq_domain_mapping" ,S_IRUGO ,NULL ,NULL , &virq_debug_fops) ==NULL )return -ENOMEM ;return 0 ; }__initcall (irq_debugfs_init); -#endif /* CONFIG_VIRQ_DEBUG */ +#endif /* CONFIG_IRQ_DOMAIN_DEBUG */ int irq_domain_simple_map (struct irq_domain *d,unsigned int irq,irq_hw_number_t hwirq)
Signature · 1 line
1.7.9.1
Hi Grant,
Quoted 7 lines · On Thu, 29 Mar 2012 15:01:17 -0600 Grant Likely <[email protected]>…
Moving it back into powerpc land is a step backwards. I've attached a patch that makes it generic instead. It has been tested on ARM.
I've pushed it out to the following branch:
git://git.secretlab.ca/git/linux-2.6irqdomain/merge
I have pulled that into my fixes tree for today (since otherwise my builds will break).
I have also added this patch to my fixes tree:
From: Stephen Rothwell <[email protected]>
Date: Thu, 29 Mar 2012 14:58:10 +1100
Subject: [PATCH] powerpc: fix fallout from system.h split up
--- arch/powerpc/kernel/fadump.c | 2 ++ arch/powerpc/kernel/kgdb.c | 1 + 2 files changed, 3 insertions(+)
arch/powerpc/kernel/fadump.c +2 -0
@@ -40,6 +40,8 @@#include <asm/prom.h> #include <asm/rtas.h> #include <asm/fadump.h> +#include <asm/debug.h> +#include <asm/setup.h> static struct fw_dump fw_dump;static struct fadump_mem_struct fdm;
arch/powerpc/kernel/kgdb.c +1 -0
@@ -24,6 +24,7 @@#include <asm/current.h> #include <asm/processor.h> #include <asm/machdep.h> +#include <asm/debug.h> /* * This table contains the mapping between PowerPC hardware trap types, and
Signature · 5 lines
1.7.9.5 -- Cheers, Stephen Rothwell [email protected]
Quoted 7 lines · Stephen Rothwell
Hi Grant,
Quoted 4 lines · On Thu, 29 Mar 2012 15:01:17 -0600 Grant Likely <[email protected]>…
Moving it back into powerpc land is a step backwards. I've attached a patch that makes it generic instead. It has been tested on ARM.
Quoted 6 lines
Quoted 3 lines
I've pushed it out to the following branch:
git://git.secretlab.ca/git/linux-2.6irqdomain/mergeI have pulled that into my fixes tree for today (since otherwise my builds will break).
Cool. If that checks out in linux-next, then I'll ask Linus to pull.
BTW, can you add that branch permanently to linux-next? That's the branch I'll use when queuing up irqdomain fixes for mainline.
g.
Hi Grant,
Quoted 5 lines · On Thu, 29 Mar 2012 16:52:25 -0600 Grant Likely <[email protected]>…
Cool. If that checks out in linux-next, then I'll ask Linus to pull.
BTW, can you add that branch permanently to linux-next? That's the branch I'll use when queuing up irqdomain fixes for mainline.
OK, I have added that branch. Meanwhile, Linus has merged that branch
as well, so I will remove it from my fixes tree again :-)
I *may* get linux-next for today started soon :-)
Signature · 2 lines
Cheers, Stephen Rothwell [email protected]
Quoted 11 lines · Stephen Rothwell
Hi Grant,
Quoted 5 lines · On Thu, 29 Mar 2012 16:52:25 -0600 Grant Likely <[email protected]>…
Cool. If that checks out in linux-next, then I'll ask Linus to pull.
BTW, can you add that branch permanently to linux-next? That's the branch I'll use when queuing up irqdomain fixes for mainline.
OK, I have added that branch. Meanwhile, Linus has merged that branch as well, so I will remove it from my fixes tree again :-)
:-D Thanks Linus.
Stephen, can you verify on one of your ppc machines that /debug/irq_domain_mapping still works for you?
Thanks,
g.
Quoted 15 lines · Benjamin Herrenschmidt
Quoted 5 lines
We are currently getting:
kernel/irq/irqdomain.c: In function 'irq_debugfs_init':kernel/irq/irqdomain.c:698:63: error: 'powerpc_debugfs_root' undeclared (first use in this function)kernel/irq/irqdomain.c:698:63: note: each undeclared identifier is reported only once for each function it appears inQuoted 7 lines
ae3a197 Disintegrate
asm/system.hfor PowerPC
is conflicting with
cc79ca6irq_domain: Moveirq_domaincode from powerpc to kernel/irq
from Grant's tree.Adding the following patch fixes it for
pseries_defconfig, although I'm not sure it's the right fix.That will do as a quick fix (Linus, can you take it now ?), however..
Quoted 9 lines
Quoted 2 lines
Grant: why does
powerpc_debugfs_rootappear in generic code? This seems very bogus.Yes, Grant, you should move that to a different (generic) debugfs file, the mapping information is valuable debug data for all architectures that use the remapper, not just powerpc and it's not an ABI (no tool I know of rely on the location of that debugfs file) so feel free to move it around.
There is a arch_debugfs_dir defined by linux/debugfs.h, but at the moment it's only provided by x86 and sh.
Quoted 19 lines · Paul Mundt
Quoted 18 lines · Benjamin Herrenschmidt
Quoted 5 lines
We are currently getting:
kernel/irq/irqdomain.c: In function 'irq_debugfs_init':kernel/irq/irqdomain.c:698:63: error: 'powerpc_debugfs_root' undeclared (first use in this function)kernel/irq/irqdomain.c:698:63: note: each undeclared identifier is reported only once for each function it appears inQuoted 7 lines
ae3a197 Disintegrate
asm/system.hfor PowerPC
is conflicting with
cc79ca6irq_domain: Moveirq_domaincode from powerpc to kernel/irq
from Grant's tree.Adding the following patch fixes it for
pseries_defconfig, although I'm not sure it's the right fix.That will do as a quick fix (Linus, can you take it now ?), however..
Quoted 2 lines
Grant: why does
powerpc_debugfs_rootappear in generic code? This seems very bogus.
Quoted 8 lines
Quoted 6 lines
Yes, Grant, you should move that to a different (generic) debugfs file, the mapping information is valuable debug data for all architectures that use the remapper, not just powerpc and it's not an ABI (no tool I know of rely on the location of that debugfs file) so feel free to move it around.
There is a
arch_debugfs_dirdefined bylinux/debugfs.h, but at the moment it's only provided by x86 and sh.
Since this data can be used by any arch now, it doesn't make much sense to put it in arch_debugfs_dir. I've put it in /debug/irq_domain_mapping which should be fine.
g.
Signature · 2 lines
Grant Likely, B.Sc, P.Eng. Secret Lab Technologies,Ltd.