Lines Matching refs:header
118 if (((P)->header.nextindex > \
119 (((BN) == 0) ? DTROOTMAXSLOT : (P)->header.maxslot)) || \
120 ((BN) && (((P)->header.maxslot > DTPAGEMAXSLOT) || \
121 ((P)->header.stblindex >= DTPAGEMAXSLOT)))) { \
634 for (base = 0, lim = p->header.nextindex; lim; lim >>= 1) { in dtSearch()
642 if (p->header.flag & BT_LEAF) { in dtSearch()
661 if (p->header.flag & BT_LEAF) { in dtSearch()
731 if (p->header.flag & BT_LEAF) { in dtSearch()
838 if (p->header.freelist == 0) in dtInsert()
865 if (n > p->header.freecnt) { in dtInsert()
897 if (!(p->header.flag & BT_ROOT)) { in dtInsert()
902 lv->offset = p->header.stblindex + n; in dtInsert()
904 ((p->header.nextindex - 1) >> L2DTSLOTSIZE) - n + 1; in dtInsert()
972 if (sp->header.flag & BT_ROOT) { in dtSplitUp()
979 n -= DTROOTMAXSLOT - sp->header.freecnt; /* header + entries */ in dtSplitUp()
1014 pxd = &sp->header.self; in dtSplitUp()
1021 if ((n + sp->header.freecnt) <= split->nslot) in dtSplitUp()
1172 switch (rp->header.flag & BT_TYPE) { in dtSplitUp()
1179 if ((sp->header.flag & BT_ROOT && skip > 1) || in dtSplitUp()
1180 sp->header.prev != 0 || skip > 1) { in dtSplitUp()
1183 lp->header.nextindex-1, in dtSplitUp()
1228 if (n > sp->header.freecnt) { in dtSplitUp()
1243 rc = (sp->header.flag & BT_ROOT) ? in dtSplitUp()
1272 if (!(sp->header.flag & BT_ROOT)) { in dtSplitUp()
1275 lv->offset = sp->header.stblindex + n; in dtSplitUp()
1277 ((sp->header.nextindex - in dtSplitUp()
1385 rp->header.self = *pxd; in dtSplitPage()
1406 nextbn = le64_to_cpu(sp->header.next); in dtSplitPage()
1407 rp->header.next = cpu_to_le64(nextbn); in dtSplitPage()
1408 rp->header.prev = cpu_to_le64(addressPXD(&sp->header.self)); in dtSplitPage()
1409 sp->header.next = cpu_to_le64(rbn); in dtSplitPage()
1414 rp->header.flag = sp->header.flag; in dtSplitPage()
1417 rp->header.nextindex = 0; in dtSplitPage()
1418 rp->header.stblindex = 1; in dtSplitPage()
1421 rp->header.maxslot = n; in dtSplitPage()
1425 fsi = rp->header.stblindex + stblsize; in dtSplitPage()
1426 rp->header.freelist = fsi; in dtSplitPage()
1427 rp->header.freecnt = rp->header.maxslot - fsi; in dtSplitPage()
1442 if (nextbn == 0 && split->index == sp->header.nextindex) { in dtSplitPage()
1453 for (fsi++; fsi < rp->header.maxslot; f++, fsi++) in dtSplitPage()
1492 p->header.prev = cpu_to_le64(rbn); in dtSplitPage()
1510 stbl = (u8 *) & sp->slot[sp->header.stblindex]; in dtSplitPage()
1511 nextindex = sp->header.nextindex; in dtSplitPage()
1518 switch (sp->header.flag & BT_TYPE) { in dtSplitPage()
1563 sp->header.nextindex = nxt; in dtSplitPage()
1568 fsi = rp->header.freelist; in dtSplitPage()
1570 for (fsi++; fsi < rp->header.maxslot; f++, fsi++) in dtSplitPage()
1577 if ((rp->header.flag & BT_LEAF) && DO_INDEX(ip)) { in dtSplitPage()
1582 for (n = 0; n < rp->header.nextindex; n++) { in dtSplitPage()
1603 slv->offset = sp->header.stblindex + n; in dtSplitPage()
1605 ((sp->header.nextindex - 1) >> L2DTSLOTSIZE) - n + 1; in dtSplitPage()
1681 tpxd = &sp->header.self; in dtExtendPage()
1695 pxdlock->pxd = sp->header.self; in dtExtendPage()
1706 for (n = 0; n < sp->header.nextindex; n++) { in dtExtendPage()
1721 sp->header.self = *pxd; in dtExtendPage()
1740 oldstblindex = sp->header.stblindex; in dtExtendPage()
1741 oldstblsize = (sp->header.maxslot + 31) >> L2DTSLOTSIZE; in dtExtendPage()
1742 newstblindex = sp->header.maxslot; in dtExtendPage()
1746 sp->header.nextindex); in dtExtendPage()
1767 lv->length = sp->header.maxslot + newstblsize; in dtExtendPage()
1772 sp->header.maxslot = n; in dtExtendPage()
1773 sp->header.stblindex = newstblindex; in dtExtendPage()
1781 last = sp->header.freelist; in dtExtendPage()
1786 sp->header.freelist = last; in dtExtendPage()
1787 sp->header.freecnt += oldstblsize; in dtExtendPage()
1795 for (fsi++; fsi < sp->header.maxslot; f++, fsi++) in dtExtendPage()
1800 fsi = sp->header.freelist; in dtExtendPage()
1802 sp->header.freelist = n; in dtExtendPage()
1812 sp->header.freecnt += sp->header.maxslot - n; in dtExtendPage()
1824 n = sp->header.maxslot >> 2; in dtExtendPage()
1825 if (sp->header.freelist < n) in dtExtendPage()
1930 rp->header.flag = in dtSplitRoot()
1931 (sp->header.flag & BT_LEAF) ? BT_LEAF : BT_INTERNAL; in dtSplitRoot()
1932 rp->header.self = *pxd; in dtSplitRoot()
1935 rp->header.next = 0; in dtSplitRoot()
1936 rp->header.prev = 0; in dtSplitRoot()
1949 rp->header.maxslot = n; in dtSplitRoot()
1953 rp->header.stblindex = DTROOTMAXSLOT; in dtSplitRoot()
1955 memcpy(stbl, sp->header.stbl, sp->header.nextindex); in dtSplitRoot()
1956 rp->header.nextindex = sp->header.nextindex; in dtSplitRoot()
1967 for (fsi++; fsi < rp->header.maxslot; f++, fsi++) in dtSplitRoot()
1972 fsi = sp->header.freelist; in dtSplitRoot()
1974 rp->header.freelist = n; in dtSplitRoot()
1976 rp->header.freelist = fsi; in dtSplitRoot()
1986 rp->header.freecnt = sp->header.freecnt + rp->header.maxslot - n; in dtSplitRoot()
1991 if ((rp->header.flag & BT_LEAF) && DO_INDEX(ip)) { in dtSplitRoot()
1997 for (n = 0; n < rp->header.nextindex; n++) { in dtSplitRoot()
2035 if (sp->header.flag & BT_LEAF) { in dtSplitRoot()
2036 sp->header.flag &= ~BT_LEAF; in dtSplitRoot()
2037 sp->header.flag |= BT_INTERNAL; in dtSplitRoot()
2047 stbl = sp->header.stbl; in dtSplitRoot()
2049 sp->header.nextindex = 1; in dtSplitRoot()
2060 sp->header.freelist = DTENTRYSTART + 1; in dtSplitRoot()
2061 sp->header.freecnt = DTROOTMAXSLOT - (DTENTRYSTART + 1); in dtSplitRoot()
2117 if (index == (p->header.nextindex - 1)) { in dtDelete()
2121 if ((p->header.flag & BT_ROOT) in dtDelete()
2122 || (p->header.next == 0)) in dtDelete()
2126 DT_GETPAGE(ip, le64_to_cpu(p->header.next), in dtDelete()
2150 if (p->header.nextindex == 1) { in dtDelete()
2182 if (!(p->header.flag & BT_ROOT)) { in dtDelete()
2187 lv->offset = p->header.stblindex + i; in dtDelete()
2189 ((p->header.nextindex - 1) >> L2DTSLOTSIZE) - in dtDelete()
2200 if (DO_INDEX(ip) && index < p->header.nextindex) { in dtDelete()
2205 for (i = index; i < p->header.nextindex; i++) { in dtDelete()
2277 pxdlock->pxd = fp->header.self; in dtDeleteUp()
2286 xlen = lengthPXD(&fp->header.self); in dtDeleteUp()
2316 nextindex = p->header.nextindex; in dtDeleteUp()
2327 if (p->header.flag & BT_ROOT) { in dtDeleteUp()
2353 pxdlock->pxd = p->header.self; in dtDeleteUp()
2362 xlen = lengthPXD(&p->header.self); in dtDeleteUp()
2398 if (!(p->header.flag & BT_ROOT)) { in dtDeleteUp()
2406 lv->offset = p->header.stblindex + i; in dtDeleteUp()
2408 ((p->header.nextindex - 1) >> L2DTSLOTSIZE) - in dtDeleteUp()
2418 ((p->header.flag & BT_ROOT) || p->header.prev == 0)) in dtDeleteUp()
2454 nextbn = le64_to_cpu(p->header.next); in dtRelink()
2455 prevbn = le64_to_cpu(p->header.prev); in dtRelink()
2482 p->header.prev = cpu_to_le64(prevbn); in dtRelink()
2511 p->header.next = cpu_to_le64(nextbn); in dtRelink()
2587 p->header.flag = DXD_INDEX | BT_ROOT | BT_LEAF; in dtInitRoot()
2589 p->header.nextindex = 0; in dtInitRoot()
2600 p->header.freelist = 1; in dtInitRoot()
2601 p->header.freecnt = 8; in dtInitRoot()
2604 p->header.idotdot = cpu_to_le32(idotdot); in dtInitRoot()
2640 ASSERT(p->header.flag & BT_LEAF); in add_missing_indices()
2649 for (i = 0; i < p->header.nextindex; i++) { in add_missing_indices()
2802 if (p->header.flag & BT_INTERNAL) { in jfs_readdir()
2905 for (i = index; i < p->header.nextindex; i++) { in jfs_readdir()
3003 if (p->header.flag & BT_ROOT) in jfs_readdir()
3006 bn = le64_to_cpu(p->header.next); in jfs_readdir()
3086 if (p->header.flag & BT_LEAF) { in dtReadFirst()
3173 if (index < p->header.nextindex) in dtReadNext()
3176 if (p->header.flag & BT_ROOT) { in dtReadNext()
3188 if (p->header.flag & BT_ROOT) { in dtReadNext()
3199 bn = le64_to_cpu(p->header.next); in dtReadNext()
3228 while (pn >= p->header.nextindex) { in dtReadNext()
3229 pn -= p->header.nextindex; in dtReadNext()
3232 bn = le64_to_cpu(p->header.next); in dtReadNext()
3272 if (index >= p->header.nextindex) { in dtReadNext()
3273 bn = le64_to_cpu(p->header.next); in dtReadNext()
3426 if (p->header.flag & BT_LEAF) { in ciCompare()
3581 if (p->header.flag & BT_LEAF) { in dtGetKey()
3651 hsi = fsi = p->header.freelist; in dtInsertEntry()
3653 p->header.freelist = h->next; in dtInsertEntry()
3654 --p->header.freecnt; in dtInsertEntry()
3664 if (p->header.flag & BT_LEAF) { in dtInsertEntry()
3672 if (!(p->header.flag & BT_ROOT)) in dtInsertEntry()
3673 bn = addressPXD(&p->header.self); in dtInsertEntry()
3699 fsi = p->header.freelist; in dtInsertEntry()
3701 p->header.freelist = t->next; in dtInsertEntry()
3702 --p->header.freecnt; in dtInsertEntry()
3740 if (p->header.flag & BT_LEAF) in dtInsertEntry()
3750 nextindex = p->header.nextindex; in dtInsertEntry()
3754 if ((p->header.flag & BT_LEAF) && data->leaf.ip) { in dtInsertEntry()
3776 ++p->header.nextindex; in dtInsertEntry()
3805 sstbl = (s8 *) & sp->slot[sp->header.stblindex]; in dtMoveEntry()
3806 dstbl = (s8 *) & dp->slot[dp->header.stblindex]; in dtMoveEntry()
3808 dsi = dp->header.freelist; /* first (whole page) free slot */ in dtMoveEntry()
3809 sfsi = sp->header.freelist; in dtMoveEntry()
3824 for (di = 0; si < sp->header.nextindex; si++, di++) { in dtMoveEntry()
3854 if (sp->header.flag & BT_LEAF) { in dtMoveEntry()
3948 if (dp->header.flag & BT_LEAF) in dtMoveEntry()
3967 sp->header.freelist = sfsi; in dtMoveEntry()
3968 sp->header.freecnt += nd; in dtMoveEntry()
3971 dp->header.nextindex = di; in dtMoveEntry()
3973 dp->header.freelist = dsi; in dtMoveEntry()
3974 dp->header.freecnt -= nd; in dtMoveEntry()
4012 if (p->header.flag & BT_LEAF) in dtDeleteEntry()
4058 t->next = p->header.freelist; in dtDeleteEntry()
4059 p->header.freelist = fsi; in dtDeleteEntry()
4060 p->header.freecnt += freecnt; in dtDeleteEntry()
4065 si = p->header.nextindex; in dtDeleteEntry()
4069 p->header.nextindex--; in dtDeleteEntry()
4107 ASSERT(p->header.flag & BT_INTERNAL); in dtTruncateEntry()
4155 t->next = p->header.freelist; in dtTruncateEntry()
4156 p->header.freelist = fsi; in dtTruncateEntry()
4157 p->header.freecnt += freecnt; in dtTruncateEntry()
4176 fsi = p->header.freelist; in dtLinelockFreelist()