From: "Toke Høiland-Jørgensen" <toke@redhat.com>
To: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Cc: Andrii Nakryiko <andrii.nakryiko@gmail.com>,
Yonghong Song <yhs@fb.com>, bpf <bpf@vger.kernel.org>
Subject: Re: Latest libbpf fails to load programs compiled with old LLVM
Date: Mon, 07 Dec 2020 23:18:42 +0100 [thread overview]
Message-ID: <87tusxi7jx.fsf@toke.dk> (raw)
In-Reply-To: <CAADnVQLGY26QfiZm8WvoeNJmBYOgVz_h-SjHLgoYqw=P4M4fLg@mail.gmail.com>
Alexei Starovoitov <alexei.starovoitov@gmail.com> writes:
> On Mon, Dec 7, 2020 at 8:51 AM Toke Høiland-Jørgensen <toke@redhat.com> wrote:
>>
>> Alexei Starovoitov <alexei.starovoitov@gmail.com> writes:
>>
>> > On Mon, Dec 7, 2020 at 8:15 AM Toke Høiland-Jørgensen <toke@redhat.com> wrote:
>> >>
>> >> Alexei Starovoitov <alexei.starovoitov@gmail.com> writes:
>> >>
>> >> > On Mon, Dec 7, 2020 at 3:03 AM Toke Høiland-Jørgensen <toke@redhat.com> wrote:
>> >> >>
>> >> >> Wait, what? This is a regression that *breaks people's programs* on
>> >> >> compiler versions that are still very much in the wild! I mean, fine if
>> >> >> you don't want to support new features on such files, but then surely we
>> >> >> can at least revert back to the old behaviour?
>> >> >
>> >> > Those folks that care about compiling with old llvm would have to stick
>> >> > to whatever loader they have instead of using libbpf.
>> >> > It's not a backward compatibility breakage.
>> >>
>> >> What? It's a change in libbpf that breaks loading of existing BPF object
>> >> files that were working (with libbpf) before. If that's not a backward
>> >> compatibility break then that term has lost all meaning.
>> >
>> > The user space library is not a kernel.
>> > The library will change its interface. It will remove functions, features, etc.
>> > That's what .map is for.
>>
>> Right, OK, so how do I use .map to get the old behaviour here? That's
>> all I'm asking for, really...
>
> Fix old llvm. The users would have to upgrade either from llvm 7.x to
> 7.x+1 or to llvm 10+.
Right, so by "we keep a stable interface" you mean "we expect you to
upgrade your entire toolchain every time you update the library". Gotcha!
I'll rectify my newspeak dictionary straight away - doubleplusgood!
-Toke
next prev parent reply other threads:[~2020-12-07 22:20 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-03 17:55 Latest libbpf fails to load programs compiled with old LLVM Toke Høiland-Jørgensen
2020-12-04 1:42 ` Yonghong Song
2020-12-04 9:34 ` Toke Høiland-Jørgensen
2020-12-04 17:54 ` Yonghong Song
2020-12-04 19:23 ` Andrii Nakryiko
2020-12-07 10:59 ` Toke Høiland-Jørgensen
2020-12-07 15:55 ` Alexei Starovoitov
2020-12-07 16:15 ` Toke Høiland-Jørgensen
2020-12-07 16:20 ` Alexei Starovoitov
2020-12-07 16:51 ` Toke Høiland-Jørgensen
2020-12-07 17:16 ` Alexei Starovoitov
2020-12-07 22:18 ` Toke Høiland-Jørgensen [this message]
2020-12-08 1:20 ` Alexei Starovoitov
2020-12-07 18:02 ` David Ahern
2020-12-07 18:14 ` Alexei Starovoitov
2020-12-07 18:59 ` David Ahern
2020-12-08 2:47 ` Andrii Nakryiko
2020-12-08 13:41 ` Toke Høiland-Jørgensen
2020-12-08 18:39 ` Andrii Nakryiko
2020-12-08 22:38 ` Toke Høiland-Jørgensen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87tusxi7jx.fsf@toke.dk \
--to=toke@redhat.com \
--cc=alexei.starovoitov@gmail.com \
--cc=andrii.nakryiko@gmail.com \
--cc=bpf@vger.kernel.org \
--cc=yhs@fb.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox