Re: [backport PATCH 1/2] tools perf: Fix compilation error with new binutils

From: Quentin Monnet
Date: Tue Apr 18 2023 - 12:43:15 EST


2023-04-17 10:14 UTC-0700 ~ Ian Rogers <irogers@xxxxxxxxxx>
> On Mon, Apr 17, 2023 at 5:30 AM Anders Roxell <anders.roxell@xxxxxxxxxx> wrote:
>>
>> From: Andres Freund <andres@xxxxxxxxxxx>
>>
>> binutils changed the signature of init_disassemble_info(), which now causes
>> compilation failures for tools/perf/util/annotate.c, e.g. on debian
>> unstable.
>
> Thanks, I believe the compilation issue may well be resolved by:
> https://lore.kernel.org/lkml/20230311065753.3012826-8-irogers@xxxxxxxxxx/
> where binutils is made opt-in rather than opt-out.

Hi,
These commits are to make it possible to build against recent binutils,
without having to leave it out at compile time, so as I understand they
address a different issue?

>
>> Relevant binutils commit:
>>
>> https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=60a3da00bd5407f07
>>
>> Wire up the feature test and switch to init_disassemble_info_compat(),
>> which were introduced in prior commits, fixing the compilation failure.
>
> I was kind of surprised to see no version check ifdef. Is
> init_disassemble_info_compat is supported in older binutils?

It is not part of binutils, it was introduced in commit a45b3d692623
("tools include: add dis-asm-compat.h to handle version differences"),
which should likely be backported alongside these ones if it hasn't been
already. Possibly the others from the same series [0], as well?

I think all 5 patches from Andres' series were backported to 5.15 [1].

[0]
https://lore.kernel.org/all/20220703212551.1114923-1-andres@xxxxxxxxxxx/t/#m999a44663894e235b523ffc41ce87e956019ea72
[1]
https://lore.kernel.org/all/e6e2df31-6327-f2ad-3049-0cbfa214ae5c@xxxxxxxxxx/t/#u

Best regards,
Quentin