1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (c) 2020-2024 Oracle. All Rights Reserved. 4 * Author: Darrick J. Wong <djwong@kernel.org> 5 */ 6#ifndef __XFS_SCRUB_RTSUMMARY_H__ 7#define __XFS_SCRUB_RTSUMMARY_H__ 8 9struct xchk_rtsummary { 10#ifdef CONFIG_XFS_ONLINE_REPAIR 11 struct xrep_tempexch tempexch; 12#endif 13 struct xfs_rtalloc_args args; 14 15 uint64_t rextents; 16 uint64_t rbmblocks; 17 uint64_t rsumsize; 18 unsigned int rsumlevels; 19 unsigned int resblks; 20 21 /* suminfo position of xfile as we write buffers to disk. */ 22 xfs_rtsumoff_t prep_wordoff; 23 24 /* Memory buffer for the summary comparison. */ 25 union xfs_suminfo_raw words[]; 26}; 27 28int xfsum_copyout(struct xfs_scrub *sc, xfs_rtsumoff_t sumoff, 29 union xfs_suminfo_raw *rawinfo, unsigned int nr_words); 30 31#ifdef CONFIG_XFS_ONLINE_REPAIR 32int xrep_setup_rtsummary(struct xfs_scrub *sc, struct xchk_rtsummary *rts); 33#else 34# define xrep_setup_rtsummary(sc, rts) (0) 35#endif /* CONFIG_XFS_ONLINE_REPAIR */ 36 37#endif /* __XFS_SCRUB_RTSUMMARY_H__ */ 38