« Previous | Next » 

Revision 3ab001b9

ID3ab001b97402bc01a4777cf1cb60ce940d50ffe3
Parent a6f250f5
Child e440395d

Added by Martin Mares over 22 years ago

Rewrote fib functions to make them insert/delete/asynchronous-walk safe.
This is implemented in a way similar to lib/slists.h, but it took some
more effort to make rehashing not disturb the readers. We do it by just
taking highest k bits of ipa_hash as our hash value and sorting each
box by whole ipa_hash().

Consult FIB_ITERATE_* macros in nest/route.h.

Implemented fib_check() debugging function and also rewrote the rehashing
algorithm to use better thresholds and not to waste time by rehashing
forth and back.

Files

  • added
  • modified
  • copied
  • renamed
  • deleted

View differences