From: Ben Myers <bpm@sgi.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: xfs@oss.sgi.com
Subject: Re: [PATCH 5/8] xfs: per-filesystem dquot LRU lists
Date: Mon, 12 Mar 2012 15:37:32 -0500 [thread overview]
Message-ID: <20120312203732.GF7762@sgi.com> (raw)
In-Reply-To: <20120220022904.240235841@bombadil.infradead.org>
On Sun, Feb 19, 2012 at 09:28:20PM -0500, Christoph Hellwig wrote:
> Replace the global dquot lru lists with a per-filesystem one.
>
> Note that the shrinker isn't wire up to the per-superblock VFS shrinker
> infrastructure as would have problems summing up and splitting the counts
> for inodes and dquots. I don't think this is a major problem as the quota
> cache isn't as interwinded with the inode cache as the dentry cache is,
> because an inode that is dropped from the cache will generally release
> a dquot reference, but most of the time it won't be the last one.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>
>
...
> @@ -1126,6 +1129,7 @@ xfs_qm_dqpurge(
> {
> struct xfs_mount *mp = dqp->q_mount;
> struct xfs_dqhash *qh = dqp->q_hash;
> + struct xfs_quotainfo *qi = mp->m_quotainfo;
>
> xfs_dqlock(dqp);
>
> @@ -1176,22 +1180,21 @@ xfs_qm_dqpurge(
> qh->qh_version++;
> mutex_unlock(&qh->qh_lock);
>
> - mutex_lock(&mp->m_quotainfo->qi_dqlist_lock);
> + mutex_lock(&qi->qi_dqlist_lock);
> list_del_init(&dqp->q_mplist);
> - mp->m_quotainfo->qi_dqreclaims++;
> - mp->m_quotainfo->qi_dquots--;
> - mutex_unlock(&mp->m_quotainfo->qi_dqlist_lock);
> + qi->qi_dqreclaims++;
> + qi->qi_dquots--;
> + mutex_unlock(&qi->qi_dqlist_lock);
>
> /*
> * We move dquots to the freelist as soon as their reference count
> * hits zero, so it really should be on the freelist here.
> */
> - mutex_lock(&xfs_Gqm->qm_dqfrlist_lock);
> - ASSERT(!list_empty(&dqp->q_freelist));
> - list_del_init(&dqp->q_freelist);
> - xfs_Gqm->qm_dqfrlist_cnt--;
> - XFS_STATS_DEC(xs_qm_dquot_unused);
Looks like you have removed this decrement of xs_qm_dquot_unused. You
didn't mention it in your commit message, so I am not sure if it is
intentional.
Other than that, this patch looks good.
Reviewed-by: Ben Myers <bpm@sgi.com>
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2012-03-12 20:37 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-20 2:28 [PATCH 0/8] quota updates, V3 Christoph Hellwig
2012-02-20 2:28 ` [PATCH 1/8] xfs: merge xfs_qm_export_dquot into xfs_qm_scall_getquota Christoph Hellwig
2012-02-27 1:59 ` Ben Myers
2012-02-27 17:17 ` Christoph Hellwig
2012-02-27 17:23 ` Ben Myers
2012-02-28 3:27 ` Christoph Hellwig
2012-02-29 17:40 ` Ben Myers
2012-02-20 2:28 ` [PATCH 2/8] xfs: include reservations in quota reporting Christoph Hellwig
2012-02-29 19:37 ` Ben Myers
2012-02-20 2:28 ` [PATCH 3/8] quota: make Q_XQUOTASYNC a noop Christoph Hellwig
2012-02-29 20:00 ` Ben Myers
2012-02-20 2:28 ` [PATCH 4/8] xfs: use common code for quota statistics Christoph Hellwig
2012-02-20 21:33 ` Dave Chinner
2012-02-20 21:50 ` Christoph Hellwig
2012-02-21 1:48 ` [PATCH 4/8 v2] " Christoph Hellwig
2012-02-21 4:41 ` Dave Chinner
2012-03-12 17:55 ` Ben Myers
2012-03-13 8:42 ` Christoph Hellwig
2012-03-13 15:27 ` Ben Myers
2012-03-13 21:40 ` Dave Chinner
2012-03-14 2:34 ` Nathan Scott
2012-03-14 5:03 ` Dave Chinner
2012-02-20 2:28 ` [PATCH 5/8] xfs: per-filesystem dquot LRU lists Christoph Hellwig
2012-02-20 22:08 ` Dave Chinner
2012-03-12 20:37 ` Ben Myers [this message]
2012-02-20 2:28 ` [PATCH 6/8] xfs: use per-filesystem radix trees for dquot lookup Christoph Hellwig
2012-02-20 2:28 ` [PATCH 7/8] xfs: remove the per-filesystem list of dquots Christoph Hellwig
2012-02-20 22:15 ` Dave Chinner
2012-02-20 22:19 ` Christoph Hellwig
2012-02-28 3:31 ` [PATCH 7/8 v2] " Christoph Hellwig
2012-02-20 2:28 ` [PATCH 8/8] xfs: remove the global xfs_Gqm structure Christoph Hellwig
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=20120312203732.GF7762@sgi.com \
--to=bpm@sgi.com \
--cc=hch@infradead.org \
--cc=xfs@oss.sgi.com \
/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