[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0280367f-3839-acad-799a-ecc2756c1846@redhat.com>
Date: Thu, 30 Jul 2020 14:45:46 +0100
From: Julien Thierry <jthierry@...hat.com>
To: peterz@...radead.org
Cc: linux-kernel@...r.kernel.org, jpoimboe@...hat.com,
mhelsley@...are.com, mbenes@...e.cz
Subject: Re: [PATCH v3 4/4] objtool: orc_gen: Move orc_entry out of
instruction structure
On 7/30/20 2:33 PM, peterz@...radead.org wrote:
> On Thu, Jul 30, 2020 at 01:40:48PM +0100, Julien Thierry wrote:
>>
>>
>> On 7/30/20 11:03 AM, peterz@...radead.org wrote:
>>> On Thu, Jul 30, 2020 at 10:41:43AM +0100, Julien Thierry wrote:
>>>> One orc_entry is associated with each instruction in the object file,
>>>> but having the orc_entry contained by the instruction structure forces
>>>> architectures not implementing the orc subcommands to provide a dummy
>>>> definition of the orc_entry.
>
>> I guess I forgot about the usecase of running objtool on vmlinux...
>
> Right, and LTO builds will even do ORC at that level.
>
>> On a kernel build for x86_64 defconfig, the difference in time seems to be
>> withing the noise.
>
> Good.
>
>> But I agree the proposed code is not ideal and on the other we've tried
>> avoiding #ifdef in the code. Ideally I'd have an empty orc_entry definition
>> when SUBCMD_ORC is not implemented.
>>
>> Would you have a suggested approach to do that?
>
> How ugly is having that:
>
> struct orc_entry { };
>
> ?
Not sure I am understanding the suggestion. Without #ifdef this will
conflict with the definition in <asm/orc_types.h> for x86. Or every arch
needs to provide their own <asm/orc_types.h> and definition of struct
orc_entry, even if they don't implement the orc subcommand.
Which would be preferable? #ifdef? or arch provided definition? (or
something I have not thought of)
--
Julien Thierry
Powered by blists - more mailing lists