From: Jan Kara <jack@suse.cz>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [PATCH 21/25] gfs2: Convert to using ->get_state callback
Date: Thu, 18 Dec 2014 16:37:35 +0100 [thread overview]
Message-ID: <1418917059-23870-22-git-send-email-jack@suse.cz> (raw)
In-Reply-To: <1418917059-23870-1-git-send-email-jack@suse.cz>
Convert gfs2 to use ->get_state callback instead of ->get_xstate.
Signed-off-by: Jan Kara <jack@suse.cz>
---
fs/gfs2/quota.c | 28 +++++++++++++++-------------
1 file changed, 15 insertions(+), 13 deletions(-)
diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c
index 3e193cb36996..aebfe50da6b1 100644
--- a/fs/gfs2/quota.c
+++ b/fs/gfs2/quota.c
@@ -1467,32 +1467,34 @@ int gfs2_quotad(void *data)
return 0;
}
-static int gfs2_quota_get_xstate(struct super_block *sb,
- struct fs_quota_stat *fqs)
+static int gfs2_quota_get_state(struct super_block *sb, struct qc_state *state)
{
struct gfs2_sbd *sdp = sb->s_fs_info;
- memset(fqs, 0, sizeof(struct fs_quota_stat));
- fqs->qs_version = FS_QSTAT_VERSION;
+ memset(state, 0, sizeof(*state));
switch (sdp->sd_args.ar_quota) {
case GFS2_QUOTA_ON:
- fqs->qs_flags |= (FS_QUOTA_UDQ_ENFD | FS_QUOTA_GDQ_ENFD);
+ state->s_state[USRQUOTA].flags |= QCI_LIMITS_ENFORCED;
+ state->s_state[GRPQUOTA].flags |= QCI_LIMITS_ENFORCED;
/*FALLTHRU*/
case GFS2_QUOTA_ACCOUNT:
- fqs->qs_flags |= (FS_QUOTA_UDQ_ACCT | FS_QUOTA_GDQ_ACCT);
+ state->s_state[USRQUOTA].flags |= QCI_ACCT_ENABLED |
+ QCI_SYSFILE;
+ state->s_state[GRPQUOTA].flags |= QCI_ACCT_ENABLED |
+ QCI_SYSFILE;
break;
case GFS2_QUOTA_OFF:
break;
}
-
if (sdp->sd_quota_inode) {
- fqs->qs_uquota.qfs_ino = GFS2_I(sdp->sd_quota_inode)->i_no_addr;
- fqs->qs_uquota.qfs_nblks = sdp->sd_quota_inode->i_blocks;
+ state->s_state[USRQUOTA].ino =
+ GFS2_I(sdp->sd_quota_inode)->i_no_addr;
+ state->s_state[USRQUOTA].blocks = sdp->sd_quota_inode->i_blocks;
}
- fqs->qs_uquota.qfs_nextents = 1; /* unsupported */
- fqs->qs_gquota = fqs->qs_uquota; /* its the same inode in both cases */
- fqs->qs_incoredqs = list_lru_count(&gfs2_qd_lru);
+ state->s_state[USRQUOTA].extents = 1; /* unsupported */
+ state->s_state[GRPQUOTA] = state->s_state[USRQUOTA];
+ state->s_incoredqs = list_lru_count(&gfs2_qd_lru);
return 0;
}
@@ -1637,7 +1639,7 @@ out_put:
const struct quotactl_ops gfs2_quotactl_ops = {
.quota_sync = gfs2_quota_sync,
- .get_xstate = gfs2_quota_get_xstate,
+ .get_state = gfs2_quota_get_state,
.get_dqblk = gfs2_get_dqblk,
.set_dqblk = gfs2_set_dqblk,
};
--
1.8.4.5
next prev parent reply other threads:[~2014-12-18 15:37 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-18 15:37 [Cluster-devel] [PATCH 0/25 RFC v2] quota: Unify VFS and XFS quota interfaces Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 01/25] xfs: Remove useless test Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 02/25] xfs: Remove unused variable in xfs_qm_scall_quotaon() Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 03/25] xfs: Remove some useless flags tests Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 04/25] quota: Split ->set_xstate callback into two Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 05/25] quota: Wire up ->quota_{enable, disable} callbacks into Q_QUOTA{ON, OFF} Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 06/25] quota: Add ->quota_{enable, disable} callbacks for VFS quotas Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 07/25] ext4: Use generic helpers for quotaon and quotaoff Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 08/25] ocfs2: " Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 09/25] quota: Remove quota_on_meta callback Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 10/25] quota: Switch ->get_dqblk() and ->set_dqblk() to use bytes as space units Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 11/25] quota: Store maximum space limit in bytes Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 12/25] quota: Make Q_XQUOTASYNC support VFS quota syncing Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 13/25] quota: Don't store flags for v2 quota format Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 14/25] ocfs2: Move OLQF_CLEAN flag out of generic quota flags Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 15/25] quota: Cleanup flags definitions Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 16/25] quota: Verify flags passed to Q_SETINFO Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 17/25] quota: Make VFS quotas use new interface for getting quota info Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 18/25] quota: Wire up Q_GETXSTATE and Q_GETXSTATV calls to work with ->get_state Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 19/25] xfs: Remove some pointless quota checks Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 20/25] xfs: Convert to using ->get_state callback Jan Kara
2014-12-18 15:37 ` Jan Kara [this message]
2014-12-18 15:37 ` [Cluster-devel] [PATCH 22/25] quota: Remove ->get_xstate and ->get_xstatev callbacks Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 23/25] quota: Make ->set_info use structure with neccesary info to VFS and XFS Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 24/25] xfs: Add support for Q_SETINFO Jan Kara
2014-12-18 15:37 ` [Cluster-devel] [PATCH 25/25] quota: Hook up Q_XSETQLIM for id 0 to ->set_info Jan Kara
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1418917059-23870-22-git-send-email-jack@suse.cz \
--to=jack@suse.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).