[libvirt-users] vhost-net requested but could not be initialized

Asadullah Hussain asadxflow at gmail.com
Fri Jul 25 05:55:54 UTC 2014


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 at gmail.com> 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 at gmail.com> wrote:
>
>>
>>
>>
>> On 24 July 2014 15:52, Daniel P. Berrange <berrange at redhat.com> wrote:
>>
>>> On Thu, Jul 24, 2014 at 03:48:06PM +0500, Asadullah Hussain wrote:
>>> > 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:
>>>
>>> Well I suggest you make your system use the expected device
>>> 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 process
>> 2014-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 initialized
>> qemu-system-x86_64: -netdev type=tap,id=net1,script=no,
>> downscript=no,ifname=port4,vhost=on: Device 'tap' could not be
>> initialized​
>>
>>> Regards,
>>> 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 Hussain
>>
>
>
>
> --
> Cheers,
>
> Asadullah Hussain
>



-- 
Cheers,

Asadullah Hussain
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvirt-users/attachments/20140725/a3e7c725/attachment.htm>


More information about the libvirt-users mailing list