![]() |
|
|||
0001 /* SPDX-License-Identifier: GPL-2.0-or-later 0002 * 0003 * Copyright (C) 2022 Oracle. All Rights Reserved. 0004 * Author: Allison Henderson <allison.henderson@oracle.com> 0005 */ 0006 #ifndef __XFS_ATTR_ITEM_H__ 0007 #define __XFS_ATTR_ITEM_H__ 0008 0009 /* kernel only ATTRI/ATTRD definitions */ 0010 0011 struct xfs_mount; 0012 struct kmem_zone; 0013 0014 struct xfs_attri_log_nameval { 0015 struct xfs_log_iovec name; 0016 struct xfs_log_iovec value; 0017 refcount_t refcount; 0018 0019 /* name and value follow the end of this struct */ 0020 }; 0021 0022 /* 0023 * This is the "attr intention" log item. It is used to log the fact that some 0024 * extended attribute operations need to be processed. An operation is 0025 * currently either a set or remove. Set or remove operations are described by 0026 * the xfs_attr_intent which may be logged to this intent. 0027 * 0028 * During a normal attr operation, name and value point to the name and value 0029 * fields of the caller's xfs_da_args structure. During a recovery, the name 0030 * and value buffers are copied from the log, and stored in a trailing buffer 0031 * attached to the xfs_attr_intent until they are committed. They are freed 0032 * when the xfs_attr_intent itself is freed when the work is done. 0033 */ 0034 struct xfs_attri_log_item { 0035 struct xfs_log_item attri_item; 0036 atomic_t attri_refcount; 0037 struct xfs_attri_log_nameval *attri_nameval; 0038 struct xfs_attri_log_format attri_format; 0039 }; 0040 0041 /* 0042 * This is the "attr done" log item. It is used to log the fact that some attrs 0043 * earlier mentioned in an attri item have been freed. 0044 */ 0045 struct xfs_attrd_log_item { 0046 struct xfs_log_item attrd_item; 0047 struct xfs_attri_log_item *attrd_attrip; 0048 struct xfs_attrd_log_format attrd_format; 0049 }; 0050 0051 extern struct kmem_cache *xfs_attri_cache; 0052 extern struct kmem_cache *xfs_attrd_cache; 0053 0054 #endif /* __XFS_ATTR_ITEM_H__ */
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.1.0 LXR engine. The LXR team |
![]() ![]() |