Solved the problem, basically libvirt pre-configures network tap devices and pre-opens /dev/vhost-net file and passes these to qemu as open, ready to use file descriptors. . It makes it very difficult to use any other file descriptor for a vhost kernel module. I had to just make sure that the vhost device file descriptor was the default directory i.e., /dev/vhost-net.
I also had to change the permissions for this default file descriptor and add it to "cgroup_device_acl".
On 24 July 2014 16:00, Asadullah Hussain <asadxflow@xxxxxxxxx> wrote:
Currently in the VM XML, I am passing the following command line argument as a passthrough argument:-netdev type=tap,id=net1,script=no,downscript=no,ifname=port3,vhost=on-device virtio-net-pci,netdev=net1,mac=00:00:00:00:00:01,csum=off,gso=off,guest_tso4=off,guest_tso6=off,guest_ecn=off
Is there another way to represent this in the XML file? maybe that may solve the problem.--On 24 July 2014 15:55, Asadullah Hussain <asadxflow@xxxxxxxxx> wrote:
On 24 July 2014 15:52, Daniel P. Berrange <berrange@xxxxxxxxxx> wrote:
On Thu, Jul 24, 2014 at 03:48:06PM +0500, Asadullah Hussain wrote:Well I suggest you make your system use the expected device
> Let me clarify my question, I am using unmodified stock qemu (1.4.0) and
> only the location of vhost file descriptor is different from default (I
> don't remove the default /dev/vhost-net directory)
>
> The VHOST file descriptor is present in "/dev/vhost-0" directory instead of
> the default "/dev/vhost-net". When I try to give vhostfd in the XML I get a
> different error:
name for /dev/vhost-net. Just as libvirt only targets mainline
QEMU, we only target mainline kernel / standard device layout
I was able to change my device name to /dev/vhost-net but still I get the error, the error itself isn't telling much about the problem:2014-07-24 10:41:35.970+0000: 3183: error : qemuMonitorOpenUnix:293 : failed to connect to monitor socket: No such process2014-07-24 10:41:35.970+0000: 3183: error : qemuProcessWaitForMonitor:1806 : internal error process exited while connecting to monitor: qemu-system-x86_64: -netdev type=tap,id=net1,script=no,downscript=no,ifname=port4,vhost=on: vhost-net requested but could not be initializedqemu-system-x86_64: -netdev type=tap,id=net1,script=no,downscript=no,ifname=port4,vhost=on: Device 'tap' could not be initializedRegards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
--Cheers,Asadullah HussainCheers,Asadullah Hussain
Cheers,
_______________________________________________ libvirt-users mailing list libvirt-users@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvirt-users