]>
git.openfabrics.org - ~emulex/infiniband.git/log
Hiroshi Shimamoto [Wed, 27 Feb 2008 21:16:30 +0000 (13:16 -0800)]
x86: X86_HT always enable on X86_64 SMP
X86_HT is used for hyperthreading or multicore on 32-bit.
The X86_HT on 64-bit is different from 32-bit, it means hyperthreading only.
And X86_HT is not used on 64-bit except from cpu/initel_cacheinfo.c.
Unify X86_HT for hyperthreading or multicore.
Turn X86_HT on when X86_64 and SMP are enabled.
Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Thomas Gleixner [Wed, 27 Feb 2008 19:57:40 +0000 (20:57 +0100)]
x86: check physical address range in ioremap
Roland Dreier reported in http://lkml.org/lkml/2008/2/27/194
[ 8425.915139] BUG: unable to handle kernel paging request at
ffffc20001a0a000
[ 8425.919087] IP: [<
ffffffff8021dacc >] clflush_cache_range+0xc/0x25
[ 8425.919087] PGD
1bf80e067 PUD
1bf80f067 PMD
1bb497067 PTE
80000047000ee17b
This is on a Intel machine with 36bit physical address space. The PTE
entry references
47000ee000 , which is outside of it.
Add a check for the physical address space and warn/printk about the
stupid caller.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Markus Armbruster [Wed, 27 Feb 2008 13:56:35 +0000 (14:56 +0100)]
xen: make hvc0 the preferred console in domU
This makes the Xen console just work. Before, you had to ask for it
on the kernel command line with console=hvc0
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Thu, 17 Apr 2008 15:40:51 +0000 (17:40 +0200)]
x86, tracing: add notrace to asm-x86/linkage.h
notrace signals that a function should not be traced. Most of the
time this is used by tracers to annotate code that cannot be
traced - it's in a volatile state (such as in user vdso context
or NMI context) or it's in the tracer internals.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Alexey Dobriyan [Tue, 26 Feb 2008 10:23:32 +0000 (13:23 +0300)]
x86: switch to proc_create()
Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 10:15:50 +0000 (11:15 +0100)]
x86: clean up traps_32.c
Before:
total: 86 errors, 29 warnings, 1248 lines checked
After:
total: 0 errors, 17 warnings, 1281 lines checked
No code changed:
arch/x86/kernel/traps_32.o:
text data bss dec hex filename
8711 2168 72 10951 2ac7 traps_32.o.before
8711 2168 72 10951 2ac7 traps_32.o.after
(md5 sums differ because some stack offset positions changed.)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 07:52:39 +0000 (08:52 +0100)]
x86: clean up cpu capabilities accesses, transmeta.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 07:52:33 +0000 (08:52 +0100)]
x86: clean up cpu capabilities in arch/x86/kernel/cpu/intel.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 07:52:27 +0000 (08:52 +0100)]
x86: clean up cpu capabilities accesses, cyrix.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 07:51:32 +0000 (08:51 +0100)]
x86: clean up cpu capabilities accesses, common.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 07:51:22 +0000 (08:51 +0100)]
x86: clean up cpu capabilities accesses, centaur.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 07:49:57 +0000 (08:49 +0100)]
x86: clean up cpu capabilities accesses, amd.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 07:54:01 +0000 (08:54 +0100)]
x86: clean up cpu capabilities accesses, generic
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Tue, 26 Feb 2008 07:34:21 +0000 (08:34 +0100)]
x86: clean up cpu capabilities accesses
introduce test_cpu_cap() for raw access to the real CPU
capabilities as they are present in x86_capability.
(cpu_has() will shortcut certain tests during build-time)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Yinghai Lu [Tue, 26 Feb 2008 07:20:01 +0000 (23:20 -0800)]
x86: remove wrong setting about CONSTANT_TSC for intel cpu
early_init_intel() on 64-bit is introduced by
commit
2b16a2353814a513cdb5c5c739b76a19d7ea39ce
Author: Andi Kleen <ak@suse.de>
Date: Wed Jan 30 13:32:40 2008 +0100
x86: move X86_FEATURE_CONSTANT_TSC into early cpu feature detection
sets CONSTANT_TSC for intel cpus - but it is already set in init_intel().
don't need to set that two times in early_init_intel() and init_intel().
this patch removes the init_intel() one.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Florian Fainelli [Mon, 25 Feb 2008 10:44:07 +0000 (11:44 +0100)]
x86, rdc321x: remove watchdog file
remove the arch/x86/mach-rdc321x/wdt.c file.
Signed-off-by: Florian Fainelli <florian.fainelli@telecomint.eu>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Yinghai Lu [Mon, 25 Feb 2008 05:36:28 +0000 (21:36 -0800)]
x86: apic_is_clustered_box for vsmp
quad core 8 socket system will have apic id lifting.the apic id range could
be [4, 0x23]. and apic_is_clustered_box will think that need to three clusters
and that is larger than 2. So it is treated as a clustered_box.
and will get:
Marking TSC unstable due to TSCs unsynchronized
even if the CPUs have X86_FEATURE_CONSTANT_TSC set.
this quick fix will check if the cpu is from AMD.
but vsmp still needs that checking...
this patch is fix to make sure that vsmp not to be passed.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Sun, 24 Feb 2008 10:58:13 +0000 (11:58 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/common.c
Before:
total: 55 errors, 6 warnings, 727 lines checked
After:
total: 0 errors, 3 warnings, 734 lines checked
No code changed:
arch/x86/kernel/cpu/common.o:
text data bss dec hex filename
3500 4611 44 8155 1fdb common.o.before
3500 4611 44 8155 1fdb common.o.after
md5:
e37091f11fbeb682c0db152ac3022a38 common.o.before.asm
e37091f11fbeb682c0db152ac3022a38 common.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Sun, 24 Feb 2008 10:57:22 +0000 (11:57 +0100)]
x86: coding style fixes to arch/x86/power/cpu_32.c
Before:
total: 15 errors, 3 warnings, 133 lines checked
After:
total: 0 errors, 0 warnings, 138 lines checked
No code changed:
arch/x86/power/cpu_32.o:
text data bss dec hex filename
739 0 84 823 337 cpu_32.o.before
739 0 84 823 337 cpu_32.o.after
md5:
eb0726223a5e26b195e65f0ae2c0ec66 cpu_32.o.before.asm
eb0726223a5e26b195e65f0ae2c0ec66 cpu_32.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:11:59 +0000 (23:11 +0100)]
x86: coding style fixes to arch/x86/xen/multicalls.c
Before:
total: 2 errors, 2 warnings, 138 lines checked
After:
total: 0 errors, 2 warnings, 138 lines checked
No code changed:
arch/x86/xen/multicalls.o:
text data bss dec hex filename
887 2832 0 3719 e87 multicalls.o.before
887 2832 0 3719 e87 multicalls.o.after
md5:
cf6d72d9db6dc5a3ebe01eec9f05e95f multicalls.o.before.asm
cf6d72d9db6dc5a3ebe01eec9f05e95f multicalls.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:11:52 +0000 (23:11 +0100)]
x86: coding style fixes to arch/x86/kernel/msr.c
Before:
total: 2 errors, 0 warnings, 231 lines checked
After:
total: 0 errors, 0 warnings, 231 lines checked
No code changed:
arch/x86/kernel/msr.o:
text data bss dec hex filename
1199 12 4 1215 4bf msr.o.before
1199 12 4 1215 4bf msr.o.after
md5:
604be0d07d829bc52a9346babd084bdc msr.o.before.asm
604be0d07d829bc52a9346babd084bdc msr.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:11:34 +0000 (23:11 +0100)]
x86: coding style fixes to arch/x86/oprofile/nmi_timer_int.c
Before:
total: 3 errors, 0 warnings, 69 lines checked
After:
total: 0 errors, 0 warnings, 69 lines checked
No code changed:
arch/x86/oprofile/nmi_timer_int.o:
text data bss dec hex filename
180 12 0 192 c0 nmi_timer_int.o.before
180 12 0 192 c0 nmi_timer_int.o.after
md5:
0433c31d758e81da574e01722a8036ea nmi_timer_int.o.before.asm
0433c31d758e81da574e01722a8036ea nmi_timer_int.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:11:23 +0000 (23:11 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/cyrix.c
Before:
total: 46 errors, 10 warnings, 450 lines checked
After:
total: 1 errors, 10 warnings, 449 lines checked
No code changed:
arch/x86/kernel/cpu/cyrix.o:
text data bss dec hex filename
2048 908 4 2960 b90 cyrix.o.before
2048 908 4 2960 b90 cyrix.o.after
md5:
9add5e69dbd788f91ff24eea8462dad7 cyrix.o.before.asm
9add5e69dbd788f91ff24eea8462dad7 cyrix.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:11:12 +0000 (23:11 +0100)]
x86: coding style fixes to arch/x86/boot/cpucheck.c
Before:
total: 30 errors, 0 warnings, 262 lines checked
After:
total: 0 errors, 0 warnings, 262 lines checked
No code changed:
arch/x86/boot/cpucheck.o:
text data bss dec hex filename
989 0 96 1085 43d cpucheck.o.before
989 0 96 1085 43d cpucheck.o.after
md5:
06634cfefb8438fa284ff903b4cafbce cpucheck.o.before.asm
06634cfefb8438fa284ff903b4cafbce cpucheck.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:11:07 +0000 (23:11 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/mcheck/mce_32.c
Before:
total: 10 errors, 3 warnings, 90 lines checked
After:
total: 0 errors, 3 warnings, 90 lines checked
No code changed:
arch/x86/kernel/cpu/mcheck/mce_32.o:
text data bss dec hex filename
287 42 12 341 155 mce_32.o.before
287 42 12 341 155 mce_32.o.after
md5:
fede5ff8e6bc3f62e8e691ca6c45eb39 mce_32.o.before.asm
fede5ff8e6bc3f62e8e691ca6c45eb39 mce_32.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:10:57 +0000 (23:10 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/mcheck/winchip.c
Before:
total: 4 errors, 0 warnings, 36 lines checked
After:
total: 0 errors, 0 warnings, 36 lines checked
No code changed:
arch/x86/kernel/cpu/mcheck/winchip.o:
text data bss dec hex filename
222 0 4 226 e2 winchip.o.before
222 0 4 226 e2 winchip.o.after
md5:
9caefa12256c5f7d71ef324f6d01a2d5 winchip.o.before.asm
9caefa12256c5f7d71ef324f6d01a2d5 winchip.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:10:49 +0000 (23:10 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/mcheck/non-fatal.c
Before:
total: 5 errors, 5 warnings, 91 lines checked
After:
total: 0 errors, 0 warnings, 94 lines checked
No code changed:
arch/x86/kernel/cpu/mcheck/non-fatal.o:
text data bss dec hex filename
441 80 4 525 20d non-fatal.o.before
441 80 4 525 20d non-fatal.o.after
md5:
137bc114d2020ad331d5e76444a2c7d3 non-fatal.o.before.asm
137bc114d2020ad331d5e76444a2c7d3 non-fatal.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:10:40 +0000 (23:10 +0100)]
x86: coding style fixes to arch/x86/kernel/vm86_32.c
Before:
total: 64 errors, 18 warnings, 840 lines checked
After:
total: 12 errors, 15 warnings, 844 lines checked
No code changed:
arch/x86/kernel/vm86_32.o:
text data bss dec hex filename
4449 28 132 4609 1201 vm86_32.o.before
4449 28 132 4609 1201 vm86_32.o.after
md5:
e4e51ed7689d17f04148554a3c6d5bb6 vm86_32.o.before.asm
e4e51ed7689d17f04148554a3c6d5bb6 vm86_32.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:10:33 +0000 (23:10 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/amd.c
Before:
total: 42 errors, 26 warnings, 350 lines checked
After:
total: 0 errors, 26 warnings, 352 lines checked
No code changed:
arch/x86/kernel/cpu/amd.o:
text data bss dec hex filename
1936 328 0 2264 8d8 amd.o.before
1936 328 0 2264 8d8 amd.o.after
md5:
873430a88faaf31bb4bbfe3a2a691e45 amd.o.before.asm
873430a88faaf31bb4bbfe3a2a691e45 amd.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:10:28 +0000 (23:10 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/transmeta.c
Before:
total: 13 errors, 3 warnings, 105 lines checked
After:
total: 0 errors, 3 warnings, 107 lines checked
No code changed:
arch/x86/kernel/cpu/transmeta.o:
text data bss dec hex filename
713 324 0 1037 40d transmeta.o.before
713 324 0 1037 40d transmeta.o.after
md5:
19abe2cafac617e1e2aadc4aa4e9923b transmeta.o.before.asm
19abe2cafac617e1e2aadc4aa4e9923b transmeta.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:10:23 +0000 (23:10 +0100)]
x86: coding style fixes to arch/x86/lib/memcpy_32.c
Before:
total: 2 errors, 0 warnings, 43 lines checked
After:
total: 0 errors, 0 warnings, 43 lines checked
No code changed:
arch/x86/lib/memcpy_32.o:
text data bss dec hex filename
164 0 0 164 a4 memcpy_32.o.before
164 0 0 164 a4 memcpy_32.o.after
md5:
d759f55621af27f51720b59c8ca96a4d memcpy_32.o.before.asm
d759f55621af27f51720b59c8ca96a4d memcpy_32.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:10:16 +0000 (23:10 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/mtrr/state.c
Before:
total: 6 errors, 5 warnings, 80 lines checked
After:
total: 0 errors, 4 warnings, 82 lines checked
No code changed:
arch/x86/kernel/cpu/mtrr/state.o:
text data bss dec hex filename
313 0 4 317 13d state.o.before
313 0 4 317 13d state.o.after
md5:
a0fbd61096205f9180f0bf45ed386d61 state.o.before.asm
a0fbd61096205f9180f0bf45ed386d61 state.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:10:06 +0000 (23:10 +0100)]
x86: coding style fixes to arch/x86/kernel/mca_32.c
Before:
total: 42 errors, 3 warnings, 469 lines checked
After:
total: 0 errors, 3 warnings, 479 lines checked
No code changed:
arch/x86/kernel/mca_32.o:
text data bss dec hex filename
1832 288 5 2125 84d mca_32.o.before
1832 288 5 2125 84d mca_32.o.after
md5:
c0e45e2b743ce26349eb07dc53e80b94 mca_32.o.before.asm
c0e45e2b743ce26349eb07dc53e80b94 mca_32.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:09:56 +0000 (23:09 +0100)]
x86: coding style fixes to arch/x86/lib/strstr_3
Before:
total: 3 errors, 0 warnings, 31 lines checked
After:
total: 0 errors, 0 warnings, 31 lines checked
No code changed:
arch/x86/lib/strstr_32.o:
text data bss dec hex filename
49 0 0 49 31 strstr_32.o.before
49 0 0 49 31 strstr_32.o.after
md5:
a224a7c4082e75a4f31f9d91dd34fe8e strstr_32.o.before.asm
a224a7c4082e75a4f31f9d91dd34fe8e strstr_32.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:09:50 +0000 (23:09 +0100)]
x86: coding style fixes to arch/x86/oprofile/init.c
Before:
total: 5 errors, 4 warnings, 48 lines checked
After:
total: 0 errors, 4 warnings, 49 lines checked
No code changed:
arch/x86/oprofile/init.o:
text data bss dec hex filename
42 0 0 42 2a init.o.before
42 0 0 42 2a init.o.after
md5:
74c94c315cfbf245aeba36eceac57e66 init.o.before.asm
74c94c315cfbf245aeba36eceac57e66 init.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:09:42 +0000 (23:09 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/intel.c
Before:
total: 37 errors, 16 warnings, 366 lines checked
After:
total: 0 errors, 15 warnings, 369 lines checked
No code changed:
arch/x86/kernel/cpu/intel.o:
text data bss dec hex filename
1534 452 0 1986 7c2 intel.o.before
1534 452 0 1986 7c2 intel.o.after
md5:
1ca348a06de6eb354c4b6ea715a57db5 intel.o.before.asm
1ca348a06de6eb354c4b6ea715a57db5 intel.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:09:34 +0000 (23:09 +0100)]
x86: coding style fixes to arch/x86/kernel/summit_32.c
Before:
total: 20 errors, 17 warnings, 180 lines checked
After:
total: 0 errors, 17 warnings, 183 lines checked
No code changed:
arch/x86/kernel/summit_32.o:
text data bss dec hex filename
932 192 0 1124 464 summit_32.o.before
932 192 0 1124 464 summit_32.o.after
md5:
217aa5f002f217e56ef9d8e5c74b60e0 summit_32.o.before.asm
217aa5f002f217e56ef9d8e5c74b60e0 summit_32.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Fri, 22 Feb 2008 22:09:26 +0000 (23:09 +0100)]
x86: coding style fix to arch/x86/boot/pm.c
Before:
total: 1 errors, 0 warnings, 178 lines checked
After:
total: 0 errors, 0 warnings, 178 lines checked
No code changed:
arch/x86/boot/pm.o:
text data bss dec hex filename
351 0 6 357 165 pm.o.before
351 0 6 357 165 pm.o.after
md5:
81de3616bceb29691bf835bb62a84ff1 pm.o.before.asm
81de3616bceb29691bf835bb62a84ff1 pm.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Yinghai Lu [Fri, 22 Feb 2008 21:37:26 +0000 (13:37 -0800)]
x86: insert_resorce for lapic addr after e820_reserve_resources
when comparing the e820 direct from BIOS, and the one by kexec:
BIOS-provided physical RAM map:
- BIOS-e820:
0000000000000000 -
0000000000097400 (usable)
+ BIOS-e820:
0000000000000100 -
0000000000097400 (usable)
BIOS-e820:
0000000000097400 -
00000000000a0000 (reserved)
BIOS-e820:
00000000000e6000 -
0000000000100000 (reserved)
BIOS-e820:
0000000000100000 -
00000000dffa0000 (usable)
- BIOS-e820:
00000000dffae000 -
00000000dffb0000 type 9
+ BIOS-e820:
00000000dffae000 -
00000000dffb0000 (reserved)
BIOS-e820:
00000000dffb0000 -
00000000dffbe000 (ACPI data)
BIOS-e820:
00000000dffbe000 -
00000000dfff0000 (ACPI NVS)
BIOS-e820:
00000000dfff0000 -
00000000e0000000 (reserved)
BIOS-e820:
00000000fec00000 -
00000000fec01000 (reserved)
- BIOS-e820:
00000000fee00000 -
00000000fee01000 (reserved)
=======> that is the local apic address... somewhere we lost it
BIOS-e820:
00000000ff700000 -
0000000100000000 (reserved)
BIOS-e820:
0000000100000000 -
0000004020000000 (usable)
found one entry about reserved is missing for the kernel by kexec.
it turns out init_apic_mappings is called before e820_reserve_resources
in setup_arch. but e820_reserve_resources is using request_resource.
it will not handle the conflicts.
there are three ways to fix it:
1. change request_resource in e820_reserve_resources to to insert_resource
2. move init_apic_mappings after e820_reserve_resources
3. use late_initcall to insert lapic resource.
this patch is using method 3, that is less intrusive.
in later version could consider to use method 1.
before patch
fed20000 -
ffffffff : PCI Bus #00
fee00000 -
fee00fff : Local APIC
fefff000 -
feffffff : pnp 00:09
ff700000 -
ffffffff : reserved
with patch will get map in first kernel
fed20000 -
ffffffff : PCI Bus #00
fee00000 -
fee00fff : Local APIC
fee00000 -
fee00fff : reserved
fefff000 -
feffffff : pnp 00:09
ff700000 -
ffffffff : reserved
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Yinghai Lu [Sat, 23 Feb 2008 01:07:16 +0000 (17:07 -0800)]
x86: clean up e820_reserve_resources on 64-bit
e820_resource_resources could use insert_resource instead of request_resource
also move code_resource, data_resource, bss_resource, and crashk_res
out of e820_reserve_resources.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Eric W. Biederman [Sat, 23 Feb 2008 08:58:20 +0000 (09:58 +0100)]
x86: introduce kernel/head32.c
Copy x86_64 and add a head32.c so we can start moving early
architecture initialization out of assembly.
[ Sam Ravnborg <sam@ravnborg.org>: updated it to x86 ]
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Yinghai Lu [Sun, 24 Feb 2008 05:48:42 +0000 (21:48 -0800)]
x86: make amd quad core 8 socket system not be clustered_box, #2
quad core 8 socket system will have apic id lifting.the apic id range could
be [4, 0x23]. and apic_is_clustered_box will think that need to three clusters
and that is large than 2. So it is treated as clustered_box.
and will get
Marking TSC unstable due to TSCs unsynchronized
even the CPUs have X86_FEATURE_CONSTANT_TSC set.
this patch will check if the cpu is from AMD.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Thu, 21 Feb 2008 04:18:40 +0000 (05:18 +0100)]
x86: de-macro start_thread()
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Thu, 21 Feb 2008 04:03:48 +0000 (05:03 +0100)]
x86: more cleanups in arch/x86/boot/compressed/misc.c
Before:
total: 7 errors, 8 warnings, 471 lines checked
After:
total: 5 errors, 5 warnings, 479 lines checked
( the rest cannot be eliminated due to zlib interface cruftiness. )
No code changed:
arch/x86/boot/compressed/misc.o:
text data bss dec hex filename
10716 8 2152 12876 324c misc.o.before
10716 8 2152 12876 324c misc.o.after
md5:
2c20c903986a3c9bca44306c6646067e misc.o.before.asm
2c20c903986a3c9bca44306c6646067e misc.o.after.asm
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Wed, 20 Feb 2008 23:19:10 +0000 (00:19 +0100)]
x86: coding style fixes to arch/x86/boot/compressed/misc.c
Fix lots of style errors and warnings.
Before:
total: 58 errors, 9 warnings, 469 lines checked
After:
total: 7 errors, 8 warnings, 471 lines checked
No code changed:
arch/x86/boot/compressed/misc.o:
text data bss dec hex filename
10716 8 2152 12876 324c misc.o.before
10716 8 2152 12876 324c misc.o.after
md5:
2c20c903986a3c9bca44306c6646067e misc.o.before.asm
2c20c903986a3c9bca44306c6646067e misc.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Wed, 20 Feb 2008 23:18:34 +0000 (00:18 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/umc.c
Before:
total: 3 errors, 1 warnings, 23 lines checked
After:
total: 0 errors, 0 warnings, 25 lines checked
No code changed:
arch/x86/kernel/cpu/umc.o:
text data bss dec hex filename
24 616 0 640 280 umc.o.before
24 616 0 640 280 umc.o.after
md5:
e8daa3eaed0963a0cdd2e83c2e1f9823 umc.o.before.asm
e8daa3eaed0963a0cdd2e83c2e1f9823 umc.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Wed, 20 Feb 2008 23:10:54 +0000 (00:10 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/mcheck/p6.c
Before:
total: 16 errors, 13 warnings, 122 lines checked
After:
total: 0 errors, 0 warnings, 122 lines checked
No code changed:
arch/x86/kernel/cpu/mcheck/p6.o:
text data bss dec hex filename
1082 0 8 1090 442 p6.o.before
1082 0 8 1090 442 p6.o.after
md5:
4e283fbc1b68240f1724d9725007d379 p6.o.before.asm
4e283fbc1b68240f1724d9725007d379 p6.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar [Thu, 21 Feb 2008 03:24:40 +0000 (04:24 +0100)]
x86: clean up include/asm-x86/processor.h
basic style cleanup to flush out years of neglect:
- consistent indentation
- whitespace fixes
- consistent comments
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Hiroshi Shimamoto [Wed, 20 Feb 2008 18:48:55 +0000 (10:48 -0800)]
x86: unify cpu/proc|_64.c
Now cpu/proc.c and cpu/proc_64.c are same.
So cpu/proc_64.c can be removed.
Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Hiroshi Shimamoto [Wed, 20 Feb 2008 18:48:02 +0000 (10:48 -0800)]
x86: cosmetic unification cpu/proc|_64.c
make cpu/proc.c and cpu/proc_64.c same.
Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Hiroshi Shimamoto [Wed, 20 Feb 2008 18:47:12 +0000 (10:47 -0800)]
x86: add power management line in /proc/cpuinfo
Change /proc/cpuinfo on 32-bit, it will look like on 64-bit.
'power management' line is added and power management information
will be printed at the line.
Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Hiroshi Shimamoto [Wed, 20 Feb 2008 18:45:29 +0000 (10:45 -0800)]
x86: make cpu/proc|_64.c similar
clean up for unification.
Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Hiroshi Shimamoto [Wed, 20 Feb 2008 18:41:51 +0000 (10:41 -0800)]
x86: split cpuinfo from setup_64.c into cpu/proc_64.c
x86 /proc/cpuinfo code can be unified.
This is the first step of unification.
Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 23:18:52 +0000 (00:18 +0100)]
x86: coding style fixes to arch/x86/mach-generic/bigsmp.c
arch/x86/mach-generic/bigsmp.o:
text data bss dec hex filename
1271 144 4 1419 58b bigsmp.o.before
1271 144 4 1419 58b bigsmp.o.after
md5:
b83aad375294c002c79b03c3a2e4be35 bigsmp.o.before.asm
b83aad375294c002c79b03c3a2e4be35 bigsmp.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 23:18:05 +0000 (00:18 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/nexgen.c
arch/x86/kernel/cpu/nexgen.o:
text data bss dec hex filename
111 316 0 427 1ab nexgen.o.before
111 316 0 427 1ab nexgen.o.after
md5:
e796efefea9ebc6644338bad226599ee nexgen.o.before.asm
e796efefea9ebc6644338bad226599ee nexgen.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 23:17:34 +0000 (00:17 +0100)]
x86: coding style fixes to arch/x86/mach-generic/summit.c
File is now error/warning free.
arch/x86/mach-generic/summit.o:
text data bss dec hex filename
1481 140 0 1621 655 summit.o.before
1481 140 0 1621 655 summit.o.after
md5:
7b7dc1cbd381af7b9393da989da5b0fd summit.o.before.asm
7b7dc1cbd381af7b9393da989da5b0fd summit.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 23:02:58 +0000 (00:02 +0100)]
x86: coding style fixes to arch/x86/mach-generic/default.c
Just whitespace cleanups.
total: 0 errors, 0 warnings, 26 lines checked
arch/x86/mach-generic/default.c has no obvious style problems and is ready for submission.
arch/x86/mach-generic/default.o:
text data bss dec hex filename
1036 140 0 1176 498 default.o.before
1036 140 0 1176 498 default.o.after
md5:
f283c53022c568f3162bbcde44f65762 default.o.before.asm
f283c53022c568f3162bbcde44f65762 default.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 22:57:17 +0000 (23:57 +0100)]
x86: coding style fixes to arch/x86/mach-generic/probe.c
The patch kills 20 errors and a few warnings.
arch/x86/mach-generic/probe.o:
text data bss dec hex filename
578 45 0 623 26f probe.o.before
578 45 0 623 26f probe.o.after
md5:
86eb1c3e3cf37f81d37bcd9a0c9f14ad probe.o.before.asm
86eb1c3e3cf37f81d37bcd9a0c9f14ad probe.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 22:51:27 +0000 (23:51 +0100)]
x86: coding style fixes to arch/x86/oprofile/op_model_athlon.c
The patch fixes 33 errors and a few warnings reported by checkpatch.pl
arch/x86/oprofile/op_model_athlon.o:
text data bss dec hex filename
1691 0 32 1723 6bb op_model_athlon.o.before
1691 0 32 1723 6bb op_model_athlon.o.after
md5:
c354bc2d7140e1e626c03390eddaa0a6 op_model_athlon.o.before.asm
c354bc2d7140e1e626c03390eddaa0a6 op_model_athlon.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 22:43:25 +0000 (23:43 +0100)]
x86: coding style fixes to arch/x86/oprofile/op_model_ppro.c
no code changed:
arch/x86/oprofile/op_model_ppro.o:
text data bss dec hex filename
1765 0 16 1781 6f5 op_model_ppro.o.before
1765 0 16 1781 6f5 op_model_ppro.o.after
md5:
71c7f68d2197d686e3d1121bc18a6b6e op_model_ppro.o.before.asm
71c7f68d2197d686e3d1121bc18a6b6e op_model_ppro.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 22:34:02 +0000 (23:34 +0100)]
x86: coding style fixes to arch/x86/kernel/x8664_ksyms_64.c
arch/x86/kernel/x8664_ksyms_64.o:
text data bss dec hex filename
0 0 0 0 0 x8664_ksyms_64.o.before
0 0 0 0 0 x8664_ksyms_64.o.after
md5:
2dd2d82a2b440a3c29b9ac9ce3221994 x8664_ksyms_64.o.before.asm
2dd2d82a2b440a3c29b9ac9ce3221994 x8664_ksyms_64.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 22:20:45 +0000 (23:20 +0100)]
x86: coding style fixes to arch/x86/kernel/cpu/mcheck/p5.c
The patch make the file errors free.
Only 4 "WARNING: line over 80 characters" left.
arch/x86/kernel/cpu/mcheck/p5.o:
text data bss dec hex filename
452 0 4 456 1c8 p5.o.before
452 0 4 456 1c8 p5.o.after
md5:
50c945ef150aa95bf0481cc3e1dc3315 p5.o.before.asm
50c945ef150aa95bf0481cc3e1dc3315 p5.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 22:09:59 +0000 (23:09 +0100)]
x86: coding style fixes to arch/x86/lib/string_32.c
The patch kills 45 errors and a few warnings.
The file is now error/warning free:
total: 0 errors, 0 warnings, 237 lines checked
arch/x86/lib/string_32.c has no obvious style problems and is ready for submission.
no code changed:
arch/x86/lib/string_32.o:
text data bss dec hex filename
639 0 0 639 27f string_32.o.before
639 0 0 639 27f string_32.o.after
md5:
2db1c48187cf5113bb595153ee1fc73d string_32.o.before.asm
2db1c48187cf5113bb595153ee1fc73d string_32.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 20:02:16 +0000 (21:02 +0100)]
x86: coding style fixes to arch/x86/kernel/syscall_64.c
After the patch:
total: 0 errors, 1 warnings, 29 lines checked
no code changed:
arch/x86/kernel/syscall_64.o:
text data bss dec hex filename
2304 0 0 2304 900 syscall_64.o.before
2304 0 0 2304 900 syscall_64.o.after
md5:
0fdbb875cde8892296585226b92f4333 syscall_64.o.before.asm
0fdbb875cde8892296585226b92f4333 syscall_64.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Paolo Ciarrocchi [Tue, 19 Feb 2008 19:53:38 +0000 (20:53 +0100)]
x86: coding style fixes to arch/x86/lib/memmove_64.c
After the patch:
total: 0 errors, 0 warnings, 21 lines checked
no code changed:
arch/x86/lib/memmove_64.o:
text data bss dec hex filename
116 0 0 116 74 memmove_64.o.before
116 0 0 116 74 memmove_64.o.after
md5:
2d6b0951cafb86a11a222cdd70f6104f memmove_64.o.before.asm
2d6b0951cafb86a11a222cdd70f6104f memmove_64.o.after.asm
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ian Campbell [Tue, 19 Feb 2008 11:12:30 +0000 (11:12 +0000)]
x86: boot protocol updates
Also update field names to simply payload_{offset,length} so as to not rule
out uncompressed images.
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: virtualization@lists.linux-foundation.org
Signed-off-by: Ingo Molnar <mingo@elte.hu>
David P. Reed [Mon, 18 Feb 2008 18:58:34 +0000 (13:58 -0500)]
x86: define outb_pic and inb_pic to stop using outb_p and inb_p
x86: define outb_pic and inb_pic to stop using outb_p and inb_p
The delay between io port accesses to the PIC is now defined using outb_pic
and inb_pic. This fix provides the next step, using udelay(2) to define the
*PIC specific* timing requirements, rather than on bus-oriented timing, which
is not well calibrated.
Again, the primary reason for fixing this is to use proper delay strategy,
and in particular to fix crashes that can result from using port 80 writes
on machines that have resources on port 80, such as the ENE chips used by Quanta
in latops it designs and sells to, e.g. HP.
Signed-off-by: David P. Reed <dpreed@reed.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ian Campbell [Sun, 17 Feb 2008 19:09:42 +0000 (19:09 +0000)]
x86: reduce arch/x86/mm/ioremap.o size
> Don't we have a special section for page-aligned data so it doesn't
> waste most of two pages?
We have .bss.page_aligned and it seems appropriate to use it.
text data bss dec hex filename
- 3388 8236 4 11628 2d6c ../build-32/arch/x86/mm/ioremap.o
+ 3388 48 4100 7536 1d70 ../build-32/arch/x86/mm/ioremap.o
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Matt Mackall <mpm@selenic.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Huang Ying <ying.huang@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Ingo Molnar [Mon, 18 Feb 2008 02:30:47 +0000 (03:30 +0100)]
x86: more coding style fixes in centaur.c
no code changed:
arch/x86/kernel/cpu/centaur.o:
text data bss dec hex filename
1031 324 0 1355 54b centaur.o.before
1031 324 0 1355 54b centaur.o.after
md5:
4f306a7f980b58eb69c4bdcfcde565f1 centaur.o.before.asm
4f306a7f980b58eb69c4bdcfcde565f1 centaur.o.after.asm
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Paolo Ciarrocchi [Sun, 17 Feb 2008 22:30:23 +0000 (23:30 +0100)]
x86: coding style fixes for arch/x86/kernel/cpu/centaur.c
Kills more than 150 errors/warnings
Signed-off-by: Paolo Ciarrocchi <paolo.ciarrocchi@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Ingo Molnar [Mon, 18 Feb 2008 07:53:56 +0000 (08:53 +0100)]
x86: clean up mmx_32.c
checkpatch.pl --file cleanups:
before:
total: 74 errors, 3 warnings, 386 lines checked
after:
total: 0 errors, 0 warnings, 377 lines checked
no code changed:
arch/x86/lib/mmx_32.o:
text data bss dec hex filename
1323 0 8 1331 533 mmx_32.o.before
1323 0 8 1331 533 mmx_32.o.after
md5:
4cc39f1017dc40a5ebf02ce0ff7312bc mmx_32.o.before.asm
4cc39f1017dc40a5ebf02ce0ff7312bc mmx_32.o.after.asm
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
David P. Reed [Sun, 17 Feb 2008 21:56:39 +0000 (16:56 -0500)]
x86: fix cmos read and write to not use inb_p and outb_p
fix code to access CMOS rtc registers so that it does not use inb_p and
outb_p routines, which are deprecated. Extensive research on all known
CMOS RTC chipset timing shows that there is no need for a delay in
accessing the registers of these chips even on old machines. These chipa
are never on an expansion bus, but have always been "motherboard"
resources, either in the processor chipset or explicitly on the
motherboard, and they are not part of the ISA/LPC or PCI buses, so
delays should not be based on bus timing. The reason to fix it:
1) port 80 writes often hang some laptops that use ENE EC chipsets,
esp. those designed and manufactured by Quanta for HP;
2) RTC accesses are timing sensitive, and extra microseconds may matter;
3) the new "io_delay" function is calibrated by expansion bus timing needs,
thus is not appropriate for access to CMOS rtc registers.
Signed-off-by: David P. Reed <dpreed@reed.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Petazzoni [Fri, 15 Feb 2008 11:00:23 +0000 (12:00 +0100)]
x86: use ELF section to list CPU vendor specific code
Replace the hardcoded list of initialization functions for each CPU
vendor by a list in an ELF section, which is read at initialization in
arch/x86/kernel/cpu/cpu.c to fill the cpu_devs[] array. The ELF
section, named .x86cpuvendor.init, is reclaimed after boot, and
contains entries of type "struct cpu_vendor_dev" which associates a
vendor number with a pointer to a "struct cpu_dev" structure.
This first modification allows to remove all the VENDOR_init_cpu()
functions.
This patch also removes the hardcoded calls to early_init_amd() and
early_init_intel(). Instead, we add a "c_early_init" member to the
cpu_dev structure, which is then called if not NULL by the generic CPU
initialization code. Unfortunately, in early_cpu_detect(), this_cpu is
not yet set, so we have to use the cpu_devs[] array directly.
This patch is part of the Linux Tiny project, and is needed for
further patch that will allow to disable compilation of unused CPU
support code.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Glauber Costa [Mon, 11 Feb 2008 19:16:05 +0000 (17:16 -0200)]
x86, vsmp: use the paravirt helpers
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ravikiran Thirumalai <kiran@scalemp.com>
Acked-by: Shai Fultheim <shai@scalemp.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Glauber Costa [Mon, 11 Feb 2008 19:16:04 +0000 (17:16 -0200)]
x86: introduce vsmp paravirt helpers
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ravikiran Thirumalai <kiran@scalemp.com>
Acked-by: Shai Fultheim <shai@scalemp.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Glauber Costa [Mon, 11 Feb 2008 19:16:03 +0000 (17:16 -0200)]
x86: call vsmp_init explicitly
It becomes to early for ioremap, so we use early_ioremap
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ravikiran Thirumalai <kiran@scalemp.com>
Acked-by: Shai Fultheim <shai@scalemp.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Glauber Costa [Mon, 11 Feb 2008 19:16:02 +0000 (17:16 -0200)]
x86: make vsmp_init void, instead of static int
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ravikiran Thirumalai <kiran@scalemp.com>
Acked-by: Shai Fultheim <shai@scalemp.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Glauber Costa [Mon, 11 Feb 2008 19:16:01 +0000 (17:16 -0200)]
x86: change vsmp compile dependency
Change Makefile so vsmp_64.o object is dependent
on PARAVIRT, rather than X86_VSMP
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ravikiran Thirumalai <kiran@scalemp.com>
Acked-by: Shai Fultheim <shai@scalemp.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Robert Richter [Wed, 13 Feb 2008 15:19:36 +0000 (16:19 +0100)]
x86: apic: extended interrupt LVT support for AMD
Signed-off-by: Robert Richter <robert.richter@amd.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Yinghai Lu [Sun, 17 Feb 2008 07:02:03 +0000 (23:02 -0800)]
x86: remove never used nodenumer in pda
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Yinghai Lu [Sun, 17 Feb 2008 07:00:22 +0000 (23:00 -0800)]
x86: get apic_id later in acpi_numa_processor_affinity_init
we don't need get that so early.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Arnaldo Carvalho de Melo [Thu, 7 Feb 2008 23:03:04 +0000 (21:03 -0200)]
x86: reducing debuginfo size by removing unneeded includes
I found it strange that the struct sk_buff definition was found
inside the DWARF debugging sections in the generated object, so I verified
and found that there is no need for the files that bring struct sk_buff
definition into this file and verified also that sk_buff is not brought
in indirectly too, thru other headers.
I went on and removed many other unneeded includes and the end
result is:
[acme@doppio net-2.6]$ l /tmp/sys_ia32.o.before /tmp/sys_ia32.o.after
-rw-rw-r-- 1 acme acme 185240 2008-02-06 19:19 /tmp/sys_ia32.o.after
-rw-rw-r-- 1 acme acme 248328 2008-02-06 19:00 /tmp/sys_ia32.o.before
Almost 64KB only on this object file!
There were no other side effects from this change:
[acme@doppio net-2.6]$ objcopy -j "text" /tmp/sys_ia32.o.before /tmp/text.before
[acme@doppio net-2.6]$ objcopy -j "text" /tmp/sys_ia32.o.after /tmp/text.after
[acme@doppio net-2.6]$ md5sum /tmp/text.before /tmp/text.after
b7ac9b17942add68494e698e4f965d36 /tmp/text.before
b7ac9b17942add68494e698e4f965d36 /tmp/text.after
One of the complaints about using tools such as systemtap is
that one has to install the huge kernel-debuginfo package:
[acme@doppio net-2.6]$ rpm -q --qf "%{size}\n" kernel-rt-debuginfo
471737710
543867594
[acme@doppio net-2.6]$
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Ingo Molnar [Sun, 17 Feb 2008 19:06:36 +0000 (20:06 +0100)]
x86: bump image header to version 2.08.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Ian Campbell [Sun, 17 Feb 2008 19:06:35 +0000 (20:06 +0100)]
x86: add a crc32 checksum to the kernel image.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Ian Campbell [Wed, 13 Feb 2008 20:54:58 +0000 (20:54 +0000)]
x86: use ELF format in compressed images.
Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
Cc: Ian Campbell <ijc@hellion.org.uk>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: virtualization@lists.linux-foundation.org
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: virtualization@lists.linux-foundation.org
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:10:03 +0000 (12:10 -0800)]
x86: define DEBUG_SIG in signal_64.c
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:10:02 +0000 (12:10 -0800)]
x86: Unify argument names in signal_32|64.c
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:10:00 +0000 (12:10 -0800)]
x86: move struct definitions to unifed sigframe.h
[ tglx@linutronix.de: cleanup the other structs as well ]
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:10:00 +0000 (12:10 -0800)]
x86: use sizeof(long) to unify signal_32|64.c
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:09:59 +0000 (12:09 -0800)]
x86: Use FIX_EFLAGS define in X86_64
[ tglx@linutronix.de: simplified ]
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:09:58 +0000 (12:09 -0800)]
x86: reduce trivial style differences in signal_32|64.c
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:09:57 +0000 (12:09 -0800)]
x86: regparm(3) is mandatory, no need to annotate
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:09:57 +0000 (12:09 -0800)]
x86: make X86_32 pt_regs members unsigned long
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Harvey Harrison [Fri, 8 Feb 2008 20:09:56 +0000 (12:09 -0800)]
x86: change most X86_32 pt_regs members to unsigned long
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Andi Kleen [Sat, 9 Feb 2008 15:17:01 +0000 (16:17 +0100)]
x86: enable ACPI extended century handling for 32bit
The extended century readout does not solve the year 2038 problem on
32bit!
v2: Fix compilation on !ACPI, pointed out by tglx
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Andi Kleen [Sat, 9 Feb 2008 15:16:59 +0000 (16:16 +0100)]
x86: add warning when RTC clock reports binary
We assume that the RTC clock is BCD, so print a warning if it claims
to be binary.
[ tglx@linutronix.de: changed to WARN_ON - we want to know that!
If no one reports it we can remove the complete if (RTC_ALWAYS_BCD)
magic, which has RTC_ALWAYS_BCD defined to 1 since Linux 1.0 ... ]
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Andi Kleen [Sat, 9 Feb 2008 15:16:58 +0000 (16:16 +0100)]
x86: use year 2000 offset for cmos clock
We know it is already after 2000. Use the year 2000 offset for both 32
and 64 bit, which removes ifdefs and the 1970 magic.
[ tglx@linutronix.de: remove 1970 magic, replace bogus commit message ]
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Yinghai Lu [Thu, 17 Apr 2008 15:40:45 +0000 (17:40 +0200)]
x86: clean up find_e820_area(), 64-bit
Change size to unsigned long, becase caller and user all used unsigned long.
Also make bad_addr take an alignment parameter.
Signed-off-by: Yinghai Lu <yinghai.lu@sun.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Andi Kleen [Thu, 17 Apr 2008 15:40:45 +0000 (17:40 +0200)]
x86: do kernel direct mapping at boot using GB pages
The AMD Fam10h CPUs support new Gigabyte page table entry for
mapping 1GB at a time. Use this for the kernel direct mapping.
Only done for 64bit because i386 does not support GB page tables.
This only applies to the data portion of the direct mapping; the
kernel text mapping stays with 2MB pages because the AMD Fam10h
microarchitecture does not support GB ITLBs and AMD recommends
against using GB mappings for code.
Can be disabled with disable_gbpages on the kernel command line
[ tglx@linutronix.de: simplify enable code ]
[ Yinghai Lu <yinghai.lu@sun.com>: boot fix on 256 GB RAM ]
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Ingo Molnar [Thu, 17 Apr 2008 15:40:45 +0000 (17:40 +0200)]
x86: add gbpages switches
These new controls toggle experimental support for a new CPU feature,
the straightforward extension of largepages from the pmd level to the
pud level, which allows 1GB (kernel) TLBs instead of 2MB TLBs.
Turn it off by default, as this code has not been tested well enough yet.
Use the CONFIG_DIRECT_GBPAGES=y .config option or gbpages on the
boot line can be used to enable it. If enabled in the .config then
nogbpages boot option disables it.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>