]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blame - scrub/inodes.h
xfs_scrub: remove XFS_ITERATE_INODES_ABORT from inode iterator
[thirdparty/xfsprogs-dev.git] / scrub / inodes.h
CommitLineData
959ef981 1// SPDX-License-Identifier: GPL-2.0+
372d4ba9
DW
2/*
3 * Copyright (C) 2018 Oracle. All Rights Reserved.
372d4ba9 4 * Author: Darrick J. Wong <darrick.wong@oracle.com>
372d4ba9
DW
5 */
6#ifndef XFS_SCRUB_INODES_H_
7#define XFS_SCRUB_INODES_H_
8
aeff0641
DW
9/*
10 * Visit each space mapping of an inode fork. Return 0 to continue iteration
11 * or a positive error code to interrupt iteraton. If ESTALE is returned,
12 * iteration will be restarted from the beginning of the inode allocation
b8e62724
DW
13 * group. Any other non zero value will stop iteration. The special return
14 * value ECANCELED can be used to stop iteration, because the inode iteration
15 * function never generates that error code on its own.
aeff0641 16 */
59f79e0a 17typedef int (*scrub_inode_iter_fn)(struct scrub_ctx *ctx,
4cca629d 18 struct xfs_handle *handle, struct xfs_bulkstat *bs, void *arg);
372d4ba9 19
59f79e0a 20int scrub_scan_all_inodes(struct scrub_ctx *ctx, scrub_inode_iter_fn fn,
372d4ba9
DW
21 void *arg);
22
59f79e0a 23int scrub_open_handle(struct xfs_handle *handle);
372d4ba9
DW
24
25#endif /* XFS_SCRUB_INODES_H_ */