038f6b4c4b
The exact behavior of lfsr_rbyd_lookup is a bit unusual, and has already resulted in a few mistakes. To make this more clear at a glance, names have been changed and a few more helper functions added. The new names and expected behavior: - *_lookupnext - lookup the smallest id/tag less than or equal to the requested id/tag, returns LFS_ERR_NOENT if id/tag is greater than all ids/tags in the data structure. - *_lookup - lookup the exact id/tag, returns LFS_ERR_NOENT if id/tag is not in the data structure. These have been adopted in all current data structures: rbyd/btree/mdir - lfsr_rbyd_lookup => lfsr_rbyd_lookupnext - lfsr_btree_lookup => lfsr_btree_lookupnext - lfsr_btree_namelookup => lfsr_btree_namelookupnext - lfsr_mdir_lookup => lfsr_mdir_lookupnext Note no lfsr_btree_namelookup is added, this is a more complicated than lfsr_btree_lookup (we need to cmp the name on-disk for equality) and also probably not needed.