1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (c) 2000-2003 Silicon Graphics, Inc.
4 * All Rights Reserved.
5 */
6#ifndef __XFS_DQUOT_ITEM_H__
7#define __XFS_DQUOT_ITEM_H__
8
9struct xfs_dquot;
10struct xfs_trans;
11struct xfs_mount;
12struct xfs_qoff_logitem;
13
14struct xfs_dq_logitem {
15	struct xfs_log_item	qli_item;	/* common portion */
16	struct xfs_dquot	*qli_dquot;	/* dquot ptr */
17	xfs_lsn_t		qli_flush_lsn;	/* lsn at last flush */
18};
19
20struct xfs_qoff_logitem {
21	struct xfs_log_item	qql_item;	/* common portion */
22	struct xfs_qoff_logitem *qql_start_lip;	/* qoff-start logitem, if any */
23	unsigned int		qql_flags;
24};
25
26
27void xfs_qm_dquot_logitem_init(struct xfs_dquot *dqp);
28struct xfs_qoff_logitem	*xfs_qm_qoff_logitem_init(struct xfs_mount *mp,
29		struct xfs_qoff_logitem *start,
30		uint flags);
31void xfs_qm_qoff_logitem_relse(struct xfs_qoff_logitem *);
32struct xfs_qoff_logitem	*xfs_trans_get_qoff_item(struct xfs_trans *tp,
33		struct xfs_qoff_logitem *startqoff,
34		uint flags);
35void xfs_trans_log_quotaoff_item(struct xfs_trans *tp,
36		struct xfs_qoff_logitem *qlp);
37
38#endif	/* __XFS_DQUOT_ITEM_H__ */
39