android_kernel_xiaomi_sm7250/arch
Andi Kleen e5bc8b6baf [PATCH] x86-64: Make remote TLB flush more scalable
Instead of using a global spinlock to protect the state
of the remote TLB flush use a lock and state for each sending CPU.

To tell the receiver where to look for the state use 8 different
call vectors.  Each CPU uses a specific vector to trigger flushes on other
CPUs. Depending on the received vector the target CPUs look into
the right per cpu variable for the flush data.

When the system has more than 8 CPUs they are hashed to the 8 available
vectors. The limited global vector space forces us to this right now.
In future when interrupts are split into per CPU domains this could be
fixed, at the cost of needing more IPIs in flat mode.

Also some minor cleanup in the smp flush code and remove some outdated
debug code.

Requires patch to move cpu_possible_map setup earlier.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-12 10:49:58 -07:00
..
alpha [PATCH] alpha: fix-up schedule_timeout() usage 2005-09-10 10:06:37 -07:00
arm kbuild: rename prepare to archprepare to fix dependency chain 2005-09-11 22:30:22 +02:00
arm26 kbuild: arm26,sparc use generic asm-offset support 2005-09-09 20:35:55 +02:00
cris kbuild: rename prepare to archprepare to fix dependency chain 2005-09-11 22:30:22 +02:00
frv kbuild: frv,m32r,sparc64 introduce fake asm-offsets.h file 2005-09-09 22:47:53 +02:00
h8300 kbuild: h8300,m68knommu,sh,sh64 use generic asm-offsets.h support 2005-09-09 20:28:49 +02:00
i386 [PATCH] x86-64: Use ACPI PXM to parse PCI<->node assignments 2005-09-12 10:49:57 -07:00
ia64 [PATCH] x86-64: Fix 32bit sendfile 2005-09-12 10:49:57 -07:00
m32r [PATCH] Remove even more stale references to Documentation/smp.tex 2005-09-10 10:06:24 -07:00
m68k Merge master.kernel.org:/pub/scm/linux/kernel/git/sam/kbuild 2005-09-09 15:46:49 -07:00
m68knommu [PATCH] m68knommu: common RAM based 68360 startup code 2005-09-11 20:43:47 -07:00
mips mips: rename offsets.c to asm-offsets.c 2005-09-11 22:35:18 +02:00
parisc [PATCH] spinlock consolidation 2005-09-10 10:06:21 -07:00
ppc kbuild: rename prepare to archprepare to fix dependency chain 2005-09-11 22:30:22 +02:00
ppc64 [PATCH] ppc64: Remove unused code 2005-09-12 17:19:12 +10:00
s390 [PATCH] x86-64: Fix 32bit sendfile 2005-09-12 10:49:57 -07:00
sh kbuild: rename prepare to archprepare to fix dependency chain 2005-09-11 22:30:22 +02:00
sh64 kbuild: rename prepare to archprepare to fix dependency chain 2005-09-11 22:30:22 +02:00
sparc [PATCH] spinlock consolidation 2005-09-10 10:06:21 -07:00
sparc64 [PATCH] spinlock consolidation 2005-09-10 10:06:21 -07:00
um kbuild: rename prepare to archprepare to fix dependency chain 2005-09-11 22:30:22 +02:00
v850 [PATCH] V850: C99 initializers for hw_interrupt_type structures 2005-09-10 10:06:27 -07:00
x86_64 [PATCH] x86-64: Make remote TLB flush more scalable 2005-09-12 10:49:58 -07:00
xtensa kbuild: rename prepare to archprepare to fix dependency chain 2005-09-11 22:30:22 +02:00