Revision 3ab001b9
ID | 3ab001b97402bc01a4777cf1cb60ce940d50ffe3 |
Parent | a6f250f5 |
Child | e440395d |
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