tun module is not auto-loaded on UC18/pi3 despite network-control interface being connected

Bug #1859084 reported by Lorenz
16
This bug affects 2 people
Affects Status Importance Assigned to Milestone
snapd
Fix Released
Undecided
Jamie Strandboge

Bug Description

1. Build any snap which uses the network-control interface
2. Install it on a Raspberry Pi 3 running Ubuntu Core 18
2. Attach the interface
3. Run it -> permission error

Here is an example:

snapcraft.yaml: https://paste.ubuntu.com/p/SvsjMGWXzD/

Without attaching the network-control interface, mytest.add responds with

    Cannot open netlink socket: Operation not permitted

When connecting the interface, the action is executed as intended on every machine I tested, except the Raspberry Pi 3 running Ubuntu Core 18. Here, another error is displayed

    open: Operation not permitted

I tested the following configurations (clean images with refreshed snaps):

    Ubuntu 19.10 amd64 desktop (working)
    Ubuntu 19.10 server armhf Raspberry Pi 3 (working)
    Ubuntu Core 18 amd64 (working)
    Ubuntu Core 18 armhf Raspberry Pi 3 (NOT working)
    Ubuntu Core 18 arm64 Raspberry Pi 3 (NOT working)

Lorenz (lorenzhab)
description: updated
description: updated
Revision history for this message
Sergio Cazzolato (sergio-j-cazzolato) wrote :

Hello, thanks for the report, could you please share the output for:
> journalctl -u snapd
> dmesg

Also could you please indicate which core18 image are you using? and which rpi3 model you are testing?

Thanks

Revision history for this message
Lorenz (lorenzhab) wrote :

I'm using the Raspberry Pi 3 Model B+ and the following images:

armhf http://cdimage.ubuntu.com/ubuntu-core/18/stable/current/ubuntu-core-18-armhf+raspi3.img.xz
arm64 http://cdimage.ubuntu.com/ubuntu-core/18/stable/current/ubuntu-core-18-arm64+raspi3.img.xz

I have not tried the beta image yet, because I did not realize there were any. I will do that now.

journalctl -u snapd https://paste.ubuntu.com/p/mk8HX4xfhs/
dmesg https://paste.ubuntu.com/p/5hQ63SYHG6/
snap list https://paste.ubuntu.com/p/XrDVPNjfgd/

I also tried switching the release channel of snapd from stable to edge. However, this did not change anything.

Revision history for this message
Lorenz (lorenzhab) wrote :

Just tested the armhf beta image. Unfortunately, the problem still exists here too.

Revision history for this message
Jamie Strandboge (jdstrand) wrote :

FYI, I triaged this in https://forum.snapcraft.io/t/raspberry-pi-3-ubuntu-core-18-network-control-interface-issue/14773/4.

Summary:
* pi-kernel should use CONFIG_TUN=y, like our other reference and distro kernels
* to support CONFIG_TUN=m, snap-confine can add /dev/net/tun to the device cgroup so long as it exists

Changed in snappy:
status: New → Triaged
summary: - network-control interface seems to be broken on the Raspberry Pi 3
- running Ubuntu Core 18
+ tun module is not auto-loaded on UC18/pi3 despite network-control
+ interface being connected
Revision history for this message
Matthew Lovibond (ub-matt-hv) wrote :

I've just run into this while trying to setup a rPI 3 openvpn client connection using the easy-openvpn snap. As expected the problem goes away when installing easy-openvpn with --devmode.

Revision history for this message
Matt Reimer (mattreimer) wrote :

Ditto here with wireguard.

Revision history for this message
Jamie Strandboge (jdstrand) wrote :
affects: snappy → snapd
Changed in snapd:
assignee: nobody → Jamie Strandboge (jdstrand)
status: Triaged → In Progress
Changed in snapd:
status: In Progress → Fix Committed
Zygmunt Krynicki (zyga)
Changed in snapd:
milestone: none → 2.45
Revision history for this message
Zygmunt Krynicki (zyga) wrote :

This was fixed in snapd 2.45, which was since released to the stable channel. Marking as released.

Changed in snapd:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.