Lines Matching defs:leaf

34  * beginning of the leaf block. The dirents reside in leaves when
41 * used as an array of 64-bit block pointers pointing to the leaf blocks. The
43 * block pointer in the array that points to the same leaf. In fact, when a
45 * point to the same leaf.
47 * When a leaf is completely full, the size of the hash table can be
774 * get_leaf_nr - Get a leaf number associated with the index
776 * @index: hash table index of the targeted leaf
777 * @leaf_out: Resulting leaf block number
820 struct gfs2_leaf *leaf;
838 leaf = (struct gfs2_leaf *)bh->b_data;
839 ln = be64_to_cpu(leaf->lf_next);
871 struct gfs2_leaf *leaf;
885 leaf = (struct gfs2_leaf *)bh->b_data;
886 leaf->lf_depth = cpu_to_be16(depth);
887 leaf->lf_entries = 0;
888 leaf->lf_dirent_format = cpu_to_be32(GFS2_FORMAT_DE);
889 leaf->lf_next = 0;
890 leaf->lf_inode = cpu_to_be64(ip->i_no_addr);
891 leaf->lf_dist = cpu_to_be32(1);
892 leaf->lf_nsec = cpu_to_be32(tv.tv_nsec);
893 leaf->lf_sec = cpu_to_be64(tv.tv_sec);
894 memset(leaf->lf_reserved2, 0, sizeof(leaf->lf_reserved2));
895 dent = (struct gfs2_dirent *)(leaf+1);
898 return leaf;
915 struct gfs2_leaf *leaf;
925 /* Turn over a new leaf */
927 leaf = new_leaf(inode, &bh, 0);
928 if (!leaf)
933 leaf->lf_entries = cpu_to_be16(dip->i_entries);
968 /* We're done with the new leaf block, now setup the new
992 * dir_split_leaf - Split a leaf block into two
1017 /* Get the old leaf block */
1037 /* Compute the start and len of leaf pointers in the hash table. */
1315 current leaf */
1376 unsigned leaves = 0, leaf = 0, offset, sort_offset;
1407 * zone in case the number of entries in the leaf is corrupt.
1409 * leaf block.
1435 "leaf %llu, entries2 (%u) != "
1444 sort_id = gfs2_set_cookies(sdp, bh, leaf, &darr[offset],
1450 larr[leaf++] = bh;
1452 larr[leaf++] = NULL;
1461 for(i = 0; i < leaf; i++)
1469 * gfs2_dir_readahead - Issue read-ahead requests for leaf blocks.
1476 * have the leaf, and therefore we don't have the depth, and therefore we
1704 * dir_new_leaf - Add a new leaf onto hash chain
1708 * This adds a new dir leaf onto an existing leaf when there is not
1711 * leaf blocks, so it will only occur for very large directories.
1713 * The dist parameter is set to 1 for leaf blocks directly attached
1715 * etc. We are thus able to tell the difference between an old leaf
1726 struct gfs2_leaf *leaf, *oleaf;
1750 leaf = new_leaf(inode, &bh, be16_to_cpu(oleaf->lf_depth));
1751 if (!leaf) {
1755 leaf->lf_dist = cpu_to_be32(dist);
1801 struct gfs2_leaf *leaf;
1818 leaf = (struct gfs2_leaf *)bh->b_data;
1819 be16_add_cpu(&leaf->lf_entries, 1);
1820 leaf->lf_nsec = cpu_to_be32(tv.tv_nsec);
1821 leaf->lf_sec = cpu_to_be64(tv.tv_sec);
1900 struct gfs2_leaf *leaf = (struct gfs2_leaf *)bh->b_data;
1901 u16 entries = be16_to_cpu(leaf->lf_entries);
1904 leaf->lf_entries = cpu_to_be16(--entries);
1905 leaf->lf_nsec = cpu_to_be32(tv.tv_nsec);
1906 leaf->lf_sec = cpu_to_be64(tv.tv_sec);
1960 * leaf_dealloc - Deallocate a directory leaf
1963 * @len: the number of pointers to this leaf
1964 * @leaf_no: the leaf number
1965 * @leaf_bh: buffer_head for the starting leaf
1966 * @last_dealloc: 1 if this is the final dealloc for the leaf, else 0
2090 * gfs2_dir_exhash_dealloc - free all the leaf blocks in a directory
2102 struct gfs2_leaf *leaf;
2121 leaf = (struct gfs2_leaf *)bh->b_data;
2122 len = BIT(dip->i_depth - be16_to_cpu(leaf->lf_depth));