Lines Matching refs:bnode
19 fd->bnode = NULL; in hfs_find_init()
45 hfs_bnode_put(fd->bnode); in hfs_find_exit()
53 int hfs_find_1st_rec_by_cnid(struct hfs_bnode *bnode, in hfs_find_1st_rec_by_cnid() argument
62 if (bnode->tree->cnid == HFSPLUS_EXT_CNID) { in hfs_find_1st_rec_by_cnid()
65 } else if (bnode->tree->cnid == HFSPLUS_CAT_CNID) { in hfs_find_1st_rec_by_cnid()
68 } else if (bnode->tree->cnid == HFSPLUS_ATTR_CNID) { in hfs_find_1st_rec_by_cnid()
91 int hfs_find_rec_by_key(struct hfs_bnode *bnode, in hfs_find_rec_by_key() argument
99 cmpval = bnode->tree->keycmp(fd->key, fd->search_key); in hfs_find_rec_by_key()
113 int __hfs_brec_find(struct hfs_bnode *bnode, struct hfs_find_data *fd, in __hfs_brec_find() argument
123 e = bnode->num_recs - 1; in __hfs_brec_find()
127 len = hfs_brec_lenoff(bnode, rec, &off); in __hfs_brec_find()
128 keylen = hfs_brec_keylen(bnode, rec); in __hfs_brec_find()
133 hfs_bnode_read(bnode, fd->key, off, keylen); in __hfs_brec_find()
134 if (rec_found(bnode, fd, &b, &e, &rec)) { in __hfs_brec_find()
141 len = hfs_brec_lenoff(bnode, e, &off); in __hfs_brec_find()
142 keylen = hfs_brec_keylen(bnode, e); in __hfs_brec_find()
147 hfs_bnode_read(bnode, fd->key, off, keylen); in __hfs_brec_find()
166 struct hfs_bnode *bnode; in hfs_brec_find() local
172 if (fd->bnode) in hfs_brec_find()
173 hfs_bnode_put(fd->bnode); in hfs_brec_find()
174 fd->bnode = NULL; in hfs_brec_find()
182 bnode = hfs_bnode_find(tree, nidx); in hfs_brec_find()
183 if (IS_ERR(bnode)) { in hfs_brec_find()
184 res = PTR_ERR(bnode); in hfs_brec_find()
185 bnode = NULL; in hfs_brec_find()
188 if (bnode->height != height) in hfs_brec_find()
190 if (bnode->type != (--height ? HFS_NODE_INDEX : HFS_NODE_LEAF)) in hfs_brec_find()
192 bnode->parent = parent; in hfs_brec_find()
194 res = __hfs_brec_find(bnode, fd, do_key_compare); in hfs_brec_find()
201 hfs_bnode_read(bnode, &data, fd->entryoffset, 4); in hfs_brec_find()
203 hfs_bnode_put(bnode); in hfs_brec_find()
205 fd->bnode = bnode; in hfs_brec_find()
210 height, bnode->height, bnode->type, nidx, parent); in hfs_brec_find()
213 hfs_bnode_put(bnode); in hfs_brec_find()
226 hfs_bnode_read(fd->bnode, rec, fd->entryoffset, fd->entrylength); in hfs_brec_read()
233 struct hfs_bnode *bnode; in hfs_brec_goto() local
237 bnode = fd->bnode; in hfs_brec_goto()
238 tree = bnode->tree; in hfs_brec_goto()
244 fd->record = bnode->num_recs - 1; in hfs_brec_goto()
245 idx = bnode->prev; in hfs_brec_goto()
250 hfs_bnode_put(bnode); in hfs_brec_goto()
251 bnode = hfs_bnode_find(tree, idx); in hfs_brec_goto()
252 if (IS_ERR(bnode)) { in hfs_brec_goto()
253 res = PTR_ERR(bnode); in hfs_brec_goto()
254 bnode = NULL; in hfs_brec_goto()
260 while (cnt >= bnode->num_recs - fd->record) { in hfs_brec_goto()
261 cnt -= bnode->num_recs - fd->record; in hfs_brec_goto()
263 idx = bnode->next; in hfs_brec_goto()
268 hfs_bnode_put(bnode); in hfs_brec_goto()
269 bnode = hfs_bnode_find(tree, idx); in hfs_brec_goto()
270 if (IS_ERR(bnode)) { in hfs_brec_goto()
271 res = PTR_ERR(bnode); in hfs_brec_goto()
272 bnode = NULL; in hfs_brec_goto()
279 len = hfs_brec_lenoff(bnode, fd->record, &off); in hfs_brec_goto()
280 keylen = hfs_brec_keylen(bnode, fd->record); in hfs_brec_goto()
289 hfs_bnode_read(bnode, fd->key, off, keylen); in hfs_brec_goto()
291 fd->bnode = bnode; in hfs_brec_goto()