android_kernel_samsung_msm8976/arch/x86_64/kernel
Venkatesh Pallipadi d331e739f5 [PATCH] x86-64: Fix interrupt race in idle callback (3rd try)
Idle callbacks has some races when enter_idle() sets isidle and subsequent
interrupts that can happen on that CPU, before CPU goes to idle. Due to this,
an IDLE_END can get called before IDLE_START. To avoid these races, disable
interrupts before enter_idle and make sure that all idle routines do not
enable interrupts before entering idle.

Note that poll_idle() still has a this race as it has to enable interrupts
before going to idle. But, all other idle routines have the race fixed.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Andi Kleen <ak@suse.de>
2006-12-07 02:14:13 +01:00
..
acpi
cpufreq
aperture.c [PATCH] x86: Allow disabling early pci scans with pci=noearly or disallowing conf1 2006-09-26 10:52:41 +02:00
apic.c [PATCH] x86-64: Remove unused GET_APIC_VERSION call from clear_local_APIC 2006-12-07 02:14:11 +01:00
asm-offsets.c
audit.c [PATCH] audit: AUDIT_PERM support 2006-09-11 13:32:30 -04:00
crash.c [PATCH] Remove all ifdefs for local/io apic 2006-09-26 10:52:29 +02:00
crash_dump.c
e820.c [PATCH] x86-64: setup saved_max_pfn correctly (kdump) 2006-11-14 16:57:46 +01:00
early-quirks.c [PATCH] x86: fix the irqbalance quirk for E7320/E7520/E7525 2006-12-07 02:14:10 +01:00
early_printk.c [PATCH] x86_64: fix 'earlyprintk=...,keep' regression 2006-11-28 10:58:21 -08:00
entry.S [PATCH] x86-64: miscellaneous entry.S adjustments 2006-12-07 02:14:02 +01:00
functionlist
genapic.c [PATCH] x86-64: add genapic_force 2006-12-07 02:14:10 +01:00
genapic_cluster.c [PATCH] x86_64 irq: Allocate a vector across all cpus for genapic_flat. 2006-10-08 12:24:02 -07:00
genapic_flat.c [PATCH] x86-64: Put more than one cpu in TARGET_CPUS 2006-10-21 18:37:02 +02:00
head.S [PATCH] Reload CS when startup_64 is used. 2006-09-26 10:52:38 +02:00
head64.c [PATCH] x86_64: clear_bss before set_intr_gate with early_idt_handler 2006-12-07 02:14:12 +01:00
i387.c [PATCH] x86-64: use BUILD_BUG_ON in FPU code 2006-12-07 02:14:01 +01:00
i8259.c [PATCH] x86_64: interrupt array size should be aligned to NR_VECTORS 2006-12-07 02:14:12 +01:00
init_task.c [PATCH] nsproxy: move init_nsproxy into kernel/nsproxy.c 2006-10-02 07:57:20 -07:00
io_apic.c [PATCH] x86-64: Fix race in IO-APIC routing entry setup. 2006-12-07 02:14:07 +01:00
ioport.c [PATCH] x86-64 TIF flags for debug regs and io bitmap in ctxsw 2006-09-26 10:52:28 +02:00
irq.c [PATCH] x86-64: Rate limit no irq handler messages 2006-12-07 02:14:09 +01:00
k8.c
kprobes.c [PATCH] kretprobe spinlock deadlock patch 2006-10-02 07:57:16 -07:00
ldt.c
machine_kexec.c [PATCH] Avoid overwriting the current pgd (V4, x86_64) 2006-09-26 10:52:38 +02:00
Makefile [PATCH] x86: Refactor thermal throttle processing 2006-09-26 10:52:42 +02:00
mce.c [PATCH] x86-64: Fix kobject_init() WARN_ON on resume from disk 2006-12-07 02:14:12 +01:00
mce_amd.c [PATCH] cpu hotplug: use hotplug version of registration in late inits 2006-07-31 13:28:39 -07:00
mce_intel.c [PATCH] x86: Add a cumulative thermal throttle event counter. 2006-09-26 10:52:42 +02:00
module.c
mpparse.c [PATCH] x86-64: remove unused acpi_found_madt in mparse. 2006-12-07 02:14:12 +01:00
nmi.c [PATCH] x86: all cpu backtrace 2006-12-07 02:14:01 +01:00
pci-calgary.c [PATCH] Calgary: remove unused variables 2006-12-07 02:14:12 +01:00
pci-dma.c [PATCH] Calgary: allow compiling Calgary in but not using it by default 2006-12-07 02:14:07 +01:00
pci-gart.c [PATCH] remove superflous BUG_ON's in nommu and gart 2006-09-26 10:52:32 +02:00
pci-nommu.c [PATCH] remove superflous BUG_ON's in nommu and gart 2006-09-26 10:52:32 +02:00
pci-swiotlb.c [PATCH] Move valid_dma_direction() from x86_64 to generic code 2006-09-29 09:18:10 -07:00
pmtimer.c
process.c [PATCH] x86-64: Fix interrupt race in idle callback (3rd try) 2006-12-07 02:14:13 +01:00
ptrace.c [PATCH] i386/x86-64: rename is_at_popf(), add iret to tests and fix 2006-09-26 10:52:33 +02:00
reboot.c
relocate_kernel.S [PATCH] Avoid overwriting the current pgd (V4, x86_64) 2006-09-26 10:52:38 +02:00
setup.c [PATCH] x86-64: Mark rdtsc as sync only for netburst, not for core2 2006-12-07 02:14:12 +01:00
setup64.c [PATCH] Don't leak NT bit into next task 2006-09-26 10:52:41 +02:00
signal.c [PATCH] Remove all traces of signal number conversion 2006-09-26 10:52:41 +02:00
smp.c [PATCH] x86-64: Fix vgetcpu when CONFIG_HOTPLUG_CPU is disabled 2006-11-14 16:57:46 +01:00
smpboot.c [PATCH] x86: fix the irqbalance quirk for E7320/E7520/E7525 2006-12-07 02:14:10 +01:00
stacktrace.c [PATCH] Merge stacktrace and show_trace 2006-09-26 10:52:34 +02:00
suspend.c
suspend_asm.S [PATCH] Change the name of pagedir_nosave 2006-09-26 08:49:01 -07:00
sys_x86_64.c [PATCH] namespaces: utsname: switch to using uts namespaces 2006-10-02 07:57:21 -07:00
syscall.c
tce.c Remove all inclusions of <linux/config.h> 2006-10-04 03:38:54 -04:00
time.c [PATCH] x86-64: Fix vgetcpu when CONFIG_HOTPLUG_CPU is disabled 2006-11-14 16:57:46 +01:00
trampoline.S [PATCH] Fix gdt table size in trampoline.S 2006-09-26 10:52:32 +02:00
traps.c [PATCH] x86-64: Remove unwind stack pointer alignment forcing again 2006-12-07 02:14:13 +01:00
vmlinux.lds.S [PATCH] x86_64: Align data segment to PAGE_SIZE boundary 2006-11-21 10:31:21 +01:00
vsmp.c [PATCH] Fix build breakage with CONFIG_X86_VSMP 2006-10-12 12:25:27 -07:00
vsyscall.c [PATCH] x86-64: fix perms/range of vsyscall vma in /proc/*/maps 2006-12-07 02:14:09 +01:00
x8664_ksyms.c Remove all inclusions of <linux/config.h> 2006-10-04 03:38:54 -04:00