diff mbox series

[2/2] linux-user: add netlink RTM_SETLINK command

Message ID 20200709072332.890440-2-laurent@vivier.eu (mailing list archive)
State New, archived
Headers show
Series [1/2] linux-user: add new netlink types | expand

Commit Message

Laurent Vivier July 9, 2020, 7:23 a.m. UTC
This command is needed to be able to boot systemd in a container.

  $ sudo systemd-nspawn -D /chroot/armhf/sid/ -b
  Spawning container sid on /chroot/armhf/sid.
  Press ^] three times within 1s to kill container.
  systemd 245.6-2 running in system mode.
  Detected virtualization systemd-nspawn.
  Detected architecture arm.

  Welcome to Debian GNU/Linux bullseye/sid!

  Set hostname to <virt-arm>.
  Failed to enqueue loopback interface start request: Operation not supported
  Caught <SEGV>, dumped core as pid 3.
  Exiting PID 1...
  Container sid failed with error code 255.

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/fd-trans.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Laurent Vivier July 13, 2020, 7:27 p.m. UTC | #1
Le 09/07/2020 à 09:23, Laurent Vivier a écrit :
> This command is needed to be able to boot systemd in a container.
> 
>   $ sudo systemd-nspawn -D /chroot/armhf/sid/ -b
>   Spawning container sid on /chroot/armhf/sid.
>   Press ^] three times within 1s to kill container.
>   systemd 245.6-2 running in system mode.
>   Detected virtualization systemd-nspawn.
>   Detected architecture arm.
> 
>   Welcome to Debian GNU/Linux bullseye/sid!
> 
>   Set hostname to <virt-arm>.
>   Failed to enqueue loopback interface start request: Operation not supported
>   Caught <SEGV>, dumped core as pid 3.
>   Exiting PID 1...
>   Container sid failed with error code 255.
> 
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  linux-user/fd-trans.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/linux-user/fd-trans.c b/linux-user/fd-trans.c
> index 5d49a53552b2..1486c81aaa27 100644
> --- a/linux-user/fd-trans.c
> +++ b/linux-user/fd-trans.c
> @@ -1204,6 +1204,7 @@ static abi_long target_to_host_data_route(struct nlmsghdr *nlh)
>          break;
>      case RTM_NEWLINK:
>      case RTM_DELLINK:
> +    case RTM_SETLINK:
>          if (nlh->nlmsg_len >= NLMSG_LENGTH(sizeof(*ifi))) {
>              ifi = NLMSG_DATA(nlh);
>              ifi->ifi_type = tswap16(ifi->ifi_type);
> 

Applied to my linux-user-for-5.1 branch.

Thanks,
Laurent
diff mbox series

Patch

diff --git a/linux-user/fd-trans.c b/linux-user/fd-trans.c
index 5d49a53552b2..1486c81aaa27 100644
--- a/linux-user/fd-trans.c
+++ b/linux-user/fd-trans.c
@@ -1204,6 +1204,7 @@  static abi_long target_to_host_data_route(struct nlmsghdr *nlh)
         break;
     case RTM_NEWLINK:
     case RTM_DELLINK:
+    case RTM_SETLINK:
         if (nlh->nlmsg_len >= NLMSG_LENGTH(sizeof(*ifi))) {
             ifi = NLMSG_DATA(nlh);
             ifi->ifi_type = tswap16(ifi->ifi_type);