Lines Matching refs:node
259 struct hfs_bnode *node; in hfs_btree_close() local
266 while ((node = tree->node_hash[i])) { in hfs_btree_close()
267 tree->node_hash[i] = node->next_hash; in hfs_btree_close()
268 if (atomic_read(&node->refcnt)) in hfs_btree_close()
271 node->tree->cnid, node->this, in hfs_btree_close()
272 atomic_read(&node->refcnt)); in hfs_btree_close()
273 hfs_bnode_free(node); in hfs_btree_close()
284 struct hfs_bnode *node; in hfs_btree_write() local
287 node = hfs_bnode_find(tree, 0); in hfs_btree_write()
288 if (IS_ERR(node)) in hfs_btree_write()
292 page = node->page[0]; in hfs_btree_write()
307 hfs_bnode_put(node); in hfs_btree_write()
314 struct hfs_bnode *node; in hfs_bmap_new_bmap() local
318 node = hfs_bnode_create(tree, idx); in hfs_bmap_new_bmap()
319 if (IS_ERR(node)) in hfs_bmap_new_bmap()
320 return node; in hfs_bmap_new_bmap()
327 node->type = HFS_NODE_MAP; in hfs_bmap_new_bmap()
328 node->num_recs = 1; in hfs_bmap_new_bmap()
329 hfs_bnode_clear(node, 0, tree->node_size); in hfs_bmap_new_bmap()
336 hfs_bnode_write(node, &desc, 0, sizeof(desc)); in hfs_bmap_new_bmap()
337 hfs_bnode_write_u16(node, 14, 0x8000); in hfs_bmap_new_bmap()
338 hfs_bnode_write_u16(node, tree->node_size - 2, 14); in hfs_bmap_new_bmap()
339 hfs_bnode_write_u16(node, tree->node_size - 4, tree->node_size - 6); in hfs_bmap_new_bmap()
341 return node; in hfs_bmap_new_bmap()
346 struct hfs_bnode *node, *next_node; in hfs_bmap_alloc() local
376 node = hfs_bnode_find(tree, nidx); in hfs_bmap_alloc()
377 if (IS_ERR(node)) in hfs_bmap_alloc()
378 return node; in hfs_bmap_alloc()
379 len = hfs_brec_lenoff(node, 2, &off16); in hfs_bmap_alloc()
382 off += node->page_offset; in hfs_bmap_alloc()
383 pagep = node->page + (off >> PAGE_CACHE_SHIFT); in hfs_bmap_alloc()
400 hfs_bnode_put(node); in hfs_bmap_alloc()
415 nidx = node->next; in hfs_bmap_alloc()
418 next_node = hfs_bmap_new_bmap(node, idx); in hfs_bmap_alloc()
421 hfs_bnode_put(node); in hfs_bmap_alloc()
424 node = next_node; in hfs_bmap_alloc()
426 len = hfs_brec_lenoff(node, 0, &off16); in hfs_bmap_alloc()
428 off += node->page_offset; in hfs_bmap_alloc()
429 pagep = node->page + (off >> PAGE_CACHE_SHIFT); in hfs_bmap_alloc()
435 void hfs_bmap_free(struct hfs_bnode *node) in hfs_bmap_free() argument
443 hfs_dbg(BNODE_MOD, "btree_free_node: %u\n", node->this); in hfs_bmap_free()
444 BUG_ON(!node->this); in hfs_bmap_free()
445 tree = node->tree; in hfs_bmap_free()
446 nidx = node->this; in hfs_bmap_free()
447 node = hfs_bnode_find(tree, 0); in hfs_bmap_free()
448 if (IS_ERR(node)) in hfs_bmap_free()
450 len = hfs_brec_lenoff(node, 2, &off); in hfs_bmap_free()
455 i = node->next; in hfs_bmap_free()
456 hfs_bnode_put(node); in hfs_bmap_free()
461 node->this); in hfs_bmap_free()
464 node = hfs_bnode_find(tree, i); in hfs_bmap_free()
465 if (IS_ERR(node)) in hfs_bmap_free()
467 if (node->type != HFS_NODE_MAP) { in hfs_bmap_free()
471 node->this, node->type); in hfs_bmap_free()
472 hfs_bnode_put(node); in hfs_bmap_free()
475 len = hfs_brec_lenoff(node, 0, &off); in hfs_bmap_free()
477 off += node->page_offset + nidx / 8; in hfs_bmap_free()
478 page = node->page[off >> PAGE_CACHE_SHIFT]; in hfs_bmap_free()
486 node->this, node->type); in hfs_bmap_free()
488 hfs_bnode_put(node); in hfs_bmap_free()
494 hfs_bnode_put(node); in hfs_bmap_free()