Re: [tip:core/stacktrace] symbols, stacktrace: look up init symbols after module symbols

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thursday 19 March 2009 22:24:35 Ingo Molnar wrote:
>   a2da405: module: Don't report discarded init pages as kernel text.
> 
> The reason is this check added to core_kernel_text():
> 
> -       if (addr >= (unsigned long)_sinittext &&
> +       if (system_state == SYSTEM_BOOTING &&
> +           addr >= (unsigned long)_sinittext &&
>             addr <= (unsigned long)_einittext)
>                 return 1;
> 
> This will discard inittext symbols even though their symbol table
> is still present and even though stacktraces done while the system
> was booting up might still be relevant.
> 
> To not reintroduce the (not well-specified) bug addressed in that
> commit, first do a module symbols lookup, then a final init-symbols
> lookup.
> 
> This will work fine on architectures that have separate address
> spaces for modules (such as x86) - and should not crash any other
> architectures either.

Returning "1" all the time won't crash them either, AFAICT, but it's still
misleading if kernel_text_address() isn't reliable.  It makes me
uncomfortable.

Does every kernel_text_address() caller want this behavior, or should we
have a was_ever_text_address()?

Rusty.
--
To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Stable Commits]     [Linux Stable Kernel]     [Linux Kernel]     [Linux USB Devel]     [Linux Video &Media]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux