Re: BPF maps don't work without CONFIG_TRACING/CONFIG_FTRACE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 12, 2022 at 9:48 AM Toke Høiland-Jørgensen <toke@xxxxxxxxxx> wrote:
>
> Michael Zimmermann <sigmaepsilon92@xxxxxxxxx> writes:
>
> > On Thu, May 12, 2022 at 5:21 AM Andrii Nakryiko
> > <andrii.nakryiko@xxxxxxxxx> wrote:
> >>
> >> On Mon, May 9, 2022 at 10:12 PM Michael Zimmermann
> >> <sigmaepsilon92@xxxxxxxxx> wrote:
> >> >
> >> > Thank you for your answer.
> >> > What I'm ultimately trying to do is: Use aya-rs to watch egress on a
> >> > network interface and notify userspace through a map (for certain IPs
> >> > only).
> >> >
> >> > In my actual use case, the userspace is supposed to do more complex
> >> > stuff but for testing I simply logged the receival of a message
> >> > through the BPF map on the console. And that is what I expect to
> >> > happen and which does happen as long as CONFIG_TRACING/CONFIG_FTRACE
> >> > are active. If not, I simply never receive any messages on any map.
> >> >
> >> > I've also tried this using an XDP program which sends a message every
> >> > time it sees a packet. And while the program seemed to be
> >> > working(since it did block certain traffic), I never saw any data in
> >> > the map when those configs were disabled.
> >> >
> >> > Also, I'm giving you two configs(tracing and ftrace) since the other
> >> > one seems to get y-selected automatically if one of them is active.
> >>
> >> Please don't top post, reply inline instead.
> > Sorry for that, GMail does that by default and even hides that it's
> > quoting at all.
> >
> >>
> >> I don't think we have enough to investigate here, even "receive any
> >> messages on any map" is so ambiguous that it's hard to even guess what
> >> you are really trying to do. BPF maps are not sending/receiving
> >> messages. So please provide some pieces of code and what you are doing
> >> to check. CONFIG_TRACING and CONFIG_FTRACE shouldn't have any effect
> >> on functioning of BPF maps, so it's most probably that you are doing
> >> something besides BPF map update/lookup, but you don't provide enough
> >> information to check anything.
> >
> > An aya project I tested where I don't receive any events:
> > https://github.com/aya-rs/book/tree/6b52a6fac5fa3e5a1165f98591b2eaff9692048a/examples/myapp-03
>
> It's using a PERF_EVENT_ARRAY map to send events to userspace. This
> requires CONFIG_BPF_EVENTS to work, which depends on CONFIG_PERF_EVENTS.
> Not sure if this depends on CONFIG_TRACING specifically, but maybe you
> disabled PERF_EVENTS as well?

PERF_EVENTS is enabled in both my working and my broken config.
But both directly and through others, BPF_EVENTS depends on FTRACE
(which then also selects TRACING).

So is this some weird dependency chain or expected behavior?
If it's expected, are there alternatives to achieve similar
functionality or do I have to convince my distro to enable tracing
support?

>
> -Toke




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux