|
@@ -153,24 +153,6 @@ xfs_qm_dqdestroy(
|
|
|
atomic_dec(&xfs_Gqm->qm_totaldquots);
|
|
|
}
|
|
|
|
|
|
-/*
|
|
|
- * This is what a 'fresh' dquot inside a dquot chunk looks like on disk.
|
|
|
- */
|
|
|
-STATIC void
|
|
|
-xfs_qm_dqinit_core(
|
|
|
- xfs_dqid_t id,
|
|
|
- uint type,
|
|
|
- xfs_dqblk_t *d)
|
|
|
-{
|
|
|
- /*
|
|
|
- * Caller has zero'd the entire dquot 'chunk' already.
|
|
|
- */
|
|
|
- d->dd_diskdq.d_magic = cpu_to_be16(XFS_DQUOT_MAGIC);
|
|
|
- d->dd_diskdq.d_version = XFS_DQUOT_VERSION;
|
|
|
- d->dd_diskdq.d_id = cpu_to_be32(id);
|
|
|
- d->dd_diskdq.d_flags = type;
|
|
|
-}
|
|
|
-
|
|
|
/*
|
|
|
* If default limits are in force, push them into the dquot now.
|
|
|
* We overwrite the dquot limits only if they are zero and this
|
|
@@ -327,8 +309,13 @@ xfs_qm_init_dquot_blk(
|
|
|
curid = id - (id % q->qi_dqperchunk);
|
|
|
ASSERT(curid >= 0);
|
|
|
memset(d, 0, BBTOB(q->qi_dqchunklen));
|
|
|
- for (i = 0; i < q->qi_dqperchunk; i++, d++, curid++)
|
|
|
- xfs_qm_dqinit_core(curid, type, d);
|
|
|
+ for (i = 0; i < q->qi_dqperchunk; i++, d++, curid++) {
|
|
|
+ d->dd_diskdq.d_magic = cpu_to_be16(XFS_DQUOT_MAGIC);
|
|
|
+ d->dd_diskdq.d_version = XFS_DQUOT_VERSION;
|
|
|
+ d->dd_diskdq.d_id = cpu_to_be32(curid);
|
|
|
+ d->dd_diskdq.d_flags = type;
|
|
|
+ }
|
|
|
+
|
|
|
xfs_trans_dquot_buf(tp, bp,
|
|
|
(type & XFS_DQ_USER ? XFS_BLF_UDQUOT_BUF :
|
|
|
((type & XFS_DQ_PROJ) ? XFS_BLF_PDQUOT_BUF :
|