Error in save_stack_trace() on x86_64?

Vegard Nossum
2008-05-11T13:09:38Z

Hi,

I am having a problem with v2.6.26-rc1 on x86_64. It seems that
save_stack_trace() is not able to follow page fault boundaries, since
all my saved traces look like this:

RIP: 0010:[<ffffffff8039b004>] [<ffffffff8039b004>] add_uevent_var+0xb4/0x160
...
[<ffffffff80221f97>] kmemcheck_read+0x127/0x1e0
[<ffffffff80222269>] kmemcheck_access+0x179/0x1d0
[<ffffffff8022231f>] kmemcheck_fault+0x5f/0x80
[<ffffffff8061cd1e>] do_page_fault+0x4de/0x8d0
[<ffffffff8061a7d9>] error_exit+0x0/0x51
[<ffffffffffffffff>] 0xffffffffffffffff

I have this in my .config:

CONFIG_STACKTRACE_SUPPORT=y
CONFIG_STACKTRACE=y
...
CONFIG_FRAME_POINTER=y
...
CONFIG_DEBUG_INFO=y

On 32-bit, I am able to see the calls leading up to the page fault as
well. Did I miss something here?