summaryrefslogtreecommitdiff
path: root/kern/rdxtree.c
AgeCommit message (Collapse)Author
2018-11-12kern/rdxtree: fix warning when assertions are disabledRichard Braun
2018-07-30Rework assertive functionsRichard Braun
Instead of combining assertions and checking into single functions, rework those into pure checking functions usable with assert(). Those functions were introduced because of warnings about unused functions/variables caused by an earlier implementation of assert().
2018-02-24Update license note about modules from librbraunRichard Braun
2018-02-24kern/{cbuf,fmt,hash,hlist,list,plist,rdxtree,shell,slist}: update from upstreamRichard Braun
Note that this commit changes the order of some list operations without triggering warnings.
2018-02-24New errno.h standard headerRichard Braun
Use standard errno codes. This change also adds strerror to string.h.
2018-02-20kern/llsync: remove moduleRichard Braun
2017-07-25kern/llsync: rename pointer accessorsRichard Braun
2017-07-13Switch to initialization operationsRichard Braun
2017-07-02kern/rdxtree: force internal nodes allocation through the page allocatorRichard Braun
Radix trees are going to be used to VM objects, which makes them a dependency for proper virtual memory operations. They must not use virtual memory themselves.
2017-05-31Move limits.h to the include directoryRichard Braun
This turns limits.h into a standard header.
2017-05-30Move assert.h to the include directoryRichard Braun
This turns assert.h into a standard header.
2017-04-29Revert "Remove unneeded quotes when using #error"Richard Braun
This reverts commit b1aa94d0c7dba4138f651e6b081c1a0055ea8d54. New occurrences of #error are also affected by this commit.
2017-03-13Remove unneeded quotes when using #errorRichard Braun
2017-02-04Clean up compilationRichard Braun
Instead of mixing standard headers and internal redefinitions of standard types, completely rely on the compiler for what is guaranteed for a free standing environment. This results in the removal of kern/stddef.h and kern/stdint.h. The kern/types.h header is reintroduced for the different (and saner) purpose of defining types not specified in standard C, namely ssize_t for now.
2017-01-26kern/{llsync,rdxtree}: don't use llsync until it's readyRichard Braun
2017-01-26kern/rdxtree: reintroduce the rdxtree moduleRichard Braun
2014-05-24kern/rdxtree: remove moduleRichard Braun
This module is currently unused and it is likely that a radix tree won't be easy to use as a generic library in the kernel. This means the code is very likely to return, tightly integrated as part of other modules.
2013-07-05kern/rdxtree: specify tree as const when looking upRichard Braun
2013-07-05kern/rdxtree: use 64-bit keysRichard Braun
2013-07-05kern/rdxtree: minor comment updatesRichard Braun
2013-07-05kern/rdxtree: change definition of rdxtree_bm_tRichard Braun
When the radix value is 6, always typedef to unsigned long long.
2013-06-09kern/rdxtree: use a constructor for internal nodesRichard Braun
A tree node is larger than 512 bytes on a 64-bit machine. Initializing it on each allocation can get noticeably slow in case there is hysteresis.
2013-06-09kern/rdxtree: new moduleRichard Braun
This module implements radix trees, a data structure consisting of a tree of arrays which can store many items while guaranteeing a small maximum tree height.