Page MenuHomeFreeBSD

pfsync: Correctly check if bpf peers are present
ClosedPublic

Authored by zlei on Jun 7 2024, 6:04 PM.
Tags
None
Referenced Files
F98198633: D45533.diff
Wed, Oct 2, 4:14 PM
F98166960: D45533.diff
Wed, Oct 2, 1:41 PM
Unknown Object (File)
Wed, Oct 2, 9:56 AM
Unknown Object (File)
Wed, Oct 2, 6:24 AM
Unknown Object (File)
Wed, Oct 2, 6:17 AM
Unknown Object (File)
Wed, Oct 2, 5:23 AM
Unknown Object (File)
Tue, Oct 1, 2:39 PM
Unknown Object (File)
Thu, Sep 5, 9:34 PM

Details

Summary

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

MFC after: 1 week

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped