Lines Matching refs:val
36 ssize_t (*getxattr_cb)(struct ceph_inode_info *ci, char *val,
56 static ssize_t ceph_vxattrcb_layout(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_layout() argument
93 memcpy(val, buf, len); in ceph_vxattrcb_layout()
97 memcpy(val + ret, pool_name, len); in ceph_vxattrcb_layout()
102 memcpy(val + ret, ns_field, len); in ceph_vxattrcb_layout()
104 memcpy(val + ret, pool_ns->str, pool_ns->len); in ceph_vxattrcb_layout()
120 int ceph_fmt_xattr(char *val, size_t size, const char *fmt, ...) in ceph_fmt_xattr() argument
137 memcpy(val, buf, ret); in ceph_fmt_xattr()
142 char *val, size_t size) in ceph_vxattrcb_layout_stripe_unit() argument
144 return ceph_fmt_xattr(val, size, "%u", ci->i_layout.stripe_unit); in ceph_vxattrcb_layout_stripe_unit()
148 char *val, size_t size) in ceph_vxattrcb_layout_stripe_count() argument
150 return ceph_fmt_xattr(val, size, "%u", ci->i_layout.stripe_count); in ceph_vxattrcb_layout_stripe_count()
154 char *val, size_t size) in ceph_vxattrcb_layout_object_size() argument
156 return ceph_fmt_xattr(val, size, "%u", ci->i_layout.object_size); in ceph_vxattrcb_layout_object_size()
160 char *val, size_t size) in ceph_vxattrcb_layout_pool() argument
173 memcpy(val, pool_name, ret); in ceph_vxattrcb_layout_pool()
175 ret = ceph_fmt_xattr(val, size, "%lld", pool); in ceph_vxattrcb_layout_pool()
182 char *val, size_t size) in ceph_vxattrcb_layout_pool_namespace() argument
190 memcpy(val, ns->str, ret); in ceph_vxattrcb_layout_pool_namespace()
198 static ssize_t ceph_vxattrcb_dir_entries(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_entries() argument
201 return ceph_fmt_xattr(val, size, "%lld", ci->i_files + ci->i_subdirs); in ceph_vxattrcb_dir_entries()
204 static ssize_t ceph_vxattrcb_dir_files(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_files() argument
207 return ceph_fmt_xattr(val, size, "%lld", ci->i_files); in ceph_vxattrcb_dir_files()
210 static ssize_t ceph_vxattrcb_dir_subdirs(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_subdirs() argument
213 return ceph_fmt_xattr(val, size, "%lld", ci->i_subdirs); in ceph_vxattrcb_dir_subdirs()
216 static ssize_t ceph_vxattrcb_dir_rentries(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_rentries() argument
219 return ceph_fmt_xattr(val, size, "%lld", in ceph_vxattrcb_dir_rentries()
223 static ssize_t ceph_vxattrcb_dir_rfiles(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_rfiles() argument
226 return ceph_fmt_xattr(val, size, "%lld", ci->i_rfiles); in ceph_vxattrcb_dir_rfiles()
229 static ssize_t ceph_vxattrcb_dir_rsubdirs(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_rsubdirs() argument
232 return ceph_fmt_xattr(val, size, "%lld", ci->i_rsubdirs); in ceph_vxattrcb_dir_rsubdirs()
235 static ssize_t ceph_vxattrcb_dir_rbytes(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_rbytes() argument
238 return ceph_fmt_xattr(val, size, "%lld", ci->i_rbytes); in ceph_vxattrcb_dir_rbytes()
241 static ssize_t ceph_vxattrcb_dir_rctime(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_rctime() argument
244 return ceph_fmt_xattr(val, size, "%lld.%09ld", ci->i_rctime.tv_sec, in ceph_vxattrcb_dir_rctime()
254 static ssize_t ceph_vxattrcb_dir_pin(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_dir_pin() argument
257 return ceph_fmt_xattr(val, size, "%d", (int)ci->i_dir_pin); in ceph_vxattrcb_dir_pin()
274 static ssize_t ceph_vxattrcb_quota(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_quota() argument
277 return ceph_fmt_xattr(val, size, "max_bytes=%llu max_files=%llu", in ceph_vxattrcb_quota()
282 char *val, size_t size) in ceph_vxattrcb_quota_max_bytes() argument
284 return ceph_fmt_xattr(val, size, "%llu", ci->i_max_bytes); in ceph_vxattrcb_quota_max_bytes()
288 char *val, size_t size) in ceph_vxattrcb_quota_max_files() argument
290 return ceph_fmt_xattr(val, size, "%llu", ci->i_max_files); in ceph_vxattrcb_quota_max_files()
299 static ssize_t ceph_vxattrcb_snap_btime(struct ceph_inode_info *ci, char *val, in ceph_vxattrcb_snap_btime() argument
302 return ceph_fmt_xattr(val, size, "%lld.%09ld", ci->i_snap_btime.tv_sec, in ceph_vxattrcb_snap_btime()
444 const char *val, int val_len, in __set_xattr() argument
483 kfree(val); in __set_xattr()
509 kfree(xattr->val); in __set_xattr()
520 if (val) in __set_xattr()
521 xattr->val = val; in __set_xattr()
523 xattr->val = ""; in __set_xattr()
527 xattr->should_free_val = (val && update_xattr); in __set_xattr()
536 ceph_vinop(&ci->vfs_inode), xattr, name_len, name, val_len, val); in __set_xattr()
563 xattr->val_len, xattr->val); in __get_xattr()
580 kfree(xattr->val); in __free_xattr()
596 kfree(xattr->val); in __remove_xattr()
665 const char *name, *val; in __build_xattrs() local
718 val = p; in __build_xattrs()
721 err = __set_xattr(ci, name, namelen, val, len, in __build_xattrs()
795 memcpy(dest, xattr->val, xattr->val_len); in __ceph_build_xattrs_blob()
902 memcpy(value, xattr->val, xattr->val_len); in __ceph_getxattr()