# KVM: lost cabaility to assign a network

## toralf

Within the virt-manager I get an 

```
Error starting domain: this function is not supported by the connection driver: Network device allocation not available

Traceback (most recent call last):

  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper

    callback(asyncjob, *args, **kwargs)

  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 125, in tmpcb

    callback(*args, **kwargs)

  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 82, in newfn

    ret = fn(self, *args, **kwargs)

  File "/usr/share/virt-manager/virtManager/domain.py", line 1505, in startup

    self._backend.create()

  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 1069, in create

    if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)

libvirtError: this function is not supported by the connection driver: Network device allocation not available

```

for nearly every network card I tried. It worked in the past (with older kernels, all gone in the mean while) so I do wonder how to fix that now. My kernel .config is in https://paste.pound-python.org/show/yIx1yjusaXkHkux1J2bE/

----------

## gordonp

I just performed some server-updates, including:

libvirt from 4.0.0 to 4.1.0

qemu from 2.11.0 to 2.11.1-r1

and now I am in the same boat as @toralf  :Sad:   Same error-message  :Sad:   None of my VM's will start, including my LDAP-authentication, video-security-recorder, web-server, Access-Point/Network Management, etc!

Any suggestions?  I'm all ears!

(please note 1:  everything was working perfectly 10min ago, until updating)

(note 2:  my kernel remains unchanged, between working / non-working:  gentoo-sources 4.9.76-gentoo-r1)

----------

## krinn

 *gordonp wrote:*   

> Any suggestions?  I'm all ears!

 

Well, it looks so easy that i'm a bit shy to say it.

 *Quote:*   

> libvirt from 4.0.0 to 4.1.0
> 
> qemu from 2.11.0 to 2.11.1-r1 

 

just revert back to previous version each package and see when it finally work again, once you have put blame on failing package, look for its changelog (because sometimes, even it sucks, "bugs" are features and wanted behaviour)

Next action depends on changelog content, if it's not expect, filebug against that package.

It may not be these packages, but you have point them, and actually, many errors are always in front of user eyes, just user don't see them ; so for me, you have point them for some reason, and yes, i think you might have just been right at pointing them!

----------

## gordonp

Rolling back to prior versions of qemu / libvirt worked for me; maybe it will also help @toralf and others:

First, the current/updated versions that weren't allowing VMs to start:

```
# emerge qemu libvirt

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild   R    ] app-emulation/qemu-2.11.1-r1 

[ebuild   R    ] app-emulation/libvirt-4.1.0
```

I rolled these back:

```
# emerge =app-emulation/qemu-2.11.0 =app-emulation/libvirt-4.0.0

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild     UD ] app-emulation/qemu-2.11.0 [2.11.1-r1]

[ebuild     UD ] app-emulation/libvirt-4.0.0 [4.1.0]
```

and I also had backup-copies that allowed me to roll-back these config-files:

```
 1) /etc/conf.d/libvirt-guests (1)

 2) /etc/libvirt/nwfilter/allow-arp.xml (1)

 3) /etc/libvirt/nwfilter/allow-dhcp-server.xml (1)

 4) /etc/libvirt/nwfilter/allow-dhcp.xml (1)

 5) /etc/libvirt/nwfilter/allow-incoming-ipv4.xml (1)

 6) /etc/libvirt/nwfilter/allow-ipv4.xml (1)

 7) /etc/libvirt/nwfilter/clean-traffic.xml (1)

 8) /etc/libvirt/nwfilter/no-arp-ip-spoofing.xml (1)

 9) /etc/libvirt/nwfilter/no-arp-mac-spoofing.xml (1)

10) /etc/libvirt/nwfilter/no-arp-spoofing.xml (1)

11) /etc/libvirt/nwfilter/no-ip-multicast.xml (1)

12) /etc/libvirt/nwfilter/no-ip-spoofing.xml (1)

13) /etc/libvirt/nwfilter/no-mac-broadcast.xml (1)

14) /etc/libvirt/nwfilter/no-mac-spoofing.xml (1)

15) /etc/libvirt/nwfilter/no-other-l2-traffic.xml (1)

16) /etc/libvirt/nwfilter/no-other-rarp-traffic.xml (1)

17) /etc/libvirt/nwfilter/qemu-announce-self-rarp.xml (1)

18) /etc/libvirt/nwfilter/qemu-announce-self.xml (1)
```

That sure is a sinking feeling when all my authentication and other critical services are pooched  :Sad: 

----------

## elbunda

I had the same issue after installing updates an hour ago.

Recompiling libvirt with virt-network USE flag and restart libvirtd service fixed my issue and I was able to boot VMs again.

But virt-manager created some wierd virbr0 interface after that. So I had to add myself to radvd group and then I was able to remove it in virt-manager.

Now everything works again.

----------

## Maitreya

Having the same issue, but setting the "virt-network" use flag will pull in dnsmasq and friends.

I just want to add my virtual adapter to a bridge without all these "extras" so I hope a real fix is inbound.

----------

## Matje

This was fixed in libvirt-4.1.0-r1, I can confirm it works

Edit: forgot the bug link: https://bugs.gentoo.org/650872

----------

## uberDoward

Where are ya'll seeing the -r1 update?  I'm not seeing it in my latest emerge --sync....

----------

## mondjef

I can confirm that 4.1.0-r3 restores the functionality as I just got hit with this and had to force an upgrade to this version by adding it to /etc/portage/package.accept_keywords

----------

