/[linux-patches]/genpatches-2.6/trunk/2.6.14/1429_15.4_x86_64-cpu-refs.patch
Gentoo

Contents of /genpatches-2.6/trunk/2.6.14/1429_15.4_x86_64-cpu-refs.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 328 - (show annotations) (download) (as text)
Tue Mar 14 13:34:17 2006 UTC (14 years, 7 months ago) by johnm
File MIME type: text/x-diff
File size: 1560 byte(s)
2.6.14-11, rebase against local tree
1 From stable-bounces@linux.kernel.org Mon Feb 6 15:26:07 2006
2 Date: Tue, 07 Feb 2006 00:18:55 +0100
3 From: "Andi Kleen" <ak@suse.de>
4 To: stable@kernel.org
5 Cc:
6 Subject: [PATCH] x86_64: Let impossible CPUs point to reference per cpu data
7
8 Don't mark the reference per cpu data init data (so it stays
9 around after boot) and point all impossible CPUs to it. This way
10 they reference some valid - although shared memory. Usually
11 this is only initialization like INIT_LIST_HEADs and there
12 won't be races because these CPUs never run. Still somewhat hackish.
13
14 Signed-off-by: Andi Kleen <ak@suse.de>
15 Signed-off-by: Chris Wright <chrisw@sous-sol.org>
16 ---
17
18 arch/x86_64/kernel/vmlinux.lds.S | 10 ++++++----
19 1 files changed, 6 insertions(+), 4 deletions(-)
20
21 Index: linux-2.6.15.3/arch/x86_64/kernel/vmlinux.lds.S
22 ===================================================================
23 --- linux-2.6.15.3.orig/arch/x86_64/kernel/vmlinux.lds.S
24 +++ linux-2.6.15.3/arch/x86_64/kernel/vmlinux.lds.S
25 @@ -170,13 +170,15 @@ SECTIONS
26 . = ALIGN(4096);
27 __initramfs_start = .;
28 .init.ramfs : AT(ADDR(.init.ramfs) - LOAD_OFFSET) { *(.init.ramfs) }
29 - __initramfs_end = .;
30 - . = ALIGN(32);
31 + __initramfs_end = .;
32 + /* temporary here to work around NR_CPUS. If you see this comment in 2.6.17+
33 + complain */
34 + . = ALIGN(4096);
35 + __init_end = .;
36 + . = ALIGN(128);
37 __per_cpu_start = .;
38 .data.percpu : AT(ADDR(.data.percpu) - LOAD_OFFSET) { *(.data.percpu) }
39 __per_cpu_end = .;
40 - . = ALIGN(4096);
41 - __init_end = .;
42
43 . = ALIGN(4096);
44 __nosave_begin = .;

  ViewVC Help
Powered by ViewVC 1.1.20