Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/fs/xfs/scrub/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  quotacheck.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * Copyright (c) 2020-2024 Oracle.  All Rights Reserved.
 * Author: Darrick J. Wong <djwong@kernel.org>
 */

#ifndef __XFS_SCRUB_QUOTACHECK_H__
#define __XFS_SCRUB_QUOTACHECK_H__

/* Quota counters for live quotacheck. */
struct xqcheck_dquot {
 /* block usage count */
 int64_t   bcount;

 /* inode usage count */
 int64_t   icount;

 /* realtime block usage count */
 int64_t   rtbcount;

 /* Record state */
 unsigned int  flags;
};

/*
 * This incore dquot record has been written at least once.  We never want to
 * store an xqcheck_dquot that looks uninitialized.
 */

#define XQCHECK_DQUOT_WRITTEN  (1U << 0)

/* Already checked this dquot. */
#define XQCHECK_DQUOT_COMPARE_SCANNED (1U << 1)

/* Already repaired this dquot. */
#define XQCHECK_DQUOT_REPAIR_SCANNED (1U << 2)

/* Live quotacheck control structure. */
struct xqcheck {
 struct xfs_scrub *sc;

 /* Shadow dquot counter data. */
 struct xfarray  *ucounts;
 struct xfarray  *gcounts;
 struct xfarray  *pcounts;

 /* Lock protecting quotacheck count observations */
 struct mutex  lock;

 struct xchk_iscan iscan;

 /* Hooks into the quota code. */
 struct xfs_dqtrx_hook qhook;

 /* Shadow quota delta tracking structure. */
 struct rhashtable shadow_dquot_acct;
};

/* Return the incore counter array for a given quota type. */
static inline struct xfarray *
xqcheck_counters_for(
 struct xqcheck  *xqc,
 xfs_dqtype_t  dqtype)
{
 switch (dqtype) {
 case XFS_DQTYPE_USER:
  return xqc->ucounts;
 case XFS_DQTYPE_GROUP:
  return xqc->gcounts;
 case XFS_DQTYPE_PROJ:
  return xqc->pcounts;
 }

 ASSERT(0);
 return NULL;
}

#endif /* __XFS_SCRUB_QUOTACHECK_H__ */

Messung V0.5
C=97 H=88 G=92

¤ Dauer der Verarbeitung: 0.2 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

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.