// SPDX-License-Identifier: GPL-2.0-or-later /* * Copyright (c) 2021-2024 Oracle. All Rights Reserved. * Author: Darrick J. Wong <djwong@kernel.org>
*/ #ifndef __XFS_SCRUB_ORPHANAGE_H__ #define __XFS_SCRUB_ORPHANAGE_H__
#ifdef CONFIG_XFS_ONLINE_REPAIR int xrep_orphanage_create(struct xfs_scrub *sc);
/* * If we're doing a repair, ensure that the orphanage exists and attach it to * the scrub context.
*/ staticinlineint
xrep_orphanage_try_create( struct xfs_scrub *sc)
{ int error;
error = xrep_orphanage_create(sc); switch (error) { case 0: case -ENOENT: case -ENOTDIR: case -ENOSPC: /* * If the orphanage can't be found or isn't a directory, we'll * keep going, but we won't be able to attach the file to the * orphanage if we can't find the parent.
*/ return 0;
}
return error;
}
int xrep_orphanage_iolock_two(struct xfs_scrub *sc);
/* Block reservations for orphanage and child (if directory). */ unsignedint orphanage_blkres; unsignedint child_blkres;
/* * Does the caller want us to bump the child link count? This is not * needed when reattaching files that have become disconnected but have * nlink > 1. It is necessary when changing the directory tree * structure.
*/ bool bump_child_nlink:1;
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.