From: Darrick J. Wong Date: Fri, 17 Nov 2017 04:11:31 +0000 (-0600) Subject: xfs: probe the scrub ioctl X-Git-Tag: v4.15.0-rc1~143^2~70 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d17a62753462c0f3a4ba95e1ac08c2c1c40ddabb;p=thirdparty%2Fxfsprogs-dev.git xfs: probe the scrub ioctl Source kernel commit: dcb660f9222fd9f607e7e05f4755b39b809ca19f Create a probe scrubber with id 0. This will be used by xfs_scrub to probe the kernel's abilities to scrub (and repair) the metadata. We do this by validating the ioctl inputs from userspace, preparing the filesystem for a scrub (or a repair) operation, and immediately returning to userspace. Userspace can use the returned errno and structure state to decide (in broad terms) if scrub/repair are supported by the running kernel. Signed-off-by: Darrick J. Wong Reviewed-by: Dave Chinner Signed-off-by: Eric Sandeen --- diff --git a/libxfs/xfs_fs.h b/libxfs/xfs_fs.h index be235e826..cff4358d9 100644 --- a/libxfs/xfs_fs.h +++ b/libxfs/xfs_fs.h @@ -504,9 +504,10 @@ struct xfs_scrub_metadata { */ /* Scrub subcommands. */ +#define XFS_SCRUB_TYPE_PROBE 0 /* presence test ioctl */ /* Number of scrub subcommands. */ -#define XFS_SCRUB_TYPE_NR 0 +#define XFS_SCRUB_TYPE_NR 1 /* i: Repair this metadata. */ #define XFS_SCRUB_IFLAG_REPAIR (1 << 0)