Thread (18 messages) 18 messages, 2 authors, 2021-07-09

Re: [PATCH v5 bpf-next 00/11] bpf: Introduce BPF timers.

From: Martin KaFai Lau <hidden>
Date: 2021-07-09 02:00:12
Also in: bpf

On Wed, Jul 07, 2021 at 06:18:22PM -0700, Alexei Starovoitov wrote:
From: Alexei Starovoitov <ast@kernel.org>

The first request to support timers in bpf was made in 2013 before sys_bpf syscall
was added. That use case was periodic sampling. It was address with attaching
bpf programs to perf_events. Then during XDP development the timers were requested
to do garbage collection and health checks. They were worked around by implementing
timers in user space and triggering progs with BPF_PROG_RUN command.
The user space timers and perf_event+bpf timers are not armed by the bpf program.
They're done asynchronously vs program execution. The XDP program cannot send a
packet and arm the timer at the same time. The tracing prog cannot record an
event and arm the timer right away. This large class of use cases remained
unaddressed. The jiffy based and hrtimer based timers are essential part of the
kernel development and with this patch set the hrtimer based timers will be
available to bpf programs.

TLDR: bpf timers is a wrapper of hrtimers with all the extra safety added
to make sure bpf progs cannot crash the kernel.
Looked more closely from 1-6.  Left minor comments in patch 4.
The later verifier changes make sense to me but I won't be very useful there.

lgtm overall,

Acked-by: Martin KaFai Lau <redacted>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help