diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-07-11 15:09:15 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-11 15:09:15 +0200 |
commit | 3d0decc4f49e8645cd6369b02ed076bebd3d61ad (patch) | |
tree | e5777e66ce903f19a06fb429516b2960f261b2a1 /arch/x86/kernel/cpu/centaur_64.c | |
parent | f361a450bf1ad14e2b003217dbf3958638631265 (diff) |
x86: fix tsc unification buglet with ftrace and stackprotector
Yinghai Lu reported crashes on 64-bit x86:
BUG: unable to handle kernel NULL pointer dereference at 0000000000000000
IP: [<ffffffff80253b17>] hrtick_start_fair+0x89/0x173
[...]
And with a long session of debugging and a lot of difficulty, tracked it down
to this commit:
--------------->
8fbbc4b45ce3e4c0eeb15004c79c72b6896a79c2 is first bad commit
commit 8fbbc4b45ce3e4c0eeb15004c79c72b6896a79c2
Author: Alok Kataria <akataria@vmware.com>
Date: Tue Jul 1 11:43:34 2008 -0700
x86: merge tsc_init and clocksource code
<--------------
The problem is that the TSC unification missed these Makefile rules
in arch/x86/kernel/Makefile:
# Do not profile debug and lowlevel utilities
CFLAGS_REMOVE_tsc_64.o = -pg
CFLAGS_REMOVE_tsc_32.o = -pg
...
CFLAGS_tsc_64.o := $(nostackp)
...
which rules make sure that various instrumentation and debugging
facilities are disabled for code that might end up in a VDSO - such as
the TSC code.
Reported-and-bisected-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Conflicts:
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/cpu/centaur_64.c')
0 files changed, 0 insertions, 0 deletions