Skip to content

Commit

Permalink
GFS2: Hook gfs2_quota_sync into VFS via gfs2_quotactl_ops
Browse files Browse the repository at this point in the history
The plan is to add further operations to the gfs2_quotactl_ops
in future patches. The sync operation is easy, so we start with
that one.

We plan to use the XFS quota control functions because they more
closely match the GFS2 ones.

Signed-off-by: Steven Whitehouse <[email protected]>
  • Loading branch information
swhiteho committed Dec 3, 2009
1 parent 8c42d63 commit cc632e7
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 0 deletions.
2 changes: 2 additions & 0 deletions fs/gfs2/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ config GFS2_FS
select FS_POSIX_ACL
select CRC32
select SLOW_WORK
select QUOTA
select QUOTACTL
help
A cluster filesystem.

Expand Down
3 changes: 3 additions & 0 deletions fs/gfs2/ops_fstype.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
#include <linux/mount.h>
#include <linux/gfs2_ondisk.h>
#include <linux/slow-work.h>
#include <linux/quotaops.h>

#include "gfs2.h"
#include "incore.h"
Expand Down Expand Up @@ -1138,6 +1139,8 @@ static int fill_super(struct super_block *sb, struct gfs2_args *args, int silent
sb->s_op = &gfs2_super_ops;
sb->s_export_op = &gfs2_export_ops;
sb->s_xattr = gfs2_xattr_handlers;
sb->s_qcop = &gfs2_quotactl_ops;
sb_dqopt(sb)->flags |= DQUOT_QUOTA_SYS_FILE;
sb->s_time_gran = 1;
sb->s_maxbytes = MAX_LFS_FILESIZE;

Expand Down
4 changes: 4 additions & 0 deletions fs/gfs2/quota.c
Original file line number Diff line number Diff line change
Expand Up @@ -1378,3 +1378,7 @@ int gfs2_quotad(void *data)
return 0;
}

const struct quotactl_ops gfs2_quotactl_ops = {
.quota_sync = gfs2_quota_sync,
};

1 change: 1 addition & 0 deletions fs/gfs2/quota.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,5 +50,6 @@ static inline int gfs2_quota_lock_check(struct gfs2_inode *ip)
}

extern int gfs2_shrink_qd_memory(int nr, gfp_t gfp_mask);
extern const struct quotactl_ops gfs2_quotactl_ops;

#endif /* __QUOTA_DOT_H__ */

0 comments on commit cc632e7

Please sign in to comment.