Bug 918571

Summary: xfs_growfs fails with error XFS_IOC_FSGROWFSDATA xfsctl failed: Cannot allocate memory
Product: [Fedora] Fedora Reporter: Bryn M. Reeves <bmr>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 17CC: bmr, dyasny, esandeen, gansalmon, itamar, jonathan, kernel-maint, madhu.chinakonda, mbooth, pbonzini, rjones, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 909602 Environment:
Last Closed: 2013-03-07 16:12:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 909602    
Bug Blocks:    

Description Bryn M. Reeves 2013-03-06 14:25:30 UTC
+++ This bug was initially created as a clone of Bug #909602 +++

This was found by the libguestfs test suite (RHBZ#909598).

Description of problem:

$ virt-rescue --scratch
[...]
><rescue> pvcreate /dev/sda
  Physical volume "/dev/sda" successfully created
><rescue> vgcreate VG /dev/sda 
  Volume group "VG" successfully created
><rescue> lvcreate -L 40M -n LV /dev/VG
[   46.452610] bio: create slab <bio-1> at 1
  Logical volume "LV" created
><rescue> mkfs -t xfs /dev/VG/LV
meta-data=/dev/VG/LV             isize=256    agcount=2, agsize=5120 blks
         =                       sectsz=512   attr=2, projid32bit=0
data     =                       bsize=4096   blocks=10240, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal log           bsize=4096   blocks=1200, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
><rescue> lvresize -L 80M /dev/VG/LV
  Extending logical volume LV to 80.00 MiB
  Logical volume LV successfully resized
><rescue> mount /dev/VG/LV /sysroot
[   74.621050] SGI XFS with ACLs, security attributes, large block/inode numbers, no debug enabled
[   74.645368] XFS (dm-0): Mounting Filesystem
[   74.812144] XFS (dm-0): Ending clean mount
><rescue> xfs_growfs -d /sysroot 
meta-data=/dev/mapper/VG-LV      isize=256    agcount=2, agsize=5120 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=10240, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=1200, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[  102.438071] XFS (dm-0): _xfs_buf_find: Block out of range: block 0x1e001, EOFS 0x14000 
[  102.439586] XFS (dm-0): _xfs_buf_find: Block out of range: block 0x1e001, EOFS 0x14000 
xfs_growfs: XFS_IOC_FSGROWFSDATA xfsctl failed: Cannot allocate memory

Version-Release number of selected component (if applicable):

libguestfs from git (approximately 1.21.8)
kernel-3.7.6-201.fc18.x86_64
qemu-kvm-1.2.2-4.fc18.x86_64
xfsprogs-3.1.10-1.fc18.x86_64

(These are all the latest versions in Fedora 18 at time of
writing.  I did not try Rawhide yet)

How reproducible:

100%

Steps to Reproduce:
See above.

Broken in kernel-3.7.6 (3.7.5-201 is last working) by commit a560407 and fixed in 3.8 and 3.7-stable. 3.7-stable commit is c3793e0 (3.7.9):

https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=c3793e0d94af2071c6f3842dcdb5ea08bd011354

Already fixed in F18 by a rebase to 3.8.

I assume a new stable kernel is already on the way for F17 but couldn't find anything in updates-testing or bugzilla for this problem on that release.

Comment 1 Josh Boyer 2013-03-07 16:12:59 UTC
F17 is already on 3.7.9.  3.7.10 is sitting in updates testing.