Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 31 Jul 2009 19:17:37 +0000 (12:17 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 31 Jul 2009 19:17:37 +0000 (12:17 -0700)
* 'for-linus' of git://oss.sgi.com/xfs/xfs:
  xfs: bump up nr_to_write in xfs_vm_writepage
  xfs: reduce bmv_count in xfs_vn_fiemap

fs/xfs/linux-2.6/xfs_aops.c
fs/xfs/linux-2.6/xfs_iops.c

index 7ec89fc05b2b66d9ed5ca462d2d7f05d44c83dbc..aecf2519db76345a206fb812c61f0598d85440fb 100644 (file)
@@ -1268,6 +1268,14 @@ xfs_vm_writepage(
        if (!page_has_buffers(page))
                create_empty_buffers(page, 1 << inode->i_blkbits, 0);
 
+
+       /*
+        *  VM calculation for nr_to_write seems off.  Bump it way
+        *  up, this gets simple streaming writes zippy again.
+        *  To be reviewed again after Jens' writeback changes.
+        */
+       wbc->nr_to_write *= 4;
+
        /*
         * Convert delayed allocate, unwritten or unmapped space
         * to real space and flush out to disk.
index 58973bb460388b2ef3dd8f85f2017ff347810c31..8070b34cc287db18f8eb40653d4a8f59f8bd3aa7 100644 (file)
@@ -680,8 +680,8 @@ xfs_vn_fiemap(
        else
                bm.bmv_length = BTOBB(length);
 
-       /* our formatter will tell xfs_getbmap when to stop. */
-       bm.bmv_count = MAXEXTNUM;
+       /* We add one because in getbmap world count includes the header */
+       bm.bmv_count = fieinfo->fi_extents_max + 1;
        bm.bmv_iflags = BMV_IF_PREALLOC;
        if (fieinfo->fi_flags & FIEMAP_FLAG_XATTR)
                bm.bmv_iflags |= BMV_IF_ATTRFORK;