HomeFreeBSD

dummynet: don't use per-vnet locks to protect global data.

Description

dummynet: don't use per-vnet locks to protect global data.

The ref_count counter is global (i.e. not per-vnet) so we can't use a
per-vnet lock to protect it. Moreover, in callouts curvnet is not set,
so we'd end up panicing when trying to use DN_BH_WLOCK().

Instead we use the global sched_lock, which is already used when
evaluating ref_count (in unload_dn_aqm()).

Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D34059

Details

Provenance
kpAuthored on Jan 27 2022, 10:41 AM
Differential Revision
D34059: dummynet: don't use per-vnet locks to protect global data.
Parents
rG5e8e3020872b: systat: Eliminate write-only unit variable
Branches
Unknown
Tags
Unknown