HomeFreeBSD

pf: Add a new zone for per-table entry counters.

Description

pf: Add a new zone for per-table entry counters.

Right now we optionally allocate 8 counters per table entry, so in
addition to memory consumed by counters, we require 8 pointers worth of
space in each entry even when counters are not allocated (the default).

Instead, define a UMA zone that returns contiguous per-CPU counter
arrays for use in table entries. On amd64 this reduces sizeof(struct
pfr_kentry) from 216 to 160. The smaller size also results in better
slab efficiency, so memory usage for large tables is reduced by about
28%.

Reviewed by: kp
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D24843

Details

Provenance
markjAuthored on
Reviewer
kp
Differential Revision
D24843: pf: Add a new zone for per-table entry counters.
Parents
rS361094: Fix typo that snuck in
Branches
Unknown
Tags
Unknown