xfs: split dquot buffer operations out
Parts of userspace want to be able to read and modify dquot buffers (e.g. xfs_db) so we need to split out the reading and writing of these buffers so it is easy to shared code with libxfs in userspace. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Ben Myers <bpm@sgi.com>
This commit is contained in:
@@ -665,20 +665,6 @@ xfs_qm_dqdetach(
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
xfs_qm_calc_dquots_per_chunk(
|
||||
struct xfs_mount *mp,
|
||||
unsigned int nbblks) /* basic block units */
|
||||
{
|
||||
unsigned int ndquots;
|
||||
|
||||
ASSERT(nbblks > 0);
|
||||
ndquots = BBTOB(nbblks);
|
||||
do_div(ndquots, sizeof(xfs_dqblk_t));
|
||||
|
||||
return ndquots;
|
||||
}
|
||||
|
||||
struct xfs_qm_isolate {
|
||||
struct list_head buffers;
|
||||
struct list_head dispose;
|
||||
@@ -859,7 +845,7 @@ xfs_qm_init_quotainfo(
|
||||
|
||||
/* Precalc some constants */
|
||||
qinf->qi_dqchunklen = XFS_FSB_TO_BB(mp, XFS_DQUOT_CLUSTER_SIZE_FSB);
|
||||
qinf->qi_dqperchunk = xfs_qm_calc_dquots_per_chunk(mp,
|
||||
qinf->qi_dqperchunk = xfs_calc_dquots_per_chunk(mp,
|
||||
qinf->qi_dqchunklen);
|
||||
|
||||
mp->m_qflags |= (mp->m_sb.sb_qflags & XFS_ALL_QUOTA_CHKD);
|
||||
@@ -1093,10 +1079,10 @@ xfs_qm_reset_dqcounts(
|
||||
/*
|
||||
* Do a sanity check, and if needed, repair the dqblk. Don't
|
||||
* output any warnings because it's perfectly possible to
|
||||
* find uninitialised dquot blks. See comment in xfs_qm_dqcheck.
|
||||
* find uninitialised dquot blks. See comment in xfs_dqcheck.
|
||||
*/
|
||||
(void) xfs_qm_dqcheck(mp, ddq, id+j, type, XFS_QMOPT_DQREPAIR,
|
||||
"xfs_quotacheck");
|
||||
xfs_dqcheck(mp, ddq, id+j, type, XFS_QMOPT_DQREPAIR,
|
||||
"xfs_quotacheck");
|
||||
ddq->d_bcount = 0;
|
||||
ddq->d_icount = 0;
|
||||
ddq->d_rtbcount = 0;
|
||||
|
Reference in New Issue
Block a user