Lines Matching full:context
55 struct xfs_attr_list_context *context) in xfs_attr_shortform_list() argument
57 struct xfs_attrlist_cursor_kern *cursor = &context->cursor; in xfs_attr_shortform_list()
58 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->count * 16) < context->bufsize)) { in xfs_attr_shortform_list()
84 if (XFS_IS_CORRUPT(context->dp->i_mount, in xfs_attr_shortform_list()
88 xfs_dirattr_mark_sick(context->dp, XFS_ATTR_FORK); in xfs_attr_shortform_list()
91 context->put_listent(context, in xfs_attr_shortform_list()
101 if (context->seen_enough) in xfs_attr_shortform_list()
105 trace_xfs_attr_list_sf_all(context); in xfs_attr_shortform_list()
110 if (context->bufsize == 0) in xfs_attr_shortform_list()
131 context->dp->i_mount, sfe, in xfs_attr_shortform_list()
186 if (XFS_IS_CORRUPT(context->dp->i_mount, in xfs_attr_shortform_list()
189 xfs_dirattr_mark_sick(context->dp, XFS_ATTR_FORK); in xfs_attr_shortform_list()
193 context->put_listent(context, in xfs_attr_shortform_list()
199 if (context->seen_enough) in xfs_attr_shortform_list()
214 struct xfs_attr_list_context *context, in xfs_attr_node_list_lookup() argument
221 struct xfs_inode *dp = context->dp; in xfs_attr_node_list_lookup()
223 struct xfs_trans *tp = context->tp; in xfs_attr_node_list_lookup()
272 trace_xfs_attr_list_node_descend(context, in xfs_attr_node_list_lookup()
311 struct xfs_attr_list_context *context) in xfs_attr_node_list() argument
313 struct xfs_attrlist_cursor_kern *cursor = &context->cursor; in xfs_attr_node_list()
318 struct xfs_inode *dp = context->dp; in xfs_attr_node_list()
323 trace_xfs_attr_node_list(context); in xfs_attr_node_list()
336 error = xfs_da3_node_read(context->tp, dp, cursor->blkno, &bp, in xfs_attr_node_list()
349 trace_xfs_attr_list_wrong_blk(context); in xfs_attr_node_list()
355 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
364 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
374 trace_xfs_attr_list_wrong_blk(context); in xfs_attr_node_list()
375 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
379 trace_xfs_attr_list_wrong_blk(context); in xfs_attr_node_list()
380 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
385 trace_xfs_attr_list_wrong_blk(context); in xfs_attr_node_list()
386 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
398 error = xfs_attr_node_list_lookup(context, cursor, &bp); in xfs_attr_node_list()
411 error = xfs_attr3_leaf_list_int(bp, context); in xfs_attr_node_list()
415 if (context->seen_enough || leafhdr.forw == 0) in xfs_attr_node_list()
418 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
419 error = xfs_attr3_leaf_read(context->tp, dp, dp->i_ino, in xfs_attr_node_list()
424 xfs_trans_brelse(context->tp, bp); in xfs_attr_node_list()
434 struct xfs_attr_list_context *context) in xfs_attr3_leaf_list_int() argument
436 struct xfs_attrlist_cursor_kern *cursor = &context->cursor; in xfs_attr3_leaf_list_int()
442 struct xfs_mount *mp = context->dp->i_mount; in xfs_attr3_leaf_list_int()
444 trace_xfs_attr_list_leaf(context); in xfs_attr3_leaf_list_int()
455 if (context->resynch) { in xfs_attr3_leaf_list_int()
459 if (cursor->offset == context->dupcnt) { in xfs_attr3_leaf_list_int()
460 context->dupcnt = 0; in xfs_attr3_leaf_list_int()
463 context->dupcnt++; in xfs_attr3_leaf_list_int()
466 context->dupcnt = 0; in xfs_attr3_leaf_list_int()
471 trace_xfs_attr_list_notfound(context); in xfs_attr3_leaf_list_int()
478 context->resynch = 0; in xfs_attr3_leaf_list_int()
494 !context->allow_incomplete) in xfs_attr3_leaf_list_int()
515 if (XFS_IS_CORRUPT(context->dp->i_mount, in xfs_attr3_leaf_list_int()
518 xfs_dirattr_mark_sick(context->dp, XFS_ATTR_FORK); in xfs_attr3_leaf_list_int()
521 context->put_listent(context, entry->flags, in xfs_attr3_leaf_list_int()
523 if (context->seen_enough) in xfs_attr3_leaf_list_int()
527 trace_xfs_attr_list_leaf_end(context); in xfs_attr3_leaf_list_int()
536 struct xfs_attr_list_context *context) in xfs_attr_leaf_list() argument
541 trace_xfs_attr_leaf_list(context); in xfs_attr_leaf_list()
543 context->cursor.blkno = 0; in xfs_attr_leaf_list()
544 error = xfs_attr3_leaf_read(context->tp, context->dp, in xfs_attr_leaf_list()
545 context->dp->i_ino, 0, &bp); in xfs_attr_leaf_list()
549 error = xfs_attr3_leaf_list_int(bp, context); in xfs_attr_leaf_list()
550 xfs_trans_brelse(context->tp, bp); in xfs_attr_leaf_list()
556 struct xfs_attr_list_context *context) in xfs_attr_list_ilocked() argument
558 struct xfs_inode *dp = context->dp; in xfs_attr_list_ilocked()
569 return xfs_attr_shortform_list(context); in xfs_attr_list_ilocked()
577 return xfs_attr_leaf_list(context); in xfs_attr_list_ilocked()
578 return xfs_attr_node_list(context); in xfs_attr_list_ilocked()
583 struct xfs_attr_list_context *context) in xfs_attr_list() argument
585 struct xfs_inode *dp = context->dp; in xfs_attr_list()
595 error = xfs_attr_list_ilocked(context); in xfs_attr_list()