[virt-tools-list] libvirt and virt-manager default Xen blktap driver name for file images, tap vs tap2?
Pasi Kärkkäinen
pasik at iki.fi
Mon Jun 10 16:10:00 UTC 2013
On Mon, Jun 10, 2013 at 12:04:24PM -0400, Cole Robinson wrote:
> On 06/09/2013 01:07 PM, Pasi Kärkkäinen wrote:
> > Hello,
> >
> > Does anyone know where/how to set the default libvirt Xen blktap "driver name" for disk image files?
> >
> > If I have "blktap" module loaded in dom0 kernel, and I do this:
> >
> > virt-install -d -n blktaptest01 -r 2048 --vcpus=2 --disk /var/lib/libvirt/images/blktaptest01.img,size=8 --vnc -p -l "http://ftp.funet.fi/pub/mirrors/centos.org/6.4/os/x86_64"
> >
> > which results in this generated libvirt xml config for the VM:
> >
> > <disk type='file' device='disk'>
> > <driver name='tap' type='aio'/>
> > <source file='/var/lib/libvirt/images/blktaptest01.img'/>
> > <target dev='xvda' bus='xen'/>
> > </disk>
> >
> > .. which doesn't seem to work for me with Xen 4.2.2 using xm/xend, and libvirt 0.10.x.
> >
> > The problem is there's no tapdisk process started in dom0, and the block device cannot be
> > initialized or accessed inside the VM. I have the same problem with virt-manager,
> > using the "new VM" wizard with disk image files.
> >
> > The correct "driver name" for libvirt is "tap2", which works for me,
> > so I need to manually edit the libvirt xml config to make the VM boot/work:
> >
> > <disk type='file' device='disk'>
> > <driver name='tap2' type='aio'/>
> > <source file='/var/lib/libvirt/images/blktaptest01.img'/>
> > <target dev='xvda' bus='xen'/>
> > </disk>
> >
> > This matches xm/xend behaviour with text config files for VMs.
> > I need to use tap2 there aswell on the disk = [] line.
> >
> > Where should I choose/set/patch the default libvirt driver name? Is that in libvirt sources,
> > or in virt-install/virt-manager ? I tried reading the libvirt "xen" driver source,
> > but I couldn't find any "default" setting there..
> >
>
> Hmm. This is old old behavior in virtinst. If the blktap module is loaded on
> the local host we use the 'tap' driver.
>
Yep, I noticed, removing "blktap" resulted in different behaviour (using the file: driver).
> According to the libvirt log, tap2 has been available since xen 4.0, so
> virtinst should probably check if xen >= 4.0 and libvirt >= 0.9.7, which is
> the first libvirt version where it sounds like tap2 is usable. This would be a
> check in virtinst/support.py
>
Ok. Does virt-manager also use virtinst internally?
Or do I need to separately patch virt-manager ?
> You should also be able to manually work around it by doing --disk
> ...,driver_name=tap2,driver_type=aio
>
Yep, that works, but I'm kind of trying to figure out how to make the default behaviour correct.
Thanks!
-- Pasi
More information about the virt-tools-list
mailing list