Lines Matching refs:context
198 struct xfs_attr_list_context *context, in __xfs_xattr_put_listent() argument
207 if (context->count < 0 || context->seen_enough) in __xfs_xattr_put_listent()
210 if (!context->buffer) in __xfs_xattr_put_listent()
213 arraytop = context->count + prefix_len + namelen + 1; in __xfs_xattr_put_listent()
214 if (arraytop > context->firstu) { in __xfs_xattr_put_listent()
215 context->count = -1; /* insufficient space */ in __xfs_xattr_put_listent()
216 context->seen_enough = 1; in __xfs_xattr_put_listent()
219 offset = context->buffer + context->count; in __xfs_xattr_put_listent()
227 context->count += prefix_len + namelen + 1; in __xfs_xattr_put_listent()
233 struct xfs_attr_list_context *context, in xfs_xattr_put_listent() argument
242 ASSERT(context->count >= 0); in xfs_xattr_put_listent()
250 context, XATTR_SYSTEM_PREFIX, in xfs_xattr_put_listent()
258 context, XATTR_SYSTEM_PREFIX, in xfs_xattr_put_listent()
282 __xfs_xattr_put_listent(context, prefix, prefix_len, name, in xfs_xattr_put_listent()
293 struct xfs_attr_list_context context; in xfs_vn_listxattr() local
300 memset(&context, 0, sizeof(context)); in xfs_vn_listxattr()
301 context.dp = XFS_I(inode); in xfs_vn_listxattr()
302 context.resynch = 1; in xfs_vn_listxattr()
303 context.buffer = size ? data : NULL; in xfs_vn_listxattr()
304 context.bufsize = size; in xfs_vn_listxattr()
305 context.firstu = context.bufsize; in xfs_vn_listxattr()
306 context.put_listent = xfs_xattr_put_listent; in xfs_vn_listxattr()
308 error = xfs_attr_list(&context); in xfs_vn_listxattr()
311 if (context.count < 0) in xfs_vn_listxattr()
314 return context.count; in xfs_vn_listxattr()