[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug 1857811] Re: qemu user static binary seems to lack support for netw
From: |
Laurent Vivier |
Subject: |
[Bug 1857811] Re: qemu user static binary seems to lack support for network namespace. |
Date: |
Wed, 12 Feb 2020 18:32:36 -0000 |
I've copied the file portage-2.3.84/build/lib.linux-
x86_64-3.7/portage/util/netlink.py from portage to my local directory
and run the following script:
cat > rtnetlink.py <<EOF
import socket
__has_ipv6 = None
def _has_ipv6():
"""
Test that both userland and kernel support IPv6, by attempting
to create a socket and listen on any unused port of the IPv6
::1 loopback address.
@rtype: bool
@return: True if IPv6 is supported, False otherwise.
"""
global __has_ipv6
if __has_ipv6 is None:
if socket.has_ipv6:
sock = None
try:
# With ipv6.disable=0 and ipv6.disable_ipv6=1,
socket creation
# succeeds, but then the bind call fails with
this error:
# [Errno 99] Cannot assign requested address.
sock = socket.socket(socket.AF_INET6,
socket.SOCK_DGRAM)
sock.bind(('::1', 0))
except EnvironmentError:
__has_ipv6 = False
else:
__has_ipv6 = True
finally:
# python2.7 sockets do not support context
management protocol
if sock is not None:
sock.close()
else:
__has_ipv6 = False
return __has_ipv6
def _configure_loopback_interface():
"""
Configure the loopback interface.
"""
from netlink import RtNetlink
try:
with RtNetlink() as rtnl:
ifindex = rtnl.get_link_ifindex(b'lo')
rtnl.set_link_up(ifindex)
rtnl.add_address(ifindex, socket.AF_INET, '10.0.0.1', 8)
if _has_ipv6():
rtnl.add_address(ifindex, socket.AF_INET6,
'fd::1', 8)
except EnvironmentError as e:
print("Unable to configure loopback interface: %s\n" %
e.strerror)
_configure_loopback_interface()
EOF
And I have no error in an aarch64/ubunut eoan chroot.
sudo QEMU_STRACE= unshare --net chroot chroot/arm64/eoan python3 rtnetlink.py
...
675051 socket(PF_NETLINK,,NETLINK_ROUTE) = 3
675051 bind(3,{nl_family=AF_NETLINK,nl_pid=0,nl_groups=0}, 12) = 0
675051 sendto(3,274891222784,38,0,274886293096,12) = 38
...
sudo strace -yyy unshare --net chroot chroot/arm64/eoan python3
rtnetlink.py
..
socket(AF_NETLINK, SOCK_DGRAM|SOCK_CLOEXEC, NETLINK_ROUTE) =
3<NETLINK:[26260481]>
bind(3<NETLINK:[26260481]>, {sa_family=AF_NETLINK, nl_pid=0,
nl_groups=00000000}, 12) = 0
sendto(3<NETLINK:[26260481]>, {{len=38, type=0x12 /* NLMSG_??? */,
flags=NLM_F_REQUEST, seq=1, pid=0},
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x03\x00\x6c\x6f"},
38, 0, {sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, 12) = 38
...
So I need to know which version you are using (qemu, kernel host).
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1857811
Title:
qemu user static binary seems to lack support for network namespace.
Status in QEMU:
New
Bug description:
Whenever I execute emerge in gentoo linux in qemu-aarch64 chroot, I
see the following error message.
Unable to configure loopback interface: Operation not supported
If I disable emerge's network-sandbox which utilizes network
namespace, the error disappears.
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1857811/+subscriptions
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., Laurent Vivier, 2020/02/12
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., crocket, 2020/02/12
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., crocket, 2020/02/12
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace.,
Laurent Vivier <=
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., crocket, 2020/02/12
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., Laurent Vivier, 2020/02/20
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., crocket, 2020/02/20
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., Laurent Vivier, 2020/02/20
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., crocket, 2020/02/21
- [Bug 1857811] Re: qemu user static binary seems to lack support for network namespace., Laurent Vivier, 2020/02/21