Re: [PATCH] perf symbol: Look for ImageBase in PE file to compute .text offset

From: Rémi Bernon
Date: Mon Sep 13 2021 - 16:38:02 EST

On 9/13/21 9:24 PM, Arnaldo Carvalho de Melo wrote:
Em Sun, Sep 12, 2021 at 10:25:26AM +0200, Rémi Bernon escreveu:
On 9/9/21 10:27 PM, Arnaldo Carvalho de Melo wrote:
Em Thu, Sep 09, 2021 at 09:26:36PM +0200, Remi Bernon escreveu:
Instead of using the file offset in the debug file.

This fixes a regression from 00a3423492bc90be99e529a64f13fdd80a0e8c0a,
causing incorrect symbol resolution when debug file have been stripped
from non-debug sections (in which case its .text section is empty and
doesn't have any file position).

The debug files could also be created with a different file alignment,
and have different file positions from the mmap-ed binary, or have the
section reordered.

This instead looks for the file image base, using the corresponding bfd
*ABS* symbols. As PE symbols only have 4 bytes, it also needs to keep
.text section vma high bits.

I added a:

Fixes: 00a3423492bc90be ("perf symbols: Make dso__load_bfd_symbols() load PE files from debug cache only")

To help stable@xxxxxxxxxx to pick it, its on my local tree now.

It would be great to get a:

Reviewed-by: Nicholas Fraser <nfraser@xxxxxxxxxxxxxxx>

Can we have it, please?

Well, Nicholas doesn't work with us anymore. I've reached them separately
but didn't get any answer so I'm thinking they may not be interested.

No problem, its already upstream now.


- Arnaldo

Awesome, thanks!
Rémi Bernon <rbernon@xxxxxxxxxxxxxxx>