Messages in this thread | | | Date | Mon, 11 Nov 2013 18:41:56 +0800 | Subject | Re: kernel BUG at kernel/kallsyms.c:222! | From | Ming Lei <> |
| |
Hi,
On Mon, Nov 11, 2013 at 5:57 PM, Ming Lei <tom.leiming@gmail.com> wrote: > Hi, > > On Mon, Nov 11, 2013 at 4:37 PM, Axel Lin <axel.lin@ingics.com> wrote: >> 2013/11/11 Ming Lei <tom.leiming@gmail.com>: >> >> Hi Ming, >> >> commit f6537f2f "scripts/kallsyms: filter symbols not in kernel address space", >> uses CONFIG_PAGE_OFFSET as kernel_start_addr. >> However, for !CONFIG_MMU case we have : >> PAGE_OFFSET != CONFIG_PAGE_OFFSET. > > Yes, it is the cause, and strictly speaking, commit f6537f2f is wrong, > but triggered with bogus CONFIG_PAGE_OFFSET if !CONFIG_MMU. > > We can fix it either by Rusty's patch or removing the bogus > CONFIG_PAGE_OFFSET for !CONFIG_MMU.
Rusty, maybe we need revert commit f6537f2f "scripts/kallsyms: filter symbols not in kernel address space", since CONFIG_PAGE_OFFSET may be bogus on !MMU or not defined on ARCHs(most of 64bit arch, no regression report because scripts/kallsyms may get zero kernel_start_addr)
As I thought of, another way for fixing original problem is to define a RO global variable in kernel and set its value as PAGE_OFFSET, then let scripts/kallsyms use it as kernel start address, or do you other suggestions?
Thanks, -- Ming Lei
| |