Page MenuHomeFreeBSD

Implement optional table entry limits of if_llatbl.
ClosedPublic

Authored by bz on Dec 6 2019, 10:14 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Mar 11, 4:50 AM
Unknown Object (File)
Sun, Mar 10, 9:08 PM
Unknown Object (File)
Tue, Feb 20, 7:18 PM
Unknown Object (File)
Jan 17 2024, 3:41 PM
Unknown Object (File)
Dec 21 2023, 5:49 PM
Unknown Object (File)
Nov 18 2023, 10:09 AM
Unknown Object (File)
Nov 18 2023, 6:41 AM
Unknown Object (File)
Nov 18 2023, 6:21 AM
Subscribers

Details

Summary

Implement counting of table entries linked on a per-table base.
Add an optional (if set > 0) limit of the maximum number of table
entries.

For that the public lltable_link_entry() and lltable_unlink_entry()
functions as well as the internal function pointers change from void
to having an int return type.

For as long as we do not set llt_maxentries this is can be committed
on its own. The moment we make use of the table limits, the callers
of the link function must check the return value as it can change.

Adjustments for IPv6 (and possibly IPv4) will follow in a separate
review.

Sponsored by: Netflix (originally)

This is extracted from D22447 and adjusted based on review comments.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

melifaro added inline comments.
sys/net/if_llatbl.h
165 ↗(On Diff #65334)

Just for the sake of history: this change makes llt_lookup() the last pointer in the cache line (given 64B size). Eventually we will need to reshuffle fields here a bit.

This revision is now accepted and ready to land.Dec 7 2019, 8:00 PM
This revision was automatically updated to reflect the committed changes.