From: Will Deacon <will.deacon@arm.com>
To: Andy Lutomirski <luto@amacapital.net>
Cc: Adrian Hunter <adrian.hunter@intel.com>,
"acme@redhat.com" <acme@redhat.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Kristina Martsenko <Kristina.Martsenko@arm.com>,
Vladimir Nikulichev <nvs@tbricks.com>,
Namhyung Kim <namhyung@kernel.org>
Subject: Re: [PATCH] perf tools: don't adjust symbols in vDSO
Date: Sat, 27 Jun 2015 10:03:54 +0100 [thread overview]
Message-ID: <20150627090354.GA29944@arm.com> (raw)
In-Reply-To: <CALCETrU6zSwVSNhFFk7KGmJ6tC_K_70dYC-qB21GdyovAyvdFA@mail.gmail.com>
On Fri, Jun 26, 2015 at 04:44:14PM +0100, Andy Lutomirski wrote:
> On Fri, Jun 26, 2015 at 8:29 AM, Will Deacon <will.deacon@arm.com> wrote:
> > On Fri, Jun 26, 2015 at 04:18:59PM +0100, Andy Lutomirski wrote:
> >> On Fri, Jun 26, 2015 at 7:58 AM, Will Deacon <will.deacon@arm.com> wrote:
> >> > (CC'ing Andy, since the removal of VDSO_PRELINK is user-visible here)
> >>
> >> What arch is this? I removed VDSO_PRELINK entirely from x86 a while
> >> back, and now x86's vdso has a base address of 0 before relocations,
> >> and everything works just fine.
> >
> > I think this is only x86, since it's the removal of VDSO_PRELINK that
> > has changed things.
> >
> >> (Except one ancient glibc, which fails if the vdso is relocated at
> >> all. We no longer support that version of glibc unless you turn off
> >> the vdso entirely.)
> >
> > The problem is that perf expects to objdump portions of the vdso using
> > --start-address=foo and --stop-address=bar, but these addresses have changed
> > from being offset by VDSO_PRELINK to 0x0.
> >
> > Thankfully, it looks like perf tool was always broken in this regard, but
> > I figured you might like to be aware of the issue. I guess perf just needs
> > to add on the load address of the vdso .text section to its relative
> > addresses before passing them to objdump.
> >
>
> Given that we've randomized the vdso load address on x86 for years, I
> don't see how perf ever worked here. There was a brief period during
> which we actually loaded the vdso at the address VDSO_PRELINK, but
> that's long gone.
The symbol resolution works by applying the vdso symbol offset to the
[vdso] vma base, but perf annotate had indeed been broken the whole time.
> Is there a patch I should be looking at?
I've cooked something, so I'll send it out now.
Will
next prev parent reply other threads:[~2015-06-27 9:04 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-24 16:17 Will Deacon
2015-06-25 13:32 ` Adrian Hunter
2015-06-26 12:23 ` Will Deacon
2015-06-26 13:55 ` Adrian Hunter
2015-06-26 14:58 ` Will Deacon
2015-06-26 15:18 ` Andy Lutomirski
2015-06-26 15:29 ` Will Deacon
2015-06-26 15:44 ` Andy Lutomirski
2015-06-27 9:03 ` Will Deacon [this message]
2015-06-26 15:35 ` Adrian Hunter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150627090354.GA29944@arm.com \
--to=will.deacon@arm.com \
--cc=Kristina.Martsenko@arm.com \
--cc=acme@redhat.com \
--cc=adrian.hunter@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@amacapital.net \
--cc=namhyung@kernel.org \
--cc=nvs@tbricks.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome