Lines Matching refs:loc

138 	int (*xlo_journal_access)(handle_t *handle, struct ocfs2_xa_loc *loc,
140 void (*xlo_journal_dirty)(handle_t *handle, struct ocfs2_xa_loc *loc);
146 void *(*xlo_offset_pointer)(struct ocfs2_xa_loc *loc, int offset);
149 int (*xlo_can_reuse)(struct ocfs2_xa_loc *loc,
153 int (*xlo_check_space)(struct ocfs2_xa_loc *loc,
160 int (*xlo_get_free_start)(struct ocfs2_xa_loc *loc);
166 void (*xlo_wipe_namevalue)(struct ocfs2_xa_loc *loc);
169 void (*xlo_add_entry)(struct ocfs2_xa_loc *loc, u32 name_hash);
172 void (*xlo_add_namevalue)(struct ocfs2_xa_loc *loc, int size);
178 void (*xlo_fill_value_buf)(struct ocfs2_xa_loc *loc,
1440 static int ocfs2_xa_journal_access(handle_t *handle, struct ocfs2_xa_loc *loc, in ocfs2_xa_journal_access() argument
1443 return loc->xl_ops->xlo_journal_access(handle, loc, type); in ocfs2_xa_journal_access()
1446 static void ocfs2_xa_journal_dirty(handle_t *handle, struct ocfs2_xa_loc *loc) in ocfs2_xa_journal_dirty() argument
1448 loc->xl_ops->xlo_journal_dirty(handle, loc); in ocfs2_xa_journal_dirty()
1452 static void *ocfs2_xa_offset_pointer(struct ocfs2_xa_loc *loc, int offset) in ocfs2_xa_offset_pointer() argument
1454 BUG_ON(offset >= loc->xl_size); in ocfs2_xa_offset_pointer()
1455 return loc->xl_ops->xlo_offset_pointer(loc, offset); in ocfs2_xa_offset_pointer()
1463 static void ocfs2_xa_wipe_namevalue(struct ocfs2_xa_loc *loc) in ocfs2_xa_wipe_namevalue() argument
1465 loc->xl_ops->xlo_wipe_namevalue(loc); in ocfs2_xa_wipe_namevalue()
1472 static int ocfs2_xa_get_free_start(struct ocfs2_xa_loc *loc) in ocfs2_xa_get_free_start() argument
1474 return loc->xl_ops->xlo_get_free_start(loc); in ocfs2_xa_get_free_start()
1478 static int ocfs2_xa_can_reuse_entry(struct ocfs2_xa_loc *loc, in ocfs2_xa_can_reuse_entry() argument
1481 return loc->xl_ops->xlo_can_reuse(loc, xi); in ocfs2_xa_can_reuse_entry()
1485 static int ocfs2_xa_check_space(struct ocfs2_xa_loc *loc, in ocfs2_xa_check_space() argument
1488 return loc->xl_ops->xlo_check_space(loc, xi); in ocfs2_xa_check_space()
1491 static void ocfs2_xa_add_entry(struct ocfs2_xa_loc *loc, u32 name_hash) in ocfs2_xa_add_entry() argument
1493 loc->xl_ops->xlo_add_entry(loc, name_hash); in ocfs2_xa_add_entry()
1494 loc->xl_entry->xe_name_hash = cpu_to_le32(name_hash); in ocfs2_xa_add_entry()
1500 loc->xl_entry->xe_name_offset = cpu_to_le16(loc->xl_size); in ocfs2_xa_add_entry()
1503 static void ocfs2_xa_add_namevalue(struct ocfs2_xa_loc *loc, in ocfs2_xa_add_namevalue() argument
1510 loc->xl_ops->xlo_add_namevalue(loc, size); in ocfs2_xa_add_namevalue()
1511 loc->xl_entry->xe_value_size = cpu_to_le64(xi->xi_value_len); in ocfs2_xa_add_namevalue()
1512 loc->xl_entry->xe_name_len = xi->xi_name_len; in ocfs2_xa_add_namevalue()
1513 ocfs2_xattr_set_type(loc->xl_entry, xi->xi_name_index); in ocfs2_xa_add_namevalue()
1514 ocfs2_xattr_set_local(loc->xl_entry, in ocfs2_xa_add_namevalue()
1517 nameval_offset = le16_to_cpu(loc->xl_entry->xe_name_offset); in ocfs2_xa_add_namevalue()
1518 nameval_buf = ocfs2_xa_offset_pointer(loc, nameval_offset); in ocfs2_xa_add_namevalue()
1523 static void ocfs2_xa_fill_value_buf(struct ocfs2_xa_loc *loc, in ocfs2_xa_fill_value_buf() argument
1526 int nameval_offset = le16_to_cpu(loc->xl_entry->xe_name_offset); in ocfs2_xa_fill_value_buf()
1527 int name_size = OCFS2_XATTR_SIZE(loc->xl_entry->xe_name_len); in ocfs2_xa_fill_value_buf()
1530 BUG_ON(ocfs2_xattr_is_local(loc->xl_entry)); in ocfs2_xa_fill_value_buf()
1531 BUG_ON(namevalue_size_xe(loc->xl_entry) != in ocfs2_xa_fill_value_buf()
1534 loc->xl_ops->xlo_fill_value_buf(loc, vb); in ocfs2_xa_fill_value_buf()
1536 (struct ocfs2_xattr_value_root *)ocfs2_xa_offset_pointer(loc, in ocfs2_xa_fill_value_buf()
1542 struct ocfs2_xa_loc *loc, int type) in ocfs2_xa_block_journal_access() argument
1544 struct buffer_head *bh = loc->xl_storage; in ocfs2_xa_block_journal_access()
1547 if (loc->xl_size == (bh->b_size - in ocfs2_xa_block_journal_access()
1553 return access(handle, INODE_CACHE(loc->xl_inode), bh, type); in ocfs2_xa_block_journal_access()
1557 struct ocfs2_xa_loc *loc) in ocfs2_xa_block_journal_dirty() argument
1559 struct buffer_head *bh = loc->xl_storage; in ocfs2_xa_block_journal_dirty()
1564 static void *ocfs2_xa_block_offset_pointer(struct ocfs2_xa_loc *loc, in ocfs2_xa_block_offset_pointer() argument
1567 return (char *)loc->xl_header + offset; in ocfs2_xa_block_offset_pointer()
1570 static int ocfs2_xa_block_can_reuse(struct ocfs2_xa_loc *loc, in ocfs2_xa_block_can_reuse() argument
1577 return namevalue_size_xe(loc->xl_entry) == in ocfs2_xa_block_can_reuse()
1581 static int ocfs2_xa_block_get_free_start(struct ocfs2_xa_loc *loc) in ocfs2_xa_block_get_free_start() argument
1583 struct ocfs2_xattr_header *xh = loc->xl_header; in ocfs2_xa_block_get_free_start()
1585 int offset, free_start = loc->xl_size; in ocfs2_xa_block_get_free_start()
1596 static int ocfs2_xa_block_check_space(struct ocfs2_xa_loc *loc, in ocfs2_xa_block_check_space() argument
1599 int count = le16_to_cpu(loc->xl_header->xh_count); in ocfs2_xa_block_check_space()
1600 int free_start = ocfs2_xa_get_free_start(loc); in ocfs2_xa_block_check_space()
1608 if (loc->xl_entry) { in ocfs2_xa_block_check_space()
1610 if (ocfs2_xa_can_reuse_entry(loc, xi)) in ocfs2_xa_block_check_space()
1613 needed_space -= ocfs2_xe_entry_usage(loc->xl_entry); in ocfs2_xa_block_check_space()
1624 static void ocfs2_xa_block_wipe_namevalue(struct ocfs2_xa_loc *loc) in ocfs2_xa_block_wipe_namevalue() argument
1628 struct ocfs2_xattr_entry *entry = loc->xl_entry; in ocfs2_xa_block_wipe_namevalue()
1629 struct ocfs2_xattr_header *xh = loc->xl_header; in ocfs2_xa_block_wipe_namevalue()
1634 first_namevalue_offset = ocfs2_xa_get_free_start(loc); in ocfs2_xa_block_wipe_namevalue()
1656 static void ocfs2_xa_block_add_entry(struct ocfs2_xa_loc *loc, u32 name_hash) in ocfs2_xa_block_add_entry() argument
1658 int count = le16_to_cpu(loc->xl_header->xh_count); in ocfs2_xa_block_add_entry()
1659 loc->xl_entry = &(loc->xl_header->xh_entries[count]); in ocfs2_xa_block_add_entry()
1660 le16_add_cpu(&loc->xl_header->xh_count, 1); in ocfs2_xa_block_add_entry()
1661 memset(loc->xl_entry, 0, sizeof(struct ocfs2_xattr_entry)); in ocfs2_xa_block_add_entry()
1664 static void ocfs2_xa_block_add_namevalue(struct ocfs2_xa_loc *loc, int size) in ocfs2_xa_block_add_namevalue() argument
1666 int free_start = ocfs2_xa_get_free_start(loc); in ocfs2_xa_block_add_namevalue()
1668 loc->xl_entry->xe_name_offset = cpu_to_le16(free_start - size); in ocfs2_xa_block_add_namevalue()
1671 static void ocfs2_xa_block_fill_value_buf(struct ocfs2_xa_loc *loc, in ocfs2_xa_block_fill_value_buf() argument
1674 struct buffer_head *bh = loc->xl_storage; in ocfs2_xa_block_fill_value_buf()
1676 if (loc->xl_size == (bh->b_size - in ocfs2_xa_block_fill_value_buf()
1703 struct ocfs2_xa_loc *loc, int type) in ocfs2_xa_bucket_journal_access() argument
1705 struct ocfs2_xattr_bucket *bucket = loc->xl_storage; in ocfs2_xa_bucket_journal_access()
1711 struct ocfs2_xa_loc *loc) in ocfs2_xa_bucket_journal_dirty() argument
1713 struct ocfs2_xattr_bucket *bucket = loc->xl_storage; in ocfs2_xa_bucket_journal_dirty()
1718 static void *ocfs2_xa_bucket_offset_pointer(struct ocfs2_xa_loc *loc, in ocfs2_xa_bucket_offset_pointer() argument
1721 struct ocfs2_xattr_bucket *bucket = loc->xl_storage; in ocfs2_xa_bucket_offset_pointer()
1725 block = offset >> loc->xl_inode->i_sb->s_blocksize_bits; in ocfs2_xa_bucket_offset_pointer()
1726 block_offset = offset % loc->xl_inode->i_sb->s_blocksize; in ocfs2_xa_bucket_offset_pointer()
1731 static int ocfs2_xa_bucket_can_reuse(struct ocfs2_xa_loc *loc, in ocfs2_xa_bucket_can_reuse() argument
1734 return namevalue_size_xe(loc->xl_entry) >= in ocfs2_xa_bucket_can_reuse()
1738 static int ocfs2_xa_bucket_get_free_start(struct ocfs2_xa_loc *loc) in ocfs2_xa_bucket_get_free_start() argument
1740 struct ocfs2_xattr_bucket *bucket = loc->xl_storage; in ocfs2_xa_bucket_get_free_start()
1758 static int ocfs2_xa_bucket_check_space(struct ocfs2_xa_loc *loc, in ocfs2_xa_bucket_check_space() argument
1762 int count = le16_to_cpu(loc->xl_header->xh_count); in ocfs2_xa_bucket_check_space()
1763 int free_start = ocfs2_xa_get_free_start(loc); in ocfs2_xa_bucket_check_space()
1766 struct super_block *sb = loc->xl_inode->i_sb; in ocfs2_xa_bucket_check_space()
1774 if (loc->xl_entry) { in ocfs2_xa_bucket_check_space()
1776 if (ocfs2_xa_can_reuse_entry(loc, xi)) in ocfs2_xa_bucket_check_space()
1803 static void ocfs2_xa_bucket_wipe_namevalue(struct ocfs2_xa_loc *loc) in ocfs2_xa_bucket_wipe_namevalue() argument
1805 le16_add_cpu(&loc->xl_header->xh_name_value_len, in ocfs2_xa_bucket_wipe_namevalue()
1806 -namevalue_size_xe(loc->xl_entry)); in ocfs2_xa_bucket_wipe_namevalue()
1809 static void ocfs2_xa_bucket_add_entry(struct ocfs2_xa_loc *loc, u32 name_hash) in ocfs2_xa_bucket_add_entry() argument
1811 struct ocfs2_xattr_header *xh = loc->xl_header; in ocfs2_xa_bucket_add_entry()
1840 loc->xl_entry = &xh->xh_entries[low]; in ocfs2_xa_bucket_add_entry()
1841 memset(loc->xl_entry, 0, sizeof(struct ocfs2_xattr_entry)); in ocfs2_xa_bucket_add_entry()
1844 static void ocfs2_xa_bucket_add_namevalue(struct ocfs2_xa_loc *loc, int size) in ocfs2_xa_bucket_add_namevalue() argument
1846 int free_start = ocfs2_xa_get_free_start(loc); in ocfs2_xa_bucket_add_namevalue()
1847 struct ocfs2_xattr_header *xh = loc->xl_header; in ocfs2_xa_bucket_add_namevalue()
1848 struct super_block *sb = loc->xl_inode->i_sb; in ocfs2_xa_bucket_add_namevalue()
1853 loc->xl_entry->xe_name_offset = cpu_to_le16(nameval_offset); in ocfs2_xa_bucket_add_namevalue()
1859 static void ocfs2_xa_bucket_fill_value_buf(struct ocfs2_xa_loc *loc, in ocfs2_xa_bucket_fill_value_buf() argument
1862 struct ocfs2_xattr_bucket *bucket = loc->xl_storage; in ocfs2_xa_bucket_fill_value_buf()
1863 struct super_block *sb = loc->xl_inode->i_sb; in ocfs2_xa_bucket_fill_value_buf()
1864 int nameval_offset = le16_to_cpu(loc->xl_entry->xe_name_offset); in ocfs2_xa_bucket_fill_value_buf()
1865 int size = namevalue_size_xe(loc->xl_entry); in ocfs2_xa_bucket_fill_value_buf()
1892 static unsigned int ocfs2_xa_value_clusters(struct ocfs2_xa_loc *loc) in ocfs2_xa_value_clusters() argument
1896 if (ocfs2_xattr_is_local(loc->xl_entry)) in ocfs2_xa_value_clusters()
1899 ocfs2_xa_fill_value_buf(loc, &vb); in ocfs2_xa_value_clusters()
1903 static int ocfs2_xa_value_truncate(struct ocfs2_xa_loc *loc, u64 bytes, in ocfs2_xa_value_truncate() argument
1909 ocfs2_xa_fill_value_buf(loc, &vb); in ocfs2_xa_value_truncate()
1910 trunc_rc = ocfs2_xattr_value_truncate(loc->xl_inode, &vb, bytes, in ocfs2_xa_value_truncate()
1923 access_rc = ocfs2_xa_journal_access(ctxt->handle, loc, in ocfs2_xa_value_truncate()
1930 static void ocfs2_xa_remove_entry(struct ocfs2_xa_loc *loc) in ocfs2_xa_remove_entry() argument
1933 struct ocfs2_xattr_header *xh = loc->xl_header; in ocfs2_xa_remove_entry()
1934 struct ocfs2_xattr_entry *entry = loc->xl_entry; in ocfs2_xa_remove_entry()
1936 ocfs2_xa_wipe_namevalue(loc); in ocfs2_xa_remove_entry()
1937 loc->xl_entry = NULL; in ocfs2_xa_remove_entry()
1981 static void ocfs2_xa_cleanup_value_truncate(struct ocfs2_xa_loc *loc, in ocfs2_xa_cleanup_value_truncate() argument
1985 unsigned int new_clusters = ocfs2_xa_value_clusters(loc); in ocfs2_xa_cleanup_value_truncate()
1986 char *nameval_buf = ocfs2_xa_offset_pointer(loc, in ocfs2_xa_cleanup_value_truncate()
1987 le16_to_cpu(loc->xl_entry->xe_name_offset)); in ocfs2_xa_cleanup_value_truncate()
1993 what, loc->xl_entry->xe_name_len, nameval_buf, in ocfs2_xa_cleanup_value_truncate()
1995 ocfs2_xa_remove_entry(loc); in ocfs2_xa_cleanup_value_truncate()
2001 loc->xl_entry->xe_name_len, nameval_buf, in ocfs2_xa_cleanup_value_truncate()
2003 ocfs2_xa_remove_entry(loc); in ocfs2_xa_cleanup_value_truncate()
2009 loc->xl_entry->xe_name_len, nameval_buf, in ocfs2_xa_cleanup_value_truncate()
2013 static int ocfs2_xa_remove(struct ocfs2_xa_loc *loc, in ocfs2_xa_remove() argument
2019 if (!ocfs2_xattr_is_local(loc->xl_entry)) { in ocfs2_xa_remove()
2020 orig_clusters = ocfs2_xa_value_clusters(loc); in ocfs2_xa_remove()
2021 rc = ocfs2_xa_value_truncate(loc, 0, ctxt); in ocfs2_xa_remove()
2030 if (orig_clusters != ocfs2_xa_value_clusters(loc)) in ocfs2_xa_remove()
2032 ocfs2_xa_cleanup_value_truncate(loc, "removing", in ocfs2_xa_remove()
2039 ocfs2_xa_remove_entry(loc); in ocfs2_xa_remove()
2045 static void ocfs2_xa_install_value_root(struct ocfs2_xa_loc *loc) in ocfs2_xa_install_value_root() argument
2047 int name_size = OCFS2_XATTR_SIZE(loc->xl_entry->xe_name_len); in ocfs2_xa_install_value_root()
2050 nameval_buf = ocfs2_xa_offset_pointer(loc, in ocfs2_xa_install_value_root()
2051 le16_to_cpu(loc->xl_entry->xe_name_offset)); in ocfs2_xa_install_value_root()
2060 static int ocfs2_xa_reuse_entry(struct ocfs2_xa_loc *loc, in ocfs2_xa_reuse_entry() argument
2068 int xe_local = ocfs2_xattr_is_local(loc->xl_entry); in ocfs2_xa_reuse_entry()
2071 BUG_ON(OCFS2_XATTR_SIZE(loc->xl_entry->xe_name_len) != in ocfs2_xa_reuse_entry()
2074 nameval_buf = ocfs2_xa_offset_pointer(loc, in ocfs2_xa_reuse_entry()
2075 le16_to_cpu(loc->xl_entry->xe_name_offset)); in ocfs2_xa_reuse_entry()
2078 namevalue_size_xe(loc->xl_entry) - name_size); in ocfs2_xa_reuse_entry()
2080 ocfs2_xa_install_value_root(loc); in ocfs2_xa_reuse_entry()
2082 orig_clusters = ocfs2_xa_value_clusters(loc); in ocfs2_xa_reuse_entry()
2084 rc = ocfs2_xa_value_truncate(loc, 0, ctxt); in ocfs2_xa_reuse_entry()
2089 namevalue_size_xe(loc->xl_entry) - in ocfs2_xa_reuse_entry()
2091 } else if (le64_to_cpu(loc->xl_entry->xe_value_size) > in ocfs2_xa_reuse_entry()
2093 rc = ocfs2_xa_value_truncate(loc, xi->xi_value_len, in ocfs2_xa_reuse_entry()
2100 ocfs2_xa_cleanup_value_truncate(loc, "reusing", in ocfs2_xa_reuse_entry()
2106 loc->xl_entry->xe_value_size = cpu_to_le64(xi->xi_value_len); in ocfs2_xa_reuse_entry()
2107 ocfs2_xattr_set_local(loc->xl_entry, xi_local); in ocfs2_xa_reuse_entry()
2121 static int ocfs2_xa_prepare_entry(struct ocfs2_xa_loc *loc, in ocfs2_xa_prepare_entry() argument
2130 rc = ocfs2_xa_check_space(loc, xi); in ocfs2_xa_prepare_entry()
2134 if (loc->xl_entry) { in ocfs2_xa_prepare_entry()
2135 if (ocfs2_xa_can_reuse_entry(loc, xi)) { in ocfs2_xa_prepare_entry()
2136 orig_value_size = loc->xl_entry->xe_value_size; in ocfs2_xa_prepare_entry()
2137 rc = ocfs2_xa_reuse_entry(loc, xi, ctxt); in ocfs2_xa_prepare_entry()
2143 if (!ocfs2_xattr_is_local(loc->xl_entry)) { in ocfs2_xa_prepare_entry()
2144 orig_clusters = ocfs2_xa_value_clusters(loc); in ocfs2_xa_prepare_entry()
2145 rc = ocfs2_xa_value_truncate(loc, 0, ctxt); in ocfs2_xa_prepare_entry()
2148 ocfs2_xa_cleanup_value_truncate(loc, in ocfs2_xa_prepare_entry()
2154 ocfs2_xa_wipe_namevalue(loc); in ocfs2_xa_prepare_entry()
2156 ocfs2_xa_add_entry(loc, name_hash); in ocfs2_xa_prepare_entry()
2162 ocfs2_xa_add_namevalue(loc, xi); in ocfs2_xa_prepare_entry()
2164 ocfs2_xa_install_value_root(loc); in ocfs2_xa_prepare_entry()
2168 orig_clusters = ocfs2_xa_value_clusters(loc); in ocfs2_xa_prepare_entry()
2169 rc = ocfs2_xa_value_truncate(loc, xi->xi_value_len, ctxt); in ocfs2_xa_prepare_entry()
2172 ocfs2_xa_cleanup_value_truncate(loc, "growing", in ocfs2_xa_prepare_entry()
2180 if (loc->xl_entry) { in ocfs2_xa_prepare_entry()
2182 loc->xl_entry->xe_value_size = orig_value_size; in ocfs2_xa_prepare_entry()
2197 static int ocfs2_xa_store_value(struct ocfs2_xa_loc *loc, in ocfs2_xa_store_value() argument
2202 int nameval_offset = le16_to_cpu(loc->xl_entry->xe_name_offset); in ocfs2_xa_store_value()
2207 nameval_buf = ocfs2_xa_offset_pointer(loc, nameval_offset); in ocfs2_xa_store_value()
2209 ocfs2_xa_fill_value_buf(loc, &vb); in ocfs2_xa_store_value()
2210 rc = __ocfs2_xattr_set_value_outside(loc->xl_inode, in ocfs2_xa_store_value()
2220 static int ocfs2_xa_set(struct ocfs2_xa_loc *loc, in ocfs2_xa_set() argument
2225 u32 name_hash = ocfs2_xattr_name_hash(loc->xl_inode, xi->xi_name, in ocfs2_xa_set()
2228 ret = ocfs2_xa_journal_access(ctxt->handle, loc, in ocfs2_xa_set()
2243 ret = ocfs2_xa_remove(loc, ctxt); in ocfs2_xa_set()
2247 ret = ocfs2_xa_prepare_entry(loc, xi, name_hash, ctxt); in ocfs2_xa_set()
2254 ret = ocfs2_xa_store_value(loc, xi, ctxt); in ocfs2_xa_set()
2259 ocfs2_xa_journal_dirty(ctxt->handle, loc); in ocfs2_xa_set()
2265 static void ocfs2_init_dinode_xa_loc(struct ocfs2_xa_loc *loc, in ocfs2_init_dinode_xa_loc() argument
2274 loc->xl_inode = inode; in ocfs2_init_dinode_xa_loc()
2275 loc->xl_ops = &ocfs2_xa_block_loc_ops; in ocfs2_init_dinode_xa_loc()
2276 loc->xl_storage = bh; in ocfs2_init_dinode_xa_loc()
2277 loc->xl_entry = entry; in ocfs2_init_dinode_xa_loc()
2278 loc->xl_size = le16_to_cpu(di->i_xattr_inline_size); in ocfs2_init_dinode_xa_loc()
2279 loc->xl_header = in ocfs2_init_dinode_xa_loc()
2281 loc->xl_size); in ocfs2_init_dinode_xa_loc()
2284 static void ocfs2_init_xattr_block_xa_loc(struct ocfs2_xa_loc *loc, in ocfs2_init_xattr_block_xa_loc() argument
2294 loc->xl_inode = inode; in ocfs2_init_xattr_block_xa_loc()
2295 loc->xl_ops = &ocfs2_xa_block_loc_ops; in ocfs2_init_xattr_block_xa_loc()
2296 loc->xl_storage = bh; in ocfs2_init_xattr_block_xa_loc()
2297 loc->xl_header = &(xb->xb_attrs.xb_header); in ocfs2_init_xattr_block_xa_loc()
2298 loc->xl_entry = entry; in ocfs2_init_xattr_block_xa_loc()
2299 loc->xl_size = bh->b_size - offsetof(struct ocfs2_xattr_block, in ocfs2_init_xattr_block_xa_loc()
2303 static void ocfs2_init_xattr_bucket_xa_loc(struct ocfs2_xa_loc *loc, in ocfs2_init_xattr_bucket_xa_loc() argument
2307 loc->xl_inode = bucket->bu_inode; in ocfs2_init_xattr_bucket_xa_loc()
2308 loc->xl_ops = &ocfs2_xa_bucket_loc_ops; in ocfs2_init_xattr_bucket_xa_loc()
2309 loc->xl_storage = bucket; in ocfs2_init_xattr_bucket_xa_loc()
2310 loc->xl_header = bucket_xh(bucket); in ocfs2_init_xattr_bucket_xa_loc()
2311 loc->xl_entry = entry; in ocfs2_init_xattr_bucket_xa_loc()
2312 loc->xl_size = OCFS2_XATTR_BUCKET_SIZE; in ocfs2_init_xattr_bucket_xa_loc()
2774 struct ocfs2_xa_loc loc; in ocfs2_xattr_ibody_set() local
2789 ocfs2_init_dinode_xa_loc(&loc, inode, xs->inode_bh, in ocfs2_xattr_ibody_set()
2791 ret = ocfs2_xa_set(&loc, xi, ctxt); in ocfs2_xattr_ibody_set()
2797 xs->here = loc.xl_entry; in ocfs2_xattr_ibody_set()
2958 struct ocfs2_xa_loc loc; in ocfs2_xattr_block_set() local
2978 ocfs2_init_xattr_block_xa_loc(&loc, inode, xs->xattr_bh, in ocfs2_xattr_block_set()
2981 ret = ocfs2_xa_set(&loc, xi, ctxt); in ocfs2_xattr_block_set()
2983 xs->here = loc.xl_entry; in ocfs2_xattr_block_set()
5548 struct ocfs2_xa_loc loc; in ocfs2_xattr_set_entry_bucket() local
5552 ocfs2_init_xattr_bucket_xa_loc(&loc, xs->bucket, in ocfs2_xattr_set_entry_bucket()
5554 ret = ocfs2_xa_set(&loc, xi, ctxt); in ocfs2_xattr_set_entry_bucket()
5556 xs->here = loc.xl_entry; in ocfs2_xattr_set_entry_bucket()
5572 ret = ocfs2_xa_set(&loc, xi, ctxt); in ocfs2_xattr_set_entry_bucket()
5574 xs->here = loc.xl_entry; in ocfs2_xattr_set_entry_bucket()