Lines Matching refs:context
54 struct xfs_attr_list_context *context) in xfs_attr_shortform_list() argument
56 struct xfs_attrlist_cursor_kern *cursor = &context->cursor; in xfs_attr_shortform_list()
57 struct xfs_inode *dp = context->dp; in xfs_attr_shortform_list()
69 trace_xfs_attr_list_sf(context); in xfs_attr_shortform_list()
80 if (context->bufsize == 0 || in xfs_attr_shortform_list()
82 (dp->i_af.if_bytes + sf->hdr.count * 16) < context->bufsize)) { in xfs_attr_shortform_list()
84 if (XFS_IS_CORRUPT(context->dp->i_mount, in xfs_attr_shortform_list()
89 context->put_listent(context, in xfs_attr_shortform_list()
98 if (context->seen_enough) in xfs_attr_shortform_list()
102 trace_xfs_attr_list_sf_all(context); in xfs_attr_shortform_list()
107 if (context->bufsize == 0) in xfs_attr_shortform_list()
128 context->dp->i_mount, sfe, in xfs_attr_shortform_list()
178 if (XFS_IS_CORRUPT(context->dp->i_mount, in xfs_attr_shortform_list()
184 context->put_listent(context, in xfs_attr_shortform_list()
189 if (context->seen_enough) in xfs_attr_shortform_list()
204 struct xfs_attr_list_context *context, in xfs_attr_node_list_lookup() argument
211 struct xfs_inode *dp = context->dp; in xfs_attr_node_list_lookup()
213 struct xfs_trans *tp = context->tp; in xfs_attr_node_list_lookup()
257 trace_xfs_attr_list_node_descend(context, in xfs_attr_node_list_lookup()
286 struct xfs_attr_list_context *context) in xfs_attr_node_list() argument
288 struct xfs_attrlist_cursor_kern *cursor = &context->cursor; in xfs_attr_node_list()
293 struct xfs_inode *dp = context->dp; in xfs_attr_node_list()
297 trace_xfs_attr_node_list(context); in xfs_attr_node_list()
308 error = xfs_da3_node_read(context->tp, dp, cursor->blkno, &bp, in xfs_attr_node_list()
319 trace_xfs_attr_list_wrong_blk(context); in xfs_attr_node_list()
320 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
331 trace_xfs_attr_list_wrong_blk(context); in xfs_attr_node_list()
332 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
336 trace_xfs_attr_list_wrong_blk(context); in xfs_attr_node_list()
337 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
342 trace_xfs_attr_list_wrong_blk(context); in xfs_attr_node_list()
343 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
355 error = xfs_attr_node_list_lookup(context, cursor, &bp); in xfs_attr_node_list()
368 error = xfs_attr3_leaf_list_int(bp, context); in xfs_attr_node_list()
372 if (context->seen_enough || leafhdr.forw == 0) in xfs_attr_node_list()
375 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
376 error = xfs_attr3_leaf_read(context->tp, dp, cursor->blkno, in xfs_attr_node_list()
381 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
391 struct xfs_attr_list_context *context) in xfs_attr3_leaf_list_int() argument
393 struct xfs_attrlist_cursor_kern *cursor = &context->cursor; in xfs_attr3_leaf_list_int()
399 struct xfs_mount *mp = context->dp->i_mount; in xfs_attr3_leaf_list_int()
401 trace_xfs_attr_list_leaf(context); in xfs_attr3_leaf_list_int()
412 if (context->resynch) { in xfs_attr3_leaf_list_int()
416 if (cursor->offset == context->dupcnt) { in xfs_attr3_leaf_list_int()
417 context->dupcnt = 0; in xfs_attr3_leaf_list_int()
420 context->dupcnt++; in xfs_attr3_leaf_list_int()
423 context->dupcnt = 0; in xfs_attr3_leaf_list_int()
428 trace_xfs_attr_list_notfound(context); in xfs_attr3_leaf_list_int()
435 context->resynch = 0; in xfs_attr3_leaf_list_int()
450 !context->allow_incomplete) in xfs_attr3_leaf_list_int()
469 if (XFS_IS_CORRUPT(context->dp->i_mount, in xfs_attr3_leaf_list_int()
473 context->put_listent(context, entry->flags, in xfs_attr3_leaf_list_int()
475 if (context->seen_enough) in xfs_attr3_leaf_list_int()
479 trace_xfs_attr_list_leaf_end(context); in xfs_attr3_leaf_list_int()
488 struct xfs_attr_list_context *context) in xfs_attr_leaf_list() argument
493 trace_xfs_attr_leaf_list(context); in xfs_attr_leaf_list()
495 context->cursor.blkno = 0; in xfs_attr_leaf_list()
496 error = xfs_attr3_leaf_read(context->tp, context->dp, 0, &bp); in xfs_attr_leaf_list()
500 error = xfs_attr3_leaf_list_int(bp, context); in xfs_attr_leaf_list()
501 xfs_trans_brelse(context->tp, bp); in xfs_attr_leaf_list()
507 struct xfs_attr_list_context *context) in xfs_attr_list_ilocked() argument
509 struct xfs_inode *dp = context->dp; in xfs_attr_list_ilocked()
519 return xfs_attr_shortform_list(context); in xfs_attr_list_ilocked()
521 return xfs_attr_leaf_list(context); in xfs_attr_list_ilocked()
522 return xfs_attr_node_list(context); in xfs_attr_list_ilocked()
527 struct xfs_attr_list_context *context) in xfs_attr_list() argument
529 struct xfs_inode *dp = context->dp; in xfs_attr_list()
539 error = xfs_attr_list_ilocked(context); in xfs_attr_list()