kernel-fxtec-pro1x/arch/ia64/kernel
Paul E. McKenney 93482f4ef1 ia64: Add missing RCU idle APIs on idle loop
Traditionally, the entire idle task served as an RCU quiescent state.
But when RCU read side critical sections started appearing within the
idle loop, this traditional strategy became untenable.  The fix was to
create new RCU APIs named rcu_idle_enter() and rcu_idle_exit(), which
must be called by each architecture's idle loop so that RCU can tell
when it is safe to ignore a given idle CPU.

Unfortunately, this fix was never applied to ia64, a shortcoming remedied
by this commit.

Reported by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Cc: <stable@vger.kernel.org> # 3.3+
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Tested by: Tony Luck <tony.luck@intel.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
2012-09-23 07:44:52 -07:00
..
cpufreq [CPUFREQ] use dynamic debug instead of custom infrastructure 2011-05-04 11:50:57 -04:00
.gitignore
acpi-ext.c
acpi.c ACPI: Only count valid srat memory structures 2012-08-03 00:15:53 -04:00
asm-offsets.c ia64: vsyscall: Add missing paranthesis 2012-03-27 15:06:15 +02:00
audit.c
brl_emu.c
crash.c
crash_dump.c crash_dump: export is_kdump_kernel to modules, consolidate elfcorehdr_addr, setup_elfcorehdr and saved_max_pfn 2011-03-23 19:47:19 -07:00
cyclone.c ia64: Replace clocksource.fsys_mmio with generic arch data 2011-07-14 17:57:09 -07:00
dma-mapping.c ia64: Add export.h to arch/ia64 specific files as required 2011-10-31 19:30:58 -04:00
efi.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
efi_stub.S
elfcore.c
entry.h
entry.S ia64: Add accept4() syscall 2012-01-09 12:55:10 -08:00
err_inject.c cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular subsystem 2011-12-21 14:29:42 -08:00
esi.c
esi_stub.S
fsys.S [IA64] Liberate the signal layer from IA64 assembler 2012-05-16 14:09:55 -07:00
fsyscall_gtod_data.h ia64: vsyscall: Use seqcount instead of seqlock 2012-03-15 18:17:59 -07:00
ftrace.c
gate-data.S
gate.lds.S Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
gate.S Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
head.S Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
ia64_ksyms.c treewide: Put a space between #include and FILE 2012-06-28 11:44:36 +02:00
init_task.c
iosapic.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
irq.c ia64: Use generic show_interrupts() 2011-03-29 14:48:05 +02:00
irq_ia64.c random: remove rand_initialize_irq() 2012-07-19 10:38:32 -04:00
irq_lsapic.c ia64: Convert lsapic to new irq_chip functions 2011-03-29 14:48:02 +02:00
ivt.S Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
jprobes.S
kprobes.c
machine_kexec.c [IA64] Fix warning from machine_kexec.c 2012-02-27 13:00:42 -08:00
machvec.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
Makefile iommu: Rename the DMAR and INTR_REMAP config options 2011-09-21 10:22:03 +02:00
Makefile.gate
mca.c Merge branch 'akpm' (Andrew's patch-bomb) 2012-03-28 17:19:28 -07:00
mca_asm.S
mca_drv.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
mca_drv.h
mca_drv_asm.S
minstate.h
module.c modules: make arch's use default loader hooks 2011-07-24 22:06:04 +09:30
msi_ia64.c arch/ia64: remove references to cpu_*_map 2012-03-28 17:14:36 -07:00
nr-irqs.c
numa.c
pal.S
palinfo.c [IA64] Use static const char * const in palinfo.c 2010-09-23 14:22:05 -07:00
paravirt.c static keys: Introduce 'struct static_key', static_key_true()/false() and static_key_slow_[inc|dec]() 2012-02-24 10:05:59 +01:00
paravirt_inst.h
paravirt_patch.c
paravirt_patchlist.c
paravirt_patchlist.h
paravirtentry.S
patch.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
pci-dma.c iommu: Remove group_mf 2012-06-25 13:48:30 +02:00
pci-swiotlb.c X86 & IA64: adapt for dma_map_ops changes 2012-03-28 16:36:31 +02:00
perfmon.c mm: account the total_vm in the vm_stat_account() 2012-07-31 18:42:39 -07:00
perfmon_default_smpl.c Fix common misspellings 2011-03-31 11:26:23 -03:00
perfmon_generic.h
perfmon_itanium.h
perfmon_mckinley.h
perfmon_montecito.h
process.c ia64: Add missing RCU idle APIs on idle loop 2012-09-23 07:44:52 -07:00
ptrace.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
relocate_kernel.S
sal.c
salinfo.c Merge branch 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:52:56 -07:00
setup.c Merge branch 'akpm' (Andrew's patch-bomb) 2012-03-28 17:19:28 -07:00
sigframe.h
signal.c new helper: signal_delivered() 2012-06-01 12:58:52 -04:00
smp.c Merge branch 'akpm' (Andrew's patch-bomb) 2012-03-28 17:19:28 -07:00
smpboot.c ia64: SMP: Remove call to ipi_call_lock_irq()/ipi_call_unlock_irq() 2012-06-05 17:27:13 +02:00
stacktrace.c
sys_ia64.c ia64, sparc64: convert wrappers around do_mremap() to sys_mremap() 2012-05-30 21:04:56 -04:00
time.c Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-03-29 14:16:48 -07:00
topology.c arch/ia64: remove references to cpu_*_map 2012-03-28 17:14:36 -07:00
traps.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
unaligned.c
uncached.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
unwind.c Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00
unwind_decoder.c
unwind_i.h
vmlinux.lds.S Disintegrate asm/system.h for IA64 2012-03-28 18:30:02 +01:00