Red Hat Bugzilla – Bug 852348
fail to block_resize local data disk with IDE/AHCI disk_interface
Last modified: 2015-03-05 04:41:47 EST
after this bug fixed, QE need to verify both the IDE and AHCI, both bug 918831 and bug 852348.
*** Bug 918831 has been marked as a duplicate of this bug. ***
I've patched this as far as the size will be updated on a soft reboot, but currently despite the rescan command (and observing that new, updated IDENTIFY information was resent to the guest OS) fdisk -l does not recognize the new updated size. #1 - echo 1 > /sys/block/sda/device/rescan does not trigger a new IDENTIFY packet to be requested. #2 - partprobe, however, does. #3 - after running both, in either order, Linux refuses to observe a change in size until a soft reboot. Guest is Linux 3.11.10-301.fc20.x86_64 I can actually get fdisk to see the new values if I do this: # echo "- - -" > /sys/class/scsi_host/host5/scan but that has the unsavory effect of re-materializing the drive as /dev/sdb instead of /dev/sda, which gums up the works pretty badly.
fix is posted upstream, will backport pending review.
Fix included in qemu-kvm-1.5.3-71.el7
Revert to post as patch built in incorrect package.
Fix included in qemu-kvm-rhev-2.1.2-2.el7
Reproduce this bug on qemu-kvm-rhev-2.1.0-1.el7. Result: After block resize, then rescan scsi host/reboot guest the size of ide disk didn't change. Test this bug on qemu-kvm-rhev-2.1.2-5.el7.x86_64. Host: qemu-kvm-rhev-2.1.2-5.el7.x86_64 qemu-img-rhev-2.1.2-5.el7.x86_64 qemu-kvm-common-rhev-2.1.2-5.el7.x86_64 qemu-kvm-rhev-debuginfo-2.1.2-5.el7.x86_64 qemu-kvm-tools-rhev-2.1.2-5.el7.x86_64 kernel-3.10.0-191.el7.x86_64 Guest: kernel-3.10.0-189.el7.x86_64 Result: 1. Boot vm with ide disk. ... -drive file=/home/storage0.raw,format=raw,if=none,id=ide-disk,cache=none,werror=stop,rerror=stop,aio=native \ -device ide-drive,bus=ide.0,unit=0,drive=ide-disk,id=ide_data \ 2. block_resize. (qemu) block_resize ide-disk 20G 3. Check the size of disk image. [root@dhcp-11-16 home]# qemu-img info storage0.raw image: storage0.raw file format: raw virtual size: 20G (21474836480 bytes) disk size: 454M 4. Rescan scsi host inside guest. # echo "- - -" > /sys/class/scsi_host/host0/scan 5. Check the size in guest by "fdisk -l" ... Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Also tested qcow2 format. For raw format, both shrink and enlarge works well. For qcow2 format, enlarge works well.
Also test ahci interface on qemu-kvm-rhev-2.1.2-5.el7.x86_64. Command line: /usr/libexec/qemu-kvm \ -M q35 \ -cpu SandyBridge \ -m 2G \ -smp 4,maxcpus=160,cores=2,threads=1,sockets=2 \ -enable-kvm \ -name rhel7 \ -uuid 990ea161-6b67-47b2-b803-19fb01d30d12 \ -smbios type=1,manufacturer='Red Hat',product='RHEV Hypervisor',version=el6,serial=koTUXQrb,uuid=feebc8fd-f8b0-4e75-abc3-e63fcdb67170 \ -k en-us \ -rtc base=localtime,clock=host,driftfix=slew \ -nodefaults \ -monitor stdio \ -qmp tcp:0:5555,server,nowait \ -boot menu=on \ -bios /usr/share/seabios/bios.bin \ -monitor unix:/tmp/monitor2,server,nowait \ -vga qxl \ -spice port=5900,disable-ticketing \ -usb \ -device usb-tablet,id=tablet0 \ -drive file=gluster://10.66.106.25/gv0/rhel7-64.qcow2,if=none,id=drive-virtio-disk0,format=qcow2,cache=none,werror=stop,rerror=stop,aio=threads \ -device virtio-blk-pci,scsi=off,bus=pcie.0,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 \ -drive file=/home/storage0.qcow2,format=qcow2,if=none,id=ide-disk,cache=none,werror=stop,rerror=stop,aio=native \ -device ide-drive,bus=ide.0,unit=0,drive=ide-disk,id=ide_data \ For raw format, both shrink and enlarge works well. For qcow2 format, enlarge works well.
Base on comment#12 and comment#13, this bug has been fixed.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2015-0624.html