Page MenuHomeFreeBSD

pctrie: leave pctrie top as current after [gl]e_lookup failure
ClosedPublic

Authored by dougm on Jul 10 2025, 2:40 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Oct 15, 3:52 PM
Unknown Object (File)
Mon, Oct 13, 9:47 PM
Unknown Object (File)
Mon, Oct 13, 9:47 PM
Unknown Object (File)
Mon, Oct 13, 9:47 PM
Unknown Object (File)
Mon, Oct 13, 9:47 PM
Unknown Object (File)
Mon, Oct 13, 8:11 AM
Unknown Object (File)
Sun, Oct 12, 5:43 PM
Unknown Object (File)
Sun, Oct 12, 4:41 PM
Subscribers

Details

Summary

If pctrie_lookup_iter_ge fails to return a node, the iterator is left with NULL as the current node. Instead, make the top of the tree the current node. Do the same thing for lookup_iter_le. If an iterator is reused after a ge/le lookup fails, this will skip the step in _pctrie_lookup_node where a NULL is replaced by the node at the top of the trie.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

dougm requested review of this revision.Jul 10 2025, 2:40 AM
dougm created this revision.

Handle the case where the pctrie is empty.

This revision is now accepted and ready to land.Jul 10 2025, 7:53 AM