Red Hat Bugzilla – Bug 586387
Xen tap:aio fails on XFS filesystem (but works on ext3)
Last modified: 2010-05-24 11:12:09 EDT
Description of problem:
When creating a vm using virt-install on CentOS 5.4, if the file system image is stored on an XFS filesystem, various read/write and IO errors occur in the DomU guest. Moving the same file to an ext3 partition works.
This may or may not be related to:
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Create an XFS filesytem (mine is 3 x 1Tb SATA drives in mdraid5)
2. Use virt-install to create a Xen guest file on the XFS filesystem
3. Try to install any guest OS.
IO errors, read / write errors and more.
Expected that as long as Dom0 can see the file and read it correctly, then the DomU should too!
A workaround seems to be setting the xen config file line from:
disk = [ "tap:aio:/vm-images/mail.crc.id.au.img,xvda,w" ]
disk = [ "file:/vm-images/mail.crc.id.au.img,xvda,w" ]
However this incurs a severe performance penalty.
xfs-kmod isn't supported ... are you using that, or the xfs.ko that comes with RHEL^w^w^w^wCentos5.4?
If you're using the old centos xfs kmod, it's a) not a red hat bug, and b) a bad idea ;)
if you're using the xfs.ko from the stock kernel, then an actual list of the "IO errors, read / write errors and more." would be most helpful.
I am using the stock kernel for CentOS 5.4 - I have not installed any kmod for XFS support.
$ rpm -qa | grep xfs
$ rpm -qa | grep kmod
I have the e1000e kmod installed as the stock module for this NIC only brings it up at 100FD instead of 1000FD.
I have since updated this machine to 5.5 and will attempt to retest this issue shortly. The kernel on this machine now is: kernel-xen-2.6.18-164.15.1.el5
Marking as need more info from me for now.
There weren't a lot of changes in xfs from 5.4 to 5.5, but testing 5.5 would be welcome in any case. Again, including details on the errors you saw would be great.
/mnt/raid is a 1Tb XFS filesystem:
/dev/mapper/RAID5-fileshare on /mnt/raid type xfs (rw)
# virt-install -p --prompt
What is the name of your virtual machine? test
How much RAM should be allocated (in megabytes)? 512
What would you like to use as the disk (file path)? /mnt/raid/test.img
How large would you like the disk (/mnt/raid/test.img) to be (in gigabytes)? 2
What is the install URL? ftp://localhost/centos
When starting the install, xenblk loads as it should, go through the prompts and select VNC installation.
Interestingly this didn't throw an error. I am just about to rebuild the Dom0 machine for this however - so I will double check everything with a stock 5.5 install before posting anything further. At this stage, it may not be reproducible with 5.5.
Unable to reproduce in 5.5. I'm happy to close this until I can find a 100% reproducible scenario. (Sadly, I can't mark it as closed! :) )
Ok, thanks for the updates!