diff options
-rw-r--r-- | fs/gfs2/incore.h | 8 | ||||
-rw-r--r-- | fs/gfs2/quota.c | 4 | ||||
-rw-r--r-- | include/linux/gfs2_ondisk.h | 8 |
3 files changed, 11 insertions, 9 deletions
diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h index 00c3004a4c2..b2079fcd251 100644 --- a/fs/gfs2/incore.h +++ b/fs/gfs2/incore.h | |||
@@ -275,14 +275,6 @@ enum { | |||
275 | QDF_LOCKED = 2, | 275 | QDF_LOCKED = 2, |
276 | }; | 276 | }; |
277 | 277 | ||
278 | struct gfs2_quota_lvb { | ||
279 | __be32 qb_magic; | ||
280 | u32 __pad; | ||
281 | __be64 qb_limit; /* Hard limit of # blocks to alloc */ | ||
282 | __be64 qb_warn; /* Warn user when alloc is above this # */ | ||
283 | __be64 qb_value; /* Current # blocks allocated */ | ||
284 | }; | ||
285 | |||
286 | struct gfs2_quota_data { | 278 | struct gfs2_quota_data { |
287 | struct list_head qd_list; | 279 | struct list_head qd_list; |
288 | unsigned int qd_count; | 280 | unsigned int qd_count; |
diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c index c186857e48a..fcd3ee2c5b9 100644 --- a/fs/gfs2/quota.c +++ b/fs/gfs2/quota.c | |||
@@ -627,6 +627,8 @@ static int gfs2_adjust_quota(struct gfs2_inode *ip, loff_t loc, | |||
627 | err = 0; | 627 | err = 0; |
628 | qd->qd_qb.qb_magic = cpu_to_be32(GFS2_MAGIC); | 628 | qd->qd_qb.qb_magic = cpu_to_be32(GFS2_MAGIC); |
629 | qd->qd_qb.qb_value = cpu_to_be64(value); | 629 | qd->qd_qb.qb_value = cpu_to_be64(value); |
630 | ((struct gfs2_quota_lvb*)(qd->qd_gl->gl_lvb))->qb_magic = cpu_to_be32(GFS2_MAGIC); | ||
631 | ((struct gfs2_quota_lvb*)(qd->qd_gl->gl_lvb))->qb_value = cpu_to_be64(value); | ||
630 | unlock: | 632 | unlock: |
631 | unlock_page(page); | 633 | unlock_page(page); |
632 | page_cache_release(page); | 634 | page_cache_release(page); |
@@ -709,7 +711,7 @@ static int do_sync(unsigned int num_qd, struct gfs2_quota_data **qda) | |||
709 | offset = qd2offset(qd); | 711 | offset = qd2offset(qd); |
710 | error = gfs2_adjust_quota(ip, offset, qd->qd_change_sync, | 712 | error = gfs2_adjust_quota(ip, offset, qd->qd_change_sync, |
711 | (struct gfs2_quota_data *) | 713 | (struct gfs2_quota_data *) |
712 | qd->qd_gl->gl_lvb); | 714 | qd); |
713 | if (error) | 715 | if (error) |
714 | goto out_end_trans; | 716 | goto out_end_trans; |
715 | 717 | ||
diff --git a/include/linux/gfs2_ondisk.h b/include/linux/gfs2_ondisk.h index a82ec8c62ef..028f9810ba0 100644 --- a/include/linux/gfs2_ondisk.h +++ b/include/linux/gfs2_ondisk.h | |||
@@ -500,6 +500,14 @@ struct gfs2_quota_change_host { | |||
500 | __u32 qc_id; | 500 | __u32 qc_id; |
501 | }; | 501 | }; |
502 | 502 | ||
503 | struct gfs2_quota_lvb { | ||
504 | __be32 qb_magic; | ||
505 | u32 __pad; | ||
506 | __be64 qb_limit; /* Hard limit of # blocks to alloc */ | ||
507 | __be64 qb_warn; /* Warn user when alloc is above this # */ | ||
508 | __be64 qb_value; /* Current # blocks allocated */ | ||
509 | }; | ||
510 | |||
503 | #ifdef __KERNEL__ | 511 | #ifdef __KERNEL__ |
504 | /* Translation functions */ | 512 | /* Translation functions */ |
505 | struct gfs2_inode; | 513 | struct gfs2_inode; |