lkml.org 
[lkml]   [2014]   [Jan]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [GIT PULL] x86/kaslr for v3.14

* Linus Torvalds <torvalds@linux-foundation.org> wrote:

> On Mon, Jan 20, 2014 at 2:54 PM, Linus Torvalds
> <torvalds@linux-foundation.org> wrote:
> > So I pulled this, but one question:
>
> .. oh, and since I decided to test it, and was looking for problems:
> enabling kaslr breaks "perf". The *profile* looks fine, but the
> disassembly doesn't work.
>
> I'm not entirely surprised. I decided I wanted to test it for a
> reason, after all. So it's not unexpected, but perhaps people hadn't
> thought about it, and clearly hadn't tested it.
>
> Kernel modules disassemble fine, so clearly perf knows about code
> that moves around, but apparently it gets surprised when the core
> vmlinux file disassembly doesn't match addresses.

Hm, live annotation of the kernel image is a relatively new perf
feature, and KASLR predated that (by years) - which would at least in
part explain why it went unnoticed. (Although it does not excuse the
lack of testing.)

I've Cc:-ed Adrian Hunter, the author of the /proc/kcore annotation
feature.

Adrian: enabling x86 KASLR in Linus's latestest kernel via
CONFIG_RANDOMIZE_BASE=y [this is also present in the -tip tree] breaks
/proc/kcore annotation, because the kernel image position is now per
bootup randomized and perf's annotation code gets surprised by that.

Thanks,

Ingo


\
 
 \ /
  Last update: 2014-01-21 11:41    [W:0.181 / U:0.024 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site