You are not logged in.

#1 2014-01-09 16:16:10

jsrn
Member
Registered: 2014-01-09
Posts: 3

error in udev change of net interface name wlan0 to wlp3s0

My quite fresh installation of Arch has started having the following problem:
the udev rename of my wireless interface from wlan0 to wlp3s0 suddenly stopped working!

In journalctl, I find the following error line:

Jan 09 16:23:43 mole systemd-udevd[180]: error changing net interface name wlan0 to wlp3s0: Device or resource busy

I am using netctl, netctl-auto and netctl-plugd with wpa-supplicant and dhcpd. The issue seems to be that netctl tries to do stuff with wlan0 before udev can rename it, as a  non-predictable race condition. Further down in journal, I have this (non-error) line

Jan 09 16:23:43 mole systemd[1]: Started (Re)store the netctl profile state.

Searching Google yielded me a few places talking about this, but no solution as I could see, and they were also possibly quite outdated.

My ethernet interface is properly renamed and works without issues. I should perhaps also mention that my install is now about 3 weeks old, and I have rebooted the machin a number of times before this behaviour started. In this time I also switched from netctl to wicd back to netctl, and the last switch was only a few days ago.

I have brainlessly tried various stuff, such as disabling netctl-auto and netctl-plugd for all interfaces, as well as adding a custom renaming rule to

/etc/udev/rules.d/10-network.rules

. Needless to say, this didn't resolve my problem.

In case it is important, I have the following services pertaining to networking running:

UNIT                                  LOAD   ACTIVE SUB     DESCRIPTION
dhcpcd.service                        loaded active running dhcpcd on all interfaces
netctl-auto@wlp3s0.service            loaded failed failed  Automatic wireless network connection using netctl profiles
netctl-ifplugd@enp0s25.service        loaded active running Automatic wired network connection using netctl profiles
netctl.service                        loaded active exited  (Re)store the netctl profile state
netctl@wlan0_eduroam.service          loaded active exited  Networking for netctl profile wlan0_eduroam
polkit.service                        loaded active running Authorization Manager
systemd-udev-trigger.service          loaded active exited  udev Coldplug all Devices
systemd-udevd.service                 loaded active running udev Kernel Device Manager
systemd-update-utmp.service           loaded active exited  Update UTMP about System Reboot/Shutdown
wpa_supplicant.service                loaded active running WPA supplicant

Is it right to have netctl.service activated?
Any help is greatly appreciated.
Thanks,
jsrn

Offline

#2 2014-01-10 23:35:33

lspci
Member
From: Virginia, USA
Registered: 2012-06-09
Posts: 242

Re: error in udev change of net interface name wlan0 to wlp3s0

I have the same kind of problem with interface names, here's what I recommend doing:

  1. Check your netctl profiles, which are located in /etc/netctl (e.g. /etc/netct/home_wifi), and verify that all of the interface names are correct.

  2. Verify that your custom udev rule(s) match the template rules found on the Network Configuration wiki page

  3. Post the contents of your custom udev rules, so that peeps can point out any mistakes that you might have missed.

  4. I'd disable the netctl-auto and netctl-plugd rules, if I were you--I've never used them and my laptop is usually able to connect just fine.  (it does, occasionally have trouble when switching from network types, (e.g. wired to wireless), if memory serves).

Last edited by lspci (2014-01-10 23:38:15)


Please don't be a help vampire. | Bitbucket

Give a little more for a little less today.  smile

Offline

#3 2014-01-12 15:31:18

jsrn
Member
Registered: 2014-01-09
Posts: 3

Re: error in udev change of net interface name wlan0 to wlp3s0

Thanks for the reply, lspci. With the same no. as your question:

1. Right now I have both wlp3s0_[some interfaces] and wlan0_[same interfaces] since I need both interfaces. All of the names are correct, and their configs are the same expect of course for the Interface-line. I also have an enp0s25_dhcp for my wired connection.

2. and 3. The custom udev rule that I made after the problem started occurring is in /etc/udev/rules.d/10-network.rules and contains

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="a4:4e:31:cd:5d:64", NAME="wlp3s0"

I can't seem to detect that it has any influence or is even run. But on the other hand, it is exactly this that udev was already trying to do but failing.

4. I could of course do this. But shouldn't it work without conflicting with the udev rename? The wiki currently recommends exactly these two services.

Right now my system works, albeit more manually than I would hope. I am on wireless right now, but if I lose connection (bad reception here), then I have to stop the netctl service on wlan0, down the wlan0 link and then restart netctl on wlan0. Also, whenever switching wireless network or to wired, I expect to have to do similar tedious stuff.

Offline

Board footer

Powered by FluxBB