Lines Matching refs:xi
160 struct ocfs2_xattr_info *xi);
164 struct ocfs2_xattr_info *xi);
236 static int namevalue_size_xi(struct ocfs2_xattr_info *xi) in namevalue_size_xi() argument
238 return namevalue_size(xi->xi_name_len, xi->xi_value_len); in namevalue_size_xi()
277 struct ocfs2_xattr_info *xi,
304 struct ocfs2_xattr_info *xi,
575 static int ocfs2_xi_entry_usage(struct ocfs2_xattr_info *xi) in ocfs2_xi_entry_usage() argument
577 return namevalue_size_xi(xi) + in ocfs2_xi_entry_usage()
1464 struct ocfs2_xattr_info *xi) in ocfs2_xa_can_reuse_entry() argument
1466 return loc->xl_ops->xlo_can_reuse(loc, xi); in ocfs2_xa_can_reuse_entry()
1471 struct ocfs2_xattr_info *xi) in ocfs2_xa_check_space() argument
1473 return loc->xl_ops->xlo_check_space(loc, xi); in ocfs2_xa_check_space()
1489 struct ocfs2_xattr_info *xi) in ocfs2_xa_add_namevalue() argument
1491 int size = namevalue_size_xi(xi); in ocfs2_xa_add_namevalue()
1496 loc->xl_entry->xe_value_size = cpu_to_le64(xi->xi_value_len); in ocfs2_xa_add_namevalue()
1497 loc->xl_entry->xe_name_len = xi->xi_name_len; in ocfs2_xa_add_namevalue()
1498 ocfs2_xattr_set_type(loc->xl_entry, xi->xi_name_index); in ocfs2_xa_add_namevalue()
1500 xi->xi_value_len <= OCFS2_XATTR_INLINE_SIZE); in ocfs2_xa_add_namevalue()
1505 memcpy(nameval_buf, xi->xi_name, xi->xi_name_len); in ocfs2_xa_add_namevalue()
1556 struct ocfs2_xattr_info *xi) in ocfs2_xa_block_can_reuse() argument
1563 namevalue_size_xi(xi); in ocfs2_xa_block_can_reuse()
1582 struct ocfs2_xattr_info *xi) in ocfs2_xa_block_check_space() argument
1586 int needed_space = ocfs2_xi_entry_usage(xi); in ocfs2_xa_block_check_space()
1595 if (ocfs2_xa_can_reuse_entry(loc, xi)) in ocfs2_xa_block_check_space()
1717 struct ocfs2_xattr_info *xi) in ocfs2_xa_bucket_can_reuse() argument
1720 namevalue_size_xi(xi); in ocfs2_xa_bucket_can_reuse()
1744 struct ocfs2_xattr_info *xi) in ocfs2_xa_bucket_check_space() argument
1749 int needed_space = ocfs2_xi_entry_usage(xi); in ocfs2_xa_bucket_check_space()
1750 int size = namevalue_size_xi(xi); in ocfs2_xa_bucket_check_space()
1761 if (ocfs2_xa_can_reuse_entry(loc, xi)) in ocfs2_xa_bucket_check_space()
2046 struct ocfs2_xattr_info *xi, in ocfs2_xa_reuse_entry() argument
2050 int name_size = OCFS2_XATTR_SIZE(xi->xi_name_len); in ocfs2_xa_reuse_entry()
2054 int xi_local = xi->xi_value_len <= OCFS2_XATTR_INLINE_SIZE; in ocfs2_xa_reuse_entry()
2077 xi->xi_value_len) { in ocfs2_xa_reuse_entry()
2078 rc = ocfs2_xa_value_truncate(loc, xi->xi_value_len, in ocfs2_xa_reuse_entry()
2091 loc->xl_entry->xe_value_size = cpu_to_le64(xi->xi_value_len); in ocfs2_xa_reuse_entry()
2107 struct ocfs2_xattr_info *xi, in ocfs2_xa_prepare_entry() argument
2115 rc = ocfs2_xa_check_space(loc, xi); in ocfs2_xa_prepare_entry()
2120 if (ocfs2_xa_can_reuse_entry(loc, xi)) { in ocfs2_xa_prepare_entry()
2122 rc = ocfs2_xa_reuse_entry(loc, xi, ctxt); in ocfs2_xa_prepare_entry()
2147 ocfs2_xa_add_namevalue(loc, xi); in ocfs2_xa_prepare_entry()
2148 if (xi->xi_value_len > OCFS2_XATTR_INLINE_SIZE) in ocfs2_xa_prepare_entry()
2152 if (xi->xi_value_len > OCFS2_XATTR_INLINE_SIZE) { in ocfs2_xa_prepare_entry()
2154 rc = ocfs2_xa_value_truncate(loc, xi->xi_value_len, ctxt); in ocfs2_xa_prepare_entry()
2183 struct ocfs2_xattr_info *xi, in ocfs2_xa_store_value() argument
2188 int name_size = OCFS2_XATTR_SIZE(xi->xi_name_len); in ocfs2_xa_store_value()
2193 if (xi->xi_value_len > OCFS2_XATTR_INLINE_SIZE) { in ocfs2_xa_store_value()
2197 xi->xi_value, in ocfs2_xa_store_value()
2198 xi->xi_value_len); in ocfs2_xa_store_value()
2200 memcpy(nameval_buf + name_size, xi->xi_value, xi->xi_value_len); in ocfs2_xa_store_value()
2206 struct ocfs2_xattr_info *xi, in ocfs2_xa_set() argument
2210 u32 name_hash = ocfs2_xattr_name_hash(loc->xl_inode, xi->xi_name, in ocfs2_xa_set()
2211 xi->xi_name_len); in ocfs2_xa_set()
2227 if (!xi->xi_value) { in ocfs2_xa_set()
2232 ret = ocfs2_xa_prepare_entry(loc, xi, name_hash, ctxt); in ocfs2_xa_set()
2239 ret = ocfs2_xa_store_value(loc, xi, ctxt); in ocfs2_xa_set()
2753 struct ocfs2_xattr_info *xi, in ocfs2_xattr_ibody_set() argument
2776 ret = ocfs2_xa_set(&loc, xi, ctxt); in ocfs2_xattr_ibody_set()
2936 struct ocfs2_xattr_info *xi, in ocfs2_xattr_block_set() argument
2966 ret = ocfs2_xa_set(&loc, xi, ctxt); in ocfs2_xattr_block_set()
2979 ret = ocfs2_xattr_set_entry_index_block(inode, xi, xs, ctxt); in ocfs2_xattr_block_set()
2987 struct ocfs2_xattr_info *xi, in ocfs2_xattr_can_be_in_inode() argument
3012 if (free >= (sizeof(struct ocfs2_xattr_entry) + namevalue_size_xi(xi))) in ocfs2_xattr_can_be_in_inode()
3020 struct ocfs2_xattr_info *xi, in ocfs2_calc_xattr_set_need() argument
3036 xi->xi_value_len); in ocfs2_calc_xattr_set_need()
3044 if (xi->xi_value_len > OCFS2_XATTR_INLINE_SIZE) in ocfs2_calc_xattr_set_need()
3051 if (xi->xi_value_len > OCFS2_XATTR_INLINE_SIZE) { in ocfs2_calc_xattr_set_need()
3095 if (!xi->xi_value) { in ocfs2_calc_xattr_set_need()
3112 if (ocfs2_xattr_can_be_in_inode(inode, xi, xis)) { in ocfs2_calc_xattr_set_need()
3124 if (xi->xi_value_len > OCFS2_XATTR_INLINE_SIZE) { in ocfs2_calc_xattr_set_need()
3156 (value_size >= xi->xi_value_len)) || in ocfs2_calc_xattr_set_need()
3158 OCFS2_XATTR_ROOT_SIZE >= xi->xi_value_len)) in ocfs2_calc_xattr_set_need()
3210 if (xi->xi_value_len > OCFS2_XATTR_INLINE_SIZE) { in ocfs2_calc_xattr_set_need()
3232 struct ocfs2_xattr_info *xi, in ocfs2_init_xattr_set_ctxt() argument
3246 ret = ocfs2_calc_xattr_set_need(inode, di, xi, xis, xbs, in ocfs2_init_xattr_set_ctxt()
3254 trace_ocfs2_init_xattr_set_ctxt(xi->xi_name, meta_add, in ocfs2_init_xattr_set_ctxt()
3288 struct ocfs2_xattr_info *xi, in __ocfs2_xattr_set_handle() argument
3295 if (!xi->xi_value) { in __ocfs2_xattr_set_handle()
3298 ret = ocfs2_xattr_ibody_set(inode, xi, xis, ctxt); in __ocfs2_xattr_set_handle()
3300 ret = ocfs2_xattr_block_set(inode, xi, xbs, ctxt); in __ocfs2_xattr_set_handle()
3303 ret = ocfs2_xattr_ibody_set(inode, xi, xis, ctxt); in __ocfs2_xattr_set_handle()
3309 xi->xi_value = NULL; in __ocfs2_xattr_set_handle()
3310 xi->xi_value_len = 0; in __ocfs2_xattr_set_handle()
3316 xi, in __ocfs2_xattr_set_handle()
3333 ret = ocfs2_xattr_block_set(inode, xi, xbs, ctxt); in __ocfs2_xattr_set_handle()
3337 xi->xi_name_index, in __ocfs2_xattr_set_handle()
3338 xi->xi_name, xbs); in __ocfs2_xattr_set_handle()
3346 xi, in __ocfs2_xattr_set_handle()
3368 ret = ocfs2_xattr_block_set(inode, xi, xbs, ctxt); in __ocfs2_xattr_set_handle()
3376 xi->xi_value = NULL; in __ocfs2_xattr_set_handle()
3377 xi->xi_value_len = 0; in __ocfs2_xattr_set_handle()
3381 xi, in __ocfs2_xattr_set_handle()
3397 ret = ocfs2_xattr_ibody_set(inode, xi, in __ocfs2_xattr_set_handle()
3441 struct ocfs2_xattr_info xi = { in ocfs2_xattr_set_handle() local
3493 ret = __ocfs2_xattr_set_handle(inode, di, &xi, &xis, &xbs, &ctxt); in ocfs2_xattr_set_handle()
3525 struct ocfs2_xattr_info xi = { in ocfs2_xattr_set() local
3592 ret = ocfs2_prepare_refcount_xattr(inode, di, &xi, in ocfs2_xattr_set()
3613 ret = ocfs2_init_xattr_set_ctxt(inode, di, &xi, &xis, in ocfs2_xattr_set()
3629 ret = __ocfs2_xattr_set_handle(inode, di, &xi, &xis, &xbs, &ctxt); in ocfs2_xattr_set()
5531 struct ocfs2_xattr_info *xi, in ocfs2_xattr_set_entry_bucket() argument
5538 trace_ocfs2_xattr_set_entry_bucket(xi->xi_name); in ocfs2_xattr_set_entry_bucket()
5542 ret = ocfs2_xa_set(&loc, xi, ctxt); in ocfs2_xattr_set_entry_bucket()
5560 ret = ocfs2_xa_set(&loc, xi, ctxt); in ocfs2_xattr_set_entry_bucket()
5574 struct ocfs2_xattr_info *xi, in ocfs2_xattr_set_entry_index_block() argument
5580 trace_ocfs2_xattr_set_entry_index_block(xi->xi_name); in ocfs2_xattr_set_entry_index_block()
5582 ret = ocfs2_xattr_set_entry_bucket(inode, xi, xs, ctxt); in ocfs2_xattr_set_entry_index_block()
5600 xi->xi_name); in ocfs2_xattr_set_entry_index_block()
5624 xi->xi_name_index, in ocfs2_xattr_set_entry_index_block()
5625 xi->xi_name, xs); in ocfs2_xattr_set_entry_index_block()
5631 ret = ocfs2_xattr_set_entry_bucket(inode, xi, xs, ctxt); in ocfs2_xattr_set_entry_index_block()
5747 struct ocfs2_xattr_info *xi, in ocfs2_prepare_refcount_xattr() argument
5849 if (!xi->xi_value || xi->xi_value_len <= OCFS2_XATTR_INLINE_SIZE) { in ocfs2_prepare_refcount_xattr()