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

Quelle  xfs_attr_item.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-or-later
 *
 * Copyright (C) 2022 Oracle.  All Rights Reserved.
 * Author: Allison Henderson <allison.henderson@oracle.com>
 */

#ifndef __XFS_ATTR_ITEM_H__
#define __XFS_ATTR_ITEM_H__

/* kernel only ATTRI/ATTRD definitions */

struct xfs_mount;
struct kmem_zone;

struct xfs_attri_log_nameval {
 struct kvec  name;
 struct kvec  new_name; /* PPTR_REPLACE only */
 struct kvec  value;
 struct kvec  new_value; /* PPTR_REPLACE only */
 refcount_t  refcount;

 /* name and value follow the end of this struct */
};

/*
 * This is the "attr intention" log item.  It is used to log the fact that some
 * extended attribute operations need to be processed.  An operation is
 * currently either a set or remove.  Set or remove operations are described by
 * the xfs_attr_intent which may be logged to this intent.
 *
 * During a normal attr operation, name and value point to the name and value
 * fields of the caller's xfs_da_args structure.  During a recovery, the name
 * and value buffers are copied from the log, and stored in a trailing buffer
 * attached to the xfs_attr_intent until they are committed.  They are freed
 * when the xfs_attr_intent itself is freed when the work is done.
 */

struct xfs_attri_log_item {
 struct xfs_log_item  attri_item;
 atomic_t   attri_refcount;
 struct xfs_attri_log_nameval *attri_nameval;
 struct xfs_attri_log_format attri_format;
};

/*
 * This is the "attr done" log item.  It is used to log the fact that some attrs
 * earlier mentioned in an attri item have been freed.
 */

struct xfs_attrd_log_item {
 struct xfs_log_item  attrd_item;
 struct xfs_attri_log_item *attrd_attrip;
 struct xfs_attrd_log_format attrd_format;
};

extern struct kmem_cache *xfs_attri_cache;
extern struct kmem_cache *xfs_attrd_cache;

enum xfs_attr_defer_op {
 XFS_ATTR_DEFER_SET,
 XFS_ATTR_DEFER_REMOVE,
 XFS_ATTR_DEFER_REPLACE,
};

void xfs_attr_defer_add(struct xfs_da_args *args, enum xfs_attr_defer_op op);

#endif /* __XFS_ATTR_ITEM_H__ */

Messung V0.5
C=89 H=100 G=94

¤ Dauer der Verarbeitung: 0.0 Sekunden  (vorverarbeitet)  ¤

*© 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.