[iovisor-dev] why bpf output wakeup_events and sample_period is 1?

2020-02-27 Thread Hayden Livingston
wakeup_events and sample_period is set to 1. what is the reason for this? Isn't it better if this number is higher so the polling doesn't happen all the time? what is "sample_period" if wakeup_events tells kernel to wake up. -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this

[iovisor-dev] Confused about wakeup watermark vs sample period when attaching to BPF program

2020-02-21 Thread Hayden Livingston
Please correct me if I'm wrong about anything. When a perf_event is attached to a BPF program and the BPF program is going to do processing and then output what is the significant of wakeup_events or wakeup_watermark for the original perf_event? To me it seem like it BPF program will always run,

Re: [iovisor-dev] bpf_probe_read and pagefaults

2020-02-17 Thread Hayden Livingston
I should have search. Short answer it fails and you're out of luck. https://lists.iovisor.org/g/iovisor-dev/topic/accessing_user_memory_and/21386221 On Sun, Feb 16, 2020 at 9:29 PM Hayden Livingston wrote: > > I'm curios to know how bpf_probe_read is able to read user-mode

[iovisor-dev] bpf_probe_read and pagefaults

2020-02-16 Thread Hayden Livingston
I'm curios to know how bpf_probe_read is able to read user-mode memory in the face of page faulting. I know in the helper it disables page faulting, but what does that mean? If the memory the probe is trying to read is paged out then how does my probe work? It seems bpf_probe_read is best

[iovisor-dev] Can multiple BPF programs use same per-cpu perf ring buffer?

2020-02-16 Thread Hayden Livingston
Imagine I have a per-cpu perf ring buffer for all my cpus. Now I have two eBPF programs. In both these eBPF programs I do bpf_update_elem(myFD, , , BPF_ANY) Will this mean that multiple eBPF programs will be able to write their data into a single buffer (of course associated with cpu). This

Re: [iovisor-dev] Why is BPF_PERF_OUTPUT max_entries set to total processor count?

2020-02-16 Thread Hayden Livingston
directly. On Sun, Feb 16, 2020 at 1:50 PM Y Song wrote: > > PERF_EVENT_OUTPUT map is to hold per cpu ring buffers created by > perf_event_open. > That is why its typical size is the number of cpus on the host. > > On Sun, Feb 16, 2020 at 1:52 AM Hayden Livingston > wrote: > >

[iovisor-dev] Why is BPF_PERF_OUTPUT max_entries set to total processor count?

2020-02-16 Thread Hayden Livingston
I'm very confused why BCC creates a map of number of processors for the perf_events output map. I can imagine it being 1 since all it does is act as a kernel-user mode intermediary and it is true that the code cannot be preempted. Or if it can be preempted then I can imagine that since there