|
Revision tags: release/14.4.0 |
|
| #
d4083fb8 |
| 05-Mar-2026 |
Gleb Smirnoff <glebius@FreeBSD.org> |
tests/net/bpf: hexdump(3) the packets if compare fails
|
|
Revision tags: release/13.5.0-p10, release/14.3.0-p9, release/15.0.0-p4, release/15.0.0-p3, release/13.5.0-p9, release/15.0.0-p2, release/14.3.0-p8 |
|
| #
32ec9d87 |
| 12-Jan-2026 |
Mark Johnston <markj@FreeBSD.org> |
bpf/tests: Run tests in an execenv jail
Otherwise the tests cannot be run in parallel since they create identically named jails.
Fixes: dd49816b0d66 ("bpf: avoid panic on multiple readers")
|
|
Revision tags: release/15.0.0-p1, release/13.5.0-p8, release/14.3.0-p7, release/15.0.0, release/14.3.0-p6, release/13.5.0-p7 |
|
| #
1ea3eda3 |
| 21-Nov-2025 |
Gleb Smirnoff <glebius@FreeBSD.org> |
tests/net: add some bpf(4) tests
A test helper program pcap-test allows to capture, inject and compare. Build a simple test case on top of it. More test cases can be easily constructed.
|
|
Revision tags: release/13.5.0-p6, release/14.3.0-p5, release/13.5.0-p5, release/14.2.0-p7, release/14.3.0-p4, release/14.3.0-p3, release/14.2.0-p6, release/13.5.0-p4, release/13.5.0-p3, release/14.2.0-p5, release/14.3.0-p2, release/14.3.0-p1, release/14.2.0-p4, release/13.5.0-p2, release/14.3.0, release/13.4.0-p5, release/13.5.0-p1, release/14.2.0-p3, release/13.5.0 |
|
| #
dd49816b |
| 26-Feb-2025 |
Kristof Provost <kp@FreeBSD.org> |
bpf: avoid panic on multiple readers
If we have multiple simultaneous readers on a single /dev/bpf fd it's possible for the assertion after the bpf_uiomove() in bpfread() to fail.
Note that the bpf
bpf: avoid panic on multiple readers
If we have multiple simultaneous readers on a single /dev/bpf fd it's possible for the assertion after the bpf_uiomove() in bpfread() to fail.
Note that the bpf_uiomove() is done outside of the BPFD_LOCK, because uiomove may sleep. As a result it's possible for another thread to have already reclaimed toe bd_hbuf, thus causing us to fail the assertion. Even without INVARIANTS this may provoke panics.
That results (with INVARIANTS) in a panic such as:
login: panic: bpfread: lost bd_hbuf cpuid = 13 time = 1740567635 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe003972db10 vpanic() at vpanic+0x136/frame 0xfffffe003972dc40 panic() at panic+0x43/frame 0xfffffe003972dca0 bpfread() at bpfread+0x2e8/frame 0xfffffe003972dce0 devfs_read_f() at devfs_read_f+0xe4/frame 0xfffffe003972dd40 dofileread() at dofileread+0x80/frame 0xfffffe003972dd90 sys_read() at sys_read+0xb7/frame 0xfffffe003972de00 amd64_syscall() at amd64_syscall+0x15a/frame 0xfffffe003972df30 fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe003972df30 --- syscall (3, FreeBSD ELF64, read), rip = 0x302787166afa, rsp = 0x302782638a78, rbp = 0x302782638aa0 ---
Also add a test case replicating the known trigger for this panic.
Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D49135
show more ...
|