From: Steven Whitehouse <swhiteho@redhat.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: cluster-devel@redhat.com, linux-kernel@vger.kernel.org
Subject: GFS2: Pull request (fixes)
Date: Mon, 29 Nov 2010 13:42:56 +0000 [thread overview]
Message-ID: <1291038176.2429.12.camel@dolmen> (raw)
Hi,
Please consider pulling the following fix,
Steve.
-----------------------------------------------------------------------------
The following changes since commit e53beacd23d9cb47590da6a7a7f6d417b941a994:
Linux 2.6.37-rc2 (2010-11-15 18:31:02 -0800)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes.git master
Abhijith Das (1):
GFS2: Userland expects quota limit/warn/usage in 512b blocks
fs/gfs2/quota.c | 15 ++++++++-------
1 files changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
>From 14870b457524e745f1a118e17873d104b1a47b70 Mon Sep 17 00:00:00 2001
From: Abhijith Das <adas@redhat.com>
Date: Thu, 18 Nov 2010 11:24:24 -0500
Subject: [PATCH] GFS2: Userland expects quota limit/warn/usage in 512b blocks
Userland programs using the quotactl() syscall assume limit/warn/usage
block counts in 512b basic blocks which were instead being read/written
in fs blocksize in gfs2. With this patch, gfs2 correctly interacts with
the syscall using 512b blocks.
Signed-off-by: Abhi Das <adas@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
diff --git a/fs/gfs2/quota.c b/fs/gfs2/quota.c
index 58a9b99..f606baf 100644
--- a/fs/gfs2/quota.c
+++ b/fs/gfs2/quota.c
@@ -631,6 +631,7 @@ static int gfs2_adjust_quota(struct gfs2_inode *ip, loff_t loc,
struct fs_disk_quota *fdq)
{
struct inode *inode = &ip->i_inode;
+ struct gfs2_sbd *sdp = GFS2_SB(inode);
struct address_space *mapping = inode->i_mapping;
unsigned long index = loc >> PAGE_CACHE_SHIFT;
unsigned offset = loc & (PAGE_CACHE_SIZE - 1);
@@ -658,11 +659,11 @@ static int gfs2_adjust_quota(struct gfs2_inode *ip, loff_t loc,
qd->qd_qb.qb_value = qp->qu_value;
if (fdq) {
if (fdq->d_fieldmask & FS_DQ_BSOFT) {
- qp->qu_warn = cpu_to_be64(fdq->d_blk_softlimit);
+ qp->qu_warn = cpu_to_be64(fdq->d_blk_softlimit >> sdp->sd_fsb2bb_shift);
qd->qd_qb.qb_warn = qp->qu_warn;
}
if (fdq->d_fieldmask & FS_DQ_BHARD) {
- qp->qu_limit = cpu_to_be64(fdq->d_blk_hardlimit);
+ qp->qu_limit = cpu_to_be64(fdq->d_blk_hardlimit >> sdp->sd_fsb2bb_shift);
qd->qd_qb.qb_limit = qp->qu_limit;
}
}
@@ -1497,9 +1498,9 @@ static int gfs2_get_dqblk(struct super_block *sb, int type, qid_t id,
fdq->d_version = FS_DQUOT_VERSION;
fdq->d_flags = (type == QUOTA_USER) ? FS_USER_QUOTA : FS_GROUP_QUOTA;
fdq->d_id = id;
- fdq->d_blk_hardlimit = be64_to_cpu(qlvb->qb_limit);
- fdq->d_blk_softlimit = be64_to_cpu(qlvb->qb_warn);
- fdq->d_bcount = be64_to_cpu(qlvb->qb_value);
+ fdq->d_blk_hardlimit = be64_to_cpu(qlvb->qb_limit) << sdp->sd_fsb2bb_shift;
+ fdq->d_blk_softlimit = be64_to_cpu(qlvb->qb_warn) << sdp->sd_fsb2bb_shift;
+ fdq->d_bcount = be64_to_cpu(qlvb->qb_value) << sdp->sd_fsb2bb_shift;
gfs2_glock_dq_uninit(&q_gh);
out:
@@ -1566,10 +1567,10 @@ static int gfs2_set_dqblk(struct super_block *sb, int type, qid_t id,
/* If nothing has changed, this is a no-op */
if ((fdq->d_fieldmask & FS_DQ_BSOFT) &&
- (fdq->d_blk_softlimit == be64_to_cpu(qd->qd_qb.qb_warn)))
+ ((fdq->d_blk_softlimit >> sdp->sd_fsb2bb_shift) == be64_to_cpu(qd->qd_qb.qb_warn)))
fdq->d_fieldmask ^= FS_DQ_BSOFT;
if ((fdq->d_fieldmask & FS_DQ_BHARD) &&
- (fdq->d_blk_hardlimit == be64_to_cpu(qd->qd_qb.qb_limit)))
+ ((fdq->d_blk_hardlimit >> sdp->sd_fsb2bb_shift) == be64_to_cpu(qd->qd_qb.qb_limit)))
fdq->d_fieldmask ^= FS_DQ_BHARD;
if (fdq->d_fieldmask == 0)
goto out_i;
--
1.7.2.3
next reply other threads:[~2010-11-29 13:42 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-29 13:42 Steven Whitehouse [this message]
-- strict thread matches above, loose matches on Subject: below --
2014-09-16 10:11 GFS2: Pull request (fixes) Steven Whitehouse
2014-07-18 11:21 Steven Whitehouse
2014-01-02 12:41 Steven Whitehouse
2013-11-22 10:39 Steven Whitehouse
2013-08-19 9:26 Steven Whitehouse
2013-08-19 16:33 ` Linus Torvalds
2013-08-19 9:24 Steven Whitehouse
2013-06-04 15:40 Steven Whitehouse
2013-05-24 14:05 Steven Whitehouse
2013-04-05 10:34 Steven Whitehouse
2013-04-05 16:27 ` David Teigland
2013-04-05 16:51 ` Steven Whitehouse
2013-04-05 16:53 ` Linus Torvalds
2013-04-05 17:52 ` Steven Whitehouse
2013-01-28 10:31 Steven Whitehouse
2013-01-03 12:28 Steven Whitehouse
2012-11-07 10:58 Steven Whitehouse
2012-09-13 13:42 Steven Whitehouse
2012-04-11 10:21 Steven Whitehouse
2012-04-11 10:18 Steven Whitehouse
2012-02-28 11:49 Steven Whitehouse
2011-07-27 10:00 Steven Whitehouse
2011-07-14 15:16 Steven Whitehouse
2011-05-23 14:05 Steven Whitehouse
2011-04-19 9:13 Steven Whitehouse
2011-01-19 10:50 Steven Whitehouse
2010-11-15 15:41 Steven Whitehouse
2010-09-17 13:59 Steven Whitehouse
2010-07-15 14:35 Steven Whitehouse
2010-05-25 8:51 Steven Whitehouse
2010-03-11 17:41 Steven Whitehouse
2010-02-12 11:37 Steven Whitehouse
2010-02-04 10:06 Steven Whitehouse
2010-01-11 14:24 Steven Whitehouse
2009-08-14 13:01 Steven Whitehouse
2009-07-30 13:45 GFS2: Pre-pull patch posting (fixes) Steven Whitehouse
2009-07-30 13:02 ` GFS2: Pull request (fixes) Steven Whitehouse
2009-04-23 13:13 Steven Whitehouse
2009-01-07 10:21 Steven Whitehouse
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=1291038176.2429.12.camel@dolmen \
--to=swhiteho@redhat.com \
--cc=cluster-devel@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/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).