kernel_optimize_test/tools
Brendan Jackman 4aae6eb6af libbpf: Fix signed overflow in ringbuf_process_ring
[ Upstream commit 2a30f9440640c418bcfbea9b2b344d268b58e0a2 ]

One of our benchmarks running in (Google-internal) CI pushes data
through the ringbuf faster htan than userspace is able to consume
it. In this case it seems we're actually able to get >INT_MAX entries
in a single ring_buffer__consume() call. ASAN detected that cnt
overflows in this case.

Fix by using 64-bit counter internally and then capping the result to
INT_MAX before converting to the int return type. Do the same for
the ring_buffer__poll().

Fixes: bf99c936f9 (libbpf: Add BPF ring buffer support)
Signed-off-by: Brendan Jackman <jackmanb@google.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20210429130510.1621665-1-jackmanb@google.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-05-19 10:13:06 +02:00
..
accounting
arch ia64: tools: remove duplicate definition of ia64_mf() on ia64 2021-04-28 13:40:02 +02:00
bootconfig
bpf bpftool: Fix maybe-uninitialized warnings 2021-05-14 09:50:29 +02:00
build
cgroup tools/cgroup/slabinfo.py: updated to work on current kernel 2021-05-07 11:04:31 +02:00
debugging
edid
firewire
firmware
gpio
hv
iio
include ia64: tools: remove inclusion of ia64-specific version of errno.h header 2021-04-21 13:00:57 +02:00
io_uring
kvm/kvm_stat tools/kvm_stat: Add restart delay 2021-04-16 11:43:20 +02:00
laptop
leds
lib libbpf: Fix signed overflow in ringbuf_process_ring 2021-05-19 10:13:06 +02:00
memory-model
objtool static_call: Allow module use without exposing static_call_key 2021-03-30 14:31:53 +02:00
pci
pcmcia
perf perf session: Add swap operation for event TIME_CONV 2021-05-14 09:50:45 +02:00
power Revert "tools/power turbostat: adjust for temperature offset" 2021-05-14 09:50:05 +02:00
scripts
spi
testing selftests: mlxsw: Fix mausezahn invocation in ERSPAN scale test 2021-05-19 10:12:59 +02:00
thermal/tmon
time
usb
virtio
vm
wmi
Makefile