qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 0/3] linux-user: netlink support


From: Laurent Vivier
Subject: Re: [Qemu-devel] [PATCH v2 0/3] linux-user: netlink support
Date: Tue, 24 May 2016 10:42:01 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0


Le 24/05/2016 à 10:29, Riku Voipio a écrit :
> On Sun, May 22, 2016 at 06:56:18PM +0200, Laurent Vivier wrote:
>> It is now possible to register handlers to a file descriptor
>> to translate a data stream transiting by this file descriptor.
>>
>> We can now decode netlink information coming from the guest
>> and inject a translated one into the host, and vice-versa.
>>
>> This series is an "RFC" because it works (we can boot a
>> container using systemd and use iproute tools) but some
>> problems remain.
> 
> Ok, I can wait for V3.

Well, I've forgotten to remove this part from the first series version :)

So, if it doesn't break anything and bring some improvements, I think
you can apply it.

There are two remaining problems:
- missing nested types on ppc64
- some unknown IFA types on ppc64le/debian 8.3 (could be unimplemented
flags management)

But I think this can wait.

ppc64/ppc64le can also be broken because of missing instructions, not
because netlink implementation.

> 
>> Some results (x86_64 host) with some guests:
>>
>> * ppc: it can boot a debian 8.2/8.3 (Jessie) LXC container
>>   and networking works fine (dhcp and "apt-get upgrade").
>>
>>   "ip link" generates some traces in the kernel log:
>>   "netlink: 8 bytes leftover after parsing attributes in process `ip'."
>>
>> * ppc64: it can boot a fedora 21 LXC container.
>>
>>   Some issues with dhclient and "dnf update"
>>   -> missing netlink nested types 18 and 26
>>   -> uniplemented instruction "evmheumiaaw"
>>
>>   "ip link" generates some traces in the kernel log:
>>   "netlink: 8 bytes leftover after parsing attributes in process `ip'."
>>
>> * ppc64le: Debian 8.3 (Jessie).
>>
>>   ip commands work fine, but "apt-get update" generates some netlink
>>   invalid types (and fails):
>>     Unknown target IFA type: 130
>>     Unknown target IFA type: 59722
>>     Unknown target IFA type: 59657
>>     Unknown target IFA type: 15648
>>     Unknown target IFA type: 32008
>>     Unknown target IFA type: 16590
>>
>> * sh4: container doesn't work but 'ip' in a chroot works well.
>>
>> * arm: Raspbian 8.3 (Jessie) works fine.
> 
> Tested on arm64 and seems to work fine (didn't test dhcp).

Thanks

> 
>> * s390x: container Debian 8.1 boots well, but "apt-get" hangs on
>>   networking (name resolution?).
>>
>>   "ip link" generates some traces in the kernel log:
>>   "netlink: 8 bytes leftover after parsing attributes in process `ip'."
>>
>> v2:
>>
>> Check domain before opening socket
>> Remove cast to int of sizeof()
>> Move NLMSG_DONE into the switch()
>> Fix '{' in 'case:'
>> Reorder data types by type size
>> Add new conversions (IFLA_STATS, IFLA_STATS64, IFLA_MAP)
>> Add warning for nested type (not supported)
>> Add logs with gemu_log()
>> Don't convert rta_len and rta_type in the error case
>>
>> Laurent Vivier (3):
>>   linux-user: add rtnetlink(7) support
>>   linux-user: support netlink protocol NETLINK_KOBJECT_UEVENT
>>   linux-user: add netlink audit
>>
>>  linux-user/syscall.c | 643 
>> ++++++++++++++++++++++++++++++++++++++++++++++++++-
>>  1 file changed, 637 insertions(+), 6 deletions(-)
>>
>> -- 
>> 2.5.5
>>
Laurent



reply via email to

[Prev in Thread] Current Thread [Next in Thread]