HomeFreeBSD

pfsync: Correctly check if bpf peers are present

Description

pfsync: Correctly check if bpf peers are present

On creating the pfsync(4) interface, pfsync_clone_create() does an
unconditional bpfattach(). Use bpf_peers_present() which was introduced
in commit 16d878cc99ef [1] to check the presence of bpf peers.

This will save a little CPU cycles and memory usage when the
synchronisation interface is not configured and there is no bpf peers
present. There should be no functional change.

  1. 16d878cc99ef Fix the following bpf(4) race condition which can result in a panic

Reviewed by: kp
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D45533

(cherry picked from commit 2671bde99295d9e01d10316d0f3fb8b6d21f0f4d)
(cherry picked from commit f14b540dc4c17f6b60e23274153985fb7a2f0cb7)

Details

Provenance
zleiAuthored on Jun 9 2024, 1:05 AM
Reviewer
kp
Differential Revision
D45533: pfsync: Correctly check if bpf peers are present
Parents
rGcbea6b60da00: pflog: Correctly check if bpf peers are present
Branches
Unknown
Tags
Unknown