Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
[pandora-kernel.git] / fs / xfs / xfs_qm.c
index 9a0aa76..0bbb1a4 100644 (file)
@@ -674,7 +674,8 @@ xfs_qm_dqattach_one(
         * disk and we didn't ask it to allocate;
         * ESRCH if quotas got turned off suddenly.
         */
-       error = xfs_qm_dqget(ip->i_mount, ip, id, type, XFS_QMOPT_DOWARN, &dqp);
+       error = xfs_qm_dqget(ip->i_mount, ip, id, type,
+                            doalloc | XFS_QMOPT_DOWARN, &dqp);
        if (error)
                return error;
 
@@ -1296,7 +1297,8 @@ xfs_qm_dqiter_bufs(
                        break;
 
                xfs_qm_reset_dqcounts(mp, bp, firstid, type);
-               xfs_bdwrite(mp, bp);
+               xfs_buf_delwri_queue(bp);
+               xfs_buf_relse(bp);
                /*
                 * goto the next block.
                 */
@@ -1346,11 +1348,8 @@ xfs_qm_dqiterate(
                 * the inode is never added to the transaction.
                 */
                xfs_ilock(qip, XFS_ILOCK_SHARED);
-               error = xfs_bmapi(NULL, qip, lblkno,
-                                 maxlblkcnt - lblkno,
-                                 XFS_BMAPI_METADATA,
-                                 NULL,
-                                 0, map, &nmaps, NULL);
+               error = xfs_bmapi_read(qip, lblkno, maxlblkcnt - lblkno,
+                                      map, &nmaps, 0);
                xfs_iunlock(qip, XFS_ILOCK_SHARED);
                if (error)
                        break;
@@ -1683,7 +1682,7 @@ xfs_qm_quotacheck(
         * quotacheck'd stamp on the superblock. So, here we do a synchronous
         * flush.
         */
-       XFS_bflush(mp->m_ddev_targp);
+       xfs_flush_buftarg(mp->m_ddev_targp, 1);
 
        /*
         * If one type of quotas is off, then it will lose its