linux/init
Eric Dumazet b73b459f72 [PATCH] __GENERIC_PER_CPU changes
Now CONFIG_DEBUG_INITDATA is in, initial percpu data
[__per_cpu_start,__per_cpu_end] can be declared as a redzone, and invalid
accesses after boot can be detected, at least for i386.

We can let non possible cpus percpu data point to this 'redzone' instead of
NULL .

NULL was not a good choice because part of [0..32768] memory may be
readable and invalid accesses may happen unnoticed.

If CONFIG_DEBUG_INITDATA is not defined, each non possible cpu points to
the initial percpu data (__per_cpu_offset[cpu] == 0), thus invalid accesses
wont be detected/crash.

This patch also moves __per_cpu_offset[] to read_mostly area to avoid false
sharing.

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-23 07:38:17 -08:00
..
calibrate.c [PATCH] Platform SMIs and their interferance with tsc based delay calibration 2005-06-23 09:45:08 -07:00
do_mounts.c [PATCH] remove driverfs references from init/do_mounts.c 2005-09-02 00:57:31 -07:00
do_mounts.h [PATCH] name_to_dev_t warning fix 2005-07-12 16:00:58 -07:00
do_mounts_devfs.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
do_mounts_initrd.c [PATCH] swsusp: userland interface 2006-03-23 07:38:07 -08:00
do_mounts_md.c [PATCH] md: remove personality numbering from md 2006-01-06 08:34:06 -08:00
do_mounts_rd.c [PATCH] s390: cleanup Kconfig 2006-01-06 08:33:53 -08:00
initramfs.c [PATCH] kexec: fix in free initrd when overlapped with crashkernel region 2006-02-10 08:13:12 -08:00
Kconfig [PATCH] selinux: require AUDIT 2006-02-07 16:12:33 -08:00
main.c [PATCH] __GENERIC_PER_CPU changes 2006-03-23 07:38:17 -08:00
Makefile kbuild: "PREEMPT" in UTS_VERSION 2005-07-14 20:18:07 +00:00
version.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00