]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blob - scrub/inodes.h
xfs_scrub: move to mallinfo2 when available
[thirdparty/xfsprogs-dev.git] / scrub / inodes.h
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3 * Copyright (C) 2018 Oracle. All Rights Reserved.
4 * Author: Darrick J. Wong <darrick.wong@oracle.com>
5 */
6 #ifndef XFS_SCRUB_INODES_H_
7 #define XFS_SCRUB_INODES_H_
8
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
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.
16 */
17 typedef int (*scrub_inode_iter_fn)(struct scrub_ctx *ctx,
18 struct xfs_handle *handle, struct xfs_bulkstat *bs, void *arg);
19
20 int scrub_scan_all_inodes(struct scrub_ctx *ctx, scrub_inode_iter_fn fn,
21 void *arg);
22
23 int scrub_open_handle(struct xfs_handle *handle);
24
25 #endif /* XFS_SCRUB_INODES_H_ */