Lines Matching refs:level

97 									int32 level, const char* name,
103 status_t _InsertEntrySplitBlock(int32 level,
108 bool _Check(int32 level, uint64 blockIndex,
568 for (uint32 level = 0; level <= depth; level++) {
570 RETURN_ERROR(level == 0 ? B_ENTRY_NOT_FOUND : B_BAD_DATA);
588 PRINT(" level %" B_PRId32 " -> index: %" B_PRId32 " %sexact\n", level,
593 if (level == depth) {
594 // final level -- here we should have an exact match
602 // not the final level -- load the block and descend to the next
603 // level
643 for (int32 level = 0; level <= depth; level++) {
644 LevelInfo& info = infos[level];
647 if (level == 0) {
658 PRINT(" level %" B_PRId32 " -> index: %" B_PRId32 " %sexact\n", level,
661 if (level == depth)
671 // not the final level -- load the block and descend to the next
672 // level
673 LevelInfo& nextInfo = infos[level + 1];
693 int32 level;
694 for (level = depth - 1; level >= 0; level--) {
695 LevelInfo& info = infos[level];
697 PRINT(" found greater branch: level: %" B_PRId32 " -> index: %"
698 B_PRId32 "\n", level, info.index);
703 if (level < 0)
707 for (level++; level <= depth; level++) {
708 LevelInfo& previousInfo = infos[level - 1];
709 LevelInfo& info = infos[level];
777 for (int32 level = 0; level <= depth; level++) {
778 LevelInfo& info = infos[level];
781 if (level == 0) {
794 PRINT(" level %" B_PRId32 ", block %" B_PRIu64 " -> index: %" B_PRId32
795 " %sexact\n", level,
796 level == 0 ? fDirectory->BlockIndex() : info.block.Index(),
799 // Finding an exact match -- even in the non-final level -- means
804 if (level == depth) {
805 // final level -- here we need to insert the entry
815 // not the final level -- load the block and descend to the next
816 // level
817 LevelInfo& nextInfo = infos[level + 1];
868 for (int32 level = 0; level <= depth; level++) {
869 LevelInfo& info = infos[level];
872 if (level == 0) {
884 PRINT(" level %" B_PRId32 ", block %" B_PRIu64 " -> index: %" B_PRId32
885 " %sexact\n", level,
886 level == 0 ? fDirectory->BlockIndex() : info.block.Index(),
889 if (level == depth) {
890 // final level -- here the entry should be found
910 // not the final level -- load the block and descend to the next
911 // level
912 LevelInfo& nextInfo = infos[level + 1];
934 for (int32 level = depth; level >= 0; level--) {
935 LevelInfo& info = infos[level];
938 if (level > 0) {
944 PRINT(" level: %" B_PRId32 ", index: %" B_PRId32 ": removing key "
945 "\"%.*s\" (%" B_PRIuSIZE ")\n", level, info.index, (int)nameLength,
949 // That's the last key in the block. Unless that's the root level,
952 if (level == 0) {
972 if (info.index > 0 || level == 0)
976 return _UpdateOrInsertKey(infos, level - 1, name, nameLength, 0, false,
1006 int32 level = 0;
1008 LevelInfo& info = infos[level];
1010 if (level == depth || info.index >= info.entryBlock.EntryCount()) {
1012 if (level == 0)
1020 infos[--level].index++;
1023 // descend to next level
1026 LevelInfo& nextInfo = infos[++level];
1104 DirEntryTree::_UpdateOrInsertKey(LevelInfo* infos, int32 level,
1108 FUNCTION("level: %" B_PRId32 ": %s name: \"%.*s\" (%" B_PRIuSIZE "), "
1109 "blockIndex: %" B_PRIu64 "\n", level, insertKey ? "insert" : "update",
1134 for (; level >= 0; level--) {
1135 LevelInfo& info = infos[level];
1151 if (level > 0) {
1158 PRINT(" level: %" B_PRId32 ", index: %" B_PRId32 ": updating key "
1159 "to \"%.*s\" (%" B_PRIuSIZE ")\n", level, info.index,
1181 } else if (level == 0) {
1187 level = 2;
1189 // content to level 1, where we want to continue.
1196 error = _InsertEntrySplitBlock(level, info, spaceNeeded,
1256 if (level < depth)
1259 PRINT(" level: %" B_PRId32 ", index: %" B_PRId32 ": inserting key "
1261 level, info.index, (int)nameLength, name, nameLength,
1284 // for level == 0 we need to clone the block first
1285 if (level == 0) {
1290 level = 2;
1292 // content to level 1, where we want to continue.
1299 error = _InsertEntrySplitBlock(level, info, nameLength + 10,
1400 DirEntryTree::_InsertEntrySplitBlock(int32 level, LevelInfo& info,
1407 FUNCTION("level: %" B_PRId32 ", size needed: %" B_PRIuSIZE ", split index: "
1408 "%" B_PRId32 "/%" B_PRId32 "\n", level, needed, splitIndex,
1441 DirEntryTree::_Check(int32 level, uint64 blockIndex, const char* key,
1446 ERROR("DirEntryTree::Check(): level %" B_PRIu32 ": block %"
1447 B_PRIu64 " not valid!\n", level, blockIndex);
1455 if (level == 0)
1458 ERROR("DirEntryTree::Check(): level %" B_PRIu32 ": block %"
1459 B_PRIu64 " empty!\n", level, blockIndex);
1465 if (level > 0) {
1469 ERROR("DirEntryTree::Check(): level %" B_PRIu32 ": block %"
1471 level, blockIndex, (int)keyLength, key, (int)nameLength, name);
1476 if (level == _Depth())
1479 // not the final level -- recurse
1487 ERROR("DirEntryTree::Check(): level %" B_PRIu32 ": block %"
1489 B_PRIu32 ")\n", level, blockIndex, childBlockIndex, i);
1495 if (!_Check(level + 1, childBlockIndex, name, nameLength,