]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blame - scrub/vfs.h
xfs_scrub: remove moveon from inode iteration
[thirdparty/xfsprogs-dev.git] / scrub / vfs.h
CommitLineData
959ef981 1// SPDX-License-Identifier: GPL-2.0+
b364a9c0
DW
2/*
3 * Copyright (C) 2018 Oracle. All Rights Reserved.
b364a9c0 4 * Author: Darrick J. Wong <darrick.wong@oracle.com>
b364a9c0
DW
5 */
6#ifndef XFS_SCRUB_VFS_H_
7#define XFS_SCRUB_VFS_H_
8
aeff0641
DW
9/*
10 * Visit a subdirectory prior to iterating entries in that subdirectory.
11 * Return true to continue iteration or false to stop iterating and return to
12 * the caller.
13 */
b364a9c0
DW
14typedef bool (*scan_fs_tree_dir_fn)(struct scrub_ctx *, const char *,
15 int, void *);
aeff0641
DW
16
17/*
18 * Visit each directory entry in a directory. Return true to continue
19 * iteration or false to stop iterating and return to the caller.
20 */
b364a9c0
DW
21typedef bool (*scan_fs_tree_dirent_fn)(struct scrub_ctx *, const char *,
22 int, struct dirent *, struct stat *, void *);
23
24bool scan_fs_tree(struct scrub_ctx *ctx, scan_fs_tree_dir_fn dir_fn,
25 scan_fs_tree_dirent_fn dirent_fn, void *arg);
26
7e36bc0f
DW
27void fstrim(struct scrub_ctx *ctx);
28
b364a9c0 29#endif /* XFS_SCRUB_VFS_H_ */