Lines Matching refs:node
138 struct hfs_bnode *node; in hfs_btree_close() local
145 while ((node = tree->node_hash[i])) { in hfs_btree_close()
146 tree->node_hash[i] = node->next_hash; in hfs_btree_close()
147 if (atomic_read(&node->refcnt)) in hfs_btree_close()
149 node->tree->cnid, node->this, in hfs_btree_close()
150 atomic_read(&node->refcnt)); in hfs_btree_close()
151 hfs_bnode_free(node); in hfs_btree_close()
162 struct hfs_bnode *node; in hfs_btree_write() local
165 node = hfs_bnode_find(tree, 0); in hfs_btree_write()
166 if (IS_ERR(node)) in hfs_btree_write()
170 page = node->page[0]; in hfs_btree_write()
184 hfs_bnode_put(node); in hfs_btree_write()
190 struct hfs_bnode *node; in hfs_bmap_new_bmap() local
194 node = hfs_bnode_create(tree, idx); in hfs_bmap_new_bmap()
195 if (IS_ERR(node)) in hfs_bmap_new_bmap()
196 return node; in hfs_bmap_new_bmap()
205 node->type = HFS_NODE_MAP; in hfs_bmap_new_bmap()
206 node->num_recs = 1; in hfs_bmap_new_bmap()
207 hfs_bnode_clear(node, 0, tree->node_size); in hfs_bmap_new_bmap()
214 hfs_bnode_write(node, &desc, 0, sizeof(desc)); in hfs_bmap_new_bmap()
215 hfs_bnode_write_u16(node, 14, 0x8000); in hfs_bmap_new_bmap()
216 hfs_bnode_write_u16(node, tree->node_size - 2, 14); in hfs_bmap_new_bmap()
217 hfs_bnode_write_u16(node, tree->node_size - 4, tree->node_size - 6); in hfs_bmap_new_bmap()
219 return node; in hfs_bmap_new_bmap()
224 struct hfs_bnode *node, *next_node; in hfs_bmap_alloc() local
253 node = hfs_bnode_find(tree, nidx); in hfs_bmap_alloc()
254 if (IS_ERR(node)) in hfs_bmap_alloc()
255 return node; in hfs_bmap_alloc()
256 len = hfs_brec_lenoff(node, 2, &off16); in hfs_bmap_alloc()
259 off += node->page_offset; in hfs_bmap_alloc()
260 pagep = node->page + (off >> PAGE_CACHE_SHIFT); in hfs_bmap_alloc()
277 hfs_bnode_put(node); in hfs_bmap_alloc()
291 nidx = node->next; in hfs_bmap_alloc()
294 next_node = hfs_bmap_new_bmap(node, idx); in hfs_bmap_alloc()
297 hfs_bnode_put(node); in hfs_bmap_alloc()
300 node = next_node; in hfs_bmap_alloc()
302 len = hfs_brec_lenoff(node, 0, &off16); in hfs_bmap_alloc()
304 off += node->page_offset; in hfs_bmap_alloc()
305 pagep = node->page + (off >> PAGE_CACHE_SHIFT); in hfs_bmap_alloc()
311 void hfs_bmap_free(struct hfs_bnode *node) in hfs_bmap_free() argument
319 hfs_dbg(BNODE_MOD, "btree_free_node: %u\n", node->this); in hfs_bmap_free()
320 tree = node->tree; in hfs_bmap_free()
321 nidx = node->this; in hfs_bmap_free()
322 node = hfs_bnode_find(tree, 0); in hfs_bmap_free()
323 if (IS_ERR(node)) in hfs_bmap_free()
325 len = hfs_brec_lenoff(node, 2, &off); in hfs_bmap_free()
330 i = node->next; in hfs_bmap_free()
331 hfs_bnode_put(node); in hfs_bmap_free()
335 node->this); in hfs_bmap_free()
338 node = hfs_bnode_find(tree, i); in hfs_bmap_free()
339 if (IS_ERR(node)) in hfs_bmap_free()
341 if (node->type != HFS_NODE_MAP) { in hfs_bmap_free()
344 node->this, node->type); in hfs_bmap_free()
345 hfs_bnode_put(node); in hfs_bmap_free()
348 len = hfs_brec_lenoff(node, 0, &off); in hfs_bmap_free()
350 off += node->page_offset + nidx / 8; in hfs_bmap_free()
351 page = node->page[off >> PAGE_CACHE_SHIFT]; in hfs_bmap_free()
358 node->this, node->type); in hfs_bmap_free()
360 hfs_bnode_put(node); in hfs_bmap_free()
366 hfs_bnode_put(node); in hfs_bmap_free()