[libvirt-users] libvirt 4.1 and later - howto configure LXC with interface macvlan type='direct' ?

Laine Stump laine at redhat.com
Sat Dec 8 18:07:42 UTC 2018


On 12/5/18 6:54 AM, Daniel P. Berrangé wrote:
> On Wed, Dec 05, 2018 at 02:43:45PM +0300, mxs kolo wrote:
>>  Hi all
>>
>> After upgrade from Centos 7.5 to Centos 7.6, our test environment
>> geted  new version of libvirt 4.5.0
>> In which our old containers have broken config and can't start:
>> 2018-12-05 10:38:32.634+0000: 18010: debug :
>> virLXCControllerGetNICIndexes:368 : Getting nic indexes
>> 2018-12-05 10:38:32.634+0000: 18010: error :
>> virLXCControllerGetNICIndexes:400 : unsupported configuration:
>> Unsupported net type direct
>> Failure in libvirt_lxc startup: unsupported configuration: Unsupported
>> net type direct
>>
>> We use next section for network interface:
>>  <interface type='direct'>
>>       <mac address='02:00:21:3b:eb:e1'/>
>>       <source dev='eno1.710' mode='bridge'/>
>>     </interface>
>>
>> It's linux macvlan solutions and it's worked at least since libvirt
>> 1.2.7 for us.
>> As I can see, in version 4.1.0 and later, some changes about DIRECT
>> connect was implemented.
>> VIR_DOMAIN_NET_TYPE_DIRECT is  still fully supported in src/lxc/lxc_driver.c
>> But in src/lxc/lxc_controller.c
>> --- libvirt-3.9.0/src/lxc/lxc_controller.c      2017-09-28
>> 13:15:43.322712913 +0300
>> +++ libvirt-4.1.0/src/lxc/lxc_controller.c      2018-02-28
>> 16:21:05.158799006 +0300
>> @@ -395,8 +395,14 @@
>>          case VIR_DOMAIN_NET_TYPE_INTERNAL:
>>          case VIR_DOMAIN_NET_TYPE_DIRECT:
>>          case VIR_DOMAIN_NET_TYPE_HOSTDEV:
>> +            virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
>> +                           _("Unsupported net type %s"),
>> +                           virDomainNetTypeToString(ctrl->def->nets[i]->type));
>> +            goto cleanup;
>> +        case VIR_DOMAIN_NET_TYPE_LAST:
>>          default:
>> -            break;
>> +            virReportEnumRangeError(virDomainNetType,
>> ctrl->def->nets[i]->type);
>> +            goto cleanup;
>>          }
>>      }
>>
>> Since version 4.1.0 which config need be used to configure macvlan for
>> lxc cointainers ?
> 
> Sorry, this looks like my screw up in the code. I mis-interpreted what
> this function was doing when adding error checking and mistakenly
> rejected the TYPE_DIRECT nics.
> 
> Please file a bug against libvirt for this, or send a patch if you wish
> to.


Following up on this - this bug was filed:

https://bugzilla.redhat.com/show_bug.cgi?id=1656463

Since I had experienced the same problem and had a test case ready at
hand, I made a patch and pushed it. The fix will be in libvirt 5.0.0
(more details in the bug report).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pEpkey.asc
Type: application/pgp-keys
Size: 10402 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvirt-users/attachments/20181208/9c00969b/attachment.bin>


More information about the libvirt-users mailing list