Re: [PATCH 02/18] objtool: Support data symbol printing

From: Peter Zijlstra
Date: Thu Apr 14 2022 - 03:06:03 EST


On Wed, Apr 13, 2022 at 04:19:37PM -0700, Josh Poimboeuf wrote:

> @@ -34,8 +37,8 @@ static inline char *offstr(struct section *sec, unsigned long offset)
>
> str = malloc(strlen(name) + 20);
>
> - if (func)
> - sprintf(str, "%s()+0x%lx", name, name_off);
> + if (sym)
> + sprintf(str, "%s%s+0x%lx", name, is_text ? "()" : "", name_off);
> else
> sprintf(str, "%s+0x%lx", name, name_off);

So I like the patch, except that "()" thing is something where we differ
from the kernel's %ps format and I've cursed it a number of times
because I then have to manually edit (iow remove) things when pasting it
in various scripts etc..

That said, it totally makes sense to differentiate between a text and
data symbol this way :/