Misinterpreted FILE note for 32bit core files in readelf
mjw at redhat.com
Thu Apr 10 11:55:47 UTC 2014
On Thu, 2014-04-10 at 10:42 +0200, Markus Engel wrote:
> For 32bit core files, the FILE note is misinterpreted (tested in Version
> 0.158 and git with readelf being a 64 and 32 bit binary), here is an
> example output:
> CORE 72 FILE
> 2 files:
> 00000000-080eb000 36d67b6ccd38000 135180288 gel/z/a.out
> Not enough data in NT_FILE note.
> In readelf.c:handle_file_note, count and page_size are already
> interpreted as 64 bit values, which advances ptr by 2*8 instead of 2*4.
> I traced this further to buf_read_ulong, where u has a size of 8, which
> is given to convert, returning data + 8.
> Besides tracing these things I don't know how to fix it, mostly because
> I don't know where exactly things go an unintended way :)
Thanks for the report. I can confirm that a core file list generated by
the 3.13 linux kernel on x86_64 looks fine with eu-readelf -n, but looks
bad, giving "Not enough data in NT_FILE note." on i686. I'll try to
figure out where things go wrong.
More information about the elfutils-devel