[systemd-devel] failed assertion in systemd-networkd
Dave Reisner
d at falconindy.com
Sat Dec 6 11:10:21 PST 2014
On Sat, Dec 06, 2014 at 01:46:23PM -0500, Dave Reisner wrote:
> Hi,
>
> With the latest pull from git, I'm seeing a failed assertion in
> systemd-networkd:
>
> Assertion 's' failed at src/shared/util.c:413, function safe_atou8(). Aborting.
>
> The problematic .network file is simply:
>
> [Match]
> Name=eth0
>
> [Network]
> DHCP=v4
>
> The backtrace points here:
>
> http://cgit.freedesktop.org/systemd/systemd/tree/src/network/networkd-network.c#n233
>
> Where I suppose that:
>
> udev_device_get_sysattr_value(device, "name_assign_type");
>
> is returning NULL. The file exists, but any attempts to read it results
> in a 0 byte read and an EINVAL errno. Removing the [Match] section from
> the .network file avoids the failed assertion.
>
> Is this a kernel bug? Shouldn't this file be returning one of the enums
> values like NET_NAME_PREDICTABLE or NET_NAME_USER? This holds true on
> both a VM (using the virtio-net module), and also on my desktop (using
> the sky2 module).
Ah, I see:
https://github.com/torvalds/linux/blob/master/net/core/net-sysfs.c#L120
If dev->name_assign_type == NET_NAME_UNKNOWN, reading name_assign_type
errors with -EINVAL. Tom, why is this intentionally hidden from
userspace?
https://github.com/torvalds/linux/blob/master/include/uapi/linux/netdevice.h#L41
dR
More information about the systemd-devel
mailing list