HomeFreeBSD

altq codel: do not insert the same mtag twice

Description

altq codel: do not insert the same mtag twice

If we're called on an mbuf that's passed through codel before it may
already contain the MTAG_CODEL tag. The code accounts for this and does
not allocate a new mtag. However, it inserts the mtag unconditionally.
That is, it inserts the existing mtag a second time.

When the mbuf later gets freed we iterate over the list of mtags to fee
them one by one, and we'll end up freeing an mtag that's already been
freed.

Only insert the mtag if we've allocated a new one. If we found one
there's no need to insert it again.

See also: https://redmine.pfsense.org/issues/14497
Sponsored by: Rubicon Communications, LLC ("Netgate")

Details

Provenance
kpAuthored on Jul 3 2023, 5:02 PM
Parents
rG3f21d3e0baba: release: update GCE configuration for python3
Branches
Unknown
Tags
Unknown