[PATCH bpf-next v2 0/2] bpf: Add ability to pin bpf timer to calling CPU

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

 



BPF supports creating high resolution timers using bpf_timer_* helper
functions. Currently, only the BPF_F_TIMER_ABS flag is supported, which
specifies that the timeout should be interpreted as absolute time. It
would also be useful to be able to pin that timer to a core. For
example, if you wanted to make a subset of cores run without timer
interrupts, and only have the timer be invoked on a single core.

This patch set adds support for this with a new BPF_F_TIMER_CPU_PIN
flag.  When specified, the HRTIMER_MODE_PINNED flag is passed to
hrtimer_start().

This patch set is based off of commit 93fb2776f43e ("Merge branch
'bpf-xsk-sh-umem'").

---

v1: https://lore.kernel.org/bpf/20231002234708.331192-1-void@xxxxxxxxxxxxx/

v1 -> v2 changes:
- Put declaration of soft_timer_pinned and abs_timer_pinned selftest
  maps on same line as abs_timer (Song)

David Vernet (2):
  bpf: Add ability to pin bpf timer to calling CPU
  bpf/selftests: Test pinning bpf timer to a core

 include/uapi/linux/bpf.h                      |  4 ++
 kernel/bpf/helpers.c                          |  5 +-
 tools/include/uapi/linux/bpf.h                |  4 ++
 .../testing/selftests/bpf/prog_tests/timer.c  |  4 ++
 tools/testing/selftests/bpf/progs/timer.c     | 63 ++++++++++++++++++-
 5 files changed, 78 insertions(+), 2 deletions(-)

-- 
2.41.0





[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