mirror of https://gitee.com/openkylin/libvirt.git
virNetDevTapCreate: Fail on systems not supporting IFF_MULTI_QUEUE
In my previous patches I enabled the IFF_MULTI_QUEUE flag every time the user requested multiqueue TAP device. However, this works only at runtime. During build time the flag may be undeclared.
This commit is contained in:
parent
03eb06632a
commit
25a2d944df
|
@ -178,8 +178,15 @@ int virNetDevTapCreate(char **ifname,
|
||||||
|
|
||||||
ifr.ifr_flags = IFF_TAP | IFF_NO_PI;
|
ifr.ifr_flags = IFF_TAP | IFF_NO_PI;
|
||||||
/* If tapfdSize is greater than one, request multiqueue */
|
/* If tapfdSize is greater than one, request multiqueue */
|
||||||
if (tapfdSize > 1)
|
if (tapfdSize > 1) {
|
||||||
|
# ifdef IFF_MULTI_QUEUE
|
||||||
ifr.ifr_flags |= IFF_MULTI_QUEUE;
|
ifr.ifr_flags |= IFF_MULTI_QUEUE;
|
||||||
|
# else
|
||||||
|
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
||||||
|
_("Multiqueue devices are not supported on this system"));
|
||||||
|
goto cleanup;
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
|
||||||
# ifdef IFF_VNET_HDR
|
# ifdef IFF_VNET_HDR
|
||||||
if ((flags & VIR_NETDEV_TAP_CREATE_VNET_HDR) &&
|
if ((flags & VIR_NETDEV_TAP_CREATE_VNET_HDR) &&
|
||||||
|
|
Loading…
Reference in New Issue